KR102049463B1 - 뉴로 모픽 소자 및 이를 이용한 가이드 트레이닝 방법 - Google Patents

뉴로 모픽 소자 및 이를 이용한 가이드 트레이닝 방법 Download PDF

Info

Publication number
KR102049463B1
KR102049463B1 KR1020180008570A KR20180008570A KR102049463B1 KR 102049463 B1 KR102049463 B1 KR 102049463B1 KR 1020180008570 A KR1020180008570 A KR 1020180008570A KR 20180008570 A KR20180008570 A KR 20180008570A KR 102049463 B1 KR102049463 B1 KR 102049463B1
Authority
KR
South Korea
Prior art keywords
data
input
output
weight
node
Prior art date
Application number
KR1020180008570A
Other languages
English (en)
Other versions
KR20190090130A (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 KR1020180008570A priority Critical patent/KR102049463B1/ko
Publication of KR20190090130A publication Critical patent/KR20190090130A/ko
Application granted granted Critical
Publication of KR102049463B1 publication Critical patent/KR102049463B1/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
    • 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)
  • Physics & Mathematics (AREA)
  • Theoretical Computer Science (AREA)
  • Health & Medical Sciences (AREA)
  • Life Sciences & Earth Sciences (AREA)
  • Biomedical Technology (AREA)
  • Biophysics (AREA)
  • Evolutionary Computation (AREA)
  • General Engineering & Computer Science (AREA)
  • Data Mining & Analysis (AREA)
  • Artificial Intelligence (AREA)
  • General Health & Medical Sciences (AREA)
  • Molecular Biology (AREA)
  • Computing Systems (AREA)
  • Computational Linguistics (AREA)
  • General Physics & Mathematics (AREA)
  • Mathematical Physics (AREA)
  • Software Systems (AREA)
  • Neurology (AREA)
  • Image Analysis (AREA)
  • Machine Translation (AREA)

Abstract

본 발명의 일 측면에 따른 본 발명의 일측면에 따른 가이드 트레이닝 방법은 N개(N은 자연수)의 입력 노드, M개(M은 자연수)의 출력 노드 및 각 입력 노드와 출력 노드를 연결하는 N*M 개의 링크로 이루어진 인공 신경망 회로를 통해, 복수의 입력 데이터를 M개의 출력 데이터로 분류하는 것으로서, (a) 상기 입력 데이터를 N개의 요소 데이터로 분할하고, 각 요소 데이터를 상기 N개의 입력 노드에 각각 입력시키는 단계; (b) 상기 요소 데이터가 하이레벨 데이터인 경우 해당 요소 데이터가 입력되는 입력 노드와 연결된 링크의 가중치를 상승시키고, 상기 요소 데이터가 로우레벨 데이터인 경우 해당 요소 데이터가 입력되는 노드와 연결된 링크의 가중치를 하강시키는 단계; 및 (c) 상기 각 입력 데이터에 대하여 상기 (a) 및 (b) 단계를 각각 수행하는 단계를 포함한다.

Description

