1. In an information processing system, a method for training a neural network, said neural network comprising a plurality of interconnected nodes having inputs and outputs, said inputs and outputs including a plurality of network inputs and a network output, said neural network including at least one network parameter, the method comprising the steps of: (a) accepting training data; (b) deriving from said training data a change in network input values between two data points from said training data; (c) deriving from said training data a corresponding desired change in network output value between said two data points; (d) computing an actual change in network output value using said change in network input values, said network including at least one node producing a product of at least two inputs or a product of an input multiplied by itself; (e) computing a difference-error, said difference-error being a difference between said desired change in network output and said actual change in network output; (f) computing an adjustment value for one of said network parameters, said adjustment value including a difference-error-applied, said difference-error-applied derived at least in part from said difference-error; and (g) adjusting said one network parameter by an amount derived at least in part from said adjustment value.