The invention is related to the field of neuromotor prosthetics, and in particular an algorithm for continuous-time linear decoding and learning in neuromotor prosthetics.
In a set of amazing experiments, several groups in the world have now proven that the dream of enabling paralyzed patients to move paralyzed limbs is well within reach. The majority of these experiments have been done in rats or monkeys, although a company, Cyberkinetics Inc., has demonstrated that a paralyzed patient can control a mouse on a computer screen merely by thinking about doing so. However, current neuromotor prosthetics are extremely bulky and power-hungry and are not practical for use in human patients. The system used by Cyberkinetics, for example, requires a full-sized processing computer to be mounted on the wheel chair of the patient and bulky recording electronics to be mounted on the patient's head. Smaller-size portable neural recording has been implemented, but the discrete electronics used require high-power operation and would need further processing to implement an algorithm to decode the intention of the monkey to move. Next-generation neuromotor prosthetics will be small and or fully implanted in the patient's brain, imposing a stringent requirement on power consumption due to the need for small size, long battery life, and minimum heat dissipation in the brain and skull. Power-efficient algorithm and electronic design can make portability and chronic usage of neuromotor prosthetics in real patients a reality.
One major concern in the design of a neuromotor prosthetic system is the power consumption in the digitization of raw neural signals (at 10 bit precision and 20 kHz bandwidth) and in the wireless communication circuitry for transmitting digitized neural data out of the brain (20 Mbs−1 for 100 neural channels). The power costs of both the wireless communication and raw neural signal digitization can be significantly reduced if an analog network is used to preprocess the information such that low-precision, low bandwidth information is communicated out of the brain, thus saving power in digitization, communication, and digital post-processing of the communicated information. For the typically low bandwidths and precisions needed at the output of a neuromotor prosthetic (a 10 ms response time on the actuator controls at best, 8 bits of precision, and 3 motor output dimensions), an analog network that is capable of computing 3 motor outputs from 100 analog neural signals can enable a significant reduction in the communicated data bandwidth from about 20 Mbs−1 to 2.4 kbs−1 and a significant reduction in the overall system power.
As an example, analog preprocessing could enable more than an order of magnitude reduction in power in cochlear-implant processors by enabling digitization of output spectral information for driving electrodes rather than immediate digitization and digital signal processing of raw sound data from a microphone. That processor was also programmable with 373 bits enabling a change of 86 chip parameters. It was robust to power-supply-noise at RF frequencies and temperature variations because of the use of noise-robust biasing techniques.
The use of an analog network for preprocessing to achieve drastic data reduction is beneficial in lowering power in other schemes that have been implemented as well: For example, systems with multichannel wireless telemetry of threshold spikes could be adapted to reduce their power requirements by lowering their digitization and telemetry costs with a scheme such as ours for prosthetic applications. Analog processing is particularly advantageous in slow-and-parallel applications like neuromotor prosthetics where the final output bandwidth and needed precision for the task are relatively modest and involve significant data reduction. In such applications, the noise and offset in an analog system may be managed efficiently to preserve the needed output precision.
A variety of decoding techniques have been developed and implemented successfully in rodents, monkeys, and humans. Major commonalities among the decoding methods employed in these systems have been reviewed in the literature, and include two primary strategies: adaptive linear filtering and probabilistic methods. Thus far, all of these techniques have been proposed for discrete-time digital implementations. In spite of dramatic preliminary successes reported in the field of neuromotor prosthetics, all existing systems accomplish neural decoding through the use of massive amounts of signal-processing hardware and digital post processing.
A highly sophisticated decoding algorithm is not necessarily more beneficial in the long run because the brain is adept at learning and compensating for errors in the decoding algorithm if sensory feedback is present. Learning is nevertheless important in the decoding algorithm to ensure that performance does not degrade over time due to the loss of certain neural signals via electrode degradation which can be compensated for by the brain by using other functional neural signals in the array, and to adapt to the slow variability of the recordings.
According to one aspect of the invention, there is provided a method for performing the operations of a neural decoding system. The method includes in a training mode, learning to perform an optimized translation of a raw neural signal received from a population of cortical neurons into motor control parameters. The optimization being based on a modified gradient descent least square algorithm wherein update for a given parameter in a filter is proportional to an averaged product of an error in the final output that the filter affects and a filtered version of its input. Also, the method includes in an operational mode, controlling a device using learned mappings in the training mode.
According to another aspect of the invention, there is provided a microchip for performing a neural decoding algorithm. The microchip is implemented using ultra-low power electronics. Also, the microchip includes a tunable neural decodable filter implemented using a plurality of amplifiers, a plurality of parameter learning filters, a multiplier, a gain and time-constant biasing circuits; and analog memory. The microchip, in a training mode, learns to perform an optimized translation of a raw neural signal received from a population of cortical neurons into motor control parameters. The optimization being based on a modified gradient descent least square algorithm wherein update for a given parameter in a filter is proportional to an averaged product of an error in the final output that the filter affects and a filtered version of its input. The microchip, in an operational mode, issues commands to controlling a device using learned mappings.
According to another aspect of the invention, there is provided an ultra-low power microchip implantable inside a skull. The microchip implements a neural decoding algorithm. The microchip includes, in a training mode, learning to perform an optimized translation of a raw neural signal received from a population of cortical neurons into motor control parameters, the optimization being performed according to the following learning rule:
where
is a convolution kernel. The microchip, in an operational mode, issues commands to controlling a prosthesis using learned mappings.
According to another aspect of the invention, there is provided a method for performing the operations of neural decoding system. The method includes, in a training mode, learning to optimize a mapping from raw neural signals received from a population of neurons. Also, the method includes, in an operational mode, using the mapping optimized in step mentioned above.
The invention involves a design to achieve continuous-time neural decoding in a miniature, implantable, ultra-low-power context. The invention is based on analog circuitry that implements a real-time, adaptive linear filtering algorithm and least-squares estimation to map neural signal inputs onto motor command outputs. Provided a desired, or target motor control output, a system of analog circuitry is employed to automatically tune all the gains and time constants for the entire neural decoding matrix in real time while neural inputs are present. Once the decoding filters are trained, the parameters are stored in a system of analog-memory elements or as parameters of a DAC, ready to be used for decoding the movement intentions of a paralyzed patient.
The function of neural decoding is to map neural signals onto the motor commands to which those signals correspond. In a neuromotor prosthetic system 2, such as the example system shown in
The gradient descent least-squares algorithm is a method for optimizing a linear transformation of the form
where N(t) is an n-dimensional vector containing the neural signal data at time u (which may consist of firing rates, analog values, or local field potentials), M(t) is an m-dimensional vector containing the motor output parameters generated at time t (which may include of limb positions, motor velocities, cursor positions, other dynamic variables describing limb motion), and W(t) is an m×n weighting matrix kernel that is convolved with N(t) to generate M(t). A desired Mtarget (t) is used to generate N(t) by adopting W(t) through the least squares error over some integration interval, δ. The error at time t is the vector
Optimizing the kernel in a least-squares sense corresponds to minimizing
the quantity over a time window set by σ. Under the assumption that each motor output contributes independently to the least-squares error and is determined by an independent set of parameters, one can optimize the system by minimizing the least-squares error of each motor output separately. For convenience, the convolution of two arbitrary functions ƒ(t) and g(t) is defined as
Therefore, a given motor control output, Mi(t), is equal to Wi,1(t)*N1(t)+Wi,2(t)*N2(t)+ . . . +Wi,n(t)*Nn(t), where each of the Wij(t) is an impulse-response kernel corresponding to a filter applied to Nj(t). The error-squared term for a given motor output Mi(t), n neuronal inputs, and k filter parameters in each impulse-response kernel is given by Eq. 5:
Gradient descent requires that one slowly and gently alter the parameters of the W kernels in a direction that is against the gradient of this error function in the n×k dimensional space of its parameters. That is, if one would like to adapt the kth parameter of the Wƒ filter, pƒ,k, then one can change this parameter with a term proportional to where the gradient term is given explicitly in Eq. 6.
Substituting Eq. 2 into Eq. 6 yields Eq. 7:
While this learning rule may appear to be rather complicated, it is actually a very simple modification of the well-known “delta rule” in neural-network theory: It says that the update for a given parameter in a filter is proportional to the averaged product of the error in the final output that the filter affects and a filtered version of its input. The filtered version of the input is generated by a convolution kernel
which is different for each parameter of the filter, but the error term is the same for every parameter in the filter. In fact, the error term is the same for the parameters of all the filters that affect a given motor output. The average is taken over a time interval σ.
The invention includes an analog architecture 18, schematized in the block diagram shown in
The analog architecture of
The bias voltages Vbias,A and Vbias,τ in
The motor control signal Mi(t) is subtracted from the motor target signal Mtarget(t) by a subtracter 36, implemented with an inverting amplifier 58 and an adder 56, to create the error signal e(t), as shown in
Eq. 8 indicates that one can control the gain of the tunable decoding filter by controlling the current ratio
The time constant of the tunable decoding filter, τ=Cτ/GMτ, can be controlled by adjusting the bias current Iτ to alter GMτ.
As
For purposes of analysis, however, it is more convenient to work with transfer functions than with impulse responses (i.e., in the Laplace domain rather than in the time domain). Accordingly, one can express W(t) in its equivalent form
According to Eq. 7, one only needs to change the gain and time constant of the tunable decoding filter with a term proportional to the negative gradient of the error function. Thus, one can design parameter-learning filters that have transfer functions proportional to those of Eqs. 9 and 10. Those transfer functions are not required to be implemented exactly. The filter topologies that are used for the learning filters are shown in
The wide range, four-quadrant Gilbert multiplier 30 is used as shown in
In this implementation, the multiplier multiplies two voltage inputs, e(t), and a filtered version of the mean firing rate, N(t), and produces an output current that is integrated by the capacitors denoted as C in
Notice the similarities among Eqs. 11, 12 and 7. Small adjustments of magnitude ΔVCA(t) and ΔVCτ(t) are continuously made to the capacitor voltages, where the magnitudes of these adjustments are given by (13) and (14), respectively:
It follows from Eqs. 13 and 14 that the increments in the capacitor voltages ΔVCA(t) and ΔVCτ(t) have the same form as the expression for the gradient given in Eq. 7. These increments can therefore be used to modify the gain and time constant of the tunable decoding filter, respectively.
Changes in the integration capacitor voltages represent adjustments of the gain and time constant of the decoding filter 26, 28. Since the gain of the tunable decoding filters 26, 28 are proportional to the bias current IA in the GMA OTA shown in
Changing the time constant of the tunable decoding filter 24 is slightly more difficult. The time constant of the tunable decoding filter 24 is inversely proportional to the transconductance of GMτ. Therefore, one needs to set the bias current in the GMτ OTA such that it is inversely proportional to VCτ in
assuming that the transistors M1-M4 match well. The bias current Iτ of the GMτ OTA of
The analog memory sample-and-hold circuits 38, 40 are described in detail in and are used to store the bias voltages that set the gain and time constant of the tunable decoding filter 24. The fabricated version of this analog memory in a 0.5-μm CMOS process achieves a 5 electrons/sec leakage on a capacitor due to the use of an ultra-low leakage switch. With a 3.3 V supply, the circuit only loses one bit of voltage accuracy, 11.3 mV on an 8-bit scale, in 3.9 hours. If the system requires frequent calibration, the long hold time and low power consumption of the analog memory aids in conserving power by removing the need for relatively costly digitization of the bias voltage. Digital memory can be used if the system is intended to store the parameters of the tunable decoding filter for intervals longer than several hours. Alternatively, the learning loop can be architected to perform discrete up or down increments of DAC storage registers that determine the IA and Iτ currents of
During the learning phase of the decoding architecture, the analog multiplexers 42, 44 connect the output voltages of the gain and time-constant-biasing circuits 32, 34 to Vbias,A and Vbias,τ nodes of the tunable decoding filter. The analog multiplexer is implemented with a CMOS transmission gate. During this time interval, the analog memory is in the sampling phase. At the moment the sampling phase ends, the analog memory holds the instantaneous outputs of the biasing circuits. Each analog multiplexer connects the output of the analog memory to the tunable decoding filter.
The implementation described so far assumes that we have a mean firing rate available as the input for each channel. This section will explain how we can extract mean-firing-rate information from spiking neural signals using ultra-low-power analog circuits. The technique is shown in
where
implemented with standard Gm-C filter techniques, is often simple and effective.
where ƒc=½πτi is the cutoff frequency for each lowpass filter. A first-order lowpass filter may also be used as an interpolation filter 84. However the first-order filter produces spiky output due to the form of its impulse response. The higher-order interpolation filter produces smoother output at the expense of circuit complexity. The output of the interpolation filter is provided to the analog decoding architecture 20 of
In a real prosthetic, digital processing on digitized neural waveforms from each electrode can be used to sequentially select optimal parameters for the analog wavelet filters in each channel, and then downloaded into DAC storage registers that determine the parameters of the wavelet filters. Since these relatively power-hungry operations are only performed every now and then, the power efficiency of analog preprocessing is still preserved.
The invention is tested in two settings. In both settings a ten-channel SPICE simulations is performed of the decoding circuit with transistor models from a standard 0.18 μm CMOS process. In the first simplified setting, one can use a sinusoidal waveform as a mean firing rate input for each channel. In the second setting, one can use experimental spike-timing data to extract the mean firing rate of each channel. The data were collected from posterior parietal cortex in the brain of a monkey in the lab.
A motor target signal is generated by superimposing five sinusoids at frequencies of 250 Hz, 270 Hz, 290 Hz, 310 Hz, and 330 Hz with different phases and amplitudes. One can use a supply voltage of 1 V and provided an offset voltage of 500 mV to all sinusoidal signals. The amplitude of each sinusoid was on the order of a few tens of millivolts. Sinusoids at one of these frequencies were input to each of the ten channels with each frequency being input into two channels. The circuit was then required to adapt the gain A and the time constant τ for each filter to obtain the needed phase shifts and gains in each channel to track the target motor signal.
The result from this simulation is shown in
The data used in this simulation consisted of spike times recorded on 10 channels in a memory period during which a monkey was planning a reaching arm movement in one of several allowed directions, e.g., D1 or D2, in an x-y plane. The data used in our simulation were collected from many reach trials. We mapped the motor output change due to these directional changes into an output voltage range compatible with our circuit's operation (0.5V-1V).
Using a spike-time to mean-firing-rate conversion scheme shown in
The invention presents a novel analog learning and decoding architecture suitable for linear decoding in neuromotor prosthetics. We also presented a proof-of-concept circuit design that implemented the architecture, and that was able to learn from artificial and monkey data in simulations. The estimated power consumption of the entire system for 3 motor outputs and 100 input channels each is approximately 17 μW. Thus, the learning-and-decoding analog architecture appears to be promising for neuromotor prosthetics due to its potential for significant data reduction, the benefits of power reduction in digitization, telemetry, and post processing due to this data reduction, and because it can achieve such reductions while operating in a very energy-efficient fashion itself.
Although the present invention has been shown and described with respect to several preferred embodiments thereof, various changes, omissions and additions to the form and detail thereof, may be made therein, without departing from the spirit and scope of the invention.
This application claims priority from provisional application Ser. No. 60/940,103 filed May 25, 2007, which is incorporated herein by reference in its entirety.
This invention was made with government support under grant number DGE0645960 awarded by the National Science Foundation. The government has certain rights in this invention.
Number | Name | Date | Kind |
---|---|---|---|
20040073414 | Bienenstock et al. | Apr 2004 | A1 |
Number | Date | Country |
---|---|---|
2007058950 | May 2007 | WO |
WO 2007058950 | May 2007 | WO |
Number | Date | Country | |
---|---|---|---|
20080294579 A1 | Nov 2008 | US |
Number | Date | Country | |
---|---|---|---|
60940103 | May 2007 | US |