[go: up one dir, main page]

KR20250083434A - 뉴럴 네트워크 모델의 학습을 위한 방법 및 뉴럴 네트워크 모델의 학습을 위한 장치 - Google Patents

뉴럴 네트워크 모델의 학습을 위한 방법 및 뉴럴 네트워크 모델의 학습을 위한 장치 Download PDF

Info

Publication number
KR20250083434A
KR20250083434A KR1020250067316A KR20250067316A KR20250083434A KR 20250083434 A KR20250083434 A KR 20250083434A KR 1020250067316 A KR1020250067316 A KR 1020250067316A KR 20250067316 A KR20250067316 A KR 20250067316A KR 20250083434 A KR20250083434 A KR 20250083434A
Authority
KR
South Korea
Prior art keywords
layer
output
neural network
weight
current
Prior art date
Legal status (The legal status 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 status listed.)
Pending
Application number
KR1020250067316A
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 한국과학기술정보연구원
Publication of KR20250083434A publication Critical patent/KR20250083434A/ko
Pending legal-status Critical Current

Links

Classifications

    • GPHYSICS
    • G06COMPUTING OR CALCULATING; COUNTING
    • G06NCOMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
    • G06N3/00Computing arrangements based on biological models
    • G06N3/02Neural networks
    • G06N3/08Learning methods
    • G06N3/084Backpropagation, e.g. using gradient descent
    • GPHYSICS
    • G06COMPUTING OR CALCULATING; 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/048Activation functions

Landscapes

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

Abstract

뉴럴 네트워크 모델의 학습을 위한 방법은 뉴럴 네트워크의 현재 레이어에서 입력값을 수신하는 단계; 입력값에 가중치를 곱하고, 가중치가 곱해진 입력값에 바이어스를 더하고 활성화 함수에 기초하여 입력값에 대한 출력값을 생성하는 단계; 출력값을 현재 레이어의 다음 레이어로 출력하는 단계; 및 출력값을 현재 레이어의 추가 출력 레이어로 출력하고, 출력값 및 정답 간 오차를 계산하여 가중치를 업데이트하는 단계; 를 포함할 수 있다.

Description