뉴로 모픽 소자 및 이를 이용한 가이드 트레이닝 방법{NEUROMORPHIC DEVICE AND GUIDE TRAINING METHOD USING THE SAME}
본 발명은 뉴로 모픽 소자 및 이를 이용한 가이드 트레이닝 방법에 대한 것이다.
최근 들어 인공 신경망에 대한 관심이 증가함에 따라, 이를 하드웨어적으로 구현한 뉴로 모픽 소자에 대한 연구가 활발하게 진행되고 있다. 이러한 뉴로 모픽 소자는 생체의 뇌신경계를 이루는 뉴런과 시냅스의 구조를 모방한 것으로, 대체로 시냅스 전에 위치한 프리 뉴런(Pre neuron), 시냅스, 시냅스 후에 위치한 포스트 뉴런(Post neuron)의 구조를 갖는다.
한편, 이러한 인공 신경 회로망의 연결 상태를 자율적으로 바꾸어 학습하는 방법으로서 비지도 학습(unsupervised learning)이 알려져 있으며, 그 중 자율 학습 기전의 가장 기본이 되는 방식으로 헤비안 학습(Hebbian Learning) 방식이 알려져 있다. 헤비안 학습은 입력 데이터에 대한 출력이 존재하는 연결에 대해서는 연결을 강화시키고 그렇지 않은 경우는 반대로 연결을 약화시키는 것과 같이, 주어진 정보(input data)와 이에 대한 결과(output)의 상관 관계를 통하여 시냅스 가중치를 조정하여 학습 하는 방식이다.
최근에는 대부분의 학습 알고리즘이 지도학습(supervised learning)의 형태를 취하고 있고, 빅 데이터 분석의 경우에도 초기 학습 단계에서 지도 학습을 통해 학습 방향을 잡은 후 비지도 학습을 하는 것은 비지도 학습의 학습 결과를 분석하기 어렵기 때문이다. 또한, 지도 학습의 경우에는 원하는 패턴으로 학습을 시킬 수 있다는 장점이 있지만 이를 위해 오차 조정이 수반되어야 한다. 이러한 오차를 조정하여 원하는 패턴으로 분류를 하는 방식이 학습 알고리즘이며, 알고리즘마다 연산 정도의 차이는 있으나 기본적으로 수식 연산을 필요로 하게 된다.
그러나 이러한 복잡한 오차 수정 연산을 기계적으로 구현하게 될 경우 그 자체로 연산 속도, 시간 및 회로 집적도 면에서 뉴로 모픽 소자의 장점이 훼손된다. 비지도 학습의 경우 STDP(Spike Timing Dependent Plasticity) 알고리즘과 같이 입력과 출력의 상관 관계만을 가지고 트레이닝이 이루어지기 때문에, 오차 조정에 필요한 연산 과정이 필요 없어 하드웨어 구현 측면에 있어서 적합하다. 그러나 초기값에 따라 학습 패턴이 매번 바뀌게 되며, 학습 데이터가 복잡해지고 분류 범주가 늘어날수록 학습 패턴을 분석하기 어렵다는 문제가 있다. 이와 같은 문제에 착안하여 본 연구는 오차 조정 연산을 하지 않고 입력과 출력 데이터만을 이용하여 원하는 패턴으로 학습 시키는 가이드 트레이닝 방법을 고안하였다.
대한민국공개특허 제 10-2017-0080441 호(서로 다른 폭들을 갖는 게이팅 라인들을 포함하는 뉴로모픽 소자)
본 발명은 전술한 종래 기술의 문제점을 해결하기 위한 것으로서, 본 발명의 일부 실시예는 가이드 트레이닝 학습 방법을 수행하는 방법과 이를 이용한 뉴로모픽 소자를 제공하는 것을 그 목적으로 한다.
다만, 본 실시예가 이루고자 하는 기술적 과제는 상기된 바와 같은 기술적 과제로 한정되지 않으며, 또 다른 기술적 과제들이 존재할 수 있다.
상술한 기술적 과제를 달성하기 위한 기술적 수단으로서, 본 발명의 일측면에 따른 가이드 트레이닝 방법은 N개(N은 자연수)의 입력 노드, M개(M은 자연수)의 출력 노드 및 각 입력 노드와 출력 노드를 연결하는 N*M 개의 링크로 이루어진 인공 신경망 회로를 통해, 복수의 입력 데이터를 M개의 출력 데이터로 분류하는 것으로서, (a) 상기 입력 데이터를 N개의 요소 데이터로 분할하고, 각 요소 데이터를 상기 N개의 입력 노드에 각각 입력시키는 단계; (b) 상기 요소 데이터가 하이레벨 데이터인 경우 해당 요소 데이터가 입력되는 입력 노드와 연결된 링크의 가중치를 상승시키고, 상기 요소 데이터가 로우레벨 데이터인 경우 해당 요소 데이터가 입력되는 노드와 연결된 링크의 가중치를 하강시키는 단계; 및 (c) 상기 각 입력 데이터에 대하여 상기 (a) 및 (b) 단계를 각각 수행하는 단계를 포함한다.
또한, 본 발명의 다른 측면에 따른 가이드 트레이닝을 수행하는 뉴로 모픽 소자는 N개(N은 자연수)의 입력 노드, M개(M은 자연수)의 출력 노드 및 각 입력 노드와 출력 노드를 연결하는 N*M 개의 링크로 이루어진 인공 신경망 회로가 구현된 시냅스 소자 및 복수의 입력 데이터를 M개의 출력 데이터로 분류하는 가이드 트레이닝 프로그램이 저장된 제어부를 포함한다. 이때, 제어부는 가이드 트레이닝 프로그램의 실행에 따라, 상기 입력 데이터를 N개의 요소 데이터로 분할하고, 각 요소 데이터를 상기 시냅스 소자의 N개의 입력 노드에 각각 입력시키는 제 1 단계, 상기 요소 데이터가 하이레벨 데이터인 경우 해당 요소 데이터가 입력되는 입력 노드와 연결된 링크의 가중치를 상승시키고, 상기 요소 데이터가 로우레벨 데이터인 경우 해당 요소 데이터가 입력되는 노드와 연결된 링크의 가중치를 하강시키는 제 2 단계 및 상기 각 입력 데이터에 대하여 상기 제 1 단계 및 제 2 단계를 각각 반복 수행한다.
전술한 본 발명의 과제 해결 수단에 의하면, 입력 데이터를 분할한 요소 데이터의 상태만으로 시냅스 소자의 가중치를 변경하는 방법을 통해 전체 입력 데이터의 학습을 편리하게 수행할 수 있다. 특히, 복잡한 오차 수정 연산을 수행하지 않으므로, 뉴로 모픽 소자의 하드웨어적 장점을 최대한 활용할 수 있다.
도 1은 본 발명의 일 실시예에 따른 뉴로모픽 소자를 도시한 블록도이다.
도 2는 종래에 알려진 뉴로 모픽 소자의 시냅스 어레이를 도시한 도면이다.
도 3은 본 발명의 일 실시예에 적용되는 시냅스 소자를 도시한 도면이다.
도 4는 본 발명의 일 실시예에 따른 인공 신경망 회로도를 도시한 도면이다.
도 5는 본 발명의 일 실시예에 따른 인공 신경망 회로를 도시한 도면이다.
도 6은 본 발명의 일실시예에 따른 가이드 트레이닝 학습에 사용될 입력 데이터의 예를 도시한 것이다.
도 7은 본 발명의 일실시예에 따른 가이드 트레이닝 학습에 사용될 입력 데이터를 요소 데이터로 분할하는 과정을 설명하기 위한 도면이다.
도 8은 본 발명의 일 실시예에 따른 가이드 트레이닝 학습 방법의 실험 결과를 도시한 도면이다.
도 9는 본 발명의 일 실시예에 따른 가이드 트레이닝 방법을 도시한 순서도 이다.
아래에서는 첨부한 도면을 참조하여 본 발명이 속하는 기술 분야에서 통상의 지식을 가진 자가 용이하게 실시할 수 있도록 본 발명의 실시예를 상세히 설명한다. 그러나 본 발명은 여러 가지 상이한 형태로 구현될 수 있으며 여기에서 설명하는 실시예에 한정되지 않는다. 그리고 도면에서 본 발명을 명확하게 설명하기 위해서 설명과 관계없는 부분은 생략하였으며, 명세서 전체를 통하여 유사한 부분에 대해서는 유사한 도면 부호를 붙였다.
명세서 전체에서, 어떤 부분이 다른 부분과 "연결"되어 있다고 할 때, 이는 "직접적으로 연결"되어 있는 경우뿐 아니라, 그 중간에 다른 소자를 사이에 두고 "전기적으로 연결"되어 있는 경우도 포함한다. 또한 어떤 부분이 어떤 구성요소를 "포함"한다고 할 때, 이는 특별히 반대되는 기재가 없는 한 다른 구성요소를 제외하는 것이 아니라 다른 구성요소를 더 포함할 수 있는 것을 의미한다.
도 1은 본 발명의 일 실시예에 따른 뉴로모픽 소자를 도시한 블록도이다.
도시된 바와 같이, 뉴로모픽 소자는 시냅스 소자(10), 전압 공급부(20) 및 제어부(30)를 포함한다.
시냅스 소자(10)는 저항성 메모리를 이용하여 시냅스 어레이 형태로 배열된 것으로, 워드라인 및 비트라인들과 그 교차점에 위치한 저항성 메모리 셀을 포함하는 소자이다. 이때, 저항성 메모리 셀에는 후술할 가중치 값이 저장되며 워드라인 또는 비트라인에 인가되는 전압에 따라 저항의 상태가 고저항 상태 또는 저저항 상태로 변경되며, 이에 의하여 인공 신경망을 구성하는 시냅스 어레이의 가중치가 각각 결정될 수 있다.
도 2는 종래에 알려진 뉴로 모픽 소자의 시냅스 어레이를 도시한 도면이다.
크로스 포인트 구조의 반도체 메모리를 이용하여 시냅스 어레이를 구현한 사례가 알려져 있다. 도시된 시냅스 어레이는 아날로그(analog) 방식의 시냅스 어레이로서, 아날로그 방식의 시냅스 어레이에서는 하나의 시냅스를 구현하기 위하여 하나의 메모리 소자가 사용되기 때문에, 뉴런의 가중치를 구현하기 위해서 여러 개의 저항값으로 가중치를 나타내는 다중 저항 상태(multiple resistance state)를 사용한다.
한편, 이와 달리 바이너리 방식의 시냅스 어레이도 알려져 있으며, 이는 메모리 소자의 HRS (High Resistive State) / LRS (Low Resistive State)만을 이용해서 여러 개의 메모리 소자로 하나의 시냅스를 구현한다. 메모리 소자의 성능 정확도가 떨어지는 상황에서도 뉴로모픽 칩을 안정적으로 개발할 수 있다는 장점이 있다. 또한 아날로그 방식과는 다르게 시냅스의 가중치를 저장하는 별도의 회로가 필요 없으며, 비지도(unsupervised )학습을 하기 위해서 STDP를 이용할 경우 아날로그 방식 시냅스 보다 뉴로모픽 소자 구현에 더 적합한 것으로 알려져있다.
그 밖에 본 발명에서 사용될 수 있는 시냅스 소자(10)의 구조에 대해서는 특별한 제한이 없으며, 본 발명에서 제시하는 특별한 구조의 시냅스 소자(10)가 사용될 수 있다.
도 3은 본 발명의 일 실시예에 적용되는 시냅스 소자를 도시한 도면이고, 도 4는 본 발명의 일 실시예에 적용되는 뉴로모픽 소자에 의해 구현되는 인공 신경망을 도시한 도면이다.
도 3에 도시된 바와 같이, 시냅스 소자는 서로 나란하게 연장되도록 배치된 복수의 워드라인들(110, 120, 130, 140), 워드라인들과 교차되도록 서로 나란하게 연장 형성된 복수의 비트라인들(310, 320, 330, 340)와 각 워드라인들과 비트라인들의 교차점에 형성된 저항성 물질층(210, 220, 230, 240)을 포함한다.
이때, 저항성 물질층(210, 220, 230, 240)은 일반적인 저항성 메모리 소자를 구성하는 것으로서, 저항성 물질층(210, 220, 230, 240)과 접촉된 워드라인을 통해 인가되는 전압에 따라 저항의 상태가 고저항 상태 또는 저저항 상태로 변경되며, 이에 의하여 인공 신경망을 구성하는 시냅스 어레이의 가중치가 각각 결정될 수 있다.
이때, 워드라인들(110, 120, 130, 140,)은 데이터가 입력되는 프리 뉴런(pre-neuron)으로서 기능하고, 비트라인들(310, 320, 330, 340)은 데이터가 출력되는 포스트 뉴런으로서 기능하며, 저항성 물질층(210, 220, 230, 240)의 저항 상태가 고저항 상태인지 저저항 상태인지에 따라 뉴로 모픽 소자의 가중치 값이 조절될 수 있다. .
도 3의 구조와 같은 시냅스 소자를 이용하여 본 발명에서 구성하는 인공 신경망 회로는 도 4에 도시된 바와 같다.
도 4는 본 발명의 일실시예에 따른 시냅스 소자를 통해 구현되는 인공 신경망 회로를 도시한 것이다.
도시된 바와 같이, N개(N은 자연수)의 입력노드와 M개(M은 자연수)의 출력노드를 포함하고, 그 사이에 하나 이상의 은닉층이 형성될 수 있다.
도 5는 본 발명의 일실시예에 따른 시냅스 소자를 통해 구현되는 인공 신경망 회로를 도시한 것이다.
도시된 바와 같이, N개(N은 자연수)의 입력노드(A1, A2, AN)와 M개(M은 자연수)의 출력노드(B1, B2, BM)를 포함하고, 입력 노드와 출력 노드를 각각 연결하는 N*M 개의 링크(w11~wNM)로 이루어진 인공 신경망 회로를 구성한다.
다시 도 1을 참조하면, 전압 공급부(20)는 시냅스 소자(10)의 비트라인과 워드라인에 각각 설정된 전압을 공급한다. 전압 공급부(20)는 비트라인과 워드라인에 각각 전원전압(Vdd)과 0V의 전압을 공급하거나, 그 사이에 위치하는 값을 가진 전압을 공급한다. 이때, 각 비트라인과 워드라인에 공급할 전압은 제어부(30)에 의하여 설정된다. 그 밖의 전압 공급부(20)의 구체적인 구성은 종래 메모리 소자의 구성과 유사하므로, 이에 대한 상세한 설명은 생략하도록 한다.
제어부(30)는 복수의 입력 데이터를 M개의 출력 데이터로 분류하는 가이드 트레이닝 프로그램을 실행한다. 이를 위해, 입력 데이터를 N개의 요소 데이터로 분할하고, 각 요소 데이터를 시냅스 소자의 N개의 입력 노드에 각각 입력시키는 제 1 단계, 요소 데이터가 하이레벨 데이터인 경우 해당 요소 데이터가 입력되는 입력 노드와 연결된 링크의 가중치를 상승시키고, 상기 요소 데이터가 로우레벨 데이터인 경우 해당 요소 데이터가 입력되는 노드와 연결된 링크의 가중치를 하강시키는 제 2 단계 및 각 입력 데이터에 대하여 제 1 단계 및 제 2 단계를 각각 반복 수행하는 동작을 수행한다. 제어부의 동작을 보다 상세히 설명하면 다음과 같다.
도 6은 본 발명의 일실시예에 따른 가이드 트레이닝 학습에 사용될 입력 데이터의 예를 도시한 것이고, 도 7은 본 발명의 일실시예에 따른 가이드 트레이닝 학습에 사용될 입력 데이터를 요소 데이터로 분할하는 과정을 설명하기 위한 도면이다.
도 6에 도시된 바와 같이, 문자 T, X, V의 이미지를 학습하기 위한 여러 이미지 데이터들이 마련될 수 있다. 'T'를 예로 들면, 좌측 최상단에 위치한 이미지외에도 T로 분류할 수 있는 다양한 변형 데이터를 포함시켜 학습 데이터를 구성할 수 있다.
이러한 입력 데이터를 각각 입력 노드에 전달하기 위해, 도 8에 도시된 바와 같이 각각의 입력 데이터를 N개의 요소 데이터(A1, A2~A9)로 분할하고 이를 시냅스 소자의 N개의 입력 노드에 각각 전달할 수 있다.
그리고 본 발명에서는 입력 데이터가 분할된 요소 데이터가 하이레벨 데이터인지 로우레벨 데이터인지에 따라 각 노드와 연결된 링크의 가중치를 조절한다. 즉, 도 7의 경우 각 요소 데이터의 픽셀이 검정색으로 채워진 하이레벨 데이터인 경우, 해당 하이레벨 데이터가 입력되는 입력 노드와 연결된 링크의 가중치를 상승시킨다. 각 요소 데이터의 픽셀이 검정색으로 채워지지 않은 로우레벨 데이터인 경우, 해당 로우레벨 데이터가 입력되는 입력 노드와 연결된 링크의 가중치를 하강시킨다. 예를 들면, 요소 데이터가 하이레벨 데이터인 경우 가중치를 1 상승 시키고, 요소 데이터가 로우레벨 데이터인 경우 가중치를 1 감소시킨다.
즉, 도 5의 인공 신경망 회로에서, 입력 데이터는 총 9개의 요소 데이터로 분할되므로 입력 노드는 9개가 되고, 입력 데이터를 총 3가지(T,X,V)로 분류하므로 출력 노드는 3개가 된다.
이때, 제어부(30)는 하이레벨의 요소 데이터가 입력되는 노드(A1, A2, A3, A5, A8)와 연결되는 링크((w11, w12, w13), (w21, w22, w23), (w31, w32, w33), (w51, w52, w53), (w81, w82, w83))의 경우 가중치를 상승시킨다. 그리고, 로우레벨의 요소 데이터가 입력되는 노드(A4, A6, A7, A9)와 연결되는 링크((w41, w42, w43), (w61, w62, w63), (w71, w72, w73), (w91, w92, w93))의 경우 가중치를 하강시킨다.
이와 같은 학습 과정을 도 6에 도시된 각 입력 데이터에 대하여 반복적으로 수행하게 되면, 인공 신경망 회로를 구성하는 각 링크의 가중치가 최종적으로 결정된다. 그리고, 이와 같은 가이드 트레이닝 학습이 종료된 후 신규 입력 데이터를 인공 신경망 회로에 입력하면 각각의 가중치가 반영된 출력값이 각 출력 노드에서 출력되며, 이를 기초로 신규 입력 데이터가 어느 출력 노드로 분류되는지를 확인할 수 있게 된다.
도 8은 본 발명의 일 실시예에 따른 가이드 트레이닝 학습 방법의 실험 결과를 도시한 도면이다.
각각의 입력 데이터에 대하여 15회의 학습을 수행하였고, 학습의 진행횟수에 따라 가중치가 변경되는 모습을 확인할 수 있다. 그리고, 이와 같은 학습 절차 이후 검증하는 과정에서 각 입력 데이터를 각 분류에 맞게 정확하게 분류한 결과를 확인할 수 있다.
한편, 입력 데이터가 비교적 단순한 경우에는 요소 데이터가 하이레벨인지 여부에 따라 가중치를 조절하는 것 만으로도 학습이 가능하다. 그러나 입력 데이터의 복잡도가 높아지는 경우에는 출력 데이터를 함께 고려하여 가중치를 조절하도록 한다.
즉, 각 입력 데이터는 복수의 출력 노드 중 어느 출력 노드로 출력되는지가 미리 지정된 학습용 데이터이고, 각 입력 데이터에 대하여 지정된 출력 노드의 출력값이 임계값 보다 작으면, 해당 출력 노드와 연결된 링크의 가중치를 상승시키고, 각 입력 데이터에 대하여 지정된 출력 노드외의 출력 노드의 출력값이 임계값 보다 크면, 해당 출력 노드와 연결된 링크의 가중치를 감소시키는 동작을 수행한다.
예를 들어, 도 6에 도시된 상부의 10개의 데이터는 모두 T의 학습을 위해 제공된 학습용 데이터인데, 이중 일부 데이터의 경우 원본 T 자로부터 변형이 커서 출력 노드의 출력값이 원본 T를 가리키는 값 또는 제 1 임계값 보다 작을 수 있다. 이러한 경우, T를 출력하는 출력노드와 연결된 링크의 가중치를 상승 시킨다. 또한, T를 출력하는 출력 노드와 연결되지 않은 출력 노드의 출력 값이 제 2 임계값 보다 크면, 해당 출력 노드와 연결된 링크의 가중치를 하강시키는 동작을 수행한다.
도 9는 본 발명의 일 실시예에 따른 가이드 트레이닝 방법을 도시한 순서도 이다.
먼저, 시냅스 소자에 구현된 인공 신경망 회로를 제공한다(S1010).
이때, 각 입력 데이터를 분할하고자 하는 개수에 따라 입력 노드의 개수를 결정하고, 전체 입력 데이터를 분류하고자 하는 개수에 따라 출력 노드의 개수를 결정한다. 즉, 각 입력 데이터를 N개의 요소 데이터로 분할하는 경우 분할된 N개의 요소 데이터가 입력될 N개의 입력 노드를 구성한다. 그리고, 전체 입력 데이터를 M개의 종류로 분류하고자 하는 경우 M의 출력 노드를 구성한다. 그리고, N개의 출력 노드와 M개의 출력 노드를 연결하는 N*M개의 링크가 마련된다.
다음으로, 분할된 요소 데이터를 각 입력 노드에 입력한다(S1020).
입력되는 입력 데이터 별로 미리 설정된 기준에 따라, 각 입력 데이터를 N개의 데이터로 분할하고 이를 각각의 입력 노드로 전달한다. 도 8에 도시된 바와 같이 각 입력 데이터가 이미지 데이터인 경우 이를 동일한 크기의 영역 또는 픽셀 단위로 분할하고, 분할된 요소 데이터를 각 입력 노드로 전달한다.
다음으로, 각 요소 데이터에 따라 링크 가중치를 조절한다(S1030).
앞서 설명한 바와 같이, 각 요소 데이터가 하이레벨 데이터인 경우 해당 요소 데이터가 입력되는 입력 노드와 연결된 링크의 가중치를 상승시키고, 요소 데이터가 로우레벨 데이터인 경우 해당 요소 데이터가 입력되는 노드와 연결된 링크의 가중치를 하강시킨다. 이와 같은 단계(S1020, S1030)를 각 입력 데이터에 대하여 반복적으로 수행하는 과정을 통해 가이드 트레이닝을 진행한다.
다음으로, 가이드 트레이닝을 수행한 후 신규 입력 데이터를 인공 신경망 회로에 입력하여 해당 신규 입력 데이터를 분류한다(S1040). 앞선 단계를 통해 설정된 가중치가 반영됨에 따라 출력 노드의 출력값이 결정되며, 각 출력 노드에서 출력되는 출력값에 따라 신규 입력 데이터의 분류를 결정할 수 있다.
한편, 입력 데이터의 복잡도가 높아지는 경우에는 앞서 설명한 바와 같이, 출력 데이터를 함께 고려하여 가중치를 조절하도록 한다. 즉, 각 입력 데이터는 복수의 출력 노드 중 어느 출력 노드로 출력되는지가 미리 지정된 학습용 데이터이고, 각 입력 데이터에 대하여 지정된 출력 노드의 출력값이 임계값 보다 작으면, 해당 출력 노드와 연결된 링크의 가중치를 상승시키고, 각 입력 데이터에 대하여 지정된 출력 노드외의 출력 노드의 출력값이 임계값 보다 크면, 해당 출력 노드와 연결된 링크의 가중치를 감소시키는 동작을 추가로 수행할 수 있다.
이상에서 설명한 본 발명의 실시예에 따른 가이트 트레이닝 방법은, 컴퓨터에 의해 실행되는 프로그램 모듈과 같은 컴퓨터에 의해 실행 가능한 명령어를 포함하는 기록 매체의 형태로도 구현될 수 있다. 이러한 기록 매체는 컴퓨터 판독 가능 매체를 포함하며, 컴퓨터 판독 가능 매체는 컴퓨터에 의해 액세스될 수 있는 임의의 가용 매체일 수 있고, 휘발성 및 비휘발성 매체, 분리형 및 비분리형 매체를 모두 포함한다. 또한, 컴퓨터 판독가능 매체는 컴퓨터 저장 매체를 포함하며, 컴퓨터 저장 매체는 컴퓨터 판독가능 명령어, 데이터 구조, 프로그램 모듈 또는 기타 데이터와 같은 정보의 저장을 위한 임의의 방법 또는 기술로 구현된 휘발성 및 비휘발성, 분리형 및 비분리형 매체를 모두 포함한다.
전술한 본 발명의 설명은 예시를 위한 것이며, 본 발명이 속하는 기술분야의 통상의 지식을 가진 자는 본 발명의 기술적 사상이나 필수적인 특징을 변경하지 않고서 다른 구체적인 형태로 쉽게 변형이 가능하다는 것을 이해할 수 있을 것이다. 그러므로 이상에서 기술한 실시예들은 모든 면에서 예시적인 것이며 한정적이 아닌 것으로 이해해야만 한다. 예를 들어, 단일형으로 설명되어 있는 각 구성 요소는 분산되어 실시될 수도 있으며, 마찬가지로 분산된 것으로 설명되어 있는 구성 요소들도 결합된 형태로 실시될 수 있다.
본 발명의 범위는 상기 상세한 설명보다는 후술하는 특허청구범위에 의하여 나타내어지며, 특허청구범위의 의미 및 범위 그리고 그 균등 개념으로부터 도출되는 모든 변경 또는 변형된 형태가 본 발명의 범위에 포함되는 것으로 해석되어야 한다.
10: 시냅스 소자
20: 전압 공급부
30: 제어부

