home *** CD-ROM | disk | FTP | other *** search
/ Collection of Education / collectionofeducationcarat1997.iso / COMPUSCI / DATAREP.ZIP / DEMOS.RNO < prev    next >
Text File  |  1990-02-22  |  79KB  |  1,939 lines

  1. .control characters
  2. .page size 60
  3. .left margin 8
  4. .right margin 73
  5. .subtitle_ _ _ _ _ _ _ _ Anderson, Parallel System
  6. .no flags accept
  7. *"1
  8. .c 80
  9. Cognitive Capabilities of a Parallel System
  10. .b
  11. .c 80
  12. James A. Anderson
  13. .b
  14. .c 80
  15. Center for Neural Science,
  16. .c 80
  17. Department of Psychology,
  18. .c 80
  19. and Center for Cognitive Science
  20. .b
  21. .c 80
  22. Brown University
  23. .b
  24. .c 80
  25. Providence, RI 02912
  26. .b
  27. .c 80
  28. U.S.A.
  29. .b
  30. .c 80
  31. March 3, 1985
  32. .b2
  33. .c 80
  34. Paper presented at 
  35. .c 80
  36. Nato Advanced Research Workshop
  37. .b
  38. .c 80
  39. ^&Disordered Systems and Biological Organization\&
  40. .b
  41. .c 80
  42. Centre de Physique des Houches
  43. .b
  44. .c 80
  45. 74310 Les Houches, France
  46. .b4
  47. .c 80
  48. Abstract
  49. .p
  50. A number of parallel information processing systems have been proposed 
  51. which are loosely based on the architecture of the nervous system.
  52. I will describe a simple model of this kind that we have studied
  53. over the the past decade.  
  54. Perhaps surprisingly,
  55. the major testable predictions of these systems fall in the
  56. realm of cognitive science: parallel, distributed, associative
  57. systems seem to have pronounced 'psychologies'.  They perform
  58. some 'computations' very well and some very poorly.  
  59. It then becomes a psychological question as to whether humans
  60. show the same pattern of errors and capabilities.
  61. I will briefly describe the theory behind the models,
  62. and discuss some of the psychological predictions they generate.
  63. I will describe the results of large simulations of them.
  64. Specifically, I will discuss
  65. psychological concept formation, generation of semantic
  66. networks in distributed systems, and use of the systems
  67. as distributed data bases and somewhat simple minded
  68. expert systems.
  69. .page
  70. .c 80
  71. Any mental process must lead to error.
  72. .i34
  73. Huang Po (9th c.)
  74. .p
  75. This paper is about a psychological model that makes contact
  76. with some current work in parallel computation and 
  77. network modelling.  
  78. Most of its applications have been to psychological
  79. data.  It attempts to be an interesting psychological
  80. model in that it learns, retrieves what it learned,
  81. processes what it learns, and shows hesitations 
  82. mistakes and distortions.  The scientific interest in
  83. the approach is in the claim that the patterns of
  84. errors shown by the model bear a qualitative similarity
  85. to those shown by humans.  
  86. .p
  87. Many of the talks at this conference will talk about similar
  88. models, viewed from a different orientation.  There has been
  89. a recent burst of enthusiasm 
  90. for parallel, distributed, associative models as ways of 
  91. organizing powerful computing systems and of handling
  92. noisy and incomplete data.  There is no doubt such systems
  93. are effective at doing some extremely interesting
  94. kinds of computations, almost certainly they are
  95. intrinsically better suited to many kinds of computations
  96. than traditional computer architecture.  
  97. .p
  98. However such architectures have
  99. very pronounced 'psychologies' and though they do some
  100. things well, they do many things extremely poorly, and
  101. can cause 'errors' as a result of satisfactory operation.
  102. When one talks about psychological systems, the idea of
  103. error becomes rather problematical: one of the tasks
  104. of a biological information processing system is
  105. to simplify (i.e. distort) the world so 
  106. complex and highly variable events fall into equivalence
  107. classes and can be joined with other events to generate
  108. appropriate responses.  Psychological ideas like concepts can
  109. be viewed as essential simplifications: 
  110. deciding what data can be ignored and what is essential.
  111. .p
  112. The brain can be viewed as an engineering solution to a series
  113. of practical problems posed by nature.  It must be fast and
  114. right much of the time.  Solutions can be 'pretty good':
  115. a pretty good fast solution makes often more biological sense 
  116. than an optimal slow solution.  There is a strong
  117. bias toward action, as many have noted.  
  118. .p
  119. If one was able to construct a computing system that
  120. mimicked human cognition we might not be too pleased
  121. with the results.  It is possible that a 
  122. brain-like computing system would show
  123. many of the undesirable
  124. features of our own minds: gross errors, unpredictablity,
  125. instability, and even complete failure.
  126. However, such a system might be a formidable complement to
  127. a traditional computer because it could then have the ability
  128. to make the good guesses, the hunches, and the suitable simplifications 
  129. of complex system that
  130. are lacking in traditional computer systems but at which
  131. humans seem to excel.
  132. .p
  133. I will describe below a consistent approach to building a
  134. parallel, distributed associative model and point out 
  135. some of the aspects of its psychology that should concern
  136. those concerned with such systems from a different perspective.
  137. Several examples of cognitive computations using the system
  138. will be given: a distributed antibiotic data base,
  139. an example of qualtitative physics, and an example of a
  140. distributed system that acts like a semantic network.
  141. .p
  142. ^&Stimulus Coding and Representation.\&  We have 
  143. many billion neurons in our cerebral cortex.  The cortex
  144. is a layered two dimensional system which is divided up
  145. into a moderate number (say 50) of subregions.  The subregions
  146. project to other subregions over pathways which are
  147. physically parallel, so one group of a large number of
  148. neurons projects to another large group of neurons.
  149. .p
  150. It is often not appreciated 
  151. how much of what we can perceive depends on the details of the
  152. way the nervous system converts information from the physical
  153. world into discharges of nerve cells.  If it is important for us
  154. to be able to see colors, or line segments, or bugs (if we
  155. happen to be a frog), then neurons in
  156. parts of the nervous system will respond to color, edges, etc.
  157. Many neurons will respond to these properties, and the
  158. more important the property, the more neurons 
  159. potentially will have their
  160. discharges modified by that stimulus property.  
  161. .p
  162. My impression is that much, perhaps most, of the computational 
  163. power of the brain is in the details of the neural codes, i.e. the 
  164. biologically proven representation of the stimulus.  Perhaps
  165. the brain is not very smart.  It does little clever computation
  166. but powerful, brute force operations on 
  167. information that has been so highly processed that little needs
  168. to be done to it.  However the pre-processing is so good, and the
  169. numbers of elements so large that the system becomes formidable indeed.
  170. .p
  171. Our fundamental modelling assumption is that information is
  172. carried by the set of activities of many neurons in
  173. a group of neurons.  This set of activities carries the
  174. meaning of whatever the nervous system is doing.  
  175. Percepts, or mental activity of any kind, 
  176. are similar if their state vectors
  177. are similar.  Formally,
  178. we represent these sets of activities as state vectors.
  179. Our basic approach is to consider the state vectors as the
  180. primitive entities and try to see how state vectors can
  181. lawfully interact, grow and decay.  The elements in the
  182. state vectors correspond 
  183. to the activities of moderately selective neurons decribed above: in the
  184. language of pattern recognition we are working with state
  185. vectors composed of great numbers of rather poor features.
  186. Information is represented as state vectors of large dimensionality. 
  187. .p
  188. ^&The Linear Associator.\&
  189. It is easy to show that
  190. a generalized synapse of the kind first suggested
  191. by Donald Hebb in 1949, and called a 'Hebb' synapse,
  192. realizes a powerful associative
  193. system.  
  194. Given two sets of neurons, one projecting to the other, and
  195. connected by a matrix of synaptic weights A,
  196. we wish
  197. to associate two activity patterns (state vectors) f and g.
  198. We assume A is composed of a set of modifiable 'synapses'
  199. or connection strengths.  We can view this as a sophisticated
  200. stimulus-response model.
  201. .p
  202. We make two quantitiative assumptions.  First, the neuron acts
  203. to a first approximation like a linear summer of its inputs.
  204. That is, the i^&th\& neuron in the second set of neurons will
  205. display activity g(i) when a pattern f is presented to the
  206. first set of neurons according to the rule,
  207. .literal
  208.  
  209.                     g(i) =  N S A(i,j) f(j).
  210.                              j
  211.  
  212. .end literal
  213. where A(i,j) are the connections between the i^&th\&
  214. neuron in the second set of neurons and the j^&th\& neuron
  215. in the first set.
  216. Then we can write g as the simple matrix multiplication
  217. .literal
  218.  
  219.                     g = A f.
  220.  
  221. .end literal
  222. .p
  223. Our second fundamental assumption involves the construction of the
  224. matrix A, with elements A(i,j).  
  225. We assume that these matrix elements (connectivities)
  226. are modifiable according to the generalized Hebb rule, that is,
  227. the change in an element of A, NdA(i,j), is given by
  228. .literal
  229.  
  230.                     NdA(i,j) NO f(j) g(i).
  231.  
  232. .end literal
  233. .p
  234. Suppose initially A is all zeros.
  235. If we have a column input state vector f, and response vector g, 
  236. we can write the matrix A as
  237. .test page 5
  238. .literal
  239.  
  240.                              T
  241.                     A = Nf g f
  242.  
  243. .end literal
  244. where Nf is a learning constant.  
  245. Suppose after A is formed, vector f is input to the system. 
  246. A pattern g' will
  247. be generated as the output to the system according to the
  248. simple matrix multiplication rule discussed before.  This
  249. output, g', can be computed as
  250. .test page 6
  251. .literal
  252.  
  253.                    g' = A f,
  254.  
  255.                       NO g,
  256.  
  257. .end literal
  258. since the square of the length is simply a constant.  Subject to
  259. a multiplicative constant, we have generated a vector in the
  260. same direction as g.  This model and variants have been discussed
  261. in many places.  
  262. It is powerful, but has some severe limitations.
  263. (Anderson, 1970; see especially Kohonen (1977, 1984)).
  264. .p
  265. ^&Categorization\&
  266. The model just discussed can function as a simple categorizer by making one 
  267. assumption.  Let us 
  268. make the coding assumption  that the
  269. activity patterns representing similar stimuli are themselves 
  270. similar, that is, their state vectors are correlated.  This means
  271. the inner product between two similar patterns is large.
  272. Now consider the case described above where the model has made the
  273. association f NY g.  Let us restrict our attention to the magnitude
  274. of the output vector that results from various input patterns.
  275. With an input pattern
  276. f' then 
  277. .literal
  278.  
  279.            (output pattern) = g [f,f']
  280.  
  281. .end literal
  282. If f and f'  are not similar, their inner product [f, f']  is
  283. small. If f  is similar to f'  then the inner product will be large.
  284. The model responds to input patterns based on similarity to f.
  285. Suggests that the perceived
  286. similarity of two stimuli should be systematically related to the inner
  287. product [f,f'] of the two neural codings.   
  288. This is a testable prediction in some cases.  Knapp
  289. and Anderson, (1984) discuss an application of this simple
  290. approach to psychological concept formation, specifically
  291. the learning of 'concepts' based on patterns of random dots.
  292. .p
  293. There are two classes of simple concept models in psychology.  
  294. The form a model for concept learning takes depends on an underlying
  295. model for memory structure.  Two important classes of psychological
  296. models exist: 'exemplar' models where details of single presentations
  297. of items are stored and 'prototype' models where a new item is
  298. classified according to its closeness to the 'prototype' or
  299. best example of a category.
  300. .p
  301. Consider a situation where a category contains many similar items.  Here,
  302. a set of similar activity patterns (representing the
  303. category members) becomes associated with the same response, for
  304. example, the category name.  It is convenient to discuss such a set
  305. of vectors with respect to their mean.  Let us assume the mean is
  306. taken over all potential members of the category. 
  307. .p  
  308. Specifically consider a set
  309. of correlated vectors, {f}, with mean p.  Each individual
  310. vector in the set can be written as the sum of the mean vector and
  311. an additional noise vector, d, representing the deviation from
  312. the mean, that is,
  313. .literal
  314.  
  315.                     f  = p + d .
  316.                      i        i
  317. .end literal
  318. .p
  319. If there are n different patterns learned  and all are 
  320. associated with the same
  321. response the final connectivity matrix will be
  322. .test page 5
  323. .literal
  324.  
  325.                          n    T
  326.                      A = NS g f
  327.                         i=1
  328.  
  329. .end literal
  330. .test page 4
  331. .literal
  332.                               T   n
  333.                        = n g p  + NS d
  334.                                  i=1  i
  335.  
  336. .end literal
  337. .p
  338. Suppose that the term containing the
  339. sum of the noise vector is relatively 
  340. small, as could happen if the system learned many
  341. randomly chosen members of the category (so the d's cancel
  342. on the average and their sum is small)
  343. and/or if  d is not very
  344. large. In that case, the connectivity
  345. matrix is approximated by
  346. .test page 5
  347. .literal
  348.  
  349.                               T
  350.                      A = n g p .
  351.  
  352. .end literal
  353. .i0
  354. The system behaves as if it had repeatedly learned only one pattern,
  355. p, the mean of the set of vectors it was 
  356. exposed to.  Under these conditions, the simple association model
  357. extracts a the prototype just like an average response 
  358. computer.  In this respect the distributed memory model behaves
  359. like a psychological 'prototype' model, because the most powerful response will
  360. be to the pattern p, which may never have been seen.  This results is
  361. seen experimentally under appropriate conditions.
  362. .p
  363. However if the sum of the d's is 
  364. not relatively small, as might happen if
  365. the system only sees a few patterns
  366. from the set and/or if d is large,
  367. the response of the model will depend on the
  368. similarities between the novel input and each of the
  369. learned patterns, that is, the system behaves like an 
  370. psychological 'exemplar'
  371. model.  This result can also be demonstrated expermentally.
  372. We can predict
  373. when one or the other result can be seen.
  374. .p
  375. Next, consider what happens when members of more than
  376. one category can occur.  Suppose 
  377. the system learns items drawn
  378. from three categories with means of pN1, pN2, 
  379. and pN3 respectively, and responses gN1,
  380. gN2, and gN3,
  381. with n exemplars presented from each category.
  382. Then, if an input f, is input to A, 
  383. if the distortions of the prototypes presented during
  384. learning are small, the output can
  385. be approximated by
  386. .literal
  387.  
  388.                Af = n([pN1,f]gN1+[pN2,f]gN2+[pN3,f]gN3)
  389.  
  390. .end literal
  391. Due to superposition (this is a 
  392. linear system) the actual response pattern is a sum of the
  393. three responses, weighted by the inner products.
  394. If the p are dissimilar, 
  395. the inner product between an exemplar of one prototype and
  396. the other prototypes is small on the average, and
  397. the
  398. admixture of outputs associated with the other
  399. categories will also be small.  We describe a non-linear
  400. categorizer (the BSB model) below which will allow us to supress the other
  401. responses entirely.  Again, observe the details of the neural codings 
  402. determine the practical categorization ability of the system.
  403. .p
  404. We can also begin to see how the system
  405. can use partial information to reason 'cooperatively'.  
  406. Suppose we have a simple memory formed which has associated
  407. an input fN1 with two outputs, gN1 and gN2, 
  408. and an input f2 with two outputs gN2 and
  409. gN3 so that
  410. .literal
  411.  
  412.                     AfN1 = gN1 + gN2  and
  413.                     AfN2 =      gN2 + gN3.
  414.  
  415. .end literal
  416. Suppose we then present fN1 and fN2 together.
  417. Then, we have
  418. .literal
  419.  
  420.              A(fN1 + fN2) = gN1 + 2gN2 + gN3,
  421.  
  422. .end literal
  423. with the largest weight for the common association.
  424. This perfectly obvious consequence of superposition has let us pick
  425. out the common association of fN1 and fN2, if we can
  426. supress the spurious responses.
  427. .p
  428. The cooperative effects described in several contexts
  429. above depend critically on the
  430. linearity of the memory since things 'add up' in memory.
  431. We will suggest below that it is very easy
  432. to remove the extra responses due to superposition.
  433. We want 
  434. to emphasize that it is the ^&linearity\& that gives
  435. rise to most of the easily testable psychological
  436. predictions (many of which can be shown to be present, particularly
  437. in relation to simple stimuli)
  438. and it is the ^&non-linearity\& that has
  439. the job of cleaning up the output.
  440. .p
  441. ^&Error Correction.\&
  442. The simple linear associator works, and is effective
  443. in making some predictions about concept formation and cooperativity.
  444. However it generates too many
  445. errors for some applications: that is, given a learned association
  446. f NY g, and many other associations learned in the same matrix, 
  447. the pattern generated when f is presented to the system may
  448. not be close enough to g to be satisfactory.
  449. By using an error correcting technique
  450. related to the Widrow-Hoff procedure, also called the 'delta method', we can
  451. force the system to give us correct associations.
  452. Suppose information is represented by vectors associated by
  453. fN1 NY gN2, fN2 NY gN2 ... 
  454. We wish to form a matrix A of connections between elements to 
  455. accurately reconstruct the association.
  456. The matrix can then be formed by the following procedure:
  457. First, a vector, f, is selected at random.  Then the matrix, A, 
  458. is incremented according to the rule
  459. .b
  460. .literal
  461.                                      T
  462.                     NDA = Nf (g - Af) f
  463.  
  464. .end literal
  465. where NDA is the change in the matrix A and 
  466. where the learning coefficient, Nf, is chosen so as to maintain
  467. stability.  The learning coefficient
  468. can either be 'tapered' so as to approach zero when many vectors are
  469. learned, or it can be constant, which builds in a 'short term memory'
  470. because recent events will be recalled more accurately than past
  471. events.  The method is sometimes called the delta method because it is
  472. learning the difference between desired and actual responses.
  473. As long as the number of vectors is small (less than roughly
  474. 25% of the dimensionality of the state vectors) this procedure is
  475. fast and converges in the sense that after a period of learning,
  476. .literal
  477.  
  478.                     Af = g.
  479.  
  480. .end literal
  481.  New information
  482. can be added at any time by running the algorithm for a while with the
  483. new information vectors added to the vector set.  
  484. .p
  485. If f = g, the association of a vector with itself 
  486. is referred to by Kohonen as an 'autoassociative' system. One way to view the
  487. autoasociative
  488. system is that it is forcing the system to develop a 
  489. particular set of eigenvectors.
  490. Suppose 
  491. we are interested in looking at autoassociative systems,
  492. .literal
  493.                               T
  494.                      A = Nf f f
  495.  
  496. .end literal
  497. where Nf is some constant.
  498. .p
  499. We can use feedback to reconstruct
  500. a missing part of an input state vector.  To show this,
  501. suppose we have a normalized state vector f, which is composed
  502. of two parts, say f' and f'', i.e. f = f' + f''.   
  503. Suppose f' and f'' are 
  504. orthogonal.  One way to accomplish this would be to have
  505. f' and f'' be subvectors that occupy different sets of elements --
  506. say f' is non-zero only for elements [1..n] and f'' is
  507. non-zero only for elements [(n+1)..Dimensionality].  
  508. .p
  509. Then consider a matrix A storing only the autoassociation of f
  510. that is 
  511. .literal
  512.  
  513.                                              T
  514.                     A = (f' + f'') (f' + f''),
  515.  
  516. .end literal
  517. (Let us take Nf = 1).
  518. .p
  519. The matrix is now formed.  Suppose at some future time 
  520. a sadly truncated version of f, say f' is presented at the
  521. input to the system. 
  522. .p
  523. The output is given by
  524. .literal
  525.  
  526.         (output) = A f'
  527.  
  528.                          T         T         T         T
  529.                  = (f' f'  + f' f''  + f'' f' + f'' f''  ) f'.
  530.  
  531. .end literal
  532. Since f' and f'' are orthogonal, 
  533. .literal
  534.  
  535.         (output) = (f' + f'') [f', f'].
  536.  
  537.                  = c f
  538.  
  539. .end literal
  540. .b
  541. where c is some constant since the inner product [f',f'] is simply a number.
  542. The autoassociator 
  543. can reconstruct the missing part of the state vector.
  544. Of course if a number of items are stored,
  545. the problem becomes more complex, but with similar qualitative properties.
  546. .p
  547. Let us use this technique practically.
  548. When the matrix, A, is formed, 
  549. one way information can be retrieved is by the
  550. following procedure.
  551. It is assumed that we want to get associated information that we
  552. currently do not have, or we want to make 'reasonable' 
  553. generalizations about a new situation based on
  554. past experience.  We must always have some information to start
  555. with.   
  556. The starting information
  557. is represented by a vector constructed according to the rules
  558. used to form the original vectors, except missing information
  559. is represented by zeros.
  560. Intuitively, the memory, that is 
  561. the other learned information, is represented in the cross connections
  562. between vector elements and the initial information is the
  563. key to get it out.  The retrieval strategy will be to repeatedly pass
  564. the information through the matrix A and to reconstruct the missing
  565. information using 
  566. the cross connections.
  567. Since the state vector may grow in size without bound, we limit the
  568. elements of the vector to some maximum and minimum value.   
  569. .p
  570. We will use the following nonlinear algorithm.
  571. Let f(i) be the current state vector of the
  572. system.   f(0) is the initial vector.
  573. Then, let f(i+1), the next state vector be given by
  574. .b
  575. .literal
  576.  
  577.           f(i+1) = LIMIT [ Na A f(i) + Ng f(i) + Nd f(0) ].
  578.  
  579. .end literal
  580.  The first term (Na A f(i) ) passes the current state through
  581. the matrix and adds more information reconstructed from cross
  582. connections.  The second term Ng f(i) causes the current
  583. state to decay slightly.  This term has the qualitative 
  584. effect of causing errors
  585. to eventually decay to zero as
  586. long as Ng is less than 1. 
  587. The third term, Nd f(0) can keep the initial information 
  588. constantly present if this needed to drive the system to a correct final state.
  589. Sometimes this term is Nd is zero and sometimes Nd is non-zero
  590. depending on the requirements of the task.
  591. .p
  592. Once the element 
  593. values for f(i+1) are calculated, the element values are 'limited'.
  594. This means that element values cannot be greater
  595. than an upper bound or lower than a lower bound.  If the element values
  596. of f(i+1) have values larger than or smaller than upper and lower
  597. bounds they are replaced with the upper and lower bounds
  598. repespectively.  This process contains the state vector
  599. within a set of limits, and we have called this model the
  600. 'brain state in a box' or BSB model.
  601. As is typical of neural net models in general, the actual computations
  602. are simple, but the computer time required may be formidable.
  603. If one likes sigmoidal functions, then this is a sigmoid with
  604. sharp corners: a linear region between limits.
  605. .p
  606. Because the system is in a positive feedback loop but is limited, 
  607. eventually the
  608. system will become stable and will not change.  This may occur
  609. when all the elements are saturated or when a few are still not
  610. saturated.  This final state will be the output of the system.
  611. The final state can be interpreted according to the
  612. rules used to generate the stimuli.
  613. This state will contains the directed conclusions of the
  614. information system.  It will have filled in missing information,
  615. or suggested information based on what it has learned in the past, 
  616. using the cross connections represented in the matrix.
  617. The dynamics of this system are closely related to the
  618. 'power' method of eigenvector exctraction.
  619. .p
  620. It is at this point that the connection of this model with
  621. Boltzmann type models becomes of interest.
  622. We have showed in the past (Anderson, Silverstein, Ritz, and
  623. Jones, 1977) that in the simple case where
  624. the matrix is fully connected (symmetric by the learning rule in
  625. the autoassociative system) and has no decay, that the vector
  626. will monotonically lengthen.  
  627. We would like to point out that the dynamics of this system are
  628. nearly identical to those used by Hopfield for continuous
  629. valued systems. (1984) It is one member of the class of functions
  630. he discusses, and can
  631. be shown to be minimizing an energy function if that is a useful
  632. way to analyze the system.
  633. In the more general autoassociative case, where the matrix is
  634. not symmetric because of limited connectivity (i.e. some elements
  635. are identically zero) and/or there is decay, the 
  636. system can be shown computationally to
  637. be minimizing a quadratic energy function (Golden, 1985).
  638. In the simulations to be described the Widrow-Hoff technique
  639. is used to 'learn the corners' of the system, thereby ensuring
  640. that the local energy 'minima' and the associated responses
  641. will coincide.
  642. .p
  643. The information storage and retrieval system just described
  644. can be used to realize a data base system that hovers on the
  645. fringes of practicality.
  646. It is important to emphasize that this is not an information storage
  647. system
  648. as conventionally implemented.  It is poor at handling
  649. precise data.
  650. It also does  not make efficient use
  651. of memory in a traditional serial computer.  There are several parameters
  652. which must be adjusted.  Also the output may not be
  653. 'correct' in that it may not be a valid inference or it may
  654. contain noise. This is the penalty that one must pay for
  655. the inferential and 'creative' aspects of the system.   
  656. .p
  657. ^&Example One:  A Data Base.\&
  658. In the specific examples of state vector generation
  659. that we will use for the examples,
  660. English words and sets of words are coded
  661. as concatenations of the bytes representing their ASCII
  662. representation.  A parity bit is used. 
  663. Zeros area replaced with minus ones.
  664. (I.e. an 's', ASCII 115, is represented
  665. by -1 1 1 1 -1 -1 1 1 in the state vector.)
  666. A 200 dimensional vector would represent
  667. 25 alphanumeric characters.  This is a 'distributed'
  668. coding because a single letter or word is determined by a pattern
  669. of many elements.  It is arbitrary but it gives
  670. useful demonstrations of the power of the approach.
  671. In the outputs from the simulations
  672. the underline, '_', corresponds to
  673. all zeros or to an uninterpretable character whose amplitude is
  674. below an interpretation threshold.
  675. That is, the output strings presented are only those of which the system
  676. is 'very sure' because their actual element values were all above
  677. a high threshold.  The threshold is only for our convenience in
  678. interpreting outputs and the full values are used in the computations.
  679. Vectors using distributed codings formed by a technique
  680. that Hinton calls 'coarse coding' would be a little more
  681. reasonable biologically but outputs would be more difficult to
  682. interpret.
  683. .p
  684. Information in AI systems are often represented as collections of atomic facts,
  685. relating pairs or small sets of items together.  However, as William
  686. James commented in 1890,
  687. .b
  688. .left margin 18
  689. .right margin 63
  690.  ... ^&the more other facts a fact is associated
  691. with in the mind, the better posession of it our memory retains.\&
  692. Each of its associates becomes a hook to which it hangs, a means
  693. to fish it up by when sunk beneath the surface. Together, they
  694. form a network of attachments by which it is woven into the
  695. entire tissue of our thought.  
  696. .right
  697. William James (1890). p. 301.
  698. .left margin 8
  699. .right margin 73
  700. .p
  701. As the quotation suggests, information is
  702. usefully represented as large state vectors containing large sets
  703. of correlated information.  Each state vectors contains
  704. a large number of 'atomic facts' together with their
  705. connection, so it is hard to specify the exact information
  706. capacity of the system.
  707. .p
  708. As a simple example of a distributed data base,
  709. a small (200 dimensional
  710. autoassociative system) was taught a series of connected
  711. facts about antibiotics and
  712. diseases.  (See the Figures Drugs 1-5).
  713. This is a complex, real world data base in that one bacterium
  714. causes many diseases, the same disease is caused by many
  715. organisms, and a single drug may be used to treat many diseases
  716. caused by many organisms.
  717. .p
  718. Figure Drugs-2 and -3 show simple retrieval of stored information.
  719. The data base also 'guesses'.
  720. When it was asked what drug should be used
  721. treat a meningitis caused by a Gram positive bacillus,
  722. it responded penicillin even though it 
  723. never actually learned about a meningitis
  724. caused by a Gram positive bacillus.  (Figure Drugs-4) It had learned about
  725. several other Gram positive bacilli and that the 
  726. associated diseases could be treated with penicillin.  
  727. The final state vector contained penicillin as the associated drug.
  728. The other partial information cooperated to suggest
  729. that this was the appropriate output.  This inference may
  730. or may not be correct, but it is reasonable given
  731. the past of the system.  These inferential properties 
  732. are expected, given the previous discussion.
  733. .p
  734. As a more complex example, the antibiotic test system was taught that
  735. hypersensitivity is a side effect of cephalosporin 
  736. and that
  737. some kinds of urinary tract infection are caused by an organism that
  738. respond to cephalosporin. However it learned that other
  739. organisms not responding to cephalosporin cause
  740. urinary tract infections and that other antibiotics cause
  741. hypersensitivity.  (See Figure Drugs-5)
  742. If the system was asked about either the side effect or the
  743. disease it gave one set of answers.  If, however, it
  744. was asked about both pieces of information together,
  745. it correctly suggested cephalosporin as one antibiotic
  746. satisifying both bits of partial information.
  747. .p
  748. The number of iterations required to reconstruct the
  749. appropriate answer is a measure of certainty:
  750. large numbers of iterations either suggest the information is not strongly
  751. represented or the inference is weak, small numbers of iterations
  752. suggest the information is well represented or the inference
  753. is certain.
  754. .p
  755. This system behaves a little like an 'expert system' in that it
  756. can be
  757. applied to new situations.  However it does not have formal
  758. codification of sets of rules.
  759. It potentially can learn from
  760. experience by extracting commonalities from a great deal of 
  761. learned information, essentially (to emphasize this point again)
  762. due to the ^&linear\& interactions between stored information.
  763. The retrieval of information must contain non-linearities to
  764. supress spurious responses.
  765. .p
  766. These systems 
  767. are highly parallel
  768. and would be very
  769. fast if implemented on parallel computers.  
  770. Because information is stored as a matrix, two potentially useful
  771. side effects occur.  First, the data is 
  772. necessarily 'encrypted' in that
  773. it is not available in a meaningful form and
  774. each 'fact' is spread over many or all matrix elements
  775. and mixed together with other facts. Second, the learning
  776. phase makes by far the greatest CPU demands on the computer.
  777. Retrieval and inference are simply a small
  778. number of vector and matrix computations.
  779. It would be quite sensible to learn on a large
  780. machine, generate the matrix containing the information,
  781. and then use the matrix as a retrieval system 
  782. on a much smaller
  783. computer.
  784. .p
  785. ^&Example Two: Qualitative Physics.\&  
  786. There is a considerable interest among cognitive
  787. scientists in the generation of systems capable of 'intuitive'
  788. reasoning about physical systems.  This is 
  789. for several reasons.  First, much human real world
  790. knowledge is of this kind: i.e. information is
  791. not stored in 'propositional' form but in 
  792. a hazy 'intuitive' form is generated by
  793. extensive experience with real systems.  (It is
  794. almost certain that much human reasoning, even about
  795. highly structured abstract systems is not of a propositional type,
  796. but of an 'a-logical'  spatial, visual, or kinesthetic nature.
  797. See Davis and Anderson (1979) and, in particular, Hadamard (1949)
  798. for examples.)  Second, this kind of reasoning is particularly
  799. hard to handle with traditional AI systems because of its highly
  800. inductive and ill-defined nature.  It would be 
  801. important to be able to model.  Third, it is 
  802. an area where distributed neural systems may be very effective
  803. as part of the system.
  804. Riley and Smolensky (1984) have 
  805. described a 'Boltzmann' type model for reasoning
  806. about a simple physical system, and below we describe another.
  807. Fourth, I believe that the ideal model for reasoning about
  808. complicated real systems will be a hybrid: partly rule driven
  809. and partly 'intuitive'.  
  810. .p
  811. For an initial test of these ideas we constructed a set of
  812. state vectors representing the functional dependencies found
  813. in Ohm's Law, for example, what happens to E  when I increases and
  814. R is held constant.  These vectors were in the form of quasi-analog
  815. codings. (Figure Ohms-1) The system was taught according to our usual 
  816. techniques.  The parameters of the system were
  817. unchanged from the drug data base simulation. 
  818. .p
  819. The figures show that the system is capable of making the
  820. correct responses to novel combinations of parameters, (Ohms-3)
  821. if these combinations agree on their effects, another
  822. example of consensus reasoning, but cannot handle inconsistent
  823. situations (Ohms-4).
  824. .p
  825. ^&Example Three: Semantic Networks\&
  826. A useful way of organizing information 
  827. is as a network of associated information.  
  828. The five Network-Figures show a simple example of a
  829. computation of this type.
  830. Information is represented at 200 dimensional state
  831. vectors, constructed as strings of alphanumeric
  832. characters as before.  
  833. .p
  834. By making associations between state vectors, one can realize a
  835. simple semantic network, an example of which is presented in Figure Network-1.
  836. Here
  837. each node of the network corresponds to a state vector which contains
  838. a related information, i.e. simultaneously present at one
  839. node (the leftmost, under 'Subset') is the information that
  840. a canary is medium sized, flies, is yellow and eats seeds.
  841. This is connected by an upward and a downward link to the BIRD node, which
  842. essentially says that 'canary' is an example of the BIRD concept, which
  843. has the name 'bird'.  A strictly upward connection informs us
  844. that birds are ANMLs (with name 'animal').  The network contains 
  845. three examples
  846. of fish, birds and animal species and several examples of specific creatures.
  847. For example, Charlie is a tuna,  
  848. Tweetie is a canary and both Jumbo and Clyde are
  849. elephants.  
  850. The specific set of associations that together are held to
  851. realize this simple network are given in Figure Network-2.  
  852. These sets of assertions were learned 
  853. using the Widrow-Hoff error correction rule. 
  854. Two matrices were formed, one corresponding the associations
  855. of the state vectors with themselves (auto association)
  856. and one
  857. corresponding to the association of a state vector with a different
  858. state vector (true association).
  859. The matrices used were partially (about 50%) connected.
  860. .p
  861. When the matrix is formed and learning has ceased, the system can
  862. then be interrogated to see if it can traverse the network and
  863. fill in missing information in an appropriate way.  
  864. Figures Network-3 and -4 show simple disambiguation, where
  865. the context of a probe input ('gry')
  866. will lead to output of elephant or pigeon.
  867. (Alan Kawamoto (1985) has done extensive studies of disambuation of
  868. networks of this kind, and made some comparisions with
  869. relevant psychological data.  Kawamoto has generalized the model
  870. by adding adaptation as a way of destabilizing the system so
  871. it moves to new states as time goes on.)
  872. Another 
  873. property of a semantic network is sometimes called
  874. 'property inheritance'.  
  875. Figure Network-5 shows such a computation.
  876. We ask for the color of a large creature who
  877. works in the circus who we find out is Jumbo.  Jumbo
  878. is 
  879. an elephant.  Elephants are gray.
  880. .p
  881. Parameters are very uncritical:
  882. they were unchanged for all the three examples presented here.
  883. In the network calculation, Mx 2 corresponds to the
  884. autoassociative matrix and Mx 1 corresponds to the
  885. true associative matrix.  When the autoassociative
  886. system has reached a stable state, the true associator is
  887. applied for 5 iterations.  This untidy assumption can
  888. easily be done away with by assuming proper time delays as
  889. part of the description of a synapse,
  890. but at present it is more convenient to keep it because
  891. it separates two distinct operations.  Eventually this mechanism will
  892. be eliminated.
  893. .p
  894. This work is sponsored primarily
  895. by the National Science Foundation under grant BNS-82-14728,
  896. administered by the Memory and Cognitive Processes section.
  897. .left margin 8
  898. .right margin 73
  899. .flags accept
  900. .b2
  901. .c 80
  902. ^&References\&
  903. .b
  904. .p
  905. Anderson, J.A.  Two models for memory organization using
  906. interacting traces.  ^&Mathematical Biosciences.\&,
  907. &8, 137-160, 1970.
  908. .p
  909. Anderson, J.A.  Cognitive and psychological computation with
  910. neural models.  ^&IEEE Transactions on Systems, Man,
  911. and Cybernetics\&, ^&SMC-13\&, 799-815, 1983.
  912. .p
  913. Anderson, J.A. _& Hinton, G.E. Models of information
  914. processing in the brain.  In G.E. Hinton _& J.A. Anderson (Eds.),
  915. ^&Parallel Models of Associative Memory.\&
  916. Hillsdale, N.J.: Erlbaum Associates, 1981.
  917. .p
  918. Anderson, J.A., Silverstein, J.W., Ritz, S.A. _& Jones, R.S.
  919. Distinctive features, categorical perception, and probability
  920. learning: Some applications of a neural model.
  921. ^&Psychological Review.\&  &8&4, 413-451, 1977.
  922. .p
  923. Davis, P.J. _& Anderson, J.A.
  924. Non-analytic aspects of mathematics and their implications for
  925. research and education.
  926. ^&SIAM Review.\&, &2&1, 112-127, 1979.
  927. .p
  928. Geman, S. _& Geman, D.  Stochastic relaxation, Gibbs distributions,
  929. and the Bayesian restoration of images.  ^&IEEE:
  930. Proceedings on Artificial and Machine Intelligence\&, &6, 721-741,
  931. November, 1984.
  932. .p
  933. Goodman, A.G., Goodman, L.S., _& Gilman, A.
  934. ^&The Pharmacological Basis of Theraputics.  Sixth Edition.\&
  935. New York:  MacMillan, 1980.
  936. .p
  937. Golden, R.  Identification of the BSB neural model as a gradient
  938. descent technique that minimizes a quadratic cost function over
  939. a set of linear inequalities.
  940. Submitted for publication.
  941. .p
  942. Hadamard, J.  ^&The Psychology of Invention in the Mathematical
  943. Field.\&  Princeton, N.J.: Princeton University Press, 1949.
  944. .p
  945. Hinton, G.E. _& Sejnowski, T.J. Optimal pattern inference.
  946. ^&IEEE Conference on Computers in Vision and Pattern Recognition.\&.
  947. 1984.
  948. .p
  949. Hopfield, J.J.  
  950. Neurons with graded response have collective computational
  951. properties like those of two-state neurons.
  952. ^&Proc. Natl. Acad. Sci. U.S.A.\&, &8&1, 3088-3092, 1984.
  953. .p
  954. Huang Po. ^&The Zen Teaching of Huang Po.\&  (Trans. J. Blofield).
  955. New York: Grove Press, 1958.
  956. .p
  957. James, W.
  958. ^&Briefer Psychology.\& (Orig. ed. 1890).
  959. New York: Collier, 1964.
  960. .p
  961. Kawamoto, A.  
  962. Dynamic Processes in the (Re)Solution of Lexical Ambiguity.
  963. Ph.D. Thesis, Department of Psychology, Brown University.
  964. May, 1985.
  965. .p
  966. Knapp, A.G. _& Anderson, J.A. Theory of categorization based on
  967. distributed memory storage.  ^&Journal of Experimental Psychology:
  968. Learning, Memory, and Cognition.\&, &1&0, 616-637, 1984.
  969. .p
  970. Kohonen, T.  ^&Associative Memory.\&  Berlin: Springer, 1977.
  971. .p
  972. Kohonen, T.  ^&Self Organization and Associative Memory.\&
  973. Berlin: Springer, 1984.
  974. .p
  975. Riley, M. S. _& Smolensky, P.
  976. A parallel model of sequential problem solving.
  977. ^&Proceedings of Sixth Annual Conference of the Cognitive
  978. Science Society.\&  Boulder, Colorado: 1984.  
  979. .page
  980. .left margin 3
  981. .right margin 72
  982. .no flags accept
  983. .page size 62
  984. .c 80
  985. Figure Drugs-1
  986. .b
  987. .c 80
  988. Database Information
  989. .b
  990. .literal
  991.  
  992.    F[ 1]. Staphaur+cocEndocaPenicil   G[ 1]. Staphaur+cocEndocaPenicil
  993.    F[ 2]. Staphaur+cocMeningPenicil   G[ 2]. Staphaur+cocMeningPenicil
  994.    F[ 3]. Staphaur+cocPneumoPenicil   G[ 3]. Staphaur+cocPneumoPenicil
  995.    F[ 4]. Streptop+cocScarFePenicil   G[ 4]. Streptop+cocScarFePenicil
  996.    F[ 5]. Streptop+cocPneumoPenicil   G[ 5]. Streptop+cocPneumoPenicil
  997.    F[ 6]. Streptop+cocPharynPenicil   G[ 6]. Streptop+cocPharynPenicil
  998.    F[ 7]. Neisseri-cocGonorhAmpicil   G[ 7]. Neisseri-cocGonorhAmpicil
  999.    F[ 8]. Neisseri-cocMeningPenicil   G[ 8]. Neisseri-cocMeningPenicil
  1000.    F[ 9]. Coryneba+bacPneumoPenicil   G[ 9]. Coryneba+bacPneumoPenicil
  1001.    F[10]. Clostrid+bacGangrePenicil   G[10]. Clostrid+bacGangrePenicil
  1002.    F[11]. Clostrid+bacTetanuPenicil   G[11]. Clostrid+bacTetanuPenicil
  1003.    F[12]. E.Coli  -bacUrTrInAmpicil   G[12]. E.Coli  -bacUrTrInAmpicil
  1004.    F[13]. Enteroba-bacUrTrInCephalo   G[13]. Enteroba-bacUrTrInCephalo
  1005.    F[14]. Proteus -bacUrTrInGentamy   G[14]. Proteus -bacUrTrInGentamy
  1006.    F[15]. Salmonel-bacTyphoiChloram   G[15]. Salmonel-bacTyphoiChloram
  1007.    F[16]. Yersinap-bacPlagueTetracy   G[16]. Yersinap-bacPlagueTetracy
  1008.    F[17]. TreponemspirSyphilPenicil   G[17]. TreponemspirSyphilPenicil
  1009.    F[18]. TreponemspirYaws  Penicil   G[18]. TreponemspirYaws  Penicil
  1010.    F[19]. CandidaafungLesionAmphote   G[19]. CandidaafungLesionAmphote
  1011.    F[20]. CryptocofungMeningAmphote   G[20]. CryptocofungMeningAmphote
  1012.    F[21]. HistoplafungPneumoAmphote   G[21]. HistoplafungPneumoAmphote
  1013.    F[22]. AspergilfungMeningAmphote   G[22]. AspergilfungMeningAmphote
  1014.    F[23]. SiEfHypersensOralVPenicil   G[23]. SiEfHypersensOralVPenicil
  1015.    F[24]. SiEfHypersensInjeGPenicil   G[24]. SiEfHypersensInjeGPenicil
  1016.    F[25]. SiEfHypersensInjeMPenicil   G[25]. SiEfHypersensInjeMPenicil
  1017.    F[26]. SiEfHypersensOralOPenicil   G[26]. SiEfHypersensOralOPenicil
  1018.    F[27]. SiEfHypersensInje Cephalo   G[27]. SiEfHypersensInje Cephalo
  1019.    F[28]. SiEfOtotoxic Inje Gentamy   G[28]. SiEfOtotoxic Inje Gentamy
  1020.    F[29]. SiEfAplasticAInje Chloram   G[29]. SiEfAplasticAInje Chloram
  1021.    F[30]. SiEfKidneys++Inje Amphote   G[30]. SiEfKidneys++Inje Amphote
  1022.    F[31]. SiEfHypersensOral Ampicil   G[31]. SiEfHypersensOral Ampicil
  1023. .end literal
  1024. .left margin 12
  1025. .right margin 68
  1026. .b
  1027. .p
  1028. A strictly autoassociative system can be used as a database.  
  1029. Here, state vectors correspond to information about antibiotics,
  1030. bacteria, side effects, and other bits of information.  The detailed
  1031. information
  1032. is taken from Goodman and Gilman (1980).  Because only 25 characters
  1033. are available, the codings are somewhat terse.  If each pairwise
  1034. fact relation in a single state vector is considered an
  1035. 'atomic fact' there are several hundred facts in this database, though
  1036. only 31 state vectors.  
  1037. .p
  1038. The matrix used in the simulation used random presentation of
  1039. state vectors for an average of about 40 presentations per item.
  1040. The matrix was 50% connected: i.e. half the matrix elements
  1041. were identically zero.
  1042. .page
  1043. .left margin 16
  1044. .right margin 72
  1045. .c 80
  1046. Drugs-2
  1047. .b
  1048. .c 80
  1049. 'Tell about fungal meningitis.'
  1050. .b
  1051. .left margin 15
  1052. .right margin 68
  1053. .literal
  1054. Mx 2.     1.  ________fungMening_______  Check:  80
  1055. ...
  1056. Mx 2.    11.  ________fungMening_m__ote  Check:  85
  1057. Mx 2.    12.  ________fungMening_m_hote  Check:  90
  1058. Mx 2.    13.  ________fungMeningAm_hote  Check: 104
  1059. Mx 2.    14.  ________fungMeningAm_hote  Check: 126
  1060. Mx 2.    15.  _s______fungMeningAm_hote  Check: 131
  1061. Mx 2.    16.  _s______fungMeningAm_hote  Check: 137
  1062. Mx 2.    17.  _s______fungMeningAm_hote  Check: 147
  1063. Mx 2.    18.  _s______fungMeningAm_hote  Check: 152
  1064. Mx 2.    19.  _s______fungMeningAmphote  Check: 158
  1065. Mx 2.    20.  _s______fungMeningAmphote  Check: 162
  1066. Mx 2.    21.  _s______fungMeningAmphote  Check: 166
  1067. Mx 2.    22.  _s______fungMeningAmphote  Check: 170
  1068. Mx 2.    23.  _s______fungMeningAmphote  Check: 171
  1069. Mx 2.    24.  _s______fungMeningAmphote  Check: 171
  1070. Mx 2.    25.  _s______fungMeningAmphote  Check: 172
  1071. Mx 2.    26.  _s______fungMeningAmphote  Check: 172
  1072. Mx 2.    27.  _s______fungMeningAmphote  Check: 173
  1073. Mx 2.    28.  _s______fungMeningAmphote  Check: 174
  1074. Mx 2.    29.  _s______fungMeningAmphote  Check: 173
  1075. Mx 2.    30.  _s______fungMeningAmphote  Check: 173
  1076. Mx 2.    31.  _s____i_fungMeningAmphote  Check: 173
  1077. Mx 2.    32.  _s____i_fungMeningAmphote  Check: 173
  1078. Mx 2.    33.  _s____i_fungMeningAmphote  Check: 173
  1079. Mx 2.    34.  _s____i_fungMeningAmphote  Check: 173
  1080. Mx 2.    35.  _s____i_fungMeningAmphote  Check: 173
  1081. Mx 2.    36.  _s____i_fungMeningAmphote  Check: 173
  1082. Mx 2.    37.  As____i_fungMeningAmphote  Check: 174
  1083. Mx 2.    38.  As____i_fungMeningAmphote  Check: 176
  1084. Mx 2.    39.  As____i_fungMeningAmphote  Check: 178
  1085. Mx 2.    40.  As__p_i_fungMeningAmphote  Check: 179
  1086. Mx 2.    41.  As__p_i_fungMeningAmphote  Check: 181
  1087. Mx 2.    42.  As__p_i_fungMeningAmphote  Check: 182
  1088. Mx 2.    43.  As__p_i_fungMeningAmphote  Check: 182
  1089. Mx 2.    44.  As__pgi_fungMeningAmphote  Check: 185
  1090. Mx 2.    45.  AspepgimfungMeningAmphote  Check: 185
  1091. Mx 2.    46.  AspepgimfungMeningAmphote  Check: 186
  1092. Mx 2.    47.  AspepgimfungMeningAmphote  Check: 186
  1093. Mx 2.    48.  Aspepgi_fungMeningAmphote  Check: 188
  1094. Mx 2.    49.  Aspe_gi_fungMeningAmphote  Check: 190
  1095. Mx 2.    50.  Aspe_gi_fungMeningAmphote  Check: 191
  1096. Mx 2.    51.  Aspe_gi_fungMeningAmphote  Check: 193
  1097. Mx 2.    52.  Aspe_gi_fungMeningAmphote  Check: 194
  1098. Mx 2.    53.  Aspe_gi_fungMeningAmphote  Check: 195
  1099. Mx 2.    54.  Aspe_gi_fungMeningAmphote  Check: 197
  1100. Mx 2.    55.  Aspe_gi_fungMeningAmphote  Check: 198
  1101. Mx 2.    56.  Aspe_gi_fungMeningAmphote  Check: 198
  1102. Mx 2.    57.  Aspe_gi_fungMeningAmphote  Check: 198
  1103. Mx 2.    58.  Aspe_gi_fungMeningAmphote  Check: 198
  1104. Mx 2.    59.  AspergilfungMeningAmphote  Check: 198
  1105. Mx 2.    60.  AspergilfungMeningAmphote  Check: 198
  1106. .end literal
  1107. .page
  1108. .left margin 8
  1109. .right margin 68
  1110. .no flags accept
  1111. .c 80
  1112. Caption for Figure Drugs-2
  1113. .b
  1114. .p
  1115. We use partial information combined with the reconstructive
  1116. properties of the autoassociative system to get more information
  1117. out of the system.
  1118. The usual way we do this is to put in partial information and
  1119. let the information at a node be reconstructed using feedback and
  1120. the autoassociator.
  1121. In the first stimulus (1) above, the '_' indicates zeros
  1122. in the input state vector.  Once the feedback starts working, '_' 
  1123. indicates a byte with one or more elements below interpretation
  1124. threshold.
  1125. .p
  1126. The Mx notation indicates which matrix is in use by the program.
  1127. In this case, only the autoassociative matrix is used.  The
  1128. number refers to the interation number, i.e. how often the state
  1129. vector has passed through the matrix.
  1130. 'Check' refers to to the number of elements in the state
  1131. vector that are saturated at that iteration.
  1132. It is a rough measure of length.  It cannot get
  1133. larger than 200.  
  1134. .p
  1135. The appropriate antibiotic for fungal meningitis emerges early,
  1136. because Amphotericin is used to treat all fungal diseases the
  1137. system knows about.  The specific organism takes longer, but is
  1138. eventually reconstructed.  Note the errors corrected in the
  1139. later iterations (Aspepgim becomes Aspergil).
  1140. .page
  1141. .left margin 24
  1142. .right margin 80
  1143. .c
  1144. Figure Drugs-3
  1145. .b
  1146. .c
  1147. 'What are the side effects of Amphotericin?'
  1148. .b
  1149. .left margin 15
  1150. .right margin 68
  1151. .literal
  1152. Mx 2.     1.  SiEf______________Amphote  Check:  88
  1153. Mx 2.     2.  SiEf______________Amphote  Check:  88
  1154. Mx 2.     3.  SiEf______________Amphote  Check:  88
  1155. Mx 2.     4.  SiEf______________Amphote  Check:  88
  1156. Mx 2.     5.  SiEf______________Amphote  Check:  89
  1157. Mx 2.     6.  SiEf______________Amphote  Check:  91
  1158. Mx 2.     7.  SiEf______________Amphote  Check:  95
  1159. Mx 2.     8.  SiEf______________Amphote  Check:  98
  1160. Mx 2.     9.  SiEf______________Amphote  Check: 109
  1161. Mx 2.    10.  SiEf______________Amphote  Check: 124
  1162. Mx 2.    11.  SiEf______________Amphote  Check: 126
  1163. Mx 2.    12.  SiEf______________Amphote  Check: 131
  1164. Mx 2.    13.  SiEf______________Amphote  Check: 135
  1165. Mx 2.    14.  SiEf_____y________Amphote  Check: 137
  1166. Mx 2.    15.  SiEf_____y________Amphote  Check: 140
  1167. Mx 2.    16.  SiEf_____y________Amphote  Check: 144
  1168. Mx 2.    17.  SiEf_____y___K__e_Amphote  Check: 146
  1169. Mx 2.    18.  SiEf__d__y__+K__e_Amphote  Check: 150
  1170. Mx 2.    19.  SiEf__d__y__+K__e_Amphote  Check: 155
  1171. Mx 2.    20.  SiEf__d_ey__+K__e_Amphote  Check: 158
  1172. Mx 2.    21.  SiEf__dney_++K__e_Amphote  Check: 160
  1173. Mx 2.    22.  SiEf_idneys++K__e Amphote  Check: 164
  1174. Mx 2.    23.  SiEf_idneys++K__e Amphote  Check: 169
  1175. Mx 2.    24.  SiEf_idneys++K__e Amphote  Check: 174
  1176. Mx 2.    25.  SiEf_idneys++K__e Amphote  Check: 175
  1177. Mx 2.    26.  SiEf_idneys++K__e Amphote  Check: 178
  1178. Mx 2.    27.  SiEfKidneys++K__e Amphote  Check: 183
  1179. Mx 2.    28.  SiEfKidneys++K__e Amphote  Check: 187
  1180. Mx 2.    29.  SiEfKidneys++K__e Amphote  Check: 189
  1181. Mx 2.    30.  SiEfKidneys++K__e Amphote  Check: 190
  1182. Mx 2.    31.  SiEfKidneys++___e Amphote  Check: 190
  1183. Mx 2.    32.  SiEfKidneys++_n_e Amphote  Check: 191
  1184. Mx 2.    33.  SiEfKidneys++_n_e Amphote  Check: 191
  1185. Mx 2.    34.  SiEfKidneys++_n_e Amphote  Check: 192
  1186. Mx 2.    35.  SiEfKidneys++_n_e Amphote  Check: 192
  1187. Mx 2.    36.  SiEfKidneys++_nje Amphote  Check: 193
  1188. Mx 2.    37.  SiEfKidneys++_nje Amphote  Check: 193
  1189. Mx 2.    38.  SiEfKidneys++_nje Amphote  Check: 194
  1190. Mx 2.    39.  SiEfKidneys++_nje Amphote  Check: 195
  1191. Mx 2.    40.  SiEfKidneys++_nje Amphote  Check: 195
  1192. Mx 2.    41.  SiEfKidneys++_nje Amphote  Check: 196
  1193. Mx 2.    42.  SiEfKidneys++_nje Amphote  Check: 197
  1194. Mx 2.    43.  SiEfKidneys++Inje Amphote  Check: 199
  1195. Mx 2.    44.  SiEfKidneys++Inje Amphote  Check: 199
  1196. Mx 2.    45.  SiEfKidneys++Inje Amphote  Check: 199
  1197. Mx 2.    46.  SiEfKidneys++Inje Amphote  Check: 199
  1198. Mx 2.    47.  SiEfKidneys++Inje Amphote  Check: 199
  1199. Mx 2.    48.  SiEfKidneys++Inje Amphote  Check: 199
  1200. .end literal
  1201. .left margin 12
  1202. .right margin 68
  1203. .p
  1204. A prudent therapist checks side effects.  Amphotericin
  1205. has serious ones, involving the kidneys among other organs.
  1206. .page
  1207. .left margin 24
  1208. .right margin 80
  1209. .c
  1210. Figure Drugs-4
  1211. .b
  1212. .c 80
  1213. 'Tell about Meningitis caused by Gram + bacilli.'
  1214. .b
  1215. .left margin 15
  1216. .right margin 68
  1217. .literal
  1218. Mx 2.     1.  ________+bacMening_______  Check:  80
  1219. Mx 2.     2.  ________+bacMening_______  Check:  80
  1220. Mx 2.     3.  ________+bacMening_______  Check:  80
  1221. Mx 2.     4.  ________+bacMening_______  Check:  80
  1222. Mx 2.     5.  ________+bacMening_______  Check:  80
  1223. Mx 2.     6.  ________+bacMening_______  Check:  81
  1224. Mx 2.     7.  ________+bacMening_______  Check:  82
  1225. Mx 2.     8.  ________+bacMening_______  Check:  84
  1226. Mx 2.     9.  ________+bacMening_______  Check:  85
  1227. Mx 2.    10.  ________+bacMening_______  Check:  88
  1228. Mx 2.    11.  ________+bacMening_______  Check:  90
  1229. Mx 2.    12.  ________+bacMening_______  Check: 102
  1230. Mx 2.    13.  _o_____`+bacMening______m  Check: 125
  1231. Mx 2.    14.  _o_____`+bacMening_e____m  Check: 133
  1232. Mx 2.    15.  _o_____`+bacMening_e____m  Check: 135
  1233. Mx 2.    16.  _o_____`+bacMening_e____m  Check: 136
  1234. Mx 2.    17.  Co_____`+bacMening_en__im  Check: 139
  1235. Mx 2.    18.  Co_____`+bacMening_en__im  Check: 143
  1236. Mx 2.    19.  Co_____`+bacMening_en__i_  Check: 145
  1237. Mx 2.    20.  Co_____`+bacMening_en__i_  Check: 152
  1238. Mx 2.    21.  Co_____`+bacMening_en__i_  Check: 155
  1239. Mx 2.    22.  Co_____`+bacMening_eni_i_  Check: 156
  1240. Mx 2.    23.  Co_____`+bacMening_enici_  Check: 160
  1241. Mx 2.    24.  Co_____`+bacMening_enici_  Check: 163
  1242. Mx 2.    25.  Co_____`+bacMening_enici_  Check: 163
  1243. Mx 2.    26.  Co_____`+bacMening_enici_  Check: 165
  1244. Mx 2.    27.  Co_____`+bacMening_enici_  Check: 168
  1245. Mx 2.    28.  Co_____`+bacMening_enici_  Check: 171
  1246. Mx 2.    29.  Co_____`+bacMeningPenici_  Check: 174
  1247. Mx 2.    30.  Co___e_`+bacMeningPenicil  Check: 177
  1248. Mx 2.    31.  Co_y_e_`+bacMeningPenicil  Check: 178
  1249. Mx 2.    32.  Co_y_e_`+bacMeningPenicil  Check: 181
  1250. .end literal
  1251. .left margin 12
  1252. .p
  1253. This Figure demonstrates the use of the system for
  1254. generalization.  The data base the system learned contains
  1255. no information about Meningitis caused by Gram positive
  1256. bacilli.  However it does 'know' that other Gram positive
  1257. bacilli are treated with penicillin.  Therefore it
  1258. 'guesses' that the right drug is penicillin.  This
  1259. may or may not be correct!  But it is a sensible suggestion
  1260. based on past experience.  Notice that the number of iterations
  1261. to get the answer is fairly long, indicating that the system
  1262. is not totally sure of the answer.  Note there is no
  1263. internal
  1264. record of the 'reasoning' used by the system, so errors
  1265. may be quite hard to correct, unlike rule drive expert systems.
  1266. .page
  1267. .left margin 24
  1268. .right margin 80
  1269. .c 80
  1270. Figure Drugs-5
  1271. .b
  1272. .c 80
  1273. Use of Converging Information: Consensus
  1274. .b
  1275. .c 80
  1276. Part I: Urinary Tract Infections
  1277. .b
  1278. .left margin 15
  1279. .right margin 68
  1280. .literal
  1281. Mx 2.     1.  ____________UrTrIn_______  Check:  48
  1282. ...
  1283. Mx 2.    21.  _______ -__cUrTrIn_______  Check: 108
  1284. ...
  1285. Mx 2.    31.  ___d___ -bacUrTrInC__lamm  Check: 147
  1286. ...
  1287. Mx 2.    41.  _r____q -bacUrTrIn_e__am_  Check: 157
  1288. ...
  1289. Mx 2.    51.  _ro_e_q -bacUrTrIn_e__am_  Check: 162
  1290. ...
  1291. Mx 2.    61.  Prote__ -bacUrTrInGe_tamy  Check: 185
  1292. ...
  1293. Mx 2.    71.  Proteus -bacUrTrInGe_tamy  Check: 195
  1294. ...
  1295. Mx 2.    80.  Proteus -bacUrTrInGentamy  Check: 200
  1296. .end literal
  1297. .b2
  1298. .c 80
  1299. Part II: Hypersensitivity
  1300. .b
  1301. .left margin 15
  1302. .right margin 68
  1303. .literal
  1304. Mx 2.     1.  ____Hypersen_____________  Check:  64
  1305. ...
  1306. Mx 2.    11.  _i__Hypersens______e_____  Check:  81
  1307. ...
  1308. Mx 2.    21.  SiEfHypersensIj____e_____  Check: 161
  1309. ...
  1310. Mx 2.    31.  SiEfHypersensIn____e_____  Check: 171
  1311. ...
  1312. Mx 2.    41.  SiEfHypersensInj___e_____  Check: 174
  1313. ...
  1314. Mx 2.    51.  SiEfHypersensInje_Penicil  Check: 181
  1315. ...
  1316. Mx 2.    61.  SiEfHypersensInje_Penicil  Check: 196
  1317. .end literal
  1318. .b2
  1319. .c 80
  1320. Part III. Hypersensitivity + Urinary Tract Infection
  1321. .b
  1322. .left margin 15
  1323. .right margin 68
  1324. .literal
  1325. Mx 2.     1.  ____HypersenUrTrIn_______  Check: 112
  1326. ...
  1327. Mx 2.    11.  Q__dHypersenUrTrInC______  Check: 126
  1328. ...
  1329. Mx 2.    21.  Q__dHypersenUrTrInCe__alo  Check: 174
  1330. ...
  1331. Mx 2.    31.  Q__dHypersenUrTrInCephalo  Check: 188
  1332. .end literal
  1333. .page
  1334. .left margin 8
  1335. .right margin 68
  1336. .c 80
  1337. Caption for Figure Drugs-5
  1338. .b
  1339. .p
  1340. Suppose we need to use 'converging' information, that is, find
  1341. a drug that is a 'second best' choice for two requirements, but
  1342. the best choice for both requirements together.  This Figure 
  1343. demonstrates such a situation.  Suppose a nasty medical school
  1344. pharmacology instructor asked, 'What is a drug causing
  1345. hypersensitivity and which is used to treat Urinary tract
  1346. infections.'
  1347. .p
  1348. If the data base is told 'Urinary Tract Infection',
  1349. it picks a learned vector, probably the most recent
  1350. one it saw due to the short term memory effects of the decay
  1351. term combined with error correction.  (This effect is illustrated in
  1352. Part I. of this Figure.)  The drug in this
  1353. case is gentamycin, whose side effect is ototoxicity.
  1354. .p
  1355. Hypersensitivity, used as a probe in Part II,
  1356. indicates a penicillin family drug.  (This
  1357. is the penicillin 'allergy'.)  Since penicillin is  the most
  1358. common drug in the data base, penicillin is the drug most
  1359. strongly associated with Hypersensitivity.  Penicillin is
  1360. not used (in this data base) to treat urinary tract infections.
  1361. .p
  1362. One drug that does both is cephalosporin, and given both
  1363. requirements, as in Part III, 
  1364. this is the choice of the system, which
  1365. integrated information from both probes and gave a satisfactory
  1366. answer.
  1367. Ampicillin would also be a satisfactory answer.
  1368. Notice that the form of this vector, where a side effect and a disease
  1369. occur simultaneously never occurs in the vectors forming the data base.
  1370. .page
  1371. .control characters
  1372. .page size 64
  1373. .left margin 6
  1374. .right margin 72
  1375. .no flags bold
  1376. .no flags accept
  1377. *"1
  1378. .c 80
  1379. Figure Ohms-1
  1380. .b
  1381. .c 80
  1382. Stimulus Set for 'Qualitative Physics' Demonstration
  1383. .b
  1384. .c 80
  1385. Functional Dependencies in Ohms Law
  1386. .b2
  1387. .c 80
  1388. Stimulus Set
  1389. .literal
  1390.  
  1391.    F[ 1]. E__***__I_____**R**______   G[ 1]. E__***__I_____**R**______
  1392.    F[ 2]. E__***__I____***R***_____   G[ 2]. E__***__I____***R***_____
  1393.    F[ 3]. E__***__I___***_R_***____   G[ 3]. E__***__I___***_R_***____
  1394.    F[ 4]. E__***__I__***__R__***___   G[ 4]. E__***__I__***__R__***___
  1395.    F[ 5]. E__***__I_***___R___***__   G[ 5]. E__***__I_***___R___***__
  1396.    F[ 6]. E__***__I***____R____***_   G[ 6]. E__***__I***____R____***_
  1397.    F[ 7]. E__***__I**_____R_____**_   G[ 7]. E__***__I**_____R_____**_
  1398.    F[ 8]. E**_____I**_____R__***___   G[ 8]. E**_____I**_____R__***___
  1399.    F[ 9]. E***____I***____R__***___   G[ 9]. E***____I***____R__***___
  1400.    F[10]. E_***___I_***___R__***___   G[10]. E_***___I_***___R__***___
  1401.    F[11]. E__***__I__***__R__***___   G[11]. E__***__I__***__R__***___
  1402.    F[12]. E___***_I___***_R__***___   G[12]. E___***_I___***_R__***___
  1403.    F[13]. E____***I____***R__***___   G[13]. E____***I____***R__***___
  1404.    F[14]. E_____**I_____**R__***___   G[14]. E_____**I_____**R__***___
  1405.    F[15]. E**_____I__***__R**______   G[15]. E**_____I__***__R**______
  1406.    F[16]. E***____I__***__R***_____   G[16]. E***____I__***__R***_____
  1407.    F[18]. E__***__I__***__R__***___   G[18]. E__***__I__***__R__***___
  1408.    F[19]. E___***_I__***__R___***__   G[19]. E___***_I__***__R___***__
  1409.    F[20]. E____***I__***__R____***_   G[20]. E____***I__***__R____***_
  1410.    F[21]. E_____**I__***__R_____**_   G[21]. E_____**I__***__R_____**_
  1411.  
  1412. .end literal
  1413. .left margin 12
  1414. .right margin 68
  1415. The three asterisks in these stimuli 
  1416. should be viewed as an image of a broad
  1417. meter pointer.  The 'E', 'I', and 'R' are for convenience of
  1418. the reader.  If the 'pointer' deflects to the left, the value
  1419. decreases, in the middle, there there is no change, to the right
  1420. the value increases.
  1421. .p
  1422. We are trying to teach the system 
  1423. the functional dependencies in Ohm's
  1424. Law:
  1425. .literal
  1426.  
  1427.                      E = I R
  1428.  
  1429. .end literal
  1430.  
  1431. The learning set is simply the pattern observed by holding
  1432. one parameter fixed and letting the others vary.  
  1433. .p
  1434. The autoassociative matrix generated was 45% connected
  1435. and received about 25 presentations of each stimulus in
  1436. random order.
  1437. .page
  1438. .c 80
  1439. Figure Ohms-2
  1440. .b
  1441. .c 80
  1442. Response to a Learned Pattern
  1443. .b
  1444. .left margin 12
  1445. .literal
  1446.  
  1447. Mx 2.     1.  E***____I__***__R________  Check:   0
  1448. Mx 2.     2.  E***____I__***__R________  Check:   0
  1449. Mx 2.     3.  E***____I__***__R________  Check:  14
  1450. Mx 2.     4.  E***____I__***__R________  Check:  48
  1451. Mx 2.     5.  E***____I__***__R________  Check:  66
  1452. Mx 2.     6.  E***____I__***__R*_______  Check:  69
  1453. Mx 2.     7.  E***____I__***__R*_______  Check:  69
  1454. Mx 2.     8.  E***____I__***__R*_______  Check:  70
  1455. Mx 2.     9.  E***____I__***__R***_____  Check:  70
  1456. Mx 2.    10.  E***____I__***__R***_____  Check:  71
  1457. Mx 2.    11.  E***____I__***__R***_____  Check:  72
  1458. Mx 2.    12.  E***____I__***__R***_____  Check:  72
  1459. Mx 2.    13.  E***____I__***__R***_____  Check:  73
  1460. Mx 2.    14.  E***____I__***__R***_____  Check:  76
  1461. Mx 2.    15.  E***____I__***U_R***_____  Check:  79
  1462. Mx 2.    16.  E***____I__***U_R***_____  Check:  85
  1463. .end literal
  1464. .left margin 8
  1465. .right margin 68
  1466. .p
  1467. This input pattern simply indicates that the matrix can
  1468. respond appropriately to a learned pattern.  It is a
  1469. test that learning was adequate.  Note that
  1470. noise starts to appear in the last two iterations.  Spurious
  1471. associations will appear in the blank positions as the
  1472. system continues to cycle.  Note the region of stability
  1473. (which displays the correct answer) from iteration 9 to 14.
  1474. .page
  1475. .c 80
  1476. Figure Ohms-3
  1477. .b
  1478. .c 80
  1479. Response to Unlearned but Consistent Set of Inputs
  1480. .b
  1481. .c 80
  1482. Case 1.
  1483. .b
  1484. .left margin 10
  1485. .literal
  1486. Mx 2.     1.  E_______I***____R***_____  Check:   0
  1487. Mx 2.     2.  E_______I***____R***_____  Check:   0
  1488. Mx 2.     3.  E_______I***____R***_____  Check:   2
  1489. Mx 2.     4.  E_______I***____R***_____  Check:  24
  1490. Mx 2.     5.  E**_____I***____R***_____  Check:  26
  1491. Mx 2.     6.  E***____I***____R***_____  Check:  40
  1492. Mx 2.     7.  E***____I***____R***_____  Check:  51
  1493. Mx 2.     8.  E***____I***____R***_____  Check:  63
  1494. Mx 2.     9.  E***____I***____R***_____  Check:  70
  1495. Mx 2.    10.  E***____I***____R***_____  Check:  80
  1496. Mx 2.    11.  E***____I***___*R***_____  Check:  93
  1497. Mx 2.    12.  E***____I***___*R***_____  Check:  95
  1498. Mx 2.    13.  E***____I***___*R***___*_  Check:  95
  1499. Mx 2.    14.  E***____I***_*_*R***___*_  Check:  96
  1500. Mx 2.    15.  E***____I***_*_*R***___*_  Check:  96
  1501. Mx 2.    16.  E****___I***_*_*R***___*_  Check:  96
  1502. .end literal
  1503. .left margin 0
  1504. .b
  1505. .c 80
  1506. Case 2.
  1507. .b
  1508. .left margin 10
  1509. .literal
  1510. Mx 2.     1.  E____***I***____R________  Check:   0
  1511. Mx 2.     2.  E____***I***____R________  Check:   0
  1512. Mx 2.     3.  E____***I***____R________  Check:   6
  1513. Mx 2.     4.  E____***I***____R________  Check:  24
  1514. Mx 2.     5.  E____***I***____R_____*__  Check:  27
  1515. Mx 2.     6.  E____***I***____R_____**_  Check:  40
  1516. Mx 2.     7.  E____***I***____R____***_  Check:  50
  1517. Mx 2.     8.  E____***I***____R____***_  Check:  59
  1518. Mx 2.     9.  E____***I***____R____***_  Check:  66
  1519. Mx 2.    10.  E*___***I***___*R____***_  Check:  76
  1520. Mx 2.    11.  E*___***I***___*R____***_  Check:  80
  1521. Mx 2.    12.  E*___***I***___*R____***_  Check:  93
  1522. Mx 2.    13.  E*___***I***___*R____***_  Check:  96
  1523. Mx 2.    14.  E*_*_***I***___*R____***_  Check:  96
  1524. Mx 2.    15.  E*_*_***I***___*R____***_  Check:  96
  1525. Mx 2.    16.  E*_*_***I***___*R___****_  Check:  96
  1526. .end literal
  1527. .left margin 8
  1528. .right margin 72
  1529. .p
  1530. In these two tests, the system sees a pattern it never saw
  1531. explicitly and it must respond with the 'most appropriate'
  1532. answer.  
  1533. Note that although the problem is ill
  1534. defined, there is a consensus answer.  If we look
  1535. at Ohm's Law
  1536. in both the first and second cases, the equation suggests
  1537. a consistent interpretation:
  1538. .b
  1539. First Case, I and R both are down, therefore
  1540. .b
  1541. .i20
  1542.           NR I NR R ==> NR E
  1543. .b
  1544. Second Case, E is up and I is down, therefore
  1545. .b
  1546. .i22
  1547.           NE E
  1548. .i20
  1549.           ------ ==> NE R
  1550. .i22
  1551.           NR I
  1552. .page
  1553. .c 80
  1554. Figure Ohms-4
  1555. .b
  1556. .c 80
  1557. Inconsistent Stimulus Set
  1558. .b
  1559. .left margin 10
  1560. .literal
  1561. Mx 2.     1.  E***____I***____R________  Check:   0
  1562. Mx 2.     2.  E***____I***____R________  Check:   0
  1563. Mx 2.     3.  E***____I***____R________  Check:  10
  1564. Mx 2.     4.  E***____I***____R________  Check:  70
  1565. Mx 2.     5.  E***____I***____R________  Check:  72
  1566. Mx 2.     6.  E***____I***____R________  Check:  72
  1567. Mx 2.     7.  E***____I***____R________  Check:  72
  1568. Mx 2.     8.  E***____I***____R________  Check:  72
  1569. Mx 2.     9.  E***____I***____R*_______  Check:  72
  1570. Mx 2.    10.  E***____I***____R*_______  Check:  72
  1571. Mx 2.    11.  E***____I***____R*____**_  Check:  72
  1572. Mx 2.    12.  E***____I***____R*___***_  Check:  72
  1573. Mx 2.    13.  E***____I***____R*_*_***_  Check:  72
  1574. Mx 2.    14.  E***____I***__U_R***_***_  Check:  72
  1575. Mx 2.    15.  E***____I***__U_R***_***_  Check:  72
  1576. Mx 2.    16.  E***____I***__U_R***_***_  Check:  72
  1577. .end literal
  1578. .left margin 8
  1579. .right margin 68
  1580. .p
  1581. There is no such consistency in this case, and there is
  1582. no consensus.  Note the answer is 'confused' and shows
  1583. many possible answers.  
  1584. .p
  1585. In this case, E is down and I is down.  If we look
  1586. at the equation,
  1587. .b
  1588. .i22
  1589.           NR E
  1590. .i20
  1591.           ------ ==> NRNE R
  1592. .i22
  1593.           NR I
  1594. .b
  1595. the top and bottom of the equation 'fight' each other and there
  1596. is no agreement.
  1597. .page
  1598. .no flags accept
  1599. .page size 62
  1600. .right margin 79
  1601. .left margin 0
  1602. .c
  1603. Figure Network-1
  1604. .b
  1605. .c
  1606. A Simple 'Semantic' Network
  1607. .b
  1608. .literal
  1609.  
  1610.  Superset        |------------------------------>  ANML <------------------|
  1611.                  |                                  |                      |
  1612.                  |                  (gerbil) <--> animal <--> (elephant)   |
  1613.                  |                    small         ^           large      |
  1614.                  |                    dart          v           walk       |
  1615.                  |                    skin      (raccoon)       skin       |
  1616.                  |                    brown       medium        gray       |
  1617.                  |                                climb          ^         |
  1618.                                                   skin           |         |
  1619.  Subset         BIRD                              black          |         |
  1620.                  |                                               |         |
  1621.   (canary) <--> bird <--> (robin)            (examples)          |         |
  1622.     medium       ^          medium             Clyde ----------->|         |
  1623.     fly          v          fly                Fahlman           |         |
  1624.     seed      (pigeon)      worm                                 |         |
  1625.     yellow      medium      red                                  |         |
  1626.      ^          fly                            Jumbo ----------->|         |
  1627.      |          junk                           large                       |
  1628.      |          gray                           circus                      |
  1629.      |                                                                     |
  1630.      |                                                                     |
  1631.      |-----------------------------------------Tweetie                     |
  1632.                                                small                       |
  1633.                                                cartoon                     |
  1634.                                                                            |
  1635.                                                                            |
  1636.                  |----------------------------------------------------------
  1637.                 FISH
  1638.                  |
  1639.    (guppy) <--> fish <--> (tuna) <-------------Charlie
  1640.     small        ^         large               StarKist
  1641.     swim         v         swim                inadequate
  1642.     food      (trout)      fish
  1643.  transparent   medium      silver
  1644.                swim
  1645.                bugs
  1646.                silver
  1647. .end literal
  1648. .left margin 12
  1649. .right margin 68
  1650. .p
  1651. The network simulation will realize a system that acts
  1652. as if it was described by this network.  The material and
  1653. structure of the simulation was inspired by
  1654. the network made famous by Collins and Quillian.  One
  1655. (of many) ways of realizing this network in terms of pairs of
  1656. associations is given in Figure Network-2.
  1657. .page
  1658. .c
  1659. Figure Network-2
  1660. .b
  1661. .c
  1662. Stimulus Set
  1663. .left margin 5
  1664. .right margin 72
  1665. .b
  1666. .literal
  1667.    F[ 1]. BIRD_*_bird___fly_wormred   G[ 1]. _____*_robin__fly_wormred
  1668.    F[ 2]. _____*_robin__fly_wormred   G[ 2]. BIRD_*_bird___fly_wormred
  1669.    F[ 3]. BIRD_*_bird___fly_junkgry   G[ 3]. _____*_pigeon_fly_junkgry
  1670.    F[ 4]. _____*_pigeon_fly_junkgry   G[ 4]. BIRD_*_bird___fly_junkgry
  1671.    F[ 5]. BIRD_*_bird___fly_seedylw   G[ 5]. _____*_canary_fly_seedylw
  1672.    F[ 6]. _____*_canary_fly_seedylw   G[ 6]. BIRD_*_bird___fly_seedylw
  1673.    F[ 7]. ANML*__animal_dartskinbrn   G[ 7]. ____*__gerbil_dartskinbrn
  1674.    F[ 8]. ____*__gerbil_dartskinbrn   G[ 8]. ANML*__animal_dartskinbrn
  1675.    F[ 9]. ANML_*_animal_clmbskinblk   G[ 9]. _____*_raccoonclmbskinblk
  1676.    F[10]. _____*_raccoonclmbskinblk   G[10]. ANML_*_animal_clmbskinblk
  1677.    F[11]. ANML__*animal_walkskingry   G[11]. ______*elephanwalkskingry
  1678.    F[12]. ______*elephanwalkskingry   G[12]. ANML__*animal_walkskingry
  1679.    F[13]. BIRD_____________________   G[13]. ANML_____________________
  1680.    F[14]. _______Clyde___Fahlman___   G[14]. ______*elephanwalkskingry
  1681.    F[15]. ____*__Tweetie_cartoon___   G[15]. _____*_canary_fly_seedylw
  1682.    F[16]. ______*Jumbo____circus___   G[16]. ______*elephanwalkskingry
  1683.    F[17]. FISH_____________________   G[17]. ANML_____________________
  1684.    F[18]. FISH*__fish___swimfoodxpr   G[18]. ____*__guppy__swimfoodxpr
  1685.    F[19]. ____*__guppy__swimfoodxpr   G[19]. FISH*__fish___swimfoodxpr
  1686.    F[20]. FISH_*_fish___swimbugsslv   G[20]. _____*_trout__swimbugsslv
  1687.    F[21]. _____*_trout__swimbugsslv   G[21]. FISH_*_fish___swimbugsslv
  1688.    F[22]. FISH__*fish___swimfishslv   G[22]. ______*tuna___swimfishslv
  1689.    F[23]. ______*tuna___swimfishslv   G[23]. FISH__*fish___swimfishslv
  1690.    F[24]. StarKistCharlieinadequate   G[24]. ______*tuna___swimfishslv
  1691. .end literal
  1692. .left margin 12
  1693. .right margin 68
  1694. .p
  1695. This is one set of pairs of stimuli that realize the simple 'semantic' 
  1696. network in 
  1697. Figure Network-1.  Two matrices were involved in realizing the
  1698. network, an autoassociative network, where every allowable
  1699. state vector is associated with itself, and a true associator,
  1700. where f was associated with g.  The Widrow-Hoff learning
  1701. procedure was used.  Pairs were presented randomly for
  1702. about 30 times each.
  1703. Both matrices were about 50% connected.
  1704. .page
  1705. .c
  1706. Figure Network-3
  1707. .b
  1708. .c
  1709.  'Tell me about gray animals'
  1710. .left margin 15
  1711. .right margin 68
  1712. .b
  1713. .literal
  1714. Mx 2.     1.  ANML___animal_________gry  Check:   0 
  1715. Mx 2.     2.  ANML___animal_________gry  Check:   5
  1716. ...
  1717. Mx 2.    12.  ANML___animal_________gry  Check: 107
  1718. Mx 2.    13.  ANML__*animal_________gry  Check: 122
  1719. Mx 2.    14.  ANML__*animal_________gry  Check: 128
  1720. Mx 2.    15.  ANML__*animal_________gry  Check: 128
  1721. Mx 2.    16.  ANML__*animal_________gry  Check: 129
  1722. Mx 2.    17.  ANML__*animal_______i_gry  Check: 131
  1723. Mx 2.    18.  ANML__*animal_______i_gry  Check: 132
  1724. Mx 2.    19.  ANML__*animal_______i_gry  Check: 133
  1725. Mx 2.    20.  ANML__*animal___l___i_gry  Check: 133
  1726. ...
  1727. Mx 2.    26.  ANML__*animal___lk_kingry  Check: 149
  1728. Mx 2.    27.  ANML__*animal__alk_kingry  Check: 150
  1729. Mx 2.    28.  ANML__*animal_walkskingry  Check: 154
  1730. Mx 2.    29.  ANML__*animal_walkskingry  Check: 157
  1731. Mx 2.    30.  ANML__*animal_walkskingry  Check: 163
  1732. Mx 2.    31.  ANML__*animal_walkskingry  Check: 165
  1733. Mx 2.    32.  ANML__*animal_walkskingry  Check: 167
  1734. Mx 2.    33.  ANML__*animal_walkskingry  Check: 168
  1735. Mx 2.    34.  ANML__*animal_walkskingry  Check: 169
  1736. Mx 2.    35.  ANML__*animal_walkskingry  Check: 172
  1737. Mx 2.    36.  ANML__*animal_walkskingry  Check: 176
  1738. Mx 2.    37.  ANML__*animal_walkskingry  Check: 176
  1739. Mx 2.    38.  ANML__*animal_walkskingry  Check: 176
  1740. Mx 1.    39.  ANML__*______nwalkskingry  Check: 128
  1741. Mx 1.    40.  ______*elephanwalkskingry  Check: 136
  1742. Mx 1.    41.  ______*elephanwalkskingry  Check: 150
  1743. Mx 1.    42.  ______*elephanwalkskingry  Check: 152
  1744. Mx 1.    43.  ______*elephanwalkskingry  Check: 152
  1745. Mx 2.    44.  ______*elephanwalkskingry  Check: 152
  1746. Mx 2.    45.  ______*elephanwalkskingry  Check: 152
  1747. Mx 2.    46.  ______*elephanwalkskingry  Check: 152
  1748. Mx 1.    47.  ANML__*______nwalkskingry  Check: 128
  1749. Mx 1.    48.  ANML__*ani_a_nwalkskingry  Check: 160
  1750. Mx 1.    49.  ANML__*animal_walkskingry  Check: 170
  1751. Mx 1.    50.  ANML__*animal_walkskingry  Check: 173
  1752. .end literal
  1753. .p
  1754. .left margin 12
  1755. Once the system has learned satisfactorily, and the matrices
  1756. are formed, the matrices can be used to extract stored information.
  1757. First, the autoassociative matrix is used to reconstruct information
  1758. at a node.
  1759. When the number of limited elements in the state vector
  1760. stabilizes, the true association matrix is used, and the
  1761. state of the system changes nodes.  (See iterations 39 and 47.)
  1762. The color, 'gry', appears in several different stimuli, but
  1763. is disambiguated by the other information. (See Figure Network-4).
  1764. Note the simulation will endlessly move back and forth between these two
  1765. nodes unless jarred loose by some other mechanism
  1766. such as adaptation.
  1767. .page
  1768. .c
  1769. Figure Network-4
  1770. .b
  1771. .c
  1772.  'Gray birds'
  1773. .b
  1774. .left margin 15
  1775. .literal
  1776. Mx 2.     1.  BIRD___bird___________gry  Check:   0
  1777. Mx 2.     2.  BIRD___bird___________gry  Check:   0
  1778. Mx 2.     3.  BIRD___bird___________gry  Check:  26
  1779. Mx 2.     4.  BIRD___bird___________gry  Check:  43
  1780. Mx 2.     5.  BIRD___bird___________gry  Check:  46
  1781. Mx 2.     6.  BIRD___bird___________gry  Check:  51
  1782. Mx 2.     7.  BIRD___bird___________gry  Check:  58
  1783. Mx 2.     8.  BIRD___bird___________gry  Check:  67
  1784. Mx 2.     9.  BIRD___bird___f_______gry  Check:  71
  1785. Mx 2.    10.  BIRD___bird___f_______gry  Check:  76
  1786. ...
  1787. Mx 2.    20.  BIRD_**bird___f___j__kgry  Check: 127
  1788. Mx 2.    21.  BIRD_**bird___f_y_ju_kgry  Check: 128
  1789. Mx 2.    22.  BIRD_**bird___fly_junkgry  Check: 129
  1790. Mx 2.    23.  BIRD_**bird___fly_junkgry  Check: 134
  1791. Mx 2.    24.  BIRD_**bird___fly_junkgry  Check: 140
  1792. Mx 2.    25.  BIRD_**bird___fly_junkgry  Check: 141
  1793. Mx 2.    26.  BIRD_**bird___fly_junkgry  Check: 144
  1794. Mx 2.    27.  BIRD_**bird___fly_junkgry  Check: 144
  1795. Mx 2.    28.  BIRD_**bird___fly_junkgry  Check: 146
  1796. Mx 2.    29.  BIRD_**bird___fly_junkgry  Check: 147
  1797. Mx 2.    30.  BIRD_**bird___fly_junkgry  Check: 149
  1798. Mx 2.    31.  BIRD_**bird___fly_junkgry  Check: 149
  1799. Mx 2.    32.  BIRD_**bird___fly_junkgry  Check: 149
  1800. Mx 1.    33.  BIRD_**_i__on_fly_junkgry  Check: 112
  1801. Mx 1.    34.  B____**pi_eon_fly_junkgry  Check: 120
  1802. Mx 1.    35.  _____**pigeon_fly_junkgry  Check: 122
  1803. Mx 1.    36.  _____**pigeon_fly_junkgry  Check: 125
  1804. Mx 1.    37.  _____*_pigeon_fly_junkgry  Check: 129
  1805. Mx 2.    38.  _____**pigeon_fly_junkgry  Check: 132
  1806. Mx 2.    39.  _____**pigeon_fly_junkgry  Check: 137
  1807. Mx 2.    40.  ___L_**pigeon_fly_junkgry  Check: 139
  1808. Mx 2.    41.  ___L_**pigeon_fly_junkgry  Check: 142
  1809. Mx 2.    42.  ___L_**pigeon_fly_junkgry  Check: 143
  1810. Mx 2.    43.  ___L_**pigeon_fly_junkgry  Check: 146
  1811. Mx 2.    44.  ___L_**pigeon_fly_junkgry  Check: 149
  1812. Mx 2.    45.  ___L_**pigeon_fly_junkgry  Check: 149
  1813. .end literal
  1814. .left margin 12
  1815. .p
  1816. We now use 'gry' in the context of birds to demonstrate
  1817. disambiguation, among other things.  The system now tells us about
  1818. pigeons rather than elephants.  Note the confusion
  1819. where the simulation is not sure 
  1820. whether pigeons are medium sized or large.  Note also the
  1821. intrusion of the 'L', (Iteration 40) probably from ANML, which is the
  1822. upward association of BIRD.
  1823. .page
  1824. .c
  1825. Figure Network-5
  1826. .b
  1827. .c
  1828. 'Large circus creature.'
  1829. .b
  1830. .left margin 15
  1831. .literal
  1832. Mx 2.     1.  ______*_________circus___  Check:   0
  1833. Mx 2.     2.  ______*_________circus___  Check:   0
  1834. Mx 2.     3.  ______*_________circus___  Check:   1
  1835. Mx 2.     4.  ______*_________circus___  Check:   6
  1836. Mx 2.     5.  ______*_________circus___  Check:  19
  1837. Mx 2.     6.  ______*_________circus___  Check:  39
  1838. Mx 2.     7.  ______*_________circus___  Check:  49
  1839. Mx 2.     8.  ______*_________circus___  Check:  51
  1840. Mx 2.     9.  ______*J________circus___  Check:  58
  1841. Mx 2.    10.  ______*J________circus___  Check:  65
  1842. Mx 2.    11.  ______*J__bo____circus___  Check:  68
  1843. Mx 2.    12.  ______*J__bo____circus___  Check:  72
  1844. Mx 2.    13.  ______*J__bo____circus___  Check:  73
  1845. Mx 2.    14.  ______*Ju_bo____circus___  Check:  76
  1846. Mx 2.    15.  ______*Jumbo____circus___  Check:  80
  1847. Mx 2.    16.  ______*Jumbo____circus___  Check:  82
  1848. Mx 2.    17.  ______*Jumbo____circus___  Check:  86
  1849. Mx 2.    18.  ______*Jumbo____circus___  Check:  88
  1850. Mx 2.    19.  ______*Jumbo____circus___  Check:  92
  1851. Mx 2.    20.  ______*Jumbo____circus___  Check:  93
  1852. Mx 2.    21.  ______*Jumbo____circus___  Check:  94
  1853. Mx 2.    22.  ______*Jumbo____circus___  Check:  94
  1854. Mx 2.    23.  ______*Jumbo____circus___  Check:  97
  1855. Mx 2.    24.  ______*Jumbo____circus___  Check:  97
  1856. Mx 2.    25.  ______*Jumbo____circus___  Check:  97
  1857. Mx 1.    26.  ______*_____anw__________  Check:  67
  1858. Mx 1.    27.  ______*el_phanwa_ksk_ngr_  Check: 105
  1859. Mx 1.    28.  ______*elephanwalksk_ngr_  Check: 136
  1860. Mx 1.    29.  ______*elephanwalkskingr_  Check: 145
  1861. Mx 1.    30.  ______*elephanwalkskingry  Check: 148
  1862. Mx 2.    31.  ______*elephanwalkskingry  Check: 149
  1863. Mx 2.    32.  ______*elephanwalkskingry  Check: 149
  1864. Mx 2.    33.  ______*elephanwalkskingry  Check: 149
  1865. Mx 1.    34.  ANML__*______nwalkskingry  Check: 133
  1866. Mx 1.    35.  ANML__*ani_a_nwalkskingry  Check: 160
  1867. Mx 1.    36.  ANML__*ani_al_walkskingry  Check: 165
  1868. Mx 1.    37.  ANML__*ani_al_walkskingry  Check: 171
  1869. Mx 1.    38.  ANML__*ani_al_walkskingry  Check: 173
  1870. Mx 2.    39.  ANML__*ani_al_walkskingry  Check: 172
  1871. Mx 2.    40.  ANML__*ani_al_walkskingry  Check: 173
  1872. Mx 2.    41.  ANML__*animal_walkskingry  Check: 174
  1873. Mx 2.    42.  ANML__*animal_walkskingry  Check: 174
  1874. .end literal
  1875. .left margin 12
  1876. .p
  1877. How to answer the perennially interesting question,
  1878. 'What color is Jumbo?'.  Or, if you wish, how
  1879. to do straightforward property inheritance with
  1880. distributed models.  
  1881. .page
  1882. .c
  1883. Figure Network-6
  1884. .b
  1885. .c
  1886. 'Tell me about Tweetie.'
  1887. .b
  1888. .left margin 15
  1889. .literal
  1890. Mx 2.     1.  _______Tweetie___________  Check:   0
  1891. Mx 2.     2.  _______Tweetie___________  Check:   0
  1892. Mx 2.     3.  _______Tweetie___________  Check:   6
  1893. Mx 2.     4.  _______Tweetie___________  Check:   9
  1894. Mx 2.     5.  _______Tweetie___________  Check:  13
  1895. Mx 2.     6.  _______Tweetie___________  Check:  16
  1896. Mx 2.     7.  _______Tweetie___________  Check:  22
  1897. Mx 2.     8.  _______Tweetie_car_______  Check:  26
  1898. Mx 2.     9.  _______Tweetie_car_______  Check:  32
  1899. Mx 2.    10.  _______Tweetie_cart______  Check:  37
  1900. Mx 2.    11.  ____*__Tweetie_cart______  Check:  42
  1901. Mx 2.    12.  ____*__Tweetie_cart______  Check:  54
  1902. Mx 2.    13.  ____*__Tweetie_cartoon___  Check:  63
  1903. Mx 2.    14.  ____*__Tweetie_cartoon___  Check:  84
  1904. Mx 2.    15.  ____*__Tweetie_cartoon___  Check:  92
  1905. Mx 2.    16.  ____*__Tweetie_cartoon___  Check:  99
  1906. Mx 2.    17.  ____*__Tweetie_cartoon___  Check: 101
  1907. Mx 2.    18.  ____*__Tweetie_cartoon___  Check: 104
  1908. Mx 2.    19.  ____*__Tweetie_cartoon___  Check: 108
  1909. Mx 2.    20.  ____*__Tweetie_cartoon___  Check: 112
  1910. Mx 2.    21.  ____*__Tweetie_cartoon___  Check: 113
  1911. Mx 2.    22.  ____*__Tweetie_cartoon___  Check: 115
  1912. Mx 2.    23.  ____*__Tweetie_cartoon___  Check: 116
  1913. Mx 2.    24.  ____*__Tweetie_cartoon___  Check: 117
  1914. Mx 2.    25.  ____*__Tweetie_cartoon___  Check: 119
  1915. Mx 2.    26.  ____*__Tweetie_cartoon___  Check: 120
  1916. Mx 2.    27.  ____*__Tweetie_cartoon___  Check: 120
  1917. Mx 2.    28.  ____*__Tweetie_cartoon___  Check: 120
  1918. Mx 1.    29.  ____**_______ef__r_____lw  Check:  68
  1919. Mx 1.    30.  _____*__anary_fly_seedylw  Check: 103
  1920. Mx 1.    31.  _____*_canary_fly_seedylw  Check: 127
  1921. Mx 1.    32.  _____*_canary_fly_seedylw  Check: 133
  1922. Mx 1.    33.  _____*_canary_fly_seedylw  Check: 134
  1923. Mx 2.    34.  _____*_canary_fly_seedylw  Check: 135
  1924. Mx 2.    35.  _____*_canary_fly_seedylw  Check: 135
  1925. Mx 2.    36.  _____*_canary_fly_seedylw  Check: 135
  1926. Mx 1.    37.  BIRD_*_____ry_fly_seedylw  Check: 112
  1927. Mx 1.    38.  BIRD_*_b_rd_y_fly_seedylw  Check: 141
  1928. Mx 1.    39.  BIRD_*_bird___fly_seedylw  Check: 143
  1929. Mx 1.    40.  BIRD_*_bird___fly_seedylw  Check: 151
  1930. Mx 1.    41.  BIRD_*_bird___fly_seedylw  Check: 152
  1931. Mx 2.    42.  BIRD_*_bird___fly_seedylw  Check: 150
  1932. .end literal
  1933. .left margin 12
  1934. .p
  1935. Information about Tweetie is generated by the name.  Note
  1936. that Tweetie is small, but canaries are in general
  1937. medium sized and yellow, so small is stored at the Tweetie
  1938. node. 
  1939.