뉴럴 네트워크 모델의 학습을 위한 방법 및 뉴럴 네트워크 모델의 학습을 위한 장치{A METHOD FOR NEURAL NETWORK MODEL LEARNING AND AN APPARATUS FOR NEURAL NETWORK MODEL LEARNING}
실시예들은 뉴럴 네트워크 모델의 학습을 위한 방법 및 뉴럴 네트워크 모델의 학습을 위한 장치에 관한 것이다.
뉴럴 네트워크는 신경망의 시냅스와 같이 뉴런(노드)으로 구성된 네트워크이다. 뉴럴 네트워크는 뉴런(노드)의 학습을 통해 문제 해결을 하는 모델이다. 기계학습과 신경망에 대한 연구는 활발히 진행되고 있다. 신경망의 학습과정에서 주어진 문제에 대한 신경망의 구성, 예를 들어, 노드의 개수, 계층의 개수 등과 같이, 학습의 효율 및 정확도를 위한 매개변수들은 경험과 반복적인 실험을 통해 결정되고 있다. 학습 모델의 정확도를 개선하기 위해서 계산된 결과 및 정답 간 오차를 산출하여 오차에 관여하는 값들의 가중치를 수정하여 오차 범위를 감소시키는 방법들이 연구되고 있다.
실시예들이 이루고자 하는 과제는, 학습 모델의 정확도를 증가시키는 방법을 제공하는 것이다.
실시예들이 이루고자 하는 과제는, 학습 모델의 오차를 빠르고 정확하게 해결하는 방법을 제공하는 것이다.
실시예들이 이루고자 하는 과제는, 종래 인공 신경망(Artificial Neural Network, ANN) 구조가 지닌 한계를 해결하는 것이다.
뉴럴 네트워크 모델의 학습을 위한 방법은 뉴럴 네트워크의 현재 레이어에서 입력값을 수신하는 단계; 입력값에 가중치를 곱하고, 가중치가 곱해진 입력값에 바이어스를 더하고 활성화 함수에 기초하여 입력값에 대한 출력값을 생성하는 단계; 출력값을 현재 레이어의 다음 레이어로 출력하는 단계; 및 출력값을 현재 레이어의 추가 출력 레이어로 출력하고, 출력값 및 정답 간 오차를 계산하여 가중치를 업데이트하는 단계; 를 포함할 수 있다.
바람직하게는, 뉴럴 네트워크는 복수의 레이어들을 포함하고, 각 레이어의 뉴런은 이전 레이어로부터 입력값을 수신하고 다음 레이어로 출력값을 출력하고, 출력값에 기반하여 가중치가 업데이트되고, 복수의 레이어들 중 적어도 하나의 레이어는 다음 레이어로 출력값을 출력하는 것에 추가로 별도의 레이어로 출력값을 출력하고, 별도의 레이어로부터 적어도 하나의 레이어가 업데이트될 수 있다.
바람직하게는, 복수의 레이어들 및 별도의 레이어를 포함하는 뉴럴 네트워크는 피쉬본 형태를 가질 수 있다.
바람직하게는, 복수의 레이어들의 마지막 레이어에서 가중치 업데이트가 연산되면서, 복수의 레이어들 중 적어도 하나의 레이어에서 별도의 레이어에 의해서 가중치가 업데이트될 수 있다.
바람직하게는, 복수의 레이어들의 마지막 레이어에서 가중치 업데이트가 연산되기 이전에, 복수의 레이어들 중 적어도 하나의 레이어에서 별도의 레이어에 의해서 가중치가 업데이트될 수 있다.
바람직하게는, 복수의 레이어들의 마지막 레이어에서 가중치 업데이트가 연산된 이후에, 복수의 레이어들 중 적어도 하나의 레이어에서 별도의 레이어에 의해서 가중치가 업데이트될 수 있다.
바람직하게는, 뉴럴 네트워크 모델의 학습을 위한 방법은 복수의 레이어들 중 적어도 하나의 레이어에서 다음 레이어에 대한 출력을 수행하고, 다음 레이어가 아닌 별도의 레이어에 대한 출력을 수행하는 것을 더 포함할 수 있다.
바람직하게는, 복수의 레이어들의 각 레이어의 뉴런은 각 입력값에 각 가중치를 곱하고, 바이어스를 더하고 활성화 함수에 기초하여 출력값을 출력하고, 복수의 레이어들 중 별도의 레이어를 추가로 갖는 적어도 하나의 레이어는 뉴럴 네트워크 설정 정보에 기초하여 결정될 수 있다.
다만, 전술한 기술적 과제만으로 제한되는 것은 아니고, 기재된 전체 내용에 기초하여 당업자가 유추할 수 있는 다른 기술적 과제로 실시예들의 권리범위가 확장될 수 있다.
실시예들에 따른 방법 및 장치는 개선된 인공신경망 구조를 이용하여 정확도가 향상된 학습 모델을 제공할 수 있다.
실시예들에 따른 방법 및 장치는 개선된 인공신경망 구조를 이용하여 학습 모델을 빠르게 업데이트할 수 있다.
실시예들에 따른 방법 및 장치는 다양한 문제를 학습하고, 정확한 문제 해결에 최적화된 신경망을 구성할 수 있다.
도면은 실시예들을 더욱 이해하기 위해서 포함되며, 도면은 실시예들에 관련된 설명과 함께 실시예들을 나타낸다. 이하에서 설명하는 다양한 실시예들의 보다 나은 이해를 위하여, 하기 도면들에 걸쳐 유사한 참조 번호들이 대응하는 부분들을 포함하는 다음의 도면들과 관련하여 이하의 실시예들의 설명을 반드시 참조해야 한다.
도1은 실시예들에 따른 뉴런을 나타낸다.
도2는 실시예들에 따른 피쉬본 형태의 뉴런을 나타낸다.
도3은 실시예들에 따른 뉴럴 네트워크를 나타낸다.
도4는 실시예들에 따른 피쉬본 형태의 뉴럴 네트워크를 나타낸다.
도5는 실시예들에 따른 뉴럴 네트워크 모델의 학습을 위한 방법을 나타낸다.
도6은 실시예들에 따른 뉴럴 네트워크 모델의 학습을 위한 시스템을 나타낸다.
실시예들의 바람직한 실시예에 대해 구체적으로 설명하며, 그 예는 첨부된 도면에 나타낸다. 첨부된 도면을 참조한 아래의 상세한 설명은 실시예들의 실시예에 따라 구현될 수 있는 실시예만을 나타내기보다는 실시예들의 바람직한 실시예를 설명하기 위한 것이다. 다음의 상세한 설명은 실시예들에 대한 철저한 이해를 제공하기 위해 세부 사항을 포함한다. 그러나 실시예들이 이러한 세부 사항 없이 실행될 수 있다는 것은 당업자에게 자명하다.
실시예들에서 사용되는 대부분의 용어는 해당 분야에서 널리 사용되는 일반적인 것들에서 선택되지만, 일부 용어는 출원인에 의해 임의로 선택되며 그 의미는 필요에 따라 다음 설명에서 자세히 서술한다. 따라서 실시예들은 용어의 단순한 명칭이나 의미가 아닌 용어의 의도된 의미에 근거하여 이해되어야 한다.
도1은 실시예들에 따른 뉴런을 나타낸다.
도1은 인공 신경망(Artificial Neural Network, ANN)을 구성하는 뉴런의 예시를 나타낸다.
실시예들에 따른 뉴럴 네트워크 모델의 학습을 위한 방법 및 뉴럴 네트워크 모델의 학습을 위한 장치를 설명하기 위해 필요한 용어에 대한 정의는 아래와 같다.
인공지능이란 인간의 학습능력과 추론능력, 지각능력, 자연언어의 이해능력 등을 컴퓨터 프로그램으로 실현한 기술을 의미한다. 신경망 (neural network)이란 인간이 뇌를 통해 문제를 처리하는 방법과 비슷한 방법으로 문제를 해결하기 위해 컴퓨터에서 채택하고 있는 구조를 의미한다. 인간의 체내에서, 뇌의 기본 구조 조직인 뉴런(neuron)과 뉴런이 연결되어 일을 처리하는 것처럼, 수학적 모델로서의 뉴런이 상호 연결되어 네트워크를 형성할 때 이를 신경망이라 한다. 이를 생물학적인 신경망과 구별하여 특히 인공 신경망 (artificial neural network)이라고도 한다. 신경망은 각 뉴런이 독립적으로 동작하는 처리기의 역할을 하기 때문에 병렬성 (parallellism)이 뛰어나고, 많은 연결선에 정보가 분산되어 있기 때문에 몇몇 뉴런에 문제가 발생하더라도 전체 시스템에 큰 영향을 주지 않으므로 결함 허용 (fault tolerance) 능력이 있으며, 주어진 환경에 대한 학습 능력이 있다. 이와 같은 특성 때문에 인공 지능 분야의 문제 해결에 이용 되고 있으며, 문자 인식, 화상 처리, 자연 언어 처리, 음성 인식 등 여러 분야에서 이용되고 있다. 딥 러닝 (deep learning)은 컴퓨터가 여러 데이터를 이용해 마치 사람처럼 스스로 학습할 수 있게 하기 위해 인공 신경망(ANN: artificial neural network)을 기반으로 구축한 기계 학습 기술을 의미한다. 딥 러닝은 인간의 두뇌가 수많은 데이터 속에서 패턴을 발견한 뒤 사물을 구분하는 정보처리 방식을 모방해 컴퓨터가 사물을 분별 하도록 기계를 학습시킨다. 딥 러닝 기술을 적용하면 사람이 모든 판단 기준을 정해주지 않아도 컴퓨터가 데이터를 바탕으로 학습하여 스스로 인지, 추론 및 판단할 수 있게 된다. 음성 또는 이미지 인식과 사진 분석 등에 광범위하게 활용된다. 병렬 컴퓨팅 (parallel computing) 또는 병렬 연산은 동시에 많은 계산을 하는 연산의 한 방법이다. 크고 복잡한 문제를 작게 나눠 동시에 병렬적으로 해결하는 데에 주로 사용되며, 병렬 컴퓨팅에는 여러 방법과 종류가 존재한다. 그 예로, 비트 수준, 명령어 수준, 데이터, 작업 병렬 처리 방식 등이 있다.
인공신경망 구조는, 은닉층(hidden layer)의 개수, 유닛의 개수, 또는 활성화 함수(activation function)의 종류를 다르게 함으로써 구성될 수 있다.
뉴런은 노드로 지칭될 수 있다. 뉴런은 n개의 입력값을 입력받고 활성화 함수에 기초한 연산을 통해 출력값을 생성한다. 도1에서 f는 활성화 함수, w는 가중치, b는 바이어스, x는 입력값, y는 출력값을 의미한다. 학습 모델을 구성하는 복수의 레이어들의 각 레이어마다 복수의 뉴런들이 구성될 수 있다. 도1은 한 레이어에 포함된 한 뉴런을 예시로 나타낸다. 복수의 레이어들은 입력층(입력 레이어), 복수의 은닉층(히든 레이어), 출력층(출력 레이어)으로 구성될 수 있다. 도1의 뉴런이 최종 출력층의 뉴런이라고 가정하면, 최종 출력단에서 계산된 결과값과 정답값을 비교하여, 오차를 산출할 수 있고, 오차를 감소시키기 위해서 학습 계산에 영향을 미치는 가중치 및/또는 바이어스를 업데이트할 수 있다. 업데이트된 가중치 및/또는 바이어스는 출력층에서 입력층으로 역순으로 전파될 수 있다. 이러한 과정을 역전파(Backpropagation)라고 지칭한다.
일반적 뉴럴 네트워크의 역전파를 보면, 최종 출력단에서 정답셋과 출력셋을 비교하기 때문에, 입력단에 가까운 레이어 및/또는 뉴런(노드)일수록 학습이 제대로 되지 않는 문제점이 존재한다. 뉴럴 네트워크를 구성하는 모든 레이어에서 계산 결과와 정답을 비교하여 뉴럴 네트워크 내 모든 레이어의 가중치를 업데이트함으로써 정확도를 효과적으로 증가시킬 수 있는, 이른바, 피쉬본 형태의 뉴럴 네트워크 구조를 제안한다. 이하에서, 각 도면을 참조하여, 개선된 뉴럴 네트워크 구조를 설명한다.
도2는 실시예들에 따른 피쉬본 형태의 뉴런을 나타낸다.
도2는 도1과 비교 시 피쉬본 형태의 뉴럴 네트워크를 구성하는 레이어의 뉴런 구조를 나타낸다. 도2의 뉴런의 기본적 구조는 도1의 뉴런의 구조와 동일하다. 도1의 설명을 도2에서 참조할 수 있다.
도2의 피쉬본 형태의 뉴럴 네트워크의 뉴런(노드)의 출력의 형태가 새롭게 제안된다.
도2를 참조하면, 뉴럴 네트워크 모델의 학습을 위한 방법으로서, 뉴럴 네트워크의 현재 레이어에서 입력값을 수신하는 단계; 입력값에 가중치를 곱하고, 가중치가 곱해진 입력값에 바이어스를 더하고 활성화 함수에 기초하여 연산결과에 대한 출력값을 생성하는 단계; 출력값을 현재 레이어의 다음 레이어로 출력하는 단계; 및 출력값을 현재 레이어의 추가 출력 레이어로 출력하고, 출력값 및 정답 간 오차를 계산하여 가중치를 업데이트하는 단계; 를 포함할 수 있다.
즉, 도1의 뉴런은 출력값을 현재 레이어에서 다음 레이어로 전달하고, 다음 레이어로부터 뉴럴 네트워크의 업데이트를 위한 정보(예를 들어, 업데이트1)가 수신되면 이를 수신한다.
반면에, 도2의 뉴런은 도1과 같이, 계산된 결과값을 현재 레이어에서 다음 레이어로 전달하고, 다음 레이어로부터 뉴럴 네트워크의 업데이트를 위한 정보가 수신되면 이를 수신할 뿐만 아니라, 도2의 뉴런은 계산된 결과값을 현재 레이어 및 다음 레이어가 아닌, 추가적인 별도의 레이어로 출력한다. 다음 레이어로 전달되는 결과값과 추가적인 별도의 레이어로 전달되는 결과값은 동일하나 그 목적이 상이하다. 입력층에서 출력층 방향에 따라, 현재 레이어에서 다음 레이어로 전달되는 결과값은 다음 레이어에서 학습 및 계산을 위한 목적을 지닌다. 또한, 다음 레이어가 최종 출력층이면, 오차 연산을 통해 역전파로 전달되는 업데이트 정보(업데이트1)를 출력층에서 입력층 방향으로 전달된다.
하지만, 추가적인 별도의 레이어는 입력층 내지 출력층 사이에 포함된 복수의 은닉층(히든 레이어)들로부터 계산된 중간 결과값을 전달 받아서, 매 레이어 및/또는 일부 레이어에서 역전파 업데이트(업데이트2)를 수행하기 위한 목적을 지닌다.
도2를 참조하면, 복수의 레이어들의 각 레이어의 뉴런은 각 입력값에 각 가중치를 곱하고, 바이어스를 더하고 활성화 함수에 기초하여 출력값을 출력하고, 복수의 레이어들 중 별도의 레이어를 추가로 갖는 적어도 하나의 레이어는 뉴럴 네트워크 설정 정보에 기초하여 결정된다.
즉, 실시예들에 따른 피쉬본 뉴런(줄여서, 뉴런으로 지칭함)은 뉴런의 출력을 2군데 이상으로 전송하는 구조를 가진다.
피시본 뉴런으로 뉴럴 네트워크를 구성하는 것을 피시본 뉴럴 네트워크라 칭하며, 하나의 출력은 원래의 뉴럴 네트워크 방향으로 가되, 다른 출력들은 별도의 출력층(피시본 출력층)으로 전달하여 오차 계산을 수행한다.
뉴럴 네트워크의 업데이트는 최종 출력층에서 전달되는 원래의 오차 업데이트가 있고, 피시본 출력층에서 전달되는 오차 업데이트가 있으며, 포워드(Forward) 연산의 역방향으로 업데이트 한다.
피시본 뉴럴 네트워크는 전체의 히든 레이어를 구성할 수 있으며, 사용자의 의도에 따라 일정한 비율을 정하여 피시본 드랍 아웃(Fishbone Drop-Out)을 수행할 수 있다. 피시본 드랍 아웃이 0일 경우는 전체 히든 레이어를 피시본으로 구성하는 것이며, 100%일 경우는 일반 뉴럴 네트워크의 구성과 같다.
도1 내지 도2에서 하나의 뉴런 관점에서, 뉴럴 네트워크 동작을 설명하였다면, 도3 내지 도4에서 전체 네트워크 구조 관점에서 뉴럴 네트워크를 동작을 설명하기로 한다.
도3은 실시예들에 따른 뉴럴 네트워크를 나타낸다.
도3은 도1의 뉴런으로 구성된 뉴럴 네트워크를 도시한다.
뉴럴 네트워크는 입력층, 복수의 은닉층들, 출력층을 포함한다. 도3의 각 레이어에 포함된 뉴런의 예시는 도1과 같다.
실시예들에 따른 뉴럴 네트워크 모델의 학습을 위한 방법 및 뉴럴 네트워크 모델의 학습을 위한 장치는 뉴럴 네트워크를 통해 최종 출력단에서 계산된 결과값들(y'1 내지 y'p) 및 정답값들(y1 내지 yp )간 오차를 계산한다.
실시예들에 따른 신경망의 역전파는 차이(오차)를 최소화 할 수 있는 매개변수(가중치, 바이어스)을 찾고 네트워크의 뉴런을 업데이트 하는 과정이다. 예를 들어, 가중치의 미분을 통해 가중치의 변화에 따른 에러 변화를 찾고, 에러를 최소화하는 매개변수(가중치 및/또는 바이어스)를 산출한다. 이를 위해 경사하강법 등이 이용될 수 있다. 실시예들에 따른 방법/장치는 출력층에서 입력층으로 뉴런의 매개변수를 업데이트할 수 있다.
도4는 실시예들에 따른 피쉬본 형태의 뉴럴 네트워크를 나타낸다.
도4는 도2의 뉴런(피쉬본)으로 구성된 (피쉬본) 뉴럴 네트워크를 도시한다.
도4의 뉴럴 네트워크는 도3의 뉴럴 네트워크와 동일하나, 차이점은 도2에서 설명한 바와 같이, 입력층 내지 출력층 간 은닉층들에 대한 가중치 업데이트를 위한 별도의 추가 레이어(401)를 포함한다는 점이다. 피시본의 입력을 생성한 이전 계층의 가중치 업데이트 구간(400)에서 입력 x를 받는 입력 계층부터 출력을 만드는 계층 전(z1 ~ zt)까지 선택적으로 피시본 구조를 적용할 수 있다. 즉, 중간 가중치 업데이트를 위한 별도의 추가 레이어(401)는 출력층 이전 레이어들 중에서 소정의 개수의 레이어들에 대해 존재할 수 있고, 별도의 추가 레이어(401)를 배치하는 레이어 구성은 복수의 레이어들 중에서 선택적으로 결정할 수 있다.
도4를 참조하면, 실시예들에 따른 뉴럴 네트워크는 복수의 레이어들을 포함하고, 각 레이어의 뉴런은 이전 레이어로부터 입력값을 수신하고 다음 레이어로 출력값을 출력하고, 출력값에 기반하여 가중치가 업데이트되고, 복수의 레이어들 중 적어도 하나의 레이어는 다음 레이어로 출력값을 출력하는 것에 추가로 별도의 레이어로 출력값을 출력하고, 별도의 레이어로부터 적어도 하나의 레이어가 업데이트될 수 있다.
복수의 레이어들 및 별도의 레이어를 포함하는 뉴럴 네트워크는 피쉬본 형태를 가질 수 있다.
복수의 레이어들의 마지막 레이어에서 가중치 업데이트가 연산되기 이전에, 복수의 레이어들 중 적어도 하나의 레이어에서 별도의 레이어에 의해서 가중치가 업데이트될 수 있다.
실시예들에 따른 뉴럴 네트워크 모델의 학습을 위한 방법은 복수의 레이어들 중 적어도 하나의 레이어에서 다음 레이어에 대한 출력을 수행하고, 다음 레이어가 아닌 별도의 레이어에 대한 출력을 수행하는 것을 더 포함할 수 있다.
도5는 실시예들에 따른 뉴럴 네트워크 모델의 학습을 위한 방법을 나타낸다.
도5는 도2 및 도4의 뉴럴 네트워크의 학습 방법을 나타낸다.
S500, 실시예들에 따른 뉴럴 네트워크 모델의 학습을 위한 방법은 뉴럴 네트워크의 현재 레이어에서 입력값을 수신하는 단계; 를 포함할 수 있다.
S501, 실시예들에 따른 뉴럴 네트워크 모델의 학습을 위한 방법은 입력값에 가중치를 곱하고, 가중치가 곱해진 입력값에 바이어스를 더하고 활성화 함수에 기초하여 입력값에 대한 출력값을 생성하는 단계; 를 더 포함할 수 있다.
S502, 실시예들에 따른 뉴럴 네트워크 모델의 학습을 위한 방법은 출력값을 현재 레이어의 다음 레이어로 출력하는 단계; 를 더 포함할 수 있다.
S503, 실시예들에 따른 뉴럴 네트워크 모델의 학습을 위한 방법은 출력값을 현재 레이어의 추가 출력 레이어로 출력하고, 출력값 및 정답 간 오차를 계산하여 가중치를 업데이트하는 단계; 를 더 포함할 수 있다.
단계 S500 내지 단계 S503의 상세 동작에 대한 설명은 도4의 설명을 참조한다.
실시예들에 따른 뉴럴 네트워크의 학습 방법은 추가 출력 레이어(피시본) 기반 업데이트를 수행하고, 나아가, 다음 레이어로 출력값을 출력하고, 다음 레이어로부터 역전파에 의한 업데이트를 추가적으로 함께 수행할 수 있다.
추가 출력 레이어인 피시본 기반 업데이트 및 현재 레이어에 대한 다음 레이어 기반 업데이트 간 순서는 다양하게 설정될 수 있다. 다음 레이어 기반 업데이트가 수행되기 이전에 피시본 기반 업데이트가 수행될 수 있다. 다음 레이어 기반 업데이트가 수행된 이후에 피시본 기반 업데이트가 수행될 수 있다. 다음 레이어 기반 업데이트 및 피시본 기반 업데이트가 함께 수행될 수 있다.
도6은 실시예들에 따른 뉴럴 네트워크 모델의 학습을 위한 시스템을 나타낸다.
도6은 도5의 뉴럴 네트워크 모델의 학습을 위한 방법을 수행하는 시스템(혹은 디바이스, 600)의 구성을 나타낸다.
뉴럴 네트워크 모델의 학습을 위한 시스템으로서, 뉴럴 네트워크 모델의 학습을 위한 데이터를 송수신하는 인터페이스 유닛(601); 인터페이스 유닛에 연결된 메모리(602); 메모리에 연결된 프로세서(603);를 포함하고, 상기 메모리에 저장된 명령어는 상기 프로세서로 하여금: 뉴럴 네트워크의 현재 레이어에서 입력값을 수신; 입력값에 가중치를 곱하고, 가중치가 곱해진 입력값에 바이어스를 더하고 활성화 함수에 기초하여 입력값에 대한 출력값을 생성; 출력값을 현재 레이어의 다음 레이어로 출력; 및 출력값을 현재 레이어의 추가 출력 레이어로 출력하고, 출력값 및 정답 간 오차를 계산하여 가중치를 업데이트; 하도록 구성될 수 있다.
도5의 방법 및 도6의 시스템의 동작은 컴퓨터 판독 가능한 기록매체에 저장될 수 있다. 컴퓨터 프로그램을 기록한 컴퓨터로 읽을 수 있는 기록매체는 컴퓨터에 뉴럴 네트워크의 현재 레이어에서 입력값을 수신하는 단계; 상기 입력값에 가중치를 곱하고, 상기 가중치가 곱해진 입력값에 바이어스를 더하고 활성화 함수에 기초하여 상기 입력값에 대한 출력값을 생성하는 단계; 상기 출력값을 상기 현재 레이어의 다음 레이어로 출력하는 단계; 및 상기 출력값을 상기 현재 레이어의 추가 출력 레이어로 출력하고, 상기 출력값 및 정답 간 오차를 계산하여 상기 가중치를 업데이트하는 단계; 를 실행하기 위한 컴퓨터 프로그램을 기록한 컴퓨터로 읽을 수 있는 기록매체일 수 있다.
도5의 방법 및 도6의 시스템의 동작은 컴퓨터프로그램으로서 구성될 수 있다. 컴퓨터프로그램은 컴퓨터에 뉴럴 네트워크의 현재 레이어에서 입력값을 수신하는 단계; 입력값에 가중치를 곱하고, 가중치가 곱해진 입력값에 바이어스를 더하고 활성화 함수에 기초하여 입력값에 대한 출력값을 생성하는 단계; 출력값을 현재 레이어의 다음 레이어로 출력하는 단계; 및 출력값을 현재 레이어의 추가 출력 레이어로 출력하고, 출력값 및 정답 간 오차를 계산하여 가중치를 업데이트하는 단계; 를 실행시키기 위하여 기록매체에 기록된 컴퓨터프로그램일 수 있다.
도5의 방법 및 도6의 시스템의 동작은 학습모델을 구현하는 프로그램으로 구성될 수 있다. 하나 이상의 노드를 포함하여 서로 가중치에 의해 연관되어 있는 입력층, 은닉층 및 출력층을 포함하는 학습모델을 구현한 프로그램으로서, 학습 모델은 입력값을 입력받는 복수의 입력노드를 포함하는 입력층; 입력값에 대한 특징정보를 추출하는 복수의 은닉노드를 포함하는 복수의 은닉층; 특징정보로부터 출력값을 출력하는 출력층; 을 포함하고, 학습 모델은 복수의 은닉층 중에서 적어도 하나의 은닉층에 연결된 별도의 추가 은닉층; 을 더 포함하고, 출력층으로부터 가중치가 오차 연산에 기초하여 업데이트되고, 적어도 하나의 은닉층에 연결된 별도의 추가 은닉층으로부터 가중치가 오차 연산에 기초하여 업데이트되는, 컴퓨터 판독 가능한 기록매체에 저장된, 학습모델을 구현한 프로그램일 수 있다.
실시예들에 따른 방법/장치로 인하여, 기존 뉴럴 네트워크 대비 (피쉬본 형태의) 뉴럴 네트워크 모델 학습 방법은 학습 정확도를 증가시키는 효과가 있다. 네크워크의 구조가 크고 복잡하더라도, 설정 정보에 기초하여 피쉬본 형태의 추가 레이어를 선택적으로 부가함으로써 정확도 및 속도를 최적화하는 효과를 제공할 수 있다. 또한, 기존 뉴럴 네트워크와 같이 입력층에서 출력층으로 학습을 진행하고, 출력층에서 입력층으로 업데이트를 수행하는 과정을 이용함으로써, 기존 뉴럴 네트워크와 호환성을 가질 수 있는 효과가 있다. 또한, 실시예들에 따른 피쉬본 형태의 뉴럴 네트워크 모델 학습 방법은 기존 뉴럴 네트워크에서 레이어의 깊이가 깊어질수록 가중치에 대한 손실이 발생할 가능성이 커지는 문제점을 해결하는 효과를 제공한다. 또한, 실시예들에 따른 피시본 뉴럴네트워크는 일반 뉴럴 네트워크 상에서 구현되는 예시로 설명되었지만, 나아가, CNN, RNN, Transformer 등 최신 또는 앞으로 개발될 뉴럴 네트워크 구조에도 적용이 가능한 확장성 효과도 제공한다.
실시예들은 방법 및/또는 장치 관점에서 설명되었으며, 방법의 설명 및 장치의 설명은 상호 보완하여 적용될 수 있다.
설명의 편의를 위하여 각 도면을 나누어 설명하였으나, 각 도면에 서술되어 있는 실시 예들을 병합하여 새로운 실시 예를 구현하도록 설계하는 것도 가능하다. 그리고, 통상의 기술자의 필요에 따라, 이전에 설명된 실시 예들을 실행하기 위한 프로그램이 기록되어 있는 컴퓨터에서 판독 가능한 기록 매체를 설계하는 것도 실시예들의 권리범위에 속한다. 실시예들에 따른 장치 및 방법은 상술한 바와 같이 설명된 실시 예들의 구성과 방법이 한정되게 적용될 수 있는 것이 아니라, 실시 예들은 다양한 변형이 이루어질 수 있도록 각 실시 예들의 전부 또는 일부가 선택적으로 조합되어 구성될 수도 있다. 실시예들의 바람직한 실시 예에 대하여 도시하고 설명하였지만, 실시예들은 상술한 특정의 실시 예에 한정되지 아니하며, 청구범위에서 청구하는 실시예들의 요지를 벗어남이 없이 당해 발명이 속하는 기술분야에서 통상의 지식을 가진 자에 의해 다양한 변형실시가 가능한 것은 물론이고, 이러한 변형실시들은 실시예들의 기술적 사상이나 전망으로부터 개별적으로 이해돼서는 안 될 것이다.
실시예들의 장치의 다양한 구성요소들은 하드웨어, 소프트웨어, 펌웨어 또는 그것들의 조합에 의해 수행될 수 있다. 실시예들의 다양한 구성요소들은 하나의 칩, 예를 들면 하나의 하드웨어 서킷으로 구현될 수 있다 실시예들에 따라, 실시예들에 따른 구성요소들은 각각 별도의 칩들로 구현될 수 있다. 실시예들에 따라, 실시예들에 따른 장치의 구성요소들 중 적어도 하나 이상은 하나 또는 그 이상의 프로그램들을 실행 할 수 있는 하나 또는 그 이상의 프로세서들로 구성될 수 있으며, 하나 또는 그 이상의 프로그램들은 실시예들에 따른 동작/방법들 중 어느 하나 또는 그 이상의 동작/방법들을 수행시키거나, 수행시키기 위한 인스트럭션들을 포함할 수 있다. 실시예들에 따른 장치의 방법/동작들을 수행하기 위한 실행 가능한 인스트럭션들은 하나 또는 그 이상의 프로세서들에 의해 실행되기 위해 구성된 일시적이지 않은 CRM 또는 다른 컴퓨터 프로그램 제품들에 저장될 수 있거나, 하나 또는 그 이상의 프로세서들에 의해 실행되기 위해 구성된 일시적인 CRM 또는 다른 컴퓨터 프로그램 제품들에 저장될 수 있다. 또한 실시예들에 따른 메모리는 휘발성 메모리(예를 들면 RAM 등)뿐 만 아니라 비휘발성 메모리, 플래쉬 메모리, PROM등을 전부 포함하는 개념으로 사용될 수 있다. 또한, 인터넷을 통한 전송 등과 같은 캐리어 웨이브의 형태로 구현되는 것도 포함될 수 있다. 또한, 프로세서가 읽을 수 있는 기록매체는 네트워크로 연결된 컴퓨터 시스템에 분산되어, 분산방식으로 프로세서가 읽을 수 있는 코드가 저장되고 실행될 수 있다.
이 문서에서 “/”와 “,”는 “및/또는”으로 해석된다. 예를 들어, “A/B”는 “A 및/또는 B”로 해석되고, “A, B”는 “A 및/또는 B”로 해석된다. 추가적으로, “A/B/C”는 “A, B 및/또는 C 중 적어도 하나”를 의미한다. 또한, “A, B, C”도 “A, B 및/또는 C 중 적어도 하나”를 의미한다. 추가적으로, 이 문서에서 “또는”은 “및/또는”으로 해석된다. 예를 들어, “A 또는 B”는, 1) “A” 만을 의미하고, 2) “B” 만을 의미하거나, 3) “A 및 B”를 의미할 수 있다. 달리 표현하면, 본 문서의 “또는”은 “추가적으로 또는 대체적으로(additionally or alternatively)”를 의미할 수 있다.
제1, 제2 등과 같은 용어는 실시예들의 다양한 구성요소들을 설명하기 위해 사용될 수 있다. 하지만 실시예들에 따른 다양한 구성요소들은 위 용어들에 의해 해석이 제한되어서는 안된다. 이러한 용어는 하나의 구성요소를 다른 구성요소와 구별하기 위해 사용하는 것에 불과하다. 것에 불과하다. 예를 들어, 제1 사용자 인풋 시그널은 제2사용자 인풋 시그널로 지칭될 수 있다. 이와 유사하게, 제2사용자 인풋 시그널은 제1사용자 인풋시그널로 지칭될 수 있다. 이러한 용어의 사용은 다양한 실시예들의 범위 내에서 벗어나지 않는 것으로 해석되어야만 한다. 제1사용자 인풋 시그널 및 제2사용자 인풋 시그널은 모두 사용자 인풋 시그널들이지만, 문맥 상 명확하게 나타내지 않는 한 동일한 사용자 인풋 시그널들을 의미하지 않는다.
실시예들을 설명하기 위해 사용된 용어는 특정 실시예들을 설명하기 위한 목적으로 사용되고, 실시예들을 제한하기 위해서 의도되지 않는다. 실시예들의 설명 및 청구항에서 사용된 바와 같이, 문맥 상 명확하게 지칭하지 않는 한 단수는 복수를 포함하는 것으로 의도된다. 및/또는 표현은 용어 간의 모든 가능한 결합을 포함하는 의미로 사용된다. 포함한다 표현은 특징들, 수들, 단계들, 엘리먼트들, 및/또는 컴포넌트들이 존재하는 것을 설명하고, 추가적인 특징들, 수들, 단계들, 엘리먼트들, 및/또는 컴포넌트들을 포함하지 않는 것을 의미하지 않는다. 실시예들을 설명하기 위해 사용되는, ~인 경우, ~때 등의 조건 표현은 선택적인 경우로만 제한 해석되지 않는다. 특정 조건을 만족하는 때, 특정 조건에 대응하여 관련 동작을 수행하거나, 관련 정의가 해석되도록 의도되었다.
또한, 본 문서에서 설명하는 실시예들에 따른 동작은 실시예들에 따라서 메모리 및/또는 프로세서를 포함하는 송수신 장치에 의해 수행될 수 있다. 메모리는 실시예들에 따른 동작을 처리/제어하기 위한 프로그램들을 저장할 수 있고, 프로세서는 본 문서에서 설명한 다양한 동작을 제어할 수 있다. 프로세서는 컨트롤러 등으로 지칭가능하다. 실시예들에 동작들은 펌웨어, 소프트웨어, 및/또는 그것들의 조합에 의해 수행될 수 있고, 펌웨어, 소프트웨어, 및/또는 그것들의 조합은 프로세서에 저장되거나 메모리에 저장될 수 있다.
한편, 상술한 실시예들에 따른 동작은 실시예들 따른 송신 장치 및/또는 수신 장치에 의해서 수행될 수 있다. 송수신 장치는 미디어 데이터를 송수신하는 송수신부, 실시예들에 따른 프로세스에 대한 인스트럭션(프로그램 코드, 알고리즘, flowchart 및/또는 데이터)을 저장하는 메모리, 송/수신 장치의 동작들을 제어하는 프로세서를 포함할 수 있다.
프로세서는 컨트롤러 등으로 지칭될 수 있고, 예를 들어, 하드웨어, 소프트웨어, 및/또는 그것들의 조합에 대응할 수 있다. 상술한 실시예들에 따른 동작은 프로세서에 의해 수행될 수 있다.
발명의 실시를 위한 형태
상술한 바와 같이, 실시예들을 실시하기 위한 최선의 형태에서 관련 내용을 설명하였다.
산업상 이용가능성
상술한 바와 같이, 실시예들은 뉴럴 네트워크 모델의 학습을 위한 장치 및 시스템에 전체적 또는 부분적으로 적용될 수 있다.
당업자는 실시예들의 범위 내에서 실시예들을 다양하게 변경 또는 변형할 수 있다.
실시예들은 변경/변형들을 포함할 수 있고, 변경/변형은 청구항들 및 그 와 동일한 것들의 범위를 벗어나지 않는다.

