KR20180052990A - Apparatus and method for learning deep neural network - Google Patents
Apparatus and method for learning deep neural network Download PDFInfo
- Publication number
- KR20180052990A KR20180052990A KR1020160150240A KR20160150240A KR20180052990A KR 20180052990 A KR20180052990 A KR 20180052990A KR 1020160150240 A KR1020160150240 A KR 1020160150240A KR 20160150240 A KR20160150240 A KR 20160150240A KR 20180052990 A KR20180052990 A KR 20180052990A
- Authority
- KR
- South Korea
- Prior art keywords
- dnn
- learning
- category
- learned
- data
- 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
- 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
Abstract
Description
본 발명은 심층인공신경망(DNN: deep neural network)의 학습 장치 및 방법에 관한 것으로, 더욱 상세하게는 하나 이상의 데이터 카테고리를 지원하는 DNN의 학습 시간을 단축 할 수 있는 DNN의 학습 장치 및 방법에 관한 것이다.The present invention relates to a learning apparatus and method of a deep neural network (DNN), and more particularly, to a learning apparatus and method of a DNN capable of shortening a learning time of a DNN supporting one or more data categories will be.
심층인공신경망(DNN: deep neural network)은 입력계층과 출력계층 사이에 복수의 은닉계층들로 이뤄진 인공신경망으로써, 객체 인식, 음성 인식, 구문 분석 등 다양한 분야에 적용되어 뛰어난 성능을 보이고 있다.Deep neural network (DNN) is an artificial neural network composed of multiple hidden layers between the input and output layers and is applied to various fields such as object recognition, speech recognition, and parsing.
DNN은 목표한 기능을 지원하기 위해 해당 목표 기능과 관련된 데이터 세트에 기반하여 학습을 진행할 수 있다. 즉, 상이한 기능을 지원하고자 하는 DNN은 상이한 데이터 세트에 기반하여 학습을 진행할 수 있다.DNN can proceed with learning based on the data set associated with the target function to support the target function. That is, a DNN that wishes to support different functions can proceed to learn based on a different data set.
이러한 DNN의 학습 방법에 있어서, 사용 가능한 전체 데이터 세트가 하나 이상의 카테고리로 분류될 수 있는 환경에서 목표하는 특정 기능을 지원하는 DNN을 학습시키기 위해 종래의 기술은 사용 가능한 전체 데이터 세트 중에서 목표하는 특정 기능과 관련된 데이터 카테고리에 속하는 데이터에 기초하여 처음부터 DNN을 학습시킨다.In the learning method of this DNN, in order to learn the DNN supporting the target specific function in an environment in which the entire available data set can be classified into one or more categories, The DNN is learned from the beginning based on the data belonging to the data category related to the data category.
그러나 이러한 종래의 기술은 DNN을 학습 시킬때마다 목표하는 특정 기능과 관련된 데이터 카테고리에 속하는 데이터에 기초하여 처음부터 DNN을 학습시키기 때문에, DNN의 층 수가 많을 수록 학습에 많은 시간이 소요되는 문제점이 있다.However, since each of the conventional techniques learns DNN from the beginning based on data belonging to a data category related to a target specific function every time the DNN is learned, it takes a lot of time to learn as the number of DNN layers increases .
상기와 같은 문제점을 해결하기 위한 본 발명의 목적은 특정 기능을 지원하는 DNN을 구축하기 위한 DNN의 학습 시간을 단축하는 DNN의 학습 장치 및 방법을 제공하는 데 있다.SUMMARY OF THE INVENTION It is an object of the present invention to provide a DNN learning apparatus and method for shortening a DNN learning time for constructing a DNN supporting a specific function.
상기 목적을 달성하기 위한 본 발명의 DNN의 학습 장치는 적어도 하나의 데이터 카테고리를 포함하는 데이터 세트(data set)와, 상기 적어도 하나의 데이터 카테고리에 기초하여 학습된 적어도 하나의 심층인공신경망(DNN: deep neural network)을 생성하는 카테고리별 학습모듈, 및 목표 기능을 지원하기 위해 입력된 학습 대상 카테고리와 관련되어 선택된 상기 적어도 하나의 DNN을 통합하여 하나의 통합된 DNN을 생성하는 선택적 DNN 학습모듈을 포함한다.In order to achieve the above object, a DNN learning apparatus of the present invention includes a data set including at least one data category, at least one deep artificial neural network (DNN) learned based on the at least one data category, deep neural network), and an optional DNN learning module that combines the at least one DNN selected in association with the input learning category to support the target function to generate a single integrated DNN do.
또한, 상기 카테고리별 학습모듈은 상기 데이터 세트의 개별 데이터 카테고리마다 각각의 DNN을 학습하여, n개의 데이터 카테고리에 대해 n개의 학습된 DNN을 생성할 수 있다.In addition, the learning module for each category can learn each DNN for each individual data category of the data set, and generate n learned DNNs for n data categories.
또한, 상기 카테고리별 학습모듈은 상기 데이터 세트의 복수의 데이터 카테고리에 기초해서 하나의 DNN을 학습하여, n개의 데이터 카테고리에 대해 상기 n개보다 적은 m개의 학습된 DNN을 생성할 수 있다.In addition, the category-specific learning module may learn one DNN based on a plurality of data categories of the data set to generate m learned DNNs less than n for n data categories.
또한, 상기 선택적 DNN 학습모듈은 상기 학습 대상 카테고리와 관련되어 선택된 상기 카테고리별 학습모듈의 적어도 하나의 학습된 DNN을 통합하여 하나의 통합된 DNN을 생성하는 통합기 및 상기 학습 대상 카테고리와 관련된 상기 데이터 세트의 적어도 하나의 데이터 카테고리에 기초하여 상기 통합된 DNN을 추가 학습시키는 조절기를 포함할 수 있다.In addition, the optional DNN learning module may include an integrator that integrates at least one learned DNN of the learning module selected in association with the learning target category to generate an integrated DNN, And a controller that further learns the integrated DNN based on at least one data category of the set.
그리고 본 발명의 DNN의 학습 방법은 카테고리별 학습모듈에서 데이터 세트(data set)에 포함된 적어도 하나의 데이터 카테고리에 기초하여 학습된 적어도 하나의 학습된 심층인공신경망(DNN: deep neural network)을 생성하는 단계와, 선택적 DNN 학습모듈에서 목표 기능을 지원하기 위해 입력된 학습 대상 카테고리와 관련되어 선택된 상기 카테고리별 학습모듈의 적어도 하나의 학습된 DNN을 통합하여 하나의 통합된 DNN을 생성하는 단계와, 상기 선택적 DNN 학습모듈에서 상기 학습 대상 카테고리와 관련된 상기 데이터 세트의 적어도 하나의 데이터 카테고리에 기초한 상기 통합된 DNN의 추가 학습 여부를 판단하는 단계 및 추가 학습으로 상기 판단될 경우, 상기 선택적 DNN 학습모듈에서 상기 통합된 DNN을 추가 학습한 DNN을 생성하는 단계를 포함한다.The DNN learning method of the present invention generates at least one learned deep neural network (DNN) learned based on at least one data category included in a data set in a category learning module Integrating at least one learned DNN of the selected learning module in association with an input learning category to support a target function in the optional DNN learning module to generate an integrated DNN; Determining in the optional DNN learning module whether the integrated DNN is to be further learned based on at least one data category of the data set associated with the learning target category; And generating a DNN that further learns the integrated DNN.
상기와 같은 본 발명에 따른 DNN의 학습 장치 및 방법은 목표 기능을 지원하는 DNN을 구축하도록, 데이터 세트의 특정 데이터 카테고리에 기반하여 기학습된 DNN들을 생성하고, 데이터 카테고리와 기학습된 DNN들을 활용해서 통합하고 조절하여 DNN을 학습시킴으로써, 관련된 데이터 카테고리들에 속하는 데이터에 기반하여 처음부터 DNN을 학습시키는 방법보다 학습 시간을 단축시킬 수 있는 효과를 갖는다.The DNN learning apparatus and method according to the present invention generate DNNs learned based on a specific data category of a data set so as to construct a DNN supporting a target function, and utilize data categories and learned DNNs By learning and integrating DNN, learning time can be shortened by learning DNN from the beginning based on data belonging to related data categories.
도 1은 실시예에 따른 DNN의 학습 장치를 나타낸 블록도이다.
도 2는 실시예에 따른 DNN의 학습 방법을 나타낸 순서도이다.
도 3은 실시예에 따른 DNN의 학습 방법에 의해 네트워크 트래픽 기반 응용 분류를 위한 DNN의 선택적 학습을 나타낸 개략도이다.
도 4는 실시예에 따른 DNN의 학습 방법에 의해 여러 언어의 자연어 처리를 지원하는 DNN의 선택적 학습을 나타낸 개략도이다.
도 5는 실시예에 따른 DNN의 학습 방법에 의해 네트워크 트래픽 기반 응용 분류를 지원하는 계층적 DNN의 선택적 학습을 나타낸 개략도이다.1 is a block diagram showing a DNN learning apparatus according to an embodiment.
2 is a flowchart illustrating a learning method of a DNN according to an embodiment.
FIG. 3 is a schematic diagram illustrating selective learning of a DNN for network traffic-based application classification according to a learning method of a DNN according to an embodiment.
FIG. 4 is a schematic diagram illustrating selective learning of DNN supporting natural language processing of various languages by a learning method of DNN according to an embodiment.
FIG. 5 is a schematic diagram illustrating selective learning of a hierarchical DNN supporting network traffic-based application classification according to an embodiment of a learning method of DNN.
본 발명은 다양한 변경을 가할 수 있고 여러 가지 실시예를 가질 수 있는 바, 특정 실시예들을 도면에 예시하고 상세한 설명에 상세하게 설명하고자 한다. 그러나 이는 본 발명을 특정한 실시 형태에 대해 한정하려는 것이 아니며, 본 발명의 사상 및 기술 범위에 포함되는 모든 변경, 균등물 내지 대체물을 포함하는 것으로 이해되어야 한다. 각 도면을 설명하면서 유사한 참조부호를 유사한 구성요소에 대해 사용하였다.While the invention is susceptible to various modifications and alternative forms, specific embodiments thereof are shown by way of example in the drawings and will herein be described in detail. It is to be understood, however, that the invention is not to be limited to the specific embodiments, but includes all modifications, equivalents, and alternatives falling within the spirit and scope of the invention. Like reference numerals are used for like elements in describing each drawing.
제1, 제2, A, B 등의 용어는 다양한 구성요소들을 설명하는데 사용될 수 있지만, 상기 구성요소들은 상기 용어들에 의해 한정되어서는 안 된다. 상기 용어들은 하나의 구성요소를 다른 구성요소로부터 구별하는 목적으로만 사용된다. 예를 들어, 본 발명의 권리 범위를 벗어나지 않으면서 제1 구성요소는 제2 구성요소로 명명될 수 있고, 유사하게 제2 구성요소도 제1 구성요소로 명명될 수 있다. 및/또는 이라는 용어는 복수의 관련된 기재된 항목들의 조합 또는 복수의 관련된 기재된 항목들 중의 어느 항목을 포함한다. The terms first, second, A, B, etc. may be used to describe various elements, but the elements should not be limited by the terms. The terms are used only for the purpose of distinguishing one component from another. For example, without departing from the scope of the present invention, the first component may be referred to as a second component, and similarly, the second component may also be referred to as a first component. And / or < / RTI > includes any combination of a plurality of related listed items or any of a plurality of related listed items.
어떤 구성요소가 다른 구성요소에 "연결되어" 있다거나 "접속되어" 있다고 언급된 때에는, 그 다른 구성요소에 직접적으로 연결되어 있거나 또는 접속되어 있을 수도 있지만, 중간에 다른 구성요소가 존재할 수도 있다고 이해되어야 할 것이다. 반면에, 어떤 구성요소가 다른 구성요소에 "직접 연결되어" 있다거나 "직접 접속되어" 있다고 언급된 때에는, 중간에 다른 구성요소가 존재하지 않는 것으로 이해되어야 할 것이다. It is to be understood that when an element is referred to as being "connected" or "connected" to another element, it may be directly connected or connected to the other element, . On the other hand, when an element is referred to as being "directly connected" or "directly connected" to another element, it should be understood that there are no other elements in between.
본 출원에서 사용한 용어는 단지 특정한 실시예를 설명하기 위해 사용된 것으로, 본 발명을 한정하려는 의도가 아니다. 단수의 표현은 문맥상 명백하게 다르게 뜻하지 않는 한, 복수의 표현을 포함한다. 본 출원에서, "포함하다" 또는 "가지다" 등의 용어는 명세서상에 기재된 특징, 숫자, 단계, 동작, 구성요소, 부품 또는 이들을 조합한 것이 존재함을 지정하려는 것이지, 하나 또는 그 이상의 다른 특징들이나 숫자, 단계, 동작, 구성요소, 부품 또는 이들을 조합한 것들의 존재 또는 부가 가능성을 미리 배제하지 않는 것으로 이해되어야 한다.The terminology used in this application is used only to describe a specific embodiment and is not intended to limit the invention. The singular expressions include plural expressions unless the context clearly dictates otherwise. In the present application, the terms "comprises" or "having" and the like are used to specify that there is a feature, a number, a step, an operation, an element, a component or a combination thereof described in the specification, But do not preclude the presence or addition of one or more other features, integers, steps, operations, elements, components, or combinations thereof.
다르게 정의되지 않는 한, 기술적이거나 과학적인 용어를 포함해서 여기서 사용되는 모든 용어들은 본 발명이 속하는 기술 분야에서 통상의 지식을 가진 자에 의해 일반적으로 이해되는 것과 동일한 의미를 가지고 있다. 일반적으로 사용되는 사전에 정의되어 있는 것과 같은 용어들은 관련 기술의 문맥 상 가지는 의미와 일치하는 의미를 가지는 것으로 해석되어야 하며, 본 출원에서 명백하게 정의하지 않는 한, 이상적이거나 과도하게 형식적인 의미로 해석되지 않는다.Unless defined otherwise, all terms used herein, including technical or scientific terms, have the same meaning as commonly understood by one of ordinary skill in the art to which this invention belongs. Terms such as those defined in commonly used dictionaries are to be interpreted as having a meaning consistent with the contextual meaning of the related art and are to be interpreted as either ideal or overly formal in the sense of the present application Do not.
이하, 본 발명에 따른 바람직한 실시예를 첨부된 도면을 참조하여 상세하게 설명한다.Hereinafter, preferred embodiments according to the present invention will be described in detail with reference to the accompanying drawings.
도 1은 실시예에 따른 심층인공신경망(DNN: deep neural network)의 학습 장치를 나타낸 블록도이다. 도 1에 도시된 바와 같이, 실시예에 따른 DNN의 학습 장치는 입력모듈(10), 데이터 세트(data set)(30), 카테고리별 학습모듈(50), 선택적 DNN 학습모듈(70), 및 출력모듈(90)을 포함한다.1 is a block diagram showing a learning apparatus of a deep neural network (DNN) according to an embodiment. 1, the DNN learning apparatus according to the embodiment includes an
입력모듈(10)은 목표 기능을 지원하기 위해 학습 대상 카테고리가 결정될 경우, 상기 학습 대상 카테고리를 선택적 DNN 학습모듈(70)로 입력한다. 여기서, 상기 학습 대상 카테고리는 목표하는 DNN의 학습에 사용될 적어도 하나의 데이터 카테고리이다.When the learning target category is determined to support the target function, the
데이터 세트(30)는 적어도 하나의 데이터 카테고리(31)를 포함한다. 여기서, 데이터 세트(30)에 포함된 데이터들은 다양한 기준에 따라 데이터 카테고리(31)로 분류될 수 있다. 예를 들어, 특정 범주(예. 컴퓨터, 사람 등)에 속하는 데이터들은 동일한 데이터 카테고리로 분류될 수 있다. 또한, DNN 등을 활용한 전처리 과정에서 유사한 결과 값을 보이는 데이터들은 동일한 데이터 카테고리로 분류될 수 있다.The
이에 따라, 데이터 카테고리(31)는 목표 기능을 지원하도록 DNN을 학습시키는데 사용될 수 있는 다양한 형태의 데이터를 포함할 수 있다. 예를 들어, 데이터 카테고리(31)는 이미지, 영상, 음성, 텍스트 등 또는 이들 데이터를 처리 및 가공한 특별한 형태의 데이터를 포함할 수 있다.Accordingly, the
즉, 데이터 세트(30)는 상술한 바와 같이, 동일 기준을 만족하는 데이터들로 하나 이상의 데이터 카테고리(31)를 생성할 수 있어서 특정 분류 기준을 만족하는 데이터들을 포함하는 데이터 카테고리(31)가 하나 이상일 수 있다.That is, as described above, the data set 30 can generate one or
카테고리별 학습모듈(50)은 데이터 카테고리(31)에 기초하여 개별적으로 학습하여 적어도 하나의 DNN을 생성한다. 여기서, 카테고리별 학습모듈(50)은 후술될 선택적 DNN 학습모듈(70)에서 생성된 하나의 통합된 DNN 또는 통합되고 조절된 DNN보다 기학습된 DNN(51)을 생성한다.The
예를 들어, 카테고리별 학습모듈(50)은 데이터 세트(30)의 각 데이터 카테고리(31)에 대해 하나의 DNN을 학습하여 하나의 기학습된 DNN(51)을 생성할 수 있다. 즉, 하나의 DNN은 특정 하나의 데이터 카테고리(31)에 기초해서만 학습이 된다. 따라서, 데이터 세트(30)의 개별 데이터 카테고리(31)마다 각각의 DNN을 학습하여, 카테고리별 학습모듈(50)은 n개의 데이터 카테고리(31)에 대해 n개의 기학습된 DNN(51)을 생성할 수 있다.For example, the per-
또한, 카테고리별 학습모듈(50)은 하나의 DNN을 복수의 데이터 카테고리(31)에 기초하여 학습할 수 있다. 따라서, 카테고리별 학습모듈(50)은 n개의 데이터 카테고리(31)에 대해 n개보다 적은 m개의 기학습된 DNN(51)을 생성할 수 있다.In addition, the category-
선택적 DNN 학습모듈(70)은 통합기(merger)(71) 및 조절기(fine-tuner)(73)를 포함한다.The optional DNN
여기서, 선택적 DNN 학습모듈(70)은 목표 기능을 지원하기 위해 입력모듈(10)로부터 상기 학습 대상 카테고리가 입력될 경우, 상기 학습 대상 카테고리와 관련되어 선택된 카테고리별 학습모듈(50)의 적어도 하나의 기학습된 DNN(51)을 통합하여 목표 기능을 지원하는 하나의 통합된 DNN을 생성한다.Here, the optional
또는, 선택적 DNN 학습모듈(70)은 필요에 따라 조절기(73)를 통해 상기 학습 대상 카테고리와 관련된 상기 데이터 세트(30)의 적어도 하나의 데이터 카테고리(31)에 기초한 상기 통합된 DNN의 추가 학습에 의해 목표 기능을 지원하는 통합되고 조절된 DNN을 생성한다.Alternatively, the optional
통합기(71)는 각 데이터 카테고리(31)별로 기학습된 DNN(51)들을 통합하여 하나의 통합된 DNN을 생성할 수 있다. 즉, 통합기(71)는 상기 학습 대상 카테고리와 관련되어 선택된 적어도 하나의 기학습된 DNN(51)을 통합하여 하나의 통합된 DNN을 생성한다.The
또한, 데이터 카테고리(31)별로 기학습된 DNN(51)들을 하나의 DNN으로 통합함에 있어, 통합기(71)는, 최종 출력 층을 제외한 중간 층들의 변수값(weight, bias 등)들을 통합할 수 있다. 또한, 최종 출력 층을 포함하여 전체 층들의 변수값들을 통합할 수 있다. 또한, 새롭게 생성되는 DNN의 최종 출력층이 분류하는 클래스 수를 통합되는 DNN들의 최종 출력 층이 분류하는 클래스 수와 다르게 조절하여 통합할 수 있다.In integrating the
또한, 통합기(71)는 기학습된 DNN(51)들의 변수값들을 통합하여 하나의 통합된 DNN을 생성함에 있어 다양한 방법을 적용할 수 있다.In addition, the
여기서, 통합기(71)는 통합되는 데이터 카테고리(31)들 간의 상대적인 중요도를 반영하여, 기학습된 DNN(51)들의 변수값들을 통합할 수 있다. 예를 들어, 보다 높은 상대적인 중요도를 갖는 데이터 카테고리에 기반하여 기학습된 DNN의 변수값은 그렇지 않은 데이터 카테고리에 기반하여 기학습된 DNN의 변수값에 비해 더 높은 비중으로 통합될 수 있다.Here, the
또한, 통합기(71)는 통합되는 혹은 통합될 DNN 내에서, 특정 층 내에서, 또는 특정 층의 특정 영역 내에서의 변수값들의 상대적인 차이를 반영하여, 기학습된 DNN(51)들의 변수값들을 통합할 수 있다. 예를 들어, 특정 영역 내에서 보다 큰 값을 보이는 변수값은 그렇지 않은 값에 비해 더 높은 비중으로 통합될 수 있다.In addition,
또한, 통합기(71)는 기학습된 DNN(51)들의 변수값을 변환하지 않고 원래 값에 기초하여 기학습된 DNN(51)들의 변수값들을 통합할 수 있다.In addition, the
또한, 통합기(71)는 기학습된 DNN(51)들의 변수값을 특정 형태로 변환한 뒤 기학습된 DNN(51)들의 변수값들을 통합할 수 있다. 예를 들어, 기학습된 DNN(51)들의 변수값을 바이너리 형태의 변수값으로 변환한 뒤 기학습된 DNN(51)들의 변수값들을 통합할 수 있다. 또한, 기학습된 DNN들의 변수값을 양자화(quantization)한 뒤 기학습된 DNN(51)들의 변수값들을 통합할 수 있다.In addition, the
또한, 통합기(71)는 기학습된 DNN(51)들의 하나 이상의 변수값들을 하나의 변수값으로 변환한 후 기학습된 DNN(51)들의 변수값들을 통합할 수 있다.Also, the
또한, 통합기(71)는 기학습된 DNN(51)들의 각 층의 출력 값에 기반하여 하나의 통합된 DNN을 생성할 수 있다.In addition, the
조절기(73)는 데이터 세트(30)의 데이터 카테고리(31)의 데이터를 활용하여, 통합기(71)의 상기 통합된 DNN에 추가 학습을 진행한다. 여기서, 조절기(73)의 추가 학습은 필요시 적용될 수 있다. 즉, 통합기(71)에 의해 통합된 DNN에 추가 학습이 필요한 경우에 조절기(73)는 추가 학습 즉 조절(fine-tuning)을 진행할 수 있다.The
즉, 조절기(73)는 상기 학습 대상 카테고리와 관련된 데이터 세트(30)의 적어도 하나의 데이터 카테고리(31)에 기초하여 상기 통합된 DNN을 추가 학습시킨다. That is, the
이때, 조절기(73)는 상기 통합된 DNN을 추가적으로 학습시킴에 있어서, 관련된 데이터 카테고리(31)의 전체 데이터를 사용할 수 있다.At this time, the
또한, 조절기(73)는 상기 통합된 DNN을 추가적으로 학습시킴에 있어서, 관련된 데이터 카테고리(31)의 일부 데이터를 사용할 수 있다.In addition, the
또한, 조절기(73)는 상기 통합된 DNN을 추가적으로 학습시킴에 있어서, 목표하는 특정 정확도를 달성할 때까지 관련된 데이터 카테고리(31)의 데이터를 사용할 수 있다.In addition, the
또한, 조절기(73)는 상기 통합된 DNN을 추가적으로 학습시킴에 있어서, 상기 통합된 DNN의 전체를 학습시킬 수 있다.In addition, the
또한, 조절기(73)는 상기 통합된 DNN을 추가적으로 학습시킴에 있어서, 통합된 DNN의 일부를 학습시킬 수 있다.In addition, the
또한, 조절기(73)는 상기 통합된 DNN을 추가적으로 학습시킴에 있어서, 상기 통합된 DNN을 층 단위로 학습(layer-wise training)시킬 수 있다.In addition, the
또한, 조절기(73)는 상기 통합된 DNN을 추가적으로 학습시킴에 있어서, 상기 통합된 DNN을 최종 출력값에 기초하여 학습시킬 수 있다.In addition, the
출력모듈(90)은 선택적 DNN 학습모듈(70)에서 생성된 DNN을 출력한다.The
이러한 구성을 가진 실시예에 따른 DNN의 학습 장치의 동작에 관하여 설명하면 다음과 같다.The operation of the DNN learning apparatus according to the embodiment having such a configuration will be described as follows.
도 2는 실시예에 따른 DNN의 학습 방법을 나타낸 순서도이다. 도 2에 도시된 바와 같이, 실시예에 따른 DNN의 학습 방법은, 우선 데이터 세트(30)가 적어도 하나의 데이터 카테고리(31)를 구비하고, 카테고리별 학습모듈(50)이 데이터 카테고리(31)에 기초하여 개별적으로 기학습하여 적어도 하나의 기학습된 DNN(51)을 생성한다(S101).2 is a flowchart illustrating a learning method of a DNN according to an embodiment. 2, the DNN learning method according to the embodiment is characterized in that the
그 이후, 선택적 DNN 학습모듈(70)이 입력모듈(10)을 통하여 학습 대상 카테고리를 입력받는다. 그리고 통합기(71)가 상기 입력된 학습 대상 카테고리에 관련된 데이터 카테고리(31)에 기초하여 기학습된 DNN(51)들을 하나의 DNN으로 통합하여 통합된 DNN을 생성한다(S103).Thereafter, the optional
그 다음, 선택적 DNN 학습모듈(70)이 상기 통합된 DNN의 추가 학습 여부를 판단한다(S105).Then, the optional
계속해서, 상기 통합된 DNN의 추가 학습이 필요할 경우, 조절기(73)가 상기 입력된 학습 대상 카테고리에 관련된 데이터 카테고리(31)에 기초하여 상기 통합된 DNN을 추가 학습하여 조절된 DNN을 생성한다(S107). 그리고 선택적 DNN 학습모듈(70)이 통합기(71) 및 조절기(73)를 통하여 생성된 통합되고 조절된 DNN을 출력모듈(90)을 통해 출력한다(S109).Subsequently, when further learning of the integrated DNN is required, the
한편, 상기 통합된 DNN의 추가 학습이 필요하지 않을 경우, 선택적 DNN 학습모듈(70)이 통합기(71)를 통하여 생성된 통합된 DNN을 출력한다(S109a).On the other hand, if additional learning of the integrated DNN is not required, the optional
그리고 이하, 실시예에 따른 DNN의 학습 방법의 제1 적용 예로서, 네트워크 트래픽 기반 응용 분류를 위한 DNN의 선택적 학습에 관하여 설명하면 다음과 같다.Hereinafter, as a first application example of the learning method of DNN according to the embodiment, selective learning of DNN for network traffic based application classification will be described as follows.
도 3은 실시예에 따른 DNN의 학습 방법에 의해 네트워크 트래픽 기반 응용 분류를 위한 DNN의 선택적 학습을 나타낸 개략도이다. 도 3에 도시된 바와 같이, 우선 데이터 세트(30)가 적어도 하나의 데이터 카테고리(31)즉, 비트 토렌트, 애플, 스카이프, 및 구글을 구비한다. 여기서, 데이터 세트(30)는 특정 응용과 관련된 네트워크 트래픽의 특징들을 포함한다. 그리고 데이터 카테고리(31)는 관련된 응용을 기준으로 형성된다.FIG. 3 is a schematic diagram illustrating selective learning of a DNN for network traffic-based application classification according to a learning method of a DNN according to an embodiment. As shown in FIG. 3, the data set 30 first includes at least one
그리고 카테고리별 학습모듈(50)이 데이터 카테고리(31)에 기초하여 개별적으로 기학습하여 적어도 하나의 기학습된 DNN(51) 즉, 기학습된 비트 토렌트, 기학습된 애플, 기학습된 스카이프, 및 기학습된 구글을 생성한다. 여기서, 각 기학습된 DNN(51)은 네트워크 트래픽에 기초하여 특정 응용을 분류해낼 수 있다.Then, the
그 이후, 선택적 DNN 학습모듈(70)이 입력모듈(10)을 통하여 학습 대상 카테고리를 입력받는다. 여기서, 선택적 DNN 학습모듈(70)은 후술될 통합되고 조절된 DNN이 네트워크 트래픽에 기반하여 분류를 지원하고자 하는 응용의 목록을 입력으로 받을 수 있다.Thereafter, the optional
그리고 통합기(71)가 상기 입력된 학습 대상 카테고리에 관련된 데이터 카테고리(31)에 기초하여 기학습된 DNN(51)들 즉, 기학습된 비트 토렌트 및 기학습된 애플을 하나의 DNN으로 통합하여 통합된 DNN을 생성한다.Then, the
그 다음, 조절기(73)가 상기 입력된 학습 대상 카테고리에 관련된 데이터 카테고리(31) 즉, 비트 토렌트 및 애플에 기초하여 상기 통합된 DNN을 추가 학습하여 조절된 DNN을 생성한다.Then, the
그리고 선택적 DNN 학습모듈(70)이 통합기(71) 및 조절기(73)를 통하여 생성된 통합되고 조절된 DNN을 출력한다.And the optional
이하, 실시예에 따른 DNN의 학습 방법의 제2 적용 예로서, 여러 언어의 자연어 처리를 지원하는 DNN의 선택적 학습에 관하여 설명하면 다음과 같다.Hereinafter, as a second application example of the learning method of DNN according to the embodiment, selective learning of DNN supporting natural language processing of various languages will be described as follows.
도 4는 실시예에 따른 DNN의 학습 방법에 의해 여러 언어의 자연어 처리를 지원하는 DNN의 선택적 학습을 나타낸 개략도이다. 도 4에 도시된 바와 같이, 우선 데이터 세트(30)가 적어도 하나의 데이터 카테고리(31) 즉, 한국어, 영어, 중국어 및 독일어를 구비한다. 여기서, 데이터 세트(30)는 언어의 특징들을 포함한다. 그리고 데이터 카테고리(31)는 언어를 기준으로 형성된다.FIG. 4 is a schematic diagram illustrating selective learning of DNN supporting natural language processing of various languages by a learning method of DNN according to an embodiment. As shown in Figure 4, the data set 30 first comprises at least one
그리고 카테고리별 학습모듈(50)이 데이터 카테고리(31)에 기초하여 개별적으로 기학습하여 적어도 하나의 기학습된 DNN(51) 즉, 기학습된 한국어, 기학습된 영어, 기학습된 중국어, 및 기학습된 독일어를 생성한다. 여기서, 각 기학습된 DNN(51)은 데이터 카테고리(31)에 기초하여 특정 언어를 이해하고 처리할 수 있다.Then, the
그 이후, 선택적 DNN 학습모듈(70)이 입력모듈(10)을 통하여 학습 대상 카테고리를 입력받는다. 여기서, 선택적 DNN 학습모듈(70)은 후술될 통합되고 조절된 DNN이 처리하고자 하는 언어의 목록을 입력으로 받을 수 있다.Thereafter, the optional
그리고 통합기(71)가 상기 입력된 학습 대상 카테고리에 관련된 데이터 카테고리(31)에 기초하여 기학습된 DNN(51)들 즉, 기학습된 한국어 및 기학습된 영어를 하나의 DNN으로 통합하여 통합된 DNN을 생성한다.Then, the
그 다음, 조절기(73)가 상기 입력된 학습 대상 카테고리에 관련된 데이터 카테고리(31) 즉, 한국어 및 영어에 기초하여 상기 통합된 DNN을 추가 학습하여 조절된 DNN을 생성한다.Then, the
그리고 선택적 DNN 학습모듈(70)이 통합기(71) 및 조절기(73)를 통하여 생성된 통합되고 조절된 DNN을 출력한다.And the optional
이하, 실시예에 따른 DNN의 학습 방법의 제3 적용 예로서, 네트워크 트래픽 기반 응용 분류를 지원하는 계층적 DNN의 선택적 학습에 관하여 설명하면 다음과 같다.Hereinafter, as a third application example of the DNN learning method according to the embodiment, selective learning of hierarchical DNN supporting network traffic based application classification will be described as follows.
도 5는 실시예에 따른 DNN의 학습 방법에 의해 네트워크 트래픽 기반 응용 분류를 지원하는 계층적 DNN의 선택적 학습을 나타낸 개략도이다. 도 5에 도시된 바와 같이, 우선 데이터 세트(30)가 적어도 하나의 데이터 카테고리(31)즉, 비트 토렌트, 애플, 스카이프, 및 구글을 구비한다. 여기서, 데이터 세트(30)는 특정 응용과 관련된 네트워크 트래픽의 특징들을 포함한다. 그리고 데이터 카테고리(31)는 관련된 응용을 기준으로 형성된다.FIG. 5 is a schematic diagram illustrating selective learning of a hierarchical DNN supporting network traffic-based application classification according to an embodiment of a learning method of DNN. As shown in FIG. 5, the data set 30 first includes at least one
그리고 카테고리별 학습모듈(50)이 데이터 카테고리(31)에 기초하여 개별적으로 기학습하여 적어도 하나의 기학습된 DNN(51) 즉, 기학습된 비트 토렌트, 기학습된 애플, 기학습된 스카이프, 및 기학습된 구글을 생성한다. 여기서, 각 기학습된 DNN(51)은 네트워크 트래픽에 기초하여 특정 응용을 분류해낼 수 있다.Then, the
그 이후, 선택적 DNN 학습모듈(70)이 입력모듈(10)을 통하여 학습 대상 카테고리를 입력받는다. 여기서, 선택적 DNN 학습모듈(70)은 후술될 통합되고 조절된 DNN이 네트워크 트래픽에 기반하여 분류를 지원하고자 하는 응용의 목록을 입력으로 받을 수 있다.Thereafter, the optional
그리고 통합기(71)가 상기 입력된 학습 대상 카테고리에 관련된 데이터 카테고리(31)에 기초하여 기학습된 DNN(51)들 즉, 기학습된 비트 토렌트 및 기학습된 애플을 하나의 DNN으로 통합하여 상위 클래스 즉, 데이터 카테고리(31)를 추론할 수 있는 DNN을 생성한다.Then, the
그 다음, 조절기(73)가 상기 입력된 학습 대상 카테고리에 관련된 데이터 카테고리(31) 즉, 비트 토렌트 및 애플에 기초하여 상기 통합된 DNN(상기 상위 클래스)을 추가 학습하여 조절된 DNN을 생성한다.Then, the
그리고 선택적 DNN 학습모듈(70)이 통합기(71) 및 조절기(73)를 통하여 생성된 통합되고 조절된 DNN 즉, 계층적 DNN(학습된 비트 토렌트와 학습된 애플)을 출력한다. 여기서, 상기 계층적 DNN은 기학습된 DNN(51)들에 기반하여 통합된 상위 클래스를 추론하는 DNN과 상위 클래스 내에서 하위 클래스를 추론하는 기학습된 DNN들을 포함할 수 있다.And the optional
이때, 실시예에 따른 DNN의 학습 방법의 제3 적용 예와 같이, 실시예에 따른 DNN의 학습 장치는 계층적 DNN에도 적용될 수 있다.Here, as in the third application example of the learning method of the DNN according to the embodiment, the learning apparatus of the DNN according to the embodiment can be applied to the hierarchical DNN.
즉, 계층적 DNN은 단계적으로 추론을 진행한다. 예를 들어, 첫번째 단계에서는 주어진 데이터가 속하는 상위 클래스(예. 개)를 추론하고 두번째 단계에서는 추론된 상위 클래스 내에서의 하위 클래스(예. 진돗개)를 추론할 수 있다.In other words, hierarchical DNN proceeds step by step. For example, in the first step, we deduce an ancestor class (eg, dog) to which the given data belongs, and in the second step we can deduce a subclass in the inferred superclass (eg.
실시예에 따른 DNN의 학습 장치는 주어진 데이터 세트(30)와 각 데이터 카테고리(31)에 기반하여 기학습된 DNN(51)들에 기초하여, 목표 기능과 관련된 데이터 카테고리를 상위 클래스로 추론하는 계층적 DNN을 구성할 수 있다.The DNN learning apparatus according to the embodiment classifies data categories related to a target function into upper classes based on a given
또한, 실시예에 따른 DNN의 학습 장치는 전술한 통합기(71) 및 조절기(73)의 동작에 따라, 하위 클래스를 추론하는 기학습된 DNN들을 통합하여 상위 클래스를 추론하는 하나의 DNN을 구성할 수 있다. 즉, 새롭게 생성되는 DNN은 주어진 데이터가 속하는 데이터 카테고리를 추론할 수 있다.In addition, the DNN learning apparatus according to the embodiment constructs one DNN that deduces the upper class by integrating the learned DNNs inferring the lower class according to the operations of the
또한, 실시예에 따른 DNN의 학습 장치는 상기 계층적 DNN을 생성함에 있어, 하위 클래스를 추론하기 위해 기학습된 DNN들을 그대로 사용하거나 필요시 대상 데이터 카테고리에 기반하여 기학습된 DNN들의 구조 및 변수값을 변경할 수 있다.In addition, the learning apparatus of the DNN according to the embodiment may use the learned DNNs to directly infer the subclass in generating the hierarchical DNN, or may use the structure and variables of the learned DNNs You can change the value.
상술한 바와 같이, 실시예에 따른 DNN의 학습 장치 및 방법은 목표 기능을 지원하는 DNN을 구축하도록, 데이터 세트의 특정 데이터 카테고리에 기반하여 기학습된 DNN들을 생성하고, 데이터 카테고리와 기학습된 DNN들을 활용해서 통합하고 조절하여 DNN을 학습시킴으로써, 관련된 데이터 카테고리에 속하는 데이터에 기초하여 처음부터 DNN을 학습시키는 종래 기술에 비해 학습 속도가 빨라 학습 시간을 단축시킬 수 있다.As described above, the DNN learning apparatus and method according to the embodiment generate the learned DNNs based on the specific data category of the data set so as to construct the DNN supporting the target function, It is possible to shorten the learning time because the learning speed is fast as compared with the conventional technique in which the DNN is learned from the beginning based on the data belonging to the related data category.
또한, 실시예에 따른 DNN의 학습 장치 및 방법은 데이터 카테고리와 기학습된 DNN들을 활용해서 통합하고 조절하여 DNN을 학습시킴으로써, 전체 데이터 세트에 기초하여 DNN을 학습시킨 후에 목표 기능과 관련된 데이터 카테고리에 속하는 데이터에만 기초하여 기학습된 DNN을 조절(fine-tuning)하여 DNN을 학습시키는 방법보다 DNN 학습의 정확도를 향상시킬 수 있다.In addition, the learning apparatus and method of DNN according to the embodiment learn DNN based on the entire data set by integrating and adjusting DNN by using data category and pre-learned DNNs, and then learning DNN based on the entire data set, The accuracy of the DNN learning can be improved compared to the method of learning DNN by fine-tuning the learned DNN only based on the data belonging to it.
상기에서는 본 발명의 바람직한 실시예를 참조하여 설명하였지만, 해당 기술 분야의 숙련된 당업자는 하기의 특허 청구의 범위에 기재된 본 발명의 사상 및 영역으로부터 벗어나지 않는 범위 내에서 본 발명을 다양하게 수정 및 변경시킬 수 있음을 이해할 수 있을 것이다. It will be apparent to those skilled in the art that various modifications and variations can be made in the present invention without departing from the spirit or scope of the present invention as defined by the following claims It can be understood that
10: 입력모듈 30: 데이터 세트
31: 데이터 카테고리 50: 카테고리별 학습모듈
51: 기학습된 DNN 70: 선택적 DNN 학습모듈
71: 통합기 73: 조절기
90: 출력모듈10: input module 30: data set
31: Data category 50: Learning module by category
51: learned DNN 70: optional DNN learning module
71: integrator 73: regulator
90: Output module
Claims (1)
상기 적어도 하나의 데이터 카테고리에 기초하여 학습된 적어도 하나의 심층인공신경망(DNN: deep neural network)을 생성하는 카테고리별 학습모듈; 및
목표 기능을 지원하기 위해 입력된 학습 대상 카테고리와 관련되어 선택된 상기 적어도 하나의 DNN을 통합하여 하나의 통합된 DNN을 생성하는 선택적 DNN 학습모듈을 포함하는 DNN의 학습 장치.A data set comprising at least one data category;
A category learning module for generating at least one deep neural network (DNN) learned based on the at least one data category; And
And an optional DNN learning module for combining the at least one DNN selected in association with the input learning category to support a target function to generate one integrated DNN.
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
KR1020160150240A KR20180052990A (en) | 2016-11-11 | 2016-11-11 | Apparatus and method for learning deep neural network |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
KR1020160150240A KR20180052990A (en) | 2016-11-11 | 2016-11-11 | Apparatus and method for learning deep neural network |
Publications (1)
Publication Number | Publication Date |
---|---|
KR20180052990A true KR20180052990A (en) | 2018-05-21 |
Family
ID=62453291
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
KR1020160150240A KR20180052990A (en) | 2016-11-11 | 2016-11-11 | Apparatus and method for learning deep neural network |
Country Status (1)
Country | Link |
---|---|
KR (1) | KR20180052990A (en) |
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
KR102002732B1 (en) * | 2018-09-20 | 2019-07-23 | 건국대학교 산학협력단 | Deep neural network based data processing method and apparatus using ensemble model |
-
2016
- 2016-11-11 KR KR1020160150240A patent/KR20180052990A/en unknown
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
KR102002732B1 (en) * | 2018-09-20 | 2019-07-23 | 건국대학교 산학협력단 | Deep neural network based data processing method and apparatus using ensemble model |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN108319599B (en) | Man-machine conversation method and device | |
KR102608469B1 (en) | Method and apparatus for generating natural language | |
KR101885593B1 (en) | Method and apparatus for generating grapheme-to-phoneme model based on ai | |
BR112019004524B1 (en) | NEURAL NETWORK SYSTEM, ONE OR MORE NON-TRAINER COMPUTER READABLE STORAGE MEDIA AND METHOD FOR AUTOREGRESSIVELY GENERATING AN AUDIO DATA OUTPUT SEQUENCE | |
Mazzawi et al. | Improving Keyword Spotting and Language Identification via Neural Architecture Search at Scale. | |
Hong et al. | Sentiment analysis with deeply learned distributed representations of variable length texts | |
EP4131076A1 (en) | Serialized data processing method and device, and text processing method and device | |
KR102230372B1 (en) | Chatbot apparatus and method of operation thereof using automatic question generation | |
KR20210146089A (en) | Method for generating multi persona model and providing for conversation styling using the multi persona model | |
KR20190136578A (en) | Method and apparatus for speech recognition | |
US20230075893A1 (en) | Speech recognition model structure including context-dependent operations independent of future data | |
KR20110080096A (en) | Dialog system using extended domain and natural language recognition method thereof | |
US11727041B2 (en) | Method and system for improving performance of text summarization | |
CN112989843B (en) | Intention recognition method, device, computing equipment and storage medium | |
JP2024505076A (en) | Generate diverse, natural-looking text-to-speech samples | |
US11687725B2 (en) | Computer-implemented method and device for processing data | |
KR20180052990A (en) | Apparatus and method for learning deep neural network | |
KR20190088126A (en) | Artificial intelligence speech synthesis method and apparatus in foreign language | |
KR20170128070A (en) | Chord composition method based on recurrent neural network | |
Wakchaure et al. | A scheme of answer selection in community question answering using machine learning techniques | |
CN108573275B (en) | Construction method of online classification micro-service | |
CN111599342A (en) | Tone selecting method and system | |
CN115858736A (en) | Emotion text generation method based on emotion prompt fine adjustment | |
CN112100986B (en) | Voice text clustering method and device | |
CN114743539A (en) | Speech synthesis method, apparatus, device and storage medium |