US 11,055,608 B2
Convolutional neural network
Olivier Bichler, Massy (FR)
Assigned to COMMISSARIAT A L'ENERGIE ATOMIQUE ET AUX ENERGIES ALTERNATIVES, Paris (FR)
Appl. No. 15/505,231
Filed by COMMISSARIAT A L'ENERGIE ATOMIQUE ET AUX ENERGIES ALTERNATIVES, Paris (FR)
PCT Filed Aug. 18, 2015, PCT No. PCT/EP2015/068955
§ 371(c)(1), (2) Date Feb. 20, 2017,
PCT Pub. No. WO2016/030230, PCT Pub. Date Mar. 3, 2016.
Claims priority of application No. 1458088 (FR), filed on Aug. 28, 2014.
Prior Publication US 2017/0200078 A1, Jul. 13, 2017
Int. Cl. G06N 3/063 (2006.01); G06N 3/04 (2006.01)
CPC G06N 3/063 (2013.01) [G06N 3/049 (2013.01)] 14 Claims
OG exemplary drawing
 
1. A device implementing a convolutional neural network, said convolutional neural network comprising:
a plurality of artificial neurons arranged in one or more convolution layers, each convolution layer comprising one or more output matrices, each output matrix comprising a set of output neurons, each output matrix being connected to an input matrix, comprising a set of input neurons, by artificial synapses associated with a convolution matrix comprising weight coefficients associated with the output neurons of said output matrix, an output value of each output neuron being determined from the input neurons of said input matrix to which the output neuron is connected and the weight coefficients of the convolution matrix associated with said output matrix,
wherein said device comprises a set of memristive devices comprising at least one memristive device for implementing each synapse, each set of memristive devices storing a weight coefficient of said convolution matrix, and
wherein, in response to a change of the output value of an input neuron of an input matrix, the device is configured to dynamically map each set of memristive devices storing a weight coefficient of the convolution matrix to an output neuron connected to said input neuron using a dynamic routing, said dynamic mapping enabling connecting said each set of memristive devices to said output neuron,
the device further comprising, for each output neuron, at least one accumulator configured to accumulate the values of the weight coefficients stored in the sets of memristive devices dynamically mapped to said output neuron, the output value of said output neuron being determined from the value accumulated in said at least one accumulator, said accumulator comprising an adder for adding the value of the weight coefficient stored in the set of memristive devices dynamically mapped to said output neuron to a value stored in a memory comprised in said at least one accumulator, said added value being then stored in said memory, which provides said value accumulated in said at least one accumulator.