Claims (16)

  1. 뉴럴 네트워크 모델의 학습을 위한 방법으로서,
    뉴럴 네트워크의 현재 레이어에서 입력값을 수신하는 단계;
    상기 입력값에 가중치를 곱하고, 상기 가중치가 곱해진 입력값에 바이어스를 더하고 활성화 함수에 기초하여 상기 입력값에 대한 출력값을 생성하는 단계;
    상기 출력값을 상기 현재 레이어의 다음 레이어로 출력하는 단계;
    상기 출력값을 상기 현재 레이어의 추가 출력 레이어로 출력하고, 상기 출력값 및 정답 간 오차를 계산하여 상기 가중치를 제1 경로 상에서 제1 업데이트하는 단계; 및
    상기 다음 레이어에 기초하여 상기 가중치를 제2 경로 상에서 제2 업데이트하는 단계; 를 포함하고,
    상기 현재 레이어는 상기 다음 레이어로부터 상기 가중치를 업데이트하기 위한 정보를 수신하고,
    상기 추가 출력 레이어는 상기 다음 레이어와 다르고, 상기 다음 레이어와 별도로 상기 현재 레이어를 위해 존재하고,
    상기 현재 레이어에 대한 상기 가중치는 상기 추가 출력 레이어 및상기 다음 레이어를 포함하는 피쉬본 형태에 기초하여 2회 업데이트되고,
    상기 제1 경로 및 상기 제2 경로는 상기 현재 레이어에서 분기되어 상기 피쉬본 형태로 구성되고,
    상기 다음 레이어는 상기 현재 레이어에서 깊이가 증가하는 방향으로 구성되고,
    상기 추가 레이어는 상기 현재 레이어와 병렬적으로 위치하는,
    방법.
  2. 제1항에 있어서,
    상기 방법은,
    상기 다음 레이어로부터 역전파에 의한 업데이트를 위한 정보를 수신하는 단계를 더 포함하는,
    방법.
  3. 제2항에 있어서,
    상기 뉴럴 네트워크는 복수의 레이어들을 포함하고,
    각 레이어의 뉴런은 이전 레이어로부터 입력값을 수신하고 다음 레이어로 출력값을 출력하고, 상기 출력값에 기반하여 가중치가 업데이트되고,
    상기 복수의 레이어들 중 적어도 하나의 레이어는 다음 레이어로 출력값을 출력하는 것에 추가로 별도의 레이어로 상기 출력값을 출력하고, 상기 별도의 레이어로부터 상기 적어도 하나의 레이어가 업데이트되는,
    방법.
  4. 제1항에 있어서,
    상기 제1 업데이트하는 단계는 상기 제1 경로에 기반하여 수행되고,
    상기 제2 업데이트하는 단계는 상기 제1 경로와 상이한 상기 제2 경로에 기반하여 수행되는,
    방법.
  5. 제3항에 있어서,
    상기 복수의 레이어들의 마지막 레이어에서 가중치 업데이트가 연산되기 이전에,
    상기 복수의 레이어들 중 적어도 하나의 레이어에서 별도의 레이어에 의해서 가중치가 업데이트되거나,
    상기 복수의 레이어들의 마지막 레이어에서 가중치 업데이트가 연산된 이후에,
    상기 복수의 레이어들 중 적어도 하나의 레이어에서 별도의 레이어에 의해서 가중치가 업데이트되거나,
    상기 복수의 레이어들의 마지막 레이어에서 가중치 업데이트가 연산되면서,
    상기 복수의 레이어들 중 적어도 하나의 레이어에서 별도의 레이어에 의해서 가중치가 업데이트되는,
    방법.
  6. 제3항에 있어서, 상기 방법은,
    상기 복수의 레이어들 중 적어도 하나의 레이어에서 다음 레이어에 대한 출력을 수행하고, 상기 다음 레이어가 아닌 별도의 레이어에 대한 출력을 수행하는 것을 더 포함하는,
    방법.
  7. 제3항에 있어서,
    상기 복수의 레이어들의 각 레이어의 뉴런은 각 입력값에 각 가중치를 곱하고, 바이어스를 더하고 활성화 함수에 기초하여 출력값을 출력하고,
    상기 복수의 레이어들 중 별도의 레이어를 추가로 갖는 적어도 하나의 레이어는 상기 뉴럴 네트워크 설정 정보에 기초하여 결정되는,
    방법.
  8. 뉴럴 네트워크 모델의 학습을 위한 시스템으로서,
    뉴럴 네트워크 모델의 학습을 위한 데이터를 송수신하는 인터페이스 유닛;
    상기 인터페이스 유닛에 연결된 메모리; 및
    상기 메모리에 연결된 프로세서; 를 포함하고, 상기 메모리에 저장된 명령어는 상기 프로세서로 하여금:
    뉴럴 네트워크의 현재 레이어에서 입력값을 수신;
    상기 입력값에 가중치를 곱하고, 상기 가중치가 곱해진 입력값에 바이어스를 더하고 활성화 함수에 기초하여 상기 입력값에 대한 출력값을 생성;
    상기 출력값을 상기 현재 레이어의 다음 레이어로 출력;
    상기 출력값을 상기 현재 레이어의 추가 출력 레이어로 출력하고, 상기 출력값 및 정답 간 오차를 계산하여 상기 가중치를 제1 경로 상에서 제1 업데이트;및
    상기 다음 레이어에 기초하여 상기 가중치를 제2 경로 상에서 제2 업데이트; 하도록 구성되고,
    상기 현재 레이어는 상기 다음 레이어로부터 상기 가중치를 업데이트하기 위한 정보를 수신하고,
    상기 추가 출력 레이어는 상기 다음 레이어와 다르고, 상기 다음 레이어와 별도로 상기 현재 레이어를 위해 존재하고,
    상기 현재 레이어에 대한 상기 가중치는 상기 추가 출력 레이어 및 상기 다음 레이어를 포함하는 피쉬본 형태에 기초하여 2회 업데이트되고,
    상기 제1 경로 및 상기 제2 경로는 상기 현재 레이어에서 분기되어 상기 피쉬본 형태로 구성되고,
    상기 다음 레이어는 상기 현재 레이어에서 깊이가 증가하는 방향으로 구성되고,
    상기 추가 레이어는 상기 현재 레이어와 병렬적으로 위치하는,
    시스템.
  9. 제8항에 있어서,
    상기 프로세서는,
    상기 다음 레이어로부터 역전파에 의한 업데이트를 위한 정보를 수신하는 것을 더 포함하는,
    시스템.
  10. 제9항에 있어서,
    상기 뉴럴 네트워크는 복수의 레이어들을 포함하고,
    각 레이어의 뉴런은 이전 레이어로부터 입력값을 수신하고 다음 레이어로 출력값을 출력하고, 상기 출력값에 기반하여 가중치가 업데이트되고,
    상기 복수의 레이어들 중 적어도 하나의 레이어는 다음 레이어로 출력값을 출력하는 것에 추가로 별도의 레이어로 상기 출력값을 출력하고, 상기 별도의 레이어로부터 상기 적어도 하나의 레이어가 업데이트되는,
    시스템.
  11. 제8항에 있어서,
    상기 제1 업데이트하는 단계는 상기 제1 경로에 기반하여 수행되고,
    상기 제2 업데이트하는 단계는 상기 제1 경로와 상이한 상기 제2 경로에 기반하여 수행되는,
    시스템.
  12. 제10항에 있어서,
    상기 복수의 레이어들의 마지막 레이어에서 가중치 업데이트가 연산되기 이전에,
    상기 복수의 레이어들 중 적어도 하나의 레이어에서 별도의 레이어에 의해서 가중치가 업데이트되거나,
    상기 복수의 레이어들의 마지막 레이어에서 가중치 업데이트가 연산된 이후에,
    상기 복수의 레이어들 중 적어도 하나의 레이어에서 별도의 레이어에 의해서 가중치가 업데이트되거나,
    상기 복수의 레이어들의 마지막 레이어에서 가중치 업데이트가 연산되면서,
    상기 복수의 레이어들 중 적어도 하나의 레이어에서 별도의 레이어에 의해서 가중치가 업데이트되는,
    시스템.
  13. 제10항에 있어서, 상기 프로세서는,
    상기 복수의 레이어들 중 적어도 하나의 레이어에서 다음 레이어에 대한 출력을 수행하고, 상기 다음 레이어가 아닌 별도의 레이어에 대한 출력을 수행하도록 구성되는,
    시스템.
  14. 제10항에 있어서,
    상기 복수의 레이어들의 각 레이어의 뉴런은 각 입력값에 각 가중치를 곱하고, 바이어스를 더하고 활성화 함수에 기초하여 출력값을 출력하고,
    상기 복수의 레이어들 중 별도의 레이어를 추가로 갖는 적어도 하나의 레이어는 상기 뉴럴 네트워크 설정 정보에 기초하여 결정되는,
    시스템.
  15. 컴퓨터에 뉴럴 네트워크의 현재 레이어에서 입력값을 수신하는 단계; 상기 입력값에 가중치를 곱하고, 상기 가중치가 곱해진 입력값에 바이어스를 더하고 활성화 함수에 기초하여 상기 입력값에 대한 출력값을 생성하는 단계; 상기 출력값을 상기 현재 레이어의 다음 레이어로 출력하는 단계; 상기 출력값을 상기 현재 레이어의 추가 출력 레이어로 출력하고, 상기 출력값 및 정답 간 오차를 계산하여 상기 가중치를 제1 경로 상에서 제1 업데이트하는 단계; 및
    상기 다음 레이어에 기초하여 상기 가중치를 제2 경로 상에서 제2 업데이트하는 단계; 를 실행하고,
    상기 현재 레이어는 상기 다음 레이어로부터 상기 가중치를 업데이트하기 위한 정보를 수신하고,
    상기 추가 출력 레이어는 상기 다음 레이어와 다르고, 상기 다음 레이어와 별도로 상기 현재 레이어를 위해 존재하고,
    상기 현재 레이어에 대한 상기 가중치는 상기 추가 출력 레이어 및 상기 다음 레이어를 포함하는 피쉬본 형태에 기초하여 2회 업데이트되고,
    상기 제1 경로 및 상기 제2 경로는 상기 현재 레이어에서 분기되어 상기 피쉬본 형태로 구성되고,
    상기 다음 레이어는 상기 현재 레이어에서 깊이가 증가하는 방향으로 구성되고,
    상기 추가 레이어는 상기 현재 레이어와 병렬적으로 위치하는,
    컴퓨터 프로그램을 기록한 컴퓨터로 읽을 수 있는 기록매체.
  16. 컴퓨터에 뉴럴 네트워크의 현재 레이어에서 입력값을 수신하는 단계; 상기 입력값에 가중치를 곱하고, 상기 가중치가 곱해진 입력값에 바이어스를 더하고 활성화 함수에 기초하여 상기 입력값에 대한 출력값을 생성하는 단계; 상기 출력값을 상기 현재 레이어의 다음 레이어로 출력하는 단계; 상기 출력값을 상기 현재 레이어의 추가 출력 레이어로 출력하고, 상기 출력값 및 정답 간 오차를 계산하여 상기 가중치를 제1 경로 상에서 제1 업데이트하는 단계; 및 상기 다음 레이어에 기초하여 상기 가중치를 제2 경로 상에서 제2 업데이트하는 단계; 를 실행하고,
    상기 현재 레이어는 상기 다음 레이어로부터 상기 가중치를 업데이트하기 위한 정보를 수신하고,
    상기 추가 출력 레이어는 상기 다음 레이어와 다르고, 상기 다음 레이어와 별도로 상기 현재 레이어를 위해 존재하고,
    상기 현재 레이어에 대한 상기 가중치는 상기 추가 출력 레이어 및 상기 다음 레이어를 포함하는 피쉬본 형태에 기초하여 2회 업데이트되고,
    상기 제1 경로 및 상기 제2 경로는 상기 현재 레이어에서 분기되어 상기 피쉬본 형태로 구성되고,
    상기 다음 레이어는 상기 현재 레이어에서 깊이가 증가하는 방향으로 구성되고,
    상기 추가 레이어는 상기 현재 레이어와 병렬적으로 위치하는,
    기록매체에 기록된 컴퓨터프로그램.