Claims (8)

  1. N개(N은 자연수)의 입력 노드, M개(M은 자연수)의 출력 노드 및 각 입력 노드와 출력 노드를 연결하는 N*M 개의 링크로 이루어진 인공 신경망 회로를 통해, 복수의 입력 데이터를 M개의 출력 데이터로 분류하는 가이드 트레이닝 방법에 있어서,
    (a) 상기 입력 데이터를 N개의 요소 데이터로 분할하고, 각 요소 데이터를 상기 N개의 입력 노드에 각각 입력시키는 단계;
    (b) 상기 요소 데이터가 하이레벨 데이터인 경우 해당 요소 데이터가 입력되는 입력 노드와 연결된 링크의 가중치를 상승시키고, 상기 요소 데이터가 로우레벨 데이터인 경우 해당 요소 데이터가 입력되는 노드와 연결된 링크의 가중치를 하강시키는 단계; 및
    (c) 상기 각 입력 데이터에 대하여 상기 (a) 및 (b) 단계를 각각 수행하는 단계를 포함하는 가이드 트레이닝 방법.
  2. 제 1 항에 있어서,
    (d) 상기 인공 신경망 회로에 신규 입력 데이터를 입력하고, 상기 가중치가 반영된 후 상기 출력 노드에서 출력되는 값에 기초하여 상기 신규 입력 데이터를 분류하는 단계를 더 포함하는 가이드 트레이닝 방법.
  3. 제 1 항에 있어서,
    상기 인공 신경망 회로는 저항성 메모리 소자에 기반하여 구현된 시냅스 소자이고,
    상기 (b) 단계는 가중치 상승 또는 가중치 하강에 따라 상기 저항성 메모리 소자에 포함된 저항성 물질층을 고저항 상태 또는 저저항 상태로 조절하는 것인 가이드 트레이닝 방법.
  4. 제 1 항에 있어서,
    상기 각 입력 데이터는 상기 복수의 출력 노드 중 어느 출력 노드로 출력되는지가 미리 지정된 학습용 데이터이고,
    상기 (b) 단계는 상기 입력 데이터에 대하여 지정된 출력 노드의 출력값이 임계값 보다 작으면, 해당 출력 노드와 연결된 링크의 가중치를 상승시키고,
    상기 입력 데이터에 대하여 지정된 출력 노드외의 출력 노드의 출력값이 임계값 보다 크면, 해당 출력 노드와 연결된 링크의 가중치를 감소시키는 것인 가이드 트레이닝 방법.
  5. 가이드 트레이닝을 수행하는 뉴로 모픽 소자에 있어서,
    N개(N은 자연수)의 입력 노드, M개(M은 자연수)의 출력 노드 및 각 입력 노드와 출력 노드를 연결하는 N*M 개의 링크로 이루어진 인공 신경망 회로가 구현된 시냅스 소자 및
    복수의 입력 데이터를 M개의 출력 데이터로 분류하는 가이드 트레이닝 프로그램을 실행하는 제어부를 포함하되,
    상기 제어부는 상기 가이드 트레이닝 프로그램의 실행에 따라, 상기 입력 데이터를 N개의 요소 데이터로 분할하고, 각 요소 데이터를 상기 시냅스 소자의 N개의 입력 노드에 각각 입력시키는 제 1 단계, 상기 요소 데이터가 하이레벨 데이터인 경우 해당 요소 데이터가 입력되는 입력 노드와 연결된 링크의 가중치를 상승시키고, 상기 요소 데이터가 로우레벨 데이터인 경우 해당 요소 데이터가 입력되는 노드와 연결된 링크의 가중치를 하강시키는 제 2 단계 및 상기 각 입력 데이터에 대하여 상기 제 1 단계 및 제 2 단계를 각각 반복 수행하는 뉴로 모픽 소자.
  6. 제 5 항에 있어서,
    상기 인공 신경망 회로에 신규 입력 데이터를 입력하고, 상기 가중치가 반영된 후 상기 출력 노드에서 출력되는 값에 기초하여 상기 신규 입력 데이터를 분류하는 단계를 수행하는 뉴로 모픽 소자.
  7. 제 5 항에 있어서,
    상기 시냅스 소자는 저항성 메모리를 이용하여 시냅스 어레이 형태로 배열된것이고,
    상기 제 2 단계는 가중치 상승 또는 가중치 하강에 따라 상기 저항성 메모리 소자에 포함된 저항성 물질층을 고저항 상태 또는 저저항 상태로 조절하는 것인 뉴로 모픽 소자.
  8. 제 5 항에 있어서,
    상기 각 입력 데이터는 상기 복수의 출력 노드 중 어느 출력 노드로 출력되는지가 미리 지정된 학습용 데이터이고,
    상기 제 2 단계는 상기 입력 데이터에 대하여 지정된 출력 노드의 출력값이 임계값 보다 작으면, 해당 출력 노드와 연결된 링크의 가중치를 상승시키고, 상기 입력 데이터에 대하여 지정된 출력 노드외의 출력 노드의 출력값이 임계값 보다 크면, 해당 출력 노드와 연결된 링크의 가중치를 감소시키는 것인 뉴로 모픽 소자.
