A Study in Numerical Perversity: Teaching Arithmetic to a Neural Network
There are only a few hundred well-defined facts in elementary arithmetic, but humans find them hard to learn and hard to use. One reason for this difficulty is that the structure of elementary arithmetic lends itself to severe associative interference. If a neural network corresponds in any sense to brain-style computation, then we should expect similar difficulties teaching elementary arithmetic to a neural network. We find this observation is correct for a simple network that was taught the multiplication tables. We can enhance learning of arithmetic by forming a hybrid coding for the representation of number that contains a powerful analog or "sensory" component as well as a more abstract component. When the simple network uses a hybrid representation, many of the effects seen in human arithmetic learning are reproduced, including overall error patterns and response time patterns for false products. An extension of the arithmetic network is capable of being flexibly programmed to correctly answer questions involving terms such as "bigger" or "smaller." Problems can be answered correctly, even if the particular comparisons involved had not been learned previously. Such a system is genuinely creative and flexible, though only in a limited domain. It remains to be seen if the computational limitations of this approach are coincident with the limitations of human cognition.