home *** CD-ROM | disk | FTP | other *** search
/ NetNews Usenet Archive 1992 #18 / NN_1992_18.iso / spool / comp / ai / neuraln / 3211 < prev    next >
Encoding:
Internet Message Format  |  1992-08-17  |  9.2 KB

  1. Path: sparky!uunet!usc!elroy.jpl.nasa.gov!ames!pacbell.com!network.ucsd.edu!sdcc12!cs!demers
  2. From: demers@cs.ucsd.edu (David DeMers)
  3. Newsgroups: comp.ai.neural-nets
  4. Subject: Re: Reducing Training time vs Generalisation
  5. Keywords: back propagation, training, generalisation
  6. Message-ID: <36931@sdcc12.ucsd.edu>
  7. Date: 17 Aug 92 20:14:39 GMT
  8. References: <1992Aug16.063825.15300@julian.uwo.ca> <1992Aug16.213939.15944@ccu1.aukuni.ac.nz> <arms.714014919@spedden>
  9. Sender: news@sdcc12.ucsd.edu
  10. Organization: =CSE Dept., U.C. San Diego
  11. Lines: 213
  12. Nntp-Posting-Host: beowulf.ucsd.edu
  13.  
  14. In article <arms.714014919@spedden> arms@cs.UAlberta.CA (Bill Armstrong) writes:
  15. >edwin@ccu1.aukuni.ac.nz (Edwin Ng) writes:
  16.  
  17. ...
  18.  
  19. >>I'd like to ask if anyone has 
  20. >>anything to add about the quality of generalisation 
  21. >>resulting from using different parameters to speed up
  22. >>training??
  23.  
  24. ...
  25.  
  26.  
  27. >Before one gets deeply into such questions, I think one should specify
  28. >what one means by "generalization".  
  29.  
  30. Let me jump back in here.  I might bore you all with a
  31. bit of "first principles", but it helps me think about what
  32. we are trying to do.  The jargon is not always used with
  33. the same semantics across disciplines, so pretend I know
  34. what I'm saying when I use a word in a way that seems a
  35. bit imprecise (after all, I'm just hitting the 'R' key, not
  36. writing a journal paper here :-) 
  37.  
  38. First, let's focus on a particular, though very broad, 
  39. class of problems:  
  40.  
  41. We have a finite set Z, consisting of pairs of vectors (or scalars, or
  42. other mathematical objects, possibly not in a metric space ...): 
  43.  
  44.     Z = {(x_i, y_i)}  i = 1, ..., N
  45.  
  46.     where the x_i are in some space X and the y_i
  47.     are in some space Y
  48.  
  49. (since real problems tend to always be bounded, I will
  50. assume that X and Y are compact)
  51.  
  52. we believe that there is some functional relationship, 
  53.     y_i = f(x_i) (possibly perturbed by noise)
  54.  
  55. we would like to estimate the expected value of y_m
  56. given x_m, where x_m is not necessarily in Z.
  57.  
  58. ---------------
  59.  
  60. (Most of my work is either classification or function approximation
  61. over continuous spaces.)
  62.  
  63. "Generalization" is performance on x_m not in Z.  Typically,
  64. "interpolation" is used to describe x_m which are inside
  65. the convex hull of the x_i, and "extrapolation" is used
  66. to describe x_m outside the set of training data.
  67.  
  68. The problems being discussed in this thread seem to fall
  69. into this framework - 
  70.     Classification: the y_i are the class memberships
  71.         and f can be decomposed into
  72.         the characteristic functions for each class.
  73.         We want to construct a classifier for the x_i.
  74.     Function approximation: the above should remind us
  75.         of regression or interpolation problems.  
  76.     Choose X to be {0,1}^k for boolean problems.
  77.  
  78. The literature on this is enormous...
  79.  
  80. The main difficulty with this problem stems from the fact that 
  81. for any data set Z, there are a huge number of possible functions 
  82. f which will reproduce Z exactly.  If we are in real-valued spaces, 
  83. then there will be an uncountable number.  If we are in k-dimensional
  84. boolean space, there will be (2^(2^k - N)) functions,
  85. all of which reproduce the data in Z exactly.
  86.  
  87. So, we have to pick one of these.  How do we choose?  This
  88. is where prior information or belief come in.  Typically,
  89. we use Occam's razor and choose the "simplest", though there
  90. are difficulties in determining what "simple" means.
  91.  
  92. Parametric techniques bias the search to a small set of
  93. models.  E.g. linear regression. It is usually pretty easy 
  94. (computationally) to find the best parameter values for a given model. 
  95. Depending on the model, the search for the best values
  96. of the parameters could end up as complicated as non-linear
  97. global optimization...
  98.  
  99. Non-parametric techniques attempt to "learn" the model from
  100. the data - usually they need enormous amounts of data to
  101. say anything statistically meaningful, but have the advantage
  102. of reducing the need for imposing a bias on the model.
  103. k-nearest-neighbors is a non-parametric method for building
  104. a classifier. Also projection-pursuit.
  105.  
  106. There are some techniques which look like a cross between
  107. the two - like using feedforward neural networks.
  108. The network is parametric (I'm assuming the usual implementation
  109. of setting up a fixed architecture and then training) in the
  110. sense that one is trying to find the maximum likelihood values 
  111. for the weights (insert enough appropriate math stuff here),
  112. but non-parametric in the sense that we really don't believe
  113. that the true function is a composition of a bunch of sigmoids.
  114. But we DO know that we can get close to any continuous
  115. function with a single-hidden layer feedforward network.
  116.  
  117. What is all this leading up to, you ask? (or those of you
  118. still reading, anyway...)
  119.  
  120. A reasonable way to think about all this is that you
  121. want to minimize some distance measure of your prediction
  122. and the "truth" over some appropriately weighted set
  123. in the domain.  For example, minimize squared error
  124. integrated over X (weighted by the density).
  125.  
  126. A good reference on the bias vs. variance tradeoff, is
  127. Geman, Stuart, Elie Bienenstock & Rene Doursat,
  128. "Neural Networks and the Bias/Variance Dilemma", Neural Computation 4,
  129. no. 1 (Jan 1992).  Estimation error can be decomposed into 
  130. two components,
  131. the "bias", which is how well our estimator fits Z, and
  132. "variance", which is how dependent the estimator is on Z.
  133. These can be quantified, and estimated.
  134.  
  135.  
  136. >...it should mean something like: for a test point at distance d
  137. >from a correctly learned training point, the response was still
  138. >correct (This definition works for boolean and multi-class problems).
  139. >You could generalize this using interpolation and continuous
  140. >functions.
  141.  
  142. This assumes that there is some continuity; that if x_l is near x_m,
  143. then y_l will be near y_m.  This is typical, and is usually a
  144. worthwhile prior assumption.  However, the "correct" part might
  145. be problematic for continuous function approximation problems -
  146. that is, what is "correct" interpolation?
  147.  
  148. >Once this is agreed upon, some questions start to make sense, like:
  149. >why should a multilayer perceptron generalize at all?"  It's not
  150. >because of continuity, because continuous functions can oscillate as
  151. >rapidly as you want, and could fit any finite, non-contradictory
  152. >training set as well as you want.
  153.  
  154. As is shown in the above-referenced paper, feedforward neural
  155. networks tend to be poor bias, but low variance estimators, which
  156. improve bias at the cost of increasing variance during training.
  157. That is, a "random" network is generally pretty smooth, and
  158. adapts its response surface to the data.  By smooth,
  159. I mean more than just differentiable, I mean that the derivatives
  160. are bounded.
  161.  
  162. So the reason why NNs generalize so well is because the prior
  163. assumption of smoothness is inherent in the structure of NNs. 
  164.  
  165. The overfitting problem is related - you can reduce bias by increasing
  166. the order of your model; thus by adding more terms (hidden units,...)
  167. you can fit your data arbitrarily closely.
  168.  
  169. >If you could get a Lipschitz bound on the result of NN training, then
  170. >you could be confident about getting some reasonable generalization:
  171. >i.e. if x and x' are two input vectors, then the outputs y and y'
  172. >would satisfy |y - y'| <= C |x - x'|.  This is *much* stronger than
  173. >continuity.  Determining a reasonably small C might be a problem for a
  174. >given net.
  175.  
  176. If you can estimate integrated squared error, you might do better -
  177. Lipschitz can be pretty pessimistic, which might be what you want
  178. if, as you mentioned in a previous post, you have to satisfy a
  179. customer and need a spec in the contract.
  180.  
  181. >Other criteria of good generalization might include monotonicity of the
  182. >synthesized function.
  183.  
  184. Or smoothness bounds, which is what the spline people use.
  185.  
  186. >In the case of adaptive logic networks, generalization is based on the
  187. >fact that perturbations of an input vector tend to get filtered out as
  188. >the signal is processed in a tree
  189.  
  190. Thus you have built in the assumption that a small neighborhood
  191. of a learned datum has the same response?
  192.  
  193. >The most impressive generalization that has been attained with ALNs
  194. >was work by Dekang Lin, where he used tree growth and a training set
  195. >of about 10^5 points, and obtained 91.1% generalization to a space of
  196. >2^512 points (the multiplexor problem).  The sparsity of the training
  197. >set in that space boggles the mind.
  198.  
  199. So, does the modeling method used bias the search towards functions
  200. much like the true one?  I.e. simple boolean functions. 
  201.  
  202. ------
  203.  
  204. for further consideration, I highly recommend the Geman article, 
  205. and many of its references.
  206.  
  207. Note that there is a large Bayesian camp - see David MacKay's thesis,
  208. e.g., for the Bayesian neural network framework.
  209.  
  210. David Wolpert has an interesting approach, which seems
  211. to be pretty idiosyncratic in terminology.  He's published in
  212. Neural Networks recently.
  213.  
  214. The fields of statistical inference (regression), spline 
  215. interpolation, approximation theory and much of statistical 
  216. pattern recognition are concerned with these questions, 
  217. so please forgive my failures here.  I'd advise anyone
  218. deeply interested in these questions to spend some time
  219. reading statistical inference texts, and Duda & Hart for
  220. pattern recognition.
  221.  
  222. -- 
  223. Dave DeMers             ddemers@UCSD   demers@cs.ucsd.edu
  224. Computer Science & Engineering    C-014        demers%cs@ucsd.bitnet
  225. UC San Diego                    ...!ucsd!cs!demers
  226. La Jolla, CA 92093-0114    (619) 534-0688, or -8187, FAX: (619) 534-7029
  227.