KR20170081887A - Method of determining the final answer by convolution of the artificial neural networks - Google Patents
Method of determining the final answer by convolution of the artificial neural networks Download PDFInfo
- Publication number
- KR20170081887A KR20170081887A KR1020160000880A KR20160000880A KR20170081887A KR 20170081887 A KR20170081887 A KR 20170081887A KR 1020160000880 A KR1020160000880 A KR 1020160000880A KR 20160000880 A KR20160000880 A KR 20160000880A KR 20170081887 A KR20170081887 A KR 20170081887A
- Authority
- KR
- South Korea
- Prior art keywords
- correct answer
- artificial neural
- neural network
- sub
- final
- 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.)
- Withdrawn
Links
Images
Classifications
-
- G—PHYSICS
- G06—COMPUTING OR CALCULATING; COUNTING
- G06N—COMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
- G06N3/00—Computing arrangements based on biological models
- G06N3/02—Neural networks
- G06N3/08—Learning methods
-
- G—PHYSICS
- G06—COMPUTING OR CALCULATING; COUNTING
- G06N—COMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
- G06N3/00—Computing arrangements based on biological models
- G06N3/02—Neural networks
- G06N3/04—Architecture, e.g. interconnection topology
-
- G—PHYSICS
- G06—COMPUTING OR CALCULATING; COUNTING
- G06N—COMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
- G06N3/00—Computing arrangements based on biological models
- G06N3/02—Neural networks
- G06N3/08—Learning methods
- G06N3/082—Learning methods modifying the architecture, e.g. adding, deleting or silencing nodes or connections
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)
- Information Retrieval, Db Structures And Fs Structures Therefor (AREA)
Abstract
본 발명은 인공 신경망에서 컨벌루션을 이용한 최종 정답 결정 방법에 관한 것으로서, 본 발명의 실시예에 따른 인공 신경망에서 컨벌루션을 이용한 최종 정답 결정 방법은 임의의 차원을 가진 벡터들을 입력 받는 단계, 상기 입력받은 벡터들을 기설정된 크기의 부분 영역(sub-region)들로 구분하여 생성하는 단계, 상기 부분 영역 별로 인공 신경망을 학습하는 단계, 상기 학습 결과로 획득된 벡터들로부터 복수의 정답 후보를 결정하는 단계, 및 상기 복수의 정답 후보로부터 최종적인 정답을 선택하는 단계를 포함한다.A method of determining a final correct answer using convolution in an artificial neural network according to an embodiment of the present invention includes the steps of receiving vectors having an arbitrary dimension, Dividing a plurality of candidate answers into sub-regions of a predetermined size, learning an artificial neural network for each of the partial regions, determining a plurality of correct answers from the vectors obtained as learning results, and And selecting a final correct answer from the plurality of correct answers.
Description
본 발명은 인공 신경망 기술에 관한 것으로, 특히 인공 신경망에서 컨벌루션 을 이용한 최종 정답 결정 방법에 관한 것이다.The present invention relates to an artificial neural network technique, and more particularly, to a method for determining a final correct answer using convolution in an artificial neural network.
일반적으로, 기계학습 그리고 인지과학에서의 인공신경망(Artificial Neural Network)은 생물학의 신경망(동물의 중추신경계, 특히 뇌)에서 영감을 얻은 통계학적 학습 알고리즘이다. 인공신경망은 시냅스의 결합으로 네트워크를 형성한 인공 뉴런(노드)이 학습을 통해 시냅스의 결합 세기를 변화시켜, 문제 해결 능력을 가지는 모델 전반을 가리킨다.In general, the Artificial Neural Network in machine learning and cognitive science is a statistical learning algorithm inspired by biological neural networks (the animal's central nervous system, especially the brain). An artificial neural network refers to the entire model that has artificial neurons (nodes) that form a network of synapses by changing the binding strength of synapses through learning.
이러한, 인공신경망의 기술은 컨벌루션을 이용하여 분류 문제의 성능을 높일 수 있다. 구체적으로, 입력되는 전체 관측 정보를 부분적인 영역들(sub-region)로 구분한다. 이때, sub-region들은 겹치는 것이 허용되며, 전체 관측 정보를 일부 또는 모두 포함하도록 설정한다. 각 sub-region들은 개별적인 신경망을 구성하여 학습되게 되어, 컨벌루셔널 층(Convolutional layer)을 형성하게 된다.This artificial neural network technique can improve the performance of classification problem by using convolution. Specifically, the input total observation information is divided into sub-regions. At this time, the sub-regions are allowed to overlap and set to include all or part of the entire observation information. Each sub-region is learned by constructing a separate neural network, forming a convolutional layer.
학습된 sub-region들의 개별 신경망에서는 각각 출력벡터가 생성되고, 이는 풀링(pooling) 기술에 의해서 대표값 혹은 대표 벡터로 변경된다. 변경된 대표벡터들을 이어 새로운 벡터를 생성하는 것으로 다음 층의 입력값이 생성된다. 이와 같은 방식을 통해, 컨벌루셔널 층은 저층에서 나타나는 의미있는 국소적으로 나타나는 하위 패턴들의 조합으로 상위 패턴들을 표현할 수 있다.In each neural network of learned sub-regions, an output vector is generated, which is changed to a representative value or a representative vector by a pooling technique. The input vector of the next layer is generated by generating a new vector following the modified representative vectors. In this way, the convolutional layer can represent upper patterns as a combination of sub-patterns that appear locally in the lower layer.
일반적인 인공신경망 혹은 커널 머신들이 비선형성(non-linearity)을 확보하기 위한 입력값들의 변형을 반복적으로 하는 것에 비해서, 이 컨벌루셔널 층을 통한 학습은 하위에서 상위 패턴으로의 추상화 과정을 직접적으로 실행할 수 있는 방식이다. 이는, 신경망 구성의 시각화에 편리할 뿐만 아니라, 입력값이 매우 큰 차원(dimension)으로 주어지는 경우에 발생하는 데이터 희소성(data sparseness)을 완화시킬 수 있다.In contrast to conventional artificial neural networks or kernel machines iteratively transforming input values to ensure non-linearity, learning through this convolutional layer directly implements the abstraction process from lower to higher patterns It is possible to do it. This is not only convenient for visualizing the neural network configuration, but it can also mitigate the data sparseness that occurs when input values are given in very large dimensions.
종래의 기술은 여러 단계의 추상화를 거친 후, 최종 단계에서 단지 간단한 로지스틱 회귀분석 층(logistic regression layer) 등을 이용한 고정적인 의사 결정 층을 통해 분류(classification)를 진행한다. 이러한 방식은 의사결정 직전의 최상층에서 학습된 출력 정보가 해결하려고 하는 문제에 직접적으로 영향을 미치는 패턴 관련 정보라고 가정하는 것을 기반으로 구성된 구조이다. In the conventional technique, after several stages of abstraction, classification is performed through a fixed decision layer using only a simple logistic regression layer at the final stage. This method is based on the assumption that the output information learned at the top layer immediately before the decision is pattern-related information that directly affects the problem to be solved.
하지만, 최상층의 패턴들의 종류 및 검색 공간에 대해서 충분한 사전 지식 혹은 경험적 지식이 없는 경우에는 최상층 역시 큰 차원으로 인해 겪는 data sparseness가 발생하게 된다.However, if there is no sufficient knowledge or empirical knowledge about the types of patterns and search spaces on the top layer, data sparseness due to large dimensions also occurs in the top layer.
또한, 컨벌루셔널 층이 제공하는 data sparseness의 완화능력을 얻기 위해 의사결정 층에 컨벌루셔널 층을 적용하는 과정에서도, 기존의 대표 벡터 생성을 위한 pooling 기술은 의사 결정을 위해 직접적으로 사용되는데 제약이 있다.Also, in the process of applying the convolutional layer to the decision layer to obtain the data sparseness mitigation capability provided by the convolutional layer, the pooling technique for the existing representative vector generation is directly used for decision making. .
예컨대, 기존의 pooling 기술은 대표적으로 max pooling과 average pooling으로 나뉠 수 있다. 이 두 방식은 모두 각 sub-region들의 패턴에 대한 대표값을 지정하기 위한 것으로서, 의사 결정 단계에서 필요한 이산적 정보들은 소실되는 방식이다.For example, existing pooling techniques can be divided into max pooling and average pooling. Both of these methods are for designating representative values of the patterns of the respective sub-regions, and the discrete information required in the decision step is lost.
본 발명의 목적은 최상층 패턴들의 차원 축소 및 데이터 희소성 완화를 위해 컨벌루션을 이용한 인공신경망의 최종 정답 결정 방법을 제공함에 있다. It is an object of the present invention to provide a method for determining a final correct answer of an artificial neural network using convolution for dimension reduction of top-layer patterns and data sparseness reduction.
전술한 과제를 달성하기 위한 본 발명의 일 양상에 따른 인공 신경망에서 컨벌루션을 이용한 최종 정답 결정 방법은 임의의 차원을 가진 벡터들을 입력 받는 단계, 상기 입력받은 벡터들을 기설정된 크기의 부분 영역(sub-region)들로 구분하여 생성하는 단계, 상기 부분 영역 별로 인공 신경망을 학습하는 단계, 상기 학습 결과로 획득된 벡터들로부터 복수의 정답 후보를 결정하는 단계, 및 상기 복수의 정답 후보로부터 최종적인 정답을 선택하는 단계를 포함한다. According to an aspect of the present invention, there is provided a method for determining a final correct answer using convolution in an artificial neural network, comprising: receiving vectors having an arbitrary dimension; inputting the input vectors into a sub- regions, learning the artificial neural network for each of the partial regions, determining a plurality of correct answers from the vectors obtained as a result of the learning, and extracting final correct answers from the plurality of correct answers .
본 발명의 실시예에 따르면 인공 신경망의 최종 정답 결정 과정에서 컨벌루션 방식을 이용함으로써, 넓은 범위의 입력을 차원이 낮은 별개의 신경망으로 학습하여 차원 감소로 인한 데이터 희소성(data sparseness)이 완화된다.According to the embodiment of the present invention, by using the convolution method in the final correct answer determination process of the artificial neural network, data sparseness due to dimensional reduction is alleviated by learning a wide range of inputs with a separate neural network having a low dimension.
아울러, 본 발명의 실시예에 따르면 인공 신경망에서 최종적으로 정답을 결정하는 단계 층에서 입력의 sub-region들에 대해서 개별적인 인공 신경망을 구성하고, 각 신경망의 출력에서 직접적으로 정답 후보를 결정하고, 정답 후보들로부터 최종 후보(최종적인 정답)을 결정함으로써, 전체 입력으로부터 하나의 정답을 생성하는 방식의 오류 수정이 가능하며, 국소 패턴들로부터의 정답 결정이 정답이 아니더라도 가능한 다른 차원들로부터의 가능한 최선의 추정치를 제공할 수 있으며, 인공 신경망이 정답 결정을 위한 확률 벡터에서 최대값이 아닌 값들을 정확하게 학습하기 힘든 점을 완화하여 예측 실패 시에도 관측할 수 있는 패턴들을 통한 최선의 정답 예측 결과를 추정할 수 있다. In addition, according to the embodiment of the present invention, an artificial neural network is constructed for sub-regions of input in the step of finally determining the correct answer in the artificial neural network, the correct answer candidates are directly determined at the output of each neural network, By determining the final candidate (final correct answer) from the candidates, it is possible to make error correction in a way that generates one correct answer from the entire input, and even if the correct answer decision from the local patterns is not correct, The artificial neural network can mitigate the difficulty of learning the values that are not the maximum value in the probability vector for determining the correct answer, thereby estimating the best correct answer prediction result through the patterns that can be observed even in the case of the prediction failure .
또한, 본 발명의 실시예에 따르면 최종 층에서 성능 향상뿐만 아니라, 위치에 독립적으로 나타나는 가장 추상적인 패턴들을 학습할 수 있어, 필요한 적층(stacking)의 수를 줄이거나 데이터를 감소시킴으로써 제한된 데이터로부터 얻을 수 있는 성능을 높일 수 있다.In addition, according to the embodiment of the present invention, it is possible to learn not only the performance improvement in the final layer but also the most abstract patterns independently appearing in position, thereby reducing the number of stacking required or reducing data, Can improve performance.
도 1은 본 발명의 실시예에 따른 인공 신경망의 컨벌루션을 이용한 최종 정답 결정 장치 구조도.
도 2는 본 발명의 실시예에 따른 인공 신경망에서 컨벌루션을 이용한 최종 정답 결정 장치의 동작 설명을 위한 참조도.
도 3은 본 발명의 실시예에 따른 인공 신경망에서 컨벌루션을 이용한 최종 정답 결정 방법 흐름도.BRIEF DESCRIPTION OF THE DRAWINGS FIG. 1 is a block diagram of a final correct answer determining apparatus using convolution of an artificial neural network according to an embodiment of the present invention; FIG.
BACKGROUND OF THE INVENTION Field of the Invention [0001] The present invention relates to an artificial neural network,
3 is a flowchart of a method for determining a final correct answer using convolution in an artificial neural network according to an embodiment of the present invention.
본 발명의 이점 및 특징, 그리고 그것들을 달성하는 방법은 첨부되는 도면과 함께 상세하게 후술되어 있는 실시예들을 참조하면 명확해질 것이다. 그러나 본 발명은 이하에서 개시되는 실시예들에 한정되는 것이 아니라 서로 다른 다양한 형태로 구현될 것이며, 단지 본 실시예들은 본 발명의 개시가 완전하도록 하며, 본 발명이 속하는 기술분야에서 통상의 지식을 가진 자에게 발명의 범주를 완전하게 알려주기 위해 제공되는 것이며, 본 발명은 청구항의 기재에 의해 정의된다. 한편, 본 명세서에서 사용된 용어는 실시예들을 설명하기 위한 것이며 본 발명을 제한하고자 하는 것은 아니다. 본 명세서에서, 단수형은 문구에서 특별히 언급하지 않는 한 복수형도 포함한다. 명세서에서 사용되는 "포함한다(comprises)" 또는 "포함하는(comprising)"은 언급된 구성요소, 단계, 동작 및/또는 소자 이외의 하나 이상의 다른 구성요소, 단계, 동작 및/또는 소자의 존재 또는 추가를 배제하지 않는다.BRIEF DESCRIPTION OF THE DRAWINGS The advantages and features of the present invention and the manner of achieving them will become apparent with reference to the embodiments described in detail below with reference to the accompanying drawings. The present invention may, however, be embodied in many different forms and should not be construed as being limited to the embodiments set forth herein. Rather, these embodiments are provided so that this disclosure will be thorough and complete, and will fully convey the scope of the invention to those skilled in the art. And is provided to fully convey the scope of the invention to those skilled in the art, and the present invention is defined by the claims. It is to be understood that the terminology used herein is for the purpose of describing particular embodiments only and is not intended to be limiting of the invention. In the present specification, the singular form includes plural forms unless otherwise specified in the specification. It is noted that " comprises, " or "comprising," as used herein, means the presence or absence of one or more other components, steps, operations, and / Do not exclude the addition.
이하, 본 발명의 바람직한 실시예를 첨부된 도면들을 참조하여 상세히 설명한다. 우선 각 도면의 구성요소들에 참조부호를 부가함에 있어서, 동일한 구성요소들에 대해서는 비록 다른 도면상에 표시되더라도 가급적 동일한 부호를 부여하고, 또한 본 발명을 설명함에 있어, 관련된 공지 구성 또는 기능에 대한 구체적인 설명이 본 발명의 요지를 흐릴 수 있는 경우에는 그 상세한 설명은 생략한다.Hereinafter, preferred embodiments of the present invention will be described in detail with reference to the accompanying drawings. In the drawings, the same reference numerals are given to the same or similar components, and in the following description of the present invention, Detailed explanations of the detailed description will be omitted when the gist of the present invention can be obscured.
도 1은 본 발명의 실시예에 따른 인공 신경망에서 컨벌루션을 이용한 최종 정답 결정 장치 구조도이다. 1 is a structural diagram of a final correct answer determining apparatus using convolution in an artificial neural network according to an embodiment of the present invention.
도 1에서 도시된 바와 같이, 본 발명의 실시예에 따른 인공 신경망에서 컨벌루션(convolution)을 이용한 최종 정답 결정 장치(100)는 입력부(110), 생성부(120), 학습부(130), 결정부(140), 선택부(150)를 포함한다. 여기서, 최종 정답 결정 장치(100)는 인공 신경망의 복수의 층 중에서 최종적으로 의사를 결정하는 의사 결정 층에 구현될 수 있다.1, an
이하, 도 2를 참조하여 본 발명의 실시예에 따른 인공 신경망에서 컨벌루션을 이용한 최종 정답 결정 장치(100)의 동작에 대해 구체적으로 설명한다.Hereinafter, the operation of the final correct
입력부(110)는 이산(discrete) 혹은 연속된(continuous) 값들로 구성된 임의의 차원을 가진 벡터를 입력 받는다. 예컨대, 입력부(110)에 입력되는 벡터는 도 2에 도시된 바와 같이 6차원의 벡터(제1 내지 제6 벡터(11~16))일 수 있으며, 표기된 원형 이미지는 벡터의 각 요소 값들을 나타낼 수 있다. The
생성부(120)는 입력부(110)에서 입력 받은 벡터를 기설정된 크기의 부분 영역(sub-region)들로 구분하여 생성한다. 여기서, 기설정된 크기는 사전에 인공신경망의 개발자 또는 사용자에 의해 기설정될 수 있다. 또한, sub-region들은 서로 연결될 수 있으며, 또는, 서로 연결되지 않은 영역들일 수도 있다. 이와 같이, sub-region들을 구분함으로써, sub-region들이 더 넓은 영역을 중복적으로 학습할 수 있다. 참고로, sub-region들을 구분 및 생성할 시, 일반적인 ensemble방식이 이용될 수 있다.The
도 2에서는 일관적으로 3개의 요소값들을 가지는 sub-region들로 구분하여 생성할 수 있다. 예컨대, 도 2에서는 제1 내지 제3 벡터(11~13)가 하나의 sub-region으로 구분될 수 있으며, 제2 내지 제4 벡터(12~14), 제3 내지 제5 벡터(13~15), 제4 내지 제6 벡터(14~16)가 각각 하나의 sub-region으로 구분되어, 총 4개의 부분 영역들(21~24)이 생성될 수 있다.In FIG. 2, sub-regions having three element values can be consistently generated. For example, in FIG. 2, the first to
학습부(130)는 생성부(120)에서 생성된 각 sub-region(21~24) 각각을 입력으로 하는 인공 신경망(31~34)을 각각 학습한다. 즉, 학습부(130)는 sub-region(21~24) 별로 인공 신경망(31~34) 각각을 학습한다. The
여기서, 인공 신경망은 다양한 방법으로 구성이 가능하다. 예컨대, sub-region의 입력 벡터의 요소값들의 선형 결합(Linear Combination)을 sigmoid 함수 또는 tanh 함수 등의 다양한 활성화 함수들을 통해 결과를 내주는 인공 신경망을 여러 층을 적층(stacking) 또는 반복적인 연결(recurrent network)을 통해 구성할 수 있다.Here, the artificial neural network can be configured in various ways. For example, the linear combination of the element values of the sub-region input vector may be performed by stacking or repeating several layers of artificial neural networks that yield results through various activation functions such as sigmoid function or tanh function recurrent network).
아울러, 학습부(130)는 sub-region별 출력 벡터의 차원과 출력값의 범위를 결정한다. 여기서, 차원은 인공 신경망으로 통해 최종적으로 결정하고자 하는 모든 클래스(class)의 개수일 수 있다. 출력벡터의 요소마다 생성부(120)에서 생성된 sub-region들을 입력으로 하고 sub-region별로 학습하는 인공 신경망의 형태를 따르는 신경망이 형성될 수 있다.In addition, the
결정부(140)는 학습부(130)의 학습 결과로 획득된 벡터로부터 네트워크가 결정해야 할 최종 정답값의 후보들(41~44)을 결정한다. 예컨대, 학습부(130)에서 표현된 벡터가 선택 가능한 이산적인 모든 정답값들의 수만큼 차원을 가지고, 각 차원의 값은 각 정답의 선택 확률을 표시할 때, 결정부(140)는 복수의 값들 중 최대값을 가지는 차원을 정답으로 결정하는 softmax 함수를 통한 정답 결정 방식을 통해, 부분 영역별 최종 정답값(정답 후보)(41~44)을 결정할 수 있다. The
이때, 결정부(140)는 생성부(120)에서 생성된 sub-region의 개수만큼 정답 후보들(부분 영역별 최종 정답값)(41~44)을 생성할 수 있다. 예컨대, 도 2에서 생성부(120)에 의해 4개의 부분 영역(21~24)이 생성됨에 따라, 결정부(140)는 4개의 정답 후보들(41~44)이 결정될 수 있다.At this time, the
선택부(150)는 결정부(140)에서 결정된 정답 후보들(41~44)로부터 정답을 선별하여 어느 하나의 정답(51)을 선택한다. 이때, 선택부(150)는 가장 빈번히 나타나거나 임의로 주어진 sub-region별 중요도에 따라 더 높은 중요성을 갖는 정답 후보를 정답으로 선택(결정)하는 방법을 이용하여 최종적인 정답을 선택할 수 있다. 또는, 선택부(150)는 투표(voting) 알고리즘 혹은 앙상블 모델(ensemble model)을 만드는 방법들을 적용하여 최종적인 정답을 선택할 수도 있다.The selecting
예컨대, 선택부(150)는 정답 후보들(41~44)로부터 최종적인 정답을 선택하기 위해, 각 정답 후보들이 후보로 나타난 빈도, 각 sub-region의 신경망이 후보를 생성하는 확률, 각 사용자 혹은 개발자가 지정하는 각 sub-region의 사전 확률(prior probability)을 이용하여 최종 정답(51)을 선택하거나, 널리 알려진 분류법(classifier)들을 통해 앙상블 모델을 사용하여 최종 정답(51)을 선택한다. For example, in order to select a final correct answer from the
이와 같이, 본 발명의 실시예에 따르면 인공 신경망의 최종 정답 결정 과정에서 컨벌루션 방식을 이용함으로써, 넓은 범위의 입력을 차원이 낮은 별개의 신경망으로 학습하여 차원 감소로 인한 데이터 희소성(data sparseness)이 완화된다.As described above, according to the embodiment of the present invention, by using the convolution method in the final correct answer determination process of the artificial neural network, it is possible to learn a wide range of inputs by using a separate neural network having a low dimension so that data sparseness do.
아울러, 본 발명의 실시예에 따르면 인공 신경망에서 최종적으로 정답을 결정하는 단계 층에서 입력의 sub-region들에 대해서 개별적인 인공 신경망을 구성하고, 각 신경망의 출력에서 직접적으로 정답 후보를 결정하고, 정답 후보들로부터 최종 후보(최종적인 정답)을 결정함으로써, 전체 입력으로부터 하나의 정답을 생성하는 방식의 오류 수정이 가능하며, 국소 패턴들로부터의 정답 결정이 정답이 아니더라도 가능한 다른 차원들로부터의 가능한 최선의 추정치를 제공할 수 있으며, 인공 신경망이 정답 결정을 위한 확률 벡터에서 최대값이 아닌 값들을 정확하게 학습하기 힘든 점을 완화하여 예측 실패 시에도 관측할 수 있는 패턴들을 통한 최선의 정답 예측 결과를 추정할 수 있다. In addition, according to the embodiment of the present invention, an artificial neural network is constructed for sub-regions of input in the step of finally determining the correct answer in the artificial neural network, the correct answer candidates are directly determined at the output of each neural network, By determining the final candidate (final correct answer) from the candidates, it is possible to make error correction in a way that generates one correct answer from the entire input, and even if the correct answer decision from the local patterns is not correct, The artificial neural network can mitigate the difficulty of learning the values that are not the maximum value in the probability vector for determining the correct answer, thereby estimating the best correct answer prediction result through the patterns that can be observed even in the case of the prediction failure .
또한, 본 발명의 실시예에 따르면 최종 층에서 성능 향상뿐만 아니라, 위치에 독립적으로 나타나는 가장 추상적인 패턴들을 학습할 수 있어, 필요한 적층(stacking)의 수를 줄이거나 데이터를 감소시킴으로써 제한된 데이터로부터 얻을 수 있는 성능을 높일 수 있다.In addition, according to the embodiment of the present invention, it is possible to learn not only the performance improvement in the final layer but also the most abstract patterns independently appearing in position, thereby reducing the number of stacking required or reducing data, Can improve performance.
도 3은 본 발명의 실시예에 따른 인공 신경망에서 컨벌루션을 이용한 최종 정답 결정 방법 흐름도이다. FIG. 3 is a flowchart illustrating a final correct answer determination method using convolution in an artificial neural network according to an embodiment of the present invention.
이하, 별도의 언급이 없는 한, 인공 신경망에서 최종적으로 의사를 결정하는 의사 결정 층에 구현된 최종 정답 결정 장치(100)에 의해 동작하는 것으로 간주한다. Hereinafter, unless otherwise noted, it is assumed that the apparatus is operated by the final correct
먼저, 이산(discrete) 혹은 연속된(continuous) 값들로 구성된 임의의 차원을 가진 벡터를 입력 받는다(S310). 예컨대, 입력되는 벡터는 도 2에 도시된 바와 같이 6차원의 벡터(제1 내지 제6 벡터(11~16))일 수 있으며, 표기된 원형 이미지는 벡터의 각 요소 값들을 나타낼 수 있다. First, a vector having an arbitrary dimension composed of discrete or continuous values is input (S310). For example, the input vector may be a six-dimensional vector (first to
단계 S310에서 입력 받은 벡터를 기설정된 크기의 부분 영역(sub-region)들로 구분하여 생성한다(S320). 여기서, 기설정된 크기는 사전에 인공신경망의 개발자 또는 사용자에 의해 기설정될 수 있다. 도 2에서는 일관적으로 3개의 요소값들을 가지는 sub-region들(21~24)로 구분할 수 있다. 예컨대, 도 2에서는 제1 내지 제3 벡터(11~13)가 하나의 sub-region으로 구분될 수 있으며, 제2 내지 제4 벡터(12~14), 제3 내지 제5 벡터(13~15), 제4 내지 제6 벡터(14~16)가 각각 하나의 sub-region으로 구분되어, 총 4개의 부분 영역들(21~24)이 생성될 수 있다. In operation S320, the input vector is divided into sub-regions of a predetermined size and generated (S320). Here, the predetermined size may be preset by the developer or user of the artificial neural network in advance. In FIG. 2, it can be divided into
이후, 단계 S320에서 생성된 각 sub-region(21~24)를 입력으로 하는 인공 신경망(31~34)을 학습한다(S330). 즉, sub-region(21~24) 각각에 대응하는 복수의 인공 신경망(31~24) 각각을 학습한다.Thereafter, the artificial
여기서, 인공 신경망은 다양한 방법으로 구성이 가능하다. 예컨대, sub-region의 입력 벡터의 요소값들의 선형 결합(Linear Combination)을 sigmoid 함수 또는 tanh 함수 등의 다양한 활성화 함수들을 통해 결과를 내주는 인공 신경망을 여러 층을 적층(stacking) 또는 반복적인 연결(recurrent network)을 통해 구성할 수 있다.Here, the artificial neural network can be configured in various ways. For example, the linear combination of the element values of the sub-region input vector may be performed by stacking or repeating several layers of artificial neural networks that yield results through various activation functions such as sigmoid function or tanh function recurrent network).
이때, sub-region별 출력 벡터의 차원과 출력값의 범위를 결정할 수 있다. 여기서, 차원은 인공 신경망으로 통해 최종적으로 결정하고자 하는 모든 클래스(class)의 개수일 수 있다. 예컨대, 출력벡터의 요소마다 단계 S320에서 생성된 sub-region들을 입력으로 하고 sub-region별로 학습하는 인공 신경망의 형태를 따르는 신경망이 형성될 수 있다. At this time, the dimension of the output vector for each sub-region and the range of the output value can be determined. Here, the dimension may be the number of all classes to be finally determined through the artificial neural network. For example, a neural network that follows the form of an artificial neural network may be formed by inputting the sub-regions generated in step S320 for each element of the output vector and learning for each sub-region.
단계 S330의 학습 결과로 획득된 벡터로부터 네트워크가 결정해야 할 최종 정답값의 후보(41~44)를 결정한다(S340). 예컨대, 인공 신경망의 학습 결과 표현된 벡터가 선택 가능한 이산적인 모든 정답값들의 수만큼 차원을 가지고, 각 차원의 값은 각 정답의 선택 확률을 표시할 때, 복수의 값들 중 최대값을 가지는 차원을 정답으로 결정하는 softmax 함수를 통한 정답 결정 방식을 통해, 부분 영역별 최종 정답값(정답 후보)(41~44)을 결정할 수 있다. The
이때, 단계 S320에서 생성된 sub-region의 개수만큼 정답 후보들(부분 영역별 최종 정답값)을 생성(결정)할 수 있다. 예컨대, 도 2에서 4개의 sub-region(21~24)이 생성됨에 따라, 4개의 정답 후보들(41~44)을 생성할 수 있다.At this time, it is possible to generate (determine) correct answer candidates (final correct answer value for each partial area) by the number of the sub-regions generated in step S320. For example, as four
단계 S340에서 결정된 정답 후보들(41~44)로부터 최종적인 정답(51)을 선택한다(S350). 이때, 최종적인 정답을 선별하는 방법은 가장 빈번히 나타나거나 임의로 주어진 sub-region별 중요도에 따라 더 높은 중요성을 갖는 정답 후보를 정답으로 선택하는 방법을 이용하여 최종적인 정답을 선택할 수 있다. 또는, 투표(voting) 알고리즘 혹은 앙상블 모델(ensemble model)을 만드는 방법들을 적용하여 최종적인 정답을 선택할 수도 있다.The final correct answer 51 is selected from the
예컨대, 정답 후보들로부터 최종적인 정답을 선택하기 위해, 각 정답 후보들이 후보로 나타난 빈도, 각 sub-region의 신경망이 후보를 생성하는 확률, 각 사용자 혹은 개발자가 지정하는 각 sub-region의 사전 확률(prior probability)을 이용하여 최종 정답을 선택하거나, 널리 알려진 분류법(classifier)들을 통해 앙상블 모델을 사용하여 최종 정답을 선택한다. For example, in order to select the final correct answer from the correct candidates, the frequency with which each candidate candidate appears as a candidate, the probability that the neural network of each sub-region generates a candidate, the prior probability of each sub- Prior probabilities are used to select the final correct answer, or the ensemble model is used to select the final correct answer through widely known classifiers.
이와 같이, 본 발명의 실시예에 따르면 인공 신경망의 최종 정답 결정 과정에서 컨벌루션 방식을 이용함으로써, 넓은 범위의 입력을 차원이 낮은 별개의 신경망으로 학습하여 차원 감소로 인한 데이터 희소성(data sparseness)이 완화된다.As described above, according to the embodiment of the present invention, by using the convolution method in the final correct answer determination process of the artificial neural network, it is possible to learn a wide range of inputs by using a separate neural network having a low dimension so that data sparseness do.
아울러, 본 발명의 실시예에 따르면 인공 신경망에서 최종적으로 정답을 결정하는 단계 층에서 입력의 sub-region들에 대해서 개별적인 인공 신경망을 구성하고, 각 신경망의 출력에서 직접적으로 정답 후보를 결정하고, 정답 후보들로부터 최종 후보(최종적인 정답)을 결정함으로써, 전체 입력으로부터 하나의 정답을 생성하는 방식의 오류 수정이 가능하며, 국소 패턴들로부터의 정답 결정이 정답이 아니더라도 가능한 다른 차원들로부터의 가능한 최선의 추정치를 제공할 수 있으며, 인공 신경망이 정답 결정을 위한 확률 벡터에서 최대값이 아닌 값들을 정확하게 학습하기 힘든 점을 완화하여 예측 실패 시에도 관측할 수 있는 패턴들을 통한 최선의 정답 예측 결과를 추정할 수 있다. In addition, according to the embodiment of the present invention, an artificial neural network is constructed for sub-regions of input in the step of finally determining the correct answer in the artificial neural network, the correct answer candidates are directly determined at the output of each neural network, By determining the final candidate (final correct answer) from the candidates, it is possible to make error correction in a way that generates one correct answer from the entire input, and even if the correct answer decision from the local patterns is not correct, The artificial neural network can mitigate the difficulty of learning the values that are not the maximum value in the probability vector for determining the correct answer, thereby estimating the best correct answer prediction result through the patterns that can be observed even in the case of the prediction failure .
또한, 본 발명의 실시예에 따르면 최종 층에서 성능 향상뿐만 아니라, 위치에 독립적으로 나타나는 가장 추상적인 패턴들을 학습할 수 있어, 필요한 적층(stacking)의 수를 줄이거나 데이터를 감소시킴으로써 제한된 데이터로부터 얻을 수 있는 성능을 높일 수 있다.In addition, according to the embodiment of the present invention, it is possible to learn not only the performance improvement in the final layer but also the most abstract patterns independently appearing in position, thereby reducing the number of stacking required or reducing data, Can improve performance.
이상, 본 발명의 바람직한 실시예를 통하여 본 발명의 구성을 상세히 설명하였으나, 본 발명이 속하는 기술분야의 통상의 지식을 가진 자는 본 발명이 그 기술적 사상이나 필수적인 특징을 변경하지 않고서 본 명세서에 개시된 내용과는 다른 구체적인 형태로 실시될 수 있다는 것을 이해할 수 있을 것이다. 그러므로 이상에서 기술한 실시예들은 모든 면에서 예시적인 것이며 한정적이 아닌 것으로 이해해야만 한다. 본 발명의 보호범위는 상기 상세한 설명보다는 후술하는 특허청구범위에 의하여 나타내어지며, 특허청구의 범위 그리고 그 균등 개념으로부터 도출되는 모든 변경 또는 변형된 형태가 본 발명의 범위에 포함되는 것으로 해석되어야 한다.While the present invention has been described in connection with what is presently considered to be practical exemplary embodiments, it is to be understood that the invention is not limited to the disclosed embodiments, but, on the contrary, It is to be understood that the invention may be embodied in other specific forms. It is therefore to be understood that the above-described embodiments are illustrative in all aspects and not restrictive. The scope of the present invention is defined by the appended claims rather than the detailed description, and all changes or modifications derived from the scope of the claims and their equivalents should be construed as being included within the scope of the present invention.
100 : 최종 정답 결정 장치
110 : 입력부
120 : 생성부
130 : 학습부
140 : 결정부
150 : 선택부100: Final correct decision device
110: input unit 120:
130: learning unit 140:
150:
Claims (1)
상기 입력받은 벡터들을 기설정된 크기의 부분 영역(sub-region)들로 구분하여 생성하는 단계;
상기 부분 영역 별로 인공 신경망을 학습하는 단계;
상기 학습 결과로 획득된 벡터들로부터 복수의 정답 후보를 결정하는 단계;
상기 복수의 정답 후보로부터 최종적인 정답을 선택하는 단계;
를 포함하는 것을 인공 신경망에서 컨벌루션을 이용한 최종 정답 결정 방법.
Receiving vectors having arbitrary dimensions;
Dividing the input vectors into sub-regions of a predetermined size;
Learning an artificial neural network for each of the partial areas;
Determining a plurality of correct answers candidates from the vectors obtained as the learning result;
Selecting a final correct answer from the plurality of correct answers;
And determining a final correct answer using convolution in the artificial neural network.
Priority Applications (1)
| Application Number | Priority Date | Filing Date | Title |
|---|---|---|---|
| KR1020160000880A KR20170081887A (en) | 2016-01-05 | 2016-01-05 | Method of determining the final answer by convolution of the artificial neural networks |
Applications Claiming Priority (1)
| Application Number | Priority Date | Filing Date | Title |
|---|---|---|---|
| KR1020160000880A KR20170081887A (en) | 2016-01-05 | 2016-01-05 | Method of determining the final answer by convolution of the artificial neural networks |
Publications (1)
| Publication Number | Publication Date |
|---|---|
| KR20170081887A true KR20170081887A (en) | 2017-07-13 |
Family
ID=59352681
Family Applications (1)
| Application Number | Title | Priority Date | Filing Date |
|---|---|---|---|
| KR1020160000880A Withdrawn KR20170081887A (en) | 2016-01-05 | 2016-01-05 | Method of determining the final answer by convolution of the artificial neural networks |
Country Status (1)
| Country | Link |
|---|---|
| KR (1) | KR20170081887A (en) |
Cited By (4)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| WO2020001329A1 (en) * | 2018-06-28 | 2020-01-02 | 北京金山安全软件有限公司 | Method and device for input prediction |
| KR20200002245A (en) * | 2018-06-29 | 2020-01-08 | 포항공과대학교 산학협력단 | Neural network hardware |
| KR20200002248A (en) * | 2018-06-29 | 2020-01-08 | 포항공과대학교 산학협력단 | Neural network hardware |
| US11430137B2 (en) | 2018-03-30 | 2022-08-30 | Samsung Electronics Co., Ltd. | Electronic device and control method therefor |
-
2016
- 2016-01-05 KR KR1020160000880A patent/KR20170081887A/en not_active Withdrawn
Cited By (5)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| US11430137B2 (en) | 2018-03-30 | 2022-08-30 | Samsung Electronics Co., Ltd. | Electronic device and control method therefor |
| WO2020001329A1 (en) * | 2018-06-28 | 2020-01-02 | 北京金山安全软件有限公司 | Method and device for input prediction |
| US11409374B2 (en) | 2018-06-28 | 2022-08-09 | Beijing Kingsoft Internet Security Software Co., Ltd. | Method and device for input prediction |
| KR20200002245A (en) * | 2018-06-29 | 2020-01-08 | 포항공과대학교 산학협력단 | Neural network hardware |
| KR20200002248A (en) * | 2018-06-29 | 2020-01-08 | 포항공과대학교 산학협력단 | Neural network hardware |
Similar Documents
| Publication | Publication Date | Title |
|---|---|---|
| Gautam et al. | This looks more like that: Enhancing self-explaining models by prototypical relevance propagation | |
| Sáez et al. | Evaluating the classifier behavior with noisy data considering performance and robustness: The equalized loss of accuracy measure | |
| US9002101B2 (en) | Recognition device, recognition method, and computer program product | |
| Oh et al. | Learn-explain-reinforce: Counterfactual reasoning and its guidance to reinforce an Alzheimer's disease diagnosis model | |
| KR102370910B1 (en) | Method and apparatus for few-shot image classification based on deep learning | |
| KR102190303B1 (en) | deep-learning model learning apparatus based CNN and method therefor | |
| EP3767544A1 (en) | Training a generative model and a discriminative model | |
| JP6977886B2 (en) | Machine learning methods, machine learning devices, and machine learning programs | |
| CN105320945A (en) | Image classification method and apparatus | |
| KR102079027B1 (en) | Method for topology optimization using deep learning | |
| KR20170081887A (en) | Method of determining the final answer by convolution of the artificial neural networks | |
| JPWO2016189675A1 (en) | Neural network learning apparatus and learning method | |
| EP3502978A1 (en) | Meta-learning system | |
| Park et al. | Unraveling the arc puzzle: Mimicking human solutions with object-centric decision transformer | |
| Nimma et al. | Advancements in Deep Learning Architectures for Image Recognition and Semantic Segmentation. | |
| Alhroob et al. | Fuzzy min-max classifier based on new membership function for pattern classification: a conceptual solution | |
| Fay | Feature selection and information fusion in hierarchical neural networks for iterative 3D-object recognition | |
| Chen et al. | Spatio-temporal causal transformer for multi-grained surgical phase recognition | |
| KR102208688B1 (en) | Apparatus and method for developing object analysis model based on data augmentation | |
| JP7324086B2 (en) | Information processing device, information processing method | |
| Chaddad et al. | Modeling information flow through deep neural networks | |
| JP2019520656A (en) | System and method for recursive cortical network | |
| CN109902729A (en) | Behavior prediction method and device based on sequence state evolution | |
| JP7581811B2 (en) | Image processing system and image processing program | |
| Volna et al. | Enhanced ensemble-based classifier with boosting for pattern recognition |
Legal Events
| Date | Code | Title | Description |
|---|---|---|---|
| PA0109 | Patent application |
Patent event code: PA01091R01D Comment text: Patent Application Patent event date: 20160105 |
|
| PG1501 | Laying open of application | ||
| PC1203 | Withdrawal of no request for examination |