KR1020180008570A 2018-01-24 2018-01-24 뉴로 모픽 소자 및 이를 이용한 가이드 트레이닝 방법 KR102049463B1 (ko)

Priority Applications (1)

Application Number Priority Date Filing Date Title
KR1020180008570A KR102049463B1 (ko) 2018-01-24 2018-01-24 뉴로 모픽 소자 및 이를 이용한 가이드 트레이닝 방법

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
KR1020180008570A KR102049463B1 (ko) 2018-01-24 2018-01-24 뉴로 모픽 소자 및 이를 이용한 가이드 트레이닝 방법

Publications (2)

Publication Number Publication Date
KR20190090130A KR20190090130A (ko) 2019-08-01
KR102049463B1 true KR102049463B1 (ko) 2019-11-27

Family

ID=67615599

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1020180008570A KR102049463B1 (ko) 2018-01-24 2018-01-24 뉴로 모픽 소자 및 이를 이용한 가이드 트레이닝 방법

Country Status (1)

Country Link
KR (1) KR102049463B1 (ko)

Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20170185896A1 (en) 2011-12-14 2017-06-29 International Business Machines Corporation Multi-modal neural network for universal, online learning
US20170270410A1 (en) 2016-03-18 2017-09-21 Michael James Denham Neuromorphic training algorithm for a Restricted Boltzmann Machine.

