Associative memory device and associative memory method
The associative memory device uses reservoir computing and Echo State Networks to associate classification vectors with time-series signals, addressing the challenge of identifying learning sequence IDs and reducing power consumption by using non-semiconductor devices for efficient time-series signal processing.
Patent Information
- Authority / Receiving Office
- WO · WO
- Patent Type
- Applications
- Current Assignee / Owner
- Filing Date
- 2024-09-17
- Publication Date
- 2026-03-26
AI Technical Summary
Conventional associative memory devices struggle with identifying the specific learning sequence ID corresponding to a pattern sequence output, especially in handling time-series signals like audio or video, and they require significant CPU load and power consumption.
An associative memory device utilizing reservoir computing and Echo State Networks to associate classification vectors with time-series signals, enabling explicit identification of learning sequence IDs through recurrent neural circuits, reducing the need for semiconductor devices by leveraging light and MEMS for computation.
The device can learn and recall multidimensional time-series signals like videos and music, reducing power consumption and CPU load by implementing computations on non-semiconductor devices, and explicitly identifying the corresponding learning sequence IDs.
Smart Images

Figure JP2024033133_26032026_PF_FP_ABST
Abstract
Description
Associative memory device and associative memory method
[0001] This disclosure relates to an associative memory device and an associative memory method that, in a natural language-based dialogue system, have a function to automatically correct potentially erroneous sentences entered by the user, or a function to infer sentences associated with ambiguous sentences, thereby outputting appropriate responses in the form of text or sound in natural language.
[0002] In conventional digital computers, there are two methods for accessing data: addressable RAM (Random Access Memory) and associative memory, which uses associated data. The RAM method increases the CPU (Central Processing Unit) load and poses problems in terms of power consumption. In contrast, the associative memory method, while requiring a larger circuit size, has the advantage of reducing CPU load. Current deep learning, the latest research in neural networks (NN), is divided into CNN (Convolutional NN) and RNN (Recurrent NN). CNN has been used for static pattern detection, while RNN has been used for time-series signal learning. As exemplified by the Hopfield model, associative memory, which is not present in CNN, is being researched in RNNs. However, this RNN-based associative memory was limited to static patterns and not to time-series signals such as audio or video. In recent years, associative memory using CNNs that target time-series signals using overparameterized NNs has been established (for example, Non-Patent Document 1).
[0003] Radhakrishnan et al., "Overparameterized neural networks implement associative memory", Proc. Natl. Acad. Sci. USA, 117(44), pp.27162-27170, 2020.
[0004] In a conventional associative memory device, there has been a problem that, among a plurality of learning sequences, which sequence is being read out can be determined only from the content of a frame image, and the ID (identification) of the learning sequence is not made explicit, for the pattern sequence output from the associative memory network.
[0005] This disclosure provides an associative memory device capable of specifying which ID among a plurality of learning sequence IDs corresponds to the pattern sequence output from the associative memory network and making the ID explicit.
[0006] The associative memory device according to this disclosure includes: a classification vector input data setting unit that sets the same classification vector as the first input vector over a certain time length and sets a plurality of different classification vectors as the first input vector respectively; a time-series signal output data setting unit that sets a vector composed of values at each time of a time-series signal over the time length as the first output vector and sets a plurality of different time-series signals as the first output vector respectively; a first reservoir learning calculation unit that learns by reservoir computing so as to associate a specific classification vector among the plurality of different classification vectors with a specific time-series signal among the plurality of different time-series signals, such that the classification vector is input and the time-series signal is output, and calculates a first recurrent neural circuit that associates the first input vector and the first output vector; and a first reservoir learning circuit storage unit that stores the first recurrent neural circuit.
[0007] Furthermore, the associative memory device according to this disclosure includes: a classification vector input unit that holds and inputs classification vectors; a first reservoir learning circuit storage unit that sets the same classification vector as a first input vector for a certain time length, sets a plurality of different classification vectors as the first input vectors, sets a vector composed of values of a time series signal at each time point for the given time length as a first output vector, sets a plurality of different time series signals as the first output vectors, learns by reservoir computing that a specific classification vector among the plurality of different classification vectors corresponds to a specific time series signal among the plurality of different time series signals so that the classification vector becomes input and the time series signal becomes output, stores a first recurrent neural circuit calculated to relate the first input vector and the first output vector; inputs the classification vector to the first recurrent neural circuit; and calculates the time series signal from the classification vector using the first recurrent neural circuit; and a time series signal output unit that reads the time series signal from the first reservoir learning circuit storage unit.
[0008] Furthermore, the associative memory device according to this disclosure includes: a time-series signal input data setting unit that sets a vector composed of values at each time point of a time-series signal over a certain time length as a second input vector, and sets a plurality of different time-series signals as the second input vector; a classification vector output data setting unit that sets the same classification vector over the same time length as a second output vector, and sets a plurality of different classification vectors as the second output vectors; a second reservoir learning calculation unit that learns by reservoir computing to associate a specific time-series signal from among the plurality of different time-series signals with a specific classification vector from among the plurality of different classification vectors, so that the time-series signal becomes the input and the classification vector becomes the output, and calculates a second recurrent neural circuit that relates the second input vector and the second output vector; and a second reservoir learning circuit storage unit that stores the second recurrent neural circuit.
[0009] Furthermore, the associative memory device according to this disclosure includes: a time-series signal input unit for holding and inputting time-series signals; a second reservoir learning circuit storage unit for learning by reservoir computing that a specific time-series signal from among the multiple different time-series signals is associated with a specific classification vector from among the multiple different classification vectors, and that the classification vector is input and the time-series signal is output; a second reservoir learning circuit storage unit for learning by reservoir computing that a specific time-series signal from among the multiple different time-series signals is associated with a specific classification vector from among the multiple different classification vectors, and that a second recurrent neural circuit calculated to relate the second input vector and the second output vector; inputting the time-series signals into the second recurrent neural circuit; and calculating the time-series signals from the classification vectors using the second recurrent neural circuit; and a classification vector output unit for reading the classification vectors from the second reservoir learning circuit storage unit.
[0010] According to this disclosure, by specifying a particular ID among the learning sequence IDs, which are classification vectors, a multidimensional time-series signal corresponding to that specific ID is output from the associative memory network as a pattern sequence. This makes it possible to identify which of the multiple learning sequence IDs corresponds to the pattern sequence output from the associative memory network, and to explicitly identify the ID.
[0011] This is a block diagram showing the configuration of each operating unit included in the first learning phase of the associative memory according to Embodiment 1. This is a block diagram showing the configuration of each operating unit included in the learning phase of the first learning phase of the associative memory according to Embodiment 1. This is a block diagram showing the configuration of each operating unit included in the application phase of the first learning phase of the associative memory according to Embodiment 1. This is a diagram showing the processing operation of the classification vector input data setting unit, the time series signal output data setting unit, the first reservoir learning calculation unit, and the first reservoir learning circuit storage unit when learning with Echo State Network such that the input is a time series of classification vectors and the output is a multidimensional time series signal in the learning phase of the first learning phase of the associative memory according to Embodiment 1. This is a diagram showing an example of a time series of classification vectors to be set in the classification vector input data setting unit in the learning phase of the first learning phase of the associative memory according to Embodiment 1. This is a diagram showing an example of a multidimensional time series signal to be set in the time series signal output data setting unit in the learning phase of the first learning phase of the associative memory according to Embodiment 1. This figure shows the processing operation of the classification vector input unit and the time-series signal output unit when the results learned by Echo State Network, such that the input is a time series of classification vectors and the output is a multidimensional time-series signal, are stored as the first learning circuit in the first reservoir learning circuit storage unit and operated in the application phase of the first learning in the associative memory according to Embodiment 1. This figure shows an example of the operation of the learning phase of the first learning in the associative memory according to Embodiment 1. This figure shows an example of the operation of the application phase of the first learning in the associative memory according to Embodiment 1. This is a flowchart showing the operation of the learning phase of the first learning in the associative memory according to Embodiment 1. This is a flowchart showing the operation of the application phase of the first learning in the associative memory according to Embodiment 1. This is a block diagram showing the configuration of each operating unit included in the second learning in the associative memory according to Embodiment 2. This is a block diagram showing the configuration of each operating unit included in the learning phase of the second learning in the associative memory according to Embodiment 2. This is a block diagram showing the configuration of each operating unit included in the application phase of the second learning in the associative memory according to Embodiment 2.This figure shows the processing operation of the time-series signal input data setting unit, the classification vector output data setting unit, the second reservoir learning calculation unit, and the second reservoir learning circuit storage unit when learning with Echo State Network such that the input is a multidimensional time-series signal and the output is a time-series of classification vectors in the learning phase of the second learning in the associative memory according to Embodiment 2. This figure shows an example of a multidimensional time-series signal to be set in the time-series signal input data setting unit in the learning phase of the second learning in the associative memory according to Embodiment 2. This figure shows an example of a time-series of classification vectors to be set in the classification vector output data setting unit in the learning phase of the second learning in the associative memory according to Embodiment 2. This figure shows the processing operation of the time-series signal input unit and the classification vector output unit when the result of learning with Echo State Network such that the input is a multidimensional time-series signal and the output is a time-series of classification vectors is stored as a second learning circuit in the second reservoir learning circuit storage unit and operated in the application phase of the second learning in the associative memory according to Embodiment 2. This figure shows an example of the time series of the classification vector output from the classification vector output unit during the application phase of the second learning in the associative memory device according to Embodiment 2. This figure shows an example of the operation of the learning phase of the second learning in the associative memory device according to Embodiment 2. This figure shows an example of the operation of the application phase of the second learning in the associative memory device according to Embodiment 2. This flowchart shows the operation of the learning phase of the second learning in the associative memory device according to Embodiment 2. This flowchart shows the operation of the application phase of the second learning in the associative memory device according to Embodiment 2. This figure shows an example of the multidimensional time series signal set in the time series signal input data setting unit during the learning phase of the second learning in the associative memory device according to Embodiment 3. This figure shows an example of the time series of the classification vector set in the classification vector output data setting unit during the learning phase of the second learning in the associative memory device according to Embodiment 3. This figure shows an example of the time series of the classification vector output from the classification vector output unit during the application phase of the second learning in the associative memory device according to Embodiment 3.This figure shows an example of a multidimensional time-series signal superimposed on a periodic wave, which is set in the time-series signal input data setting unit during the learning phase of the second learning in the associative memory device according to Embodiment 3. This figure shows an example of a time-series of a classification vector output from the classification vector output unit during the application phase of the second learning in the associative memory device according to Embodiment 3. This block diagram shows the configuration of each operating unit in the associative memory device according to Embodiment 4. This figure shows an example of operation combining the application phase of the second learning and the application phase of the first learning in the associative memory device according to Embodiment 4. This flowchart shows operation combining the application phase of the second learning and the application phase of the first learning in the associative memory device according to Embodiment 4. This flowchart shows operation of the classification vector output stability analysis unit in the associative memory device according to Embodiment 4. This flowchart shows operation A of the classification vector output stability analysis unit in the associative memory device according to Embodiment 4. This flowchart shows operation B of the classification vector output stability analysis unit in the associative memory device according to Embodiment 4. This figure shows the hardware configuration of the associative memory device according to Embodiments 1 to 4.
[0012] The associative memory device in this disclosure can learn multidimensional time-series signals such as videos and music from a recurrent neural circuit using reservoir computing learning, and can recall the entire original learning sequence by presenting a portion of the learned multidimensional time-series signals to the learned recurrent neural circuit. The associative memory device in this disclosure may also be called a time-series signal associative memory device. Furthermore, by utilizing the advantages of reservoir computing, which allows computational functions to be implemented not only on electronic circuits but also on physical media such as light and MEMS (Micro Electro Mechanical Systems), the associative memory device in this disclosure can realize a low-power storage device that can perform computations without using semiconductor devices such as CPUs (Central Processing Units) and GPUs (Graphics Processing Units).
[0013] Embodiment 1. Figure 1 is a block diagram showing the configuration of each operating unit included in the first learning in an associative memory device according to Embodiment 1 for implementing the present disclosure. In Figure 1, the associative memory device is composed of a classification vector input data setting unit 1, a time series signal output data setting unit 2, a first reservoir learning calculation unit 3, a first reservoir learning circuit storage unit 4, a classification vector input unit 5, and a time series signal output unit 6.
[0014] The associative memory device according to Embodiment 1 aims to learn by reservoir computing that, for a certain period of time, the same classification vector is consistently set as the first input vector, and for this period of time, a vector composed of the values of a multidimensional time-series signal (sometimes referred to as a "time-series signal") at each time is set as the first output vector, and different classification vectors are associated with different multidimensional time-series signals.
[0015] The associative memory device according to Embodiment 1 has two phases: a learning phase in which a first learning circuit is generated, and an application phase in which the first learning circuit is applied to a real problem, with respect to a processing process described in Echo State Network, which is a discrete-time implementation of reservoir computing.
[0016] Figure 2 is a block diagram showing the configuration of each operating unit included in the learning phase of the first learning in the associative memory device according to Embodiment 1. The associative memory device involved in the learning phase of the first learning is composed of a classification vector input data setting unit 1, a time-series signal output data setting unit 2, a first reservoir learning calculation unit 3, and a first reservoir learning circuit storage unit 4.
[0017] In the first learning phase, the classification vector input data setting unit 1 sets a time series of classification vectors (sometimes referred to as the "classification vector time series"), which consists of multiple identical column vectors arranged in the time direction, as the first input vector, which is the input data for learning. In other words, the classification vector input data setting unit 1 sets the same classification vector as the first input vector for a certain period of time, and sets multiple different classification vectors as first input vectors.
[0018] The time-series signal output data setting unit 2 sets a vector composed of the values of a multidimensional time-series signal at each time point over a fixed time period as the first output vector, which is the learning output data, and sets multiple different time-series signals as the first output vectors. In this way, the time-series signal output data setting unit 2 sets a multidimensional time-series signal as output data. Note that the fixed time period in the classification vector input data setting unit 1 and the fixed time period in the time-series signal output data setting unit 2 are the same time period.
[0019] The first reservoir learning computation unit 3 learns by reservoir computing so that a classification vector is the input and a multidimensional time-series signal is the output, and calculates a first recurrent neural circuit, which is a trained Echo State Network circuit. The first learning circuit is a trained circuit from the first learning. In other words, the first reservoir learning computation unit 3 learns by reservoir computing so that a specific classification vector from among several different classification vectors is associated with a specific time-series signal from among several different time-series signals, so that the classification vector is the input and the time-series signal is the output, and calculates a first recurrent neural circuit that relates the first input vector and the first output vector. The first reservoir learning circuit storage unit 4 stores the first recurrent neural circuit calculated by the first reservoir learning computation unit as the first learning circuit.
[0020] Here, a classification vector is a learning sequence ID (identification) used to distinguish between multiple multidimensional time series signals, with different learning sequence IDs associated with different multidimensional time series signals. In particular, in this disclosure using the Echo State Network, when learning to associate a learning sequence ID with an input and a multidimensional time series signal with an output, the learning sequence ID that is represented as a bit pattern and input to the Echo State Network in parallel is called a classification vector. Alternatively, when learning to associate a multidimensional time series signal with an output and a learning sequence ID with an output, the learning sequence ID that is represented as a bit pattern and output from the Echo State Network in parallel is called a classification vector.
[0021] Examples of multidimensional time-series signals include one-dimensional audio signals and two-dimensional video signals composed of images. For example, in the case of an audio signal, multiple columns representing one frame of a one-dimensional image are arranged to form a time-series signal. In the case of a video signal, multiple columns representing one frame of a two-dimensional image are arranged to form a time-series signal. Multidimensional time-series signals can also be described as pattern sequences held within an associative memory network.
[0022] Figure 3 is a block diagram showing the configuration of each operating unit included in the first learning application phase of the associative memory device according to Embodiment 1. The associative memory device involved in the first learning application phase consists of a first reservoir learning circuit storage unit 4, a classification vector input unit 5, and a time-series signal output unit 6.
[0023] In the first learning application phase, the classification vector input unit 5 holds and inputs the classification vector. The first reservoir learning circuit storage unit 4 stores the first learning circuit, which is the first recurrent neural circuit. It receives the time series of the classification vector from the classification vector input unit 5, which holds the time series of the classification vector, and uses the first learning circuit to calculate a multidimensional time series signal, which is the first output vector, from the time series of the classification vector. The first reservoir learning circuit storage unit 4 stores the first recurrent neural circuit calculated by the first reservoir learning calculation unit 3. It inputs the classification vector to the first recurrent neural circuit and uses the first recurrent neural circuit to calculate a multidimensional time series signal from the classification vector. The time series signal output unit 6 reads the multidimensional time series signal from the first reservoir learning circuit storage unit 4 and outputs the multidimensional time series signal.
[0024] The first reservoir learning circuit storage unit 4 stores the first recurrent neural circuit, inputs a classification vector to the first recurrent neural circuit, and calculates a time-series signal from the classification vector using the first recurrent neural circuit. The first recurrent neural circuit is a circuit calculated to relate the first input vector and the first output vector, by learning through reservoir computing that a specific classification vector among the multiple different classification vectors corresponds to a specific time-series signal among the multiple different time-series signals, with the classification vector being the input and the time-series signal being the output.
[0025] In the learning phase, the Echo State Network learning algorithm is applied to a three-layer neural network that has recursive connections within the hidden layers and between the output layer and the hidden layers, and the resulting learning circuit is used in the application phase. In Embodiment 1, the operation of the Echo State Network is described using a classification vector with 4 dimensions as input and an analog value vector (x, y) with 2 dimensions as output. Note that the generality is not lost even if the number of dimensions of the input is increased to 4 or more, and the number of dimensions of the output is increased to 2 or more.
[0026] First, the learning phase of the first learning in the associative memory device according to Embodiment 1 will be explained using Figures 4, 5, and 6. Figure 4 is a diagram showing the processing operation of the classification vector input data setting unit 1, the time series signal output data setting unit 2, the first reservoir learning calculation unit 3, and the first reservoir learning circuit storage unit 4 when learning with Echo State Network such that the input is a time series of classification vectors and the output is a multidimensional time series signal in the learning phase of the first learning. Figure 4 is an operation block constructed by Echo State Network using the internal circuits of the first reservoir learning calculation unit 3 and the first reservoir learning circuit storage unit 4 in Figure 2. Figure 4 shows how the time series of classification vectors set in the classification vector input data setting unit 1 and the multidimensional time series signals set in the time series signal output data setting unit 2 are used to perform learning according to reservoir computing in the first reservoir learning calculation unit 3, which has four input units and two output units, and the coupling constants between the hidden layer and the output layer, which are the learning results, are stored in the first reservoir learning circuit storage unit 4 as the first learning circuit.
[0027] Figure 5 shows an example of a time series of classification vectors set in the classification vector input data setting unit during the learning phase of the first learning in the associative memory device according to Embodiment 1. In Figure 5, the classification vector, which has four elements arranged vertically, unfolds horizontally from left to right in the time direction.
[0028] Figure 6 shows an example of a multidimensional time-series signal set in the time-series signal output data setting unit 2 during the learning phase of the first learning in the associative memory device according to Embodiment 1. In Figure 6, a two-dimensional time-series signal having two elements (x, y) arranged vertically is unfolded horizontally from left to right in the time direction. In Figures 5 and 6, the horizontal axis represents the time direction.
[0029] The classification vector in Figure 5 and the time-series signal in Figure 6 are both divided into four time intervals, designated as (a), (b), (c), and (d). The two-dimensional time-series signals (x, y) defined in each time interval (a), (b), (c), and (d) in Figure 6 are defined by the following equation (1).
[0030]
[0031] On the other hand, in Figure 5, each time interval (a), (b), (c), and (d) is assigned a different classification vector, (0,1,0,1)T, (1,0,1,0)T, (1,0,0,1)T, and (0,1,1,0)T, respectively. Here, T represents the transpose. Note that the correspondence between the classification vectors in Figure 5 and the two-dimensional time series signals in Figure 6 can be changed. For the four types of two-dimensional time series signals in Figure 6, the classification vectors in Figure 5 may be assigned by changing the order of each time interval (a), (b), (c), and (d).
[0032] Next, by using the time series of the classification vector set in the classification vector input data setting unit 1 and the multidimensional time series signal set in the time series signal output data setting unit 2, and performing training with appropriate network initial settings for the Echo State Network of the first reservoir learning calculation unit 3, it is possible to train the system so that when a time series of the classification vector is input, a multidimensional time series signal is output, according to the learning algorithm described in Reference 1 below.
[0033] (Reference 1) Lukosevicius, "A Practical Guide to Applying Echo State Networks", Lecture Notes in Computer Science, vol.7700, pp.659-686, 2012. Note that the fifth 's' and ninth 'c' in the author's name in Reference 1 above have diacritical marks (harch), but since these are characters not specified by the Japan Patent Office, they are written as 's' and 'c'.
[0034] Here, the learning of the Echo State Network only requires learning the coupling constants from the hidden layer to the output layer, and the specific calculation method for this will be explained. First, as shown in Figure 4, regarding the connections that mutually connect the input layer 14, hidden layer 15, and output layer 16 of the Echo State Network possessed by the first reservoir learning calculation unit 3, when Win is the coupling constant matrix from the input layer 14 to the hidden layer 15, Wres is the mutual coupling constant matrix of the internal units of the hidden layer 15, Wfb is the coupling constant matrix from the output layer 16 to the hidden layer 15, u[k] is the input signal to the input layer 14 at discrete time k, x[k] is the state of the internal units of the hidden layer 15, and y[k] is the output signal of the output layer 16, the following relationship (2) holds.
[0035]
[0036] Furthermore, when Wout is the coupling constant matrix from the hidden layer 15 to the output layer 16, X is the matrix obtained by combining u[k] and x[k] from time 1 to T as column vectors, and Ytarget is the matrix obtained by combining the training signal y[k] as a column vector, then X and Ytarget have the relationship shown in equation (3).
[0037]
[0038] Solving equation (2) for Wout using the Ridge Regression described in Reference 1, we find that Ytarget and Wout have the relationship shown in equation (4).
[0039]
[0040] In this way, Wout can be calculated from X, which is composed of the feature vector derived from the training image and the internal state of the hidden layer 15, and Y target, which is composed of the true value vector.
[0041] Next, the application phase of the first learning in the associative memory device according to Embodiment 1 will be described with reference to FIG. 7. FIG. 7 shows the processing operations of the classification vector input unit and the time-series signal output unit when, in the application phase of the first learning in the associative memory device according to Embodiment 1, the result of learning by an Echo State Network such that the input is a time series of classification vectors and the output is a multi-dimensional time series signal is stored and operated in the first reservoir learning circuit storage unit as the first learning circuit. FIG. 7 is an operation block diagram in which the internal circuit of the first reservoir learning circuit storage unit 4 in FIG. 3 is constructed by an Echo State Network. The first reservoir learning circuit storage unit 4 having the first recurrent neural circuit which is a learned Echo State Network circuit receives the input of the classification vector from the classification vector input unit 5 holding the time series of classification vectors, and calculates the multi-dimensional time series signal which is the first output vector using the first learning circuit. Then, the time-series signal output unit 6 reads out the multi-dimensional time series signal from the first reservoir learning circuit storage unit 4 and outputs the multi-dimensional time series signal.
[0042] By designating a specific ID among the learning sequence IDs which are classification vectors, a multi-dimensional time series signal corresponding to the specific ID is output from the associative memory network as a pattern series. Therefore, it is possible to specify which ID among a plurality of learning sequence IDs the pattern series output from the associative memory network corresponds to, and the ID can be made explicit.
[0043] Here, an example of the operation of the first learning in the associative memory device according to Embodiment 1 will be described. FIG. 8 is a diagram showing an example of the operation in the learning phase of the first learning in the associative memory device according to Embodiment 1. FIG. 9 is a diagram showing an example of the operation in the application phase of the first learning in the associative memory device according to Embodiment 1. The time series of classification vectors is represented by a bit pattern of 0 and 1. Also, the multi-dimensional time series signal is represented by moving image frames of numbers such as 0, 1, 2, 9. In FIG. 8, the time series of classification vectors and the multi-dimensional time series signal arranged in the time direction from left to right are shown. Here, the moving image frames of numbers such as 0, 1, 2, 9 refer to the moving image frames published in Reference 2.
[0044] (Reference 2) Y. LeCun, L. Bottou, Y. Bengio, and P. Haffner. "Gradient-based learning applied to document recognition." Proc. of the IEEE, pages 2278-2324, 1998.
[0045] In FIG. 8, the first reservoir learning calculation unit 3 receives the time series 1a of the classification vector set in the classification vector input data setting unit 1 and the multi-dimensional time series signal 2a set in the time series signal output data setting unit 2. The first reservoir learning calculation unit 3 performs learning with an appropriate network initial setting regarding the Echo State Network, and learns so that when the time series 1a of the classification vector is input, a multi-dimensional time series signal 1b is output. In FIG. 8, the time series 1a of the classification vector is the data of the input layer, the multi-dimensional time series signal 2a is the data of the output layer, the first reservoir learning calculation unit 3 has an intermediate layer, and it shows that learning is performed so that information flows in the order of the input layer, the intermediate layer, and the output layer.
[0046] In FIG. 9, the first reservoir learning circuit storage unit 4 having the first learning circuit receives the time series 5a of the classification vector held by the classification vector input unit 5. Then, the first reservoir learning circuit storage unit 4 calculates a multi-dimensional time series signal 6a, which is the first output vector, from the time series 5a of the classification vector using the first learning circuit.
[0047] Figure 10 is a flowchart illustrating the operation of the learning phase of the first learning in the associative memory according to Embodiment 1. First, the classification vector input data setting unit 1 sets the time series of classification vectors as input data (step S1). Next, the time series signal output data setting unit 2 sets the multidimensional time series signal as output data (step S2). Next, the first reservoir learning calculation unit 3 receives the classification vector from the classification vector input data setting unit 1 and the multidimensional time series signal from the time series signal output data setting unit 2. The first reservoir learning calculation unit 3 learns by reservoir computing that a specific classification vector from among multiple different classification vectors corresponds to a specific time series signal from among multiple different time series signals, so that the classification vector becomes the input and the multidimensional time series signal becomes the output, and calculates a first recurrent neural circuit that relates the first input vector and the first output vector (step S3). The first reservoir learning circuit storage unit 4 stores the first recurrent neural circuit calculated by the first reservoir learning calculation unit 3 as the first learning circuit (step S4).
[0048] Figure 11 is a flowchart showing the operation of the first learning application phase in the associative memory device according to Embodiment 1. First, the classification vector input unit 5 holds and inputs the classification vector (step S11). Next, the first reservoir learning circuit storage unit 4 receives the time series of the classification vector from the classification vector input unit 5 and calculates a multidimensional time series signal, which is the first output vector, from the time series of the classification vector using the first learning circuit (step S12). Then, the time series signal output unit 6 reads the multidimensional time series signal from the first reservoir learning circuit storage unit 4 and outputs the multidimensional time series signal (step S13).
[0049] In the configuration of the associative memory device described above, by specifying a particular ID among the learning sequence IDs, which are classification vectors, a multidimensional time-series signal corresponding to that specific ID is output from the associative memory network as a pattern sequence. Therefore, it is possible to identify which of the multiple learning sequence IDs corresponds to the pattern sequence output from the associative memory network, and the ID can be explicitly identified.
[0050] Furthermore, in the configuration of the associative memory described above, a time series of classification vectors composed entirely of the same classification vectors in the time series direction is used as the learning input data, and a multidimensional time series signal is used as the learning output data. Different multidimensional time series signals are associated with different time series of classification vectors, and the time series of classification vectors is set to have the same time length as the time length of the multidimensional time series signal. By learning the learning input data and learning output data according to the learning algorithm of the reservoir computing, it becomes possible to generate and store a recurrent neural circuit that, when a time series of a specific classification vector is input, outputs the multidimensional time series signal that was associated with it during learning. In other words, using Echo State Network, a recurrent neural circuit that has been trained to take a classification vector as input and output a multidimensional time series signal can be calculated as the first learning circuit.
[0051] Furthermore, in the configuration of the associative memory described above, by using a recurrent neural circuit trained according to a reservoir computing learning algorithm, with a time series of classification vectors that correspond one-to-one with each multidimensional time series signal and have the same time length as the multidimensional time series signal, it becomes possible to output all frames of the multidimensional time series signal that were associated during training by inputting the classification vectors into the recurrent neural circuit with a time length shorter than the time length of the multidimensional time series signal.
[0052] Embodiment 2. Figure 12 is a block diagram showing the configuration of each operating unit included in the second learning in the associative memory device according to Embodiment 2 for implementing the present disclosure. In Figure 12, the associative memory device is composed of a time-series signal input data setting unit 7, a classification vector output data setting unit 8, a second learning calculation unit reservoir 9, a second reservoir learning circuit storage unit 10, a time-series signal input unit 11, and a classification vector output unit 12.
[0053] The associative memory device according to Embodiment 2 aims to learn by reservoir computing that, for a certain period of time, a vector composed of the values of a multidimensional time series signal at each time point is set as the second input vector, and for this period of time, the same classification vector is consistently set as the second output vector for a specific multidimensional time series signal that constitutes the second input vector, so that different classification vectors are associated with different multidimensional time series signals.
[0054] The associative memory device according to Embodiment 2, like the associative memory device according to Embodiment 1, has two phases: a learning phase in which a second learning circuit is generated, and an application phase in which the second learning circuit is applied to a real problem, with respect to a processing process described in Echo State Network, which is a discrete-time implementation of reservoir computing.
[0055] Figure 13 is a block diagram showing the configuration of each operating unit included in the learning phase of the second learning in the associative memory device according to Embodiment 2. The associative memory device involved in the learning phase of the second learning is composed of a time-series signal input data setting unit 7, a classification vector output data setting unit 8, a second learning calculation unit reservoir 9, and a second reservoir learning circuit storage unit 10.
[0056] In the learning phase of the second learning process, the time-series signal input data setting unit 7 sets a multidimensional time-series signal as the second input vector, which is the learning input data. The time-series signal input data setting unit 7 sets a vector composed of the values of the time-series signal at each time point over a certain time period as the second input vector, and sets multiple different time-series signals as the second input vectors.
[0057] The classification vector output data setting unit 8 sets the time series of classification vectors as the second output vector, which is the training output data. The classification vector output data setting unit 8 sets the same classification vector over a given time as the second output vector, and sets multiple different classification vectors as second output vectors. In this way, the classification vector output data setting unit 8 sets the time series of classification vectors as output data.
[0058] The second reservoir learning calculation unit 9 learns by reservoir computing so that a multidimensional time series signal is the input and a classification vector is the output, and calculates a second recurrent neural circuit, which is a trained Echo State Network circuit. The second learning circuit is a trained circuit from the second learning. In other words, the second reservoir learning calculation unit 9 learns by reservoir computing so that a specific time series signal from among multiple different time series signals is the input and a classification vector is the output, by associating it with a specific classification vector from among multiple different classification vectors, and calculates a second recurrent neural circuit that relates the second input vector and the second output vector. The second reservoir learning circuit storage unit 10 stores the second recurrent neural circuit calculated by the second reservoir learning calculation unit 9 as the second learning circuit.
[0059] Figure 14 is a block diagram showing the configuration of each operating unit included in the application phase of the second learning in the associative memory device according to Embodiment 2. The associative memory device involved in the application phase of the second learning is composed of a second reservoir learning circuit storage unit 10, a time-series signal input unit 11, and a classification vector output unit 12.
[0060] In the application phase of the second learning, the time-series signal input unit 11 holds and inputs a multidimensional time-series signal. The second reservoir learning circuit storage unit 10 stores the second learning circuit, which is a second recurrent neural circuit, and receives the multidimensional time-series signal from the time-series signal input unit 11 that holds the multidimensional time-series signal. The second learning circuit is used to calculate the time series of the classification vector, which is the second output vector, from the multidimensional time-series signal. The second reservoir learning circuit storage unit 10 stores the second recurrent neural circuit calculated by the second reservoir learning calculation unit 9, inputs the multidimensional time-series signal to the second recurrent neural circuit, and calculates the multidimensional time-series signal from the classification vector using the second recurrent neural circuit. The classification vector output unit 12 reads the time series of the classification vector from the second reservoir learning circuit storage unit 10 and outputs the time series of the classification vector.
[0061] The second reservoir learning circuit storage unit 10 stores the second recurrent neural circuit, inputs a time-series signal to the second recurrent neural circuit, and uses the second recurrent neural circuit to calculate a time-series signal from a classification vector. The second recurrent neural circuit is a circuit calculated to relate the second input vector to the second output vector. It sets a vector composed of the values of the time-series signal at each time point over a certain time length as the second input vector, sets multiple different time-series signals as the second input vectors, sets the same classification vector over a time length as the second output vector, sets multiple different classification vectors as the second output vectors, learns through reservoir computing that the classification vector becomes the input and the time-series signal becomes the output by associating a specific time-series signal from among multiple different time-series signals with a specific classification vector from among multiple different classification vectors, and associates these with each other.
[0062] The associative memory device according to Embodiment 2, similar to the associative memory device according to Embodiment 1, applies the Echo State Network learning algorithm to a three-layer neural network having recursive connections within the hidden layer and between the output layer and the hidden layer during the learning phase, and utilizes the obtained learning circuit during the application phase. In Embodiment 2, the operation of the Echo State Network, which takes a two-dimensional analog value vector (x, y) as input and a four-dimensional classification vector as output, is described. Note that generality is not lost even if the number of dimensions of the input is increased to two or more, and the number of dimensions of the output is increased to four or more.
[0063] First, the learning phase of the second learning in the associative memory device according to Embodiment 2 will be explained using Figures 15, 16, and 17. Figure 15 is a diagram showing the processing operations of the time-series signal input data setting unit, the classification vector output data setting unit, the second reservoir learning calculation unit, and the second reservoir learning circuit storage unit when learning with Echo State Network such that the input is a multidimensional time-series signal and the output is a time-series of classification vectors in the learning phase of the second learning in the associative memory device according to Embodiment 2. Figure 15 shows an operational block constructed using Echo State Network for the internal circuits of the second reservoir learning calculation unit 9 and the second reservoir learning circuit storage unit 10 in Figure 13. Using the two-dimensional time-series signal set in the time-series signal input data setting unit 7 and the time-series of the classification vector set in the classification vector output data setting unit 8, the second reservoir learning calculation unit 9, which has two input units and four output units, performs learning according to reservoir computing, and stores the coupling constants between the hidden layer and the output layer, which are the learning results, as the second learning circuit in the second reservoir learning circuit storage unit 10.
[0064] Figure 16 shows an example of a multidimensional time-series signal to be set in the time-series signal input data setting unit during the learning phase of the second learning in the associative memory device according to Embodiment 2. Figure 16 shows an example of a two-dimensional time-series signal to be set in the time-series signal input data setting unit 7, in which a two-dimensional time-series signal having two elements (x, y) arranged vertically is unfolded horizontally from left to right in the time direction.
[0065] Figure 17 shows an example of a time series of classification vectors set in the classification vector output data setting unit during the learning phase of the second learning in the associative memory device according to Embodiment 2. Figure 17 shows an example of a time series of classification vectors set in the classification vector output data setting unit 8, in which a classification vector having four elements arranged vertically is unfolded horizontally from left to right in the time direction. In Figures 16 and 17, the horizontal axis represents the time direction.
[0066] The input data in Figure 16 and the output data in Figure 17 in Embodiment 2 are obtained by swapping the output data in Figure 6 and the input data in Figure 5, respectively, in Embodiment 1. The Echo State Network in the second reservoir learning calculation unit 9 can calculate the coupling constant matrix Wout from the intermediate layer 15 to the output layer 16 using a learning algorithm similar to that of the associative memory device according to Embodiment 1.
[0067] The application phase of the second learning in the associative memory device according to Embodiment 2 will be explained using Figures 18 and 19. Figure 18 is a diagram showing the processing operation of the time-series signal input unit and the classification vector output unit when the results of learning with Echo State Network so that the input is a multidimensional time-series signal and the output is a time-series classification vector are stored as a second learning circuit in the second reservoir learning circuit storage unit and operated in the application phase of the second learning in the associative memory device according to Embodiment 2. Figure 18 is an operation block constructed by Echo State Network from the internal circuit of the second reservoir learning circuit storage unit 10 in Figure 14. The second reservoir learning circuit storage unit 10, which has a second recurrent neural circuit that is a trained Echo State Network circuit, receives a multidimensional time-series signal input from the time-series signal input unit 11 that holds the multidimensional time-series signal, calculates a classification vector which is the second output vector using the second recurrent neural circuit, and stores it in the classification vector output unit 12.
[0068] Figure 19 shows an example of a time series of classification vectors output from the classification vector output unit during the application phase of the second learning in the associative memory device according to Embodiment 2. In Figure 19, the time series of four analog values of the second output vector output from the classification vector output unit 12 when the two-dimensional time series signal shown in Figure 16 is input to the second reservoir learning circuit storage unit 10 is shown, with the second output vector unfolding from left to right in the time direction. When compared with the output data in Figure 17, which is the ideal output value during learning, errors are superimposed in each time interval (a), (b), (c), and (d), but values close to the ideal output value are output.
[0069] Here, an example of the operation of the second learning phase in the associative memory according to Embodiment 2 will be described. Figure 20 is a diagram showing an example of the operation of the learning phase of the second learning in the associative memory according to Embodiment 2. The time-series signal is represented by video frames of numbers such as 0, 1, 2, and 9. The classification vector is represented by a bit pattern of 0s and 1s. In Figure 20, the time-series and multidimensional time-series signals of the classification vectors are shown arranged from left to right in the time direction.
[0070] In Figure 20, the second reservoir learning calculation unit 9 receives the time-series signal 7a set in the time-series signal input data setting unit 7 and the time-series of the classification vector 8a set in the classification vector output data setting unit 8. The second reservoir learning calculation unit 9 learns with appropriate network initial settings for the Echo State Network and learns to output the time-series of the classification vector 8a when the multidimensional time-series signal 7a is input. In Figure 20, the multidimensional time-series signal 7a is the data of the input layer, the time-series of the classification vector 8a is the data of the output layer, and the second reservoir learning calculation unit 9 has an intermediate layer, and learns so that information flows in the order of input layer, intermediate layer, and output layer.
[0071] Figure 21 shows an example of the operation of the second learning application phase in the associative memory device according to Embodiment 2. In Figure 21, the second reservoir learning circuit storage unit 10, which has a second recurrent neural circuit that is a learned Echo State Network circuit, accepts the input of a multidimensional time series signal 11a held by the time series signal input unit 11. The second reservoir learning circuit storage unit 10 then uses the second recurrent neural circuit to calculate the time series 12a of the classification vector, which is the second output vector.
[0072] Figure 22 is a flowchart illustrating the operation of the learning phase of the second learning in the associative memory according to Embodiment 2. First, the time-series signal input data setting unit 7 sets a multidimensional time-series signal as input data (step S21). Next, the classification vector output data setting unit 8 sets a classification vector as output data (step S22). Next, the second reservoir learning calculation unit 9 receives a multidimensional time-series signal from the time-series signal input data setting unit 7 and a classification vector from the classification vector output data setting unit 8. The second reservoir learning calculation unit 9 associates a specific time-series signal from among multiple different time-series signals with a specific classification vector from among multiple different classification vectors, and learns by reservoir computing so that the multidimensional time-series signal becomes input and the classification vector becomes output, and calculates a second recurrent neural circuit (step S23). The second reservoir learning circuit storage unit 10 stores the second recurrent neural circuit calculated by the second reservoir learning calculation unit 9 as a second learning circuit (step S24).
[0073] Figure 23 is a flowchart showing the operation of the second learning application phase in the associative memory device according to Embodiment 2. First, the time-series signal input unit 11 holds and inputs a multidimensional time-series signal (step S31). Next, the first reservoir learning circuit storage unit 10 receives the multidimensional time-series signal from the time-series signal input unit 11 and uses the second learning circuit to calculate the time series of the classification vector, which is the second output vector, from the multidimensional time-series signal (step S32). Then, the classification vector output unit 12 reads the classification vector from the second reservoir learning circuit storage unit 10, reads the classification vector, and outputs the classification vector (step S33).
[0074] In the configuration of the associative memory described above, a multidimensional time-series signal is used as the input data for learning, and a time-series of classification vectors composed entirely of the same classification vectors in the time-series direction is used as the output data for learning. Different multidimensional time-series signals are associated with different time-series of classification vectors, and the classification vectors are set to have the same time length as the time length of the multidimensional time-series signal. By learning the input and output data for learning according to the learning algorithm of the reservoir computing, it becomes possible to generate and store a recurrent neural circuit that, when a specific multidimensional time-series signal is input, outputs the time-series of the classification vectors that were associated during learning. In other words, using Echo State Network, a recurrent neural circuit that has been trained to take a multidimensional time-series signal as input and output a classification vector can be calculated as a second learning circuit.
[0075] Furthermore, in the configuration of the associative memory described above, by using a recurrent neural circuit trained according to a reservoir computing learning algorithm, with a multidimensional time series signal to be learned and a time series of classification vectors that correspond one-to-one with each multidimensional time series signal and have the same time length as the multidimensional time series signal, it becomes possible to output all frames of the classification vectors that were assigned during training when a multidimensional time series signal is input to the recurrent neural circuit with a time length shorter than the time length of the classification vector.
[0076] Embodiment 3. Embodiment 3 relates to a method for dealing with the situation when the analog value output from the classification vector output unit deviates significantly from the ideal output value set in the classification vector output data setting unit 8 during learning.
[0077] The operation block of the associative memory device according to Embodiment 3 is the same as the operation block of the associative memory device according to Embodiment 2. As described in Embodiment 2, the second reservoir learning calculation unit 9 calculates the second recurrent neural circuit, which is a learned Echo State Network circuit, and the second reservoir learning circuit storage unit 10 stores the second recurrent neural circuit as the second learning circuit. Here, when the same time series signal as the two-dimensional time series signal set in the time series signal input data setting unit 7 is input to the time series signal input unit 11, the analog value output from the classification vector output unit 12 may deviate significantly from the ideal output value set in the classification vector output data setting unit 8 during learning. In other words, learning may not be successful, and this operation will be explained.
[0078] In Embodiment 3, the operation of the Echo State Network, which takes a two-dimensional analog value vector (x, y) as input and outputs a four-dimensional classification vector, will be described, similar to Embodiment 2. First, the learning phase of the associative memory device according to Embodiment 3 will be described using Figures 24 and 25. Figure 24 is a diagram showing an example of a multidimensional time-series signal (here, two-dimensional) set in the time-series signal input data setting unit 7 during the learning phase of the second learning in the associative memory device according to Embodiment 3. Figure 25 is a diagram showing an example of a time-series of a classification vector set in the classification vector output data setting unit during the learning phase of the second learning in the associative memory device according to Embodiment 3. The temporal expansion is the same as in Figures 16 and 17. When both Figure 24 and Figure 25 are divided into four time intervals, and each time interval is designated as (a), (b), (c), and (d), the two-dimensional time-series signal (x, y) defined in each time interval (a), (b), (c), and (d) of Figure 24 is defined by the following equation (5).
[0079]
[0080] On the other hand, in Figure 25, each time interval (a), (b), (c), and (d) is assigned a different classification vector (0,1,0,1)T, (1,0,1,0)T, (1,0,0,1)T, and (0,1,1,0)T, respectively. Here, T represents the transpose. The second reservoir learning calculation unit 9 takes these multidimensional time series signals as input and learns by reservoir computing to output a time series of classification vectors. The second reservoir learning calculation unit 9 stores the second learning circuit obtained as a result of the learning as an Echo State Network circuit in the second reservoir learning circuit storage unit 10.
[0081] Next, the application phase in the associative memory device according to Embodiment 3 will be explained using Figure 26. Figure 26 is a diagram showing an example of the time series of the classification vector output from the classification vector output unit 12 in the application phase of the second learning in the associative memory device according to Embodiment 3. Figure 26 shows the time series of four analog values of the second output vector output from the classification vector output unit 12 when the two-dimensional time series signal shown in Figure 24 is input to the second reservoir learning circuit storage unit 10, and the second output vector is expanded with the time direction from left to right. Compared with the classification vector shown in Figure 25, which is the ideal output value when learned, in each time interval (b), (c), and (d), the output value is close to the ideal output value, although errors are superimposed, whereas in time interval (a), there is a large deviation from the ideal output value (0,1,0,1)T, indicating that learning has failed.
[0082] Here, as an example of a means to resolve the aforementioned learning failure, we will describe the learning phase in the associative memory device according to Embodiment 3, where the time-series signal input data setting unit 7 superimposes the set multidimensional time-series signal onto a periodic wave to use as the input signal. The time-series signal input data setting unit 7 superimposes the time-series signal onto a periodic wave to use as the input signal. Figure 27 shows an example of a multidimensional time-series signal superimposed onto a periodic wave to be set in the time-series signal input data setting unit during the learning phase of the second learning in the associative memory device according to Embodiment 3. In Figure 27, the two-dimensional time-series signals in each time interval (a), (b), (c), and (d) are obtained by multiplying both x and y values by cosθ in equation (5) that defines each time interval (a), (b), (c), and (d) in Figure 24. The time series of the classification vector set in the classification vector input data setting unit 1 is the same as that shown in Figure 25.
[0083] Next, using Figure 28, we will explain the application phase in the associative memory device according to Embodiment 3, where the time-series signal input unit 11 superimposes a set multidimensional time-series signal onto a periodic wave to obtain the input signal.
[0084] The time-series signal input unit 11 superimposes the time-series signal onto a periodic wave to obtain the input signal. Figure 28 is a diagram showing an example of the time series of the classification vector output from the classification vector output unit in the application phase of the second learning in the associative memory device according to Embodiment 3. Figure 28 shows the time series of four analog values output from the classification vector output unit 12 when the two-dimensional time-series signal shown in Figure 27 is input to the second reservoir learning circuit storage unit 10, and, as with Figure 26, the time direction is from left to right. Compared with the classification vector shown in Figure 25, which is the ideal output value when trained, errors are superimposed in each time interval (a), (b), (c), and (d), but values close to the ideal output value are output. As a method for selecting the periodic wave, one example is to superimpose multiple multi-dimensional time-series signals to be trained onto various periodic waves and select the periodic wave from which training was successful.
[0085] As described above, by using the Echo State Network to train a recurrent neural circuit to take a multidimensional time-series signal as input and output a classification vector, and by superimposing the multidimensional time-series signal input to the time-series signal input data setting unit onto a periodic wave, the feature space of the multidimensional time-series signal to be identified can be made higher dimensional, thereby expanding the range of multidimensional time-series signals to which the training of the second learning circuit can be applied.
[0086] Embodiment 4. In Embodiment 4, the second learning circuit described in Embodiment 2 and the first learning circuit described in Embodiment 1 are linked, and a classification vector output stability analysis unit is interposed between the two circuits. This describes an operation in which a portion of the sequence of a multidimensional time series signal is input, and the entire sequence of a multidimensional time series signal is output.
[0087] Figure 29 is a block diagram showing the configuration of each operating unit in the associative memory device according to Embodiment 4. In Figure 29, the associative memory device is composed of a first reservoir learning circuit storage unit 4, a classification vector input unit 5, a time series signal output unit 6, a second reservoir learning circuit storage unit 10, a time series signal input unit 11, a classification vector output unit 12, and a classification vector output stability analysis unit 13.
[0088] First, the time-series signal input unit 11 holds and inputs a multidimensional time-series signal. The second reservoir learning circuit storage unit 10 receives the multidimensional time-series signal as input. The second reservoir learning circuit storage unit 10 stores the second learning circuit, which is a second recurrent neural circuit. It receives the multidimensional time-series signal from the time-series signal input unit 11, which holds the multidimensional time-series signal, and uses the second learning circuit to calculate the time series of the classification vector, which is the second output vector, from the multidimensional time-series signal. The classification vector output unit 12 reads out the time series of the classification vector from the second reservoir learning circuit storage unit 10.
[0089] The classification vector output stability analysis unit 13 takes the time series of classification vectors, which are the output of the classification vector output unit 12, as input, analyzes the time series of classification vectors in the time direction, and inputs the stabilized time series of classification vectors to the classification vector input unit 5.
[0090] The classification vector input unit 5 holds and inputs the time series of the classification vector stabilized in the classification vector output stability analysis unit 13. The first reservoir learning circuit storage unit 4 receives the time series of the classification vector as input. The first reservoir learning circuit storage unit 4 stores the first learning circuit, which is the first recurrent neural circuit, and receives the time series of the classification vector from the classification vector input unit 5 that holds the time series of the classification vector, and uses the first learning circuit to calculate a multidimensional time series signal, which is the first output vector, from the time series of the classification vector. Next, the time series signal output unit 6 reads the multidimensional time series signal from the first reservoir learning circuit storage unit 4. In this way, the multidimensional time series signal can be reproduced.
[0091] Here, an example of operation when the second learning circuit and the first learning circuit are linked in the associative memory device according to Embodiment 4 will be described. Figure 30 is a diagram showing an example of operation when the application phase of the second learning and the application phase of the first learning are combined in the associative memory device according to Embodiment 4. The multidimensional time series signal is represented by video frames of numbers such as 0, 1, 2, and 9. The classification vector is represented by a bit pattern of 0s and 1s. In Figure 30, the time series of the classification vector and the multidimensional time series signal are shown arranged in the time direction from left to right.
[0092] In Figure 30, the second reservoir learning circuit storage unit 10, which has a second recurrent neural circuit that is a trained Echo State Network circuit, accepts the input of a multidimensional time-series signal 11a held by the time-series signal input unit 11. The second reservoir learning circuit storage unit 10 then uses the second recurrent neural circuit to calculate the time-series 12a of the classification vector, which is the second output vector. The classification vector output stability analysis unit 13 takes the time-series 12a of the classification vector as input, analyzes the classification vector in the time direction, and inputs the stabilized classification vector to the classification vector input unit 5. The first reservoir learning circuit storage unit 4, which has a first recurrent neural circuit that is a trained Echo State Network circuit, accepts the input of the time-series of the classification vector held by the classification vector input unit 5. The first reservoir learning circuit storage unit 4 uses the first recurrent neural circuit to calculate the multidimensional time-series signal 6a, which is the first output vector.
[0093] Figure 31 is a flowchart showing the combined operation of the second learning application phase and the first learning application phase in the associative memory device according to Embodiment 4. First, the time series signal input unit 11 holds and inputs a multidimensional time series signal (step S41). Next, the first reservoir learning circuit storage unit 10 receives the multidimensional time series signal and uses the second learning circuit to calculate the time series of the classification vector, which is the second output vector, from the multidimensional time series signal (step S42). Next, the classification vector output unit 12 reads the classification vector from the second reservoir learning circuit storage unit 10 and outputs the classification vector to the classification vector output stability analysis unit 13 (step S43). Next, the classification vector output stability analysis unit 13 inputs the classification vector, analyzes the classification vector in the time direction, and inputs the stabilized classification vector to the classification vector input unit 5 (step S44). The classification vector input unit 5 holds and inputs the classification vector (step S45). Next, the first reservoir learning circuit storage unit 4 receives the time series of classification vectors from the classification vector input unit 5 and calculates a multidimensional time series signal, which is the second output vector, from the time series of classification vectors using the first learning circuit (step S46). Next, the time series signal output unit 6 reads the multidimensional time series signal from the first reservoir learning circuit storage unit 4 and outputs the multidimensional time series signal (step S47).
[0094] The operation of the classification vector output stability analysis unit 13 in Embodiment 4, when it is intervened between the second learning circuit and the first learning circuit, according to the block diagram in Figure 29, will be explained using flowcharts in Figures 32, 33, and 34. Figure 32 is a flowchart showing the operation of the classification vector output stability analysis unit in the associative memory device according to Embodiment 4. First, the classification vector output stability analysis unit 13 acquires the second output vector of the classification vector output unit 12 (step S51). The classification vector output stability analysis unit 13 determines whether each value of the acquired second output vector is 0 or 1, including past history (step S52). The classification vector output stability analysis unit 13 saves the second output vector with determined values as an intermediate vector (step S53). The classification vector output stability analysis unit 13 determines which classification vector the determined intermediate vector is closest to, including past history (step S54). The classification vector output stability analysis unit 13 saves the closest classification vector as a determination vector (step S55). The classification vector output stability analysis unit 13 inputs the saved determination vector to the classification vector input unit 5 (step S56), and the processing of the classification vector output stability analysis unit 13 is completed.
[0095] Next, a specific example of the operation in step S52 of Figure 32 for determining the intermediate vector will be described as operation A. Figure 33 is a flowchart showing the operation of operation A of the classification vector output stability analysis unit in the associative memory device according to Embodiment 4. The operation flow in Figure 33 is a specific example of the operation to calculate the final determined value V(i)out from the input value V(i) when each element of the second output vector V obtained in step S52 of the flowchart in Figure 32 is set to V(i) (i = 0, 1, 2, 3).
[0096] First, the classification vector output stability analysis unit 13 acquires N time series data for V(i) immediately preceding the current time (step S61). The classification vector output stability analysis unit 13 calculates the median of the N time series data and sets it as Vmed (step S62). Furthermore, the classification vector output stability analysis unit 13 acquires the current time data Vcurr (step S63). Next, the classification vector output stability analysis unit 13 determines whether Vcurr is greater than 1 / 2 (step S64). If the result of the determination in step S64 is No, the classification vector output stability analysis unit 13 determines whether the absolute value of (Vcurr-0) is less than the threshold θ (step S65). Also, if the result of the determination in step S64 is Yes, the classification vector output stability analysis unit 13 determines whether the absolute value of (1-Vcurr) is less than the threshold θ (step S66).
[0097] If the result of step S65 is Yes, the classification vector output stability analysis unit 13 sets V(i)out to 0 (step S67). If the result of step S65 is No, the classification vector output stability analysis unit 13 sets V(i)out to Vcurr (step S68). If the result of step S66 is Yes, the classification vector output stability analysis unit 13 sets V(i)out to 1 (step S69). If the result of step S66 is No, the classification vector output stability analysis unit 13 sets V(i)out to Vcurr (step S70). After steps S64, S65, and S66, the value of V(i)out is determined (step S71). The threshold θ is set to a value close to 0, for example, 0.1, as an example, but is not limited to this.
[0098] Finally, a specific example of the operation to obtain the determined judgment vector Uout from the intermediate vector generated as a time series will be described as operation B. Figure 34 is a flowchart showing the operation of operation B of the classification vector output stability analysis unit in the associative memory device according to Embodiment 4.
[0099] First, the classification vector output stability analysis unit 13 obtains the M intermediate vectors immediately preceding the current time (step S81). The classification vector output stability analysis unit 13 calculates the vector that appears most frequently among the M intermediate vectors and sets it as Ufrec (step S82). Furthermore, the classification vector output stability analysis unit 13 obtains the intermediate vector Ucurr at the current time (step S83). Next, the classification vector output stability analysis unit 13 determines whether the intermediate vector Ucurr matches one of the four classification vectors set during training (step S84).
[0100] If the result of step S84 is No, the classification vector output stability analysis unit 13 calculates the distance (sum of the differences in each bit) between the classification vector Upox, which is closest to Ucurr, and Ucurr, and determines whether that distance is less than the threshold d (step S85). If the result of step S84 is Yes, the classification vector output stability analysis unit 13 sets the classification vector that matches Ucurr as Uequal (step S86). Then, the classification vector output stability analysis unit 13 sets Uequal to Uout (step S87).
[0101] If the result of step S85 is Yes, the classification vector output stability analysis unit 13 sets Uprox to Uout (step S88). If the result of step S85 is No, the classification vector output stability analysis unit 13 sets Ufrequout to Uout (step S89). After steps S84 and S85, the determination vector Uout is finalized (step S90).
[0102] As described above, by using the Echo State Network, a recurrent neural circuit trained to take a classification vector as input and output a multidimensional time-series signal is designated as the first learning circuit, and a recurrent neural circuit trained to take a multidimensional time-series signal as input and output a classification vector is designated as the second learning circuit. By connecting the second and first learning circuits and placing a classification vector output stability analysis unit between the two circuits to analyze the output stability of the classification vector, it becomes possible to output the entire sequence of the multidimensional time-series signal without specifying an address on the memory device, simply by presenting a part of the sequence of the multidimensional time-series signal, regardless of whether it is at the beginning, middle, or end of the sequence.
[0103] Here, we will describe the hardware configuration of the associative memory device. Each function of the associative memory device can be realized by a processing circuit. The processing circuit comprises at least one processor and at least one memory.
[0104] Figure 35 shows the hardware configuration of the associative memory device according to Embodiments 1 to 4. The associative memory device can be realized by the control circuit shown in Figure 35(a), namely the processor 51 and memory 52. Examples of the processor 51 include a CPU, central processing unit, processing unit, arithmetic unit, microprocessor, microcomputer, processor (also called a DSP (Digital Signal Processor)), or system LSI (Large Scale Integration). The memory 52 is, for example, a non-volatile or volatile semiconductor memory such as RAM (Random Access Memory), ROM (Read Only Memory), flash memory, EPROM (Erasable Programmable Read Only Memory), EEPROM (Registered Trademark) (Electrically Erasable Programmable Read-Only Memory), a magnetic disk, a flexible disk, an optical disk, a compact disk, a minidisc, or a DVD (Digital Versatile Disc).
[0105] The associative memory device is implemented when the processor 51 reads and executes a program stored in memory 52 that performs the operations of the associative memory device. This program instructs the computer to execute the procedures or methods of the associative memory device. The programs executed by the associative memory device are loaded into main memory and generated in main memory. Memory 52 stores memory patterns, retrieval patterns, etc. Memory 52 is also used as temporary memory when the processor 51 performs various processes.
[0106] The program executed by processor 51 may be provided as a computer program product, stored in an installable or executable file format on a computer-readable storage medium. Alternatively, the program executed by processor 51 may be provided to an associative storage device via a network such as the Internet.
[0107] Alternatively, the associative memory device may be implemented using dedicated hardware. Furthermore, some of the functions of the associative memory device may be implemented using dedicated hardware, while others are implemented using software or firmware.
[0108] Furthermore, the associative memory device may be implemented by a dedicated processing circuit 53 shown in Figure 35(b). At least a part of the associative memory device may be implemented by the processing circuit 53. The processing circuit 53 is dedicated hardware. The processing circuit 53 may be, for example, a single circuit, a composite circuit, a programmed processor, a parallel programmed processor, an ASIC (Application Specific Integrated Circuit), an FPGA (Field Programmable Gate Array), or a combination thereof. Some of the functions of the associative memory device may be implemented by software or firmware, and the remaining part may be implemented by dedicated hardware.
[0109] 1. Classification vector input data setting unit, 2. Time series signal output data setting unit, 3. First reservoir learning calculation unit, 4. First reservoir learning circuit storage unit, 5. Classification vector input unit, 6. Time series signal output unit, 7. Time series signal input data setting unit, 8. Classification vector output data setting unit, 9. Second reservoir learning calculation unit, 10. Second reservoir learning circuit storage unit, 11. Time series signal input unit, 12. Classification vector output unit, 13. Classification vector output stability analysis unit, 14. Input layer, 15. Intermediate layer, 16. Output layer.
Claims
1. An associative memory device comprising: a classification vector input data setting unit that sets the same classification vector as a first input vector for a certain time period and sets a plurality of different classification vectors as the first input vectors; a time series signal output data setting unit that sets a vector composed of the values of a time series signal at each time point for the given time period as a first output vector and sets a plurality of different time series signals as the first output vectors; a first reservoir learning calculation unit that learns by reservoir computing to associate a specific classification vector from a plurality of different classification vectors with a specific time series signal from a plurality of different time series signals, so that the classification vector becomes the input and the time series signal becomes the output, and calculates a first recurrent neural circuit that relates the first input vector and the first output vector; and a first reservoir learning circuit storage unit that stores the first recurrent neural circuit.
2. An associative memory device comprising: a classification vector input unit for holding and inputting classification vectors; a first reservoir learning circuit storage unit for learning by reservoir computing that a specific classification vector from among the multiple different classification vectors is input and the time series signal is output, learning that a specific classification vector from among the multiple different classification vectors is input and the time series signal is output, and storing a first recurrent neural circuit calculated to relate the first input vector and the first output vector; inputting the classification vector to the first recurrent neural circuit and calculating the time series signal from the classification vector using the first recurrent neural circuit; and a time series signal output unit for reading the time series signal from the first reservoir learning circuit storage unit.
3. An associative memory device comprising: a time-series signal input data setting unit that sets a vector composed of the values of a time-series signal at each time point over a certain time length as a second input vector, and sets a plurality of different time-series signals as the second input vector; a classification vector output data setting unit that sets the same classification vector over the time length as a second output vector, and sets a plurality of different classification vectors as the second output vectors; a second reservoir learning calculation unit that learns by reservoir computing to associate a specific time-series signal from a plurality of different time-series signals with a specific classification vector from a plurality of different classification vectors, so that the time-series signal becomes the input and the classification vector becomes the output, and calculates a second recurrent neural circuit that relates the second input vector and the second output vector; and a second reservoir learning circuit storage unit that stores the second recurrent neural circuit.
4. An associative memory device comprising: a time-series signal input unit for holding and inputting time-series signals; a second reservoir learning circuit storage unit for learning by reservoir computing that a specific time-series signal from among the multiple different time-series signals is associated with a specific classification vector from among the multiple different classification vectors, and that the classification vector is input and the time-series signal is output; a classification vector output unit for reading the classification vector from the second reservoir learning circuit storage unit; and a second reservoir learning circuit storage unit for learning by reservoir computing that a specific time-series signal from among the multiple different time-series signals is associated with a specific classification vector from among the multiple different classification vectors, and that the classification vector is input and the time-series signal is output; and a second reservoir learning circuit storage unit for learning by reservoir computing that a specific time-series signal from among the multiple different time-series signals is associated with a specific classification vector from among the multiple different classification vectors, and that the second reservoir learning circuit is calculated to relate the second input vector and the second output vector; and a classification vector output unit for reading the classification vector from the second reservoir learning circuit storage unit.
5. A classification vector output stability analysis unit that receives the classification vector output from the classification vector output unit, analyzes the classification vector in the time direction, and stabilizes the classification vector; a classification vector input unit that receives the classification vector stabilized by the classification vector output stability analysis unit; a first reservoir learning circuit storage unit that sets the same classification vector over the time length as the first input vector, sets a plurality of different classification vectors as the first input vectors, sets a vector composed of the values of the time series signal at each time point over the time length as the first output vector, sets a plurality of different time series signals as the first output vectors, learns by reservoir computing that a specific classification vector among the plurality of different classification vectors corresponds to a specific time series signal among the plurality of different time series signals, stores a first recurrent neural circuit calculated to relate the first input vector and the first output vector, inputs the classification vector to the first recurrent neural circuit, and calculates the time series signal from the classification vector using the first recurrent neural circuit; The associative memory device according to claim 4, further comprising: a time-series signal output unit that reads the time-series signal from the first reservoir learning circuit storage unit.
6. The associative memory device according to claim 3, characterized in that the time-series signal input data setting unit superimposes the time-series signal onto a periodic wave to obtain an input signal.
7. The associative memory device according to claim 4 or 5, characterized in that the time-series signal input unit superimposes the time-series signal onto a periodic wave to obtain the input signal.
8. An associative memory method characterized by: holding and inputting classification vectors; setting the same classification vector as a first input vector for a certain time length; setting a plurality of different classification vectors as the first input vectors; setting a vector composed of the values of a time series signal at each time point for the given time length as a first output vector; setting a plurality of different time series signals as the first output vectors; learning by reservoir computing to associate a specific classification vector from the plurality of different classification vectors with a specific time series signal from the plurality of different time series signals, so that the classification vector becomes input and the time series signal becomes output; storing a first recurrent neural circuit calculated to relate the first input vector and the first output vector; inputting the classification vector into the first recurrent neural circuit; calculating the time series signal from the classification vector using the first recurrent neural circuit; and reading out the time series signal.
9. An associative memory method characterized by: holding and inputting a time-series signal; setting a vector composed of the values of the time-series signal at each time point over a certain time period as a second input vector; setting multiple different time-series signals as the second input vectors; setting the same classification vector over the time period as a second output vector; setting multiple different classification vectors as the second output vectors; learning by reservoir computing to associate a specific time-series signal from among the multiple different time-series signals with a specific classification vector from among the multiple different classification vectors, so that the classification vector becomes the input and the time-series signal becomes the output; storing a second recurrent neural circuit calculated to relate the second input vector and the second output vector; inputting the time-series signal into the second recurrent neural circuit; calculating the time-series signal from the classification vector using the second recurrent neural circuit; and reading out the classification vector.
Citation Information
Patent Citations
Associative memory device
WO2022269780A1
Nucleic acid molecule network processing device and nucleic acid molecule network processing method
WO2024057473A1