KR102251961B1 - Method and apparatus of bidirectional hierarchical temporal memory for bidirectional prediction - Google Patents
Method and apparatus of bidirectional hierarchical temporal memory for bidirectional prediction Download PDFInfo
- Publication number
- KR102251961B1 KR102251961B1 KR1020190004942A KR20190004942A KR102251961B1 KR 102251961 B1 KR102251961 B1 KR 102251961B1 KR 1020190004942 A KR1020190004942 A KR 1020190004942A KR 20190004942 A KR20190004942 A KR 20190004942A KR 102251961 B1 KR102251961 B1 KR 102251961B1
- Authority
- KR
- South Korea
- Prior art keywords
- data
- cell
- temporal memory
- hierarchical temporal
- bidirectional
- Prior art date
Links
Images
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06N—COMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
- G06N3/00—Computing arrangements based on biological models
- G06N3/02—Neural networks
- G06N3/06—Physical realisation, i.e. hardware implementation of neural networks, neurons or parts of neurons
- G06N3/063—Physical realisation, i.e. hardware implementation of neural networks, neurons or parts of neurons using electronic means
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06N—COMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
- G06N3/00—Computing arrangements based on biological models
- G06N3/02—Neural networks
- G06N3/08—Learning methods
-
- G—PHYSICS
- G11—INFORMATION STORAGE
- G11C—STATIC STORES
- G11C11/00—Digital stores characterised by the use of particular electric or magnetic storage elements; Storage elements therefor
- G11C11/54—Digital stores characterised by the use of particular electric or magnetic storage elements; Storage elements therefor using elements simulating biological cells, e.g. neuron
Abstract
다양한 실시예들에 따른 양방향 예측이 가능한 양방향 계층형 시간적 메모리 방법 및 장치는, 입력되는 데이터를 학습하고, 학습된 데이터에 기반하여, 시간의 흐름에 따른 제 1 방향 또는 제 1 방향에 반대되는 제 2 방향 중 적어도 어느 하나의 데이터를 예측하도록 구성될 수 있다. A bidirectional hierarchical temporal memory method and apparatus capable of bidirectional prediction according to various embodiments, learns input data and, based on the learned data, provides a first direction or a first direction opposite to the first direction according to time. It may be configured to predict data in at least one of the two directions.
Description
다양한 실시예들은 양방향 예측이 가능한 양방향 계층형 시간적 메모리 방법 및 장치에 관한 것이다. Various embodiments relate to a method and apparatus for a bidirectional hierarchical temporal memory capable of bidirectional prediction.
계층형 시간적 메모리(hierarchical temporal memory; HTM)는 일종의 인공 신경망(artificial neural network)으로, 인간의 생물학적 뉴런을 기반으로 하는 셀(cell) 연결을 기본 구성으로 한다. 이 때 뇌의 신피질에서 뉴런 구조를 기반으로, 계층형 시간적 메모리의 셀 구조가 모델링된다. 계층형 시간적 메모리에 따르면, 데이터 패턴들이 시간을 기반으로 학습되며, 학습된 데이터 패턴들로부터 미래의 데이터 패턴이 예측된다. 이 때 데이터 패턴들이 셀 구조를 기반으로 학습되며, 미래의 데이터 패턴이 셀 구조를 기반으로 예측될 수 있다. Hierarchical temporal memory (HTM) is a kind of artificial neural network, and it is based on cell connection based on human biological neurons. At this time, the cell structure of hierarchical temporal memory is modeled based on the neuron structure in the brain's neocortex. According to the hierarchical temporal memory, data patterns are learned based on time, and future data patterns are predicted from the learned data patterns. At this time, data patterns are learned based on the cell structure, and future data patterns can be predicted based on the cell structure.
그런데, 상기와 같은 계층형 시간적 메모리는 미래의 데이터 패턴을 예측하는 데 이용될 뿐이다. 계층형 시간적 메모리에 따르면, 학습되지 않은 과거의 데이터 패턴은 예측될 수 없다. 따라서, 계층형 시간적 메모리에 기반하여, 미래의 데이터 패턴 뿐 아니라 과거의 데이터 패턴을 예측할 수 있는 방안이 요구된다. However, the hierarchical temporal memory as described above is only used to predict future data patterns. According to hierarchical temporal memory, patterns of data in the past that have not been learned cannot be predicted. Accordingly, there is a need for a method capable of predicting not only future data patterns but also past data patterns based on a hierarchical temporal memory.
다양한 실시예들에 따른 양방향 예측이 가능한 양방향 계층형 시간적 메모리 방법은, 입력되는 데이터를 학습하는 동작, 및 상기 학습된 데이터에 기반하여, 시간의 흐름에 따른 제 1 방향에 반대되는 제 2 방향의 데이터를 예측하는 동작을 포함할 수 있다. A bidirectional hierarchical temporal memory method capable of bidirectional prediction according to various embodiments includes an operation of learning input data, and a second direction opposite to the first direction according to the passage of time based on the learned data. It may include an operation of predicting data.
다양한 실시예들에 따른 양방향 예측이 가능한 양방향 계층형 시간적 메모리 장치는, 입력되는 데이터를 검출하는 인코더, 및 상기 검출된 데이터를 학습하고, 상기 학습된 데이터에 기반하여, 시간의 흐름에 따른 제 1 방향에 반대되는 제 2 방향의 데이터를 예측하는 예측기를 포함할 수 있다. A bidirectional hierarchical temporal memory device capable of bidirectional prediction according to various embodiments includes an encoder that detects input data, and learns the detected data, and based on the learned data, a first according to the passage of time. A predictor for predicting data in a second direction opposite to the direction may be included.
다양한 실시예들에 따르면, 양방향 계층형 시간적 메모리 장치가 학습된 데이터에 기반하여, 과거의 데이터를 예측할 수 있다. 즉 양방향 계층형 시간적 메모리 장치가 학습된 데이터에 기반하여, 미래의 데이터 뿐 아니라 과거의 데이터도 예측할 수 있다. According to various embodiments, the bidirectional hierarchical temporal memory device may predict past data based on learned data. That is, the bidirectional hierarchical temporal memory device can predict not only future data but also past data based on the learned data.
도 1은 다양한 실시예들에 따른 양방향 계층형 시간적 메모리를 위한 셀 구조를 도시하는 도면이다.
도 2는 다양한 실시예들에 따른 양방향 계층형 시간적 메모리 장치를 도시하는 도면이다.
도 3a 및 도 3b는 다양한 실시예들에 따른 양방향 시간적 메모리 장치의 양 방향 예측 동작을 설명하기 위한 도면들이다.
도 4는 다양한 실시예들에 따른 양방향 계층형 시간적 메모리 장치의 동작 방법을 도시하는 도면이다.
도 5는 도 4의 제 1 방향의 데이터 예측 동작을 도시하는 도면이다.
도 6 내지 도 11은 도 4의 제 1 방향의 데이터 예측 동작을 설명하기 위한 도면들이다.
도 12는 도 4의 제 2 방향의 데이터 예측 동작을 도시하는 도면이다.
도 13 내지 도 16은 도 4의 제 2 방향의 데이터 예측 동작을 설명하기 위한 도면들이다. 1 is a diagram illustrating a cell structure for a bidirectional hierarchical temporal memory according to various embodiments.
2 is a diagram illustrating a bidirectional hierarchical temporal memory device according to various embodiments.
3A and 3B are diagrams for explaining a bidirectional prediction operation of a bidirectional temporal memory device according to various embodiments.
4 is a diagram illustrating a method of operating a bidirectional hierarchical temporal memory device according to various embodiments.
5 is a diagram illustrating a data prediction operation in the first direction of FIG. 4.
6 to 11 are diagrams for explaining a data prediction operation in the first direction of FIG. 4.
12 is a diagram illustrating a data prediction operation in the second direction of FIG. 4.
13 to 16 are diagrams for explaining a data prediction operation in the second direction of FIG. 4.
이하, 본 문서의 다양한 실시예들이 첨부된 도면을 참조하여 설명된다. Hereinafter, various embodiments of the present document will be described with reference to the accompanying drawings.
본 문서의 다양한 실시예들 및 이에 사용된 용어들은 본 문서에 기재된 기술을 특정한 실시 형태에 대해 한정하려는 것이 아니며, 해당 실시 예의 다양한 변경, 균등물, 및/또는 대체물을 포함하는 것으로 이해되어야 한다. 도면의 설명과 관련하여, 유사한 구성요소에 대해서는 유사한 참조 부호가 사용될 수 있다. 단수의 표현은 문맥상 명백하게 다르게 뜻하지 않는 한, 복수의 표현을 포함할 수 있다. 본 문서에서, "A 또는 B", "A 및/또는 B 중 적어도 하나", "A, B 또는 C" 또는 "A, B 및/또는 C 중 적어도 하나" 등의 표현은 함께 나열된 항목들의 모든 가능한 조합을 포함할 수 있다. "제 1", "제 2", "첫째" 또는 "둘째" 등의 표현들은 해당 구성요소들을, 순서 또는 중요도에 상관없이 수식할 수 있고, 한 구성요소를 다른 구성요소와 구분하기 위해 사용될 뿐 해당 구성요소들을 한정하지 않는다. 어떤(예: 제 1) 구성요소가 다른(예: 제 2) 구성요소에 "(기능적으로 또는 통신적으로) 연결되어" 있다거나 "접속되어" 있다고 언급된 때에는, 상기 어떤 구성요소가 상기 다른 구성요소에 직접적으로 연결되거나, 다른 구성요소(예: 제 3 구성요소)를 통하여 연결될 수 있다.Various embodiments of the present document and terms used therein are not intended to limit the technology described in this document to a specific embodiment, and should be understood to include various modifications, equivalents, and/or substitutes of the corresponding embodiment. In connection with the description of the drawings, similar reference numerals may be used for similar elements. Singular expressions may include plural expressions unless the context clearly indicates otherwise. In this document, expressions such as "A or B", "at least one of A and/or B", "A, B or C" or "at least one of A, B and/or C" are all of the items listed together. It can include possible combinations. Expressions such as "first", "second", "first" or "second" can modify the corresponding elements regardless of their order or importance, and are only used to distinguish one element from another. It does not limit the components. When any (eg, first) component is referred to as being “(functionally or communicatively) connected” or “connected” to another (eg, second) component, the component is It may be directly connected to the component, or may be connected through another component (eg, a third component).
본 문서에서 사용된 용어 "모듈"은 하드웨어, 소프트웨어 또는 펌웨어로 구성된 유닛을 포함하며, 예를 들면, 로직, 논리 블록, 부품, 또는 회로 등의 용어와 상호 호환적으로 사용될 수 있다. 모듈은, 일체로 구성된 부품 또는 하나 또는 그 이상의 기능을 수행하는 최소 단위 또는 그 일부가 될 수 있다. 예를 들면, 모듈은 ASIC(application-specific integrated circuit)으로 구성될 수 있다. The term "module" used in this document includes a unit composed of hardware, software, or firmware, and may be used interchangeably with terms such as, for example, logic, logic blocks, parts, or circuits. The module may be an integrally configured component or a minimum unit that performs one or more functions, or a part thereof. For example, the module may be configured as an application-specific integrated circuit (ASIC).
도 1은 다양한 실시예들에 따른 양방향 계층형 시간적 메모리를 위한 셀 구조를 도시하는 도면이다. 1 is a diagram illustrating a cell structure for a bidirectional hierarchical temporal memory according to various embodiments.
도 1을 참조하면, 다양한 데이터 패턴들을 구현하기 위한 셀 구조가 정의될 수 있다. 셀 구조에 따르면, 데이터 패턴들을 표현하기위한 다수 개의 셀(100)들이 컬럼 디멘션(column dimension)(101)과 셀 디멘션(cell deimention)(103)에 배열될 수 있다. 셀(100)들은 다수 개의 컬럼(102)들로 그루핑될 수 있으며, 컬럼(102)들이 컬럼 디멘션(101)을 따라 배열될 수 있다. 그리고 셀(100)들은 각각의 컬럼(102)에서, 셀 디멘션(103)을 따라 계층적으로 배열될 수 있다. Referring to FIG. 1, a cell structure for implementing various data patterns may be defined. According to the cell structure, a plurality of
도 2는 다양한 실시예들에 따른 양방향 계층형 시간적 메모리 장치를 도시하는 도면이다. 도 3a 및 도 3b는 다양한 실시예들에 따른 양방향 시간적 메모리 장치의 양 방향 예측 동작을 설명하기 위한 도면들이다. 2 is a diagram illustrating a bidirectional hierarchical temporal memory device according to various embodiments. 3A and 3B are diagrams for explaining a bidirectional prediction operation of a bidirectional temporal memory device according to various embodiments.
도 2를 참조하면, 다양한 실시예들에 따른 양방향 계층형 시간적 메모리 장치(200)는, 인코더(210), 양향 예측기(220) 및 디코더(230)를 포함할 수 있다. 다양한 실시예들에 따르면, 양방향 계층형 시간적 메모리 장치(200)는, 도 3a에 도시된 바와 같이 현재(to~ti)의 데이터 패턴(311)으로부터 양방향(ti-1, ti+1)의 데이터 패턴(313, 315)을 예측할 수 있다. 이를 위해, 양방향 계층형 시간적 메모리 장치(200)는 초기 시점(to)으로부터 현재 시점(ti) 까지 데이터 패턴, 예컨대 현재(to~ti)의 데이터 패턴(311)을 학습할 수 있다. 그리고 양방향 계층형 시간적 메모리 장치(200)는 현재(to~ti)의 데이터 패턴(311)에 기반하여, 제 1 방향, 예컨대 미래(ti+1)의 데이터 패턴(313)을 예측하거나, 제 2 방향, 예컨대 과거(ti-1)의 데이터 패턴(315)을 예측할 수 있다. 이 때 양방향 계층형 시간적 메모리 장치(200)는, 전술된 도 1의 셀 구조에 기반하여, 양방향(ti-1, ti+1)의 데이터 패턴(313, 315)을 예측할 수 있다. Referring to FIG. 2, a bidirectional hierarchical
인코더(210)는 다채널 시계열 데이터로 입력되는 데이터(v(t))를 변환할 수 있다. 이 때 인코더(210)는, 입력되는 데이터(v(t))를 원래의 형태로부터 도 3b의 (a)에 도시된 바와 같은 바이너리 벡터(binary vector) 형태로 변환할 수 있다. 이를 통해, 인코더(210)는 변환된 데이터(vb(t))를 양방향 예측기(220)로 전달할 수 있다. The
양방향 예측기(120)는 변환된 데이터(vb(t))를 기반으로 시계열 예측을 수행할 수 있다. 양방향 예측기(220)는 계층형 시간적 메모리(HTM) 알고리즘에 기반하여, 변환된 데이터(vb(t))를 학습할 수 있다. 그리고 양방향 예측기(120)는 학습된 데이터에 기반하여, 양방향 데이터를 예측할 수 있다. 이를 위해, 양방향 예측기(120)는 공간적 풀러(spatial pooler)와 시간적 풀러(temporal pooler)를 포함할 수 있다. 즉 양방향 예측기(220)는 제 1 방향, 예컨대 미래 또는 제 2 방향, 예컨대 과거 중 적어도 어느 하나의 데이터를 예측할 수 있다. 이 때 양방향 예측기(220)는, 도 3b의 (b)에 도시된 바와 같이 셀 구조에 기반하여, 양방향 데이터를 예측할 수 있다. 예를 들면, 양방향 예측기(220)는 변환된 데이터(vb(t))에 기반하여 셀들 중 적어도 어느 하나를 활성화하고, 활성화된 셀에 기반하여 제 1 방향의 데이터 또는 제 2 방향의 데이터 중 적어도 어느 하나를 예측할 수 있다. 이를 통해, 양방향 예측기(220)는 예측된 데이터(Pb(t))를 디코더(230)로 출력할 수 있다. 이 때 양방향 예측기(220)는, 도 3b의 (c)에 도시된 바와 같이 바이너리 벡터 형태로 예측된 데이터(Pb(t))를 출력할 수 있다. The bidirectional predictor 120 may perform time series prediction based on the transformed data (v b (t)). The bidirectional predictor 220 may learn the transformed data v b (t) based on a hierarchical temporal memory (HTM) algorithm. In addition, the bidirectional predictor 120 may predict bidirectional data based on the learned data. To this end, the bidirectional predictor 120 may include a spatial pooler and a temporal pooler. That is, the
디코더(230)는 예측된 데이터(Pb(t))를 재변환할 수 있다. 여기서, 디코더(230)는 예측된 데이터(Pb(t))를 바이너리 벡터 형태로 수신할 수 있다. 이 때 디코더(130)는 예측된 데이터(Pb(t))를 바이너리 벡터 형태로부터 원래의 형태로 재변환할 수 있다. 이를 통해, 디코더(230)가 재변환된 데이터를 출력 데이터로 검출할 수 있다. 여기서, 출력 데이터는 제 1 방향, 예컨대 미래의 데이터를 나타내는 제 1 출력 데이터(p(t)) 또는 제 2 방향, 예컨대 과거의 데이터를 나타내는 제 2 출력 데이터(i(t)) 중 적어도 어느 하나를 포함할 수 있다. The
도 4는 다양한 실시예들에 따른 양방향 계층형 시간적 메모리 장치의 동작 방법을 도시하는 도면이다. 4 is a diagram illustrating a method of operating a bidirectional hierarchical temporal memory device according to various embodiments.
도 4를 참조하면, 양방향 계층형 시간적 메모리 장치(200)는 410 동작에서 입력되는 데이터를 학습할 수 있다. 이 때 인코더(210)가 입력되는 데이터를 변환할 수 있다. 여기서, 인코더(210)는 입력되는 데이터를 원래의 형태로부터 바이너리 벡터 형태로 변환할 수 있다. 이 후 양방향 예측기(210)가 계층형 시간적 메모리(HTM) 알고리즘에 기반하여, 변환된 데이터를 학습할 수 있다. 이를 통해, 양방향 계층형 시간적 메모리 장치(200)가 초기 시점(t0)으로부터 현재 시점(ti) 까지 데이터, 예컨대 현재(to~ti)의 데이터를 학습할 수 있다.Referring to FIG. 4, the bidirectional hierarchical
양방향 계층형 시간적 메모리 장치(200)는 420 동작에서 학습된 데이터에 기반하여, 양방향의 데이터를 예측할 수 있다. 양방향의 데이터는 제 1 방향의 데이터와 제 2 방향의 데이터를 나타낼 수 있다. 여기서, 제 1 방향의 데이터는 학습되어 있지 않은 미래(ti+1)의 데이터를 나타내고, 제 2 방향의 데이터는 학습되어 있지 않은 과거(ti-1)의 데이터를 나타낼 수 있다. 이 때 양방향 예측기(210)는 셀 구조에 기반하여, 제 1 방향의 데이터 또는 제 2 방향의 데이터 중 적어도 어느 하나를 예측할 수 있다. 이 후 디코더(230)가 예측된 데이터를 재변환할 수 있다. 여기서, 디코더(230)는 예측된 데이터를 바이너리 벡터로부터 원래의 형태로 재변환하고, 재변환된 데이터를 출력할 수 있다. 이를 통해, 양방향 계층형 시간적 메모리 장치(200)가 출력된 데이터를 관리할 수 있다. 여기서, 양방향 계층형 시간적 메모리 장치(200)가 출력된 데이터를 저장하거나, 외부로 제공할 수 있다.The bidirectional hierarchical
도 5는 도 4의 제 1 방향의 데이터 예측 동작을 도시하는 도면이다. 도 6 내지 도 11은 도 4의 제 1 방향의 데이터 예측 동작을 설명하기 위한 도면들이다. 5 is a diagram illustrating a data prediction operation in the first direction of FIG. 4. 6 to 11 are diagrams for explaining a data prediction operation in the first direction of FIG. 4.
도 5를 참조하면, 양방향 계층형 시간적 메모리 장치(200)는 510 동작에서 현재(to~ti)의 데이터에 기반하여, 셀들 중 적어도 어느 하나를 활성화할 수 있다. 현재(to~ti)의 데이터는 제 1 시점(to)의 제 1 데이터와 제 1 시점 보다 늦은 제 2 시점(ti)의 제 2 데이터를 포함할 수 있다. Referring to FIG. 5, the bidirectional hierarchical
다양한 실시예들에 따르면, 양방향 계층형 시간적 메모리 장치(200)는, 도 6의 (a)에 도시된 바와 같이 제 1 시점(to)의 제 1 데이터를 기반으로 적어도 하나의 활성 셀을 결정하고, 제 1 데이터로부터 예측되는 제 2 시점(ti)의 제 3 데이터를 기반으로 적어도 하나의 예측 셀을 결정할 수 있다. 그리고 양방향 계층형 시간적 메모리 장치(200)는, 도 6의 (b)에 도시된 바와 같이 제 2 시점(ti)의 제 2 데이터를 기반으로 적어도 하나의 활성 컬럼을 결정할 수 있다. 이 때 제 3 데이터의 예측 셀이 제 2 데이터의 활성 컬럼에 포함되면, 양방향 계층형 시간적 메모리 장치(200)는, 도 6의 (c)에 도시된 바와 같이 제 2 데이터의 예측 셀이 정확하게 예측된 것으로 판단하고, 제 2 데이터의 예측 셀을 위너 셀(winner cell)로 정의하고 활성화할 수 있다. 한편, 제 3 데이터의 예측 셀이 제 2 데이터의 활성 컬럼에 포함되지 않으면, 양방향 계층형 시간적 메모리 장치(200)는, 도 6의 (b)에 도시된 바와 같이 제 2 데이터의 예측 셀을 비활성화할 수 있다. 한편, 제 2 데이터의 활성 컬럼이 제 3 데이터의 예측 셀을 포함하지 않으면, 양방향 계층형 시간적 메모리 장치(200)는, 도 6의 (b)에 도시된 바와 같이 제 2 데이터의 활성 컬럼을 버스트 컬럼(burst column)(601)으로 결정할 수 있다. 또한 양방향 계층형 시간적 메모리 장치(200)는, 도 6의 (c)에 도시된 바와 같이 버스트 컬럼(601)의 모든 셀들을 활성 셀들로 결정하고, 버스트 컬럼(601)의 활성 셀들 중 어느 하나를 위너 셀로 결정할 수 있다. According to various embodiments, the bidirectional hierarchical
일 실시예에 따르면, 버스트 칼럼의 위너 셀을 결정하기 위하여, 양방향 계층형 시간적 메모리 장치(200)는, 도 7에 도시된 바와 같이 제 1 시점(to)의 제 1 데이터를 기반으로 세그먼트(segment)(710, 720)들의 매칭 스코어(matching score)를 검출할 수 있다. 이 때 매칭 스코어는 제 1 데이터의 위너 셀에 연결되는 시냅스(synapse)(730)의 개수에 따라 검출될 수 있다. 이 후 양방향 계층형 시간적 메모리 장치(200)는, 세그먼트(710, 720)들 중 매칭 스코어가 최대인 어느 하나를 베스트 매칭 세그먼트(720)로 결정할 수 있다. 이를 통해, 양방향 계층형 시간적 메모리 장치(200)는 베스트 매칭 세그먼트(720)를 이용하여, 버스트 컬럼(601)의 셀들 사이에서 베스트 매칭 셀(740)을 결정하고, 베스트 매칭 셀(740)을 버스트 컬럼(601)의 위너 셀로 결정할 수 있다. 한편, 베스트 매칭 세그먼트(720)가 결정되지 않으면, 양방향 계층형 시간적 메모리 장치(200)는 임의로 버스트 컬럼(601)에서 위너 셀을 결정할 수 있다. According to an embodiment, in order to determine a winner cell of a burst column, the bidirectional hierarchical
예를 들면, 양방향 계층형 시간적 메모리 장치(200)는, 도 8에 도시된 바와 같이 제 1 시점(to)의 제 1 데이터와 제 3 데이터를 기반으로 세그먼트(810, 820)들의 시냅스(831, 833)들을 업데이트할 수 있다. 여기서, 세그먼트(810, 820)들은 학습 세그먼트(820)를 포함하며, 학습 세그먼트(820)는 버스트 컬럼(601)의 위너 셀(840)과 관련된 것일 수 있다. 이 때 양방향 계층형 시간적 메모리 장치(200)는 활성 셀에 연결되는 시냅스(833)를 강화시키고, 비활성 셀에 연결되는 시냅스(831)를 약화시킬 수 있다. 이를 위해, 양방향 계층형 시간적 메모리 장치(200)는 활성 셀에 연결되는 시냅스(831)의 가중치(ρ)를 증가시키고, 비활성 셀에 연결되는 시냅스(833)의 가중치(ρ)를 감소시킬 수 있다. For example, the bidirectional hierarchical
예를 들면, 양방향 계층형 시간적 메모리 장치(200)는, 도 9에 도시된 바와 같이 세그먼트(910, 920)들 중 학습 세그먼트(920)에 신규 시냅스(935)를 추가할 수 있다. 여기서, 학습 세그먼트(920)는 버스트 컬럼(601)의 위너 셀(940)과 관련된 것일 수 있다. 이 때 양방향 계층형 시간적 메모리(200)는, 다른 세그먼트(910)의 활성 셀로부터 연결되는 신규 시냅스(935)를 학습 세그먼트(920)에 추가할 수 있다. 여기서, 신규 시냅스(935)의 개수는 학습 세그먼트(920)에 대하여 예측 셀에 연결되는 시냅스(931)의 개수에서 활성 셀에 연결되는 시냅스(933)의 개수를 뺀 값으로 결정될 수 있다. 일 예로, 학습 세그먼트(920)에 대하여 예측 셀에 연결되는 시냅스(931)의 개수가 4이고, 활성 셀에 연결되는 시냅스(933)의 개수가 3이면, 신규 시냅스(935)의 개수는 1로 결정될 수 있다. 이를 통해, 양방향 계층형 시간적 메모리 장치(200)는 학습 세그먼트(920)에 1 개의 신규 시냅스(935)를 추가할 수 있다.For example, the bidirectional hierarchical
양방향 계층형 시간적 메모리 장치(200)는 520 동작에서 활성화된 셀에 기반하여, 셀들 중 적어도 어느 하나를 예측할 수 있다. 이 때 양방향 계층형 시간적 메모리 장치(200)는 셀들 중 적어도 어느 하나를 제 1 방향, 즉 미래(ti+1)의 데이터로서 예측할 수 있다. The bidirectional hierarchical
다양한 실시예들에 따르면, 양방향 계층형 시간적 메모리 장치(200)는, 도 10에 도시된 바와 같이 모든 세그먼트(1010, 1020)들에 대해 활성도를 계산할 수 있다. 이 때 활성도는 각각의 세그먼트(1010, 1020)에 연결된 활성 셀의 개수에 따라 결정될 수 있다. 예를 들면, 양방향 계층형 시간적 메모리 장치(200)는, 각각의 세그먼트(1010, 1020)의 시냅스들을 통하여 활성도를 계산할 수 있다. 양방향 계층형 시간적 메모리 장치(200)는 시냅스 별 가중치와 셀 상태 값의 곱을 산출하고, 모든 시냅스들에 대한 산출 결과의 합으로, 각각의 세그먼트(1010, 1020)의 활성도를 계산할 수 있다. 도 10에서 점선은 시냅스의 가중치가 미리 정해진 기준값 이하인 경우를 나타내고, 실선은 시냅스의 가중치가 기준값을 초과하는 경우를 나타낼 수 있다. According to various embodiments, the bidirectional hierarchical
예를 들면, 가중치는 기준값 이하인 경우 0으로 결정되고, 기준값을 초과하는 경우 1로 결정될 수 있다. 셀 상태 값은 활성 셀에 대하여 1로 결정되고, 비활성 셀에 대하여 0으로 결정될 수 있다. 이를 통해, 양방향 계층형 시간적 메모리 장치(200)는 제 1 세그먼트(1010)의 활성도를, 1 * 1 + 1 * 0 + 0 * 0 + 0 * 0 + 1 * 0 + 0 * 1 + 0 * 0 + 1 * 0 = 1로 계산할 수 있다. 마찬가지로, 양방향 계층형 시간적 메모리 장치(200)는 제 2 세그먼트(1020)의 활성도를, 1 * 0 + 0 * 0 + 1 * 1 + 0 * 0 + 1 * 1 + 0 * 0 + 1 * 1 = 3으로 계산할 수 있다. For example, when the weight is less than or equal to the reference value, it may be determined as 0, and when it exceeds the reference value, it may be determined as 1. The cell state value may be determined as 1 for an active cell and 0 for an inactive cell. Through this, the bidirectional hierarchical
다양한 실시예들에 따르면, 양방향 계층형 시간적 메모리 장치(200)는, 모든 세그먼트(1010, 1020)들에 대해 활성도에 기반하여, 세그먼트(1010, 1020)들 중 적어도 어느 하나를 활성화할 수 있다. 이 때 세그먼트(1010, 1020)들 중 적어도 어느 하나의 활성도가 미리 정해진 임계값을 초과하면, 양방향 계층형 시간적 메모리 장치(200)는 적어도 하나의 세그먼트(1020)를 활성화하고, 나머지 세그먼트(1010)를 비활성화할 수 있다. 일 예로, 임계값이 2이면, 양방향 계층형 시간적 메모리 장치(200)는 제 2 세그먼트(1020)를 활성화하고, 제 1 세그먼트(1010)를 비활성화할 수 있다. 그리고 세그먼트(1010, 1020)들 중 적어도 어느 하나가 활성화되면, 양방향 계층형 시간적 메모리 장치(200)는, 활성화된 세그먼트(1020)를 이용하여, 미래(ti+1)의 데이터에 대응하는 예측 셀(1040)을 결정할 수 있다. 이를 통해, 양방향 계층형 시간적 메모리 장치(200)는, 도 11에 도시된 바와 같이 셀들 중 적어도 어느 하나를 미래(ti+1)의 데이터에 대응하는 예측 셀로 결정할 수 있다.According to various embodiments, the bidirectional hierarchical
도 12는 도 4의 제 2 방향의 데이터 예측 동작을 도시하는 도면이다. 도 13 내지 도 16은 도 4의 제 2 방향의 데이터 예측 동작을 설명하기 위한 도면들이다. 12 is a diagram illustrating a data prediction operation in the second direction of FIG. 4. 13 to 16 are diagrams for explaining a data prediction operation in the second direction of FIG. 4.
도 12를 참조하면, 양방향 계층형 시간적 메모리 장치(200)는 1210 동작에서 현재(to~ti)의 데이터에 기반하여, 셀들 중 적어도 어느 하나를 활성화할 수 있다. 현재(to~ti)의 데이터는 제 1 시점(ti)의 제 1 데이터와 제 1 시점 보다 빠른 제 2 시점(to)의 제 2 데이터를 포함할 수 있다. Referring to FIG. 12, the bidirectional hierarchical
다양한 실시예들에 따르면, 양방향 계층형 시간적 메모리 장치(200)는, 도 13의 (a)에 도시된 바와 같이 제 1 시점(ti)의 제 1 데이터를 기반으로 적어도 하나의 활성 셀을 결정하고, 제 1 데이터로부터 예측되는 제 2 시점(to)의 제 3 데이터를 기반으로 적어도 하나의 역방향 예측 셀을 결정할 수 있다. 그리고 양방향 계층형 시간적 메모리 장치(200)는, 도 13의 (b)에 도시된 바와 같이 제 2 시점(to)의 제 2 데이터를 기반으로 적어도 하나의 활성 컬럼을 결정할 수 있다. 이 때 제 3 데이터의 역방향 예측 셀이 제 2 데이터의 활성 컬럼에 포함되면, 양방향 계층형 시간적 메모리 장치(200)는, 도 13의 (c)에 도시된 바와 같이 제 2 데이터의 역방향 예측 셀이 정확하게 예측된 것으로 판단하고, 제 2 데이터의 역방향 예측 셀을 위너 셀(winner cell)로 정의하고 활성화할 수 있다. 한편, 제 3 데이터의 역방향 예측 셀이 제 2 데이터의 활성 컬럼에 포함되지 않으면, 양방향 계층형 시간적 메모리 장치(200)는, 도 13의 (b)에 도시된 바와 같이 제 2 데이터의 역방향 예측 셀을 비활성화할 수 있다. 한편, 제 2 데이터의 활성 컬럼이 제 3 데이터의 역방향 예측 셀을 포함하지 않으면, 양방향 계층형 시간적 메모리 장치(200)는, 도 13의 (b)에 도시된 바와 같이 제 2 데이터의 활성 컬럼을 버스트 컬럼(burst column)(1301)으로 결정할 수 있다. 또한 양방향 계층형 시간적 메모리 장치(200)는, 도 13의 (c)에 도시된 바와 같이 버스트 컬럼(1301)의 모든 셀들을 활성 셀들로 결정하고, 버스트 컬럼(1301)의 활성 셀들 중 어느 하나를 위너 셀로 결정할 수 있다. According to various embodiments, the bidirectional hierarchical
일 실시예에 따르면, 버스트 칼럼의 위너 셀을 결정하기 위하여, 양방향 계층형 시간적 메모리 장치(200)는, 도 14에 도시된 바와 같이 제 1 시점(ti)의 제 1 데이터를 기반으로 역 방향 세그먼트(segment)(1410, 1420)들의 매칭 스코어(matching score)를 검출할 수 있다. 이 때 매칭 스코어는 제 1 데이터의 위너 셀에 연결되는 시냅스(synapse)(1430)의 개수에 따라 검출될 수 있다. 이 후 양방향 계층형 시간적 메모리 장치(200)는, 세그먼트(1410, 1420)들 중 매칭 스코어가 최대인 어느 하나를 베스트 매칭 역방향 세그먼트(1420)로 결정할 수 있다. 이를 통해, 양방향 계층형 시간적 메모리 장치(200)는 베스트 매칭 역방향 세그먼트(1420)를 이용하여, 버스트 컬럼(1301)의 셀들 사이에서 베스트 매칭 셀(740)을 결정하고, 베스트 매칭 셀(1440)을 버스트 컬럼(1301)의 위너 셀로 결정할 수 있다. 한편, 베스트 매칭 역방향 세그먼트(1420)가 결정되지 않으면, 양방향 계층형 시간적 메모리 장치(200)는 임의로 버스트 컬럼(1301)에서 위너 셀을 결정할 수 있다. According to an embodiment, in order to determine the winner cell of the burst column, the bidirectional hierarchical
예를 들면, 양방향 계층형 시간적 메모리 장치(200)는, 도 15에 도시된 바와 같이 제 1 시점(ti)의 제 1 데이터와 제 3 데이터를 기반으로 역방향 세그먼트(1510, 1520)들의 시냅스(1531, 1533)들을 업데이트할 수 있다. 여기서, 세그먼트(1510, 1520)들은 학습 역방향 세그먼트(1520)를 포함하며, 학습 역방향 세그먼트(1520)는 버스트 컬럼(1301)의 위너 셀(1540)과 관련된 것일 수 있다. 이 때 양방향 계층형 시간적 메모리 장치(200)는 활성 셀에 연결되는 시냅스(1533)를 강화시키고, 비활성 셀에 연결되는 시냅스(1531)를 약화시킬 수 있다. 이를 위해, 양방향 계층형 시간적 메모리 장치(200)는 활성 셀에 연결되는 시냅스(1531)의 가중치(ρ)를 증가시키고, 비활성 셀에 연결되는 시냅스(1533)의 가중치(ρ)를 감소시킬 수 있다. For example, the bidirectional hierarchical
양방향 계층형 시간적 메모리 장치(200)는 1220 동작에서 활성화된 셀에 기반하여, 셀들 중 적어도 어느 하나를 예측할 수 있다. 이 때 양방향 계층형 시간적 메모리 장치(200)는 셀들 중 적어도 어느 하나를 제 2 방향, 즉 과거(ti-1)의 데이터로서 예측할 수 있다. The bidirectional hierarchical
다양한 실시예들에 따르면, 양방향 계층형 시간적 메모리 장치(200)는, 도 16에 도시된 바와 같이 모든 역방향 세그먼트(1610, 1620)들에 대해 활성도를 계산할 수 있다. 이 때 활성도는 각각의 역방향 세그먼트(1610, 1620)에 연결된 활성 셀의 개수에 따라 결정될 수 있다. 예를 들면, 양방향 계층형 시간적 메모리 장치(200)는, 각각의 역방향 세그먼트(1610, 1620)의 시냅스들을 통하여 활성도를 계산할 수 있다. 양방향 계층형 시간적 메모리 장치(200)는 시냅스 별 가중치와 셀 상태 값의 곱을 산출하고, 모든 시냅스들에 대한 산출 결과의 합으로, 각각의 세그먼트(1610, 1620)의 활성도를 계산할 수 있다. 도 16에서 점선은 시냅스의 가중치가 미리 정해진 기준값 이하인 경우를 나타내고, 실선은 시냅스의 가중치가 기준값을 초과하는 경우를 나타낼 수 있다. According to various embodiments, the bidirectional hierarchical
예를 들면, 가중치는 기준값 이하인 경우 0으로 결정되고, 기준값을 초과하는 경우 1로 결정될 수 있다. 셀 상태 값은 활성 셀에 대하여 1로 결정되고, 비활성 셀에 대하여 0으로 결정될 수 있다. 이를 통해, 양방향 계층형 시간적 메모리 장치(200)는 제 1 세그먼트(1010)의 활성도를, 1 * 1 + 1 * 0 + 0 * 0 + 0 * 0 + 1 * 0 + 0 * 1 + 0 * 0 + 1 * 0 = 1로 계산할 수 있다. 마찬가지로, 양방향 계층형 시간적 메모리 장치(200)는 제 2 세그먼트(1020)의 활성도를, 1 * 0 + 0 * 0 + 1 * 1 + 0 * 0 + 1 * 1 + 0 * 0 + 1 * 1 = 3으로 계산할 수 있다. For example, when the weight is less than or equal to the reference value, it may be determined as 0, and when it exceeds the reference value, it may be determined as 1. The cell state value may be determined as 1 for an active cell and 0 for an inactive cell. Through this, the bidirectional hierarchical
다양한 실시예들에 따르면, 양방향 계층형 시간적 메모리 장치(200)는, 모든 역방향 세그먼트(1610, 1620)들에 대해 활성도에 기반하여, 역방향 세그먼트(1610, 1620)들 중 적어도 어느 하나를 활성화할 수 있다. 이 때 역방향 세그먼트(1610, 1620)들 중 적어도 어느 하나의 활성도가 미리 정해진 임계값을 초과하면, 양방향 계층형 시간적 메모리 장치(200)는 적어도 하나의 역방향 세그먼트(1620)를 활성화하고, 나머지 역방향 세그먼트(1610)를 비활성화할 수 있다. 일 예로, 임계값이 2이면, 양방향 계층형 시간적 메모리 장치(200)는 제 2 역방향 세그먼트(1620)를 활성화하고, 제 1 역방향 세그먼트(1610)를 비활성화할 수 있다. 그리고 역방향 세그먼트(1610, 1620)들 중 적어도 어느 하나가 활성화되면, 양방향 계층형 시간적 메모리 장치(200)는, 활성화된 역방향 세그먼트(1620)를 이용하여, 과거(ti-1)의 데이터에 대응하는 예측 셀(1640)을 결정할 수 있다. 이를 통해, 양방향 계층형 시간적 메모리 장치(200)는, 도 17에 도시된 바와 같이 셀들 중 적어도 어느 하나를 과거(ti-1)의 데이터에 대응하는 예측 셀로 결정할 수 있다.According to various embodiments, the bidirectional hierarchical
다양한 실시예들에 따르면, 양방향 계층형 시간적 메모리 장치(200)가 학습된 데이터에 기반하여, 과거의 데이터를 예측할 수 있다. 즉 양방향 계층형 시간적 메모리 장치(200)가 학습된 데이터에 기반하여, 미래의 데이터 뿐 아니라 과거의 데이터도 예측할 수 있다. According to various embodiments, the bidirectional hierarchical
본 문서의 다양한 실시예들에 관해 설명되었으나, 본 문서의 다양한 실시예들의 범위에서 벗어나지 않는 한도 내에서 여러 가지 변형이 가능하다. 그러므로, 본 문서의 다양한 실시예들의 범위는 설명된 실시예에 국한되어 정해져서는 아니되며 후술하는 특허청구의 범위 뿐만 아니라 이 특허청구의 범위와 균등한 것들에 의해 정해져야 한다. Although various embodiments of the present document have been described, various modifications may be made without departing from the scope of the various embodiments of the present document. Therefore, the scope of the various embodiments of the present document is limited to the described embodiments and should not be defined by the scope of the claims to be described later, as well as the scope and equivalents of the claims.
Claims (20)
상기 인코더에서, 시간의 흐름에 따라 입력되는 데이터를 검출하는 동작;
상기 예측기에서, 상기 검출된 데이터를 학습하는 동작;
상기 예측기에서, 상기 학습된 데이터에 기반하여, 시간의 흐름에 따른 제 1 방향에 반대되는 제 2 방향의 데이터를 예측하는 동작; 및
상기 디코더에서, 상기 제 2 방향의 데이터를 출력하는 동작
을 포함하고,
상기 인코더는 상기 입력되는 데이터를 원래의 형태로부터 바이너리 벡터 형태로 변환하고,
상기 예측기에서, 상기 제 2 방향의 데이터를 예측하는 동작은,
계층형 시간적 메모리(hierarchical temporal memory; HTM) 알고리즘에 따라 다수 개의 셀들이 컬럼 디멘션과 셀 디멘션에 배열되는 셀 구조에서 상기 셀들 중 적어도 하나를 활성화하여, 상기 변환된 데이터를 표현하는 동작;
상기 셀 구조를 기반으로, 상기 제 2 방향의 데이터를 표현하는 동작; 및
상기 제 2 방향의 데이터를 바이너리 벡터 형태로 출력하는 동작
을 포함하고,
상기 디코더는 상기 제 2 방향의 데이터를 원래의 형태로 변환하며,
상기 제 2 방향의 데이터를 표현하는 동작은,
제 1 시점의 제 1 데이터를 기반으로, 상기 셀 구조에서 적어도 하나의 활성 셀을 결정하는 동작;
상기 계층형 시간적 메모리 알고리즘에 따라, 상기 제 1 데이터로부터 예측되는 제 3 데이터를 기반으로, 상기 셀 구조에서 적어도 하나의 예측 셀을 결정하는 동작;
상기 계층형 시간적 메모리 알고리즘에 따라, 상기 제 1 시점으로부터 상기 제 2 방향에 있는 제 2 시점의 제 2 데이터를 기반으로, 상기 셀 구조에서 적어도 하나의 활성 컬럼을 결정하는 동작;
상기 예측 셀이 상기 활성 컬럼에 포함되면, 상기 활성 컬럼의 모든 셀들을 활성화하는 동작; 및
상기 예측 셀이 상기 활성 컬럼에 포함되지 않으면, 상기 활성 컬럼의 모든 셀들을 비활성화하는 동작
을 포함하는,
양방향 데이터 예측 방법.
In the bidirectional data prediction method performed by a bidirectional hierarchical temporal memory device including an encoder, a predictor and a decoder,
Detecting, in the encoder, input data according to the passage of time;
Learning the detected data by the predictor;
Predicting, in the predictor, data in a second direction opposite to the first direction according to the passage of time based on the learned data; And
The decoder outputs data in the second direction
Including,
The encoder converts the input data from the original form into a binary vector form,
In the predictor, the operation of predicting data in the second direction,
Expressing the converted data by activating at least one of the cells in a cell structure in which a plurality of cells are arranged in a column dimension and a cell dimension according to a hierarchical temporal memory (HTM) algorithm;
Representing data in the second direction based on the cell structure; And
Outputting the data in the second direction in the form of a binary vector
Including,
The decoder converts the data in the second direction into an original form,
The operation of expressing the data in the second direction,
Determining at least one active cell in the cell structure based on first data of a first view;
Determining at least one prediction cell in the cell structure based on third data predicted from the first data according to the hierarchical temporal memory algorithm;
Determining at least one active column in the cell structure based on second data of a second view in the second direction from the first view according to the hierarchical temporal memory algorithm;
If the prediction cell is included in the active column, activating all cells of the active column; And
If the prediction cell is not included in the active column, deactivating all cells of the active column
Containing,
Two-way data prediction method.
상기 인코더에서, 시간의 흐름에 따라 입력되는 데이터를 검출하는 동작;
상기 예측기에서, 상기 검출된 데이터를 학습하는 동작;
상기 예측기에서, 상기 학습된 데이터에 기반하여, 시간의 흐름에 따른 제 1 방향의 데이터를 예측하는 동작; 및
상기 디코더에서, 상기 제 1 방향의 데이터를 출력하는 동작
을 포함하고,
상기 인코더는 상기 입력되는 데이터를 원래의 형태로부터 바이너리 벡터 형태로 변환하고,
상기 예측기에서, 상기 제 1 방향의 데이터를 예측하는 동작은,
계층형 시간적 메모리(HTM) 알고리즘에 따라 다수 개의 셀들이 컬럼 디멘션과 셀 디멘션에 배열되는 셀 구조에서 상기 셀들 중 적어도 하나를 활성화하여, 상기 변환된 데이터를 표현하는 동작;
상기 셀 구조를 기반으로, 상기 제 1 방향의 데이터를 표현하는 동작; 및
상기 제 1 방향의 데이터를 바이너리 벡터 형태로 출력하는 동작
을 포함하고,
상기 디코더는 상기 제 1 방향의 데이터를 원래의 형태로 변환하며,
상기 제 1 방향의 데이터를 표현하는 동작은,
제 1 시점의 제 1 데이터를 기반으로, 상기 셀 구조에서 적어도 하나의 활성 셀을 결정하는 동작;
상기 계층형 시간적 메모리 알고리즘에 따라, 상기 제 1 데이터로부터 예측되는 제 3 데이터를 기반으로, 상기 셀 구조에서 적어도 하나의 예측 셀을 결정하는 동작;
상기 계층형 시간적 메모리 알고리즘에 따라, 상기 제 1 시점으로부터 상기 제 1 방향에 있는 제 2 시점의 제 2 데이터를 기반으로, 상기 셀 구조에서 적어도 하나의 활성 컬럼을 결정하는 동작;
상기 예측 셀이 상기 활성 컬럼에 포함되면, 상기 활성 컬럼의 모든 셀들을 활성화하는 동작; 및
상기 예측 셀이 상기 활성 컬럼에 포함되지 않으면, 상기 활성 컬럼의 모든 셀들을 비활성화하는 동작
을 포함하는,
양방향 데이터 예측 방법.
In the bidirectional data prediction method performed by a bidirectional hierarchical temporal memory device including an encoder, a predictor and a decoder,
Detecting, in the encoder, input data according to the passage of time;
Learning the detected data by the predictor;
Predicting, in the predictor, data in a first direction according to the passage of time based on the learned data; And
In the decoder, outputting data in the first direction
Including,
The encoder converts the input data from the original form into a binary vector form,
In the predictor, the operation of predicting data in the first direction,
Activating at least one of the cells in a cell structure in which a plurality of cells are arranged in a column dimension and a cell dimension according to a hierarchical temporal memory (HTM) algorithm to represent the converted data;
Representing data in the first direction based on the cell structure; And
Outputting the data in the first direction in the form of a binary vector
Including,
The decoder converts the data in the first direction into an original form,
The operation of expressing the data in the first direction,
Determining at least one active cell in the cell structure based on first data of a first view;
Determining at least one prediction cell in the cell structure based on third data predicted from the first data according to the hierarchical temporal memory algorithm;
Determining at least one active column in the cell structure based on second data of a second view in the first direction from the first view according to the hierarchical temporal memory algorithm;
If the prediction cell is included in the active column, activating all cells of the active column; And
If the prediction cell is not included in the active column, deactivating all cells of the active column
Containing,
Two-way data prediction method.
시간의 흐름에 따라 입력되는 데이터를 검출하는 인코더;
상기 검출된 데이터를 학습하고, 상기 학습된 데이터에 기반하여, 시간의 흐름에 따른 제 1 방향에 반대되는 제 2 방향의 데이터를 예측하는 예측기; 및
상기 제 2 방향의 데이터를 출력하는 디코더
를 포함하고,
상기 인코더는,
상기 입력되는 데이터를 원래의 형태로부터 바이너리 벡터 형태로 변환하고,
상기 예측기는,
계층형 시간적 메모리(HTM) 알고리즘에 따라 다수 개의 셀들이 컬럼 디멘션과 셀 디멘션에 배열되는 셀 구조에서 상기 셀들 중 적어도 하나를 활성화하여, 상기 변환된 데이터를 표현하고,
상기 셀 구조를 기반으로, 상기 제 2 방향의 데이터를 표현하고,
상기 제 2 방향의 데이터를 바이너리 벡터 형태로 출력하고,
상기 디코더는,
상기 제 2 방향의 데이터를 원래의 형태로 변환하고,
상기 예측기는,
제 1 시점의 제 1 데이터를 기반으로, 상기 셀 구조에서 적어도 하나의 활성 셀을 결정하고,
상기 계층형 시간적 메모리 알고리즘에 따라, 상기 제 1 데이터로부터 예측되는 제 3 데이터를 기반으로, 상기 셀 구조에서 적어도 하나의 예측 셀을 결정하고,
상기 계층형 시간적 메모리 알고리즘에 따라, 상기 제 1 시점으로부터 상기 제 2 방향에 있는 제 2 시점의 제 2 데이터를 기반으로, 상기 셀 구조에서 적어도 하나의 활성 컬럼을 결정하고,
상기 예측 셀이 상기 활성 컬럼에 포함되면, 상기 활성 컬럼의 모든 셀들을 활성화하고,
상기 예측 셀이 상기 활성 컬럼에 포함되지 않으면, 상기 활성 컬럼의 모든 셀들을 비활성화하는,
양방향 계층형 시간적 메모리 장치.
In the bidirectional hierarchical temporal memory device capable of bidirectional prediction,
An encoder that detects input data over time;
A predictor for learning the detected data and predicting data in a second direction opposite to the first direction over time based on the learned data; And
A decoder that outputs the data in the second direction
Including,
The encoder,
Converting the input data from the original form to a binary vector form,
The predictor,
In a cell structure in which a plurality of cells are arranged in a column dimension and a cell dimension according to a hierarchical temporal memory (HTM) algorithm, at least one of the cells is activated to represent the converted data,
Based on the cell structure, expressing the data in the second direction,
Outputting the data in the second direction in the form of a binary vector,
The decoder,
Converting the data in the second direction into its original form,
The predictor,
Determine at least one active cell in the cell structure based on the first data at a first time point,
According to the hierarchical temporal memory algorithm, based on third data predicted from the first data, at least one prediction cell is determined in the cell structure,
According to the hierarchical temporal memory algorithm, based on second data of a second view in the second direction from the first view, at least one active column in the cell structure is determined,
When the prediction cell is included in the active column, all cells of the active column are activated,
If the prediction cell is not included in the active column, deactivating all cells of the active column,
Bidirectional hierarchical temporal memory device.
시간의 흐름에 따라 입력되는 데이터를 검출하는 인코더;
상기 검출된 데이터를 학습하고, 상기 학습된 데이터에 기반하여, 시간의 흐름에 따른 제 1 방향의 데이터를 예측하는 예측기; 및
상기 제 1 방향의 데이터를 출력하는 디코더
를 포함하고,
상기 인코더는,
상기 입력되는 데이터를 원래의 형태로부터 바이너리 벡터 형태로 변환하고,
상기 예측기는,
계층형 시간적 메모리(HTM) 알고리즘에 따라 다수 개의 셀들이 컬럼 디멘션과 셀 디멘션에 배열되는 셀 구조에서 상기 셀들 중 적어도 하나를 활성화하여, 상기 변환된 데이터를 표현하고,
상기 셀 구조를 기반으로, 상기 제 1 방향의 데이터를 표현하고,
상기 제 1 방향의 데이터를 바이너리 벡터 형태로 출력하고,
상기 디코더는,
상기 제 1 방향의 데이터를 원래의 형태로 변환하고,
상기 예측기는,
제 1 시점의 제 1 데이터를 기반으로, 상기 셀 구조에서 적어도 하나의 활성 셀을 결정하고,
상기 계층형 시간적 메모리 알고리즘에 따라, 상기 제 1 데이터로부터 예측되는 제 3 데이터를 기반으로, 상기 셀 구조에서 적어도 하나의 예측 셀을 결정하고,
상기 계층형 시간적 메모리 알고리즘에 따라, 상기 제 1 시점으로부터 상기 제 1 방향에 있는 제 2 시점의 제 2 데이터를 기반으로, 상기 셀 구조에서 적어도 하나의 활성 컬럼을 결정하고,
상기 예측 셀이 상기 활성 컬럼에 포함되면, 상기 활성 컬럼의 모든 셀들을 활성화하고,
상기 예측 셀이 상기 활성 컬럼에 포함되지 않으면, 상기 활성 컬럼의 모든 셀들을 비활성화하는,
양방향 계층형 시간적 메모리 장치.
In the bidirectional hierarchical temporal memory device capable of bidirectional prediction,
An encoder that detects input data over time;
A predictor for learning the detected data and predicting data in a first direction over time based on the learned data; And
A decoder that outputs the data in the first direction
Including,
The encoder,
Converting the input data from the original form to a binary vector form,
The predictor,
In a cell structure in which a plurality of cells are arranged in a column dimension and a cell dimension according to a hierarchical temporal memory (HTM) algorithm, at least one of the cells is activated to represent the converted data,
Based on the cell structure, expressing the data in the first direction,
Outputting the data in the first direction in the form of a binary vector,
The decoder,
Converting the data in the first direction into its original form,
The predictor,
Determine at least one active cell in the cell structure based on the first data at a first time point,
According to the hierarchical temporal memory algorithm, based on third data predicted from the first data, at least one prediction cell is determined in the cell structure,
According to the hierarchical temporal memory algorithm, based on second data of a second view in the first direction from the first view, at least one active column in the cell structure is determined,
When the prediction cell is included in the active column, all cells of the active column are activated,
If the prediction cell is not included in the active column, deactivating all cells of the active column,
Bidirectional hierarchical temporal memory device.
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
KR1020190004942A KR102251961B1 (en) | 2019-01-15 | 2019-01-15 | Method and apparatus of bidirectional hierarchical temporal memory for bidirectional prediction |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
KR1020190004942A KR102251961B1 (en) | 2019-01-15 | 2019-01-15 | Method and apparatus of bidirectional hierarchical temporal memory for bidirectional prediction |
Publications (2)
Publication Number | Publication Date |
---|---|
KR20200088920A KR20200088920A (en) | 2020-07-24 |
KR102251961B1 true KR102251961B1 (en) | 2021-05-21 |
Family
ID=71892531
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
KR1020190004942A KR102251961B1 (en) | 2019-01-15 | 2019-01-15 | Method and apparatus of bidirectional hierarchical temporal memory for bidirectional prediction |
Country Status (1)
Country | Link |
---|---|
KR (1) | KR102251961B1 (en) |
Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20050084018A1 (en) | 2002-01-31 | 2005-04-21 | Daniel Lecomte | Device that is used for secure diffusion controlled display private copying and management of and conditional access to mpeg-4-type audiovisual content rights |
US20080205280A1 (en) | 2007-02-28 | 2008-08-28 | William Cooper Saphir | Scheduling system and method in a hierarchical temporal memory based system |
WO2016194248A1 (en) | 2015-06-03 | 2016-12-08 | 三菱電機株式会社 | Inference device and inference method |
-
2019
- 2019-01-15 KR KR1020190004942A patent/KR102251961B1/en active IP Right Grant
Patent Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20050084018A1 (en) | 2002-01-31 | 2005-04-21 | Daniel Lecomte | Device that is used for secure diffusion controlled display private copying and management of and conditional access to mpeg-4-type audiovisual content rights |
US20080205280A1 (en) | 2007-02-28 | 2008-08-28 | William Cooper Saphir | Scheduling system and method in a hierarchical temporal memory based system |
WO2016194248A1 (en) | 2015-06-03 | 2016-12-08 | 三菱電機株式会社 | Inference device and inference method |
Non-Patent Citations (1)
Title |
---|
한창영 외, '계층형 시간적 메모리 네트워크를 기반으로 한 스트림 데이터의 연속 다중 예측, 한국정보처리학회, 2012. |
Also Published As
Publication number | Publication date |
---|---|
KR20200088920A (en) | 2020-07-24 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
KR102492318B1 (en) | Model training method and apparatus, and data recognizing method | |
Cui et al. | A comparative study of HTM and other neural network models for online sequence learning with streaming data | |
EP2776988B1 (en) | Method and apparatus for using memory in probabilistic manner to store synaptic weights of neural network | |
JP5963315B2 (en) | Methods, devices, and circuits for neuromorphic / synaptronic spiking neural networks with synaptic weights learned using simulation | |
Shrestha et al. | Stable spike-timing dependent plasticity rule for multilayer unsupervised and supervised learning | |
US20160239592A1 (en) | Data-driven battery aging model using statistical analysis and artificial intelligence | |
KR950012269A (en) | Fault diagnosis device and method | |
CN111448573A (en) | System and method for mixed signal computation | |
US11755904B2 (en) | Method and device for controlling data input and output of fully connected network | |
US20200272891A1 (en) | Controller of array including neuromorphic element, method of arithmetically operating discretization step size, and program | |
US11928576B2 (en) | Artificial neural network circuit and method for switching trained weight in artificial neural network circuit | |
US11353833B2 (en) | Systems and methods for learning and predicting time-series data using deep multiplicative networks | |
KR102568410B1 (en) | Artificial intelligence system including preprocessor unit for sorting valid data | |
KR102251961B1 (en) | Method and apparatus of bidirectional hierarchical temporal memory for bidirectional prediction | |
De Cao et al. | Sparse interventions in language models with differentiable masking | |
JP2020057357A (en) | Operating method and training method of neural network, and neural network thereof | |
CN114819093A (en) | Strategy optimization method and device by utilizing environment model based on memristor array | |
JP2007066258A (en) | Arithmetic unit | |
JP7102080B2 (en) | Encoder programs, devices and methods for predicting future latent representations | |
KR101973678B1 (en) | Memristor-based sequential memory circuit and Driving Method thereof | |
KR20200108173A (en) | A neuromorphic processor for reducing the amount of computation for spiking neural network | |
CN115994221A (en) | Memristor-based text emotion detection system and method | |
CN111052150A (en) | Computing method for feedback in hierarchical neural networks | |
US11562225B2 (en) | Automatic monitoring and adjustment of machine learning model training | |
US9891606B2 (en) | Method and system for transmitting position switch status signal |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
E902 | Notification of reason for refusal | ||
E701 | Decision to grant or registration of patent right | ||
GRNT | Written decision to grant |