KR1020250067316A 2023-05-23 2025-05-23 뉴럴 네트워크 모델의 학습을 위한 방법 및 뉴럴 네트워크 모델의 학습을 위한 장치 Pending KR20250083434A (ko)

Applications Claiming Priority (3)

Application Number Priority Date Filing Date Title
KR1020230066516 2023-05-23
KR20230066516 2023-05-23
KR1020230175129A KR20240168824A (ko) 2023-05-23 2023-12-06 뉴럴 네트워크 모델의 학습을 위한 방법 및 뉴럴 네트워크 모델의 학습을 위한 장치

Related Parent Applications (1)

Application Number Title Priority Date Filing Date
KR1020230175129A Division KR20240168824A (ko) 2023-05-23 2023-12-06 뉴럴 네트워크 모델의 학습을 위한 방법 및 뉴럴 네트워크 모델의 학습을 위한 장치

Publications (1)

Publication Number Publication Date
KR20250083434A true KR20250083434A (ko) 2025-06-10

Family

ID=93847884

Family Applications (2)

Application Number Title Priority Date Filing Date
KR1020230175129A Ceased KR20240168824A (ko) 2023-05-23 2023-12-06 뉴럴 네트워크 모델의 학습을 위한 방법 및 뉴럴 네트워크 모델의 학습을 위한 장치
KR1020250067316A Pending KR20250083434A (ko) 2023-05-23 2025-05-23 뉴럴 네트워크 모델의 학습을 위한 방법 및 뉴럴 네트워크 모델의 학습을 위한 장치

