KR20170034258A - Model training method and apparatus, and data recognizing method - Google Patents
Model training method and apparatus, and data recognizing method Download PDFInfo
- Publication number
- KR20170034258A KR20170034258A KR1020150132679A KR20150132679A KR20170034258A KR 20170034258 A KR20170034258 A KR 20170034258A KR 1020150132679 A KR1020150132679 A KR 1020150132679A KR 20150132679 A KR20150132679 A KR 20150132679A KR 20170034258 A KR20170034258 A KR 20170034258A
- Authority
- KR
- South Korea
- Prior art keywords
- model
- teacher
- output data
- data
- loss
- Prior art date
Links
Images
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR 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; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F18/00—Pattern recognition
- G06F18/20—Analysing
- G06F18/24—Classification techniques
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR 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
- G06N3/045—Combinations of networks
-
- G06N99/005—
-
- G—PHYSICS
- G09—EDUCATION; CRYPTOGRAPHY; DISPLAY; ADVERTISING; SEALS
- G09B—EDUCATIONAL OR DEMONSTRATION APPLIANCES; APPLIANCES FOR TEACHING, OR COMMUNICATING WITH, THE BLIND, DEAF OR MUTE; MODELS; PLANETARIA; GLOBES; MAPS; DIAGRAMS
- G09B9/00—Simulators for teaching or training purposes
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR 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/084—Backpropagation, e.g. using gradient descent
Abstract
Description
아래 실시예들은 모델 학습 방법 및 장치, 및 데이터 인식 방법에 관한 것이다.The following embodiments relate to a model learning method and apparatus, and a data recognition method.
최근 들어, 입력 패턴을 특정 그룹으로 분류하는 문제를 해결하는 방안으로써, 인간이 지니고 있는 효율적인 패턴 인식 방법을 실제 컴퓨터에 적용시키려는 연구가 활발히 진행되고 있다. 이러한 연구 중 하나로, 인간의 생물학적 신경 세포의 특성을 수학적 표현에 의해 모델링한 인공신경망(artificial neural network)에 대한 연구가 있다. 입력 패턴을 특정 그룹으로 분류하는 문제를 해결하기 위해, 인공신경망은 인간이 가지고 있는 학습이라는 능력을 모방한 알고리즘을 이용한다. 이 알고리즘을 통하여 인공신경망은 입력 패턴과 출력 패턴들 사이의 사상(mapping)을 생성해낼 수 있는데, 이를 인공신경망이 학습 능력이 있다고 표현한다. 또한, 인공신경망은 학습된 결과에 기초하여 학습에 이용되지 않았던 입력 패턴에 대하여 비교적 올바른 출력을 생성할 수 있는 일반화 능력을 가지고 있다.2. Description of the Related Art In recent years, as an approach for solving the problem of classifying input patterns into specific groups, researches have been actively conducted to apply effective pattern recognition methods of humans to real computers. One of these studies is the study of artificial neural networks modeled by mathematical expressions of the characteristics of human biological neurons. In order to solve the problem of classifying the input pattern into a specific group, the artificial neural network uses an algorithm that mimics the ability of the human being to learn. Through this algorithm, an artificial neural network can generate mapping between input pattern and output pattern, which expresses that artificial neural network has learning ability. In addition, the artificial neural network has a generalization ability to generate relatively correct output for input patterns that were not used for learning based on the learned results.
또한, 이러한 인공신경망의 사이즈를 소형화시키면서도 인식률의 감소를 최소화하려는 연구가 진행되고 있다.Further, studies are being made to miniaturize the size of the artificial neural network and minimize the decrease in the recognition rate.
일실시예에 따른 모델 학습 방법은 복수의 교사 모델들 중에서 적어도 하나를 선택하는 단계; 및 입력 데이터에 대한 상기 선택된 적어도 하나의 교사 모델의 출력 데이터에 기초하여 학생 모델(student model)을 학습시키는 단계를 포함한다.A model learning method according to an embodiment includes selecting at least one of a plurality of teacher models; And learning a student model based on output data of the at least one teacher model selected for the input data.
일실시예에 따른 모델 학습 방법에서 상기 복수의 교사 모델들 중에서 적어도 하나를 선택하는 단계는, 상기 복수의 교사 모델들의 정확도에 기반하여 상기 복수의 교사 모델들 중에서 적어도 하나를 선택할 수 있다.The selecting of at least one of the plurality of teacher models in the model learning method according to an exemplary embodiment may select at least one of the plurality of teacher models based on the accuracy of the plurality of teacher models.
일실시예에 따른 모델 학습 방법에서 상기 복수의 교사 모델들 중에서 적어도 하나를 선택하는 단계는, 상기 입력 데이터에 대한 상기 복수의 교사 모델들의 출력 데이터들 간의 상관도(correlation)에 기반하여 상기 복수의 교사 모델들 중에서 적어도 하나를 선택할 수 있다.The step of selecting at least one of the plurality of teacher models in the model learning method according to an exemplary embodiment of the present invention may include selecting at least one of the plurality of teacher models based on a correlation between output data of the plurality of teacher models with respect to the input data, At least one of the teacher models can be selected.
일실시예에 따른 모델 학습 방법에서 상기 복수의 교사 모델들 중에서 적어도 하나를 선택하는 단계는, 상기 선택된 적어도 하나의 교사 모델들의 출력 데이터들 간의 상관도가 임계 값보다 낮도록 상기 복수의 교사 모델들 중에서 적어도 하나를 선택할 수 있다.The selecting of at least one of the plurality of teacher models in the model learning method according to an exemplary embodiment may include selecting one of the plurality of teacher models so that the correlation between output data of the selected at least one teacher models is less than a threshold value, At least one of them can be selected.
일실시예에 따른 모델 학습 방법에서 상기 학생 모델을 학습시키는 단계는, 상기 학생 모델의 출력 데이터를 더 이용하여 상기 학생 모델을 학습시킬 수 있다.The step of learning the student model in the model learning method according to an embodiment may further use the output data of the student model to learn the student model.
일실시예에 따른 모델 학습 방법에서 상기 복수의 교사 모델들 중에서 적어도 하나를 선택하는 단계, 상기 학생 모델을 학습시키는 단계는, 상기 학생 모델이 미리 정해진 조건을 만족할 때까지 반복적으로 수행될 수 있다.Selecting at least one of the plurality of teacher models in the model learning method according to an embodiment, and learning the student model may be repeatedly performed until the student model satisfies a predetermined condition.
일실시예에 따른 모델 학습 방법에서 상기 학생 모델을 학습시키는 단계는, 상기 입력 데이터에 대한 상기 학생 모델의 출력 데이터와 상기 선택된 적어도 하나의 교사 모델의 제1 출력 데이터 사이의 제1 손실; 및 상기 학생 모델의 히든 레이어로부터 파생(derive)된 분류 레이어의 출력 데이터와 상기 선택된 적어도 하나의 교사 모델의 제2 출력 데이터 사이의 제2 손실에 기초하여 상기 학생 모델을 학습시키고, 상기 제1 손실과 상기 제2 손실은, 서로 다른 방법에 기반하여 결정될 수 있다.The step of learning the student model in the model learning method according to an embodiment includes: a first loss between output data of the student model for the input data and first output data of the selected at least one teacher model; And to learn the student model based on a second loss between output data of a classification layer deriving from a hidden layer of the student model and second output data of the selected at least one teacher model, And the second loss may be determined based on different methods.
일실시예에 따른 모델 학습 방법에서 상기 제1 손실과 상기 제2 손실은, 서로 다른 선택된 교사 모델들로부터 출력된 제1 출력 데이터와 제2 출력 데이터를 이용하여 결정될 수 있다.In the model learning method according to an exemplary embodiment, the first loss and the second loss may be determined using first output data and second output data output from different selected teacher models.
일실시예에 따른 모델 학습 방법에서 상기 제1 손실과 상기 제2 손실은, 상기 제1 출력 데이터와 상기 제2 출력 데이터에 서로 다른 가중치를 적용함으로써 결정될 수 있다.In the model learning method according to an exemplary embodiment, the first loss and the second loss may be determined by applying different weights to the first output data and the second output data.
일실시예에 따른 모델 학습 방법에서 상기 분류 레이어의 초기 가중치는, 상기 선택된 적어도 하나의 교사 모델들 중에서 상기 분류 레이어로 입력되는 데이터와 가장 유사한 사이즈를 가지는 선택된 교사 모델의 초기 가중치로 설정될 수 있다.In the model learning method according to an exemplary embodiment, the initial weight of the classification layer may be set to an initial weight of a selected teacher model having a size most similar to data input to the classification layer among the selected teacher models .
일실시예에 따른 모델 학습 방법에서 상기 학생 모델을 학습시키는 단계는, 상기 입력 데이터에 대응하는 정답 데이터를 더 이용하여 상기 학생 모델을 학습시킬 수 있다.The step of learning the student model in the model learning method according to an embodiment may further use the correct answer data corresponding to the input data to learn the student model.
일실시예에 따른 모델 학습 방법에서 상기 복수의 교사 모델들은, 서로 다른 초기 가중치(initial weight)를 가지거나, 서로 다른 신경망 구조를 가지거나, 서로 다른 하이퍼 파라미터(hyper parameter)가 적용되거나 또는 서로 다른 앙상블(ensemble)로 구성될 수 있다.In a model learning method according to an exemplary embodiment, the plurality of teacher models may have different initial weights, different neural network structures, different hyper parameters, It can be composed of an ensemble.
일실시예에 따른 모델 학습 방법에서 상기 학생 모델의 구조는, 상기 선택된 적어도 하나의 교사 모델로 입력되는 데이터의 사이즈에 기초하여 결정될 수 있다.In the model learning method according to an exemplary embodiment, the structure of the student model may be determined based on a size of data input to the selected at least one teacher model.
일실시예에 따른 데이터 인식 방법은 인식하고자 하는 대상 데이터를 수신하는 단계; 및 기 학습된 모델을 이용하여 상기 대상 데이터를 인식하는 단계를 포함하고, 상기 모델은, 복수의 교사 모델들 중에서 적어도 하나를 선택하고, 입력 데이터에 대한 상기 선택된 적어도 하나의 교사 모델의 출력 데이터를 이용함으로써 학습된다.According to an embodiment of the present invention, there is provided a data recognition method comprising: receiving target data to be recognized; And recognizing the object data using the learned model, wherein the model includes at least one of a plurality of teacher models, and outputs output data of the selected at least one teacher model to the input data .
일실시예에 따른 모델 학습 장치는 학생 모델을 학습시키는 프로세서; 및 상기 학습된 학생 모델을 저장하는 메모리를 포함하고, 상기 프로세서는, 복수의 교사 모델들 중에서 적어도 하나를 선택하고, 입력 데이터에 대한 상기 선택된 적어도 하나의 교사 모델의 출력 데이터에 기초하여 상기 학생 모델을 학습시킨다.A model learning apparatus according to an embodiment includes a processor for learning a student model; And a memory for storing the learned student model, wherein the processor is configured to select at least one of the plurality of teacher models, and to generate, based on the output data of the selected at least one teacher model for the input data, .
도 1은 일실시예에 따른 교사 모델과 학생 모델을 설명하기 위한 도면이다.
도 2 내지 도 4는 일실시예에 따라 복수의 교사 모델들 중에서 적어도 하나를 선택하여 학생 모델을 학습시키는 과정을 설명하기 위한 도면이다.
도 5는 일실시예에 따라 학생 모델의 분류 레이어를 이용한 학습 과정을 설명하기 위한 도면이다.
도 6은 일실시예에 따른 모델 학습 방법을 나타낸 도면이다.
도 7은 일실시예에 따른 데이터 인식 방법을 나타낸 도면이다.
도 8은 일실시예에 따른 모델 학습 장치를 나타낸 도면이다.
도 9는 일실시예에 따른 데이터 인식 장치를 나타낸 도면이다.1 is a diagram for explaining a teacher model and a student model according to an embodiment.
FIGS. 2 to 4 are diagrams illustrating a process of selecting at least one of a plurality of teacher models to learn a student model according to an exemplary embodiment.
5 is a diagram for explaining a learning process using a classification layer of a student model according to an embodiment.
6 is a diagram illustrating a model learning method according to an embodiment.
7 is a diagram illustrating a data recognition method according to an embodiment of the present invention.
8 is a diagram illustrating a model learning apparatus according to an embodiment.
9 is a diagram illustrating a data recognition apparatus according to an embodiment.
이하, 실시예들을 첨부된 도면을 참조하여 상세하게 설명한다. 아래의 특정한 구조적 내지 기능적 설명들은 단지 실시예들을 설명하기 위한 목적으로 예시된 것으로, 실시예의 범위가 본문에 설명된 내용에 한정되는 것으로 해석되어서는 안된다. 관련 기술 분야에서 통상의 지식을 가진 자라면 이러한 기재로부터 다양한 수정 및 변형이 가능하다. 또한, 각 도면에 제시된 동일한 참조 부호는 동일한 부재를 나타내며, 공지된 기능 및 구조는 생략하도록 한다.Hereinafter, embodiments will be described in detail with reference to the accompanying drawings. The specific structural or functional descriptions below are illustrated for purposes of illustration only and are not to be construed as limiting the scope of the embodiments to those described in the text. Those skilled in the art will appreciate that various modifications and changes may be made thereto without departing from the scope of the present invention. In addition, the same reference numerals shown in the drawings denote the same members, and the well-known functions and structures are omitted.
도 1은 일실시예에 따른 교사 모델과 학생 모델을 설명하기 위한 도면이다.1 is a diagram for explaining a teacher model and a student model according to an embodiment.
도 1을 참고하면, 교사 모델(110)과 학생 모델(120)이 도시된다. 교사 모델(110)과 학생 모델(120)은 특정 입력에 대해 특정 출력이 출력되도록 학습된 모델로서, 예를 들어, 신경망(neural network)을 포함할 수 있다. 신경망은 연결선으로 연결된 많은 수의 인공 뉴런들을 이용하여 생물학적인 시스템의 계산 능력을 모방하는 인식 모델이다.Referring to Figure 1, a
신경망은 생물학적인 뉴런의 기능을 단순화시킨 인공 뉴런들이 이용되고, 인공 뉴런들은 연결 가중치(connection weight)를 가지는 연결선을 통해 상호 연결될 수 있다. 신경망의 파라미터인 연결 가중치는 연결선이 갖는 특정한 값으로서 연결 강도라고도 나타낼 수 있다. 신경망은 인공 뉴런들을 통해 인간의 인지 작용이나 학습 과정을 수행할 수 있다. 인공 뉴런은 노드(node)라고도 지칭할 수 있다.Neural networks can be artificial neurons that simplify the function of biological neurons, and artificial neurons can be interconnected through connection lines with connection weights. The connection weight, which is a parameter of the neural network, can also be referred to as the connection strength as a specific value of the connection line. Neural networks can perform human cognitive or learning processes through artificial neurons. An artificial neuron can also be referred to as a node.
신경망은 복수의 층들을 포함할 수 있다. 예를 들어, 신경망은 입력 레이어(input layer), 히든 레이어(hidden layer), 출력 레이어(output layer)를 포함할 수 있다. 입력 레이어는 학습을 수행하기 위한 입력을 수신하여 히든 레이어에 전달할 수 있고, 출력 레이어는 히든 층의 노드들로부터 수신한 신호에 기초하여 신경망의 출력을 생성할 수 있다. 히든 레이어는 입력 레이어와 출력 레이어 사이에 위치하고, 입력 레이어를 통해 전달된 학습 데이터를 예측하기 쉬운 값으로 변화시킬 수 있다. 입력 레이어와 히든 레이어에 포함된 노드들은 연결 가중치를 가지는 연결선을 통해 서로 연결되고, 히든 레이어와 출력 레이어에 포함된 노드들에서도 연결 가중치를 가지는 연결선을 통해 서로 연결될 수 있다. 입력 레이어, 히든 레이어 및 출력 레이어는 복수의 노드들을 포함할 수 있다.The neural network may comprise a plurality of layers. For example, a neural network may include an input layer, a hidden layer, and an output layer. The input layer may receive inputs to perform learning and transmit them to the hidden layer, and the output layer may generate outputs of the neural network based on signals received from the hidden layer nodes. The hidden layer is located between the input layer and the output layer, and can change the learning data transmitted through the input layer to a value that is easy to predict. Nodes included in the input layer and the hidden layer are connected to each other through connection lines having connection weights, and nodes included in the hidden layer and the output layer can be connected to each other via connection weighted connection lines. The input layer, the hidden layer, and the output layer may include a plurality of nodes.
신경망은 복수의 히든 레이어들을 포함할 수 있다. 복수의 히든 레이어들을 포함하는 신경망을 깊은 신경망(deep neural network)이라고 하고, 깊은 신경망을 학습시키는 것을 깊은 학습(deep learning)이라고 한다. 히든 레이어에 포함된 노드를 히든 노드(hidden node)라고 한다.The neural network may include a plurality of hidden layers. A neural network containing multiple hidden layers is called a deep neural network, and a deep neural network is called deep learning. A node contained in a hidden layer is called a hidden node.
신경망은 감독 학습(supervised learning)을 통해 학습될 수 있다. 감독 학습이란 입력 데이터와 그에 대응하는 출력 데이터를 함께 신경망에 입력하고, 입력 데이터에 대응하는 출력 데이터가 출력되도록 연결선들의 연결 가중치를 업데이트하는 방법이다. 예를 들어, 모델 학습 장치는 델타 규칙(delta rule)과 오류 역전파 학습(back propagation learning) 등을 통해 인공 뉴런들 사이의 연결 가중치를 업데이트할 수 있다.Neural networks can be learned through supervised learning. Supervised learning is a method of inputting input data and corresponding output data together into a neural network and updating connection weights of connection lines so that output data corresponding to the input data is output. For example, the model learning device can update the connection weights between artificial neurons through delta rule and back propagation learning.
오류 역전파 학습은, 주어진 입력 데이터에 대해 전방 계산(forward computation)으로 손실을 추정한 후, 출력 레이어에서 시작하여 히든 레이어와 입력 레이어로의 역 방향으로 추정한 손실을 전파하는 과정에서 손실을 줄이는 방향으로 연결 가중치를 업데이트하는 방법이다. 신경망의 처리는 입력 레이어, 히든 레이어, 출력 레이어의 순서로 진행되지만, 오류 역전파 학습에서 연결 가중치의 업데이트 방향은 출력 레이어, 히든 레이어, 입력 레이어의 순서로 진행될 수 있다. 이하, 신경망을 학습시킨다는 것은 신경망의 파라미터를 학습시킨다는 것으로 이해될 수 있다. 또한, 학습된 신경망은 학습된 파라미터가 적용된 신경망으로 이해될 수 있다.Error backpropagation learning estimates the loss by forward computation for a given input data, then reduces the loss in the process of propagating the estimated loss in the reverse direction from the output layer to the hidden layer and the input layer Lt; RTI ID = 0.0 > direction. ≪ / RTI > The processing of the neural network proceeds in the order of the input layer, the hidden layer, and the output layer. However, in the error backpropagation learning, the update direction of the connection weight may proceed in the order of the output layer, hidden layer, and input layer. Hereinafter, learning the neural network can be understood as learning the parameters of the neural network. In addition, the learned neural network can be understood as a neural network to which the learned parameters are applied.
일실시예에 따른 교사 모델(110)과 학생 모델(120)은 인식하고자 하는 대상이 동일한 서로 다른 사이즈의 신경망을 나타낼 수 있다.The
교사 모델(110)은 인식하고자 하는 대상 데이터로부터 추출된 충분히 많은 특징들을 이용하여 높은 정확도로 대상 데이터를 인식하는 모델로서, 학생 모델(120)보다 큰 사이즈의 신경망일 수 있다. 예를 들어, 교사 모델(110)은 학생 모델(120)보다 많은 히든 레이어들, 많은 노드들, 또는 이들의 조합으로 구성될 수 있다.The
학생 모델(120)은 교사 모델(110)보다 작은 사이즈의 신경망으로서, 작은 사이즈로 인해 교사 모델(110)보다 인식 속도가 빠를 수 있다. 학생 모델(120)은 입력 데이터로부터 교사 모델(110)의 출력 데이터가 출력되도록 교사 모델(110)에 기반하여 학습될 수 있다. 예를 들어, 교사 모델(110)의 출력 데이터는 교사 모델(110)에서 출력되는 로직 값(value of logit), 확률 값 또는 교사 모델(110)의 히든 레이어로부터 파생된 분류 레이어의 출력 값일 수 있다. 이를 통해, 교사 모델(110)과 동일한 값을 출력하면서도 교사 모델(110)보다 빠른 인식 속도를 가지는 학생 모델(120)을 얻을 수 있다. 이러한 과정을 모델 컴프레션(model compression)이라고 한다. 모델 컴프레션은 참 라벨(true label)인 정답 데이터 대신 교사 모델(110)의 출력 데이터를 이용하여 학생 모델(120)을 학습시키는 기법이다.The
일실시예에 따라 학생 모델(120)을 학습시킬 때 이용될 수 있는 교사 모델(110)은 복수일 수 있다. 학생 모델(120)은 복수의 교사 모델들 중에서 적어도 하나를 선택함으로써 학습될 수 있다. 복수의 교사 모델들 중에서 적어도 하나를 선택하여 학생 모델(120)을 학습시키는 과정은 학생 모델(120)이 미리 정해진 조건을 만족할 때까지 반복해서 수행될 수 있다. 이 때, 선택되어 학생 모델(120)을 학습시키는 적어도 하나의 교사 모델은 학습 과정이 반복될 때마다 새롭게 선택될 수 있다. 예를 들어, 하나 또는 둘 이상의 교사 모델이 학생 모델(120)을 학습시키기 위한 모델로 선택될 수 있다.According to one embodiment, there may be a plurality of
학생 모델(120)을 학습시키기 위해 복수의 교사 모델들 중에서 하나 또는 둘 이상을 선택하는 과정에 대해서는 도 2 내지 도 4를 통하여 후술한다.The process of selecting one or more of the plurality of teacher models for learning the
도 2 내지 도 4는 일실시예에 따라 복수의 교사 모델들 중에서 적어도 하나를 선택하여 학생 모델을 학습시키는 과정을 설명하기 위한 도면이다.FIGS. 2 to 4 are diagrams illustrating a process of selecting at least one of a plurality of teacher models to learn a student model according to an exemplary embodiment.
도 2를 참고하면, 학생 모델(220)을 학습시키기 위해 복수의 교사 모델들 중에서 어느 하나를 선택하는 과정이 도시되어 있다. 복수의 교사 모델들 중에서 어느 하나를 선택하는 과정은 모델 학습 장치에 의해 수행될 수 있다.Referring to FIG. 2, a process of selecting one of a plurality of teacher models for learning the
모델 학습 장치는 데이터 인식을 위한 신경망을 학습시키는 장치로서, 단일 프로세서 또는 멀티 프로세서로 구현될 수 있다. 또는, 모델 학습 장치는 서로 다른 장치에 포함된 복수의 모듈들로 구현될 수도 있다. 이 경우, 복수의 모듈들은 네트워크 등을 통하여 서로 연결될 수 있다.The model learning apparatus is a device for learning a neural network for data recognition, and may be implemented as a single processor or a multi-processor. Alternatively, the model learning apparatus may be implemented by a plurality of modules included in different apparatuses. In this case, the plurality of modules may be connected to each other via a network or the like.
복수의 교사 모델들은 학생 모델(220)의 학습 과정에 이용될 수 있는 기 학습된 모델을 나타내는 것으로, 다양한 구조와 다양한 정확도를 가질 수 있다. 복수의 교사 모델들에는 교사 모델 1 내지 교사 모델 N이 포함될 수 있다.The plurality of teacher models represents a pre-learned model that can be used in the learning process of the
일실시예에 따른 복수의 교사 모델들은 서로 다른 초기 가중치(initial weight)를 가지거나, 서로 다른 신경망 구조를 가지거나, 서로 다른 하이퍼 파라미터(hyper parameter)를 가지거나 또는 서로 다른 앙상블(ensemble)로 구성될 수 있다.A plurality of teacher models according to an embodiment may have different initial weights, different neural network structures, different hyper parameters, or different ensembles .
복수의 교사 모델들은 서로 다른 초기 가중치를 가질 수 있다. 초기 가중치는 신경망 내의 연결선이 가지는 연결 가중치의 초기 값을 의미하는 것으로, 에러 역전파 신경망 학습에서 학습 속도와 수렴률에 큰 영향을 줄 수 있다. 복수의 교사 모델들에 적용되는 초기 가중치는 랜덤 초기치 설정(random initialization) 또는 사전 학습(pre-training) 등 다양한 방법을 통해 서로 다른 값으로 설정될 수 있다.The plurality of teacher models may have different initial weights. The initial weight means the initial value of the connection weights of the connection lines in the neural network, which can greatly affect the learning rate and convergence rate in error back propagation neural network learning. The initial weights applied to the plurality of teacher models may be set to different values through various methods such as random initialization or pre-training.
복수의 교사 모델들은 서로 다른 신경망 구조를 가질 수 있다. 예를 들어, 복수의 교사 모델들은 서로 다른 히든 레이어 개수, 필터 개수, 커널 사이즈(kernel size) 등으로 구성되는 다양한 신경망 구조를 가질 수 있다.Multiple teacher models can have different neural network structures. For example, a plurality of teacher models may have various neural network structures including different hidden layer number, filter number, kernel size, and the like.
복수의 교사 모델들은 서로 다른 하이퍼 파라미터를 가질 수 있다. 하이퍼 파라미터는 learning rate, momentum 등 학습에 관련된 파라미터를 나타낼 수 있다.The plurality of teacher models may have different hyper parameters. The hyperparameter can represent learning-related parameters such as learning rate and momentum.
복수의 교사 모델들은 서로 다른 앙상블로 구성될 수 있다. 교사 모델은 하나의 신경망으로 구성될 수도 있고 또는 복수의 신경망들의 앙상블로 구성될 수도 있다. 교사 모델이 복수의 신경망들의 앙상블로 구성되는 경우, 해당 교사 모델은 다른 교사 모델과 상이한 앙상블로 구성될 수 있다.A plurality of teacher models can be composed of different ensembles. The teacher model may be composed of one neural network or an ensemble of a plurality of neural networks. If the teacher model is composed of a plurality of ensembles of neural networks, the teacher model may be composed of different ensembles from other teacher models.
일실시예에 따른 모델 학습 장치는 복수의 교사 모델들의 정확도에 기초하여 복수의 교사 모델들 중에서 어느 하나를 선택할 수 있다. 예를 들어, 모델 학습 장치는 복수의 교사 모델들 중에서 가장 높은 정확도를 가지는 교사 모델을 선택할 수 있다. 또는, 모델 학습 장치는 임계 값 이상의 정확도를 가지는 교사 모델들 중에서 어느 하나를 랜덤하게 선택할 수도 있다.The model learning apparatus according to one embodiment can select any one of a plurality of teacher models based on the accuracy of a plurality of teacher models. For example, the model learning apparatus can select a teacher model having the highest accuracy among a plurality of teacher models. Alternatively, the model learning apparatus may randomly select any one of the teacher models having an accuracy higher than the threshold value.
모델 학습 장치는 선택된 교사 모델(210)의 출력 데이터를 학생 모델(220)의 라벨(label)로 이용하여 학생 모델(220)을 학습시킬 수 있다. 모델 학습 장치는 입력 데이터로부터 출력된 학생 모델(220)의 출력 데이터와 선택된 교사 모델(210)의 출력 데이터 간의 차이를 나타내는 손실에 기초하여 학생 모델(220)을 학습시킬 수 있다. 모델 학습 장치는 학생 모델(220)의 출력 데이터와 선택된 교사 모델(210)의 출력 데이터 간의 차이를 나타내는 손실을 계산하고, SGD(stochastic gradient decent) 기법에 기초하여 손실이 감소되도록 학생 모델(220)을 학습시킬 수 있다.The model learning apparatus can learn the
모델 학습 장치는 출력 레이어에서 시작하여 히든 레이어와 입력 레이어의 역 방향으로 손실을 전파하고 손실을 줄이는 방향으로 연결 가중치를 업데이트할 수 있다. 이러한 역 방향으로 오류를 전파하는 것을 백워드 패스(backward pass)라고 한다.The model learning device can update the connection weights in the direction starting from the output layer and propagating the loss in the reverse direction of the hidden layer and the input layer and reducing the loss. The propagation of errors in this reverse direction is called the backward pass.
모델 학습 장치는 현재 설정된 연결 가중치들이 얼마나 최적에 가까운지를 측정하기 위한 목적 함수(objective function)를 정의하고, 목적 함수의 결과에 기초하여 연결 가중치들을 계속 변경하고, 학습을 반복적으로 수행할 수 있다. 예를 들어, 목적 함수는 신경망이 입력 데이터에 기초하여 실제 출력한 출력 데이터와 출력되기로 원하는 기대 값(예컨대, 선택된 교사 모델(210)의 출력 데이터) 간의 손실을 계산하기 위한 손실 함수(loss function)일 수 있다. 모델 학습 장치는 손실 함수의 값을 줄이는 방향으로 연결 가중치들을 업데이트할 수 있다.The model learning apparatus may define an objective function for measuring how close the optimal connection weights are currently set, continuously change the connection weights based on the result of the objective function, and repeat the learning. For example, the objective function may be a loss function for calculating the loss between the actual output data based on the input data and the desired expected value (e.g., the output data of the selected teacher model 210) ). The model learning device may update the connection weights in a direction that reduces the value of the loss function.
모델 학습 장치는 다음과 같이 손실을 계산할 수 있다.The model learning device can calculate the loss as follows.
위의 수학식 1에서, 은 손실 함수를 나타내고, 은 학습되어야 할 학생 모델(220)의 파라미터를 나타낸다. 또한, 는 선택된 교사 모델 i의 출력 데이터를 나타내고, 은 입력 데이터로부터 출력된 학생 모델(220)의 출력 데이터를 나타내고, 은 선택된 교사 모델 i의 출력 데이터 와 학생 모델(220)의 출력 데이터 간의 크로스 엔트로피(cross entropy), 소프트맥스 함수(softmax function) 또는 유클리드 거리(Euclidean distance)를 나타낸다.In Equation (1) above, Represents a loss function, Represents the parameters of the
도 2에서는 교사 모델 1 내지 교사 모델 N 중에서 교사 모델 2가 선택되고, 선택된 교사 모델 2의 출력 데이터 를 이용하여 학생 모델(220)이 학습되는 일례가 도시되어 있다.2, the
다른 실시예에 따라 모델 학습 장치는 정답 데이터 를 더 이용하여 학생 모델(220)을 학습시킬 수도 있다. 모델 학습 장치는 정답 데이터 를 더 고려하여 손실을 다음과 같이 계산할 수 있다.According to another embodiment, The
위의 수학식 2에서, 는 정답 데이터 와 학생 모델(220)의 출력 데이터 간의 크로스 엔트로피, 소프트맥스 함수 또는 유클리드 거리를 나타낸다. 은 상수로서, 선택된 교사 모델 i의 출력 데이터 에 적용되는 가중치를 나타내고, 은 상수로서, 정답 데이터 에 적용되는 가중치를 나타낸다.In the above equation (2) The correct answer data And the output data of the
모델 학습 장치는 와 의 값을 조절함으로써, 선택된 교사 모델 i의 출력 데이터 와 정답 데이터 각각이 학생 모델(220)의 학습 과정에 미치는 영향을 결정할 수 있다. 예를 들어, 보다 에 보다 큰 값이 설정된 경우, 모델 학습 장치는 정답 데이터 보다 선택된 교사 모델 i의 출력 데이터 에 더 큰 비중을 두고 학생 모델(220)을 학습시킬 수 있다.The model learning device Wow The output data of the selected teacher model i And correct answer data Each of which can determine the effect of the
도 3을 참고하면, 학생 모델(320)을 학습시키기 위해 복수의 교사 모델들 중에서 둘 이상을 선택하는 과정이 도시되어 있다. 복수의 교사 모델들 중에서 둘 이상을 선택하는 과정은 모델 학습 장치에 의해 수행될 수 있다. 복수의 교사 모델들은 학생 모델(320)의 학습 과정에 이용될 수 있는 기 학습된 모델을 나타내는 것으로, 다양한 구조와 다양한 정확도를 가질 수 있다.Referring to FIG. 3, a process of selecting two or more teacher models for learning the
일실시예에 따른 모델 학습 장치는 복수의 교사 모델들의 정확도에 기초하여 복수의 교사 모델들 중에서 둘 이상을 선택할 수 있다. 모델 학습 장치는 복수의 교사 모델들 중에서 임계 값 이상의 정확도를 가지는 교사 모델들을 선택할 수 있다. 또는, 모델 학습 장치는 정확도를 기준으로 복수의 교사 모델들을 나열하고, 정확도가 높은 순서대로 미리 정해진 k 개의 교사 모델들을 선택할 수 있다.The model learning apparatus according to an embodiment can select two or more of the plurality of teacher models based on the accuracy of the plurality of teacher models. The model learning apparatus can select teacher models having an accuracy higher than a threshold value among a plurality of teacher models. Alternatively, the model learning apparatus can list a plurality of teacher models on the basis of the accuracy, and select k teacher models predetermined in order of accuracy.
또한, 모델 학습 장치는 입력 데이터에 대한 복수의 교사 모델들의 출력 데이터들 간의 상관도(correlation)에 기반하여 복수의 교사 모델들 중에서 둘 이상을 선택할 수 있다. 모델 학습 장치는 선택된 교사 모델들(310)의 출력 데이터들 간의 상관도가 임계 값보다 낮도록 복수의 교사 모델들 중에서 둘 이상을 선택할 수 있다. 예를 들어, 모델 학습 장치는 임계 값 이상의 정확도를 가지는 교사 모델들 중에서 선택된 교사 모델들(310)의 출력 데이터들 간의 상관도가 임계 값보다 낮도록 복수의 교사 모델들 중에서 둘 이상을 선택할 수 있다. 또는, 모델 학습 장치는 임계 값 이상의 정확도를 가지는 교사 모델들의 출력 데이터들 중에서 가장 높은 정확도를 가지는 교사 모델의 출력 데이터와 상관도가 낮은 순서대로 미리 정해진 k 개의 교사 모델들을 가장 높은 정확도를 가지는 교사 모델과 함께 선택할 수 있다.In addition, the model learning apparatus can select two or more of the plurality of teacher models based on the correlation between the output data of the plurality of teacher models with respect to the input data. The model learning apparatus can select two or more of the plurality of teacher models so that the correlation between the output data of the selected
또한, 모델 학습 장치는 휴리스틱(heuristic)하게 복수의 교사 모델들 중에서 둘 이상을 선택하는 입력을 사용자로부터 수신할 수도 있다.Further, the model learning apparatus may heuristically receive an input from the user to select two or more of the plurality of teacher models.
도 3에서는 교사 모델 1 내지 교사 모델 N 중에서 교사 모델 2, 교사 모델 3이 선택되고, 선택된 교사 모델 2의 출력 데이터 , 선택된 교사 모델 3의 출력 데이터 에 기초하여 학생 모델(320)이 학습되는 일례가 도시되어 있다.3, the
모델 학습 장치는 정답 데이터 를 더 이용하여 학생 모델(320)을 학습시킬 수도 있다. 복수의 교사 모델들 중에서 둘 이상을 선택하고 정답 데이터 를 더 고려하여 학생 모델(320)을 학습시키는 경우, 모델 학습 장치는 다음과 같이 손실을 계산할 수 있다.The model learning device generates correct answer data The
위의 수학식 3에서, 은 선택된 교사 모델 j의 출력 데이터를 나타내고, 는 선택된 교사 모델 j의 출력 데이터 와 학생 모델(320)의 출력 데이터 간의 크로스 엔트로피, 소프트맥스 함수 또는 유클리드 거리를 나타낸다. 는 정답 데이터 와 학생 모델(320)의 출력 데이터 간의 크로스 엔트로피, 소프트맥스 함수 또는 유클리드 거리를 나타낸다. 은 상수로서, 선택된 교사 모델 j의 출력 데이터 에 적용되는 가중치를 나타내고, 은 상수로서, 정답 데이터 에 적용되는 가중치를 나타낸다. 모델 학습 장치는 , , 의 값을 조절함으로써, 선택된 교사 모델 i의 출력 데이터 , 선택된 교사 모델 j의 출력 데이터 와 정답 데이터 가 학생 모델(320)의 학습 과정에 미치는 영향을 결정할 수 있다.In the above equation (3) Represents the output data of the selected teacher model j, The output data of the selected teacher model j And the output data of the
모델 학습 장치는 수학식 3을 통해 계산된 손실이 감소되도록 학생 모델(320)을 학습시킬 수 있다.The model learning apparatus can learn the
도 4를 참고하면, 학생 모델(420)의 출력 데이터를 더 이용하여 학생 모델(420)을 학습시키는 과정이 도시되어 있다. 모델 학습 장치는 복수의 교사 모델들 중에서 선택된 적어도 하나의 교사 모델(410)의 출력 데이터와 학생 모델(420)의 출력 데이터를 함께 이용하여 손실을 계산하고, 손실이 감소되도록 학생 모델(420)을 학습시킬 수 있다.Referring to FIG. 4, a process of learning the
경우에 따라서는 선택된 적어도 하나의 교사 모델(410)에 기반하여 학습된 학생 모델(420)은 선택된 적어도 하나의 교사 모델(410)보다 높은 정확도를 가질 수 있다. 따라서, 높은 정확도를 가지는 학생 모델(420)의 출력 데이터를 더 이용하여 학생 모델(420)을 학습시킴으로써, 학생 모델(420)의 학습 속도 또는 정확도를 보다 향상시킬 수 있다.In some cases, the learned
일실시예에 따른 모델 학습 장치는 학생 모델(420)의 정확도를 측정하고 복수의 교사 모델들의 정확도와 학생 모델(420)의 정확도를 비교함으로써, 학생 모델(420)의 출력 데이터를 학습에 이용할지 여부를 결정할 수 있다.The model learning apparatus according to one embodiment determines whether the output data of the
예를 들어, 복수의 교사 모델들의 정확도들 중에서 가장 높은 정확도보다 학생 모델(420)의 정확도가 높은 경우, 모델 학습 장치는 학생 모델(420)의 출력 데이터를 학습에 이용할 것으로 결정할 수 있다. 또는, 복수의 교사 모델들의 정확도들에 대한 통계 값(예컨대, 평균 값, 상위 k%의 값 등)과 학생 모델(420)의 정확도를 비교함으로써, 학생 모델(420)의 출력 데이터를 학습에 이용할지 여부를 결정할 수도 있다. 이외에도 학생 모델(420)의 출력 데이터를 학습에 이용할지 여부를 판단하는 기준은 설계에 따라 다양하게 변형될 수 있다.For example, if the accuracy of the
도 4에서는 학생 모델(420)이 선택된 교사 모델 2의 출력 데이터 , 선택된 교사 모델 3의 , 학생 모델(420)의 출력 데이터 에 기초하여 학습되는 일례가 도시되어 있다.4, the
도 5는 일실시예에 따라 학생 모델의 분류 레이어를 이용한 학습 과정의 일례를 설명하기 위한 도면이다.5 is a diagram for explaining an example of a learning process using a classification layer of a student model according to an embodiment.
도 5를 참조하면, 학생 모델(500)은 입력 레이어(510), 히든 레이어(520), 출력 레이어(530) 및 분류 레이어(540)를 포함할 수 있다. 학생 모델(500)은 입력 데이터(550)와 출력 데이터(560)를 이용하여 학습되는데, 이 때 출력 데이터(560)는 복수의 교사 모델들 중에서 선택된 적어도 하나의 교사 모델이 입력 데이터(550)로부터 출력한 데이터를 나타낼 수 있다.5, the
도 2 내지 도 4에서는 출력 레이어(530)를 이용하여 학생 모델(500)을 학습시키는 과정을 중심으로 설명하였으나, 일실시예에 따른 모델 학습 장치는 출력 레이어(530)뿐만 아니라 히든 레이어(520)로부터 파생된 분류 레이어(540)도 함께 이용하여 학생 모델(500)을 학습시킬 수 있다.2 to 4, the model learning apparatus according to an embodiment of the present invention not only includes the
히든 레이어(520)는 신경망의 히든 노드들을 일정한 레벨 별로 묶어 놓은 것으로서, 입력 레이어(510)와 출력 레이어(530) 사이에 위치할 수 있다. 예를 들어, 히든 레이어(520)는 CNN(convolutional neural network)에서의 콘볼류션 필터(convolution filters) 또는 완전 연결 레이어(fully connected layer)이거나, 특별한 기능이나 특징을 기준으로 묶인 다양한 종류의 필터 또는 레이어를 나타낼 수 있다.The
분류 레이어(classifier layer)(540)는 히든 레이어(520)로부터 파생된 레이어일 수 있다. 분류 레이어(540)는 출력 레이어(530)와 마찬가지로 파생하는 히든 레이어(520)로부터 전달받은 값을 분석하여 미리 정해진 원소에 대응하는 출력 데이터를 출력할 수 있다. 이하, 설명의 편의를 위하여 분류 레이어 j(540-j)를 중심으로 학생 모델(500)이 학습되는 과정을 후술하나, 이러한 설명은 나머지 분류 레이어에도 동일하게 적용될 수 있다.The
모델 학습 장치는 분류 레이어 j(540-j)의 출력 데이터와 선택된 교사 모델의 출력 데이터(560) 사이의 손실을 더 이용하여 학생 모델(500)을 학습시킬 수 있다. 분류 레이어 j(540-j)의 출력 데이터와 선택된 교사 모델의 출력 데이터(560) 간의 손실은 수학식 1 내지 수학식 3을 통해 설명한 사항이 적용될 수 있다.The model learning apparatus can learn the
계산된 손실은 역 전파 기법을 통하여 파생한 히든 레이어 i(520-i)로 역 전파될 수 있다. 히든 레이어 i(520-i)는 파상된 분류 레이어 j(540-j)로부터 전달된 손실과 상위 히든 레이어 i+1로부터 전달된 손실에 기초하여 연결 가중치를 업데이트하고, 두 개의 손실을 합쳐서 하위 히든 레이어 i-1로 전달할 수 있다.The computed loss may be propagated back to the derived hidden layer i (520-i) through the back propagation technique. Hidden layer i (520-i) updates the link weight based on the loss delivered from the scrambled classification layer j (540-j) and the loss delivered from the superior layer i + 1, It can be passed to layer i-1.
분류 레이어 j(540-j)을 추가적으로 이용하여 학생 모델(500)을 학습시킬 때, 출력 레이어(530)와 분류 레이어 j(540-j)에서의 손실들은 서로 다른 방법에 기반하여 계산될 수 있다. 이하, 출력 레이어(530)에서의 손실을 제1 손실이라 하고, 분류 레이어 j(540-j)에서의 손실을 제2 손실이라 지칭한다. 그리고, 제1 손실을 계산할 때 이용되는 선택된 교사 모델의 출력 데이터를 제1 출력 데이터라 하고, 제2 손실을 계산할 때 이용되는 선택된 교사 모델의 출력 데이터를 제2 출력 데이터라 지칭한다.When learning the
모델 학습 장치는 서로 다른 방법에 기반하여 제1 손실과 제2 손실을 계산할 수 있다. 모델 학습 장치는 제1 출력 데이터와 제2 출력 데이터를 출력하는 선택된 교사 모델을 서로 다르게 설정할 수 있다. 예를 들어, 모델 학습 장치는 선택된 교사 모델 1로부터 출력된 제1 출력 데이터를 이용하여 제1 손실을 계산하고, 선택된 교사 모델 3으로부터 출력된 제2 출력 데이터를 이용하여 제2 손실을 계산할 수 있다.The model learning apparatus can calculate the first loss and the second loss based on different methods. The model learning apparatus can set different teacher models for outputting the first output data and the second output data. For example, the model learning apparatus can calculate the first loss using the first output data output from the selected
또는, 모델 학습 장치는 제1 출력 데이터와 제2 출력 데이터가 동일한 선택된 교사 모델로부터 출력된 경우라도 제1 출력 데이터와 제2 출력 데이터에 적용되는 가중치를 서로 다르게 결정할 수 있다. 예를 들어, 교사 모델 1과 교사 모델 3이 선택되어 제1 손실과 제2 손실이 계산되는 경우, 모델 학습 장치는 제1 손실을 계산할 때에는 교사 모델 1의 출력 데이터에 보다 큰 가중치를 설정하고, 제2 손실을 계산할 때에는 교사 모델 3의 출력 데이터에 보다 큰 가중치를 설정하여 제1 손실과 제2 손실을 계산할 수 있다. 또한, 모델 학습 장치는 출력 레이어(530)와 분류 레이어(540) 중에서 출력 레이어(530)에 가까운 레이어일수록 정답 데이터에 대한 가중치를 높게 설정하여 손실을 계산할 수 있다.Alternatively, even when the first output data and the second output data are output from the same selected teacher model, the model learning apparatus can determine the weights applied to the first output data and the second output data differently. For example, when the
또는, 모델 학습 장치는 출력 레이어(530)와 분류 레이어 j(540-j)의 초기 가중치를 서로 다르게 결정할 수 있다. 모델 학습 장치는 선택된 적어도 하나의 교사 모델 중에서 분류 레이어 j(540-j)의 초기 가중치를 분류 레이어 j(540-j)로 입력되는 데이터와 가장 유사한 사이즈를 가지는 선택된 교사 모델의 초기 가중치로 설정할 수 있다. 마찬가지로, 모델 학습 장치는 선택된 적어도 하나의 교사 모델 중에서 출력 레이어(530)의 초기 가중치를 출력 레이어(530)로 입력되는 데이터와 가장 유사한 사이즈를 가지는 선택된 교사 모델의 초기 가중치로 설정할 수 있다. 예를 들어, 분류 레이어 j(540-j)로 입력되는 데이터(예컨대, 입력 특징 맵)의 사이즈가 128인 경우, 선택된 적어도 하나의 교사 모델 중 가장 유사한 입력 사이즈를 가지는 선택된 교사 모델의 초기 가중치가 분류 레이어 j(540-j)의 초기 가중치로 설정될 수 있다.Alternatively, the model learning apparatus may determine the initial weights of the
예를 들어, 분류 레이어 j(540-j)에서의 손실은 다음과 같이 계산될 수 있다.For example, the loss at classification layer j (540-j) can be calculated as follows.
위의 수학식 4에서, 은 분류 레이어 j(540-j)에서의 손실을 계산하는 손실 함수를 나타내고, 은 선택된 교사 모델 l의 출력 데이터를 나타내고, 은 입력 데이터(550)에 대한 분류 레이어 j(540-j)의 출력 데이터를 나타낸다. 은 분류 레이어 j(540-j)의 출력 데이터 와 선택된 교사 모델 i의 출력 데이터 간의 엔트로피, 소프트맥스 함수 또는 유클리드 거리를 나타내고, 은 분류 레이어 j(540-j)의 출력 데이터 와 선택된 교사 모델 l의 출력 데이터 간의 엔트로피, 소프트맥스 함수 또는 유클리드 거리를 나타내며, 은 분류 레이어 j(540-j)의 출력 데이터 와 정답 데이터 간의 엔트로피, 소프트맥스 함수 또는 유클리드 거리를 나타낸다. , , 은 상수로서, 선택된 교사 모델 i의 출력 데이터 , 선택된 교사 모델 l의 출력 데이터 , 정답 데이터 에 적용되는 가중치를 각각 나타낸다.In Equation (4) above, Represents the loss function for calculating the loss in the classification layer j (540-j) Represents the output data of the selected teacher model l, Represents the output data of the classification layer j (540-j) with respect to the
이상, 출력 레이어(530)와 분류 레이어 j(540-j)를 중심으로 학생 모델(500)이 학습되는 과정을 설명하였으나, 상술한 사항들은 분류 레이어(540)에 포함된 나머지 분류 레이어들에도 동일하게 적용될 수 있다.Although the process of learning the
다시 말해, 모델 학습 장치는 복수의 분류 레이어들마다 서로 다른 방식을 적용하여 해당 분류 레이어에서의 손실을 계산할 수 있다. 예를 들어, 모델 학습 장치는 복수의 분류 레이어들마다 서로 다른 선택된 교사 모델로부터 출력된 출력 데이터를 이용하여 손실을 계산할 수 있다. 또한, 모델 학습 장치는 선택된 교사 모델들의 출력 데이터들에 적용되는 가중치를 복수의 분류 레이어들마다 서로 다르게 설정하여 손실을 계산할 수도 있다. 또한, 모델 학습 장치는 복수의 분류 레이어들마다 서로 다른 초기 가중치를 적용함으로써 손실을 계산할 수도 있다.In other words, the model learning apparatus can calculate the loss in the classification layer by applying different methods to each of the plurality of classification layers. For example, the model learning apparatus can calculate loss using output data output from different teacher models different for each of a plurality of classification layers. In addition, the model learning apparatus may calculate the loss by setting different weights applied to the output data of the selected teacher models for each of the plurality of classification layers. In addition, the model learning apparatus may calculate the loss by applying different initial weights for each of the plurality of classification layers.
도 6은 일실시예에 따른 모델 학습 방법을 나타낸 도면이다.6 is a diagram illustrating a model learning method according to an embodiment.
일실시예에 따른 모델 학습 방법은 모델 학습 장치에 구비된 프로세서에 의해 수행될 수 있다.The model learning method according to an embodiment may be performed by a processor included in the model learning apparatus.
단계(610)에서, 모델 학습 장치는 복수의 교사 모델들 중에서 적어도 하나를 선택한다. 복수의 교사 모델들은 서로 다른 초기 가중치를 가지거나, 서로 다른 신경망 구조를 가지거나, 서로 다른 하이퍼 파라미터가 적용되거나 또는 서로 다른 앙상블로 구성될 수 있다.In
모델 학습 장치는 복수의 교사 모델들의 정확도에 기반하여 복수의 교사 모델들 중에서 적어도 하나를 선택할 수 있다. 예를 들어, 모델 학습 장치는 복수의 교사 모델들 중에서 가장 높은 정확도를 가지는 교사 모델을 선택하거나 또는 임계 값 이상의 정확도를 가지는 교사 모델들을 선택할 수 있다. 또는, 모델 학습 장치는 정확도를 기준으로 복수의 교사 모델들을 나열하고, 정확도가 높은 순서대로 미리 정해진 k 개의 교사 모델들을 선택할 수도 있다.The model learning apparatus can select at least one of the plurality of teacher models based on the accuracy of the plurality of teacher models. For example, the model learning apparatus may select a teacher model having the highest accuracy among a plurality of teacher models, or may select teacher models having an accuracy higher than a threshold value. Alternatively, the model learning apparatus may list a plurality of teacher models on the basis of the accuracy and select k teacher models predetermined in order of accuracy.
또한, 모델 학습 장치는 입력 데이터에 대한 복수의 교사 모델들의 출력 데이터들 간의 상관도(correlation)에 기반하여 복수의 교사 모델들 중에서 둘 이상을 선택할 수 있다. 모델 학습 장치는 선택된 교사 모델들의 출력 데이터들 간의 상관도가 임계 값보다 낮도록 복수의 교사 모델들 중에서 둘 이상을 선택할 수 있다.In addition, the model learning apparatus can select two or more of the plurality of teacher models based on the correlation between the output data of the plurality of teacher models with respect to the input data. The model learning apparatus can select two or more of the plurality of teacher models so that the correlation between the output data of the selected teacher models is lower than the threshold value.
또한, 모델 학습 장치는 휴리스틱(heuristic)하게 복수의 교사 모델들 중에서 적어도 하나를 선택하는 입력을 사용자로부터 수신할 수도 있다.Further, the model learning apparatus may heuristically receive an input from the user to select at least one of a plurality of teacher models.
단계(620)에서, 모델 학습 장치는 입력 데이터에 대한 선택된 교사 모델의 출력 데이터에 기초하여 학생 모델을 학습시킨다. 모델 학습 장치는 입력 데이터에 대한 학생 모델의 출력 데이터와 선택된 교사 모델의 출력 데이터 사이의 손실에 기초하여 학생 모델을 학습시킬 수 있다.In
일실시예에 따른 모델 학습 장치는 학생 모델의 출력 데이터를 더 이용하여 학생 모델을 학습시킬 수 있다. 또한, 모델 학습 장치는 입력 데이터에 대응하는 정답 데이터를 더 이용하여 학생 모델을 학습시킬 수도 있다.The model learning apparatus according to the embodiment can further learn the student model by using the output data of the student model. Further, the model learning apparatus may further use the correct answer data corresponding to the input data to learn the student model.
모델 학습 장치는 입력 데이터에 대한 학생 모델의 출력 데이터와 선택된 적어도 하나의 교사 모델의 제1 출력 데이터 사이의 제1 손실과 학생 모델의 히든 레이어로부터 파생(derive)된 분류 레이어의 출력 데이터와 선택된 적어도 하나의 교사 모델의 제2 출력 데이터 사이의 제2 손실에 기초하여 학생 모델을 학습시킬 수 있다.The model learning apparatus includes a first loss between the output data of the student model for the input data and the first output data of the selected at least one teacher model and the output data of the classification layer derived from the hidden layer of the student model, The student model can be learned based on the second loss between the second output data of one teacher model.
이 때, 제1 손실과 제2 손실은 서로 다른 방법에 기반하여 결정될 수 있다. 제1 손실과 제2 손실은, 서로 다른 선택된 교사 모델들로부터 출력된 제1 출력 데이터와 제2 출력 데이터를 이용하여 결정되거나, 또는 제1 출력 데이터와 제2 출력 데이터에 서로 다른 가중치를 적용함으로써 결정될 수 있다. 그리고, 분류 레이어의 초기 가중치는 선택된 적어도 하나의 교사 모델 중에서 분류 레이어로 입력되는 데이터와 가장 유사한 사이즈를 가지는 선택된 교사 모델의 초기 가중치로 설정될 수 있다.At this time, the first loss and the second loss may be determined based on different methods. The first loss and the second loss are determined using the first output data and the second output data output from different selected teacher models or by applying different weights to the first output data and the second output data Can be determined. The initial weight of the classification layer may be set to the initial weight of the selected teacher model having the size most similar to the data input to the classification layer among the selected at least one teacher model.
일실시예에 따른 모델 학습 장치는 학생 모델의 구조를 선택된 교사 모델로 입력되는 데이터의 사이즈에 기초하여 결정할 수 있다. 모델 학습 장치는 선택된 교사 모델로 입력되는 데이터의 사이즈와 학생 모델로 입력되는 데이터의 사이즈 간의 차이에 기초하여 학생 모델의 구조를 변형할 수 있다. 예를 들어, 선택된 교사 모델로 입력되는 데이터의 사이즈가 64 픽셀 x 64 픽셀이고, 학생 모델로 입력되는 데이터의 사이즈가 32 픽셀 x 32 픽셀인 경우, 학생 모델이 선택된 교사 모델의 수용 영역(receptive field)과 동일 또는 유사한 수용 영역을 가지도록 학생 모델의 구조가 변형될 수 있다.The model learning apparatus according to one embodiment can determine the structure of the student model based on the size of data input to the selected teacher model. The model learning apparatus can modify the structure of the student model based on the difference between the size of the data input to the selected teacher model and the size of the data input to the student model. For example, if the size of the data input to the selected teacher model is 64 pixels x 64 pixels and the size of the data input to the student model is 32 pixels x 32 pixels, then the student model is the acceptance field of the selected teacher model The structure of the student model can be modified so as to have the same or similar coverage area as that of the student model.
모델 학습 장치는 학생 모델에 포함된 입력 레이어의 노드 개수, 히든 레이어 개수, 히든 레이어에 포함된 노드 개수 등을 선택된 교사 모델로 입력되는 데이터의 사이즈에 기초하여 변경할 수 있다.The model learning apparatus can change the number of nodes of the input layer included in the student model, the number of hidden layers, the number of nodes included in the hidden layer, and the like based on the size of data input to the selected teacher model.
단계(630)에서, 모델 학습 장치는 학생 모델이 미리 정해진 조건을 만족하는지 여부를 판단할 수 있다.In
일례로, 모델 학습 장치는 학생 모델의 정확도가 임계 값 이상인지 여부를 판단할 수 있다. 학생 모델의 정확도가 임계 값 미만인 경우, 모델 학습 장치는 단계들(610, 620)을 재 수행할 수 있다. 단계(610)가 재 수행될 때마다 복수의 교사 모델들 중에서 적어도 하나가 미리 정해진 기준에 따라 가변적으로 선택될 수 있다. 예를 들어, 단계(610)가 재 수행될 때, 이전 단계(620)에서 학생 모델을 학습시킬 때 이용되었던 교사 모델을 제외한 나머지 교사 모델들 중에서 적어도 하나가 선택될 수 있다. 이를 통해, 학생 모델이 하나의 교사 모델에 과대적합되는 것을 효과적으로 방지할 수 있다. 또한, 단계(620)에서 모델 학습 장치는 학생 모델에 대한 학습의 진행 정도(예컨대, 정확도)에 따라 선택된 교사 모델의 출력 데이터 및 정답 데이터에 적용되는 가중치를 제어할 수 있다. 예를 들어, 모델 학습 장치는 학생 모델의 학습이 진행됨에 따라 선택된 교사 모델의 출력 데이터에 대한 가중치보다 정답 데이터에 대한 가중치를 크게 설정할 수 있다. 반대로, 학생 모델의 정확도가 임계 값 이상인 경우, 모델 학습 장치는 학생 모델에 대한 학습을 종료할 수 있다.For example, the model learning device may determine whether the accuracy of the student model is above a threshold. If the accuracy of the student model is less than the threshold, the model learning device may redo
다른 일례로, 모델 학습 장치는 학생 모델에 대한 학습 횟수가 미리 설정된 반복 횟수를 만족하는지 여부를 판단할 수 있다. 학생 모델에 대한 학습 횟수가 미리 설정된 반복 횟수를 만족하지 않는 경우, 모델 학습 장치는 단계들(610, 620)을 재 수행할 수 있다. 이 경우에도, 단계(610)이 재 수행될 때마다 복수의 교사 모델들 중에서 적어도 하나가 미리 정해진 기준에 따라 가변적으로 선택될 수 있다. 반대로, 학생 모델에 대한 학습 횟수가 미리 설정된 반복 횟수를 만족하는 경우, 모델 학습 장치는 학생 모델에 대한 학습을 종료할 수 있다.In another example, the model learning apparatus can determine whether or not the number of learning times for the student model satisfies a preset number of repetitions. If the number of learning times for the student model does not satisfy the preset number of iterations, the model learning device can re-execute the
도 7은 일실시예에 따른 데이터 인식 방법을 나타낸 도면이다.7 is a diagram illustrating a data recognition method according to an embodiment of the present invention.
일실시예에 따른 데이터 인식 방법은 데이터 인식 장치에 구비된 프로세서에 의해 수행될 수 있다.The data recognition method according to an embodiment may be performed by a processor included in the data recognition apparatus.
단계(710)에서, 데이터 인식 장치는 인식하고자 하는 대상 데이터를 수신한다. 대상 데이터는 기 학습된 모델을 통해 인식하고자 하는 데이터로서, 예를 들어, 이미지 데이터, 비디오 데이터, 음성 데이터, 시계열 데이터(time-series data), 센서 데이터 또는 이들의 다양한 조합을 포함할 수 있다.In
단계(720)에서, 데이터 인식 장치는 기 학습된 모델을 이용하여 대상 데이터를 인식한다. 모델은 대상 데이터로부터 객체를 검출하거나, 분류하거나 또는 클러스터링(clustering)할 수 있는 신경망을 나타낼 수 있다.In
모델은 복수의 교사 모델들 중에서 적어도 하나를 선택하고, 입력 데이터에 대한 선택된 적어도 하나의 교사 모델의 출력 데이터를 이용함으로써 학습된다. 예를 들어, 모델은 입력 데이터에 대한 학생 모델의 출력 데이터와 선택된 적어도 하나의 교사 모델의 출력 데이터 사이의 손실에 기초하여 학습될 수 있다.The model is learned by selecting at least one of a plurality of teacher models and using output data of at least one teacher model selected for the input data. For example, the model may be learned based on the loss between the output data of the student model for the input data and the output data of the selected at least one teacher model.
이 때, 선택된 적어도 하나의 교사 모델은 복수의 교사 모델들의 정확도 또는 입력 데이터에 대한 복수의 교사 모델들의 출력 데이터들 간의 상관도에 기초하여 선택될 수 있다.At this time, the selected at least one teacher model can be selected based on the accuracy of the plurality of teacher models or the correlation between the output data of the plurality of teacher models to the input data.
또한, 모델은 (i) 입력 데이터에 대한 모델의 출력 데이터와 선택된 적어도 하나의 교사 모델의 제1 출력 데이터 사이의 제1 손실 및 (ii) 모델의 히든 레이어로부터 파생된 분류 레이어의 출력 데이터와 선택된 적어도 하나의 교사 모델의 제2 출력 데이터 사이의 제2 손실에 기초하여 학습될 수 있다. 이 때, 제1 손실과 제2 손실은 서로 다른 방법에 기반하여 결정될 수 있다.The model also includes (i) a first loss between the output data of the model for the input data and the first output data of the selected at least one teacher model, and (ii) the output data of the classification layer derived from the hidden layer of the model, And a second loss between second output data of at least one teacher model. At this time, the first loss and the second loss may be determined based on different methods.
대상 데이터를 인식하기 위한 모델을 학습시키는 과정에 대해서는 도 1 내지 도 6을 통하여 전술한 사항들이 그대로 적용되므로, 보다 상세한 설명은 생략한다.In the process of learning the model for recognizing the object data, the above-described matters are directly applied through FIG. 1 to FIG. 6, and a detailed description thereof will be omitted.
도 8은 일실시예에 따른 모델 학습 장치를 나타낸 도면이다.8 is a diagram illustrating a model learning apparatus according to an embodiment.
도 8을 참고하면, 모델 학습 장치(800)는 프로세서(810) 및 메모리(820)를 포함한다. 모델 학습 장치(800)는 데이터 인식을 위한 신경망을 학습시키는 장치로서, 단일 프로세서 또는 멀티 프로세서로 구현될 수 있다.Referring to FIG. 8, the
프로세서(810)는 복수의 교사 모델들 중에서 적어도 하나를 선택하고, 입력 데이터에 대한 선택된 적어도 하나의 교사 모델의 출력 데이터에 기초하여 학생 모델을 학습시킨다. 예를 들어, 프로세서(810)는 입력 데이터에 대한 학생 모델의 출력 데이터와 선택된 적어도 하나의 교사 모델의 출력 데이터 사이의 손실에 기초하여 학생 모델을 학습시킬 수 있다.The
프로세서(810)는 복수의 교사 모델들의 정확도 또는 입력 데이터에 대한 복수의 교사 모델들의 출력 데이터들 간의 상관도에 기초하여 복수의 교사 모델들 중에서 적어도 하나를 선택할 수 있다.The
프로세서(810)는 (i) 입력 데이터에 대한 학생 모델의 출력 데이터와 선택된 적어도 하나의 교사 모델의 제1 출력 데이터 사이의 제1 손실 및 (ii) 학생 모델의 히든 레이어로부터 파생된 분류 레이어의 출력 데이터와 선택된 적어도 하나의 교사 모델의 제2 출력 데이터 사이의 제2 손실에 기초하여 학생 모델을 학습시킬 수 있다. 이 때, 제1 손실과 제2 손실은 서로 다른 방법에 기반하여 결정될 수 있다.
입력 데이터는 학생 모델을 학습시키기 위한 학습 데이터로서, 예를 들어, 이미지 데이터, 음성 데이터, 또는 이들의 다양한 조합을 포함할 수 있다.The input data may be learning data for learning the student model, for example, image data, voice data, or various combinations thereof.
메모리(820)는 프로세서(810)에서 학습된 학생 모델을 저장한다.The
도 9는 일실시예에 따른 데이터 인식 장치를 나타낸 도면이다.9 is a diagram illustrating a data recognition apparatus according to an embodiment.
데이터 인식 장치(900)는 수신부(910) 및 프로세서(920)를 포함한다. 데이터 인식 장치는 기 학습된 모델을 통해 수신된 대상 데이터를 인식할 수 있는 장치로서, 예를 들어, 스마트 폰, 테블릿 컴퓨터, 랩톱 컴퓨터, 데스크톱 컴퓨터, 텔레비전, 웨어러블 장치, 보안 시스템, 스마트 홈 시스템 등 다양한 컴퓨팅 장치 및/또는 시스템에 탑재될 수 있다.The
수신부(910)는 인식하고자 하는 대상 데이터를 수신한다.The receiving
프로세서(920)는 기 학습된 모델을 이용하여 대상 데이터를 인식한다. 모델은 복수의 교사 모델들 중에서 적어도 하나를 선택하고, 입력 데이터에 대한 선택된 적어도 하나의 교사 모델의 출력 데이터를 이용함으로써 학습된다. 예를 들어, 모델은 입력 데이터에 대한 학생 모델의 출력 데이터와 선택된 적어도 하나의 교사 모델의 출력 데이터 사이의 손실에 기초하여 학습될 수 있다.The
실시예들은 복수의 교사 모델들 중에서 적어도 하나를 선택하여 학생 모델을 학습시킴으로써, 학생 모델의 학습 속도를 높이면서 학생 모델의 정확도를 효과적으로 향상시킬 수 있다.Embodiments can improve the accuracy of the student model by increasing the learning speed of the student model by learning at least one of the plurality of teacher models to learn the student model.
실시예들은 복수의 교사 모델들 중 적어도 하나가 미리 정해진 기준에 따라 가변적으로 선택됨으로써, 학생 모델이 특정 교사 모델에 과대적합(overfitting)되는 것을 방지할 수 있다.Embodiments can prevent at least one of the plurality of teacher models from being overfitted to a particular teacher model by variably selecting according to predetermined criteria.
실시예들은 학생 모델의 출력 레이어에서의 손실과 분류 레이어에서의 손실을 서로 다른 방법에 기반하여 계산함으로써, 학생 모델이 깊은 구조의 신경망이더라도 신경망 내의 연결 가중치를 효과적으로 업데이트시킬 수 있다.Embodiments can effectively update the connection weights in the neural network, even if the student model is a deeply structured neural network, by calculating the loss in the output layer and the loss in the classification layer of the student model based on different methods.
이상에서 설명된 실시예들은 하드웨어 구성요소, 소프트웨어 구성요소, 및/또는 하드웨어 구성요소 및 소프트웨어 구성요소의 조합으로 구현될 수 있다. 예를 들어, 실시예들에서 설명된 장치, 방법 및 구성요소는, 예를 들어, 프로세서, 콘트롤러, ALU(arithmetic logic unit), 디지털 신호 프로세서(digital signal processor), 마이크로컴퓨터, FPGA(field programmable gate array), PLU(programmable logic unit), 마이크로프로세서, 또는 명령(instruction)을 실행하고 응답할 수 있는 다른 어떠한 장치와 같이, 하나 이상의 범용 컴퓨터 또는 특수 목적 컴퓨터를 이용하여 구현될 수 있다. 처리 장치는 운영 체제(OS) 및 상기 운영 체제 상에서 수행되는 하나 이상의 소프트웨어 애플리케이션을 수행할 수 있다. 또한, 처리 장치는 소프트웨어의 실행에 응답하여, 데이터를 접근, 저장, 조작, 처리 및 생성할 수도 있다. 이해의 편의를 위하여, 처리 장치는 하나가 사용되는 것으로 설명된 경우도 있지만, 해당 기술분야에서 통상의 지식을 가진 자는, 처리 장치가 복수 개의 처리 요소(processing element) 및/또는 복수 유형의 처리 요소를 포함할 수 있음을 알 수 있다. 예를 들어, 처리 장치는 복수 개의 프로세서 또는 하나의 프로세서 및 하나의 콘트롤러를 포함할 수 있다. 또한, 병렬 프로세서(parallel processor)와 같은, 다른 처리 구성(processing configuration)도 가능하다.The embodiments described above may be implemented in hardware components, software components, and / or a combination of hardware components and software components. For example, the devices, methods, and components described in the embodiments may be implemented within a computer system, such as, for example, a processor, a controller, an arithmetic logic unit (ALU), a digital signal processor, such as an array, a programmable logic unit (PLU), a microprocessor, or any other device capable of executing and responding to instructions. The processing device may execute an operating system (OS) and one or more software applications running on the operating system. The processing device may also access, store, manipulate, process, and generate data in response to execution of the software. For ease of understanding, the processing apparatus may be described as being used singly, but those skilled in the art will recognize that the processing apparatus may have a plurality of processing elements and / As shown in FIG. For example, the processing unit may comprise a plurality of processors or one processor and one controller. Other processing configurations are also possible, such as a parallel processor.
소프트웨어는 컴퓨터 프로그램(computer program), 코드(code), 명령(instruction), 또는 이들 중 하나 이상의 조합을 포함할 수 있으며, 원하는 대로 동작하도록 처리 장치를 구성하거나 독립적으로 또는 결합적으로(collectively) 처리 장치를 명령할 수 있다. 소프트웨어 및/또는 데이터는, 처리 장치에 의하여 해석되거나 처리 장치에 명령 또는 데이터를 제공하기 위하여, 어떤 유형의 기계, 구성요소(component), 물리적 장치, 가상 장치(virtual equipment), 컴퓨터 저장 매체 또는 장치, 또는 전송되는 신호 파(signal wave)에 영구적으로, 또는 일시적으로 구체화(embody)될 수 있다. 소프트웨어는 네트워크로 연결된 컴퓨터 시스템 상에 분산되어서, 분산된 방법으로 저장되거나 실행될 수도 있다. 소프트웨어 및 데이터는 하나 이상의 컴퓨터 판독 가능 기록 매체에 저장될 수 있다.The software may include a computer program, code, instructions, or a combination of one or more of the foregoing, and may be configured to configure the processing device to operate as desired or to process it collectively or collectively Device can be commanded. The software and / or data may be in the form of any type of machine, component, physical device, virtual equipment, computer storage media, or device , Or may be permanently or temporarily embodied in a transmitted signal wave. The software may be distributed over a networked computer system and stored or executed in a distributed manner. The software and data may be stored on one or more computer readable recording media.
실시예에 따른 방법은 다양한 컴퓨터 수단을 통하여 수행될 수 있는 프로그램 명령 형태로 구현되어 컴퓨터 판독 가능 매체에 기록될 수 있다. 상기 컴퓨터 판독 가능 매체는 프로그램 명령, 데이터 파일, 데이터 구조 등을 단독으로 또는 조합하여 포함할 수 있다. 상기 매체에 기록되는 프로그램 명령은 실시예를 위하여 특별히 설계되고 구성된 것들이거나 컴퓨터 소프트웨어 당업자에게 공지되어 사용 가능한 것일 수도 있다. 컴퓨터 판독 가능 기록 매체의 예에는 하드 디스크, 플로피 디스크 및 자기 테이프와 같은 자기 매체(magnetic media), CD-ROM, DVD와 같은 광기록 매체(optical media), 플롭티컬 디스크(floptical disk)와 같은 자기-광 매체(magneto-optical media), 및 롬(ROM), 램(RAM), 플래시 메모리 등과 같은 프로그램 명령을 저장하고 수행하도록 특별히 구성된 하드웨어 장치가 포함된다. 프로그램 명령의 예에는 컴파일러에 의해 만들어지는 것과 같은 기계어 코드뿐만 아니라 인터프리터 등을 사용해서 컴퓨터에 의해서 실행될 수 있는 고급 언어 코드를 포함한다. 상기된 하드웨어 장치는 실시예의 동작을 수행하기 위해 하나 이상의 소프트웨어 모듈로서 작동하도록 구성될 수 있으며, 그 역도 마찬가지이다.The method according to an embodiment may be implemented in the form of a program command that can be executed through various computer means and recorded in a computer-readable medium. The computer-readable medium may include program instructions, data files, data structures, and the like, alone or in combination. The program instructions to be recorded on the medium may be those specially designed and configured for the embodiments or may be available to those skilled in the art of computer software. Examples of computer-readable media include magnetic media such as hard disks, floppy disks and magnetic tape; optical media such as CD-ROMs and DVDs; magnetic media such as floppy disks; Magneto-optical media, and hardware devices specifically configured to store and execute program instructions such as ROM, RAM, flash memory, and the like. Examples of program instructions include machine language code such as those produced by a compiler, as well as high-level language code that can be executed by a computer using an interpreter or the like. The hardware devices described above may be configured to operate as one or more software modules to perform the operations of the embodiments, and vice versa.
이상과 같이 실시예들이 비록 한정된 도면에 의해 설명되었으나, 해당 기술분야에서 통상의 지식을 가진 자라면 상기를 기초로 다양한 기술적 수정 및 변형을 적용할 수 있다. 예를 들어, 설명된 기술들이 설명된 방법과 다른 순서로 수행되거나, 및/또는 설명된 시스템, 구조, 장치, 회로 등의 구성요소들이 설명된 방법과 다른 형태로 결합 또는 조합되거나, 다른 구성요소 또는 균등물에 의하여 대치되거나 치환되더라도 적절한 결과가 달성될 수 있다.Although the embodiments have been described with reference to the drawings, various technical modifications and variations may be applied to those skilled in the art. For example, it is to be understood that the techniques described may be performed in a different order than the described methods, and / or that components of the described systems, structures, devices, circuits, Lt; / RTI > or equivalents, even if it is replaced or replaced.
Claims (20)
입력 데이터에 대한 상기 선택된 적어도 하나의 교사 모델의 출력 데이터에 기초하여 학생 모델(student model)을 학습시키는 단계
를 포함하는 모델 학습 방법.Selecting at least one of a plurality of teacher models; And
A step of learning a student model based on output data of at least one teacher model selected for input data
/ RTI >
상기 복수의 교사 모델들 중에서 적어도 하나를 선택하는 단계는,
상기 복수의 교사 모델들의 정확도에 기반하여 상기 복수의 교사 모델들 중에서 적어도 하나를 선택하는, 모델 학습 방법.The method according to claim 1,
Wherein selecting at least one of the plurality of teacher models comprises:
Wherein at least one of the plurality of teacher models is selected based on the accuracy of the plurality of teacher models.
상기 복수의 교사 모델들 중에서 적어도 하나를 선택하는 단계는,
상기 입력 데이터에 대한 상기 복수의 교사 모델들의 출력 데이터들 간의 상관도(correlation)에 기반하여 상기 복수의 교사 모델들 중에서 적어도 하나를 선택하는, 모델 학습 방법.The method according to claim 1,
Wherein selecting at least one of the plurality of teacher models comprises:
Wherein at least one of the plurality of teacher models is selected based on a correlation between output data of the plurality of teacher models with respect to the input data.
상기 복수의 교사 모델들 중에서 적어도 하나를 선택하는 단계는,
상기 선택된 적어도 하나의 교사 모델들의 출력 데이터들 간의 상관도가 임계 값보다 낮도록 상기 복수의 교사 모델들 중에서 적어도 하나를 선택하는, 모델 학습 방법.The method of claim 3,
Wherein selecting at least one of the plurality of teacher models comprises:
And selecting at least one of the plurality of teacher models so that the degree of correlation between the output data of the selected at least one teacher models is lower than the threshold value.
상기 학생 모델을 학습시키는 단계는,
상기 학생 모델의 출력 데이터를 더 이용하여 상기 학생 모델을 학습시키는, 모델 학습 방법.The method according to claim 1,
Wherein learning the student model comprises:
And the student model is further learned by using output data of the student model.
상기 복수의 교사 모델들 중에서 적어도 하나를 선택하는 단계, 상기 학생 모델을 학습시키는 단계는,
상기 학생 모델이 미리 정해진 조건을 만족할 때까지 반복적으로 수행되는, 모델 학습 방법.The method according to claim 1,
Selecting at least one of the plurality of teacher models,
And the student model is repeatedly performed until a predetermined condition is satisfied.
상기 학생 모델을 학습시키는 단계는,
상기 입력 데이터에 대한 상기 학생 모델의 출력 데이터와 상기 선택된 적어도 하나의 교사 모델의 제1 출력 데이터 사이의 제1 손실; 및
상기 학생 모델의 히든 레이어로부터 파생(derive)된 분류 레이어의 출력 데이터와 상기 선택된 적어도 하나의 교사 모델의 제2 출력 데이터 사이의 제2 손실
에 기초하여 상기 학생 모델을 학습시키고,
상기 제1 손실과 상기 제2 손실은, 서로 다른 방법에 기반하여 결정되는, 모델 학습 방법.The method according to claim 1,
Wherein learning the student model comprises:
A first loss between output data of the student model for the input data and first output data of the selected at least one teacher model; And
A second loss between the output data of the classification layer derived from the hidden layer of the student model and the second output data of the selected at least one teacher model
Learning the student model based on the student model,
Wherein the first loss and the second loss are determined based on different methods.
상기 제1 손실과 상기 제2 손실은, 서로 다른 선택된 교사 모델들로부터 출력된 제1 출력 데이터와 제2 출력 데이터를 이용하여 결정되는, 모델 학습 방법.8. The method of claim 7,
Wherein the first loss and the second loss are determined using first output data and second output data output from different selected teacher models.
상기 제1 손실과 상기 제2 손실은, 상기 제1 출력 데이터와 상기 제2 출력 데이터에 서로 다른 가중치를 적용함으로써 결정되는, 모델 학습 방법.8. The method of claim 7,
Wherein the first loss and the second loss are determined by applying different weights to the first output data and the second output data.
상기 분류 레이어의 초기 가중치는,
상기 선택된 적어도 하나의 교사 모델들 중에서 상기 분류 레이어로 입력되는 데이터와 가장 유사한 사이즈를 가지는 선택된 교사 모델의 초기 가중치로 설정되는, 모델 학습 방법.8. The method of claim 7,
Wherein the initial weight of the classification layer
Wherein the initial weight is set to an initial weight of a selected teacher model having a size most similar to data input to the classification layer among the selected at least one teacher models.
상기 학생 모델을 학습시키는 단계는,
상기 입력 데이터에 대응하는 정답 데이터를 더 이용하여 상기 학생 모델을 학습시키는, 모델 학습 방법.The method according to claim 1,
Wherein learning the student model comprises:
And the student model is further learned by using the correct answer data corresponding to the input data.
상기 복수의 교사 모델들은,
서로 다른 초기 가중치(initial weight)를 가지거나, 서로 다른 신경망 구조를 가지거나, 서로 다른 하이퍼 파라미터(hyper parameter)가 적용되거나 또는 서로 다른 앙상블(ensemble)로 구성되는, 모델 학습 방법.The method according to claim 1,
Wherein the plurality of teacher models include:
Wherein the model learning method has different initial weights, different neural network structures, different hyper parameters, or different ensembles.
상기 학생 모델의 구조는,
상기 선택된 적어도 하나의 교사 모델로 입력되는 데이터의 사이즈에 기초하여 결정되는, 모델 학습 방법.The method according to claim 1,
The structure of the student model,
Wherein the at least one teacher model is determined based on a size of data input to the selected at least one teacher model.
기 학습된 모델을 이용하여 상기 대상 데이터를 인식하는 단계
를 포함하고,
상기 모델은,
복수의 교사 모델들 중에서 적어도 하나를 선택하고, 입력 데이터에 대한 상기 선택된 적어도 하나의 교사 모델의 출력 데이터를 이용함으로써 학습된, 데이터 인식 방법.Receiving target data to be recognized; And
A step of recognizing the target data using the learned model
Lt; / RTI >
In the model,
Wherein at least one of the plurality of teacher models is selected and the output data of the selected at least one teacher model for the input data is used.
상기 선택된 적어도 하나의 교사 모델은,
상기 복수의 교사 모델들의 정확도 또는 상기 입력 데이터에 대한 상기 복수의 교사 모델들의 출력 데이터들 간의 상관도에 기초하여 선택되는, 데이터 인식 방법.15. The method of claim 14,
Wherein the at least one selected teacher model comprises:
Wherein the plurality of teacher models are selected based on the accuracy of the plurality of teacher models or the correlation between the output data of the plurality of teacher models to the input data.
상기 모델은,
상기 입력 데이터에 대한 상기 모델의 출력 데이터와 상기 선택된 적어도 하나의 교사 모델의 제1 출력 데이터 사이의 제1 손실; 및
상기 모델의 히든 레이어로부터 파생된 분류 레이어의 출력 데이터와 상기 선택된 적어도 하나의 교사 모델의 제2 출력 데이터 사이의 제2 손실
에 기초하여 학습되고,
상기 제1 손실과 상기 제2 손실은, 서로 다른 방법에 기반하여 결정되는, 데이터 인식 방법.15. The method of claim 14,
In the model,
A first loss between output data of the model for the input data and first output data of the selected at least one teacher model; And
A second loss between the output data of the classification layer derived from the hidden layer of the model and the second output data of the selected at least one teacher model
, ≪ / RTI >
Wherein the first loss and the second loss are determined based on different methods.
상기 학습된 학생 모델을 저장하는 메모리
를 포함하고,
상기 프로세서는,
복수의 교사 모델들 중에서 적어도 하나를 선택하고, 입력 데이터에 대한 상기 선택된 적어도 하나의 교사 모델의 출력 데이터에 기초하여 상기 학생 모델을 학습시키는 모델 학습 장치.A processor that learns the student model; And
A memory for storing the learned student model
Lt; / RTI >
The processor comprising:
Wherein at least one of the plurality of teacher models is selected and the student model is learned based on output data of the selected at least one teacher model for the input data.
상기 프로세서는,
상기 복수의 교사 모델들의 정확도 또는 상기 입력 데이터에 대한 상기 복수의 교사 모델들의 출력 데이터들 간의 상관도에 기초하여 상기 복수의 교사 모델들 중에서 적어도 하나를 선택하는, 모델 학습 장치.19. The method of claim 18,
The processor comprising:
And selects at least one of the plurality of teacher models based on the degree of correlation between the accuracy of the plurality of teacher models or the output data of the plurality of teacher models to the input data.
상기 프로세서는,
상기 입력 데이터에 대한 상기 학생 모델의 출력 데이터와 상기 선택된 적어도 하나의 교사 모델의 제1 출력 데이터 사이의 제1 손실; 및
상기 학생 모델의 히든 레이어로부터 파생된 분류 레이어의 출력 데이터와 상기 선택된 적어도 하나의 교사 모델의 제2 출력 데이터 사이의 제2 손실
에 기초하여 상기 학생 모델을 학습시키고,
상기 제1 손실과 상기 제2 손실은, 서로 다른 방법에 기반하여 결정되는, 모델 학습 장치.19. The method of claim 18,
The processor comprising:
A first loss between output data of the student model for the input data and first output data of the selected at least one teacher model; And
A second loss between the output data of the classification layer derived from the hidden layer of the student model and the second output data of the selected at least one teacher model
Learning the student model based on the student model,
Wherein the first loss and the second loss are determined based on different methods.
Priority Applications (4)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
KR1020150132679A KR102492318B1 (en) | 2015-09-18 | 2015-09-18 | Model training method and apparatus, and data recognizing method |
US15/161,906 US10410114B2 (en) | 2015-09-18 | 2016-05-23 | Model training method and apparatus, and data recognizing method |
EP16180282.2A EP3144859A3 (en) | 2015-09-18 | 2016-07-20 | Model training method and apparatus, and data recognizing method |
CN201610711793.7A CN106548190A (en) | 2015-09-18 | 2016-08-23 | Model training method and equipment and data identification method |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
KR1020150132679A KR102492318B1 (en) | 2015-09-18 | 2015-09-18 | Model training method and apparatus, and data recognizing method |
Publications (2)
Publication Number | Publication Date |
---|---|
KR20170034258A true KR20170034258A (en) | 2017-03-28 |
KR102492318B1 KR102492318B1 (en) | 2023-01-26 |
Family
ID=56507418
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
KR1020150132679A KR102492318B1 (en) | 2015-09-18 | 2015-09-18 | Model training method and apparatus, and data recognizing method |
Country Status (4)
Country | Link |
---|---|
US (1) | US10410114B2 (en) |
EP (1) | EP3144859A3 (en) |
KR (1) | KR102492318B1 (en) |
CN (1) | CN106548190A (en) |
Cited By (21)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
KR20190048895A (en) | 2017-10-31 | 2019-05-09 | 삼성에스디에스 주식회사 | Method For optimizing hyper-parameter automatically and Apparatus thereof |
KR20190051619A (en) * | 2017-11-07 | 2019-05-15 | 재단법인대구경북과학기술원 | Image data processing apparatus using ensamble and fine tunning and controlling method thereof |
KR20190113078A (en) | 2018-03-27 | 2019-10-08 | 울산대학교 산학협력단 | Apparatus and method for processing image |
KR102037279B1 (en) * | 2019-02-11 | 2019-11-15 | 주식회사 딥노이드 | Deep learning system and method for determining optimum learning model |
KR20190137470A (en) * | 2018-06-01 | 2019-12-11 | 아주대학교산학협력단 | Method and apparatus for compressing large capacity networks |
WO2019235821A1 (en) * | 2018-06-05 | 2019-12-12 | 네이버 주식회사 | Optimization technique for forming dnn capable of performing real-time inferences in mobile environment |
KR20200005206A (en) * | 2018-07-06 | 2020-01-15 | 에임시스템 주식회사 | System and method for fault classification of equipment based on machine learning |
KR20200021301A (en) | 2018-08-20 | 2020-02-28 | 삼성에스디에스 주식회사 | Method for optimizing hyper-paramterand apparatus for |
CN111046891A (en) * | 2018-10-11 | 2020-04-21 | 杭州海康威视数字技术股份有限公司 | Training method of license plate recognition model, and license plate recognition method and device |
KR20200077162A (en) * | 2018-12-20 | 2020-06-30 | 주식회사 마인즈랩 | A method and computer program of learning a second neural network using a first neural network |
CN111461212A (en) * | 2020-03-31 | 2020-07-28 | 中国科学院计算技术研究所 | Compression method for point cloud target detection model |
KR102191351B1 (en) * | 2020-04-28 | 2020-12-15 | 아주대학교산학협력단 | Method for semantic segmentation based on knowledge distillation |
WO2021033792A1 (en) * | 2019-08-19 | 2021-02-25 | 엘지전자 주식회사 | Ai-based pre-training model determination system, and ai-based vision inspection management system using same for product production lines |
KR102225579B1 (en) * | 2020-05-14 | 2021-03-10 | 아주대학교산학협력단 | Method for semantic segmentation based on knowledge distillation with improved learning performance |
WO2021060899A1 (en) * | 2019-09-26 | 2021-04-01 | 주식회사 루닛 | Training method for specializing artificial intelligence model in institution for deployment, and apparatus for training artificial intelligence model |
KR102277810B1 (en) * | 2020-11-03 | 2021-07-15 | 아주대학교산학협력단 | System and method for learning of student network using knowledge distillation |
WO2021182748A1 (en) * | 2020-03-10 | 2021-09-16 | 삼성전자주식회사 | Electronic device and control method thereof |
US11244671B2 (en) | 2019-05-09 | 2022-02-08 | Samsung Electronics Co., Ltd. | Model training method and apparatus |
KR20220091713A (en) * | 2020-12-24 | 2022-07-01 | 포항공과대학교 산학협력단 | Radar-based detection system and method for domain adaptation |
US11694696B2 (en) | 2019-03-25 | 2023-07-04 | Samsung Electronics Co.. Ltd. | Method and apparatus for implementing speaker identification neural network |
KR102597288B1 (en) * | 2022-12-15 | 2023-11-02 | 주식회사 포도 | Apparatus and method for lightenig lidar point cloud data classifier |
Families Citing this family (102)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US11062228B2 (en) | 2015-07-06 | 2021-07-13 | Microsoft Technoiogy Licensing, LLC | Transfer learning techniques for disparate label sets |
US10878320B2 (en) | 2015-07-22 | 2020-12-29 | Qualcomm Incorporated | Transfer learning in neural networks |
US11081105B2 (en) * | 2016-09-16 | 2021-08-03 | Nippon Telegraph And Telephone Corporation | Model learning device, method and recording medium for learning neural network model |
EP3520038A4 (en) | 2016-09-28 | 2020-06-03 | D5A1 Llc | Learning coach for machine learning system |
JP2018060268A (en) * | 2016-10-03 | 2018-04-12 | 株式会社日立製作所 | Recognition device and learning system |
CN106778867B (en) * | 2016-12-15 | 2020-07-07 | 北京旷视科技有限公司 | Target detection method and device, and neural network training method and device |
US10762417B2 (en) * | 2017-02-10 | 2020-09-01 | Synaptics Incorporated | Efficient connectionist temporal classification for binary classification |
US11087213B2 (en) * | 2017-02-10 | 2021-08-10 | Synaptics Incorporated | Binary and multi-class classification systems and methods using one spike connectionist temporal classification |
US11080600B2 (en) * | 2017-02-10 | 2021-08-03 | Synaptics Incorporated | Recurrent neural network based acoustic event classification using complement rule |
US11100932B2 (en) * | 2017-02-10 | 2021-08-24 | Synaptics Incorporated | Robust start-end point detection algorithm using neural network |
US10762891B2 (en) * | 2017-02-10 | 2020-09-01 | Synaptics Incorporated | Binary and multi-class classification systems and methods using connectionist temporal classification |
US11853884B2 (en) * | 2017-02-10 | 2023-12-26 | Synaptics Incorporated | Many or one detection classification systems and methods |
US10762427B2 (en) * | 2017-03-01 | 2020-09-01 | Synaptics Incorporated | Connectionist temporal classification using segmented labeled sequence data |
US11514465B2 (en) * | 2017-03-02 | 2022-11-29 | The Nielsen Company (Us), Llc | Methods and apparatus to perform multi-level hierarchical demographic classification |
WO2018175098A1 (en) * | 2017-03-24 | 2018-09-27 | D5Ai Llc | Learning coach for machine learning system |
US11195093B2 (en) | 2017-05-18 | 2021-12-07 | Samsung Electronics Co., Ltd | Apparatus and method for student-teacher transfer learning network using knowledge bridge |
CN108230354B (en) * | 2017-05-18 | 2022-05-10 | 深圳市商汤科技有限公司 | Target tracking method, network training method, device, electronic equipment and storage medium |
EP3602413B1 (en) * | 2017-05-20 | 2022-10-19 | Google LLC | Projection neural networks |
US11410044B2 (en) | 2017-05-20 | 2022-08-09 | Google Llc | Application development platform and software development kits that provide comprehensive machine learning services |
CN108334934B (en) * | 2017-06-07 | 2021-04-13 | 赛灵思公司 | Convolutional neural network compression method based on pruning and distillation |
US10453444B2 (en) * | 2017-07-27 | 2019-10-22 | Microsoft Technology Licensing, Llc | Intent and slot detection for digital assistants |
US10885900B2 (en) * | 2017-08-11 | 2021-01-05 | Microsoft Technology Licensing, Llc | Domain adaptation in speech recognition via teacher-student learning |
CN107808120B (en) * | 2017-09-30 | 2018-08-31 | 平安科技(深圳)有限公司 | Glasses localization method, device and storage medium |
US10962979B2 (en) * | 2017-09-30 | 2021-03-30 | Tusimple, Inc. | System and method for multitask processing for autonomous vehicle computation and control |
CN107944375A (en) * | 2017-11-20 | 2018-04-20 | 北京奇虎科技有限公司 | Automatic Pilot processing method and processing device based on scene cut, computing device |
CN111492382A (en) * | 2017-11-20 | 2020-08-04 | 皇家飞利浦有限公司 | Training a first neural network model and a second neural network model |
CN107945188A (en) * | 2017-11-20 | 2018-04-20 | 北京奇虎科技有限公司 | Personage based on scene cut dresss up method and device, computing device |
CN107832799A (en) * | 2017-11-20 | 2018-03-23 | 北京奇虎科技有限公司 | Object identifying method and device, computing device based on camera scene |
CN107944374A (en) * | 2017-11-20 | 2018-04-20 | 北京奇虎科技有限公司 | Special object detection method and device, computing device in video data |
CN107944376A (en) * | 2017-11-20 | 2018-04-20 | 北京奇虎科技有限公司 | The recognition methods of video data real-time attitude and device, computing device |
CN108171716B (en) * | 2017-12-25 | 2021-11-26 | 北京奇虎科技有限公司 | Video character decorating method and device based on self-adaptive tracking frame segmentation |
CN108280513B (en) * | 2018-01-22 | 2022-08-19 | 百度在线网络技术(北京)有限公司 | Model generation method and device |
CN108256646A (en) * | 2018-01-22 | 2018-07-06 | 百度在线网络技术(北京)有限公司 | model generating method and device |
CN110097191B (en) * | 2018-01-29 | 2024-02-27 | 松下电器(美国)知识产权公司 | Information processing method and information processing system |
CN110395257B (en) * | 2018-04-20 | 2021-04-23 | 北京图森未来科技有限公司 | Lane line example detection method and device and automatic driving vehicle |
CN108830288A (en) * | 2018-04-25 | 2018-11-16 | 北京市商汤科技开发有限公司 | Image processing method, the training method of neural network, device, equipment and medium |
CN108647720A (en) * | 2018-05-10 | 2018-10-12 | 上海扩博智能技术有限公司 | Iterative cycles recognition methods, system, equipment and the storage medium of commodity image |
US10699194B2 (en) * | 2018-06-01 | 2020-06-30 | DeepCube LTD. | System and method for mimicking a neural network without access to the original training dataset or the target model |
US11907854B2 (en) | 2018-06-01 | 2024-02-20 | Nano Dimension Technologies, Ltd. | System and method for mimicking a neural network without access to the original training dataset or the target model |
US11416741B2 (en) * | 2018-06-08 | 2022-08-16 | International Business Machines Corporation | Teacher and student learning for constructing mixed-domain model |
CN110598840B (en) * | 2018-06-13 | 2023-04-18 | 富士通株式会社 | Knowledge migration method, information processing apparatus, and storage medium |
US11741355B2 (en) | 2018-07-27 | 2023-08-29 | International Business Machines Corporation | Training of student neural network with teacher neural networks |
US11610108B2 (en) * | 2018-07-27 | 2023-03-21 | International Business Machines Corporation | Training of student neural network with switched teacher neural networks |
US10885277B2 (en) | 2018-08-02 | 2021-01-05 | Google Llc | On-device neural networks for natural language understanding |
CN110837761B (en) * | 2018-08-17 | 2023-04-07 | 北京市商汤科技开发有限公司 | Multi-model knowledge distillation method and device, electronic equipment and storage medium |
US10963748B1 (en) * | 2018-08-31 | 2021-03-30 | Snap Inc. | Generative neural network distillation |
CN109165738B (en) * | 2018-09-19 | 2021-09-14 | 北京市商汤科技开发有限公司 | Neural network model optimization method and device, electronic device and storage medium |
KR20200045128A (en) * | 2018-10-22 | 2020-05-04 | 삼성전자주식회사 | Model training method and apparatus, and data recognizing method |
US20200134444A1 (en) | 2018-10-31 | 2020-04-30 | Sony Interactive Entertainment Inc. | Systems and methods for domain adaptation in neural networks |
US11640519B2 (en) | 2018-10-31 | 2023-05-02 | Sony Interactive Entertainment Inc. | Systems and methods for domain adaptation in neural networks using cross-domain batch normalization |
US11494612B2 (en) | 2018-10-31 | 2022-11-08 | Sony Interactive Entertainment Inc. | Systems and methods for domain adaptation in neural networks using domain classifier |
US10657447B1 (en) * | 2018-11-29 | 2020-05-19 | SparkCognition, Inc. | Automated model building search space reduction |
US11775812B2 (en) * | 2018-11-30 | 2023-10-03 | Samsung Electronics Co., Ltd. | Multi-task based lifelong learning |
CN109615989B (en) * | 2018-12-03 | 2021-10-01 | 合肥凌极西雅电子科技有限公司 | Data mining teaching device |
CN109754089B (en) * | 2018-12-04 | 2021-07-20 | 浙江大华技术股份有限公司 | Model training system and method |
CN109783824B (en) * | 2018-12-17 | 2023-04-18 | 北京百度网讯科技有限公司 | Translation method, device and storage medium based on translation model |
CN109948642B (en) * | 2019-01-18 | 2023-03-28 | 中山大学 | Multi-agent cross-modal depth certainty strategy gradient training method based on image input |
US11763154B1 (en) * | 2019-01-30 | 2023-09-19 | Amazon Technologies, Inc. | Machine learning services with pre-trained models |
CN109858614B (en) * | 2019-01-31 | 2021-06-25 | 北京市商汤科技开发有限公司 | Neural network training method and device, electronic equipment and storage medium |
CN111368996B (en) | 2019-02-14 | 2024-03-12 | 谷歌有限责任公司 | Retraining projection network capable of transmitting natural language representation |
CN109886343B (en) * | 2019-02-26 | 2024-01-05 | 深圳市商汤科技有限公司 | Image classification method and device, equipment and storage medium |
WO2020194077A1 (en) * | 2019-03-22 | 2020-10-01 | International Business Machines Corporation | Unification of models having respective target classes with distillation |
US10614345B1 (en) | 2019-04-12 | 2020-04-07 | Ernst & Young U.S. Llp | Machine learning based extraction of partition objects from electronic documents |
US20200334520A1 (en) * | 2019-04-19 | 2020-10-22 | Microsoft Technology Licensing, Llc | Multi-task machine learning architectures and training procedures |
US11113518B2 (en) | 2019-06-28 | 2021-09-07 | Eygs Llp | Apparatus and methods for extracting data from lineless tables using Delaunay triangulation and excess edge removal |
US11915465B2 (en) | 2019-08-21 | 2024-02-27 | Eygs Llp | Apparatus and methods for converting lineless tables into lined tables using generative adversarial networks |
US20210056425A1 (en) * | 2019-08-23 | 2021-02-25 | Samsung Electronics Co., Ltd. | Method and system for hybrid model including machine learning model and rule-based model |
CN110516677A (en) * | 2019-08-23 | 2019-11-29 | 上海云绅智能科技有限公司 | A kind of neural network recognization model, target identification method and system |
KR20210042696A (en) * | 2019-10-10 | 2021-04-20 | 삼성전자주식회사 | Apparatus and method for learning model |
CN110826344B (en) * | 2019-10-24 | 2022-03-01 | 北京小米智能科技有限公司 | Neural network model compression method, corpus translation method and apparatus thereof |
US11443235B2 (en) * | 2019-11-14 | 2022-09-13 | International Business Machines Corporation | Identifying optimal weights to improve prediction accuracy in machine learning techniques |
US11922303B2 (en) * | 2019-11-18 | 2024-03-05 | Salesforce, Inc. | Systems and methods for distilled BERT-based training model for text classification |
US11604984B2 (en) * | 2019-11-18 | 2023-03-14 | Shanghai United Imaging Intelligence Co., Ltd. | Systems and methods for machine learning based modeling |
US10810709B1 (en) | 2019-11-21 | 2020-10-20 | Eygs Llp | Systems and methods for improving the quality of text documents using artificial intelligence |
CN111126079B (en) * | 2019-11-25 | 2023-11-07 | 北京小米智能科技有限公司 | Neural network model compression method, device and storage medium for machine translation |
CN111159397B (en) * | 2019-12-04 | 2023-04-18 | 支付宝(杭州)信息技术有限公司 | Text classification method and device and server |
CN111143552B (en) * | 2019-12-05 | 2023-06-27 | 支付宝(杭州)信息技术有限公司 | Text information category prediction method and device and server |
US11455555B1 (en) * | 2019-12-31 | 2022-09-27 | Meta Platforms, Inc. | Methods, mediums, and systems for training a model |
US11625934B2 (en) | 2020-02-04 | 2023-04-11 | Eygs Llp | Machine learning based end-to-end extraction of tables from electronic documents |
US11430124B2 (en) * | 2020-06-24 | 2022-08-30 | Samsung Electronics Co., Ltd. | Visual object instance segmentation using foreground-specialized model imitation |
US11588735B2 (en) * | 2020-07-29 | 2023-02-21 | Micron Technology, Inc. | Edge processing of sensor data using a neural network to reduce data traffic on a communication network |
US11915122B2 (en) | 2020-07-29 | 2024-02-27 | Micron Technology, Inc. | Gateway for distributing an artificial neural network among multiple processing nodes |
CN111931057A (en) * | 2020-08-18 | 2020-11-13 | 中国科学院深圳先进技术研究院 | Sequence recommendation method and system for self-adaptive output |
CN111967941B (en) * | 2020-08-20 | 2024-01-05 | 中国科学院深圳先进技术研究院 | Method for constructing sequence recommendation model and sequence recommendation method |
CN112183577A (en) * | 2020-08-31 | 2021-01-05 | 华为技术有限公司 | Training method of semi-supervised learning model, image processing method and equipment |
US20220076136A1 (en) * | 2020-09-09 | 2022-03-10 | Peyman PASSBAN | Method and system for training a neural network model using knowledge distillation |
US20220092404A1 (en) * | 2020-09-18 | 2022-03-24 | Arm Cloud Technology, Inc. | Neural network selection |
CN112308130B (en) * | 2020-10-29 | 2021-10-15 | 成都千嘉科技有限公司 | Deployment method of deep learning network of Internet of things |
CN112507209B (en) * | 2020-11-10 | 2022-07-05 | 中国科学院深圳先进技术研究院 | Sequence recommendation method for knowledge distillation based on land moving distance |
CN112488209B (en) * | 2020-11-25 | 2024-02-20 | 南京大学 | Incremental picture classification method based on semi-supervised learning |
US20220171929A1 (en) * | 2020-12-01 | 2022-06-02 | Rovi Guides, Inc. | Systems and methods to support a new locale in a language model |
CN112257815A (en) * | 2020-12-03 | 2021-01-22 | 北京沃东天骏信息技术有限公司 | Model generation method, target detection method, device, electronic device, and medium |
US20230229890A1 (en) * | 2020-12-10 | 2023-07-20 | Baidu Usa Llc | Training of deployed neural networks |
CN112508120B (en) * | 2020-12-18 | 2023-10-10 | 北京百度网讯科技有限公司 | Student model training method, device, equipment, medium and program product |
GB2602976B (en) * | 2021-01-20 | 2023-08-23 | Toshiba Kk | Speech recognition systems and methods |
CN115220875A (en) * | 2021-04-15 | 2022-10-21 | 微软技术许可有限责任公司 | Performing multiple tasks with continuous adaptation |
CN113255798A (en) * | 2021-06-02 | 2021-08-13 | 苏州浪潮智能科技有限公司 | Classification model training method, device, equipment and medium |
CN113449851A (en) * | 2021-07-15 | 2021-09-28 | 北京字跳网络技术有限公司 | Data processing method and device |
CN113609965B (en) * | 2021-08-03 | 2024-02-13 | 同盾科技有限公司 | Training method and device of character recognition model, storage medium and electronic equipment |
CN115700845B (en) * | 2022-11-15 | 2023-08-11 | 智慧眼科技股份有限公司 | Face recognition model training method, face recognition device and related equipment |
CN117274615B (en) * | 2023-09-21 | 2024-03-22 | 书行科技(北京)有限公司 | Human body action prediction method and related products |
CN117132174B (en) * | 2023-10-26 | 2024-01-30 | 扬宇光电(深圳)有限公司 | Model training method and system applied to quality detection of industrial assembly line |
Family Cites Families (14)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
TWI223792B (en) | 2003-04-04 | 2004-11-11 | Penpower Technology Ltd | Speech model training method applied in speech recognition |
US7499857B2 (en) | 2003-05-15 | 2009-03-03 | Microsoft Corporation | Adaptation of compressed acoustic models |
US7856321B2 (en) * | 2004-12-16 | 2010-12-21 | Numerate, Inc. | Modeling biological effects of molecules using molecular property models |
US7363225B2 (en) | 2005-06-23 | 2008-04-22 | Microsoft Corporation | Compressing language models with Golomb coding |
KR20070011051A (en) | 2005-07-18 | 2007-01-24 | 엘지전자 주식회사 | Method for changing a probability state in entropy coding/decoding |
US8612225B2 (en) | 2007-02-28 | 2013-12-17 | Nec Corporation | Voice recognition device, voice recognition method, and voice recognition program |
US8209178B1 (en) | 2008-01-10 | 2012-06-26 | Google Inc. | Randomized language models |
CN102067610B (en) | 2008-06-16 | 2013-07-10 | 杜比实验室特许公司 | Rate control model adaptation based on slice dependencies for video coding |
JP2010176327A (en) | 2009-01-28 | 2010-08-12 | Sony Corp | Learning device, learning method, information-processing device, data-selecting method, data-accumulating method, data-converting method, and program |
JP5861649B2 (en) | 2011-02-03 | 2016-02-16 | 日本電気株式会社 | Model adaptation device, model adaptation method, and model adaptation program |
JP5982265B2 (en) | 2012-11-16 | 2016-08-31 | 日本電信電話株式会社 | Speech recognition apparatus, speech recognition method, and program |
KR20140077423A (en) | 2012-12-14 | 2014-06-24 | 한국전자통신연구원 | Speech model storing method of the Multi-Model based Speech Recognition |
US9406017B2 (en) | 2012-12-24 | 2016-08-02 | Google Inc. | System and method for addressing overfitting in a neural network |
US9728184B2 (en) | 2013-06-18 | 2017-08-08 | Microsoft Technology Licensing, Llc | Restructuring deep neural network acoustic models |
-
2015
- 2015-09-18 KR KR1020150132679A patent/KR102492318B1/en active IP Right Grant
-
2016
- 2016-05-23 US US15/161,906 patent/US10410114B2/en active Active
- 2016-07-20 EP EP16180282.2A patent/EP3144859A3/en not_active Ceased
- 2016-08-23 CN CN201610711793.7A patent/CN106548190A/en active Pending
Non-Patent Citations (3)
Title |
---|
Cristian Bucila et al., "Model Compression," KDD’06 (2006.08.20.)* * |
Geoffrey Hinton et al., "Distilling the Knowledge in a Neural Network," arXiv:1503.02531v1 [stat.ML] 9 Mar 2015 (2015.03.09.)* * |
Rich Caruana et al., "Ensemble Selection from Libraries of Models," Proceedings of the 21 st International Conference on Machine Learning (2014.07.04.)* * |
Cited By (25)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
KR20190048895A (en) | 2017-10-31 | 2019-05-09 | 삼성에스디에스 주식회사 | Method For optimizing hyper-parameter automatically and Apparatus thereof |
KR20190051619A (en) * | 2017-11-07 | 2019-05-15 | 재단법인대구경북과학기술원 | Image data processing apparatus using ensamble and fine tunning and controlling method thereof |
KR20190113078A (en) | 2018-03-27 | 2019-10-08 | 울산대학교 산학협력단 | Apparatus and method for processing image |
KR20190137470A (en) * | 2018-06-01 | 2019-12-11 | 아주대학교산학협력단 | Method and apparatus for compressing large capacity networks |
WO2019235821A1 (en) * | 2018-06-05 | 2019-12-12 | 네이버 주식회사 | Optimization technique for forming dnn capable of performing real-time inferences in mobile environment |
KR20190138438A (en) * | 2018-06-05 | 2019-12-13 | 네이버 주식회사 | Optimization for dnn conposition with real-time inference in mobile environment |
KR20200005206A (en) * | 2018-07-06 | 2020-01-15 | 에임시스템 주식회사 | System and method for fault classification of equipment based on machine learning |
US11341420B2 (en) | 2018-08-20 | 2022-05-24 | Samsung Sds Co., Ltd. | Hyperparameter optimization method and apparatus |
KR20200021301A (en) | 2018-08-20 | 2020-02-28 | 삼성에스디에스 주식회사 | Method for optimizing hyper-paramterand apparatus for |
CN111046891A (en) * | 2018-10-11 | 2020-04-21 | 杭州海康威视数字技术股份有限公司 | Training method of license plate recognition model, and license plate recognition method and device |
KR20200077162A (en) * | 2018-12-20 | 2020-06-30 | 주식회사 마인즈랩 | A method and computer program of learning a second neural network using a first neural network |
KR102037279B1 (en) * | 2019-02-11 | 2019-11-15 | 주식회사 딥노이드 | Deep learning system and method for determining optimum learning model |
US11694696B2 (en) | 2019-03-25 | 2023-07-04 | Samsung Electronics Co.. Ltd. | Method and apparatus for implementing speaker identification neural network |
US11244671B2 (en) | 2019-05-09 | 2022-02-08 | Samsung Electronics Co., Ltd. | Model training method and apparatus |
WO2021033792A1 (en) * | 2019-08-19 | 2021-02-25 | 엘지전자 주식회사 | Ai-based pre-training model determination system, and ai-based vision inspection management system using same for product production lines |
WO2021060899A1 (en) * | 2019-09-26 | 2021-04-01 | 주식회사 루닛 | Training method for specializing artificial intelligence model in institution for deployment, and apparatus for training artificial intelligence model |
WO2021182748A1 (en) * | 2020-03-10 | 2021-09-16 | 삼성전자주식회사 | Electronic device and control method thereof |
CN111461212B (en) * | 2020-03-31 | 2023-04-07 | 中国科学院计算技术研究所 | Compression method for point cloud target detection model |
CN111461212A (en) * | 2020-03-31 | 2020-07-28 | 中国科学院计算技术研究所 | Compression method for point cloud target detection model |
KR102191351B1 (en) * | 2020-04-28 | 2020-12-15 | 아주대학교산학협력단 | Method for semantic segmentation based on knowledge distillation |
US11756202B2 (en) | 2020-04-28 | 2023-09-12 | Ajou University Industry—Academic Cooperation Foundation | Method for semantic segmentation based on knowledge distillation |
KR102225579B1 (en) * | 2020-05-14 | 2021-03-10 | 아주대학교산학협력단 | Method for semantic segmentation based on knowledge distillation with improved learning performance |
KR102277810B1 (en) * | 2020-11-03 | 2021-07-15 | 아주대학교산학협력단 | System and method for learning of student network using knowledge distillation |
KR20220091713A (en) * | 2020-12-24 | 2022-07-01 | 포항공과대학교 산학협력단 | Radar-based detection system and method for domain adaptation |
KR102597288B1 (en) * | 2022-12-15 | 2023-11-02 | 주식회사 포도 | Apparatus and method for lightenig lidar point cloud data classifier |
Also Published As
Publication number | Publication date |
---|---|
EP3144859A3 (en) | 2017-06-14 |
US10410114B2 (en) | 2019-09-10 |
CN106548190A (en) | 2017-03-29 |
US20170083829A1 (en) | 2017-03-23 |
KR102492318B1 (en) | 2023-01-26 |
EP3144859A2 (en) | 2017-03-22 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
KR20170034258A (en) | Model training method and apparatus, and data recognizing method | |
KR102644947B1 (en) | Training method for neural network, recognition method using neural network, and devices thereof | |
US11610131B2 (en) | Ensembling of neural network models | |
US11853894B2 (en) | Meta-learning for multi-task learning for neural networks | |
US20210390416A1 (en) | Variable parameter probability for machine-learning model generation and training | |
US20210342699A1 (en) | Cooperative execution of a genetic algorithm with an efficient training algorithm for data-driven model creation | |
KR102483639B1 (en) | Method for extending structure of neural network, method of dimension reduction, and apparatus thereof | |
KR20200045128A (en) | Model training method and apparatus, and data recognizing method | |
KR102410820B1 (en) | Method and apparatus for recognizing based on neural network and for training the neural network | |
JP6614981B2 (en) | Neural network learning method and apparatus, and recognition method and apparatus | |
US11853893B2 (en) | Execution of a genetic algorithm having variable epoch size with selective execution of a training algorithm | |
KR20200022739A (en) | Method and device to recognize image and method and device to train recognition model based on data augmentation | |
US20200175378A1 (en) | Automated model building search space reduction | |
KR20200129639A (en) | Model training method and apparatus, and data recognizing method | |
KR20200128938A (en) | Model training method and apparatus, and data recognizing method | |
KR20160012537A (en) | Neural network training method and apparatus, data processing apparatus | |
KR20180045635A (en) | Device and method to reduce neural network | |
US11568212B2 (en) | Techniques for understanding how trained neural networks operate | |
KR20210060146A (en) | Method and apparatus for processing data using deep neural network model, method and apparatus for trining deep neural network model | |
Gavrilov et al. | Convolutional neural networks: Estimating relations in the ising model on overfitting | |
CN113454648A (en) | Legendre memory cell in a recurrent neural network | |
US11436475B2 (en) | Anomaly detection with spiking neural networks | |
KR20220052844A (en) | Providing neural networks | |
Andersson et al. | Sketch classification with neural networks: A comparative study of CNN and RNN on the Quick, Draw! data set | |
KR20230071719A (en) | Method and apparatus for train neural networks for image training |
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 |