Family Cites Families (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR101686827B1 (ko) * 2015-03-17 2016-12-16 인천대학교 산학협력단 인공 신경망의 뉴로모픽 하드웨어 구현 방법
KR102609301B1 (ko) 2015-12-30 2023-12-05 에스케이하이닉스 주식회사 서로 다른 폭들을 갖는 게이팅 라인들을 포함하는 뉴로모픽 소자
KR20170080428A (ko) * 2015-12-30 2017-07-10 에스케이하이닉스 주식회사 뉴로모픽 소자의 시냅스들을 학습 시키는 방법

Patent Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20170185896A1 (en) 2011-12-14 2017-06-29 International Business Machines Corporation Multi-modal neural network for universal, online learning
US20170270410A1 (en) 2016-03-18 2017-09-21 Michael James Denham Neuromorphic training algorithm for a Restricted Boltzmann Machine.

Non-Patent Citations (1)

* Cited by examiner, † Cited by third party
Title
Steven K. Esser 외 15명. Convolutional Networks for Fast, Energy-Efficient Neuromorphic Computing. 2016년

Also Published As

Publication number Publication date
KR20190090130A (ko) 2019-08-01

Similar Documents

Publication Publication Date Title
US10740671B2 (en) Convolutional neural networks using resistive processing unit array
US9779355B1 (en) Back propagation gates and storage capacitor for neural networks
JP7047062B2 (ja) 神経形態学的処理装置
US9934463B2 (en) Neuromorphic computational system(s) using resistive synaptic devices
Michel et al. Associative memories via artificial neural networks
Denz Optical neural networks
US11087204B2 (en) Resistive processing unit with multiple weight readers
US11531871B2 (en) Stacked neuromorphic devices and neuromorphic computing systems
US20210374546A1 (en) Row-by-row convolutional neural network mapping for analog artificial intelligence network training
Payvand et al. Error-triggered three-factor learning dynamics for crossbar arrays
US20240005162A1 (en) Error-triggered learning of multi-layer memristive spiking neural networks
US5353382A (en) Programmable synapse for neural network applications
Nijhuis et al. Limits to the fault-tolerance of a feedforward neural network with learning
KR20200000686A (ko) 웨이트 행렬 입력 회로 및 웨이트 행렬 회로
Kozlova et al. The use of neural networks for planning the behavior of complex systems
US11195089B2 (en) Multi-terminal cross-point synaptic device using nanocrystal dot structures
KR102114356B1 (ko) 3차원 크로스바 메모리 구조를 이용한 뉴로 모픽 소자
Shi et al. Exploiting memristors for neuromorphic reinforcement learning
KR102049463B1 (ko) 뉴로 모픽 소자 및 이를 이용한 가이드 트레이닝 방법
EP4134876A1 (en) Method and device for hebbian masked machine learning
Tran Simulations of artificial neural network with memristive devices
Van Pham et al. Defect-tolerant and energy-efficient training of multi-valued and binary memristor crossbars for near-sensor cognitive computing
KR20230005309A (ko) 아날로그 인공지능 네트워크 추론을 위한 행별 컨볼루션 신경망 매핑을 위한 효율적 타일 매핑
Matheus et al. Learning in artificial neural systems
Hasan Memristor based low power high throughput circuits and systems design

Legal Events

Date Code Title Description
A201 Request for examination
E902 Notification of reason for refusal
E701 Decision to grant or registration of patent right
GRNT Written decision to grant