KR102356787B1 - 신경망을 이용한 기억 장치 및 그의 정확성-저장용량 트레이드오프에 기반한 정보의 자동적 재분배 및 가변적 저장 용량 구현을 위한 동작 방법 - Google Patents

신경망을 이용한 기억 장치 및 그의 정확성-저장용량 트레이드오프에 기반한 정보의 자동적 재분배 및 가변적 저장 용량 구현을 위한 동작 방법 Download PDF

Info

Publication number
KR102356787B1
KR102356787B1 KR1020190043444A KR20190043444A KR102356787B1 KR 102356787 B1 KR102356787 B1 KR 102356787B1 KR 1020190043444 A KR1020190043444 A KR 1020190043444A KR 20190043444 A KR20190043444 A KR 20190043444A KR 102356787 B1 KR102356787 B1 KR 102356787B1
Authority
KR
South Korea
Prior art keywords
synapse
information
input
variable
stable
Prior art date
Application number
KR1020190043444A
Other languages
English (en)
Other versions
KR20200121006A (ko
Inventor
백세범
이현수
박영진
Original Assignee
한국과학기술원
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by 한국과학기술원 filed Critical 한국과학기술원
Priority to KR1020190043444A priority Critical patent/KR102356787B1/ko
Priority to US16/674,919 priority patent/US11467728B2/en
Publication of KR20200121006A publication Critical patent/KR20200121006A/ko
Application granted granted Critical
Publication of KR102356787B1 publication Critical patent/KR102356787B1/ko

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06NCOMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
    • G06N3/00Computing arrangements based on biological models
    • G06N3/02Neural networks
    • G06N3/06Physical realisation, i.e. hardware implementation of neural networks, neurons or parts of neurons
    • G06N3/063Physical realisation, i.e. hardware implementation of neural networks, neurons or parts of neurons using electronic means
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
    • G06F3/06Digital input from, or digital output to, record carriers, e.g. RAID, emulated record carriers or networked record carriers
    • G06F3/0601Interfaces specially adapted for storage systems
    • G06F3/0602Interfaces specially adapted for storage systems specifically adapted to achieve a particular effect
    • G06F3/0604Improving or facilitating administration, e.g. storage management
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06NCOMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
    • G06N3/00Computing arrangements based on biological models
    • G06N3/02Neural networks
    • G06N3/06Physical realisation, i.e. hardware implementation of neural networks, neurons or parts of neurons
    • G06N3/063Physical realisation, i.e. hardware implementation of neural networks, neurons or parts of neurons using electronic means
    • G06N3/065Analogue means
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
    • G06F3/06Digital input from, or digital output to, record carriers, e.g. RAID, emulated record carriers or networked record carriers
    • G06F3/0601Interfaces specially adapted for storage systems
    • G06F3/0628Interfaces specially adapted for storage systems making use of a particular technique
    • G06F3/0638Organizing or formatting or addressing of data
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
    • G06F3/06Digital input from, or digital output to, record carriers, e.g. RAID, emulated record carriers or networked record carriers
    • G06F3/0601Interfaces specially adapted for storage systems
    • G06F3/0668Interfaces specially adapted for storage systems adopting a particular infrastructure
    • G06F3/0671In-line storage system
    • G06F3/0673Single storage device
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06NCOMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
    • G06N3/00Computing arrangements based on biological models
    • G06N3/02Neural networks
    • G06N3/04Architecture, e.g. interconnection topology
    • G06N3/049Temporal neural networks, e.g. delay elements, oscillating neurons or pulsed inputs
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06NCOMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
    • G06N3/00Computing arrangements based on biological models
    • G06N3/02Neural networks
    • G06N3/04Architecture, e.g. interconnection topology
    • G06N3/0499Feedforward networks
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06NCOMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
    • G06N3/00Computing arrangements based on biological models
    • G06N3/02Neural networks
    • G06N3/08Learning methods

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • Health & Medical Sciences (AREA)
  • Life Sciences & Earth Sciences (AREA)
  • Biomedical Technology (AREA)
  • Biophysics (AREA)
  • General Health & Medical Sciences (AREA)
  • Evolutionary Computation (AREA)
  • Molecular Biology (AREA)
  • Computing Systems (AREA)
  • Data Mining & Analysis (AREA)
  • Computational Linguistics (AREA)
  • Mathematical Physics (AREA)
  • Software Systems (AREA)
  • Artificial Intelligence (AREA)
  • Human Computer Interaction (AREA)
  • Neurology (AREA)
  • Image Analysis (AREA)
  • Semiconductor Memories (AREA)

Abstract

다양한 실시예들에 따른 신경망을 이용한 기억 장치 및 그의 정확성-저장용량 트레이드오프에 기반한 정보의 자동적 재분배 및 가변적 저장 용량 구현을 위한 동작 방법은, 신경망을 이용하여 입력되는 정보를 학습하고, 학습된 정보를 저장하도록 구성될 수 있다. 다양한 실시예들에 따르면, 신경망은, 다수 개의 입력 뉴런들과 다수개의 출력 뉴런들, 입력 뉴런들 중 적어도 어느 하나와 출력 뉴런들 중 적어도 어느 하나를 각각 연결하는 적어도 하나의 안정적 시냅스 및 입력 뉴런들 중 나머지와 출력 뉴런들 중 나머지를 각각 연결하는 적어도 하나의 가변적 시냅스를 포함할 수 있다.

Description

신경망을 이용한 기억 장치 및 그의 정확성-저장용량 트레이드오프에 기반한 정보의 자동적 재분배 및 가변적 저장 용량 구현을 위한 동작 방법{STORAGE DEVICE USING NEURAL NETWORK AND OPERATING METHOD FOR AUTOMATIC REDISTRIBUTION OF INFORMATION AND VARIABLE STORAGE CAPACITY BASED ON ACCURACY-STORAGE CAPACITY TRADEOFF THEREOF}
다양한 실시예들은 신경망을 이용한 기억 장치 및 그의 정확성-저장용량 트레이드오프에 기반한 정보의 자동적 재분배 및 가변적 저장 용량 구현을 위한 동작 방법에 관한 것이다.
일반적으로 기억 장치가 신경망을 이용하여 정보를 학습하고 저장하는 기술이 널리 사용되고 있다. 이러한 기술은, 기억 장치에 입력되는 정보의 양이 기억 장치의 저장용량 보다 적은 경우에 유용하다. 바꿔 말하면, 기억 장치에 입력되는 정보의 양이 기억 장치의 저장용량 보다 많은 경우, 기억 장치에 다양한 문제점들이 발생된다. 예를 들면, 기억 장치는 입력되는 정보를 학습하지 않거나, 입력되는 정보를 학습하기 위해 미리 저장된 정보를 삭제해야 한다.
상기와 같은 문제점들을 해결하기 위하여, 기억 장치의 물리적인 구조 변화가 고려될 수 있다. 이는, 기억 장치에서 신경망의 사이즈를 증대시키거나, 기억 장치에 신경망과 구분되는 외장 메모리를 추가하는 것으로, 가능하다. 이를 통해, 기억 장치의 저장용량이 증가될 수 있다. 그러나, 기억 장치에 입력되는 정보의 양이 기억 장치의 저장 용량 보다 많은 경우, 상기와 같은 문제점들이 동일하게 발생될 수 있다.
다양한 실시예들에 따르면, 기억 장치의 물리적인 구조 변화 없이, 기억 장치의 저장 용량을 효율적으로 사용할 수 있는 기억 장치 및 그의 동작 방법이 제공될 수 있다.
다양한 실시예들에 따르면, 기억 장치에 입력되는 정보의 양이 기억 장치의 저장용량을 초과하더라도, 미리 저장된 정보를 유지하면서, 입력되는 정보를 학습할 수 있는 기억 장치 및 그의 동작 방법이 제공될 수 있다.
다양한 실시예들에 따른 기억 장치는 메모리 및 상기 메모리에 연결되며, 신경망을 이용하여 입력되는 정보를 학습하고, 상기 학습된 정보를 상기 메모리에 저장하도록 구성되는 프로세서를 포함할 수 있다.
다양한 실시예들에 따르면, 상기 신경망은, 다수 개의 입력 뉴런들과 다수개의 출력 뉴런들, 상기 입력 뉴런들 중 적어도 어느 하나와 상기 출력 뉴런들 중 적어도 어느 하나를 각각 연결하는 적어도 하나의 안정적 시냅스 및 상기 입력 뉴런들 중 나머지와 상기 출력 뉴런들 중 나머지를 각각 연결하는 적어도 하나의 가변적 시냅스를 포함할 수 있다.
다양한 실시예들에 따른 기억 장치의 동작 방법은 입력되는 정보를 검출하는 동작, 신경망을 이용하여 상기 검출된 정보를 학습하는 동작 및 상기 학습된 정보를 저장하는 동작을 포함할 수 있다.
다양한 실시예들에 따르면, 상기 신경망은, 다수 개의 입력 뉴런들과 다수개의 출력 뉴런들, 상기 입력 뉴런들 중 적어도 어느 하나와 상기 출력 뉴런들 중 적어도 어느 하나를 각각 연결하는 적어도 하나의 안정적 시냅스 및 상기 입력 뉴런들 중 나머지와 상기 출력 뉴런들 중 나머지를 각각 연결하는 적어도 하나의 가변적 시냅스를 포함할 수 있다.
삭제
삭제
다양한 실시예들에 따르면, 기억 장치가 저장 용량을 효율적으로 사용할 수 있다. 즉 기억 장치는 물리적인 구조 변화 없이, 저장용량을 유동적으로 사용할 수 있다. 이를 통해, 기억 장치는 입력되는 정보의 양이 기억 장치의 저장용량을 초과하더라도, 미리 저장된 정보를 유지하면서, 입력되는 정보를 학습할 수 있도록, ㅈ저장된 정보를 재분배할 수 있다. 즉 기억 장치에서 정확성-저장용량 트레이드오프가 실현될 수 있다.
도 1은 다양한 실시예들에 따른 기억 장치를 도시하는 도면이다.
도 2는 다양한 실시예들에 따른 기억 장치에서 이용되는 신경망을 도시하는 도면이다.
도 3은 도 2의 안정적 시냅스와 가변적 시냅스의 특성을 설명하기 위한 도면이다.
도 4는 다양한 실시예들에 따른 기억 장치의 특성을 설명하기 위한 도면들이다.
도 5는 다양한 실시예들에 따른 기억 장치의 동작 방법을 도시하는 도면이다.
도 6, 도 7 및 도 8은 도 5의 검출된 정보 학습 동작을 설명하기 위한 도면들이다.
도 9, 도 10, 도 11 및 도 12는 다양한 실시예들에 따른 기억 장치의 성능을 설명하기 위한 도면들이다.
이하, 본 문서의 다양한 실시예들이 첨부된 도면을 참조하여 설명된다.
다양한 실시예들에 따른 기억 장치는 신경망(neural network)을 이용하여, 정보를 효과적으로 처리할 수 있다. 예를 들면, 기억 장치는 정보를 저장, 변형 또는 삭제할 수 있다. 기억 장치는 입력되는 정보를 학습하고, 학습된 정보를 저장할 수 있다. 이 때 기억 장치는 입력되는 정보의 양이 기억 장치의 저장용량을 초과하더라도, 미리 저장된 정보를 유지하면서, 입력되는 정보를 학습할 수 있다. 이를 위해, 기억 장치는 신경망을 기반으로, 미리 저장된 정보를 재분배하고 변형함으로써, 미리 저장된 정보를 유지할 수 있다.
도 1은 다양한 실시예들에 따른 기억 장치(100)를 도시하는 도면이다. 도 2는 다양한 실시예들에 따른 기억 장치(100)에서 이용되는 신경망(200)을 도시하는 도면이다. 도 3은 도 2의 안정적 시냅스(231)와 가변적 시냅스(233)의 특성을 설명하기 위한 도면이다. 도 4는 다양한 실시예들에 따른 기억 장치(100)의 특성을 설명하기 위한 도면들이다.
도 1을 참조하면, 다양한 실시예들에 따른 기억 장치(100)는 인터페이스(110), 메모리(120) 또는 프로세서(130) 중 적어도 어느 하나를 포함할 수 있다. 어떤 실시예에서는, 기억 장치(100)의 구성 요소들 중 적어도 어느 하나가 생략되거나, 기억 장치(100)에 하나 이상의 다른 구성 요소가 추가될 수 있다.
인터페이스(110)는 기억 장치(100)와 외부 장치(미도시)의 직접 또는 무선 연결을 위해 제공될 수 있다. 인터페이스(110)는 적어도 하나의 프로토콜을 지원할 수 있다. 예를 들면, 인터페이스(110)는 HDMI(high definition multimedia interface), USB(universal serial bus) 인터페이스, SD(secure digital) 카드 인터페이스 또는 오디오 인터페이스 중 적어도 어느 하나를 포함할 수 있다.
메모리(120)는 기억 장치(100)의 적어도 하나의 구성 요소에 의해 사용되는 다양한 데이터를 저장할 수 있다. 데이터는 적어도 하나의 프로그램 및 이와 관련된 명령에 대한 입력 데이터 또는 출력 데이터를 포함할 수 있다. 예를 들면, 메모리(120)는 휘발성 메모리 또는 비휘발성 메모리 중 적어도 어느 하나를 포함할 수 있다.
프로세서(130)는 메모리(120)의 프로그램을 실행하여, 기억 장치(100)의 구성 요소들 중 적어도 어느 하나를 제어할 수 있고, 데이터 처리 또는 연산을 수행할 수 있다. 프로세서(130)는 인터페이스(110)를 통해 입력되는 정보를 검출할 수 있다. 그리고 프로세서(130)는 신경망(200)을 이용하여, 입력되는 정보를 학습하고, 학습된 정보를 메모리(120)에 저장할 수 있다. 일 실시예에 따르면, 프로세서(130)는 입력되는 정보를 학습하면서, 신경망(200)을 기반으로, 메모리(120)에 미리 저장된 정보를 재분배할 수 있다. 이 때 프로세서(130)는 입력되는 정보의 양에 기반하여, 메모리(120)에 미리 저장된 정보를 자동적으로 재분배할 수 있다. 이를 통해, 프로세서(130)는 입력되는 정보의 양이 많더라도, 미리 저장된 정보 및 입력되는 정보를 기반으로 메모리(120)에 저장되는 정보의 정확성(accuracy)을 최소한으로 희생함으로써, 메모리(120)에 저장되는 정보의 양을 증가시킬 수 있다. 이에 따라, 기억 장치(100)에서, 정확성-저장용량 트레이드오프(accuracy-storage capacity tradeoff)가 실현될 수 있다.
다양한 실시예들에 따르면, 신경망(200)은, 도 2에 도시된 바와 같이 다수 개의 입력 뉴런(input neuron)들(210), 다수 개의 출력 뉴런(output neuron)들(220) 및 다수 개의 시냅스(synapse)들(230)을 포함할 수 있다. 입력 뉴런(210)들과 출력 뉴런(220)들은 각각 상호에 대응되며, 시냅스(230)들은 입력 뉴런(210)들과 출력 뉴런(220)들을 각각 연결할 수 있다. 이를 통해, 입력되는 정보가 각각의 입력 뉴런(210)을 통해 입력되고, 각각의 시냅스(230)의 시냅스 강도(synapse strength)에 따라 변환되며, 각각의 출력 뉴런(220)을 통해 출력될 수 있다. 여기서, 시냅스 강도는 0과 1 사이의 어느 한 값으로 결정되며, 가중치(weight)로 표현될 수 있다.
다양한 실시예들에 따르면, 신경망(200)은 정확성-저장용량 트레이드오프를 실현하도록 구성될 수 있다. 이를 위해, 시냅스(230)들은 적어도 하나의 안정적 시냅스(stable synapse)(231)와 적어도 하나의 가변적 시냅스(flexible synapse)(233)를 포함할 수 있다. 이 때 안정적 시냅스(231)와 가변적 시냅스(233)는, 도 3에 도시된 바와 같은 특성을 각각 가질 수 있다. 안정적 시냅스(231)의 시냅스 강도는 미리 정해진 강도로 고정될 수 있다. 이에 따라, 안정적 시냅스(231)는, 미리 저장된 정보가 입력되는 정보에 의해 변형되지 않고 유지되도록 할 수 있다. 예를 들면, 안정적 시냅스(231)의 시냅스 강도가 미리 정해진 강도 미만이면, 안정적 시냅스(231)의 시냅스 강도는 조절될 수 있다. 여기서, 안정적 시냅스(231)의 시냅스 강도는 강화될 수 있다. 그리고 안정적 시냅스(231)의 시냅스 강도가 미리 정해진 강도에 도달하면, 안정적 시냅스(231)의 시냅스 강도는 더 이상 조절되지 않고, 유지될 수 있다. 가변적 시냅스(233)의 시냅스 강도는 고정되지 않고, 계속해서 조절될 수 있다. 이에 따라, 가변적 시냅스(233)는, 입력되는 정보가 계속해서 학습되도록 할 수 있다. 예를 들면, 가변적 시냅스(233)의 시냅스 강도는 강화될 수 있으며, 약화될 수도 있다.
이를 통해, 프로세서(130)는 신경망(200)을 이용하여 입력되는 정보를 학습하면서, 안정적 시냅스(231)의 시냅스 강도 또는 가변적 시냅스(233)의 시냅스 강도 중 적어도 어느 하나를 조절할 수 있다. 이 때 안정적 시냅스(231)의 시냅스 강도가 미리 정해진 강도이면, 프로세서(130)는 안정적 시냅스(231)의 시냅스 강도를 유지하고, 가변적 시냅스(233)의 시냅스 강도를 조절할 수 있다. 예를 들면, 프로세서(130)는 가변적 시냅스(233)의 시냅스 강도를 0과 1 사이에서 강화시키거나, 약화시킬 수 있다. 한편, 안정적 시냅스(231)의 시냅스 강도가 미리 정해진 강도 미만이면, 프로세서(130)는 안정적 시냅스(231)의 시냅스 강도와 가변적 시냅스(233)의 시냅스 강도를 조절할 수 있다. 예를 들면, 프로세서(130)는 안정적 시냅스(231)의 시냅스 강도를 0과 1 사이에서 강화시키고, 가변적 시냅스(233)의 시냅스 강도를 0과 1 사이에서 강화시키거나, 약화시킬 수 있다.
다양한 실시예들에 따르면, 기억 장치(100)의 특성이 시냅스(230)들에서 안정적 시냅스(231)와 가변적 시냅스(233)의 비율에 따라 결정될 수 있다. 이 때 기억 장치(100)의 특성은 안정성과 가변성을 포함할 수 있다. 안정성은 미리 저장된 정보를 유지하고자 하는 특성을 나타내고, 가변성은 입력되는 정보를 학습하고자 하는 특성을 나타낼 수 있다. 여기서, 기억 장치(100)의 안정성이 높을수록, 미리 저장된 정보 및 입력되는 정보를 기반으로 기억 장치(100)에 저장되는 정보의 정확성이 높을 수 있다. 시냅스(230)들에서 안정적 시냅스(231)의 비율이 가변적 시냅스(233)의 비율(λ) 보다 높으면, 기억 장치(100)에서 안정성이 가변성 보다 높을 수 있다. 여기서, 시냅스(230)들에서 안정적 시냅스(231)의 비율이 높을수록, 신경망(200)의 안정성이 높을 수 있다. 시냅스(230)들에서 가변적 시냅스(233)의 비율(λ)이 안정적 시냅스(231)의 비율 보다 높으면, 기억 장치(100)에서 가변성이 안정성 보다 높을 수 있다. 시냅스(230)들에서 가변적 시냅스(233)의 비율(λ)은, 도 4의 (a)에 도시된 바와 같이 0과 1 사이에서 결정될 수 있다. 여기서, 도 4의 (b)에 도시된 바와 같이 시냅스(230)들에서 가변적 시냅스(231)의 비율이 높을수록, 신경망(200)의 가변성이 높을 수 있다.
일 실시예에 따르면, 신경망(200)은 피드포워드(feed forward) 스파이킹(spiking) 신경망을 포함할 수 있다. 피드포워드 스파이킹 신경망은 실제 신경세포의 생물학적 특징을 모사한 LIF(leaky-integrate-and-fire) 모델을 사용하여 구현될 수 있다. 그리고 피드포워드 스파이킹 신경망에서 시냅스(230)들의 시냅스 강도는 스파이크 타이밍 의존성 가소성(spike-timing-dependent plasticity; STDP) 학습 규칙에 따라 조절될 수 있다. LIF 모델은 하기 [수학식 1] 및 [수학식 2]와 같이 표현되고, 스파이크 타이밍 의존성 가소성(STDP) 학습 규칙은 하기 [수학식 3] 및 [수학식 4]와 같이 표현될 수 있다.
Figure 112019038077481-pat00001
여기서, Vj는 막 전위를 나타내고, C는 세포막 커패시턴스를 나타내고, gL은 막 컨덕턴스를 나타내고, EL은 휴지 전위를 나타내고, Esyn은 반전 전위를 나타내며, gj는 전위 의존성 채널 컨덕턴스를 나타내고 하기 [수학식 2]와 같이 표현될 수 있다.
Figure 112019038077481-pat00002
여기서, Si는 입력 뉴런(210)들이 발화하는 스파이크들을 나타내고, wi,j는 시냅스(230)들의 시냅스 강도를 나타내고, csyn은 스파이크들에 의해 유도되는 출력 뉴런(220)들의 EPSC(excitatory postsynaptic conductance)의 크기를 나타낼 수 있다. 막 전위 Vj가 특정 한계점(- 55 mV)을 넘으면, 활동 전위가 일어나 출력 뉴런(220)들이 발화하게 되고, 막 전위 Vj는 휴지 전위 EL로 돌아갈 수 있다.
Figure 112019038077481-pat00003
여기서, 안정적 시냅스(231)의 시냅스 강도는 미리 정해진 강도(최대값과 최소값 차이의 1%)에 도달하면, 더 이상 조절되지 않으며, 하기 [수학식 4]와 같이 표현될 수 있다.
Figure 112019038077481-pat00004
여기서, α는 0과 1 사이에서 결정될 수 있다.
다양한 실시예들에 따른 기억 장치(100)는 정확성-저장용량 트레이드오프에 기반한 정보의 자동적 재분배 및 가변적 저장 용량 구현을 위한 것으로, 입력되는 정보를 검출하는 동작, 신경망을 이용하여 검출된 정보를 학습하는 동작 및 학습된 정보를 저장하는 동작을 실행하기 위한 하나 이상의 프로그램들을 저장하고 있을 수 있다.
다양한 실시예들에 따른 기억 장치(100)는, 메모리(120) 및 메모리(120)에 연결되며, 신경망(200)을 이용하여 입력되는 정보를 학습하고, 학습된 정보를 메모리(120)에 저장하도록 구성되는 프로세서(130)를 포함할 수 있다.
다양한 실시예들에 따르면, 신경망(200)은, 다수 개의 입력 뉴런(210)들과 다수개의 출력 뉴런(220)들, 입력 뉴런(210)들 중 적어도 어느 하나와 출력 뉴런(220)들 중 적어도 어느 하나를 각각 연결하는 적어도 하나의 안정적 시냅스(231) 및 입력 뉴런(210)들 중 나머지와 출력 뉴런(220)들 중 나머지를 각각 연결하는 적어도 하나의 가변적 시냅스(233)를 포함할 수 있다.
다양한 실시예들에 따르면, 프로세서(130)는, 정보가 순차적으로 입력됨에 따라, 시냅스 가소성에 따라 안정적 시냅스(231)의 시냅스 강도 또는 가변적 시냅스(233)의 시냅스 강도 중 적어도 하나를 조절하여, 입력되는 정보를 학습하도록 구성될 수 있다.
다양한 실시예들에 따르면, 프로세서(130)는, 순차적으로 입력되는 정보의 양이 메모리(120)의 저장용량보다 적으면, 입력되는 정보를 안정적 시냅스(231) 및 가변적 시냅스(233)에 분산하여, 안정적 시냅스(231)와 가변적 시냅스(233)가 입력되는 정보를 학습하게 하고, 메모리(120)의 저장용량이 포화된 상태에서 추가로 정보가 입력되면, 안정적 시냅스(231)는 계속 미리 저장된 정보를 보존하고, 가변적 시냅스(233)는 추가로 입력되는 정보를 학습하게 할 수 있다.
삭제
삭제
다양한 실시예들에 따르면, 프로세서(130)는, 안정적 시냅스(231)의 시냅스 강도가 미리 정해진 강도이면, 안정적 시냅스(231)의 시냅스 강도를 유지하고, 가변적 시냅스(233)의 시냅스 강도를 조절하도록 구성될 수 있다.
다양한 실시예들에 따르면, 프로세서(130)는, 안정적 시냅스(231)의 시냅스 강도가 미리 정해진 강도 미만이면, 안정적 시냅스(231)의 시냅스 강도와 가변적 시냅스(233)의 시냅스 강도를 조절하도록 구성될 수 있다.
다양한 실시예들에 따르면, 신경망(200)은 피드포워드 스파이킹 신경망을 포함할 수 있다.
다양한 실시예들에 따르면, 프로세서(130)는, 입력되는 정보를 스파이크 형태의 적어도 하나의 시간적 패턴으로 변환하고, 피드포워드 스파이킹 신경망을 이용하여 시간적 패턴을 학습하도록 구성될 수 있다.
다양한 실시예들에 따르면, 프로세서(130)는, 스파이크 타이밍 의존성 가소성(STDP) 학습 규칙에 기반하여, 안정적 시냅스(231)의 시냅스 강도 또는 가변적 시냅스(233)의 시냅스 강도 중 적어도 어느 하나를 조절하도록 구성될 수 있다.
다양한 실시예들에 따르면, 기억 장치(100)가 저장 용량을 효율적으로 사용할 수 있다. 즉 기억 장치(100)는 물리적인 구조 변화 없이, 저장용량을 유동적으로 사용할 수 있다. 기억 장치(100)는 신경망(200)을 기반으로, 미리 저장된 정보를 재분배하고 변형함으로써, 미리 저장된 정보를 유지할 수 있다. 이를 통해, 기억 장치(100)는 입력되는 정보의 양이 기억 장치의 저장용량을 초과하더라도, 미리 저장된 정보를 유지하면서, 입력되는 정보를 학습할 수 있다. 즉 기억 장치(100)에서 정확성-저장용량 트레이드오프가 실현될 수 있다.
도 5는 다양한 실시예들에 따른 기억 장치(100)의 동작 방법을 도시하는 도면이다. 도 6, 도 7 및 도 8은 도 5의 검출된 정보 학습 동작을 설명하기 위한 도면들이다.
도 5를 참조하면, 기억 장치(100)는 510 동작에서 입력되는 정보를 검출할 수 있다. 프로세서(130)가 인터페이스(110)를 통해 입력되는 정보를 검출할 수 있다.
기억 장치(100)는 520 동작에서 검출되는 정보를 학습할 수 있다. 이 때 정보의 학습은 신경망(200)에 정보가 입력되었을 때 시냅스 가소성에 기반하여 신경망(200)을 구성하는 안정적 시냅스(231) 또는 가변적 시냅스(233)의 시냅스 강도 중 적어도 하나를 조절하는 것을 말한다. 프로세서(130)는 신경망(200)의 시냅스 가소성을 이용하여, 검출되는 정보를 학습할 수 있다. 이 때 기억 장치(100)는 미리 저장된 정보를 재분배할 수 있다. 프로세서(130)는 신경망(200)을 이용하여, 메모리(120)에 미리 저장된 정보를 재분배할 수 있다. 여기서, 프로세서(130)는 입력되는 정보의 양에 기반하여, 메모리(120)에 미리 저장된 정보를 자동적으로 재분배할 수 있다. 예를 들면, 입력되는 정보의 양이 기억 장치(100)의 저장용량을 초과하면, 프로세서(130)가 메모리(120)에 미리 저장된 정보를 재분배할 수 있다. 여기서, 정보의 재분배는 신경망에 저장된 기존 정보를 일부 삭제하여 신규 정보가 학습될 수 있는 저장용량을 확보하되, 기존 정보를 완전히 삭제하지는 않고 일부 보존하여 기존 정보와 신규 정보가 공존할 수 있게 하는 것을 의미한다. 구체적으로, 프로세서(130)는, 순차적으로 입력되는 정보의 양이 메모리(120)의 저장용량보다 적으면, 입력되는 정보를 안정적 시냅스(231) 및 가변적 시냅스(233)에 분산하여, 안정적 시냅스(231)와 가변적 시냅스(233)가 입력되는 정보를 학습하게 하고, 메모리(120)의 저장용량이 포화된 상태에서 추가로 정보가 입력되면, 안정적 시냅스(231)는 계속 미리 저장된 정보를 보존하고, 가변적 시냅스(233)는 추가로 입력되는 정보를 학습하게 할 수 있다.
다양한 실시예들에 따르면, 신경망(200)은 다수 개의 입력 뉴런들(210), 다수 개의 출력 뉴런들(220) 및 입력 뉴런(210)들과 출력 뉴런(220)들을 각각 연결하는 다수 개의 시냅스들(230)을 포함할 수 있다. 이 때 신경망(200)은 정확성-저장용량 트레이드오프를 실현하도록 구성될 수 있다. 이를 위해, 시냅스(230)들은 적어도 하나의 안정적 시냅스 (231)와 적어도 하나의 가변적 시냅스(233)를 포함할 수 있다.
검출되는 정보를 학습하면서, 프로세서(130)는 시냅스(230)들 중 적어도 어느 하나의 시냅스 강도를 조절할 수 있다. 여기서, 시냅스 강도는 0과 1 사이의 어느 한 값으로 결정되며, 가중치로 표현될 수 있다. 이 때 프로세서(130)는 안정적 시냅스(231)의 시냅스 강도 또는 가변적 시냅스(233)의 시냅스 강도 중 적어도 어느 하나를 조절할 수 있다. 안정적 시냅스(231)의 시냅스 강도가 미리 정해진 강도 미만이면, 프로세서(130)는 안정적 시냅스(231)의 시냅스 강도와 가변적 시냅스(233)의 시냅스 강도를 조절할 수 있다. 여기서, 프로세서(130)는 안정적 시냅스(231)의 시냅스 강도를 강화시킬 수 있으며, 가변적 시냅스(233)의 시냅스 강도를 강화시키거나 약화시킬 수 있다. 한편, 안정적 시냅스(231)의 시냅스 강도가 미리 정해진 강도이면, 프로세서(130)는 안정적 시냅스(231)의 시냅스 강도를 유지하고, 가변적 시냅스(233)의 시냅스 강도를 조절할 수 있다. 여기서, 프로세서(130)는 가변적 시냅스(233)의 시냅스 강도를 강화시키거나 약화시킬 수 있다.
일 실시예에 따르면, 신경망(200)은 피드포워드 스파이킹 신경망을 포함할 수 있다. 이러한 경우, 프로세서(130)는, 도 6에 도시된 바와 같이, 예컨대 이미지, 텍스트 등과 같은 입력되는 정보(600)를 스파이크 형태의 적어도 하나의 시간적 패턴(601, 602, 603)으로 변환하고, 피드포워드 스파이킹 신경망을 이용하여 시간적 패턴(601, 602, 603)을 학습할 수 있다. 이 때 프로세서(130)는, 도 7에 도시된 바와 같이 스파이크 타이밍 의존성 가소성(STDP) 학습 규칙에 기반하여, 시냅스(230)들 중 적어도 어느 하나의 시냅스 강도를 조절할 수 있다. 도 7의 (a)에 도시된 바와 같이 시냅스(230)들이 입력 뉴런(210)들과 출력 뉴런(220)들을 각각 연결하고 있을 때, 프로세서(130)는 도 7의 (b)에 도시된 바와 같이 시냅스(230)들 중 적어도 어느 하나의 시냅스 강도를 강화시키거나 약화시킬 수 있다.
예를 들면, 도 8의 (a)에 도시된 바와 같이 시냅스(230)들이 입력 뉴런(210)들과 출력 뉴런(220)들을 각각 연결하고 있을 때, 프로세서(130)는, 도 8의 (b)에 도시된 바와 같이 시냅스(230)들 중 적어도 어느 하나의 강도를 입력 스파이크와 출력 스파이크의 시간차에 기반하여 조절할 수 있다. 입력 스파이크가 출력 스파이크 보다 먼저 발생되는 경우(Δt > 0), 프로세서(130)는 시냅스 강도를 강화시키고, 출력 스파이크가 입력 스파이크 보다 먼저 발생되는 경우(Δt < 0), 프로세서(130)는 시냅스 강도를 약화시킬 수 있다.
기억 장치(100)는 530 동작에서 학습된 정보를 저장할 수 있다. 프로세서(130)는 메모리(120)에 학습된 정보를 저장할 수 있다.
다양한 실시예들에 따른 기억 장치(100)의 동작 방법은 정확성-저장용량 트레이드오프에 기반한 정보의 자동적 재분배 및 가변적 저장 용량 구현을 위한 것으로, 입력되는 정보를 검출하는 동작, 신경망(200)을 이용하여 검출된 정보를 학습하는 동작 및 학습된 정보를 저장하는 동작을 포함할 수 있다.
다양한 실시예들에 따르면, 신경망(200)은, 다수 개의 입력 뉴런(210)들과 다수개의 출력 뉴런(220)들, 입력 뉴런(210)들 중 적어도 어느 하나와 출력 뉴런(220)들 중 적어도 어느 하나를 각각 연결하는 적어도 하나의 안정적 시냅스(231) 및 입력 뉴런(210)들 중 나머지와 출력 뉴런(220)들 중 나머지를 각각 연결하는 적어도 하나의 가변적 시냅스(233)를 포함할 수 있다.
다양한 실시예들에 따르면, 학습 동작은, 정보가 순차적으로 입력됨에 따라, 시냅스 가소성에 따라 안정적 시냅스(231)의 시냅스 강도 또는 가변적 시냅스(233)의 시냅스 강도 중 적어도 하나를 조절하여, 입력되는 정보를 학습할 수 있다.
다양한 실시예들에 따르면, 학습 동작은, 순차적으로 입력되는 정보의 양이 메모리(120)의 저장용량보다 적으면, 입력되는 정보를 안정적 시냅스(231) 및 가변적 시냅스(233)에 분산하여, 안정적 시냅스(231)와 가변적 시냅스(233)가 입력되는 정보를 학습하게 하고, 메모리(120)의 저장용량이 포화된 상태에서 추가로 정보가 입력되면, 안정적 시냅스(231)는 계속 미리 저장된 정보를 보존하고, 가변적 시냅스(233)는 추가로 입력되는 정보를 학습하게 할 수 있다.
삭제
삭제
다양한 실시예들에 따르면, 조절 동작은, 안정적 시냅스(231)의 시냅스 강도가 미리 정해진 강도이면, 안정적 시냅스(231)의 시냅스 강도를 유지하면서, 가변적 시냅스(233)의 시냅스 강도를 조절하는 동작을 포함할 수 있다.
다양한 실시예들에 따르면, 조절 동작은, 안정적 시냅스(231)의 시냅스 강도가 미리 정해진 강도 미만이면, 안정적 시냅스(231)의 시냅스 강도와 가변적 시냅스(233)의 시냅스 강도를 조절하는 동작을 더 포함할 수 있다.
다양한 실시예들에 따르면, 신경망(200)은 피드포워드 스파이킹 신경망을 포함할 수 있다.
다양한 실시예들에 따르면, 학습 동작은, 검출된 정보를 스파이크 형태의 적어도 하나의 시간적 패턴으로 변환하는 동작 및 피드포워드 스파이킹 신경망을 이용하여 시간적 패턴을 학습하는 동작을 포함할 수 있다.
다양한 실시예들에 따르면, 조절 동작은, 스파이크 타이밍 의존성 가소성(STDP) 학습 규칙에 기반하여, 안정적 시냅스(231)의 시냅스 강도 또는 가변적 시냅스(233)의 시냅스 강도 중 적어도 어느 하나를 조절하는 동작을 포함할 수 있다.
다양한 실시예들에 따르면, 기억 장치(100)가 저장 용량을 효율적으로 사용할 수 있다. 즉 기억 장치(100)는 물리적인 구조 변화 없이, 저장용량을 유동적으로 사용할 수 있다. 기억 장치(100)는 신경망(200)을 기반으로, 미리 저장된 정보를 재분배하고 변형함으로써, 미리 저장된 정보를 유지할 수 있다. 이를 통해, 기억 장치(100)는 입력되는 정보의 양이 기억 장치의 저장용량을 초과하더라도, 미리 저장된 정보를 유지하면서, 입력되는 정보를 학습할 수 있다. 즉 기억 장치(100)에서 정확성-저장용량 트레이드오프가 실현될 수 있다.
도 9, 도 10, 도 11 및 도 12는 다양한 실시예들에 따른 기억 장치(100)의 성능을 설명하기 위한 도면들이다.
도 9를 참조하면, 다양한 실시예들에 따른 기억 장치(100)는 신경망(200)을 이용할 수 있다. 다양한 실시예들에 따르면, 신경망(200)은 입력 뉴런(210)들, 출력 뉴런(220)들 및 시냅스(230)들을 포함하며, 시냅스(230)들이 적어도 하나의 안정적 시냅스(231)와 적어도 하나의 가변적 시냅스(233)를 포함할 수 있다. 다양한 실시예들에 따르면, 시냅스(230)들에서 가변적 시냅스(233)의 비율(λ)이 0과 1 사이에서 결정될 수 있다.
이와 비교하여, 일반적인 기술들에 따른 신경망(901, 903)들이 정의될 수 있다. 일반적인 기술 1에 따른 신경망(901)은 입력 뉴런(910)들, 출력 뉴런(920)들 및 안정적 시냅스(931)들을 포함할 수 있다. 일반적인 기술 1에 따르면, 신경망(901)은 가변적 시냅스를 포함하지 않으므로, 가변적 시냅스의 비율(λ)이 0일 수 있다. 일반적인 기술 2에 따른 신경망(903)은 입력 뉴런(910)들, 출력 뉴런(920)들 및 가변적 시냅스(933)들을 포함할 수 있다. 일반적인 기술 2에 따르면, 신경망(903)은 안정적 시냅스를 포함하지 않으므로, 가변적 시냅스(933)의 비율(λ)이 1일 수 있다.
이 때 신경망(200, 901, 903)들의 저장 성능을 나타내는 기억 인덱스(memory index)가 정의될 수 있다. 기억 인덱스는 학습된 패턴을 신경망(200, 901, 903)들에 순차적으로 입력하여 얼마나 일정한 출력 패턴을 보이는 지를 측정함으로써, 검출될 수 있다. 이 때 기억 인덱스는 하기 [수학식 5]와 같이 정의될 수 있다. 즉 신경망(200, 901, 903)들의 저장 성능을 비교하기 위해, 신경망(200, 901, 903)들의 기억 인덱스가 검출될 수 있다. 예를 들면, 모든 입력 뉴런(210, 910)들이 무작위로 한 번씩 발화하는 일정 길이(예컨대, 100 ms)의 6 개의 시간적 패턴들을 형성하고, 이 패턴들을 신경망(200, 901, 903)들에 순차적으로 일정 횟수(예컨대, 50 회) 입력하여 학습시킴으로써, 신경망(200, 901, 903)들의 기억 인덱스가 검출될 수 있다.
Figure 112019038077481-pat00005
여기서, Si는 출력 패턴을 나타내고, Npair와 Nfiring은 기억 인덱스를 총 패턴의 경우의 수와 스파이크 개수에 따라 정규화하기 위한 상수를 나타낼 수 있다.
일반적인 기술 1에 따르면, 신경망(901)에서 도 10의 (a)에 도시된 바와 같이 기억 인덱스의 변화가 이루어질 수 있다. 이는, 미리 저장된 정보의 유지 성능은 강화되는 데 반해, 신규로 입력되는 정보에 대한 학습 성능은 약화됨을 나타낼 수 있다. 일반적인 기술 2에 따르면, 신경망(903)에서 도 10의 (b)에 도시된 바와 같이 기억 인덱스의 변화가 이루어질 수 있다. 이는, 미리 저장된 정보의 유지 성능은 약화되는 데 반해, 신규로 입력되는 정보에 대한 학습 성능은 강화됨을 나타낼 수 있다. 다양한 실시예들에 따르면, 신경망(200)에서 도 10의 (c)에 도시된 바와 같이 기억 인덱스의 변화가 이루어질 수 있다. 이는, 미리 저장된 정보의 유지 성능 및 신규로 입력되는 정보에 대한 학습 성능이 일정 수준 이상으로 강화됨을 나타낼 수 있다. 이러한 양상은, 도 11에 도시된 바와 같이, 신경망(200)에서 학습되는 정보의 양과 상관 없이, 동일하게 나타날 수 있다. 아울러, 일반적인 기술 1, 일반적인 기술 2 및 다양한 실시예들에 따라 저장되는 정보의 정확성이 도 12의 (a)에 도시된 바와 같이 표현될 수 있다.
다양한 실시예들에 따르면, 신경망(200)이 안정적 시냅스(231)와 가변적 시냅스(233)를 모두 포함함에 따라, 기억 장치(100)는 도 12의 (a)에 도시된 바와 같이 미리 저장된 정보를 유지하면서, 입력되는 정보를 학습할 수 있다. 이를 위해, 기억 장치(100)는 신경망(200)을 기반으로, 미리 저장된 정보를 재분배하고 변형함으로써, 미리 저장된 정보를 유지할 수 있다. 아울러, 기억 장치(100)는 학습된 정보를 추가적으로 저장하기 위하여, 도 12의 (b)에 도시된 바와 같이 기억장치(100)의 정확성을 제어하여, 도 12의 (c)에 도시된 바와 같이 기억 장치(100)의 저장용량을 증가시킬 수 있다. 즉 기억 장치(100)는 미리 저장된 정보를 재분배하여, 정확성-저장용량 트레이드오프를 실현할 수 있다. 이에 따라, 기억 장치(100)가 입력되는 정보의 양에 기반하여, 기억 장치(100)의 저장용량을 유동적으로 사용할 수 있다.
다양한 실시예들은 신경망을 사용하는 산업 및 제품 전반에 적용 및 응용 가능하다. 신경망을 사용하는 기술의 예시로는 AI 맞춤형 비서, 인지 컴퓨팅, 인공 시각, 웨어러블 로봇 제어 등 신경망을 정보 저장의 핵심 알고리즘으로 이용하는 시스템들이 있는데, 이 경우 연속적으로 학습 가능한 메모리 시스템을 탑재하여야 하므로 본 발명에서 제시하는 방법이 중요하게 적용될 수 있다. 또한, 인간의 뇌를 모사한 뉴로모픽 저장 장치 하드웨어의 설계 시, 다양한 실시예들의 학습 규칙 및 시스템을 그대로 적용하여 생물학적 뇌의 유동적인 기억 특성을 모사할 수 있다.
다양한 실시예들은 인간처럼 평생 학습해야 하는 인공지능의 구현에 특히 적합하게 적용될 수 있다. AI 비서나 반려견 로봇 등 인간처럼 평생 학습하는 인공지능은 그 특성상 입력 데이터가 기하급수적으로 많아, 적절한 망각 없이 모든 입력을 기억하는 방식으로는 구현되기 어렵다. 탐사로봇이나 체내에 삽입되는 나노봇 등 외부와 물리적으로 격리되어 하드웨어를 추가하기 어려운 상황에서는 다양한 실시예들의 알고리즘이 효율적으로 응용되어 꼭 필요한 정보만을 선별적으로 저장할 수 있을 것으로 예상된다.
본 문서의 다양한 실시예들 및 이에 사용된 용어들은 본 문서에 기재된 기술을 특정한 실시 형태에 대해 한정하려는 것이 아니며, 해당 실시 예의 다양한 변경, 균등물, 및/또는 대체물을 포함하는 것으로 이해되어야 한다. 도면의 설명과 관련하여, 유사한 구성요소에 대해서는 유사한 참조 부호가 사용될 수 있다. 단수의 표현은 문맥상 명백하게 다르게 뜻하지 않는 한, 복수의 표현을 포함할 수 있다. 본 문서에서, "A 또는 B", "A 및/또는 B 중 적어도 하나", "A, B 또는 C" 또는 "A, B 및/또는 C 중 적어도 하나" 등의 표현은 함께 나열된 항목들의 모든 가능한 조합을 포함할 수 있다. "제 1", "제 2", "첫째" 또는 "둘째" 등의 표현들은 해당 구성요소들을, 순서 또는 중요도에 상관없이 수식할 수 있고, 한 구성요소를 다른 구성요소와 구분하기 위해 사용될 뿐 해당 구성요소들을 한정하지 않는다. 어떤(예: 제 1) 구성요소가 다른(예: 제 2) 구성요소에 "(기능적으로 또는 통신적으로) 연결되어" 있다거나 "접속되어" 있다고 언급된 때에는, 상기 어떤 구성요소가 상기 다른 구성요소에 직접적으로 연결되거나, 다른 구성요소(예: 제 3 구성요소)를 통하여 연결될 수 있다.
본 문서에서 사용된 용어 "모듈"은 하드웨어, 소프트웨어 또는 펌웨어로 구성된 유닛을 포함하며, 예를 들면, 로직, 논리 블록, 부품, 또는 회로 등의 용어와 상호 호환적으로 사용될 수 있다. 모듈은, 일체로 구성된 부품 또는 하나 또는 그 이상의 기능을 수행하는 최소 단위 또는 그 일부가 될 수 있다. 예를 들면, 모듈은 ASIC(application-specific integrated circuit)으로 구성될 수 있다.
본 문서의 다양한 실시예들은 기기(machine)(예: 전자 장치)에 의해 읽을 수 있는 저장 매체(storage medium)(예: 메모리(120))에 저장된 하나 이상의 명령어들을 포함하는 소프트웨어로서 구현될 수 있다. 예를 들면, 기기의 프로세서(예: 프로세서(130))는, 저장 매체로부터 저장된 하나 이상의 명령어들 중 적어도 하나의 명령을 호출하고, 그것을 실행할 수 있다. 이것은 기기가 호출된 적어도 하나의 명령어에 따라 적어도 하나의 기능을 수행하도록 운영되는 것을 가능하게 한다. 하나 이상의 명령어들은 컴파일러에 의해 생성된 코드 또는 인터프리터에 의해 실행될 수 있는 코드를 포함할 수 있다. 기기로 읽을 수 있는 저장매체 는, 비일시적(non-transitory) 저장매체의 형태로 제공될 수 있다. 여기서, ‘비일시적’은 저장매체가 실재(tangible)하는 장치이고, 신호(signal)(예: 전자기파)를 포함하지 않는다는 것을 의미할 뿐이며, 이 용어는 데이터가 저장매체에 반영구적으로 저장되는 경우와 임시적으로 저장되는 경우를 구분하지 않는다.
다양한 실시예들에 따르면, 기술한 구성요소들의 각각의 구성요소(예: 모듈 또는 프로그램)는 단수 또는 복수의 개체를 포함할 수 있다. 다양한 실시예들에 따르면, 전술한 해당 구성요소들 중 하나 이상의 구성요소들 또는 동작들이 생략되거나, 또는 하나 이상의 다른 구성요소들 또는 동작들이 추가될 수 있다. 대체적으로 또는 추가적으로, 복수의 구성요소들(예: 모듈 또는 프로그램)은 하나의 구성요소로 통합될 수 있다. 이런 경우, 통합된 구성요소는 복수의 구성요소들 각각의 구성요소의 하나 이상의 기능들을 통합 이전에 복수의 구성요소들 중 해당 구성요소에 의해 수행되는 것과 동일 또는 유사하게 수행할 수 있다. 다양한 실시예들에 따르면, 모듈, 프로그램 또는 다른 구성요소에 의해 수행되는 동작들은 순차적으로, 병렬적으로, 반복적으로, 또는 휴리스틱하게 실행되거나, 동작들 중 하나 이상이 다른 순서로 실행되거나, 생략되거나, 또는 하나 이상의 다른 동작들이 추가될 수 있다.

Claims (20)

  1. 기억 장치에 있어서,
    메모리; 및
    상기 메모리에 연결되며, 신경망을 이용하여 입력되는 정보를 학습하고, 상기 학습된 정보를 상기 메모리에 저장하도록 구성되는 프로세서를 포함하며,
    상기 신경망은,
    다수 개의 입력 뉴런들과 다수개의 출력 뉴런들;
    상기 입력 뉴런들 중 적어도 어느 하나와 상기 출력 뉴런들 중 적어도 어느 하나를 각각 연결하는 적어도 하나의 안정적 시냅스; 및
    상기 입력 뉴런들 중 나머지와 상기 출력 뉴런들 중 나머지를 각각 연결하는 적어도 하나의 가변적 시냅스를 포함하고,
    상기 프로세서는,
    정보가 순차적으로 입력됨에 따라, 시냅스 가소성에 따라 상기 안정적 시냅스의 시냅스 강도 또는 상기 가변적 시냅스의 시냅스 강도 중 적어도 하나를 조절하여, 입력되는 정보를 학습하도록 구성되고,
    상기 프로세서는,
    순차적으로 입력되는 정보의 양이 상기 메모리의 저장용량보다 적으면, 입력되는 정보를 안정적 시냅스 및 가변적 시냅스에 분산하여, 안정적 시냅스와 가변적 시냅스가 입력되는 정보를 학습하게 하고,
    상기 메모리의 저장용량이 포화된 상태에서 추가로 정보가 입력되면, 안정적 시냅스는 계속 미리 저장된 정보를 보존하고, 가변적 시냅스는 추가로 입력되는 정보를 학습하게 하는,
    기억 장치.
  2. 삭제
  3. 삭제
  4. 삭제
  5. 제 1 항에 있어서, 상기 프로세서는,
    상기 안정적 시냅스의 시냅스 강도가 미리 정해진 강도이면, 상기 안정적 시냅스의 시냅스 강도를 유지하고, 상기 가변적 시냅스의 시냅스 강도를 조절하도록 구성되는 기억 장치.
  6. 제 5 항에 있어서, 상기 프로세서는,
    상기 안정적 시냅스의 시냅스 강도가 상기 정해진 강도 미만이면, 상기 안정적 시냅스의 시냅스 강도와 상기 가변적 시냅스의 시냅스 강도를 조절하도록 구성되는 기억 장치.
  7. 제 1 항에 있어서,
    상기 신경망은 피드포워드 스파이킹 신경망을 포함하는 기억 장치.
  8. 제 7 항에 있어서, 상기 프로세서는,
    입력되는 정보를 스파이크 형태의 적어도 하나의 시간적 패턴으로 변환하고,
    상기 피드포워드 스파이킹 신경망을 이용하여 상기 시간적 패턴을 학습하도록 구성되는 기억 장치.
  9. 제 7 항에 있어서, 상기 프로세서는,
    STDP(spike timing dependent plasticity) 학습 규칙에 기반하여, 상기 안정적 시냅스의 시냅스 강도 또는 상기 가변적 시냅스의 시냅스 강도 중 적어도 어느 하나를 조절하도록 구성되는 기억 장치.
  10. 메모리를 갖는 기억 장치의 동작 방법에 있어서,
    입력되는 정보를 검출하는 동작;
    신경망을 이용하여 상기 검출된 정보를 학습하는 동작; 및
    상기 학습된 정보를 상기 메모리에 저장하는 동작을 포함하고,
    상기 신경망은,
    다수 개의 입력 뉴런들과 다수개의 출력 뉴런들;
    상기 입력 뉴런들 중 적어도 어느 하나와 상기 출력 뉴런들 중 적어도 어느 하나를 각각 연결하는 적어도 하나의 안정적 시냅스; 및
    상기 입력 뉴런들 중 나머지와 상기 출력 뉴런들 중 나머지를 각각 연결하는 적어도 하나의 가변적 시냅스를 포함하고,
    상기 학습 동작은,
    정보가 순차적으로 입력됨에 따라 시냅스 가소성에 따라 상기 안정적 시냅스의 시냅스 강도 또는 상기 가변적 시냅스의 시냅스 강도 중 적어도 하나를 조절하여, 입력되는 정보를 학습하고,
    상기 학습 동작은,
    순차적으로 입력되는 정보의 양이 상기 메모리의 저장용량보다 적으면, 입력되는 정보를 안정적 시냅스 및 가변적 시냅스에 분산하여, 안정적 시냅스와 가변적 시냅스가 입력되는 정보를 학습하게 하고,
    상기 메모리의 저장용량이 포화된 상태에서 추가로 정보가 입력되면, 안정적 시냅스는 계속 미리 저장된 정보를 보존하고, 가변적 시냅스는 추가로 입력되는 정보를 학습하게 하는,
    방법.
  11. 삭제
  12. 삭제
  13. 삭제
  14. 제 10 항에 있어서, 상기 조절 동작은,
    상기 안정적 시냅스의 시냅스 강도가 미리 정해진 강도이면, 상기 안정적 시냅스의 시냅스 강도를 유지하면서, 상기 가변적 시냅스의 시냅스 강도를 조절하는 동작을 포함하는 방법.
  15. 제 14 항에 있어서, 상기 조절 동작은,
    상기 안정적 시냅스의 시냅스 강도가 상기 정해진 강도 미만이면, 상기 안정적 시냅스의 시냅스 강도와 상기 가변적 시냅스의 시냅스 강도를 조절하는 동작을 더 포함하는 방법.
  16. 제 10 항에 있어서,
    상기 신경망은 피드포워드 스파이킹 신경망을 포함하는 방법.
  17. 제 16 항에 있어서, 상기 학습 동작은,
    입력되는 정보를 스파이크 형태의 적어도 하나의 시간적 패턴으로 변환하는 동작; 및
    상기 피드포워드 스파이킹 신경망을 이용하여 상기 시간적 패턴을 학습하는 동작을 포함하는 방법.
  18. 제 16 항에 있어서, 상기 조절 동작은,
    STDP(spike timing dependent plasticity) 학습 규칙에 기반하여, 상기 안정적 시냅스의 시냅스 강도 또는 상기 가변적 시냅스의 시냅스 강도 중 적어도 어느 하나를 조절하는 동작을 포함하는 방법.
  19. 입력되는 정보를 검출하는 동작;
    신경망을 이용하여 상기 검출된 정보를 학습하는 동작; 및
    상기 학습된 정보를 메모리에 저장하는 동작을 컴퓨터에서 실행하기 위한 하나 이상의 프로그램들을 저장하는 컴퓨터 판독가능 기록 매체에 있어서,
    상기 신경망은,
    다수 개의 입력 뉴런들과 다수개의 출력 뉴런들;
    상기 입력 뉴런들 중 적어도 어느 하나와 상기 출력 뉴런들 중 적어도 어느 하나를 각각 연결하는 적어도 하나의 안정적 시냅스; 및
    상기 입력 뉴런들 중 나머지와 상기 출력 뉴런들 중 나머지를 각각 연결하는 적어도 하나의 가변적 시냅스를 포함하고,
    상기 학습 동작은,
    정보가 순차적으로 입력됨에 따라 시냅스 가소성에 따라 상기 안정적 시냅스의 시냅스 강도 또는 상기 가변적 시냅스의 시냅스 강도 중 적어도 하나를 조절하여, 입력되는 정보를 학습하고,
    상기 학습 동작은,
    순차적으로 입력되는 정보의 양이 상기 메모리의 저장용량보다 적으면, 입력되는 정보를 안정적 시냅스 및 가변적 시냅스에 분산하여, 안정적 시냅스와 가변적 시냅스가 입력되는 정보를 학습하게 하고,
    상기 메모리의 저장용량이 포화된 상태에서 추가로 정보가 입력되면, 안정적 시냅스는 계속 미리 저장된 정보를 보존하고, 가변적 시냅스는 추가로 입력되는 정보를 학습하게 하는,
    컴퓨터 판독가능 기록 매체.
  20. 삭제
KR1020190043444A 2019-04-15 2019-04-15 신경망을 이용한 기억 장치 및 그의 정확성-저장용량 트레이드오프에 기반한 정보의 자동적 재분배 및 가변적 저장 용량 구현을 위한 동작 방법 KR102356787B1 (ko)

Priority Applications (2)

Application Number Priority Date Filing Date Title
KR1020190043444A KR102356787B1 (ko) 2019-04-15 2019-04-15 신경망을 이용한 기억 장치 및 그의 정확성-저장용량 트레이드오프에 기반한 정보의 자동적 재분배 및 가변적 저장 용량 구현을 위한 동작 방법
US16/674,919 US11467728B2 (en) 2019-04-15 2019-11-05 Storage device using neural network and operating method for automatic redistribution of information and variable storage capacity based on accuracy-storage capacity tradeoff thereof

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
KR1020190043444A KR102356787B1 (ko) 2019-04-15 2019-04-15 신경망을 이용한 기억 장치 및 그의 정확성-저장용량 트레이드오프에 기반한 정보의 자동적 재분배 및 가변적 저장 용량 구현을 위한 동작 방법

Publications (2)

Publication Number Publication Date
KR20200121006A KR20200121006A (ko) 2020-10-23
KR102356787B1 true KR102356787B1 (ko) 2022-01-28

Family

ID=72749063

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1020190043444A KR102356787B1 (ko) 2019-04-15 2019-04-15 신경망을 이용한 기억 장치 및 그의 정확성-저장용량 트레이드오프에 기반한 정보의 자동적 재분배 및 가변적 저장 용량 구현을 위한 동작 방법

Country Status (2)

Country Link
US (1) US11467728B2 (ko)
KR (1) KR102356787B1 (ko)

Families Citing this family (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20220156590A1 (en) * 2020-11-18 2022-05-19 Electronics And Telecommunications Research Institute Artificial intelligence system and artificial neural network learning method thereof

Citations (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR101594724B1 (ko) * 2011-09-21 2016-02-16 퀄컴 인코포레이티드 스파이킹 신경망들에서의 구조적 지연 가소성에 대한 방법 및 장치

Family Cites Families (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
EP2507056B1 (en) 2009-11-30 2019-03-27 3M Innovative Properties Company Conformable barrier sheet
JP2015094724A (ja) 2013-11-13 2015-05-18 株式会社東海理化電機製作所 位置検出装置
US9542645B2 (en) * 2014-03-27 2017-01-10 Qualcomm Incorporated Plastic synapse management

Patent Citations (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR101594724B1 (ko) * 2011-09-21 2016-02-16 퀄컴 인코포레이티드 스파이킹 신경망들에서의 구조적 지연 가소성에 대한 방법 및 장치

Also Published As

Publication number Publication date
US20200326852A1 (en) 2020-10-15
US11467728B2 (en) 2022-10-11
KR20200121006A (ko) 2020-10-23

Similar Documents

Publication Publication Date Title
KR101997975B1 (ko) 신경망 시스템을 이용한 정보의 장기, 단기, 및 하이브리드 기억을 위한 방법
Lin et al. Relative ordering learning in spiking neural network for pattern recognition
US20150206050A1 (en) Configuring neural network for low spiking rate
US10552734B2 (en) Dynamic spatial target selection
CN103914711B (zh) 一种改进的极速学习装置及其模式分类方法
JP2020135011A (ja) 情報処理装置及び方法
WO2015167765A2 (en) Temporal spike encoding for temporal learning
KR20200069360A (ko) 딥신경망 조성을 위한 방법 및 장치, 그리고 컴퓨터 프로그램
KR102356787B1 (ko) 신경망을 이용한 기억 장치 및 그의 정확성-저장용량 트레이드오프에 기반한 정보의 자동적 재분배 및 가변적 저장 용량 구현을 위한 동작 방법
US9542645B2 (en) Plastic synapse management
Grewal et al. Going beyond the point neuron: active dendrites and sparse representations for continual learning
KR20190140276A (ko) 비지도 학습장치 및 그 학습방법
US9342782B2 (en) Stochastic delay plasticity
Yu et al. Robust stabilization of stochastic Markovian jumping dynamical networks with mixed delays
KR20200108173A (ko) 스파이킹 뉴럴 네트워크에 대한 연산량을 감소시키는 stdp 기반의 뉴로모픽 연산처리장치
Humaidi et al. Recognition of arabic characters using spiking neural networks
KR20230103206A (ko) 표현 학습을 이용하여 연속 학습을 수행하는 방법 및 그 학습 장치
KR102500633B1 (ko) 스파이킹 신경망 학습 장치 및 방법
Bukhanov et al. An approach to improve the architecture of art-2 artificial neural network based on multi-level memory
KR102375896B1 (ko) 딥 뉴럴 네트워크를 양자화하는 방법 및 장치
Kang et al. The challenge of taming a latching network near criticality
CN110738306A (zh) 基于单指数核及脉冲阈值表面的高效多脉冲算法
Kobayashi et al. Q-learning in continuous state-action space with noisy and redundant inputs by using a selective desensitization neural network
KR20230060094A (ko) Snn 모델을 이용한 동적 추론 시간 단축 방법 및 장치
EP3690752A1 (en) Fractal cognitive computing node and computer-implemented method for learning procedures

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