KR20200086546A - 병렬 딥러닝 처리 시스템 - Google Patents

병렬 딥러닝 처리 시스템 Download PDF

Info

Publication number
KR20200086546A
KR20200086546A KR1020190002881A KR20190002881A KR20200086546A KR 20200086546 A KR20200086546 A KR 20200086546A KR 1020190002881 A KR1020190002881 A KR 1020190002881A KR 20190002881 A KR20190002881 A KR 20190002881A KR 20200086546 A KR20200086546 A KR 20200086546A
Authority
KR
South Korea
Prior art keywords
deep learning
layer
parallel
mcu
processing system
Prior art date
Application number
KR1020190002881A
Other languages
English (en)
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 KR1020190002881A priority Critical patent/KR20200086546A/ko
Publication of KR20200086546A publication Critical patent/KR20200086546A/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/08Learning methods
    • G06N3/082Learning methods modifying the architecture, e.g. adding, deleting or silencing nodes or connections
    • 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
    • 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)
  • Data Mining & Analysis (AREA)
  • General Health & Medical Sciences (AREA)
  • Biomedical Technology (AREA)
  • Biophysics (AREA)
  • Computational Linguistics (AREA)
  • Life Sciences & Earth Sciences (AREA)
  • Evolutionary Computation (AREA)
  • Artificial Intelligence (AREA)
  • Molecular Biology (AREA)
  • Computing Systems (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Mathematical Physics (AREA)
  • Software Systems (AREA)
  • Health & Medical Sciences (AREA)
  • Image Analysis (AREA)

Abstract

병렬 딥러닝 처리 시스템이 제공된다. 본 발명의 일 실시예에 따른 병렬 딥러닝 처리 시스템은, 입력층 및 출력층을 연계시키는 적어도 하나의 레이어로 이루어지는 은닉층들을 병렬적으로 연결 가능한 딥러닝 모듈을 저장하는 메모리; 및 내부의 DSP를 통하여 디지털 신호 처리하면서 상기 딥러닝 모듈을 제어하는 MCU를 포함한다.

Description

병렬 딥러닝 처리 시스템{PARALLEL DEEP LEARNING PROCESSING SYSTEM}
본 발명은 병렬 딥러닝 처리 시스템에 관한 것이다.
인공지능(Artificial Intelligence, AI) 시스템은 인간 수준의 지능을 구현하는 컴퓨터 시스템이며, 기계가 스스로 학습하고 판단하며 똑똑해지는 기계학습이 대표적이다.
인공 신경망(artificial neural network, ANN)은 기계 학습(Machine Learning)을 구현하는 기법들 중 하나이다. 일반적으로, 인공 신경망은 입력 계층(input layer), 은닉 계층(hidden layer) 및 출력 계층(output layer)으로 구성된다. 각 계층들은 뉴런(neuron)으로 구성되어 있으며, 각 계층의 뉴런들은 이전 계층의 뉴런들의 출력과 연결되어 있다. 이전 계층의 뉴런들의 각 출력 값과 그에 상응하는 연결 가중치(weight)를 내적(inner product)한 값에 바이어스(bias)를 더한 값을 일반적으로 비선형(non-linear) 활성 함수(activation function)에 넣고 그 출력값을 다음 단계 계층의 뉴런들에게 전달한다.
이러한 인공 신경망을 바탕으로 하여 최근 각광받고 있는 딥러닝은 이미지 인식 및 분류(classification) 분야에서 두각을 나타내고 있으며 강화 학습 등과 결합하여 특정 분야에서 인간을 뛰어넘는 성능을 보여주고 있다.
그러나, 이미지 인식을 위한 딥러닝 기술은 메모리 및 프로세싱의 집중을 필요로 하는 학습과 인식을 위해, 데이터 프로세스들을 요구하여 많은 계산이 필요하다. 즉, 계산적인 프로세스들을 수행하는 동안, 저장 및 처리를 위해 많은 메모리 및 처리 용량을 요구한다.
이에 따라, 종래의 딥러닝을 구현하기 위한 하드웨어는 대부분 PC급 서버 기반으로 구성될 수 밖에 없어 소형 하드웨어나 시스템에 적용하기에는 크기와 비용 면에서 적합하지 않은 문제가 있다.
대한민국 공개특허 2008-0042083호 (2008.05.14. 공개) 대한민국 공개특허 2018-0004898호 (2018.01.15. 공개)
본 발명은 상기 문제점을 해결하기 위한 것으로, 딥러닝 모듈을 병렬 연결 가능하게 구성하고, DSP를 이용하여 학습을 수행함으로써 소형, 소규모의 장비 또는 로봇 등의 산업분야에 적용할 수 있는 병렬 딥러닝 처리 시스템을 제공한다.
본 발명이 해결하고자 하는 과제들은 이상에서 언급한 과제들로 제한되지 않으며, 언급되지 않은 또 다른 과제들은 아래의 기재로부터 당업자에게 명확하게 이해될 수 있을 것이다.
상기 과제를 달성하기 위한 본 발명의 일 실시예에 따른 병렬 딥러닝 처리 시스템은, 입력층 및 출력층을 연계시키는 적어도 하나의 레이어로 이루어지는 은닉층들을 병렬적으로 연결 가능한 딥러닝 모듈을 저장하는 메모리; 및 내부의 DSP를 통하여 디지털 신호 처리하면서 상기 딥러닝 모듈을 제어하는 MCU를 포함한다.
또한, 상기 MCU는, 상기 입력층 및 출력층 사이에서 상기 은닉층들이 병렬 연결된 경우, 상기 입력층에 입력된 데이터를 상기 은닉층들에 전달하여 상기 DSP를 통해 학습하고, 상기 학습된 데이터를 상기 출력층에 전달하여 출력을 연산할 수 있다.
그리고, 상기 MCU는, 상기 입력층 및 출력층 사이에서 상기 은닉층들 중 하나만 연결된 경우, 상기 입력층에 입력된 데이터를 상기 하나만 연결된 은닉층에 전달하여 학습하고, 상기 학습된 데이터를 상기 출력층에 전달하여 출력을 연산할 수 있다.
본 발명의 기타 구체적인 사항들은 상세한 설명 및 도면들에 포함되어 있다.
본 발명에 따르면, 기존의 크고 무거운 딥러닝 처리 시스템을 대체할 수 있어 소형, 소규모의 장비 또는 로봇 등의 산업분야에 적용 가능하며, 다양한 형태의 딥러닝 모듈의 병렬 연결이 가능하여 신경망의 크기를 제약없이 구성할 수 있어 뛰어난 확장성을 가질 수 있다.
도 1은 본 발명의 일 실시예에 따른 병렬 딥러닝 처리 시스템의 구성을 도시한 도면이다.
도 2는 단일 딥러닝 모듈의 구조를 도시한 도면이다.
도 3은 병렬 딥러닝 모듈의 구조를 도시한 도면이다.
도 4는 병렬 딥러닝 모듈의 동작 과정을 도시한 도면이다.
이하, 첨부된 도면을 참조하여 본 발명의 바람직한 실시예를 상세히 설명한다. 본 발명의 이점 및 특징, 그리고 그것들을 달성하는 방법은 첨부되는 도면과 함께 상세하게 후술되어 있는 실시예들을 참조하면 명확해질 것이다. 그러나 본 발명은 이하에서 개시되는 실시예들에 한정되는 것이 아니라 서로 다른 다양한 형태로 구현될 것이며, 단지 본 실시예들은 본 발명의 개시가 완전하도록 하며, 본 발명이 속하는 기술분야에서 통상의 지식을 가진 자에게 발명의 범주를 완전하게 알려주기 위해 제공되는 것이며, 본 발명은 청구항의 범주에 의해 정의될 뿐이다. 명세서 전체에 걸쳐 동일 참조 부호는 동일 구성 요소를 지칭한다.
비록 제1, 제2 등이 다양한 소자, 구성요소 및/또는 섹션들을 서술하기 위해서 사용되나, 이들 소자, 구성요소 및/또는 섹션들은 이들 용어에 의해 제한되지 않음은 물론이다. 이들 용어들은 단지 하나의 소자, 구성요소 또는 섹션들을 다른 소자, 구성요소 또는 섹션들과 구별하기 위하여 사용하는 것이다. 따라서, 이하에서 언급되는 제1 소자, 제1 구성요소 또는 제1 섹션은 본 발명의 기술적 사상 내에서 제2 소자, 제2 구성요소 또는 제2 섹션일 수도 있음은 물론이다.
본 명세서에서 사용된 용어는 실시예들을 설명하기 위한 것이며 본 발명을 제한하고자 하는 것은 아니다. 본 명세서에서, 단수형은 문구에서 특별히 언급하지 않는 한 복수형도 포함한다. 명세서에서 사용되는 "포함한다(comprises)" 및/또는 "이루어지다(made of)"는 언급된 구성요소, 단계, 동작 및/또는 소자는 하나 이상의 다른 구성요소, 단계, 동작 및/또는 소자의 존재 또는 추가를 배제하지 않는다.
다른 정의가 없다면, 본 명세서에서 사용되는 모든 용어(기술 및 과학적 용어를 포함)는 본 발명이 속하는 기술분야에서 통상의 지식을 가진 자에게 공통적으로 이해될 수 있는 의미로 사용될 수 있을 것이다. 또 일반적으로 사용되는 사전에 정의되어 있는 용어들은 명백하게 특별히 정의되어 있지 않는 한 이상적으로 또는 과도하게 해석되지 않는다.
이하, 본 발명에 대하여 첨부된 도면에 따라 보다 상세히 설명한다.
도 1은 본 발명의 일 실시예에 따른 병렬 딥러닝 처리 시스템의 구성을 도시한 도면이다.
도 1을 참조하면, 본 발명의 일 실시예에 따른 병렬 딥러닝 처리 시스템(100)은, 메모리(110), MCU(120), 네트워크 인터페이스(130)를 포함한다.
그러나, 도 1에 도시된 구성 요소 모두가 병렬 딥러닝 처리 시스템(100)의 필수 구성 요소인 것은 아니다. 도 1에 도시된 구성 요소보다 많은 구성 요소에 의해 병렬 딥러닝 처리 시스템(100)이 구현될 수도 있고, 도 1에 도시된 구성 요소보다 적은 구성 요소에 의해 병렬 딥러닝 처리 시스템(100)이 구현될 수도 있다. 예를 들어, 도면에는 도시하지 않았으나, 입력 장치, 출력 장치, 저장 장치, 센서 또는 이들의 조합 등의 주변장치 등을 연결하는 인터페이스를 더 포함할 수 있다. 주변장치는 오디오 장치, 마이크 또는 이들의 조합을 포함할 수 있다.
메모리(110)는 MCU(120)의 처리 및 제어를 위한 소프트웨어, 프로그램, 명령어 집합 또는 이들의 조합 등을 저장할 수 있다. 을 저장할 수 있고, 병렬 딥러닝 처리 시스템(100)으로 입력되거나 병렬 딥러닝 처리 시스템(100)으로부터 출력되는 데이터를 저장할 수도 있다.
구체적으로, 메모리(110)는 입력층 및 출력층을 연계시키는 적어도 하나의 레이어로 이루어지는 은닉층들을 병렬적으로 연결 가능한 딥러닝 모듈을 저장한다.
이러한 메모리(110)는 휘발성 메모리(예컨대, 레지스터, 캐시, RAM), 비휘발성 메모리(예컨대, ROM, EEPROM, 플래시 메모리 등) 또는 두 가지 메모리의 어떤 조합이 될 수 있다.
예를 들어, 도 1에 도시한 바와 같이, 메모리(110)는 ROM(Read Only Memory, 112) 및 RAM(Random Access Memory, 114)을 포함할 수 있다. 특히, RAM(114)은 데이터 처리를 위한 SDRAM으로 구성할 수 있고, ROM(112)은 데이터 저장용 EEPROM으로 구성할 수 있다.
MCU(Micro Controller Unit, 120)는 실행가능 명령어를 실행하며, 딥러닝 모듈을 제어하여 데이터 학습 등을 수행한다.
구체적으로, MCU(120)는 DSP(Digital Signal Processor, 125)를 내부에 구비하며, 내부의 DSP를 통하여 디지털 신호 처리하면서 메모리(110)에 저장된 딥러닝 모듈을 제어한다. 여기에서, 딥러닝 모듈의 구성에 따라 DSP(125)를 통해 학습을 위한 연산을 고속으로 수행할 수 있다.
예를 들어, MCU(120)는 입력층 및 출력층 사이에서 은닉층들이 병렬 연결된 경우, 상기 입력층에 입력된 데이터를 상기 은닉층들에 전달하여 DSP(125)를 통해 학습하고, 상기 학습된 데이터를 상기 출력층에 전달하여 출력을 연산할 수 있다.
또한, MCU(120)는 입력층 및 출력층 사이에서 은닉층들 중 하나만 연결된 경우, 상기 입력층에 입력된 데이터를 상기 하나만 연결된 은닉층에 전달하여 학습하고, 상기 학습된 데이터를 상기 출력층에 전달하여 출력을 연산할 수 있다.
보다 구체적인 딥러닝 모듈의 제어 방식에 대해서는 후술하여 살펴 보도록 한다.
또한, MCU(120)는 캐시 메모리, 메모리 인터페이스 및 주변장치 인터페이스를 더 포함할 수 있다. MCU(120)와 주변 장치(외부 확장 장치를 위한 집적회로)가 함께 배치되는 SOC(system on chip)로 구현될 수 있으나, 이에 한정되지는 않는다. 주변장치 인터페이스는 MCU(120)와 입력 장치, 출력 장치 및 여러 다른 주변 장치를 연결하고, 메모리 인터페이스는 MCU(120)와 메모리(110)를 연결한다.
또한, MCU(120)는 처리할 명령어를 저장하는 레지스터(register), 비교, 판단, 연산을 담당하는 산술논리연산장치(arithmetic logical unit, ALU), 명령어의 해석과 실행을 위해 MCU(120)를 내부적으로 제어하는 내부 제어 유닛(inner control unit), 내부 버스 등을 더 포함할 수 있다.
또한, MCU(120)는 메모리 컨트롤러를 구비할 수 있다. 메모리 컨트롤러는 메모리(110) 상의 저장 영역에 대한 주소와 주소에 어떻게 접근할지를 제어하고, 메모리(110)의 특정 주소에 데이터를 기록하거나 읽어낼 수 있다. 또한, 메모리 컨트롤러는 메모리(110)의 리프레쉬(refresh)를 수행하거나 동작 전압을 공급하거나, MCU(120)와 메모리(110) 사이에서 이들 간의 신호 송수신을 담당할 수 있다. 한편, 메모리 컨트롤러는 MCU(120)에 탑재되지 않고, 메모리(110)와 함께 별도의 메모리 시스템을 구성할 수도 있다.
네트워크 인터페이스(130)는 하나 이상의 유선 및/또는 무선 통신 서브시스템을 포함할 수 있다. 무선 통신 서브시스템은 무선 주파수(radio frequency) 수신기 및 송수신기 및/또는 광(예컨대, 적외선) 수신기 또는 송수신기를 포함할 수 있다. 네트워크 인터페이스(130)는 네트워크(50)와 연결되는 통신 프로토콜을 지원할 수 있다. 예를 들어, 네트워크 인터페이스(130)는 GSM(Global System for Mobile Communication) 네트워크, EDGE(Enhanced Data GSM Environment) 네트워크, CDMA(Code Division Multiple Access) 네트워크, WCDMA(W-Code Division Multiple Access) 네트워크, LTE(Long Term Evolution) 네트워크, OFDMA(Orthogonal Frequency Division Multiple Access) 네트워크, WiMax 네트워크, Wi-Fi(Wireless Fidelity) 네트워크, Bluetooth 네트워크 등에 연결되어 적어도 하나 이상의 통신 프로토콜을 지원할 수 있다.
도 2는 단일 딥러닝 모듈의 구조를 도시한 도면이다. 또한, 도 3은 병렬 딥러닝 모듈의 구조를 도시한 도면이다.
인공 신경망은 입력층, 은닉층, 출력층으로 이루어지며, 입력층은 받은 값을 그대로 은닉층에 전달할 수 있다. 은닉층은 다수의 노드들을 포함할 수 있으며, 각 노드는 다수의 입력신호들을 각각 가중치들과 곱한 후, 이를 가산한 가산 신호를 출력할 수 있다. 그리고, 은닉층 및 출력층은 가중치 합 계산 및 활성함수 계산을 수행할 수 있다. 가중치 합 계산은 입력층 또는 은닉층의 마디들을 결합하는 형태가 될 수 있다. 활성함수는 다음의 수학식 1과 같은 시그모이드 함수로써, 입력 변수 또는 은닉 마디의 결합을 변환하는 함수가 될 수 있다.
Figure pat00001
도 2를 참조하면, 인공 신경망은 은닉층이 2개 이상인 심층 신경망일 수 있으며, 딥러닝 기법이 적용되는 딥러닝 신경망일 수 있다. 도 2에서, 은닉층은 2층 구조(hidden layer1, hidden layer2)로 도시되었으나, 이에만 제한되지 않음은 자명하다 할 것이다. 이때, 딥러닝(deep learning) 모듈은 역전달(Back-Propagation), 제한된 볼츠만 머신(Restricted Boltzmann Machine), 오토 인코더(Auto Encoder), CNN(Convolutional Neural Network), RNN(Recurrent Neural Network), DBN(Deep Belief Network) 등을 포함할 수 있다.
도 2에서, 은닉층들 중 하나만 입력층 및 출력층과 연결되고, MCU(120) 또는 상기 MCU(120)에 내장된 DSP(125) 중 하나만 이용하여 단일의 딥러닝 모듈을 제어하여 실행하거나, 또는 입력층 및 출력층에서의 연산은 MCU(120)에서 수행하고 은닉층에서의 연산은 DSP(125)에서 수행할 수도 있다. 다만, 입력층, 다층 구조의 은닉층, 출력층이 직렬로 연결된 단일의 딥러닝 모듈이므로, 입력층 및 출력층에서의 연산을 수행하는 MCU(120)에서 은닉층에서의 연산도 수행하는 것이 바람직하다 할 것이다.
도 3을 참조하면, 은닉층들을 병렬 연결한 경우, 입력층 및 출력층을 처리하는 구성요소와, 은닉층들을 처리하는 구성요소를 별개로 설정하는 것이 바람직하다. 구체적으로, MCU(120)가 입력층 및 출력층에서의 제어를 수행하며, DSP(125)가 은닉층들에서의 제어를 수행한다. 즉, 은닉층들을 병렬 연결한 병렬 딥러닝 모듈의 경우, 입력과 출력을 담당하는 메인 프로세서와 은닉층(hidden layer)를 담당하는 별도의 프로세서로 구성할 수 있으며, 메인 프로세서는 MCU(120)가 수행하며, 별도의 프로세서는 DSP(125)가 수행한다.
이에, 딥러닝 모듈의 내부 신경망 구조를 유동적으로 구성하여 신경망의 크기를 제약 없이 구성할 수 있어 대규모 신경망을 구현할 수 있다. 또한, 대규모 신경망을 DSP(125)를 통해 학습을 위한 연산을 고속으로 진행할 수 있어 DSP(125)를 이용한 MCU(120)로 딥러닝 프레임워크를 구성할 수 있고, 소형 로봇, 스마트폰 등의 소형 장치에 적용할 수 있다.
도 4는 병렬 딥러닝 모듈의 동작 과정을 도시한 도면이다.
도 4를 참조하면, MCU(120)에서 데이터를 입력받아 학습을 하는 은닉층에 입력 데이터를 전달하며(S10), DSP(125)를 통해 병렬 연결된 은닉층에서 데이터 학습하여 출력층에 전달하고(S20), MCU(120)에서 전달된 데이터를 연산하여 출력층에 출력한다(S30).
이러한 병렬 딥러닝 모듈의 동작 과정에서, MCU(120)가 메인 프로세서가 되고, DSP(125)가 서브 프로세서가 된다. 그리고, 각각의 병렬 연결된 은닉층들은 특성에 맞는 학습을 DSP(125) 진행하여 학습을 위한 연산을 고속으로 진행할 수 있고, DSP(125) 내장된 MCU(120)의 하드웨어 레벨에서 딥러닝 프레임워크(deeplearning framework)를 구성할 수 있다.
한편, 본 발명의 일 실시예에 따른 시스템은 소프트웨어 및 하드웨어에 의해 하나의 모듈로 구현 가능하며, 전술한 본 발명의 실시예들은 컴퓨터에서 실행될 수 있는 프로그램으로 작성 가능하고, 컴퓨터로 읽을 수 있는 기록매체를 이용하여 상기 프로그램을 동작시키는 범용 컴퓨터에서 구현될 수 있다. 상기 컴퓨터로 읽을 수 있는 기록매체는 롬(ROM), 플로피 디스크, 하드 디스크 등의 자기적 매체, CD, DVD 등의 광학적 매체 및 인터넷을 통한 전송과 같은 캐리어 웨이브와 같은 형태로 구현된다. 또한, 컴퓨터가 읽을 수 있는 기록매체는 네크워크로 연결된 컴퓨터 시스템에 분산되어 분산 방식으로 컴퓨터가 읽을 수 있는 코드가 저장되고 실행될 수 있다.
그리고, 본 발명의 실시예에서 사용되는 구성요소는 메모리 상의 소정 영역에서 수행되는 태스크, 클래스, 서브 루틴, 프로세스, 오브젝트, 실행 쓰레드, 프로그램과 같은 소프트웨어(software)나, FPGA(field-programmable gate array)나 ASIC(application-specific integrated circuit)과 같은 하드웨어(hardware)로 구현될 수 있으며, 또한 상기 소프트웨어 및 하드웨어의 조합으로 이루어질 수도 있다. 상기 구성요소는 컴퓨터로 판독 가능한 저장 매체에 포함되어 있을 수도 있고, 복수의 컴퓨터에 그 일부가 분산되어 분포될 수도 있다.
소프트웨어는 컴퓨터 프로그램(computer program), 코드(code), 명령(instruction), 또는 이들 중 하나 이상의 조합을 포함할 수 있으며, 원하는 대로 동작하도록 처리 시스템을 구성하거나 독립적으로 또는 결합적으로(collectively) 처리 시스템을 명령할 수 있다. 소프트웨어 및/또는 데이터는, 처리 시스템에 의하여 해석되거나 처리 시스템에 명령 또는 데이터를 제공하기 위하여, 어떤 유형의 기계, 구성요소(component), 물리적 장치, 가상 장치(virtual equipment), 컴퓨터 저장 매체 또는 장치에 영구적으로, 또는 일시적으로 구체화(embody)될 수 있다. 소프트웨어는 네트워크로 연결된 컴퓨터 시스템 상에 분산되어서, 분산된 방법으로 저장되거나 실행될 수도 있다. 소프트웨어 및 데이터는 하나 이상의 컴퓨터 판독 가능 기록 매체에 저장될 수 있다.
실시예에 따른 방법은 다양한 컴퓨터 수단을 통하여 수행될 수 있는 프로그램 명령 형태로 구현되어 컴퓨터 판독 가능 매체에 기록될 수 있다. 상기 컴퓨터 판독 가능 매체는 프로그램 명령, 데이터 파일, 데이터 구조 등을 단독으로 또는 조합하여 포함할 수 있다. 상기 매체에 기록되는 프로그램 명령은 실시예를 위하여 특별히 설계되고 구성된 것들이거나 컴퓨터 소프트웨어 당업자에게 공지되어 사용 가능한 것일 수도 있다. 컴퓨터 판독 가능 기록 매체의 예에는 하드 디스크, 플로피 디스크 및 자기 테이프와 같은 자기 매체(magnetic media), CD-ROM, DVD와 같은 광기록 매체(optical media), 플롭티컬 디스크(floptical disk)와 같은 자기-광 매체(magneto-optical media), 및 롬(ROM), 램(RAM), 플래시 메모리 등과 같은 프로그램 명령을 저장하고 수행하도록 특별히 구성된 하드웨어 장치가 포함된다. 프로그램 명령의 예에는 컴파일러에 의해 만들어지는 것과 같은 기계어 코드뿐만 아니라 인터프리터 등을 사용해서 컴퓨터에 의해서 실행될 수 있는 고급 언어 코드를 포함한다.
이상 첨부된 도면을 참조하여 본 발명의 실시예를 설명하였지만, 본 발명이 속하는 기술분야에서 통상의 지식을 가진 자는 본 발명이 그 기술적 사상이나 필수적인 특징을 변경하지 않고서 다른 구체적인 형태로 실시될 수 있다는 것을 이해할 수 있을 것이다. 그러므로 이상에서 기술한 실시예들은 모든 면에서 예시적인 것이며 한정적이 아닌 것으로 이해해야만 한다.
100: 병렬 딥러닝 처리 시스템
110: 메모리
120: MCU(Micro Controller Unit)
130: 네트워크 인터페이스

Claims (3)

  1. 입력층 및 출력층을 연계시키는 적어도 하나의 레이어로 이루어지는 은닉층들을 병렬적으로 연결 가능한 딥러닝 모듈을 저장하는 메모리; 및
    내부의 DSP를 통하여 디지털 신호 처리하면서 상기 딥러닝 모듈을 제어하는 MCU를 포함하는, 병렬 딥러닝 처리 시스템.
  2. 제 1항에 있어서,
    상기 MCU는,
    상기 입력층 및 출력층 사이에서 상기 은닉층들이 병렬 연결된 경우, 상기 입력층에 입력된 데이터를 상기 은닉층들에 전달하여 상기 DSP를 통해 학습하고, 상기 학습된 데이터를 상기 출력층에 전달하여 출력을 연산하는, 병렬 딥러닝 처리 시스템.
  3. 제 1항에 있어서,
    상기 MCU는,
    상기 입력층 및 출력층 사이에서 상기 은닉층들 중 하나만 연결된 경우, 상기 입력층에 입력된 데이터를 상기 하나만 연결된 은닉층에 전달하여 학습하고, 상기 학습된 데이터를 상기 출력층에 전달하여 출력을 연산하는, 병렬 딥러닝 처리 시스템.
KR1020190002881A 2019-01-09 2019-01-09 병렬 딥러닝 처리 시스템 KR20200086546A (ko)

Priority Applications (1)

Application Number Priority Date Filing Date Title
KR1020190002881A KR20200086546A (ko) 2019-01-09 2019-01-09 병렬 딥러닝 처리 시스템

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
KR1020190002881A KR20200086546A (ko) 2019-01-09 2019-01-09 병렬 딥러닝 처리 시스템

Publications (1)

Publication Number Publication Date
KR20200086546A true KR20200086546A (ko) 2020-07-17

Family

ID=71832409

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1020190002881A KR20200086546A (ko) 2019-01-09 2019-01-09 병렬 딥러닝 처리 시스템

Country Status (1)

Country Link
KR (1) KR20200086546A (ko)

Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR20080042083A (ko) 2005-08-31 2008-05-14 마이크로소프트 코포레이션 그래픽 처리 유닛 상에서 콘볼루션 신경망을 트레이닝하는방법
KR20180004898A (ko) 2016-07-05 2018-01-15 주식회사 와플앱스 딥러닝 기반의 이미지 처리 기술 및 그 방법

Patent Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR20080042083A (ko) 2005-08-31 2008-05-14 마이크로소프트 코포레이션 그래픽 처리 유닛 상에서 콘볼루션 신경망을 트레이닝하는방법
KR20180004898A (ko) 2016-07-05 2018-01-15 주식회사 와플앱스 딥러닝 기반의 이미지 처리 기술 및 그 방법

Similar Documents

Publication Publication Date Title
Bechtel et al. Deeppicar: A low-cost deep neural network-based autonomous car
KR20230018496A (ko) 뉴럴 네트워크를 위한 트레이닝 방법, 뉴럴 네트워크를 이용한 인식 방법 및 그 장치들
US9275326B2 (en) Rate stabilization through plasticity in spiking neuron network
US20170091619A1 (en) Selective backpropagation
KR102063377B1 (ko) 중대형 네트워크의 학습을 위한 점진적인 학습 기반 정보 이전 방법 및 그 장치
TW202125286A (zh) 以記憶體內計算陣列進行神經網路的迴旋層的並行處理
EP3920026A1 (en) Scheduler, method of operating the same, and accelerator apparatus including the same
JP7295282B2 (ja) 適応的ハイパーパラメータセットを利用したマルチステージ学習を通じて自律走行自動車のマシンラーニングネットワークをオンデバイス学習させる方法及びこれを利用したオンデバイス学習装置
WO2019033084A1 (en) PULSE MODULATION MULTIPLIER DURATION
KR20190098671A (ko) 뉴럴 네트워크의 고속 처리 방법 및 그 방법을 이용한 장치
US11853869B2 (en) Neural network apparatus and method of processing variable-resolution operation by the same
US20240123617A1 (en) Robot movement apparatus and related methods
CN112868033A (zh) 用于提供具有可调节计算需求的机器学习模型的系统和方法
CN115552412A (zh) 利用异构代理组进行图卷积强化学习
JP2022091660A (ja) ニューラルネットワークを用いるデータ処理方法、データ処理装置及びこれを含む電子装置
KR20220052844A (ko) 뉴럴 네트워크의 제공
US20210182684A1 (en) Depth-first deep convolutional neural network inference
KR20200086546A (ko) 병렬 딥러닝 처리 시스템
JP7507549B2 (ja) ニューロモーフィック装置、及びニューロモーフィック装置でマルチビットニューロモーフィック演算を処理する方法
CN113222134B (zh) 一种类脑计算系统、方法及计算机可读存储介质
KR20190040144A (ko) 딥러닝 소자를 포함하는 반도체 시스템
Hino et al. Set-based particle swarm optimization with status memory for knapsack problem
KR20210103912A (ko) 뉴럴 네트워크를 학습시키는 학습 방법 및 장치, 뉴럴 네트워크를 이용한 데이터 처리 방법 및 장치
KR102578377B1 (ko) 편향-분산 딜레마를 해결하는 뇌모사형 적응 제어를 위한 전자 장치 및 그의 방법
KR20240027470A (ko) 인공 신경망 모델의 동작 방법 및 장치