Family Applications Before (1)

Application Number Title Priority Date Filing Date
KR1020230175129A Ceased KR20240168824A (ko) 2023-05-23 2023-12-06 뉴럴 네트워크 모델의 학습을 위한 방법 및 뉴럴 네트워크 모델의 학습을 위한 장치

Country Status (1)

Country Link
KR (2) KR20240168824A (ko)

Also Published As

Publication number Publication date
KR20240168824A (ko) 2024-12-02

Similar Documents

Publication Publication Date Title
Lai et al. Imputations of missing values using a tracking-removed autoencoder trained with incomplete data
KR102152615B1 (ko) 활성화 함수를 사용하는 딥러닝 모델의 안정적인 학습을 위한 가중치 초기화 방법 및 장치
EP3493120A1 (en) Training a neural network model
WO2020046719A1 (en) Self-supervised back propagation for deep learning
JP2017515205A (ja) Coldニューロンスパイクタイミングバックプロバゲーション
US20190340500A1 (en) Foiling neuromorphic hardware limitations by reciprocally scaling connection weights and input values to neurons of neural networks
JP6732880B2 (ja) イベントとイベントとの間の時間間隔による値の表現を使用するデータ処理デバイス
KR20180028966A (ko) 신경망 하드웨어 가속기 아키텍처 및 그 동작 방법
US11222288B2 (en) Building deep learning ensembles with diverse targets
US9939792B2 (en) Systems and methods to adaptively select execution modes
US20180053086A1 (en) Artificial neuron and controlling method thereof
JP2017037392A (ja) ニューラルネットワーク学習装置
US20210342683A1 (en) Companion analysis network in deep learning
US20210027147A1 (en) Forward propagation of secondary objective for deep learning
WO2020009881A1 (en) Analyzing and correcting vulnerabillites in neural networks
WO2020041026A1 (en) Efficently building deep neural networks
US12182702B2 (en) Method and information processing apparatus that perform transfer learning while suppressing occurrence of catastrophic forgetting
JP2019185127A5 (ja) ニューラルネットワークの学習装置およびその制御方法
US20240005166A1 (en) Minimum Deep Learning with Gating Multiplier
Jindal et al. Analyzing performance of deep learning techniques for web navigation prediction
Hansson et al. Feedforward neural networks with ReLU activation functions are linear splines
Shah et al. Problem solving chatbot for data structures
JP7621197B2 (ja) 学習認識装置
CN114730379A (zh) 具有交叉式阵列结构的神经形态设备
KR20250083434A (ko) 뉴럴 네트워크 모델의 학습을 위한 방법 및 뉴럴 네트워크 모델의 학습을 위한 장치

Legal Events

Date Code Title Description
A107 Divisional application of patent
PA0107 Divisional application

Comment text: Divisional Application of Patent

Patent event date: 20250523

Patent event code: PA01071R01D

Filing date: 20231206

Application number text: 1020230175129

PA0201 Request for examination

Patent event code: PA02011R04I

Patent event date: 20250523

Comment text: Divisional Application of Patent

PG1501 Laying open of application