Classification device, classification system and associated classification method
Patent Information
- Application Number
- DE602021037667
- Authority / Receiving Office
- DE · DE
- Patent Type
- Patents
- Current Assignee / Owner
- Priority Date
- 2020-02-06
- Filing Date
- 2021-02-05
- Publication Date
- 2025-09-03
- Estimated Expiration
- 2041-02-05
AI Technical Summary
Existing signal classification technologies face challenges in emulating large numbers of neurons like those in the human brain due to limitations in CMOS technology, which results in large size and high power consumption, and alternative solutions like nanophotonic circuits and memristors suffer from disadvantages such as large size, high power consumption, and limited lifespan.
A signal classification device using a chain of neurons connected in series, where each neuron transitions between magnetization configurations based on input currents, eliminating the need for memristors and crossbar networks, and employing an associative memory-based method for classification.
The device achieves a reduced footprint with a high number of neurons and low power consumption, offering a simpler manufacturing process and more energy-efficient classification compared to deep learning-based methods.
Description
[0001] The present invention relates to a signal classification device. The present invention also relates to a signal classification assembly and a signal classification method.
[0002] For many applications, it is useful to be able to classify signals. For example, it may be necessary to apply specific processing depending on the type of signal.
[0003] Many signal classifiers have thus been developed. In particular, the use of neural networks to create classifiers has evolved, particularly from the point of view of feasibility.
[0004] Thus, it is known to use CMOS type components to emulate synapses and / or neurons. It is understood by the acronym CMOS, complementary metal-oxide-semiconductor ("Complementary Metal-Oxide-Semiconductor" in English).
[0005] However, many transistors and passive components must be used to emulate a single neuron or synapse.
[0006] Thus, CMOS technology has its limits when it comes to emulating a large number of neurons, such as 10 11< neurons as is the case in the human brain.
[0007] Furthermore, CMOS neurons have the disadvantage of being too large, in the order of 10 micrometers to 100 micrometers, when it comes to manufacturing large-scale neural networks.
[0008] As a result, many alternatives have been studied, such as the use of nanophotonic circuits, memristors or even CMOS oscillators.
[0009] Devices comprising neurons, a crossbar network for feeding the neurons, and memristors are also known from the article by Sengupta Abhronil et al., entitled "Spin Orbit torque based electronic neuron" and from the article by Chamika M Liyanagedera et al., entitled "Magnetic Tunnel Junction Enabled Stochastic Spiking Neural Networks: From Non-Telegraphic to Telegraphic Switching Regime" ».
[0010] However, these devices have many disadvantages, including: large size, high power consumption, a limited lifespan and / or insufficient classification performance.
[0011] There is therefore a need for a classification device with a reduced footprint, comprising a high number of neurons and exhibiting low power consumption.
[0012] For this purpose, the description proposes a signal classification device, each signal being intended to be classified into a predefined category corresponding to this signal, at least one range of predefined currents being associated with each predefined category, the device comprising at least one chain of neurons comprising a set of neurons, each neuron having a magnetization suitable for presenting a first configuration and a second configuration, the neurons of a chain being connected in series with each other, at least one neuron of the at least one chain of neurons being, in addition, associated with a predefined category, an input suitable for receiving input currents representative of the signals to be classified and intended to supply the at least one chain of neurons,the magnetization of at least one neuron of the at least one chain of neurons being capable of passing from one configuration to another configuration among the first configuration and the second configuration as a function of an input current applied to the at least one chain of neurons, the passage from one configuration to another configuration for the at least one neuron taking place when an input current belonging to the at least one range of predefined currents of a predefined category associated with the at least one neuron is applied to said neuron.,
[0013] It is worth noting that a neural chain in which the neurons are connected in series with each other allows for a simpler architecture of the classification device. Indeed, it is possible to do without memristors and the crossbar network. Thus, the classification device is simpler to manufacture than the one described in the said article.
[0014] In addition, the classification device allows implementing a classification method based on associative memory. Such an associative memory-based method is simpler than a deep learning-based method and more energy efficient.
[0015] According to particular embodiments, the device comprises one or more of the following characteristics when technically possible: each input current is a current pulse.each neuron is a switch, each neuron being a switch selected from the following list of switches: a switch comprising a magnetic tunnel junction, a switch having a spin-orbit torque, each neuron comprising a first layer of a first material and a second layer of a second material, the first material being one of a heavy metal and a ferromagnetic material and the second material being the other of the heavy metal and the ferromagnetic material, the first layer and the second layer being superimposed along a layer stacking direction and a switch comprising a first layer and at least one second layer, the first layer being a heavy metal and the at least one second layer being formed by a magnetic tunnel junction, the first layer and the second layer being stacked along a layer stacking direction.at least two neurons in the chain have a different characteristic chosen from diameter and thickness. the classification device comprises a single chain of neurons, the input being intended to supply the single chain of neurons with the input currents representative of the signals to be classified successively.
[0016] The present invention also relates to a signal classification assembly capable of classifying each signal into a predefined category corresponding to this signal, the assembly comprising a classification device as described above, an input circuit electrically connected to the input of the classification device, the input circuit being capable of encoding the signals to be classified into input currents and of injecting the input currents into the classification device, and an output circuit electrically connected to the classification device, the output circuit comprising a memory and a detection and association circuit, the memory being capable of storing a list of predefined categories, each predefined category being associated with at least one range of predefined currents and at least one neuron of the at least one chain of neurons being associated with a predefined category,and the detection and association circuit being capable of detecting at least one change in magnetization configuration of at least one neuron of the set of neurons and of associating the at least one neuron exhibiting a change in magnetization configuration with a predefined category on the basis of the list of predefined categories.,
[0017] According to particular embodiments, the classification set comprises one or more of the following characteristics when technically possible: the input circuit comprises an encoding unit configured to encode the signals to be classified into the input currents. the assembly comprises a circuit for adjusting the magnetization of each of the neurons, the adjustment circuit being electrically connected to the at least one chain of neurons, the adjustment circuit being capable of injecting different adjustment currents into each neuron, the adjustment currents being capable of controlling the value of the current supplying each neuron of the at least one chain and a synchronization circuit connected between the input circuit and the adjustment circuit to synchronize the injection of the input currents and the adjustment currents into the neurons.
[0018] The present invention relates to a method for classifying signals into categories implemented by a classification assembly as described above, each signal to be classified being intended to be classified into a predefined category corresponding to this signal, the method comprising a phase of exploitation of the classification assembly, the exploitation phase comprising the following steps: providing the input circuit with at least one signal to be classified, providing the output circuit with a list of predefined categories, each predefined category being associated with at least one range of predefined currents and at least one neuron of the chain of neurons being associated with a predefined category, the transition from one configuration to another configuration for the at least one neuron taking place when an input current belonging to the at least one range of predefined currents of a predefined category associated with the at least one neuron is applied to said neuron,converting the at least one signal to be classified into at least one input current with the input circuit, injecting the at least one input current to the input of the classification device with the input circuit, detecting a change in magnetization configuration of at least one neuron of the at least one neuron chain with the detection and association circuit following the injection of the at least one input current, associating the at least one neuron having a change in magnetization configuration with a predefined category on the basis of the list of predefined categories with the detection and association circuit, and classifying the at least one signal to be classified in said predefined category, the method preferably comprising an initial phase during which one or more characteristics of the neurons of the at least one neuron chain are determined according to the list of predefined categories.,
[0019] According to a particular embodiment, when the at least one signal to be classified is classified in an erroneous predefined category, the method further comprises a learning step for controlling the change in magnetization configuration of at least one neuron of the at least one chain of neurons by sending the signal to be classified again and by injecting with the adjustment circuit at least one adjustment current into the at least one neuron of the at least one chain of neurons.
[0020] Other features and advantages of the invention will become apparent upon reading the following description of the embodiments of the invention given by way of example only and with reference to the drawings which are: figure 1 , a schematic representation of a signal classification set, figure 2 , a schematic representation of a chain of neurons, figure 3 , a schematic representation of a neuron, figure 4 , a cross-sectional and perspective view of the neuron of the figure 3 , figure 5 , a schematic representation of another example of a neuron, figure 6 , a schematic representation of yet another example of a neuron, figure 7 , a schematic representation of a neuron chain and an adjustment circuit, figure 8 , a block diagram of a classification process, figure 9 , a graph showing a list of predefined categories into which signals are suitable for classification, figure 10 , a schematic representation of the list of predefined categories and two signals to be classified superimposed on the list, and figure 11 , a schematic representation of a plurality of neural chains.
[0021] A set 10 of signal classification S is shown in the figure 1 .
[0022] The classification set 10 is suitable for classifying each signal S into a predefined category corresponding to this signal S.
[0023] For example, each signal S is a sound signal.
[0024] For example, each S signal is a phoneme of a vowel also called a "spoken vowel". Such an S signal corresponds to the sound "ah", "oh", "eh", "ou", "en", "au".
[0025] In other examples, the S signals are spoken consonants.
[0026] In yet other examples, the S signals are light signals or images.
[0027] Each predefined category identifies the signal S to be classified. In the case of a spoken vowel, one of the categories is, for example, the category "ah" in which the signal "ah" is intended to be classified, another category is, for example, the category "eh" in which the signal "eh" is suitable for classification, etc.
[0028] In the example described, the classification set 10 is capable of recognizing the spoken vowel by associating it with the predefined category corresponding to this spoken vowel.
[0029] The classification set 10 is, furthermore, capable of storing a list of predefined categories C listing the different categories into which the signals S are intended to be classified.
[0030] Each S signal to be classified is associated with a predefined C category from the list.
[0031] In addition, at least one range of a predefined physical quantity is associated with each predefined category C.
[0032] In this case, such memorization is the memorization of thresholds for the predefined physical quantity.
[0033] Each range is delimited by two thresholds Z1 and Z2. The physical quantity is therefore between the values Z1 and Z2. This means that the physical quantity is greater than or equal to Z1 and strictly less than Z2.
[0034] In the present exemplary embodiment, the physical quantity is an electric current.
[0035] Alternatively, the physical quantity is an amplitude of an electric current pulse, a direct current or a sinusoidal current.
[0036] As a further variation, the physical quantity is a pulse width of electric current. "Pulse width" is understood to mean the temporal duration of the pulse.
[0037] Additionally, each range is associated with a distinct electrical current.
[0038] As visible on the figure 1 , the classification assembly 10 comprises an input circuit 12, a classification device 14 comprising a set of neurons 16, an output circuit 18, an adjustment circuit 20 and a synchronization circuit 22.
[0039] The input circuit 12 is electrically connected to the classification device 14.
[0040] The input circuit 12 comprises an encoding unit 26 and an injection unit 28.
[0041] The encoding unit 26 is, for example, implemented in the form of a CMOS circuit (acronym for Complementary Metal Oxide Semiconductor) or a programmable resistive device.
[0042] The encoding unit 26 is suitable for encoding or converting each signal S to be classified into currents. Each current forms an input current.
[0043] Each input current comprises at least one current pulse having an amplitude, denoted in the sequence IA, IB respectively.
[0044] Subsequently, each input current is also identified by the references IA, IB respectively.
[0045] The injection unit 28 is, for example, implemented in the form of a CMOS circuit of spiking neurons (known as “spiking neurons” in English).
[0046] The injection unit 28 is capable of injecting the input currents IA, IB into the classification device 14.
[0047] The input circuit 12 is therefore suitable for encoding the signals S to be classified into input currents and for injecting the input currents IA, IB into the classification device 14.
[0048] The classification device 14 comprises an input 14E, at least one chain 30 of neurons 16 (notably visible on the figure 2 ) and a 14S output.
[0049] Input 14E is electrically connected to input circuit 12.
[0050] Input 14E is suitable for receiving input currents IA, IB representative of the signals S to be classified.
[0051] Furthermore, input 14E is electrically connected to chain 30. Also, input 14E is intended to supply chain 30 with each received input current IA, IB.
[0052] Depending on the method of implementation of the figure 2 , the classification device 14 comprises a single chain 30 of neurons 16.
[0053] Alternatively, the classification device 14 comprises at least two chains 30 of neurons.
[0054] The 16 neurons in a 30-channel are connected in series to each other.
[0055] Chain 30 includes a number N1 of neurons.
[0056] In particular, the maximum number N1 of neurons 16 corresponds to the full range of the physical quantity used to encode the signal (in this case the input currents IA, IB) divided by the size of each category which is equal to Z2-Z1.
[0057] For example, N1 is an integer between 4 and 1000.
[0058] Each neuron 16 of chain 30 is identified by its order number in chain 30 from input 14E to output 14S of classification device 14.
[0059] For example, 16 neurons are identified by an index j, j being an integer varying between 1 and N1. Thus, in the rest of the description, to designate a given neuron, the reference 16 j is used whereas to designate a neuron in general, the reference 16 is used.
[0060] In this case, N1 is equal to four. Thus, the neurons are identified by the references 16 1 , 16 2 , 16 3 , 16 4 .
[0061] At least one neuron 16 of the at least one chain of neurons 16 is associated with at least one predefined category C.
[0062] Further, for each predefined category C with which at least one neuron 16 is associated, each neuron 16 is associated with a respective current range associated with that category C.
[0063] More generally, the number N1 of neurons 16 of chain 30 depends on the number of categories C.
[0064] Each 16 neuron is a switching element also called a “switch”.
[0065] Each neuron 16 is capable of presenting a first magnetization configuration and a second magnetization configuration.
[0066] In physics, magnetization is a vector quantity that characterizes the magnetic behavior of a sample of matter at the macroscopic scale. Magnetization originates from the orbital magnetic moment and the spin magnetic moment of electrons.
[0067] For each switching element, the transition from one magnetization configuration to another magnetization configuration occurs when a current strictly greater than a threshold current defined for this switching element, also called critical current, is applied to this element.
[0068] For example, the transition from one magnetization configuration to another magnetization configuration for the neuron 16 results in a change in the magnetization direction of at least one layer of material forming the neuron 16 and / or a change in the intensity of the magnetization.
[0069] On the figures 3 à 5 , the magnetization is represented by an arrow m.
[0070] Several embodiments of neurons 16 allowing a transition between two magnetization configurations are now described.
[0071] Furthermore, in the remainder of the description, a stacking direction E of the layers of neurons 16 is defined.
[0072] According to an example of the embodiment of neurons 16, the transition is carried out by using a spin-orbit couple.
[0073] Such a switch is shown in the figures 3 And 4 .
[0074] Each neuron 16 comprises two layers: a first layer 32 and a second layer 34 superimposed along the stacking direction E.
[0075] According to the example described, the first layer 32 has the shape of a cross comprising a first bar 32A for receiving the input currents IA, IB and a second bar 32B for measuring voltage.
[0076] Each bar 32A and 32B has two ends forming terminals for each of the bars 32A and 32B.
[0077] The second layer 34 has the shape of a cylinder. For example, the base of the cylinder is circular.
[0078] Furthermore, the second layer 34 is superimposed on a portion of the first layer 32.
[0079] In the present case, the second layer 34 is only located on a central part of the cross forming the first layer 32 in the stacking direction E. The central part corresponds to the intersection part of the two bars 32A, 32B forming the cross. In particular, the central part corresponds to the part of the cross where the centers of the two bars 32A, 32B coincide.
[0080] The first layer 32 is made of a first material while the second layer 34 is made of a second material.
[0081] For illustration, the first material is a heavy metal and the second material is a ferromagnetic material, the reverse being also possible.
[0082] Heavy metals are generally defined as naturally occurring metallic elements with a density greater than 5 g / cm 3 < .
[0083] For example, the heavy metal is tantalum (Ta) or platinum (Pt).
[0084] Ferromagnetism refers to the ability of certain bodies to become magnetized under the effect of an external magnetic field and to retain part of this magnetization.
[0085] For example, the ferromagnetic material is a cobalt-iron-boron (CoFeB) alloy or cobalt (Co).
[0086] For example, the first layer 32 is tantalum and the second layer 34 is a cobalt-iron-boron (CoFeB) alloy.
[0087] According to another embodiment, the first layer is made of platinum (Pt) and the second layer is made of cobalt (Co).
[0088] Each 32A, 32B bar is made of a heavy metal.
[0089] In this example, the first 32A bars of each neuron 16 are electrically connected in series.
[0090] The input currents IA, IB are suitable for being applied to the first bar 32A in a direction perpendicular to the stacking direction E, in other words, in the plane of the first layer 32.
[0091] In this case, the transition from one magnetization configuration to another magnetization configuration of the neuron 16 is induced by spin-orbit coupling. More precisely, the spin-orbit coupling induces a spin Hall effect in the first layer 32 of heavy metal which is capable of causing a change in magnetization of the second layer 34.
[0092] Thus, the spin Hall effect gives rise to a torque, called spin-orbit torque. The spin-orbit torque is capable of changing the magnetization of the second layer 34 from one magnetization configuration to another magnetization configuration.
[0093] The change in magnetization configuration of neuron 16 can be detected by the abnormal Hall effect by measuring the voltage across the second bar 32B by means of the detection unit 52. The terminals of the first bar 32A then form the terminals of neuron 16.
[0094] According to a first variant represented on the figure 5 , the transition from one magnetization configuration to another magnetization configuration is carried out using a spin transfer torque. The term spin transfer switch is then used to designate such a neuron 16.
[0095] Spin-transfer torque switches are magnetic nanodevices including a magnetic layer.
[0096] The neuron 16 comprises at least two layers of materials at least partially superimposed along the stacking direction E.
[0097] As a particular example, each neuron 16 is a magnetic tunnel junction 35.
[0098] The magnetic tunnel junction 35 comprises, according to the stacking direction E, three layers: a first layer 36, a second layer 38 and a third layer 40.
[0099] The first layer 36, the second layer 38 and the third layer 40 are each cylindrical and of the same dimensions.
[0100] The second layer 38 completely covers the first layer 36 and the third layer 40 completely covers the second layer 38.
[0101] The assembly formed by the first, second and third layers 36, 38, 40 has the shape of a cylinder. For example, each cylinder has a circular base.
[0102] Further, the first layer 36 is stacked on the first electrode 42A along the stacking direction E. The first layer 36 covers a portion of the first electrode 42A.
[0103] The second electrode 42B is stacked on the third layer 40 according to the stacking direction E. The second electrode 42B partially covers the third layer 40.
[0104] In other words, the magnetic tunnel junction is sandwiched between the two electrodes 42A, 42B.
[0105] The first and third layers 36, 40 are made of a magnetic material and preferably of the same magnetic material.
[0106] The magnetic material is a ferromagnetic material such as an iron-cobalt alloy (FeCo), an iron-cobalt-nickel alloy (FeCoNi) or a nickel-fe alloy (Ni-fe).
[0107] The second layer 38 is made of an insulator.
[0108] For example, insulator 38 is made of magnesium oxide (MgO).
[0109] Furthermore, the second layer 38 has a thickness less than the thicknesses of the first and third layers 36, 40. “Layer thickness” is understood to mean the dimension of a layer measured along the stacking direction E.
[0110] The magnetization of one of the layers among the first and third magnetic layers is capable of switching, that is to say that it passes from one magnetization configuration to another magnetization configuration, when the input current IA, IB applied to the neuron 16 is strictly greater than the critical current of this neuron 16.
[0111] The transition from one magnetization configuration to another results in a variation in the resistance across neuron 16.
[0112] In the case of the example shown in the figure 5 , the third layer 40 is capable of passing from one magnetization configuration to another.
[0113] According to another variant shown on the figure 6 , the neuron 16 comprises a first layer of heavy metal 44 and a second layer which is a magnetic tunnel junction 35, superimposed according to the stacking direction E.
[0114] The heavy metal layer 44 is a Hall cross. For example, the heavy metal is tantalum (Ta).
[0115] The magnetic tunnel junction 35 is analogous to the magnetic tunnel junction 35 previously described with reference to the figure 5 . Then, the magnetic tunnel junction comprises the first, second and third layers 36, 38, 40 described with reference to the figure 5 .
[0116] For example, the neuron 16 further comprises a third layer, called the covering layer 46. The covering layer 46 is superimposed on the magnetic tunnel junction 35 in the stacking direction E. The covering layer 46 covers the third layer 40 of the magnetic tunnel junction 35.
[0117] For example, the covering layer 46 is made of tantalum (Ta) or ruthenium (Ru).
[0118] The neuron 16 described in the present variant has an operation analogous to the neuron 16 described with reference to the figures 3 And 4 when the input currents IA, IB are applied in the plane of the heavy metal layer 44 (as shown by the arrow on the figure 6 ).
[0119] The neuron 16 described in the present variant has a functioning analogous to the neuron 16 described with reference to the figure 5 when the input currents IA, IB are applied in a plane perpendicular to the plane of the heavy metal layer 44 and the layers 36, 38, 40 of the magnetic tunnel junction 35.
[0120] Thus, it is possible to feed this type of neuron 16 in different ways.
[0121] In this case, the magnetization of each neuron 16 described previously is capable of passing from one magnetization configuration to another magnetization configuration depending on the input current IA, IB applied to this neuron 16.
[0122] For each neuron 16, the transition from one magnetization configuration to another magnetization configuration takes place when an input current IA, IB is applied to this neuron 16. In this case, the transition takes place when the input current IA, IB applied to this neuron belongs to at least one range of predefined currents of a predefined category C associated with this neuron 16.
[0123] Each input current IA, IB of a predefined category C is greater than the critical current of neuron 16 associated with this input current IA, IB.
[0124] The output circuit 18 is electrically connected to the classification device 14.
[0125] The output circuit 18 comprises a memory 48 and a detection and association circuit 50.
[0126] Memory 48 is suitable for storing the list of predefined categories C.
[0127] The detection and association circuit 50 comprises a detection unit 52 and an association unit 54.
[0128] The detection and association circuit 50 is capable of detecting at least one change in magnetization configuration of a neuron 16 j of the set of neurons 16 and of associating said neuron 16 j having a change in magnetization configuration with a predefined category C on the basis of the list of predefined categories C.
[0129] The detection unit 52 comprises, for example, a CMOS circuit.
[0130] The detection unit 52 is capable of detecting a change in the magnetization configuration of at least one neuron 16 j of the chain 30.
[0131] The detection unit 52 uses, for example, STT-MRAM detection. This STT-MRAM detection is usually carried out using one transistor per neuron 16.
[0132] In particular, the detection unit 52 is configured to detect a variation in the voltage measured at the terminals of the neurons 16 (symbolized by the symbol V between the terminals of the neuron 16 visible at figure 3 ).
[0133] The association unit 54 is capable of associating the at least one neuron 16 j having a change in magnetization configuration with a predefined category C on the basis of the list of predefined categories C.
[0134] The adjustment circuit 20 is electrically connected to the classification device 14.
[0135] In reference to the figure 7 , the adjustment circuit 20 comprises a plurality of current sources 56 each capable of delivering an adjustment current.
[0136] For example, the adjustment circuit 20 comprises as many current sources 56 as neurons 16. Each current source 56 is then identified by the index j and noted 56 j and is capable of delivering an adjustment current, noted I j .
[0137] Each 56 j source is electrically connected to the input of a 16 j neuron.
[0138] The first source 56 1 is connected to the input of the first neuron 16 1 . The second source 56 2 is connected to the input of the second neuron 16 2 . The third source 56 3 is connected to the input of the third neuron 16 3 . The fourth source 56 4 is connected to the input of the fourth neuron 16 4 .
[0139] For example, each adjustment current I j is a current pulse.
[0140] As a variant of the adjustment circuit 20 described previously, the adjustment circuit 20 comprises two supply bars (not shown in the figures), one of the bars connecting the different sources 56 of adjustment currents to the neurons 16 of the chain 30 and the other bar supplying the chain 30 of neurons with input currents IA, IB.
[0141] The synchronization circuit 22 is electrically connected between the input circuit 12 and the adjustment circuit 20 to synchronize the injection of the input currents IA, IB and the adjustment currents into the neurons 16 of the chain 30.
[0142] The classification assembly 10 is suitable for implementing a method 100 for classifying signals S.
[0143] In reference to the figure 8 , the method 100 for classifying signals into predefined categories implemented by the classification assembly 10 is described in the remainder of this description.
[0144] The method 100 is capable of classifying each signal S to be classified into a predefined category C corresponding to this signal S from the predefined list of categories C.
[0145] According to the example described, the classification method 100 comprises three phases: an initial phase 200, an exploitation phase 300 and a learning phase 400.
[0146] During the initial phase 200, the list of predefined C categories is provided in the form of the mapping shown in figure 9 .
[0147] The mapping includes (N1+1) 2< possible switching states.
[0148] In this case, the mapping includes 25 configurations.
[0149] Furthermore, in this particular example, two current ranges are associated with each predefined C category. Thus, each C category is delimited by boundaries corresponding to the thresholds of the current ranges defined for this C category. Each current range corresponds to a respective input current IA, IB.
[0150] In addition, as visible on this figure 9 , for each predefined category C, a switching state is defined, noted (x1, y2).
[0151] A first coordinate of the state, noted x1, identifies the neuron(s) 16 j changing magnetization configuration under the effect of the current IA. In other words, the first coordinate x1 identifies the neuron(s) 16 for which the input current IA, delimited by the first arrow F1, is strictly greater than the critical current of this or these neurons 16.
[0152] A second coordinate of the state, noted y2, identifies the neuron(s) 16 changing magnetization configuration under the effect of the input current IB. In other words, the second coordinate y2 identifies the neurons 16 for which the current IB, identified by the arrow F2, is strictly greater than the critical current of this or these neurons 16.
[0153] It is possible that one of the switching states (x1, y2) does not correspond to any change in the magnetization configuration of at least one neuron 16. In other words, category C presenting this switching state is not associated with any neuron 16.
[0154] Furthermore, during the initial phase 200, the list of predefined categories C stored in the form of the mapping shown in figure 9 is provided and stored by memory 48.
[0155] For example, memory 48 stores for each predefined category C, the switching states (x1, y2) in the form of binary vectors.
[0156] Furthermore, during the initial phase 200, for each neuron 16 j , one or more characteristics of the neuron 16 j are determined based on the list of predefined categories C provided. The characteristics determined are the diameter and / or the thickness of the layers forming the neurons 16.
[0157] Adjusting the characteristics of the neurons 16 allows the critical current of each of the neurons 16 to be adjusted.
[0158] In this case, the initial step 200 makes it possible to adjust the magnetization transition of the neurons 16 from one magnetization configuration to another configuration in accordance with the list of predefined categories C.
[0159] In other words, the initial step 200 makes it possible, for each category C, to adjust the change in magnetization configuration of the neurons 16 associated with this category C when each neuron 16 of this category C is supplied by a respective input current IA, IB forming part of the range of input currents associated with this category C.
[0160] The operating phase 300 of the classification method 100 is described below.
[0161] For illustration purposes only, it is assumed that a single S1 signal is to be classified. The S1 signal corresponds to a spoken vowel but is not identified.
[0162] In a first step, several emissions of the signal S1 to be classified are supplied to the input circuit 12. The different emissions form the inputs of the classification set 10.
[0163] For example, each emission of signal S1 corresponds to a sound emitted by a different person corresponding to signal S1.
[0164] Each emission of the signal S1 is encoded by the encoding unit 26 in the two input streams IA, IB.
[0165] Furthermore, the encoding unit 26 modulates each input current IA, IB, for example, by a pulse amplitude height.
[0166] Each input current IA, IB encodes the information of an emission of the signal S1. Each emission of the signal S1 has two characteristic frequencies, denoted F1 and F2.
[0167] The amplitudes of currents IA and IB are then written in the following form: IA = A1.F1 IB = A2.F2
[0168] Or : F1 and F2 are the characteristic frequencies of each emission of the signal S1 also called by the known term "formants", and A1 and A2 are adjustment coefficients making it possible to obtain two characteristic values of the amplitudes of the input currents IA, IB.
[0169] Alternatively, the encoding unit 26 modulates each input current IA, IB, for example, by a current pulse width rather than by the pulse amplitude.
[0170] Alternatively, the inputs of classification set 10 are only the formants F1, F2 of signal S1.
[0171] In a second step, the injection unit 28 successively injects the input currents IA, IB into the input 14E of the classification device 14 to successively supply the single chain 30 with the input currents IA, IB.
[0172] For example, before the injection of the input currents IA, IB, an initialization of the classification device 14 is carried out.
[0173] Furthermore, between the injection of an input current IA and the injection of another input current IB into the chain 30 an initialization of the classification device 14 is also carried out.
[0174] In this case, initialization is carried out by applying a saturation current having a negative polarity in chain 30.
[0175] The saturation current has the effect of resetting the magnetization state of neurons 16 of chain 30.
[0176] For each neuron 16, the transition from one magnetization configuration to another magnetization configuration takes place when an input current IA, IB belonging to the at least one predefined current range of a predefined category C associated with this neuron 16 is applied to said neuron 16.
[0177] During a third step, the detection unit 52 is capable of detecting a change in the magnetization configuration of at least one neuron 16 of the chain 30.
[0178] For example, the change in magnetization configuration corresponds to a change in the resistance across neuron 16 as a function of the input current IA, IB applied to neuron 16. For example, the resistance of neuron 16 varies in the form of a resistance loop as a function of the current applied to neuron 16. Furthermore, the resistance loop defines two distinct resistance levels as a function of the current applied to neuron 16. Thus, the transition from one magnetization configuration to another occurs when the resistance of neuron 16 changes level under the effect of the input current IA, IB applied to this neuron 16.
[0179] Indeed, when the 16 j neuron passes from one magnetization configuration to another, the resistance of the magnetic tunnel junction changes abruptly due to the tunnel magnetoresistance effect.
[0180] Then, the detection unit 52 detects, for example, the variation in voltage measured at the terminals of the neurons 16 j of the chain 30, in response to the input currents IA, IB applied to this chain 30 to deduce a variation in the resistance of the neuron 16.
[0181] For example, during each emission of the signal S1, the detection unit 52 delivers a detected switching state, noted (xA, yB). A first coordinate of the configuration, noted xA, identifies the neuron(s) 16 j having changed magnetization configuration under the effect of the input current IA and a second coordinate of the configuration, noted yB, identifies the neuron(s) 16 j having changed magnetization configuration under the effect of the other input current IB.
[0182] Preferably, the detected switching state (xA, yB) comprises binary vectors and is analogous in form to the stored switching state (x1, y2) in the memory 48 so that the stored switching state (x1, y2) and the detected switching state (xA, yB) delivered by the detection unit 52 can be compared with each other by the association unit 54.
[0183] In the present case, when injecting the input current IA, the detection unit 52 detects the transition from one magnetization configuration to another of the magnetization of the neurons 16 1 and 16 2 . Furthermore, when injecting the other input current IB, the detection unit 52 detects a change in the magnetization configuration of the magnetization of the neuron 16 1 .
[0184] The detection unit 52 then delivers for each emission of the signal S1, a detected switching state (xA, yB) representative of the passage from one magnetization configuration to another of the magnetization of the neurons 16 1 , 16 2 on the one hand and 16 1 on the other hand.
[0185] The association unit 54 associates, by comparison, the detected switching state (xA, yB) with the category C 1 of the list of predefined categories, visible on the figure 10 . Each visible point in category C 1 corresponds to an emission of the signal S1 according to the input currents IA, IB. Thus, all emissions of the signal S1 are classified in the same category C 1 .
[0186] Category C 1 corresponds to the sound “ah”.
[0187] Signal S1 was therefore identified and corresponds to the spoken vowel “ah”.
[0188] The output of the output circuit 18 is a non-linear function of the signals S to be classified applied to the input of the classification device 14.
[0189] In the case of feeding the classification assembly 10 with new signals to be classified not provided for during the manufacture of the classification assembly 10, it is sometimes desirable to teach the classification assembly 10 to classify these new signals.
[0190] An example of a learning phase 400 is described in the remainder of the description.
[0191] The learning phase 400 is an optional phase of the classification method 100.
[0192] The training phase 400 trains the classification ensemble 10 with a set of known signals.
[0193] To explain the learning phase 400, the second signal to be classified S2 is considered. The second signal S2 is a known signal and used for training the classification set 10.
[0194] The second signal S2 also corresponds to a spoken vowel. For example, the spoken vowel corresponds to the vowel "eh".
[0195] Alternatively, the second signal S2 is a completely different type of signal than a spoken vowel, for example a spoken consonant.
[0196] According to another variant, the second signal S2 is a light signal or an image.
[0197] It is also assumed that input streams IA, IB encoding the second signal S2 were supplied to the classification set 10 during the operating phase 200 described above.
[0198] For the different emissions of the second signal S2, during the operating phase 200, the detection unit 52 delivers two distinct switching states (xA, yB): a first switching state and a second switching state.
[0199] The association circuit 54 has associated the first detected switching state with the second category C 2 and the second detected switching state with the third category C 3 .
[0200] Indeed, as visible on the figure 10 the points corresponding to the different emissions of the second signal S2 as a function of the currents IA and IB are distributed in the second and third categories C 2 and C 3 .
[0201] However, the second category C 2 corresponds to the spoken vowel "oh" but the third category C 3 corresponds to the spoken vowel "eh". Thus, some emissions of the second signal S2 are wrongly classified in the second predefined category C 2 .
[0202] To carry out the learning, the input currents IA, IB encoding the second signal S2 are again injected by the input circuit 12 into the classification device 14.
[0203] The learning phase 400 further comprises a step for controlling the transition from one magnetization configuration to another magnetization configuration of certain neurons 16, so that all the emissions of the second signal S2 to be classified have an identical switching state and belong to a single category C.
[0204] As a result, the adjustment circuit 20 injects adjustment currents I j into one or more neurons 16 of the chain 30.
[0205] The adjustment currents I j control the value of the current supplying each neuron 16 j of the set of neurons 16.
[0206] In other words, the adjustment currents I j control the value of the effective current supplying each neuron 16. The effective current is equal to the sum of the input current IA, IB applied to this neuron 16 and the adjustment current I j flowing in the neuron 16 considered.
[0207] To explain the principle of learning, an example is considered in which the second category C2 (corresponding to the signal "oh") identifies neuron 16 1 and the third category C3 (corresponding to the signal "eh") identifies neurons 16 1 and 16 2 when the input current IA is applied to the chain 30 of neurons 16.
[0208] Thus, for each input current IA, the magnetization of the two neurons 16 1 and 16 2 must change configuration and not just the magnetization of the single neuron 16 1 . But, before learning the critical current of the second neuron 16 2 is greater than the critical current of the neuron 16 1 . As a result, for certain emissions of the second signal S2, the input current IA is less than the critical current of the neuron 16 2 . As a result, the second neuron 16 2 does not change its magnetization configuration under the effect of the input current IA while it is desired that the change takes place.
[0209] Then, to perform the learning of the classification set 10, an adjustment current I 2 is applied to the second neuron 16 2 . The adjustment current I 2 increases the value of the current supplying the second neuron 16 2 . As a result, the effective current supplying the second neuron 16 2 is greater than the critical current of this neuron 16 2 . This causes a change in the configuration of the second neuron 16 2 .
[0210] As a result, the adjustment currents I j modify the effective critical currents of one or more neurons 16 of the chain 30 to control the change in magnetization configuration of this or these neuron(s) 16. In other words, the adjustment currents I j make it possible to carry out learning.
[0211] The learning step 400 amounts to modifying the thresholds of the current ranges IA, IB of each predefined category C.
[0212] The adjustment currents I j have the same polarity.
[0213] Alternatively, some adjustment currents I j have opposite polarities.
[0214] Advantageously, the step for controlling the transition from one magnetization configuration to another is carried out simultaneously with the third step of the operating phase 300. The simultaneous injection of the input currents IA, IB and the adjustment currents I j is controlled by the synchronization circuit 22.
[0215] “Simultaneous injection” means that the injection of the adjustment currents I j may begin before the injection of the input currents IA, IB, and continue throughout the injection of the input currents IA, IB. For example, the injection of the adjustment currents begins at a first instant, denoted T1, before the injection of the input currents IA, IB. The first time period between the first time period T1 and the start of the injection of the input currents IA, IB is, for example, between 10% and 20% of the pulse width of the input currents IA, IB. “Simultaneous injection” also means that the injection of the adjustment currents I j is carried out at the same time as the injection of the input currents IA, IB and may continue after the injection of the input currents IA, IB.For example, the injection of the adjustment currents I j ends at a second instant, denoted T2, after a second time period after the injection of the input currents IA, IB. The second time period is, for example, between 10% and 20% of the pulse width of the input currents IA, IB.
[0216] The adjustment circuit 20 allows the boundaries of each predefined category C to be modified independently. Thus, the mapping of predefined categories C can be adapted to the different signals to be classified.
[0217] The classification set 10 has improved characteristics compared to prior art classifiers.
[0218] First, the classification set 10 is compact. Indeed, the 16 neurons have very small dimensions. Indeed, each 16 neuron has a dimension equal to approximately 100 nanometers.
[0219] The classification device 10 can therefore be implemented on a very compact CMOS chip. For illustration, a 0.05 mm 2< chip would allow the inclusion of 10 6< neurons and one transistor per neuron 16 for the detection of changes in magnetization configuration.
[0220] The 16 neurons are particularly energy-efficient. There is no need to power them continuously. Indeed, it is sufficient to apply current pulses to the 16 neurons to achieve the transition from one magnetization configuration to another.
[0221] Furthermore, switching from one magnetization configuration to another of the magnetization of the neurons 16 can be achieved with input currents IA, IB having a small pulse width, such as a pulse width between 1 nanosecond (ns) and 10 ns.
[0222] Thus, the energy consumption of the input circuit 12, i.e. necessary to apply the input currents IA, IB to the classification device 14 can be less than 1 picoJoule (pJ).
[0223] Furthermore, the adjustment currents I j are capable of having a low amplitude. In particular, the adjustment circuit 20 has a consumption as low as 7 pJ for the application of a 300 ns pulse of an adjustment current I j with an amplitude of about ten micro amperes, including the dissipation of the circuit 20.
[0224] Furthermore, the pulses of the adjustment currents I j have an amplitude much lower than that of the pulses of the input currents IA, IB, that is to say an amplitude equal to approximately 10% of the amplitude of the pulses of the input currents IA, IB.
[0225] Furthermore, the list of predefined categories C is very adaptable. Indeed, thanks to the invention, each category C can have a different shape and size from the other categories. This is achieved in particular thanks to the nature of the neurons 16. Indeed, the shape and dimensions of each predefined category C can be adapted in particular by varying the diameter and / or the thicknesses of the layers forming the neurons 16.
[0226] Furthermore, the shape and dimensions of each predefined category C can be adapted externally to the neuron chain 30 by the adjustment circuit 20.
[0227] Being able to act on the parameters of each predefined C category externally cannot be achieved with oscillators since the dimensions of each category are given by the locking range, also called "synchronization range" and therefore depend on parameters intrinsic to the oscillators. The locking range defines the frequency range of the oscillator so that the oscillator synchronizes to the microwave signal to which the oscillator is subjected.
[0228] Furthermore, in the mapping of predefined C categories, the abscissa and ordinate of each C category can be modified independently of each other. This is due to the fact that the adjustment currents I j injected simultaneously to the input current IA can be different from the adjustment currents I j injected simultaneously to the other input current IB. Thus, for the same neuron 16 j , it is possible to independently adjust the input current range IA, IB to make it pass from one magnetization configuration to another depending on whether it is the input current IA or the other input current IB. This is not possible using oscillators.
[0229] Another embodiment of the classification assembly 10 is described with reference to the figure 11 . This embodiment is described only as a difference from the embodiment described in relation to the figures 1 à 7 .
[0230] The classification set of the present embodiment does not differ from the classification set of the figures 1 à 7 that in that it comprises a plurality of chains 30 of neurons 16.
[0231] For example, set 10 includes N2 number of neuron chains. Each chain is fed a separate input current.
[0232] In the particular example illustrated in Figure 12, N2 is equal to 3. Thus each chain 30 1 , 30 2 , 30 3 is intended to be supplied by a respective input current IA, IB, IC.
[0233] In this case, the classification method 100 differs from the method 100 described previously only in that, during the operating phase 300, a respective input current IA, IB, IC is applied to each chain 30. The respective input currents are applied simultaneously in each of the chains 30.
[0234] As a result, the initialization step between two input current injections is eliminated compared to the embodiment of the figures 1 à 7 The calculation time of the classification process 100 is then further reduced.
[0235] In all embodiments, the classification device 14 and the classification assembly 10 have a reduced footprint while comprising a high number of neurons and having low power consumption.
[0236] In addition, the classification set 10 allows for the classification of a significant variety of signals.
[0237] New embodiments may be obtained by combining previously described embodiments when these are technically compatible.
Claims
1. A device (14) for classifying signals (S), each signal (S) being intended to be classified in a predefined category (C) corresponding to this signal (S), at least one range of predefined currents being associated with each predefined category (C), the device (14) comprising : - at least one chain (30) of neurons comprising a set of neurons (16), each neuron (16) having a magnetisation capable of exhibiting a first configuration and a second configuration, the neurons (16) of a chain (30) being connected to one another in series, at least one neuron (16) of the at least one chain (30) of neurons also being associated with a predefined category (C), - an input (14E) suitable for receiving input currents (IA, IB) representative of the signals (S) to be classified and intended to feed at least one chain of neurons (30), the magnetisation of at least one neuron (16) of the at least one chain (30) of neurons being capable of switching from one configuration to another configuration from among the first configuration and the second configuration as a function of an input current (IA, IB) applied to the at least one chain (30) of neurons, the switching from one configuration to another configuration for the at least one neuron (16) taking place when an input current (IA, IB) belonging to the at least one range of predefined currents of a predefined category (C) associated with the at least one neuron (16) is applied to said neuron (16).
2. The classification device (14) according to claim 1, wherein each input current (IA, IB) is a current pulse.
3. The classification device (14) according to claim 1 or 2, wherein each neuron (16) is a switch, each neuron (16) being a switch selected from the following list of switches: - a switch comprising a magnetic tunnel junction (35), - a switch having a spin-orbit pair, each neuron (16) comprising a first layer (32) of a first material and a second layer (34) of a second material, the first material being either a heavy metal or a ferromagnetic material and the second material being the other of the heavy metal and the ferromagnetic material, the first layer (32) and the second layer (34) being superposed along a stacking direction (E) of the layers, and - a switch comprising a first layer (44) and at least one second layer (35), the first layer (44) being made of a heavy metal and the at least one second layer being formed by a magnetic tunnel junction (35), the first layer (44) and the second layer (35) being stacked in a stacking direction (E) of the layers.
4. The device (14) according to any one of claims 1 to 3, in which at least two neurons (16) of the chain (30) have a different characteristic chosen from diameter and thickness.
5. The classification device (14) according to any one of claims 1 to 4, comprising a single chain (30) of neurons, the input (14E) being intended to supply the single chain (30) of neurons with input currents (IA, IB) representative of the signals (S) to be classified successively.
6. Assembly (10) for classifying signals (S) capable of classifying each signal (S) in a predefined category (C) corresponding to this signal, the assembly (10) comprising: - a classification device (14) according to any one of claims 1 to 5, - an input circuit (12) electrically connected to the input (14E) of the classification device (14), the input circuit (12) being suitable for encoding the signals (S) to be classified into input currents (IA, IB) and for injecting the input currents (IA, IB) into the classification device (14), and - an output circuit (18) electrically connected to the classification device (14), the output circuit (18) comprising a memory (48) and a detection and association circuit (50), the memory (48) being suitable for storing a list of predefined categories (C), each predefined category (C) being associated with at least one range of predefined currents and at least one neuron (16) of the at least one chain (30) of neurons being associated with a predefined category (C), and the detection and association circuit (50) being suitable for detecting at least one change in magnetisation configuration of at least one neuron (16) of the neuron set and for associating the at least one neuron (16) having a change in magnetisation configuration with a predefined category (C) on the basis of the list of predefined categories (C).
7. The classification assembly (10) according to claim 6, wherein the input circuit (12) comprises an encoding unit (26) configured to encode the signals (S) to be classified in the input currents (IA, IB).
8. The classification assembly (10) according to claim 6 or 7, further comprising a circuit (20) for adjusting the magnetisation of each of the neurons (16), the adjustment circuit (20) being electrically connected to the at least one chain (30) of neurons, the adjustment circuit (20) being suitable for injecting different adjustment currents (Ij) into each neuron (16), the adjustment currents (Ij) being suitable for controlling the value of the current supplying each neuron (16) of the at least one chain (30) and a synchronisation circuit (22) connected between the input circuit (12) and the adjustment circuit (20) for synchronising the injection of the input currents (IA, IB) and the adjustment currents (Ij) into the neurons (16).
9. A method (100) for classifying signals (S) in categories (C) implemented by a classification assembly (10) according to any one of claims 6 to 8, each signal (S) to be classified being intended to be classified in a predefined category (C) corresponding to this signal (S), the method comprising a phase (300) of operation of the classification assembly (10), the operation phase (300) comprising the following steps: - providing the input circuit (12) with at least one signal (S) to be classified, - providing the output circuit (18) with a list of predefined categories (C), each predefined category (C) being associated with at least one range of predefined currents and at least one neuron (16) of the chain (30) of neurons being associated with a predefined category (C), the transition from one configuration to another configuration for the at least one neuron (16) taking place when an input current (IA, IB) belonging to the at least one range of predefined currents of a predefined category (C) associated with the at least one neuron (16) is applied to said neuron (16), - converting the at least one signal (S) to be classified into at least one input current (IA, IB) with the input circuit (12), - injecting the at least one input current (IA, IB) at the input of the classification device (14) with the input circuit (12), - detecting a change in magnetisation configuration of at least one neuron (16) of the at least one chain (30) of neurons with the detection and association circuit (50) following injection of the at least one input current (IA, IB), - associating the at least one neuron (16) having a change in magnetisation pattern with a predefined category (C) on the basis of the list of predefined categories (C) with the detection and association circuit (50), and - classifying the at least one signal (S) to be classified in said predefined category (C), the method preferably comprising an initial phase (200) during which one or more characteristics of the neurons (16) of the at least one chain (30) of neurons are determined as a function of the list of predefined categories (C).
10. The method according to claim 9, wherein when the at least one signal (S) to be classified is classified in an erroneous predefined category (C), the method (100) further comprises a learning step (400) for controlling the change in magnetisation configuration of at least one neuron (16) of the at least one chain (30) of neurons by re-sending the signal (S) to be classified and injecting with the adjustment circuit (20) at least one adjustment current (Ij) into the at least one neuron (16) of the at least one chain (30) of neurons.