KR102095684B1 - Method for domain adaptation based on adversarial learning and apparatus thereof - Google Patents

Method for domain adaptation based on adversarial learning and apparatus thereof Download PDF

Info

Publication number
KR102095684B1
KR102095684B1 KR1020190128092A KR20190128092A KR102095684B1 KR 102095684 B1 KR102095684 B1 KR 102095684B1 KR 1020190128092 A KR1020190128092 A KR 1020190128092A KR 20190128092 A KR20190128092 A KR 20190128092A KR 102095684 B1 KR102095684 B1 KR 102095684B1
Authority
KR
South Korea
Prior art keywords
domain
learning
discriminator
class
data
Prior art date
Application number
KR1020190128092A
Other languages
Korean (ko)
Inventor
김효은
이현재
Original Assignee
주식회사 루닛
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by 주식회사 루닛 filed Critical 주식회사 루닛
Priority to KR1020190128092A priority Critical patent/KR102095684B1/en
Application granted granted Critical
Publication of KR102095684B1 publication Critical patent/KR102095684B1/en

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06NCOMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
    • G06N3/00Computing arrangements based on biological models
    • G06N3/02Neural networks
    • G06N3/08Learning methods
    • G06N3/082Learning methods modifying the architecture, e.g. adding, deleting or silencing nodes or connections
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06NCOMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
    • G06N3/00Computing arrangements based on biological models
    • G06N3/02Neural networks
    • G06N3/04Architecture, e.g. interconnection topology
    • G06N3/045Combinations of networks
    • G06N3/0454

Landscapes

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

Abstract

Provided are a domain adaptation method based on adversarial learning, and an apparatus thereof. According to some embodiments of the present invention, the domain adaptation method based on adversarial learning comprises the following steps: extracting feature data from a plurality of data sets; learning, by using first feature data extracted from a first data set corresponding to a first class of a first domain among the plurality of data sets, a first discriminator which distinguishes a domain of data corresponding to the first class; learning, by using second feature data extracted from a second data set corresponding to the first class of a second domain among the plurality of data sets, the first discriminator; learning, by using third feature data extracted from a third data set corresponding to a second class of the first domain among the plurality of data sets, a second discriminator which distinguishes a domain of data corresponding to the second class; and learning, by using fourth feature data extracted from a fourth data set corresponding to the second class of the second domain among the plurality of data sets, the second discriminator. According to the present invention, the domain adaptation method based on adversarial learning is capable of reducing costs required for constructing a model.

Description

적대적 학습에 기반한 도메인 어댑테이션 방법 및 그 장치{METHOD FOR DOMAIN ADAPTATION BASED ON ADVERSARIAL LEARNING AND APPARATUS THEREOF}METHOD FOR DOMAIN ADAPTATION BASED ON ADVERSARIAL LEARNING AND APPARATUS THEREOF}

본 개시는 적대적 학습에 기반한 도메인 어댑테이션 방법 및 그 장치에 관한 것이다. 보다 자세하게는, 소스 도메인과 타깃 도메인 간의 도메인 어댑테이션을 수행함에 있어서, 적대적 학습을 이용하여 타깃 도메인에서의 모델 성능을 향상시키면서, 모델 구축 비용은 절감할 수 있는 방법 및 그 방법을 지원하는 장치에 관한 것이다.The present disclosure relates to a domain adaptation method and apparatus based on hostile learning. More specifically, in performing domain adaptation between a source domain and a target domain, while improving model performance in a target domain using hostile learning, a method for reducing model construction cost and an apparatus for supporting the method will be.

기계 학습 분야에서, 도메인 어댑테이션(domain adaptation)은 소스 도메인과 타깃 도메인을 구별하지 못하도록 모델을 학습시키는 방법을 의미한다.In the field of machine learning, domain adaptation refers to a method of training a model so as not to distinguish between a source domain and a target domain.

도메인 어댑테이션은 타깃 도메인에서의 모델 구축 비용을 절감하기 위해 활용될 수 있다. 또는, 대량의 데이터셋을 용이하게 확보할 수 있는 소스 도메인을 이용하여, 타깃 도메인에서 만족할 만한 성능을 보여주는 모델을 구축하기 위해 이용될 수 있다.Domain adaptation can be used to reduce the cost of building a model in the target domain. Alternatively, it can be used to build a model showing satisfactory performance in the target domain by using a source domain that can easily secure a large data set.

그러나, 유사한 도메인 간에 도메인 어댑테이션이 수행되더라도, 타깃 도메인에서 만족할 만한 성능을 보여주는 모델을 구축하는 것은 쉽지 않다.However, even if domain adaptation is performed between similar domains, it is not easy to build a model showing satisfactory performance in the target domain.

한국공개특허 제2018-0120478호 (2018.11.06 공개)Korean Open Patent No. 2018-0120478 (published Nov. 6, 2018)

본 개시의 몇몇 실시예들을 통해 해결하고자 하는 기술적 과제는, 특정 클래스에 특화된 판별기(class-specific discriminator)를 포함하는 신경망을 이용하여 적대적 학습에 기반한 도메인 어댑테이션을 수행하는 방법 및 그 방법을 수행하는 장치를 제공하는 것이다.A technical problem to be solved through some embodiments of the present disclosure is a method of performing domain adaptation based on hostile learning using a neural network including a class-specific discriminator and a method of performing the method Is to provide a device.

본 개시의 몇몇 실시예들을 통해 해결하고자 하는 다른 기술적 과제는, 복수의 판별기를 포함하는 신경망에 대한 적대적 학습을 수행함에 있어서, 도메인에 포함된 복수의 클래스 각각에 대응되는 판별기를 활용함으로써, 상기 신경망이 타깃 태스크(target task)가 수행되기 위한 보다 나은 표현(representation)을 학습할 수 있도록 하는 방법 및 그 방법을 수행하는 장치를 제공하는 것이다.Another technical problem to be solved through some embodiments of the present disclosure, in performing hostile learning on a neural network including a plurality of discriminators, by utilizing a discriminator corresponding to each of a plurality of classes included in a domain, the neural network It is to provide a method and an apparatus for performing the method so as to learn a better representation for the target task to be performed.

본 개시의 몇몇 실시예들을 통해 해결하고자 하는 또 다른 기술적 과제는, 복수의 판별기를 포함하는 신경망에 대해 적대적 학습에 기반한 도메인 어댑테이션을 수행함에 있어서, 타깃 태스크를 수행하는 레이어의 학습 정확도에 따라, 판별기의 반전 레이블(inverted label)에 기반한 학습을 조정함으로써 적대적 학습에 기반한 도메인 어댑테이션에 따른 성능 개선 효과를 얻을 수 있는 방법 및 그 방법을 수행하는 장치를 제공하는 것이다.Another technical problem to be solved through some embodiments of the present disclosure, in performing domain adaptation based on hostile learning on a neural network including a plurality of discriminators, discriminate according to the learning accuracy of a layer performing a target task It is to provide a method for obtaining a performance improvement effect according to domain adaptation based on hostile learning and an apparatus for performing the method by adjusting learning based on an inverted label of a group.

본 개시의 기술적 과제들은 이상에서 언급한 기술적 과제들로 제한되지 않으며, 언급되지 않은 또 다른 기술적 과제들은 아래의 기재로부터 본 개시의 기술분야에서의 통상의 기술자에게 명확하게 이해될 수 있을 것이다.The technical problems of the present disclosure are not limited to the technical problems mentioned above, and other technical problems not mentioned will be clearly understood by those skilled in the art from the following description.

상기 기술적 과제를 해결하기 위한, 본 개시의 몇몇 실시예에 따른 적대적 학습에 기반한 도메인 어댑테이션 방법은, 컴퓨팅 장치에 의하여 수행되는 방법에 있어서, 복수의 데이터셋에서 특징 데이터를 추출하는 단계, 상기 복수의 데이터셋 중 제1 도메인(domain)의 제1 클래스(class)에 대응하는 제1 데이터셋에서 추출된 제1 특징 데이터를 이용하여, 제1 클래스에 해당하는 데이터의 도메인을 구분하는 제1 판별기(discriminator)를 학습시키는 단계, 상기 복수의 데이터셋 중 제2 도메인의 상기 제1 클래스에 대응하는 제2 데이터셋에서 추출된 제2 특징 데이터를 이용하여, 상기 제1 판별기를 학습시키는 단계, 상기 복수의 데이터셋 중 상기 제1 도메인의 제2 클래스에 대응하는 제3 데이터셋에서 추출된 제3 특징 데이터를 이용하여, 제2 클래스에 해당하는 데이터의 도메인을 구분하는 제2 판별기를 학습시키는 단계 및 상기 복수의 데이터셋 중 상기 제2 도메인의 상기 제2 클래스에 대응하는 제4 데이터셋에서 추출된 제4 특징 데이터를 이용하여, 상기 제2 판별기를 학습시키는 단계를 포함할 수 있다. In order to solve the above technical problem, a domain adaptation method based on hostile learning according to some embodiments of the present disclosure includes: extracting feature data from a plurality of datasets in a method performed by a computing device; A first discriminator that classifies domains of data corresponding to the first class by using the first characteristic data extracted from the first dataset corresponding to the first class of the first domain among the datasets (discriminator) learning, using the second feature data extracted from the second dataset corresponding to the first class of the second domain among the plurality of datasets, learning the first discriminator, the The data corresponding to the second class is obtained by using the third feature data extracted from the third data set corresponding to the second class of the first domain among the plurality of data sets. Learning a second discriminator that classifies the domain of the data center and using the fourth feature data extracted from the fourth dataset corresponding to the second class of the second domain among the plurality of datasets, the second And training the discriminator.

상기 기술적 과제를 해결하기 위한, 본 개시의 다른 몇몇 실시예에 따른 적대적 학습에 기반한 도메인 어댑테이션 장치는 하나 이상의 인스트럭션들(instructions)을 저장하는 메모리 및 상기 저장된 하나 이상의 인스트럭션들을 실행함으로써, 복수의 데이터셋에서 특징 데이터를 추출하고, 상기 복수의 데이터셋 중 제1 도메인(domain)의 제1 클래스(class)에 대응하는 제1 데이터셋에서 추출된 제1 특징 데이터를 이용하여, 제1 클래스에 해당하는 데이터의 도메인을 구분하는 제1 판별기(discriminator)를 학습시키고, 상기 복수의 데이터셋 중 제2 도메인의 상기 제1 클래스에 대응하는 제2 데이터셋에서 추출된 제2 특징 데이터를 이용하여, 상기 제1 판별기를 학습시키고, 상기 복수의 데이터셋 중 상기 제1 도메인의 제2 클래스에 대응하는 제3 데이터셋에서 추출된 제3 특징 데이터를 이용하여, 제2 클래스에 해당하는 데이터의 도메인을 구분하는 제2 판별기를 학습시키고, 상기 복수의 데이터셋 중 상기 제2 도메인의 상기 제2 클래스에 대응하는 제4 데이터셋에서 추출된 제4 특징 데이터를 이용하여, 상기 제2 판별기를 학습시키는 프로세서를 포함할 수 있다. In order to solve the above technical problem, a domain adaptation apparatus based on hostile learning according to some other embodiments of the present disclosure includes a plurality of datasets by executing one or more instructions and a memory storing one or more instructions. Feature data is extracted from, and the first feature data extracted from the first dataset corresponding to the first class of the first domain (domain) among the plurality of datasets is used to correspond to the first class. Learning a first discriminator that distinguishes a domain of data, and using the second feature data extracted from the second dataset corresponding to the first class of the second domain among the plurality of datasets, the A first discriminator is trained, and extracted from a third dataset corresponding to the second class of the first domain among the plurality of datasets Using a third feature data, a second discriminator for classifying a domain of data corresponding to the second class is trained, and in a fourth dataset corresponding to the second class of the second domain among the plurality of datasets And a processor that trains the second discriminator using the extracted fourth feature data.

상기 기술적 과제를 해결하기 위한, 본 개시의 또 다른 몇몇 실시예에 따른 컴퓨터 프로그램은, 컴퓨팅 장치와 결합되어, 복수의 데이터셋에서 특징 데이터를 추출하는 단계, 상기 복수의 데이터셋 중 제1 도메인(domain)의 제1 클래스(class)에 대응하는 제1 데이터셋에서 추출된 제1 특징 데이터를 이용하여, 제1 클래스에 해당하는 데이터의 도메인을 구분하는 제1 판별기(discriminator)를 학습시키는 단계, 상기 복수의 데이터셋 중 제2 도메인의 상기 제1 클래스에 대응하는 제2 데이터셋에서 추출된 제2 특징 데이터를 이용하여, 상기 제1 판별기를 학습시키는 단계, 상기 복수의 데이터셋 중 상기 제1 도메인의 제2 클래스에 대응하는 제3 데이터셋에서 추출된 제3 특징 데이터를 이용하여, 제2 클래스에 해당하는 데이터의 도메인을 구분하는 제2 판별기를 학습시키는 단계 및 상기 복수의 데이터셋 중 상기 제2 도메인의 상기 제2 클래스에 대응하는 제4 데이터셋에서 추출된 제4 특징 데이터를 이용하여, 상기 제2 판별기를 학습시키는 단계를 실행시키기 위하여 컴퓨터로 판독가능한 기록매체에 저장될 수 있다. In order to solve the above technical problem, a computer program according to another exemplary embodiment of the present disclosure is combined with a computing device to extract feature data from a plurality of datasets, and a first domain of the plurality of datasets ( learning a first discriminator that classifies a domain of data corresponding to the first class by using the first characteristic data extracted from the first data set corresponding to the first class of the domain) , Learning the first discriminator using the second feature data extracted from the second dataset corresponding to the first class of the second domain among the plurality of datasets, and the first of the plurality of datasets. Learning a second discriminator to classify domains of data corresponding to the second class by using the third characteristic data extracted from the third data set corresponding to the second class of the 1 domain The key is a computer for executing the step of training the second discriminator using the fourth feature data extracted from the fourth dataset corresponding to the second class of the second domain among the plurality of datasets. It can be stored in a readable recording medium.

도 1 및 도 2는 본 개시의 몇몇 실시예에 따른 기계학습 장치와 학습 환경을 설명하기 위한 도면이다.
도 3은 본 개시의 몇몇 실시예에 따른 적대적 학습에 기반한 도메인 어댑테이션 방법의 순서도이다.
도 4는 도 3에 도시된 데이터셋 획득 단계 S100의 세부 과정을 나타내는 순서도이다.
도 5 내지 도 6은 본 개시의 몇몇 실시예에 따른 적대적 학습에 기반한 도메인 어댑테이션 방법을 부연 설명하기 위한 개념도이다.
도 7은 도 3에 도시된 출력 레이어 학습 단계 S500의 세부 과정을 나타내는 순서도이다.
도 8 내지 도 9는 본 개시의 다른 몇몇 실시예에 따른 적대적 학습에 기반한 도메인 어댑테이션 방법을 부연 설명하기 위한 개념도이다.
도 10은 본 개시의 다른 몇몇 실시예에 따른 적대적 학습에 기반한 도메인 어댑테이션 방법의 순서도이다.
도 11 내지 도 12는 본 개시의 또 다른 몇몇 실시예에 따른 적대적 학습에 기반한 도메인 어댑테이션 방법을 부연 설명하기 위한 개념도이다.
도 13은 본 개시의 다양한 실시예에 따른 장치를 구현할 수 있는 예시적인 컴퓨팅 장치를 나타내는 하드웨어 구성도이다.
도 14는 본 개시의 몇몇 실시예에 따른 의료영상 분석 시스템의 구성도이다.
1 and 2 are diagrams for explaining a machine learning apparatus and a learning environment according to some embodiments of the present disclosure.
3 is a flow diagram of a domain adaptation method based on hostile learning according to some embodiments of the present disclosure.
4 is a flowchart illustrating a detailed process of the data set acquisition step S100 shown in FIG. 3.
5 to 6 are conceptual diagrams for explaining a domain adaptation method based on hostile learning according to some embodiments of the present disclosure.
7 is a flowchart illustrating a detailed process of the output layer learning step S500 illustrated in FIG. 3.
8 to 9 are conceptual diagrams for explaining a domain adaptation method based on hostile learning according to some other embodiments of the present disclosure.
10 is a flowchart of a domain adaptation method based on hostile learning according to some other embodiments of the present disclosure.
11 to 12 are conceptual diagrams for explaining a domain adaptation method based on hostile learning according to some other embodiments of the present disclosure.
13 is a hardware configuration diagram illustrating an example computing device capable of implementing an apparatus according to various embodiments of the present disclosure.
14 is a configuration diagram of a medical image analysis system according to some embodiments of the present disclosure.

이하, 첨부된 도면을 참조하여 본 개시의 바람직한 실시예들을 상세히 설명한다. 본 개시의 이점 및 특징, 그리고 그것들을 달성하는 방법은 첨부되는 도면과 함께 상세하게 후술되어 있는 실시예들을 참조하면 명확해질 것이다. 그러나 본 개시의 기술적 사상은 이하의 실시예들에 한정되는 것이 아니라 서로 다른 다양한 형태로 구현될 수 있으며, 단지 이하의 실시예들은 본 개시의 기술적 사상을 완전하도록 하고, 본 개시가 속하는 기술분야에서 통상의 지식을 가진 자에게 본 개시의 범주를 완전하게 알려주기 위해 제공되는 것이며, 본 개시의 기술적 사상은 청구항의 범주에 의해 정의될 뿐이다.Hereinafter, preferred embodiments of the present disclosure will be described in detail with reference to the accompanying drawings. Advantages and features of the present disclosure, and a method of achieving them will be apparent with reference to embodiments described below in detail together with the accompanying drawings. However, the technical spirit of the present disclosure is not limited to the following embodiments, but may be implemented in various different forms, and only the following embodiments make the technical spirit of the present disclosure complete, and in the technical field to which the present disclosure belongs. It is provided to fully inform the person of ordinary skill in the scope of the present disclosure, and the technical spirit of the present disclosure is only defined by the scope of the claims.

각 도면의 구성요소들에 참조부호를 부가함에 있어서, 동일한 구성요소들에 대해서는 비록 다른 도면상에 표시되더라도 가능한 한 동일한 부호를 가지도록 하고 있음에 유의해야 한다. 또한, 본 개시를 설명함에 있어, 관련된 공지 구성 또는 기능에 대한 구체적인 설명이 본 개시의 요지를 흐릴 수 있다고 판단되는 경우에는 그 상세한 설명은 생략한다.It should be noted that in adding reference numerals to the components of each drawing, the same components have the same reference numerals as possible even though they are displayed on different drawings. In addition, in describing the present disclosure, when it is determined that detailed descriptions of related known configurations or functions may obscure the subject matter of the present disclosure, detailed descriptions thereof will be omitted.

다른 정의가 없다면, 본 명세서에서 사용되는 모든 용어(기술 및 과학적 용어를 포함)는 본 개시가 속하는 기술분야에서 통상의 지식을 가진 자에게 공통적으로 이해될 수 있는 의미로 사용될 수 있다. 또 일반적으로 사용되는 사전에 정의되어 있는 용어들은 명백하게 특별히 정의되어 있지 않는 한 이상적으로 또는 과도하게 해석되지 않는다. 본 명세서에서 사용된 용어는 실시예들을 설명하기 위한 것이며 본 개시를 제한하고자 하는 것은 아니다. 본 명세서에서, 단수형은 문구에서 특별히 언급하지 않는 한 복수형도 포함한다.Unless otherwise defined, all terms (including technical and scientific terms) used in this specification may be used as meanings commonly understood by those skilled in the art to which the present disclosure pertains. In addition, terms defined in the commonly used dictionary are not ideally or excessively interpreted unless specifically defined. The terminology used herein is for describing the embodiments and is not intended to limit the present disclosure. In this specification, the singular form also includes the plural form unless otherwise specified in the phrase.

또한, 본 개시의 구성 요소를 설명하는 데 있어서, 제1, 제2 등의 용어를 사용할 수 있다. 이러한 용어는 그 구성 요소를 다른 구성 요소와 구별하기 위한 것일 뿐, 그 용어에 의해 해당 구성 요소의 본질이나 차례 또는 순서 등이 한정되지 않는다. 어떤 구성 요소가 다른 구성요소에 "연결", "결합" 또는 "접속"된다고 기재된 경우, 그 구성 요소는 그 다른 구성요소에 직접적으로 연결되거나 또는 접속될 수 있지만, 각 구성 요소 사이에 또 다른 구성 요소가 "연결", "결합" 또는 "접속"될 수도 있다고 이해되어야 할 것이다.In addition, in describing the components of the present disclosure, terms such as first and second may be used. These terms are only for distinguishing the component from other components, and the nature, order, or order of the component is not limited by the term. When a component is described as being "connected", "coupled" or "connected" to another component, that component may be directly connected to or connected to the other component, but another component between each component It should be understood that elements may be "connected", "coupled" or "connected".

본 명세서에서 사용되는 "포함한다 (comprises)" 및/또는 "포함하는 (comprising)"은 언급된 구성 요소, 단계, 동작 및/또는 소자는 하나 이상의 다른 구성 요소, 단계, 동작 및/또는 소자의 존재 또는 추가를 배제하지 않는다.As used herein, “comprises” and / or “comprising” refers to the components, steps, operations, and / or elements mentioned above of one or more other components, steps, operations, and / or elements. Presence or addition is not excluded.

본 명세서에 대한 설명에 앞서, 본 명세서에서 사용되는 몇몇 용어들에 대하여 명확하게 하기로 한다.Prior to the description of the present specification, some terms used in the specification will be clarified.

본 명세서에서, 태스크(task)란, 기계학습을 통해 해결하고자 하는 과제 또는 기계학습을 통해 수행하고자 하는 작업을 지칭한다. 예를 들어, 얼굴 데이터로부터 얼굴 인식, 표정 인식, 성별 분류, 포즈 분류 등을 수행한다고 할 때, 얼굴 인식, 표정 인식, 성별 분류, 포즈 분류 각각이 개별 도메인에 대응될 수 있다. 다른 예로, 의료 이미지 데이터(medical image data)로부터 이상(abnormality)을 인식, 분류, 예측 등을 수행한다고 할 때, 이상 인식, 이상 분류, 이상 예측 각각이 개별 태스크에 대응될 수 있다. 그리고 태스크는 목적 태스크라고 칭할 수도 있다.In the present specification, a task refers to a task to be solved through machine learning or a task to be performed through machine learning. For example, when performing face recognition, facial expression recognition, gender classification, pose classification, etc. from face data, each of face recognition, facial expression recognition, gender classification, and pose classification may correspond to an individual domain. As another example, when it is said that abnormality is recognized, classified, and predicted from medical image data, each of the abnormality recognition, the abnormality classification, and the abnormality prediction may correspond to an individual task. And the task can also be called a target task.

본 명세서에서, 신경망(neural network)이란, 신경 구조를 모방하여 고안된 모든 종류의 기계학습 모델을 포괄하는 용어이다. 가령, 상기 신경망은 인공 신경망(artificial neural network; ANN), 컨볼루션 신경망(convolutional neural network; CNN) 등과 같이 모든 종류의 신경망 기반 모델을 포함할 수 있다.In this specification, a neural network is a term encompassing all kinds of machine learning models designed to mimic a neural structure. For example, the neural network may include all types of neural network based models such as an artificial neural network (ANN), a convolutional neural network (CNN), and the like.

본 명세서에서 인스트럭션(instruction)이란, 기능을 기준으로 묶인 일련의 컴퓨터 판독가능 명령어들로서 컴퓨터 프로그램의 구성 요소이자 프로세서에 의해 실행되는 것을 가리킨다.In this specification, an instruction is a series of computer readable instructions grouped by function, and refers to a component of a computer program and executed by a processor.

본 명세서에서, 도메인 판별기(discriminator)란, 특정 데이터가 속한 도메인을 판별하도록 학습된 모델을 포괄하는 용어이다. 가령, 상기 도메인 판별기는 다양한 종류의 기계학습 모델에 기초하여 구현될 수 있을 것이므로, 본 개시의 기술적 범위는 상기 도메인 판별기의 구현 방식에 의해 제한되지 않는다. 상기 도메인 판별기는 판별기로 약칭될 수도 있다.In the present specification, a domain discriminator is a term encompassing a model trained to determine a domain to which specific data belongs. For example, since the domain discriminator may be implemented based on various types of machine learning models, the technical scope of the present disclosure is not limited by the implementation method of the domain discriminator. The domain discriminator may be abbreviated as a discriminator.

이하, 본 개시의 몇몇 실시예들에 대하여 첨부된 도면에 따라 상세하게 설명한다.Hereinafter, some embodiments of the present disclosure will be described in detail according to the accompanying drawings.

도 1은 본 개시의 몇몇 실시예에 따른 기계학습 장치(10)와 학습 환경을 설명하기 위한 도면이다.1 is a diagram for explaining a machine learning apparatus 10 and a learning environment according to some embodiments of the present disclosure.

도 1을 참조하면, 기계학습 장치(10)는 신경망에 대한 기계학습을 수행하는 컴퓨팅 장치이다. 상기 컴퓨팅 장치는, 노트북, 데스크톱(desktop), 랩탑(laptop), 서버(server) 등이 될 수 있으나, 이에 국한되는 것은 아니며 컴퓨팅 기능이 구비된 모든 종류의 장치를 포함할 수 있다. 상기 컴퓨팅 장치의 일 예는 도 13을 참조하도록 한다. 이하에서는, 설명의 편의상 기계학습 장치(10)를 학습 장치(10)로 약칭하도록 한다.Referring to FIG. 1, the machine learning apparatus 10 is a computing apparatus that performs machine learning for a neural network. The computing device may be a laptop, a desktop, a laptop, a server, etc., but is not limited thereto and may include all types of devices equipped with computing functions. An example of the computing device will be described with reference to FIG. 13. Hereinafter, for convenience of description, the machine learning device 10 will be abbreviated as the learning device 10.

도 1은 학습 장치(10)가 하나의 컴퓨팅 장치로 구현된 것을 예로써 도시하고 있으나, 실제 물리적 환경에서 학습 장치(10)의 기능은 복수의 컴퓨팅 장치를 통해 구현될 수도 있다. 예를 들어, 학습 장치(10)의 제1 기능은 제1 컴퓨팅 장치에서 구현되고, 학습 장치(10)의 제2 기능은 제2 컴퓨팅 장치에서 구현될 수도 있다. 또한, 복수의 컴퓨팅 장치가 제1 기능과 제2 기능을 나누어 구현할 수도 있다.1 illustrates an example in which the learning device 10 is implemented as a single computing device, the function of the learning device 10 in an actual physical environment may be implemented through a plurality of computing devices. For example, the first function of the learning device 10 may be implemented in the first computing device, and the second function of the learning device 10 may be implemented in the second computing device. Also, a plurality of computing devices may be implemented by dividing the first function and the second function.

도 1에 도시된 데이터셋(12, 13)은 정답 레이블이 주어진 트레이닝 데이터셋으로, 복수의 도메인에 속한 것일 수 있다. 예를 들어, 제1 데이터셋(12)은 제1 도메인에 속한 복수의 트레이닝 샘플(e.g. Data1)로 구성된 데이터셋이고, 제2 데이터셋(13)은 제1 도메인과 상이한 제2 도메인에 속한 복수의 트레이닝 샘플(e.g. Data2)로 구성된 데이터셋일 수 있다. 여기서 트레이닝 샘플은 학습을 위한 데이터의 단위를 의미할 수 있고, 다양한 데이터일 수 있다. 예를 들어, 트레이닝 샘플은 하나의 이미지일 수 있고, 학습 대상 또는 태스크에 따라 이미지 이외의 다양한 데이터를 더 포함할 수도 있다.The datasets 12 and 13 illustrated in FIG. 1 are training datasets given a correct answer label and may belong to a plurality of domains. For example, the first data set 12 is a data set composed of a plurality of training samples (eg Data1) belonging to the first domain, and the second data set 13 is a plurality belonging to a second domain different from the first domain. It may be a data set consisting of a training sample (eg Data2). Here, the training sample may mean a unit of data for learning, and may be various data. For example, the training sample may be one image, and may further include various data other than the image according to a learning object or task.

본 개시의 다양한 실시예에 따르면, 학습 장치(10)는 적대적 학습에 기반한 도메인 어댑테이션을 이용하여 신경망을 학습시킬 수 있다. 예를 들어, 학습 장치(10)는 상기 도메인 어댑테이션을 이용하여 제1 도메인과 제2 도메인에서 함께 활용될 수 있는 신경망을 구축할 수 있다. 상기 학습은 물론 각 도메인에 속한 데이터셋(12, 13)을 이용하여 수행될 수 있다. 이와 같은 실시예에 한하여, 학습 장치(10)는 도메인 어댑테이션 장치(10)로 명명될 수도 있다.According to various embodiments of the present disclosure, the learning device 10 may train a neural network using domain adaptation based on hostile learning. For example, the learning device 10 may construct a neural network that can be used together in the first domain and the second domain by using the domain adaptation. The learning can be performed using datasets 12 and 13 belonging to each domain. Only in this embodiment, the learning device 10 may be referred to as a domain adaptation device 10.

상기 신경망은 예를 들어 도 2에 도시된 바와 같이 구성될 수 있다. 도 2는 2개의 서로 다른 도메인에 대한 도메인 어댑테이션에 이용될 수 있는 신경망을 예시하고 있다.The neural network may be configured, for example, as illustrated in FIG. 2. 2 illustrates a neural network that can be used for domain adaptation to two different domains.

도 2에 도시된 바와 같이, 제1 도메인에 속한 제1 데이터셋(12)은 제1 클래스(class)로 분류된 데이터셋(12-1)과 제2 클래스로 분류된 데이터셋(12-2)을 포함할 수 있다. 제2 도메인에 속한 제2 데이터셋(13)도 제1 클래스로 분류된 데이터셋(13-1)과 제2 클래스로 분류된 데이터셋(12-2)을 포함할 수 있다. 이하, 이해의 편의를 제공하기 위해 2개의 도메인을 대상으로 도메인 어댑테이션이 수행되는 것을 설명하나, 도메인의 수는 실시예에 따라 달라질 수 있다. As illustrated in FIG. 2, the first dataset 12 belonging to the first domain includes a dataset 12-1 classified as a first class and a dataset 12-2 classified as a second class. ). The second dataset 13 belonging to the second domain may also include a dataset 13-1 classified as a first class and a dataset 12-2 classified as a second class. Hereinafter, in order to provide convenience of understanding, it is described that domain adaptation is performed on two domains, but the number of domains may vary according to embodiments.

도 2에 도시된 바와 같이, 신경망은 출력 레이어(15), 2개의 판별기(16, 17) 및 공유된 특징 추출 레이어(14)를 포함할 수 있다.As shown in FIG. 2, the neural network may include an output layer 15, two discriminators 16 and 17 and a shared feature extraction layer 14.

제1 판별기(16)는 제1 클래스에 대응되고, 제2 판별기(17)는 제2 클래스에 대응되는 것일 수 있다. 즉, 각 판별기(16, 17)는 특정 클래스에 특화된(class-specific) 판별기일 수 있다. 따라서, 제1 판별기(16)는 상기 제1 도메인의 제1 클래스에 해당하는 데이터셋(12-1)과 상기 제2 도메인의 상기 제1 클래스에 해당하는 데이터셋(13-1)에 기초하여 학습될 수 있다. 또한, 제2 판별기(17)는 상기 제1 도메인의 제2 클래스에 해당하는 데이터셋(12-2)과 상기 제2 도메인의 제2 클래스에 해당하는 데이터셋(13-2)에 기초하여 학습될 수 있다.The first discriminator 16 may correspond to the first class, and the second discriminator 17 may correspond to the second class. That is, each discriminator 16 and 17 may be a class-specific discriminator. Accordingly, the first discriminator 16 is based on the data set 12-1 corresponding to the first class of the first domain and the data set 13-1 corresponding to the first class of the second domain. Can be learned. In addition, the second discriminator 17 is based on the data set 12-2 corresponding to the second class of the first domain and the data set 13-2 corresponding to the second class of the second domain. Can be learned.

출력 레이어(15)는 제1 도메인과 제2 도메인에 속한 전체 데이터셋(12, 13)을 이용하여 분류(classification) 등의 타깃 태스크를 수행하도록 학습될 수 있다.The output layer 15 may be trained to perform target tasks such as classification using the entire datasets 12 and 13 belonging to the first domain and the second domain.

특징 추출 레이어(14)는 두 도메인의 공통적인 특징을 추출해야 하므로, 제1 도메인과 제2 도메인의 데이터셋(12, 13) 모두에 기초하여 학습될 수 있다. 이때, 특징 추출 레이어(14)와 각 판별기(16, 17) 간에는 적대적 학습이 수행될 수 있다. 즉, 판별기(16, 17)는 도메인을 잘 구별하도록 학습되고, 특징 추출 레이어(14)는 도메인을 잘 구별하지 못하도록 학습될 수 있다. 상기 적대적 학습에 관련해서는 도 3 내지 도 12를 참조하여 상세하게 설명하도록 한다.Since the feature extraction layer 14 needs to extract common features of both domains, it can be learned based on both the first domain and the second domain datasets 12 and 13. At this time, hostile learning may be performed between the feature extraction layer 14 and each of the discriminators 16 and 17. That is, the discriminators 16 and 17 are trained to distinguish domains well, and the feature extraction layer 14 can be trained to not distinguish domains well. The hostile learning will be described in detail with reference to FIGS. 3 to 12.

도 2는 신경망의 대상 클래스가 2개인 것을 예시하고 있으나, 클래스의 수는 신경망의 목적 태스크에 따라 다양하게 정의되고, 설계될 수 있다.2 illustrates that there are two target classes of the neural network, but the number of classes may be variously defined and designed according to a target task of the neural network.

예를 들어, 목적 태스크가 악성 유무를 판단하는 태스크인 경우, 양성(positive)을 가리키는 클래스와 악성(negative)을 가리키는 클래스가 신경망의 대상 클래스로 정의될 수 있다. 또한, 이와 같은 경우, 신경망은 2개의 클래스 각각에 대응되는 2개의 판별기를 포함할 수 있다.For example, when the target task is a task for determining the presence or absence of malignantness, a class indicating positive and a class indicating negative may be defined as target classes of the neural network. Further, in this case, the neural network may include two discriminators corresponding to each of the two classes.

다른 예를 들어, 목적 태스크가 암(cancer)을 진단하는 태스크인 경우, 암(cancer)을 가리키는 클래스, 양성(benign)을 가리키는 클래스, 정상(normal)을 가리키는 클래스가 신경망의 대상 클래스로 정의될 수 있다. 또한, 이와 같은 경우, 신경망은 3개의 클래스 각각에 대응되는 3개의 판별기를 포함할 수 있다.For another example, if the target task is a task for diagnosing cancer, a class pointing to cancer, a class pointing to benign, and a class pointing to normal are defined as target classes of the neural network. You can. In addition, in this case, the neural network may include three discriminators corresponding to each of the three classes.

또 다른 예를 들어, 목적 태스크가 질병의 종류 또는 종양의 종류를 판단하는 태스크인 경우, 각 질병의 종류 또는 종양의 종류를 가리키는 3개 이상의 클래스가 신경망의 대상 클래스로 정의될 수도 있다.For another example, when the target task is a task for determining the type of disease or the type of tumor, three or more classes indicating the type of each disease or the type of tumor may be defined as target classes of the neural network.

지금까지 도 1 및 도 2를 참조하여 본 개시의 몇몇 실시예에 따른 학습 장치(10)와 학습 환경에 대하여 설명하였다. 이하에서는, 본 개시의 다양한 실시예들에 따른 방법들에 대하여 설명하도록 한다.So far, the learning apparatus 10 and the learning environment according to some embodiments of the present disclosure have been described with reference to FIGS. 1 and 2. Hereinafter, methods according to various embodiments of the present disclosure will be described.

상기 방법들의 각 단계는 컴퓨팅 장치에 의해 수행될 수 있다. 다시 말하면, 상기 방법들의 각 단계는 컴퓨팅 장치의 프로세서에 의해 실행되는 하나 이상의 인스트럭션들로 구현될 수 있다. 상기 방법들에 포함되는 모든 단계는 하나의 물리적인 컴퓨팅 장치에 의하여 실행될 수도 있을 것이나, 상기 방법들은 복수의 컴퓨팅 장치에 의하여 실행될 수도 있다. 예를 들어, 상기 방법들의 제1 단계들은 제1 컴퓨팅 장치에 의하여 수행되고, 상기 방법들의 제2 단계들은 제2 컴퓨팅 장치에 의하여 수행될 수도 있다. 이하에서는, 상기 방법들의 각 단계가 도 1에 예시된 학습 장치(10)에 의해 수행되는 것을 가정하여 설명을 이어가도록 한다. 따라서, 상기 방법들에 관한 설명에서 각 동작의 주어가 생략된 경우, 상기 예시된 장치(10)에 의하여 수행될 수 있는 것으로 이해될 수 있을 것이다. 또한, 이하에서 후술될 방법들은 필요에 따라 논리적으로 수행 순서가 바뀔 수 있는 범위 안에서 각 동작의 수행 순서가 바뀔 수 있음은 물론이다.Each step of the above methods can be performed by a computing device. In other words, each step of the methods may be implemented with one or more instructions executed by a processor of a computing device. All of the steps included in the above methods may be performed by one physical computing device, but the above methods may also be performed by a plurality of computing devices. For example, the first steps of the methods may be performed by a first computing device, and the second steps of the methods may be performed by a second computing device. Hereinafter, it is assumed that each step of the above methods is performed by the learning apparatus 10 illustrated in FIG. 1 to continue the description. Accordingly, it may be understood that when the subject of each operation is omitted in the description of the above methods, it may be performed by the illustrated device 10. In addition, the methods to be described hereinafter will be of course capable of changing the execution order of each operation within a range in which the execution order can be logically changed as necessary.

도 3은 본 개시의 몇몇 실시예에 따른 적대적 학습에 기반한 도메인 어댑테이션 방법의 순서도이다. 단, 이는 본 개시의 목적을 달성하기 위한 바람직한 실시예일 뿐이며, 필요에 따라 일부 단계가 추가되거나 삭제될 수 있음은 물론이다.3 is a flow diagram of a domain adaptation method based on hostile learning according to some embodiments of the present disclosure. However, this is only a preferred embodiment for achieving the object of the present disclosure, and of course, some steps may be added or deleted as necessary.

이하의 서술에서, 도메인 어댑테이션이 이루어지는 대상 도메인의 수는 2개이고, 학습 대상 신경망의 구조는 도 2에 예시된 바와 같이 구성된 것으로 가정하여 설명하도록 한다. 단, 이는 이해의 편의를 제공하기 위한 것일 뿐이고, 대상 도메인의 수와 신경망의 구조는 실시예에 따라 다양하게 정의되고 설계될 수 있다. In the following description, the number of target domains to which domain adaptation is performed is two, and the structure of the learning target neural network is assumed to be configured as illustrated in FIG. 2. However, this is only for convenience of understanding, and the number of target domains and the structure of the neural network may be variously defined and designed according to embodiments.

단계 S100에서, 신경망을 학습시키기 위한 데이터셋이 획득된다. 예를 들어, 상기 데이터셋은 제1 도메인에 속하고 제1 클래스와 연관된 제1 데이터셋, 제2 도메인에 속하고 상기 제1 클래스와 연관된 제2 데이터셋, 상기 제1 도메인에 속하고 제2 클래스와 연관된 제3 데이터셋 및 상기 제2 도메인에 속하고 상기 제2 클래스와 연관된 제4 데이터셋을 포함할 수 있다. 이하에서는, 다른 언급이 없는 한 상기 제1 내지 상기 제4 데이터셋을 상술한 바와 동일한 의미로 사용하도록 한다.In step S100, a data set for training a neural network is obtained. For example, the dataset belongs to a first domain and is a first dataset associated with a first class, a second dataset belongs to a second domain, and is associated with the first class, a first dataset belongs to the first domain, and a second A third dataset associated with a class and a fourth dataset belonging to the second domain and associated with the second class may be included. Hereinafter, unless otherwise stated, the first to fourth datasets will be used in the same sense as described above.

몇몇 실시예에서, 상기 제1 도메인의 데이터셋(즉, 제1 데이터셋과 제3 데이터셋)은 제1 촬영 방식에 의해 생성된 이미지로 구성되고, 상기 제2 도메인의 데이터셋(즉, 제2 데이터셋과 제4 데이터셋)은 제2 촬영 방식에 의해 생성된 이미지로 구성될 수 있다. 즉, 촬영 방식을 기준으로 도메인이 구분될 수 있다. 예컨대, 상기 제1 촬영 방식은 FFDM(Full-Field Digital Mammography) 방식이고, 상기 제2 촬영 방식은 DBT(Digital Breast Tomosynthesis) 방식일 수 있다. 이와 같은 경우, FFDM 이미지와 DBT 이미지에 대해 특정 태스크(e.g. 이상 진단, 병변 위치 식별)를 수행할 수 있도록 상기 신경망이 학습될 수 있다.In some embodiments, the dataset of the first domain (ie, the first dataset and the third dataset) is composed of images generated by the first photographing method, and the dataset of the second domain (ie, the first The second dataset and the fourth dataset) may be composed of images generated by the second photographing method. That is, domains may be classified based on a photographing method. For example, the first imaging method may be a full-field digital mammography (FFDM) method, and the second imaging method may be a digital breast tomosynthesis (DBT) method. In this case, the neural network may be trained to perform a specific task (e.g. abnormal diagnosis, lesion location identification) on the FFDM image and the DBT image.

몇몇 실시예에서, 상기 제1 도메인의 데이터셋(즉, 제1 데이터셋 또는 제3 데이터셋)은 상기 제2 도메인의 데이터셋(즉, 제2 데이터셋 또는 제4 데이터셋)보다 많은 수의 데이터(즉, 트레이닝 샘플)를 포함할 수 있다. 이와 같은 경우, 오버 샘플링(over-sampling)을 통해 상기 제2 도메인의 샘플 수를 증가시키는 과정이 더 수행될 수도 있다.In some embodiments, the number of datasets of the first domain (ie, the first or third dataset) is greater than the number of datasets of the second domain (ie, the second or fourth dataset). Data (ie, training samples). In this case, a process of increasing the number of samples of the second domain through over-sampling may be further performed.

몇몇 실시예에서, 상기 제1 도메인의 데이터셋(즉, 제1 데이터셋과 제3 데이터셋)은 상기 제2 도메인의 데이터셋(즉, 제2 데이터셋과 제4 데이터셋)과 서로 다른 형태(또는 형식)의 데이터를 포함할 수 있다. 예를 들어, 상기 제1 데이터셋은 2D 이미지(e.g. FFDM 이미지)로 구성되고, 상기 제2 데이터셋은 3D 이미지(e.g. DBT 이미지)로 구성될 수 있다. 다른 예로는, 상기 제1 데이터셋은 단일 채널 또는 단일 레이어 이미지(e.g. FFDM 이미지)로 구성되고, 상기 제2 데이터셋은 멀티 채널 또는 멀티 레이어 이미지(e.g. DBT 이미지)로 구성될 수 있다. 이와 같은 경우, 신경망에 데이터를 입력하기 전에 신경망의 입력 형식에 맞게 입력 데이터의 형태를 조정(또는 변환)하는 등의 과정이 더 수행될 수 있다. 이와 관련하여서는 도 4를 참조하여 상세하게 설명하도록 한다.In some embodiments, the dataset of the first domain (ie, the first dataset and the third dataset) is different from the dataset of the second domain (ie, the second dataset and the fourth dataset). (Or format) data. For example, the first dataset may consist of a 2D image (e.g. FFDM image), and the second dataset may consist of a 3D image (e.g. DBT image). As another example, the first data set may be composed of a single channel or single layer image (e.g. FFDM image), and the second data set may be composed of a multi channel or multi layer image (e.g. DBT image). In this case, before inputting data to the neural network, a process such as adjusting (or transforming) the form of the input data according to the input format of the neural network may be further performed. In this regard, it will be described in detail with reference to FIG. 4.

도 4는 신경망의 입력 형태가 제1 도메인의 데이터셋(즉, 제1 데이터셋 또는 제3 데이터셋)의 형태에 따라 구현된 것을 가정하고 있다.4 assumes that the input form of the neural network is implemented according to the form of the first domain dataset (ie, the first dataset or the third dataset).

도 4를 참조하면, 단계 S101에서, 제1 데이터셋(또는 제3 데이터셋)과 제2 데이터셋(또는 제4 데이터셋)이 서로 다른 형태의 데이터를 포함하는지 판단된다. 데이터의 형태가 상이한 경우, 단계 S102에서, 상기 제2 데이터셋(또는 제4 데이터셋)에 포함된 각각의 데이터에 대하여 상기 제1 데이터셋(또는 제3 데이터셋)과 동일한 입력의 형태를 갖도록 조정(또는 변환)될 수 있다. 구체적인 조정 프로세스는 실시예에 따라 달라질 수 있다.Referring to FIG. 4, in step S101, it is determined whether the first data set (or the third data set) and the second data set (or the fourth data set) contain different types of data. When the data types are different, in step S102, for each data included in the second data set (or fourth data set), the first data set (or third data set) has the same input form. Can be adjusted (or converted). The specific adjustment process may vary depending on the embodiment.

몇몇 실시예에서, 제1 데이터셋(또는 제3 데이터셋)은 FFDM 이미지고, 상기 제2 데이터셋(또는 제4 데이터셋)은 DBT 이미지일 수 있다. DBT 이미지는 멀티 채널(multi-channel) 또는 3D 형태의 입력(input)도 가능하나, 신경망은 FFDM 이미지와 동일하게 단일 채널 이미지를 입력으로 받도록 구현되어 있을 수 있다. 이와 같은 경우, 멀티 채널 이미지에서 단일 채널 이미지가 추출(또는 샘플링)되고, 추출된 단일 채널 이미지가 신경망으로 입력되도록 할 수 있다.In some embodiments, the first dataset (or third dataset) is an FFDM image, and the second dataset (or fourth dataset) can be a DBT image. The DBT image may be multi-channel or 3D input, but the neural network may be implemented to receive a single channel image as an input as in the FFDM image. In this case, a single channel image is extracted (or sampled) from a multi-channel image, and the extracted single channel image can be input to a neural network.

몇몇 실시예에서 상기 제1 데이터셋(또는 제3 데이터셋)은 단일 레이어 이미지를 포함하고, 상기 제2 데이터셋(또는 제4 데이터셋)은 멀티 레이어 이미지를 포함할 수 있다. 또한, 신경망은 단일 레이어 이미지를 입력으로 받도록 구현되어 있을 수 있다. 이와 같은 경우, 멀티 레이어 이미지에서 단일 레이어 이미지를 추출(또는 샘플링)하고, 추출된 단일 채널 이미지가 신경망으로 입력되도록 할 수 있다.In some embodiments, the first dataset (or third dataset) may include a single layer image, and the second dataset (or fourth dataset) may include a multi-layer image. Also, the neural network may be implemented to receive a single layer image as an input. In this case, a single layer image may be extracted (or sampled) from the multi-layer image, and the extracted single channel image may be input to a neural network.

단계 S103에서, 상기 조정된 데이터가 조건을 만족하는지 판단된다. 상기 조건이란, 상기 조정된 데이터가 학습을 위한 샘플 데이터로 적합한지를 판단하는 기준을 말한다. 예를 들어, 선명도, 제1 데이터셋(또는 제3 데이터셋)과 제2 데이터셋(또는 제4 데이터셋) 간의 비율, 특정 색상의 포함 여부, 데이터의 크기 등이 조건이 될 수 있을 것이다. 조건은 사용자의 입력을 통해 설정될 수도 있고, 태스크의 종류에 따라 자동으로 설정될 수도 있다. 또한, 상술한 조건은 학습되어, 상술한 조정 과정에 반영될 수도 있다.In step S103, it is determined whether the adjusted data satisfies the condition. The condition refers to a criterion for determining whether the adjusted data is suitable as sample data for learning. For example, the sharpness, the ratio between the first data set (or third data set) and the second data set (or fourth data set), whether a specific color is included, or the size of the data may be a condition. The condition may be set through user input or may be set automatically according to the type of task. Further, the above-described conditions may be learned and reflected in the above-described adjustment process.

지금까지 데이터셋 획득 단계 S100의 세부 과정과 관련된 실시예에 대하여 설명하였다.So far, an embodiment related to the detailed process of the data set acquisition step S100 has been described.

다시 도 3을 참조하여 설명한다.It will be described again with reference to FIG. 3.

이하의 단계 S200 내지 S500은 각 클래스에 특화된 복수의 판별기를 이용하여 도메인 어댑테이션을 수행하는 과정에 관한 것이다. 단계 S200 내지 S500에 대한 본격적인 설명에 앞서, 이해의 편의를 제공하기 위해, 하나의 판별기를 이용하는 경우, 신경망(즉, 태스크)의 정확도가 떨어지는 이유에 대하여 도 5 및 도 6을 참조하여 간략하게 서술하도록 한다.The following steps S200 to S500 are related to a process of performing domain adaptation using a plurality of discriminators specialized for each class. Prior to the full-scale description of the steps S200 to S500, in order to provide convenience of understanding, when one discriminator is used, the reason why the accuracy of the neural network (that is, the task) is poor is briefly described with reference to FIGS. 5 and 6. Do it.

도 5에 도시된 신경망은 특징 추출 레이어(31)와 태스크를 수행하는 출력 레이어(32)와 도메인을 판별하는 하나의 제1 판별기(33)를 포함한다. 즉, 제1 판별기(33)는 모든 클래스의 데이터셋에 대하여 도메인을 판별하는 동작을 수행한다.The neural network illustrated in FIG. 5 includes a feature extraction layer 31, an output layer 32 performing a task, and a first discriminator 33 for determining a domain. That is, the first discriminator 33 performs an operation of discriminating domains for data sets of all classes.

도 5에 도시된 신경망에서 적대적 학습에 기반한 도메인 어댑테이션이 수행되면, 데이터셋의 클래스에 관계없이 제1 판별기(33)는 도메인을 잘 구별하도록 학습되고, 특징 추출 레이어(31)는 도메인을 구별하지 못하도록 학습될 것이다.When domain adaptation based on hostile learning is performed in the neural network illustrated in FIG. 5, the first discriminator 33 is trained to distinguish domains well, and the feature extraction layer 31 distinguishes domains regardless of the class of the dataset You will be taught not to.

도 6은 도 5에 도시된 신경망의 학습 결과를 개념적으로 도시하고 있다. 특히, 도 6은 특징 공간(feature space) 상에서 각 데이터셋(41, 42, 43, 44)의 분포를 개념적으로 도시하고 있다.FIG. 6 conceptually shows the learning result of the neural network shown in FIG. 5. In particular, FIG. 6 conceptually illustrates the distribution of each data set 41, 42, 43, 44 on a feature space.

각각의 데이터셋(41, 42, 43, 44)의 의미에 대하여 아래의 표 1을 참조한다.See Table 1 below for the meaning of each data set (41, 42, 43, 44).

제1 도메인First domain 제2 도메인Second domain 제1 클래스 (C1)Class 1 (C1) 제1 데이터셋(41)First data set (41) 제2 데이터셋(43)Second data set (43) 제2 클래스 (C2)Class 2 (C2) 제3 데이터셋(42)3rd data set (42) 제4 데이터셋(44)4th data set (44)

도 6에 도시된 바와 같이, 하나의 판별기가 이용된 경우, 두 도메인에 속한 데이터셋(41 내지 44)이 클래스에 관계없이 특징 공간 상에서 밀집될 수 있다. 즉, 클래스에 관계없이 서로 다른 도메인 간 차이가 최소화되도록 특징 추출 레이어(31)가 학습된 결과, 서로 다른 클래스 간 거리도 함께 감소되어, 서로 다른 클래스에 해당하는 데이터셋(e.g. 41과 42)이 밀집된 영역(46)에 혼재될 수 있다. 이와 같은 경우, 클래스를 구분하는 기준선(45)이 서로 다른 클래스에 해당하는 데이터셋(e.g. 41과 42)을 명확하게 구분할 수 없게 되므로, 태스크의 정확도가 떨어질 수밖에 없다.태스크의 정확도가 떨어지는 문제점을 해결하기 위해, 본 개시의 몇몇 실시예에서는, 각 클래스에 특화된 복수의 판별기가 신경망에 포함될 수 있다. 각각의 판별기는 하나의 클래스에 대응되어 도메인 판별 기능을 수행할 수 있을 것이나, 실시예에 따라 특정 판별기는 하나 이상의 클래스와 대응될 수도 있다.As illustrated in FIG. 6, when one discriminator is used, datasets 41 to 44 belonging to two domains may be densely packed in a feature space regardless of class. That is, as a result of learning the feature extraction layer 31 so that differences between different domains are minimized regardless of the class, the distance between different classes is also reduced, so that datasets (eg 41 and 42) corresponding to different classes are obtained. It may be mixed in the dense region (46). In this case, since the reference line 45 for classifying the datasets (eg 41 and 42) corresponding to different classes cannot be clearly distinguished, the accuracy of the task is inevitably deteriorated. To solve, in some embodiments of the present disclosure, a plurality of discriminators specialized for each class may be included in the neural network. Each discriminator may correspond to one class and perform a domain discrimination function, but according to an embodiment, a specific discriminator may correspond to one or more classes.

이하에서는, 다시 도 3을 참조하여 복수의 판별기를 이용하여 도메인 어댑테이션을 수행하는 과정에 대해 상세하게 설명한다.Hereinafter, a process of performing domain adaptation using a plurality of discriminators will be described in detail with reference to FIG. 3 again.

단계 S200에서, 획득된 데이터셋의 특징 데이터가 신경망의 특징 추출 레이어를 통해 추출된다.In step S200, the feature data of the obtained dataset is extracted through the feature extraction layer of the neural network.

단계 S300에서, 제1 클래스에 해당하는 특징 데이터를 이용하여 제1 판별기와 특징 추출 레이어가 학습된다. 상기 제1 클래스에 해당하는 특징 데이터는 특징 추출 레이어가 제1 클래스에 해당하는 데이터셋(즉, 제1 데이터셋과 제3 데이터셋)을 입력 받아 추출한 특징 데이터를 말한다. 상기 제1 판별기는 상기 제1 클래스를 담당하는 도메인 판별기를 의미할 수 있다.In step S300, the first discriminator and the feature extraction layer are learned using feature data corresponding to the first class. The feature data corresponding to the first class refers to feature data extracted by receiving a data set (ie, a first data set and a third data set) corresponding to the first class by the feature extraction layer. The first discriminator may mean a domain discriminator in charge of the first class.

또한, 상기 제1 클래스에 해당하는 특징 데이터를 이용하여 특징 추출 레이어도 학습되는데, 상기 특징 추출 레이어와 상기 제1 판별기 간에는 적대적 학습이 수행될 수 있다.In addition, a feature extraction layer is also learned by using feature data corresponding to the first class. Hostile learning may be performed between the feature extraction layer and the first discriminator.

상기 적대적 학습이 수행되는 구체적인 방식은 실시예에 따라 달라질 수 있다.The specific manner in which the hostile learning is performed may vary depending on the embodiment.

몇몇 실시예에서, 반전 레이블(inverted label)에 기반한 오차에 기초하여 상기 특징 추출 레이어가 학습될 수 있다. 상기 반전 레이블은 정답(ground truth) 도메인 레이블이 반전된 레이블을 의미할 수 있다. 보다 구체적으로, 상기 제1 판별기를 통해 상기 제1 클래스에 해당하는 특징 데이터에 대한 도메인 예측값이 획득될 수 있다. 상기 도메인 예측값이란, 특징 데이터가 추출된 데이터셋이 어느 도메인에 속하는지를 가리키는 각 도메인 별 확률 값(e.g. 도메인 별 컨피던스 스코어)을 의미할 수 있다. 또한, 상기 도메인 예측값과 반전 레이블과의 차이에 기반하여 오차가 산출되고, 상기 오차가 역전파되어 상기 특징 추출 레이어의 가중치가 업데이트될 수 있다. 이 때, 상기 오차의 역전파를 통해 상기 제1 판별기의 가중치는 업데이트되지 않는다. 상기 제1 판별기는 도메인을 잘 구별하도록 학습되어야 하기 때문이다.In some embodiments, the feature extraction layer can be learned based on an error based on an inverted label. The reverse label may mean a label in which a ground truth domain label is reversed. More specifically, a domain prediction value for feature data corresponding to the first class may be obtained through the first discriminator. The domain prediction value may mean a probability value for each domain (e.g., a confidence score for each domain) indicating which domain the dataset from which feature data is extracted belongs to. In addition, an error is calculated based on a difference between the domain prediction value and an inverted label, and the error is back propagated to update the weight of the feature extraction layer. At this time, the weight of the first discriminator is not updated through the back propagation of the error. This is because the first discriminator must be trained to distinguish domains well.

다른 몇몇 실시예에서는, 상기 제1 판별기의 도메인 예측값이 반전되고, 반전된 예측값과 정답 도메인 레이블 간의 차이에 기초하여 오차가 산출될 수 있다. 예를 들어, 도메인 예측값에서 제1 도메인 확률과 제2 도메인 확률이 각각 8/10과 2/10라고 할 때, 반전된 도메인 예측값은 제1 도메인 확률이 2/10이고, 제2 도메인 확률은 8/10인 것으로 이해될 수 있다. 또한, 상기 산출된 오차(error)가 역전파되어 특징 추출 레이어의 가중치가 업데이트될 수 있다. 이와 같은 경우에도, 상기 특징 추출 레이어가 입력된 데이터셋의 도메인을 구분할 수 없도록 학습될 수 있다.In some other embodiments, the domain predictor of the first discriminator is inverted, and an error may be calculated based on the difference between the inverted predictor and the correct answer domain label. For example, when the first domain probability and the second domain probability are 8/10 and 2/10 in the domain predicted value, the inverted domain predicted value has a first domain probability of 2/10 and a second domain probability of 8 It can be understood to be / 10. In addition, the calculated error may be back propagated to update the weight of the feature extraction layer. Even in such a case, the feature extraction layer may be learned such that it cannot distinguish domains of the input dataset.

또 다른 몇몇 실시예에서는, 상기 제1 판별기의 도메인 예측값과 정답 도메인 레이블 간에 오차가 산출되고, 산출된 오차의 그래디언트(gradient)가 반전될 수도 있다. 즉, 반전된 그래디언트에 기반하여 특징 추출 레이어의 가중치가 업데이트될 수도 있다.In some other embodiments, an error is calculated between the domain predicted value of the first discriminator and the correct answer domain label, and the gradient of the calculated error may be inverted. That is, the weight of the feature extraction layer may be updated based on the inverted gradient.

단계 S400에서, 제2 클래스에 해당하는 특징 데이터를 이용하여 제2 판별기와 특징 추출 레이어가 학습된다. 상기 제2 클래스에 해당하는 특징 데이터는 특징 추출 레이어가 제2 클래스에 해당하는 데이터셋을 입력 받아 추출한 특징 데이터를 말한다. 상기 제2 판별기는 상기 제2 클래스를 담당하는 도메인 판별기를 의미할 수 있다.In step S400, the second discriminator and the feature extraction layer are learned using feature data corresponding to the second class. The feature data corresponding to the second class refers to feature data extracted by receiving a data set corresponding to the second class by the feature extraction layer. The second discriminator may mean a domain discriminator in charge of the second class.

또한, 상기 제2 클래스에 해당하는 특징 데이터를 이용하여 특징 추출 레이어도 학습되는데, 상기 특징 추출 레이어와 상기 제2 판별기 간에는 적대적 학습이 수행될 수 있다. 이와 관련하여서는, 상술한 단계 S300의 설명을 참조하도록 한다.In addition, a feature extraction layer is also learned using feature data corresponding to the second class, and hostile learning may be performed between the feature extraction layer and the second discriminator. In this regard, reference is made to the description of step S300 described above.

단계 S500에서, 출력 레이어가 학습된다. 상기 출력 레이어는 타깃 태스크를 수행하도록 학습되는 레이어(즉, 태스크 특화 레이어)로서, 입력된 데이터셋이 각 클래스에 속할 확률(e.g. 클래스별 컨피던스 스코어)을 출력한다. 본 단계의 구체적인 학습 과정은 도 7에 도시되어 있다.In step S500, the output layer is learned. The output layer is a layer that is learned to perform a target task (ie, a task-specific layer), and outputs a probability (e.g. class-specific confidence score) of the input dataset belonging to each class. The detailed learning process of this step is illustrated in FIG. 7.

도 7에 도시된 바와 같이, 출력 레이어에서 출력된 예측값에 대한 오차(즉, 예측값과 정답 레이블 간의 차이)가 산출되고, 산출된 오차를 역전파하여 출력 레이어의 가중치가 업데이트될 수 있다(S501 내지 S503). 이때, 특징 추출 레이어의 가중치도 함께 업데이트될 수 있다.As illustrated in FIG. 7, an error (that is, a difference between the predicted value and the correct answer label) for the predicted value output from the output layer is calculated, and the weight of the output layer can be updated by back propagating the calculated error (S501 to S501). S503). At this time, the weight of the feature extraction layer may also be updated.

다시 도 3을 참조하여 설명한다.It will be described again with reference to FIG. 3.

도 3은 단계 S500이 단계 S300 및 단계 S400 이후에 수행되는 것으로 예로써 도시하고 있다. 그러나, 이는 이해의 편의를 제공하기 위한 것일 뿐이며, 단계 S500의 일부 과정(즉, 제1 도메인과 연관된 학습 과정)은 단계 S300과 함께 수행되고, 다른 일부 과정(즉, 제2 도메인과 연관된 학습 과정)은 단계 S400과 함께 수행될 수도 있다. 그리고 제1 도메인과 연관된 학습 과정과 제2 도메인과 연관된 학습 과정은 동시에 수행될 수도 있다. FIG. 3 shows that step S500 is performed after steps S300 and S400 as an example. However, this is only for convenience of understanding, and some processes in step S500 (ie, the learning process associated with the first domain) are performed together with step S300, and some other processes (ie, learning process associated with the second domain) ) May be performed together with step S400. In addition, the learning process associated with the first domain and the learning process associated with the second domain may be performed simultaneously.

지금까지 도 3 내지 도 7을 참조하여 본 개시의 몇몇 실시예에 따른 적대적 학습에 기반한 도메인 어댑테이션 방법에 대하여 설명하였다. 이하에서는, 도 8 및 도 9를 참조하여 상술한 도메인 어댑테이션 방법을 통해 얻어질 수 있는 학습 결과에 대하여 간략하게 소개하도록 한다.So far, the domain adaptation method based on hostile learning according to some embodiments of the present disclosure has been described with reference to FIGS. 3 to 7. Hereinafter, a learning result that can be obtained through the domain adaptation method described above with reference to FIGS. 8 and 9 will be briefly introduced.

도 8은 적대적 학습에 기반한 도메인 어댑테이션 방법이 적용된 신경망의 구성을 예시하고 있다. 도 8에 예시된 바와 같이, 상기 신경망은 특징 추출 레이어(51), 출력 레이어(52), 제1 클래스에 특화된 제1 판별기(53) 및 제2 클래스에 특화된 제2 판별기(54)를 포함할 수 있다.8 illustrates a configuration of a neural network to which a domain adaptation method based on hostile learning is applied. As illustrated in FIG. 8, the neural network includes a feature extraction layer 51, an output layer 52, a first discriminator 53 specialized for the first class, and a second discriminator 54 specialized for the second class. It can contain.

도 9는 도 8에 도시된 신경망의 학습 결과를 개념적으로 도시하고 있다. 특히, 도 9는 특징 공간 상에서 각 데이터셋(61, 62, 63, 64)의 분포를 개념적으로 도시하고 있다.FIG. 9 conceptually shows the learning result of the neural network shown in FIG. 8. In particular, FIG. 9 conceptually shows the distribution of each data set 61, 62, 63, and 64 on the feature space.

각 데이터셋(61, 62, 63, 64)의 의미에 대하여 아래의 표 2를 참조한다.See Table 2 below for the meaning of each data set (61, 62, 63, 64).

제1 도메인First domain 제2 도메인Second domain 제1 클래스 (C1)Class 1 (C1) 제1 데이터셋(61)First data set (61) 제2 데이터셋(63)Second data set (63) 제2 클래스 (C2)Class 2 (C2) 제3 데이터셋(62)Third Data Set (62) 제4 데이터셋(64)4th data set (64)

도 9에 도시된 바와 같이, 클래스 특화 판별기를 이용하여 적대적 학습에 기반한 도메인 어댑테이션을 수행하면, 특징 공간 상에서 같은 클래스에 해당하는 데이터셋(61/63 or 62/64) 간 거리는 더 가까워지고, 서로 다른 클래스에 해당하는 데이터셋(61/62 or 63/64) 간 거리는 더 멀어질 수 있다. 이는, 클래스 특화 판별기를 이용하여 각 클래스에 대해 독립적으로 적대적 학습을 수행함으로써, 각 클래스 별로 도메인 간 차이가 최소화될 수 있기 때문이다. 이와 같은 경우, 서로 다른 클래스의 데이터셋이 밀집된 영역에 혼재되어 나타나지 않기 때문에, 클래스를 구분하는 기준선(65)에 의해, 제1 클래스와 제2 클래스를 명확하게 구분될 수 있다. 따라서, 태스크의 정확도가 향상될 수 있다. 즉, 대상 신경망은 서로 다른 도메인의 데이터셋에 대해 높은 정확도로 태스크를 수행할 수 있는 최적의 표현(representation)을 학습할 수 있게 된다.지금까지, 도 3 내지 도 9를 참조하여, 본 개시의 몇몇 실시예에 따른 적대적 학습에 기반 도메인 어댑테이션 방법에 대해 설명하였다. 상술한 방법에 따르면, 클래스 특화 판별기를 이용하여 클래스 별로 적대적 학습을 수행함으로써 소스 도메인뿐만 아니라 타깃 도메인에서도 높은 정확도로 태스크를 수행하는 신경망이 구축될 수 있다. 따라서, 타깃 도메인에서의 모델 구축 비용이 크게 절감될 수 있다.As illustrated in FIG. 9, when domain adaptation based on hostile learning is performed using a class-specific discriminator, the distance between datasets 61/63 or 62/64 corresponding to the same class in the feature space becomes closer, and each other The distance between datasets 61/62 or 63/64 corresponding to different classes may be further increased. This is because the difference between domains for each class can be minimized by performing hostile learning independently for each class using a class-specific discriminator. In this case, since the datasets of different classes are not mixed and appear in the dense region, the first class and the second class can be clearly distinguished by the reference line 65 that classifies the classes. Therefore, the accuracy of the task can be improved. That is, the target neural network can learn an optimal representation capable of performing a task with high accuracy on datasets of different domains. [0059] So far, referring to FIGS. 3 to 9, the present disclosure A domain adaptation method based on hostile learning according to some embodiments has been described. According to the above-described method, by performing hostile learning for each class using a class-specific discriminator, a neural network performing a task with high accuracy in a target domain as well as a source domain can be constructed. Therefore, the cost of building a model in the target domain can be greatly reduced.

특히, 상술한 방법은 데이터를 용이하게 확보하기 어려운 도메인(e.g. DBT 도메인)에서의 신경망의 예측 성능의 향상시키기 위해 활용될 수 있으며, 두 도메인 간 유사도가 높을수록 상기 예측 성능은 더욱 향상될 수 있다.In particular, the above-described method can be utilized to improve the prediction performance of a neural network in a domain (eg DBT domain) where it is difficult to secure data easily, and the higher the similarity between the two domains, the more the prediction performance can be improved. .

이하에서는, 도 10 내지 도 12를 참조하여, 본 개시의 다른 몇몇 실시예에 따른 적대적 학습에 기반한 도메인 어댑테이션 방법에 대해 설명한다.Hereinafter, a domain adaptation method based on hostile learning according to some other embodiments of the present disclosure will be described with reference to FIGS. 10 to 12.

도 10은 본 개시의 다른 몇몇 실시예에 따른 적대적 학습에 기반한 도메인 어댑테이션 방법의 순서도이다. 본 개시의 명료함을 위해, 앞선 실시예와 중복되는 내용에 대한 설명은 생략하도록 한다.10 is a flowchart of a domain adaptation method based on hostile learning according to some other embodiments of the present disclosure. For clarity of the present disclosure, descriptions of contents overlapping with the previous embodiment will be omitted.

도 10에 도시된 바와 같이, 단계 S1000 및 S2000에서, 데이터셋이 획득되고, 획득된 데이터셋의 특징 데이터가 추출된다. 단계 S1000과 단계 S2000의 대한 자세한 설명은 도 3에 도시된 단계 S100과 단계 S200의 설명 부분을 참조하도록 한다.As shown in Fig. 10, in steps S1000 and S2000, a data set is obtained, and characteristic data of the obtained data set is extracted. For detailed descriptions of steps S1000 and S2000, the descriptions of steps S100 and S200 shown in FIG. 3 will be referred to.

단계 S3000에서, 각 클래스에 해당하는 특징 데이터를 이용하여 각 판별기가 학습된다. 즉, 특징 추출 레이어를 고정시키고, 판별기에 대한 학습이 수행될 수 있다.In step S3000, each discriminator is learned using feature data corresponding to each class. That is, the feature extraction layer is fixed, and learning about the discriminator can be performed.

단계 S4000에서, 각 판별기의 학습의 정확도가 임계값을 초과하면, 특징 추출 레이어와 출력 레이어가 학습된다. 상기 학습의 정확도가 임계값을 초과한다는 것은, 상기 각 판별기의 도메인 예측 결과의 정답률이 임계값을 초과하는 것을 의미할 수 있다.In step S4000, if the accuracy of learning of each discriminator exceeds a threshold, a feature extraction layer and an output layer are learned. If the accuracy of the learning exceeds a threshold, it may mean that the correct answer rate of the domain prediction result of each discriminator exceeds the threshold.

단계 S4000에서, 상기 특징 추출 레이어와 상기 각 판별기 간에는 적대적 학습이 수행될 수 있다. 즉, 상기 특징 추출 레이어는 판별기와는 달리 도메인을 구분할 수 없도록 학습될 수 있다. 상기 적대적 학습의 구체적인 방식에 대해서는 앞선 실시예에서 상세하게 설명한 바, 더 이상의 설명은 생략하도록 한다.In step S4000, hostile learning may be performed between the feature extraction layer and each of the discriminators. That is, unlike the discriminator, the feature extraction layer can be learned so that it cannot distinguish domains. The specific method of the hostile learning has been described in detail in the previous embodiment, and further description will be omitted.

한편, 본 개시의 몇몇 실시예에서는, 출력 레이어의 학습 정확도(즉, 태스크의 정확도)에 기반하여 특징 추출 레이어에 대한 적대적 학습이 제어될 수 있다. 예를 들어, 출력 레이어의 학습의 정확도가 임계 값을 초과(또는 이상)한 경우, 특징 추출 레이어에 대한 적대적 학습이 지속(또는 재개)되도록 제어될 수 있다. 다른 예를 들어, 출력 레이어의 학습의 정확도가 임계 값 미만(또는 이하)인 경우에는, 특징 추출 레이어에 대한 학습이 중단되도록 제어될 수 있다. 출력 레이어의 학습 정확도가 낮다는 것은 특징 공간 상에서 서로 다른 클래스의 데이터셋 간 거리가 가까워졌다는 것을 의미하기 때문이다. 이와 같은 경우, 서로 다른 클래스의 데이터셋 간 거리가 멀어지도록 하기 위해, 적대적 학습은 중단되고, 특징 추출 레이어에 대해 출력 레이어의 예측 오차에 기반한 학습이 수행될 수도 있다. 보다 이해의 편의를 제공하기 위해, 도 11 및 도 12를 참조하여 본 실시예에 대하여 부연 설명하도록 한다.Meanwhile, in some embodiments of the present disclosure, hostile learning on the feature extraction layer may be controlled based on learning accuracy (ie, task accuracy) of the output layer. For example, when the accuracy of learning of the output layer exceeds (or exceeds) a threshold, hostile learning for the feature extraction layer may be controlled to continue (or resume). For another example, when the accuracy of learning of the output layer is less than (or less than) a threshold, it may be controlled to stop learning of the feature extraction layer. The learning accuracy of the output layer is low because it means that the distance between datasets of different classes in the feature space is getting closer. In this case, in order to increase the distance between datasets of different classes, hostile learning is stopped, and learning based on prediction errors of the output layer may be performed on the feature extraction layer. In order to provide a more convenient understanding, the present embodiment will be described in detail with reference to FIGS. 11 and 12.

도 11은 신경망의 학습 결과를 개념적으로 도시하고 있다. 특히, 도 11은 특징 공간 상에서 각 데이터셋(71, 72, 73, 74)의 분포를 개념적으로 도시하고 있다. 각 데이터셋(71, 72, 73, 74)의 의미에 대하여 아래의 표 3을 참조한다.11 conceptually shows the learning result of the neural network. In particular, FIG. 11 conceptually shows the distribution of each data set 71, 72, 73, and 74 on the feature space. Refer to Table 3 below for the meaning of each data set (71, 72, 73, 74).

제1 도메인First domain 제2 도메인Second domain 제1 클래스 (C1)Class 1 (C1) 제1 데이터셋(71)First data set (71) 제2 데이터셋(73)Second data set (73) 제2 클래스 (C2)Class 2 (C2) 제3 데이터셋(72)Third Data Set (72) 제4 데이터셋(74)4th data set (74)

클래스 별로 도메인 어댑테이션이 수행되면, 특징 공간 상에서 서로 다른 클래스의 데이터셋(72, 73)이 혼재되는 것이 방지될 수 있다. 따라서, 도 11에 도시된 바와 같이, 기준선(75)을 통해 제1 클래스와 제2 클래스가 구분될 수 있다.다만, 서로 다른 클래스의 데이터셋(72, 73) 간 거리(d1)가 더 멀어지고, 같은 클래스의 데이터셋(e.g. 72, 74)간 거리(d3)가 더 가까워진다면, 도메인 어댑테이션에 따른 성능 개선 효과는 더욱 향상될 수 있다. 거리(d1)가 더 멀어질수록 제1 클래스와 제2 클래스는 더욱 분명하게 구분될 수 있고, 거리(d3)가 더 가까워질수록 제1 도메인과 제2 도메인의 구별은 더욱 어려워지기 때문이다.When domain adaptation is performed for each class, datasets 72 and 73 of different classes in the feature space can be prevented from being mixed. Accordingly, as illustrated in FIG. 11, the first class and the second class may be distinguished through the reference line 75. However, the distance d1 between the datasets 72 and 73 of different classes is further increased. If the distance d3 between the datasets of the same class (eg 72, 74) is closer, the performance improvement effect according to the domain adaptation can be further improved. This is because the first class and the second class can be more clearly distinguished as the distance d1 becomes farther, and the distinction between the first domain and the second domain becomes more difficult as the distance d3 gets closer.

여기서, 거리(d3)를 더 좁히기 위해, 판별기를 이용한 적대적 학습이 중점적으로 수행되는 경우, 경우에 따라 특징 공간 상에서 거리(d1)도 가까워지는 문제가 발생될 수 있다. 따라서, 거리(d1)를 모니터링하고, 필요 시 거리(d1)가 다시 멀어질 수 있도록 전반적인 학습이 제어될 필요가 있다. 상술한 실시예는 이와 같은 문제를 해결하기 위한 것으로 이해될 수 있다.Here, in order to further narrow the distance d3, when hostile learning using the discriminator is performed intensively, a problem may arise where the distance d1 also approaches in the feature space in some cases. Therefore, it is necessary to monitor the distance d1 and to control the overall learning so that the distance d1 can be further distant again if necessary. It can be understood that the above-described embodiment is intended to solve this problem.

보다 구체적으로, 거리(d1)에 대한 모니터링 지표로 출력 레이어의 학습 정확도(즉, 성능 평가 결과)가 이용될 수 있다. 출력 레이어의 정확도가 낮다는 것은 그만큼 거리(d1)가 가깝다는 것을 의미할 수 있기 때문이다.More specifically, learning accuracy of the output layer (ie, performance evaluation result) may be used as a monitoring index for the distance d1. The accuracy of the output layer is low because it can mean that the distance d1 is close.

따라서, 출력 레이어의 학습 정확도가 임계 값 미만이 되면, 판별기를 이용한 특징 추출 레이어의 적대적 학습이 중단될 수 있다. 또한, 거리(d1)가 멀어지도록 하기 위해, 출력 레이어에 대한 학습이 수행될 수 있다. 상기 출력 레이어에 대한 학습은 상기 출력 레이어의 예측 오차를 이용하여 상기 출력 레이어와 상기 특징 추출 레이어의 가중치를 업데이트하는 것을 포함할 수 있다.Therefore, when the learning accuracy of the output layer is less than the threshold, hostile learning of the feature extraction layer using the discriminator may be stopped. Further, in order to increase the distance d1, learning about the output layer may be performed. Learning about the output layer may include updating the weights of the output layer and the feature extraction layer using prediction errors of the output layer.

이와 반대로, 출력 레이어의 학습 정확도가 임계 값 이상이 되면, 판별기를 이용한 특징 추출 레이어의 적대적 학습이 재개되어, 같은 클래스의 데이터셋 간 거리(d3)가 가까워지도록 학습이 제어될 수 있다.Conversely, when the learning accuracy of the output layer is greater than or equal to a threshold, hostile learning of the feature extraction layer using the discriminator is resumed, and learning can be controlled such that the distance d3 between datasets of the same class is close.

몇몇 실시예에서는, 출력 레이어의 학습의 정확도가 임계 값 미만이 되면, 상기 출력 레이어의 중요도가 증가되고, 증가된 중요도를 반영하여 출력 레이어에 대한 학습이 수행될 수 있다. 예를 들어, 상기 출력 레이어의 예측 오차를 상기 중요도에 기초하여 증폭시키는 형태로 상기 출력 레이어에 대한 학습이 수행될 수 있다. 이와 같은 경우, 상기 출력 레이어의 학습 정확도가 다시 증가될 수 있다. In some embodiments, when the accuracy of learning of the output layer is less than a threshold value, the importance of the output layer is increased, and learning of the output layer may be performed by reflecting the increased importance. For example, learning of the output layer may be performed in a form of amplifying a prediction error of the output layer based on the importance. In this case, the learning accuracy of the output layer can be increased again.

도 12는 상술한 실시예에 따른 신경망의 학습 결과를 개념적으로 도시하고 있다.12 conceptually illustrates a learning result of a neural network according to the above-described embodiment.

도 12에 도시된 바와 같이, 같은 클래스의 데이터셋(72, 74) 간 거리(d4)는 가까워지고, 서로 다른 클래스의 데이터셋(73, 74) 간 거리(d2)는 확연히 증가했음을 확인할 수 있다. 이와 같이, 상술한 실시예에 따르면, 동일한 클래스에 속한 데이터셋간 거리는 가까워지고 서로 다른 클래스간 거리는 멀어지도록 학습이 제어됨으로써, 도메인 어댑테이션에 따른 신경망의 성능 개선 효과가 극대화될 수 있다.As illustrated in FIG. 12, it can be seen that the distance d4 between the datasets 72 and 74 of the same class is close, and the distance d2 between the datasets 73 and 74 of different classes is significantly increased. . As described above, according to the above-described embodiment, the learning is controlled such that the distance between datasets belonging to the same class is closer and the distance between different classes is farther away, so that the effect of improving the performance of the neural network according to domain adaptation can be maximized.

지금까지 도 10 내지 12를 참조하여 본 개시의 다른 몇몇 실시예에 따른 적대적 학습에 기반한 도메인 어댑테이션 방법에 대하여 설명하였다.So far, the domain adaptation method based on hostile learning according to some other embodiments of the present disclosure has been described with reference to FIGS. 10 to 12.

지금까지 도 1 내지 도 12를 참조하여 설명된 본 개시의 기술적 사상은 컴퓨터가 읽을 수 있는 매체 상에 컴퓨터가 읽을 수 있는 코드로 구현될 수 있다. 상기 컴퓨터로 읽을 수 있는 기록 매체는, 예를 들어 이동형 기록 매체(CD, DVD, 블루레이 디스크, USB 저장 장치, 이동식 하드 디스크)이거나, 고정식 기록 매체(ROM, RAM, 컴퓨터 구비 형 하드 디스크)일 수 있다. 상기 컴퓨터로 읽을 수 있는 기록 매체에 기록된 상기 컴퓨터 프로그램은 인터넷 등의 네트워크를 통하여 다른 컴퓨팅 장치에 전송되어 상기 다른 컴퓨팅 장치에 설치될 수 있고, 이로써 상기 다른 컴퓨팅 장치에서 사용될 수 있다.The technical idea of the present disclosure described so far with reference to FIGS. 1 to 12 may be embodied as computer readable codes on a computer readable medium. The computer-readable recording medium may be, for example, a removable recording medium (CD, DVD, Blu-ray Disc, USB storage device, removable hard disk), or a fixed recording medium (ROM, RAM, hard disk equipped with a computer). You can. The computer program recorded on the computer-readable recording medium may be transmitted to another computing device through a network such as the Internet and installed on the other computing device, thereby being used in the other computing device.

이하에서는, 본 개시의 다양한 실시예에 따른 장치(e.g. 학습 장치 10)를 구현할 수 있는 예시적인 컴퓨팅 장치(100)에 대하여 설명하도록 한다.Hereinafter, an exemplary computing device 100 capable of implementing a device (e.g. learning device 10) according to various embodiments of the present disclosure will be described.

도 13은 상기 예시적인 컴퓨팅 장치(100)를 나타내는 하드웨어 구성도이다.13 is a hardware configuration diagram illustrating the exemplary computing device 100.

도 13에 도시된 바와 같이, 컴퓨팅 장치(100)는 하나 이상의 프로세서(110), 버스(150), 통신 인터페이스(170), 프로세서(110)에 의하여 수행되는 컴퓨터 프로그램(191)을 로드(load)하는 메모리(130)와, 컴퓨터 프로그램(191)을 저장하는 스토리지(190)를 포함할 수 있다. 다만, 도 13에는 본 개시의 실시예와 관련 있는 구성요소들만이 도시되어 있다. 따라서, 본 개시가 속한 기술분야의 통상의 기술자라면 도 13에 도시된 구성요소들 외에 다른 범용적인 구성 요소들이 더 포함될 수 있음을 알 수 있다.As shown in FIG. 13, the computing device 100 loads one or more processors 110, buses 150, communication interfaces 170, and computer programs 191 performed by the processors 110. The memory 130 may include a storage 190 storing the computer program 191. However, only components related to the exemplary embodiment of the present disclosure are illustrated in FIG. 13. Accordingly, a person skilled in the art to which the present disclosure belongs may recognize that other general-purpose components may be further included in addition to the components illustrated in FIG. 13.

프로세서(110)는 컴퓨팅 장치(100)의 각 구성의 전반적인 동작을 제어한다. 프로세서(110)는 CPU(Central Processing Unit), MPU(Micro Processor Unit), MCU(Micro Controller Unit), GPU(Graphic Processing Unit) 또는 본 개시의 기술 분야에 잘 알려진 임의의 형태의 프로세서 중 적어도 하나를 포함하여 구성될 수 있다. 또한, 프로세서(110)는 본 개시의 실시예들에 따른 방법/동작을 실행하기 위한 적어도 하나의 애플리케이션 또는 프로그램에 대한 연산을 수행할 수 있다. 컴퓨팅 장치(100)는 하나 이상의 프로세서를 구비할 수 있다.The processor 110 controls the overall operation of each component of the computing device 100. The processor 110 may include at least one of a central processing unit (CPU), a micro processor unit (MPU), a micro controller unit (MCU), a graphics processing unit (GPU), or any type of processor well known in the art of the present disclosure. It can be configured to include. Also, the processor 110 may perform operations on at least one application or program for executing a method / operation according to embodiments of the present disclosure. Computing device 100 may include one or more processors.

메모리(130)는 각종 데이터, 명령 및/또는 정보를 저장한다. 메모리(130)는 본 개시의 다양한 실시예들에 따른 방법/동작을 실행하기 위하여 스토리지(190)로부터 하나 이상의 프로그램(191)을 로드할 수 있다. 메모리(130)는 RAM과 같은 휘발성 메모리로 구현될 수 있을 것이나, 본 개시의 기술적 범위가 이에 한정되는 것은 아니다.The memory 130 stores various data, commands and / or information. The memory 130 may load one or more programs 191 from the storage 190 to execute a method / operation according to various embodiments of the present disclosure. The memory 130 may be implemented as a volatile memory such as RAM, but the technical scope of the present disclosure is not limited thereto.

버스(150)는 컴퓨팅 장치(100)의 구성 요소 간 통신 기능을 제공한다. 버스(150)는 주소 버스(Address Bus), 데이터 버스(Data Bus) 및 제어 버스(Control Bus) 등 다양한 형태의 버스로 구현될 수 있다.The bus 150 provides communication functions between components of the computing device 100. The bus 150 may be implemented as various types of buses, such as an address bus, a data bus, and a control bus.

통신 인터페이스(170)는 컴퓨팅 장치(100)의 유무선 인터넷 통신을 지원한다. 또한, 통신 인터페이스(170)는 인터넷 통신 외의 다양한 통신 방식을 지원할 수도 있다. 이를 위해, 통신 인터페이스(170)는 본 개시의 기술 분야에 잘 알려진 통신 모듈을 포함하여 구성될 수 있다. 경우에 따라, 통신 인터페이스(170)는 생략될 수도 있다.The communication interface 170 supports wired and wireless Internet communication of the computing device 100. Also, the communication interface 170 may support various communication methods other than Internet communication. To this end, the communication interface 170 may include a communication module well known in the technical field of the present disclosure. In some cases, the communication interface 170 may be omitted.

스토리지(190)는 상기 하나 이상의 컴퓨터 프로그램(191)과 각종 데이터(e.g. 학습 데이터셋), 기계학습 모델 등을 비임시적으로 저장할 수 있다. 스토리지(190)는 플래시 메모리 등과 같은 비휘발성 메모리, 하드 디스크, 착탈형 디스크, 또는 본 개시가 속하는 기술 분야에서 잘 알려진 임의의 형태의 컴퓨터로 읽을 수 있는 기록 매체를 포함하여 구성될 수 있다.The storage 190 may store the one or more computer programs 191 and various data (e.g. learning dataset), machine learning models, and the like temporarily. The storage 190 may include a non-volatile memory such as a flash memory, a hard disk, a removable disk, or any type of computer-readable recording medium well known in the art.

컴퓨터 프로그램(191)은 메모리(130)에 로드될 때 프로세서(110)로 하여금 본 개시의 다양한 실시예에 따른 방법/동작을 수행하도록 하는 하나 이상의 인스트럭션들을 포함할 수 있다. 즉, 프로세서(110)는 상기 하나 이상의 인스트럭션들을 실행함으로써, 본 개시의 다양한 실시예에 따른 방법/동작들을 수행할 수 있다.Computer program 191 may include one or more instructions that, when loaded into memory 130, cause processor 110 to perform a method / operation in accordance with various embodiments of the present disclosure. That is, the processor 110 may perform the methods / operations according to various embodiments of the present disclosure by executing the one or more instructions.

예를 들어, 컴퓨터 프로그램(191)은 복수의 데이터셋에서 특징 데이터를 추출하는 동작, 상기 복수의 데이터셋 중 제1 도메인(domain)의 제1 클래스에 대응하는 제1 데이터셋에서 추출된 제1 특징 데이터를 이용하여, 제1 클래스에 해당하는 데이터의 도메인을 구분하는 제1 판별기를 학습시키는 동작, 상기 복수의 데이터셋 중 제2 도메인의 상기 제1 클래스에 대응하는 제2 데이터셋에서 추출된 제2 특징 데이터를 이용하여, 상기 제1 판별기를 학습시키는 동작, 상기 복수의 데이터셋 중 상기 제1 도메인의 제2 클래스에 대응하는 제3 데이터셋에서 추출된 제3 특징 데이터를 이용하여, 제2 클래스에 해당하는 데이터의 도메인을 구분하는 제2 판별기를 학습시키는 동작 및 상기 복수의 데이터셋 중 상기 제2 도메인의 상기 제2 클래스에 대응하는 제4 데이터셋에서 추출된 제4 특징 데이터를 이용하여, 상기 제2 판별기를 학습시키는 동작을 수행하도록 하는 인스트럭션들을 포함할 수도 있다. 이와 같은 경우, 컴퓨팅 장치(100)를 통해 본 개시의 몇몇 실시예에 따른 도메인 어댑테이션 장치(e.g. 10)가 구현될 수 있다.For example, the computer program 191 extracts feature data from a plurality of datasets, and a first extracted from a first dataset corresponding to a first class of a first domain among the plurality of datasets Learning a first discriminator to classify domains of data corresponding to a first class using feature data, extracted from a second dataset corresponding to the first class of the second domain among the plurality of datasets Using the second feature data, learning the first discriminator, using the third feature data extracted from the third data set corresponding to the second class of the first domain among the plurality of data sets, An operation of learning a second discriminator that classifies domains of data corresponding to 2 classes, and a fourth dataset corresponding to the second class of the second domain among the plurality of datasets Using the fourth feature data is extracted, it may include instructions to cause the operation of the second study group determination. In such a case, a domain adaptation device (e.g. 10) according to some embodiments of the present disclosure may be implemented through the computing device 100.

지금까지 도 13을 참조하여 본 개시의 다양한 실시예에 따른 장치를 구현할 수 있는 예시적인 컴퓨팅 장치(100)에 대하여 설명하였다.So far, with reference to FIG. 13, an exemplary computing device 100 capable of implementing devices according to various embodiments of the present disclosure has been described.

다음으로, 본 개시의 몇몇 실시예에 따른 의료영상 분석 시스템의 구성 및 동작을 도 14를 참조하여 설명한다.Next, the configuration and operation of the medical image analysis system according to some embodiments of the present disclosure will be described with reference to FIG. 14.

도 14에 도시된 바와 같이, 본 실시예에 따른 의료영상 분석 시스템은 의료영상 촬영장치(200) 및 기계 학습 장치(100)를 포함한다. 실시예에 따라 의료 영상 분석 결과 표시 장치(300)가 본 실시예에 따른 의료영상 분석 시스템에 더 포함될 수도 있다.As shown in FIG. 14, the medical image analysis system according to the present embodiment includes a medical image capturing apparatus 200 and a machine learning apparatus 100. According to an embodiment, the medical image analysis result display device 300 may be further included in the medical image analysis system according to the present embodiment.

의료 영상 촬영 장치(200)는 신체에 대한 의료 영상을 촬영하는 장치로서, 예를 들어 X-ray, CT, MRI 등의 영상을 촬영하는 장치일 수 있다. 의료 영상 촬영 장치(200)는 네트워크를 통해 촬영된 영상 데이터를 기계 학습 장치(100)에 제공한다. 의료 영상은 민감한 개인 정보이므로 상기 네트워크는 외부에서의 접속이 차단되는 네트워크일 수 있다. 즉, 기계 학습 장치(100)와 의료 영상 촬영 장치(200)는 같은 병원 내에 위치하는 장치일 수 있을 것이다.The medical image photographing apparatus 200 is an apparatus for photographing a medical image of the body, and may be, for example, an apparatus for photographing images such as X-ray, CT, and MRI. The medical image capturing apparatus 200 provides image data captured through a network to the machine learning apparatus 100. Since the medical image is sensitive personal information, the network may be a network from which external access is blocked. That is, the machine learning apparatus 100 and the medical imaging apparatus 200 may be devices located in the same hospital.

도 14의 기계 학습 장치(100)는 도 14에 도시된 것과 동일한 것으로 이해될 수 있을 것이다. 즉, 기계 학습 장치(100)는 의료 영상 촬영 장치(200)로부터 제공된 영상 데이터를 축적하고, 기계 학습 수행 기준이 만족 되면, 새롭게 축적된 영상 데이터를 이용하여 기계 학습 목적에 맞는 출력 데이터를 출력하는 모델을 더 고도하게 학습시킬 수 있을 것이다. 이 과정에서 도 1 내지 도 12를 참조하여 설명된 적대적 학습에 기반한 도메인 어댑테이션 방법이 수행되는 것이다.The machine learning apparatus 100 of FIG. 14 may be understood to be the same as that shown in FIG. 14. That is, the machine learning apparatus 100 accumulates image data provided from the medical imaging apparatus 200 and, when the machine learning performance criterion is satisfied, outputs output data suitable for the machine learning purpose using the newly accumulated image data. You will be able to train the model more advanced. In this process, a domain adaptation method based on hostile learning described with reference to FIGS. 1 to 12 is performed.

기계 학습 장치(100)에 의하여 학습된 모델의 정의 데이터는 의료 영상 분석 결과 표시 장치(300)에 송신될 수 있다. 의료영상 촬영장치(200) 및 기계 학습 장치(100)와는 달리 의료 영상 분석 결과 표시 장치(300)는 의료영상 촬영장치(200)가 설치된 병원 밖에 위치하는 컴퓨팅 장치일 수도 있다. 의료 영상 분석 결과 표시 장치(300)는 상기 모델의 정의 데이터를 기계 학습 장치(100)로부터 수신하여 저장하고, 분석 대상 의료 영상을 상기 모델에 입력함으로써, 분석 결과 데이터를 얻고, 상기 분석 결과 데이터를 렌더링 하며, 그 결과를 화면에 디스플레이 함으로써, 의료 영상에 대한 추론 결과를 표시할 수 있을 것이다.The definition data of the model trained by the machine learning device 100 may be transmitted to the medical image analysis result display device 300. Unlike the medical image photographing apparatus 200 and the machine learning apparatus 100, the medical image analysis result display apparatus 300 may be a computing device located outside the hospital where the medical image photographing apparatus 200 is installed. The medical image analysis result display device 300 receives and stores the definition data of the model from the machine learning apparatus 100, and inputs the medical image to be analyzed into the model to obtain analysis result data and to obtain the analysis result data. By rendering and displaying the result on the screen, it is possible to display the reasoning result for the medical image.

지금까지 도 1 내지 도 14를 참조하여 본 개시의 다양한 실시예들 및 그 실시예들에 따른 효과들을 언급하였다. 본 개시의 기술적 사상에 따른 효과들은 이상에서 언급한 효과들로 제한되지 않으며, 언급되지 않은 또 다른 효과들은 아래의 기재로부터 통상의 기술자에게 명확하게 이해될 수 있을 것이다.So far, various embodiments of the present disclosure and effects according to the embodiments have been described with reference to FIGS. 1 to 14. Effects according to the technical spirit of the present disclosure are not limited to the above-mentioned effects, and other effects not mentioned will be clearly understood by those skilled in the art from the following description.

이상에서, 본 개시의 실시예를 구성하는 모든 구성 요소들이 하나로 결합되거나 결합되어 동작하는 것으로 설명되었다고 해서, 본 개시의 기술적 사상이 반드시 이러한 실시예에 한정되는 것은 아니다. 즉, 본 개시의 목적 범위 안에서라면, 그 모든 구성요소들이 하나 이상으로 선택적으로 결합하여 동작할 수도 있다.In the above, even if all components constituting the embodiments of the present disclosure are described as being combined or operated as one, the technical spirit of the present disclosure is not necessarily limited to these embodiments. That is, within the scope of the present disclosure, all of the components may be selectively combined and operated.

도면에서 동작들이 특정한 순서로 도시되어 있지만, 반드시 동작들이 도시된 특정한 순서로 또는 순차적 순서로 실행되어야만 하거나 또는 모든 도시 된 동작들이 실행되어야만 원하는 결과를 얻을 수 있는 것으로 이해되어서는 안 된다. 특정 상황에서는, 멀티태스킹 및 병렬 처리가 유리할 수도 있다. 더욱이, 위에 설명한 실시예들에서 다양한 구성들의 분리는 그러한 분리가 반드시 필요한 것으로 이해되어서는 안 되고, 설명된 프로그램 컴포넌트들 및 시스템들은 일반적으로 단일 소프트웨어 제품으로 함께 통합되거나 다수의 소프트웨어 제품으로 패키지 될 수 있음을 이해하여야 한다.Although the operations in the drawings are shown in a specific order, it should not be understood that the operations must be executed in a specific order or in a sequential order, or that all the illustrated actions must be executed to obtain a desired result. In certain situations, multitasking and parallel processing may be advantageous. Moreover, the separation of the various configurations in the above-described embodiments should not be understood as such separation is necessary, and the described program components and systems may generally be integrated together into a single software product or packaged into multiple software products. It should be understood that there is.

이상 첨부된 도면을 참조하여 본 개시의 실시예들을 설명하였지만, 본 개시가 속하는 기술분야에서 통상의 지식을 가진 자는 그 기술적 사상이나 필수적인 특징을 변경하지 않고서 본 개시가 다른 구체적인 형태로도 실시될 수 있다는 것을 이해할 수 있다. 그러므로 이상에서 기술한 실시예들은 모든 면에서 예시적인 것이며 한정적인 것이 아닌 것으로 이해해야만 한다. 본 개시의 보호 범위는 아래의 청구범위에 의하여 해석되어야 하며, 그와 동등한 범위 내에 있는 모든 기술 사상은 본 개시에 의해 정의되는 기술적 사상의 권리범위에 포함되는 것으로 해석되어야 할 것이다.Although the embodiments of the present disclosure have been described with reference to the accompanying drawings, a person of ordinary skill in the art to which the present disclosure pertains may implement the present disclosure in other specific forms without changing the technical spirit or essential characteristics. You can understand that there is. Therefore, it should be understood that the above-described embodiments are illustrative in all respects and not restrictive. The scope of protection of the present disclosure should be interpreted by the claims below, and all technical spirits within the scope equivalent thereto should be interpreted as being included in the scope of the technical spirits defined by the present disclosure.

Claims (18)

컴퓨팅 장치에 의하여 수행되는 방법에 있어서,
특징 추출 레이어에 의해, 데이터셋에서 복수의 특징 데이터를 추출하는 단계;
상기 추출된 복수의 특징 데이터 중 제1 도메인(domain)의 제1 클래스(class)에 대응하는 제1 특징 데이터 및 상기 복수의 특징 데이터 중 제2 도메인의 상기 제1 클래스에 대응하는 제2 특징 데이터를 이용하여, 제1 클래스에 해당하는 데이터의 도메인을 구분하는 제1 판별기(discriminator)를 학습시키는 단계;
상기 복수의 특징 데이터 중 상기 제1 도메인의 제2 클래스에 대응하는 제3 특징 데이터 및 상기 복수의 특징 데이터 중 상기 제2 도메인의 상기 제2 클래스에 대응하는 제4 특징 데이터를 이용하여, 제2 클래스에 해당하는 데이터의 도메인을 구분하는 제2 판별기를 학습시키는 단계;
상기 제1 판별기 및 상기 제2 판별기 중 적어도 하나의 판별기의 학습에 따라, 상기 특징 추출 레이어 및 출력 레이어 중 적어도 하나를 학습시키는 단계; 및
상기 출력 레이어가 적어도 하나의 특징 데이터를 입력 받아 클래스를 분류하고, 클래스 분류 결과를 출력하는 단계를 포함하고,
상기 특징 추출 레이어 및 출력 레이어 중 적어도 하나를 학습시키는 단계는,
상기 제1 판별기 및 상기 제2 판별기 중 적어도 하나와 상기 특징 추출 레이어 간에 적대적 학습을 수행하는 단계를 포함하는,
기계 학습 방법.
In the method performed by the computing device,
Extracting a plurality of feature data from the data set by the feature extraction layer;
The first characteristic data corresponding to the first class of the first domain among the extracted plurality of characteristic data and the second characteristic data corresponding to the first class of the second domain among the plurality of characteristic data Learning a first discriminator that discriminates a domain of data corresponding to the first class by using;
A second feature data is generated by using a third feature data corresponding to the second class of the first domain and a fourth feature data corresponding to the second class of the second domain among the plurality of feature data. Learning a second discriminator to classify domains of data corresponding to the class;
Learning at least one of the feature extraction layer and the output layer according to learning of at least one of the first discriminator and the second discriminator; And
The output layer comprises the step of classifying a class by receiving at least one feature data, and outputting a class classification result,
Learning at least one of the feature extraction layer and the output layer,
And performing hostile learning between at least one of the first discriminator and the second discriminator and the feature extraction layer,
Machine learning method.
삭제delete 제1항에 있어서,
상기 특징 추출 레이어 및 출력 레이어 중 적어도 하나를 학습시키는 단계는
상기 제1 판별기 및 상기 제2 판별기의 학습 정확도가 제1 임계값을 초과한 경우, 상기 특징 추출 레이어 및 출력 레이어 중 적어도 하나를 학습시키는 단계를 포함하는
기계 학습 방법.
According to claim 1,
Learning at least one of the feature extraction layer and the output layer is
And if the learning accuracy of the first discriminator and the second discriminator exceeds a first threshold, learning at least one of the feature extraction layer and the output layer.
Machine learning method.
제1항에 있어서,
상기 적대적 학습을 수행하는 단계는
상기 출력 레이어의 학습 정확도가 제2 임계값의 초과이거나 이상인 경우, 상기 제1 판별기 및 상기 제2 판별기를 이용하여 상기 특징 추출 레이어를 학습시키는 단계; 및
상기 출력 레이어의 학습 정확도가 상기 제2 임계값의 미만이거나 이하인 경우, 상기 출력 레이어 및 상기 특징 추출 레이어 중 적어도 하나를 학습시키는 단계를 포함하는
기계 학습 방법.
According to claim 1,
The step of performing the hostile learning is
If the learning accuracy of the output layer exceeds or exceeds a second threshold, learning the feature extraction layer using the first discriminator and the second discriminator; And
And when the learning accuracy of the output layer is less than or equal to or less than the second threshold, learning at least one of the output layer and the feature extraction layer.
Machine learning method.
제1항에 있어서,
상기 적대적 학습을 수행하는 단계는
반전 정답 레이블 및 예측 레이블 사이의 오차 또는 정답 레이블 및 반전 예측 레이블 사이의 오차를 이용하여, 상기 특징 추출 레이어를 학습시키는 단계를 포함하고,
상기 정답 레이블은 상기 복수의 특징 데이터 중 적어도 하나의 특징 데이터에 대한 정답 도메인 정보이고,
상기 반전 정답 레이블은 상기 정답 레이블을 반전한 것이고,
상기 예측 레이블은 상기 제1 판별기 또는 상기 제2 판별기가 예측한 레이블이고,
상기 반전 예측 레이블은 상기 예측 레이블을 반전한 것인
기계 학습 방법.
According to claim 1,
The step of performing the hostile learning is
And using the error between the correct answer label and the predictive label or the error between the correct answer label and the reverse predictive label, training the feature extraction layer,
The correct answer label is correct answer domain information for at least one characteristic data among the plurality of characteristic data,
The inverted correct answer label is a reverse of the correct answer label,
The predicted label is a label predicted by the first discriminator or the second discriminator,
The inverted prediction label is an inversion of the predicted label.
Machine learning method.
제1항에 있어서,
상기 제1 도메인 및 상기 제2 도메인은 의료 데이터에 대응하는 도메인을 포함하고,
상기 클래스는 질병 유무 및 질병 종류 중 적어도 하나에 대응하는 복수의 클래스를 포함하는
기계 학습 방법.
According to claim 1,
The first domain and the second domain include domains corresponding to medical data,
The class includes a plurality of classes corresponding to at least one of the presence or absence and type of disease
Machine learning method.
제1항에 있어서,
상기 제1 도메인은 2D 이미지에 대응하고,
상기 제2 도메인은 3D 이미지에 대응하는
기계 학습 방법.
According to claim 1,
The first domain corresponds to a 2D image,
The second domain corresponds to a 3D image
Machine learning method.
제7항에 있어서,
상기 2D 이미지는 FFDM(Full-Field Digital Mammography) 이미지를 포함하고,
상기 3D 이미지는 DBT(Digital breast tomosynthesis) 이미지를 포함하는
기계 학습 방법.
The method of claim 7,
The 2D image includes a full-field digital mammography (FFDM) image,
The 3D image includes a digital breast tomosynthesis (DBT) image
Machine learning method.
제1항에 있어서,
상기 제1 도메인은 단일 레이어 이미지에 대응하고,
상기 제2 도메인은 멀티 레이어 이미지에 대응하는
기계 학습 방법.
According to claim 1,
The first domain corresponds to a single layer image,
The second domain corresponds to a multi-layer image
Machine learning method.
하나 이상의 인스트럭션들(instructions)을 저장하는 메모리; 및
상기 저장된 하나 이상의 인스트럭션들을 실행함으로써,
특징 추출 레이어에 의해 데이터셋에서 복수의 특징 데이터를 추출하고,
상기 추출된 복수의 특징 데이터 중 제1 도메인(domain)의 제1 클래스(class)에 대응하는 제1 특징 데이터 및 상기 복수의 특징 데이터 중 제2 도메인의 상기 제1 클래스에 대응하는 제2 특징 데이터를 이용하여, 제1 클래스에 해당하는 데이터의 도메인을 구분하는 제1 판별기(discriminator)를 학습시키고,
상기 복수의 특징 데이터 중 상기 제1 도메인의 제2 클래스에 대응하는 제3 특징 데이터 및 상기 복수의 특징 데이터 중 상기 제2 도메인의 상기 제2 클래스에 대응하는 제4 특징 데이터를 이용하여, 제2 클래스에 해당하는 데이터의 도메인을 구분하는 제2 판별기를 학습시키고,
상기 제1 판별기 및 상기 제2 판별기 중 적어도 하나의 판별기의 학습에 따라, 상기 특징 추출 레이어 및 출력 레이어 중 적어도 하나를 학습시키고,
상기 출력 레이어가 적어도 하나의 특징 데이터를 입력 받아 클래스를 분류하고, 클래스 분류 결과를 출력하는 프로세서를 포함하고,
상기 프로세서는
상기 제1 판별기 및 상기 제2 판별기 중 적어도 하나와 상기 특징 추출 레이어 간에 적대적 학습을 수행하는,
기계 학습 장치.
A memory that stores one or more instructions; And
By executing the stored one or more instructions,
Extracting a plurality of feature data from the data set by the feature extraction layer,
The first characteristic data corresponding to the first class of the first domain among the extracted plurality of characteristic data and the second characteristic data corresponding to the first class of the second domain among the plurality of characteristic data By using, to train a first discriminator (discriminator) to distinguish the domain of the data corresponding to the first class,
A second feature data is generated by using a third feature data corresponding to the second class of the first domain and a fourth feature data corresponding to the second class of the second domain among the plurality of feature data. Train a second discriminator to classify the domain of data corresponding to the class,
Learning at least one of the feature extraction layer and the output layer according to learning of at least one of the first discriminator and the second discriminator,
The output layer includes a processor to classify a class by receiving at least one feature data, and to output a class classification result,
The processor
Performing hostile learning between at least one of the first discriminator and the second discriminator and the feature extraction layer,
Machine learning device.
삭제delete 제10항에 있어서,
상기 프로세서는
상기 제1 판별기 및 상기 제2 판별기의 학습 정확도가 제1 임계값을 초과한 경우, 상기 특징 추출 레이어 및 출력 레이어 중 적어도 하나를 학습시키는
기계 학습 장치.
The method of claim 10,
The processor
When the learning accuracy of the first discriminator and the second discriminator exceeds a first threshold, learning at least one of the feature extraction layer and the output layer
Machine learning device.
제10항에 있어서,
상기 프로세서는
상기 출력 레이어의 학습 정확도가 제2 임계값의 초과이거나 이상인 경우, 상기 제1 판별기 및 상기 제2 판별기를 이용하여 상기 특징 추출 레이어를 학습시키고,
상기 출력 레이어의 학습 정확도가 상기 제2 임계값의 미만이거나 이하인 경우, 상기 출력 레이어 및 상기 특징 추출 레이어 중 적어도 하나를 학습시키는
기계 학습 장치.
The method of claim 10,
The processor
When the learning accuracy of the output layer exceeds or exceeds a second threshold, the feature extraction layer is trained using the first discriminator and the second discriminator,
If the learning accuracy of the output layer is less than or equal to or less than the second threshold, learning at least one of the output layer and the feature extraction layer
Machine learning device.
제10항에 있어서,
상기 프로세서는
반전 정답 레이블 및 예측 레이블 사이의 오차 또는 정답 레이블 및 반전 예측 레이블 사이의 오차를 이용하여, 상기 특징 추출 레이어를 학습시키고,
상기 정답 레이블은 상기 복수의 특징 데이터 중 적어도 하나의 특징 데이터에 대한 정답 도메인 정보이고,
상기 반전 정답 레이블은 상기 정답 레이블을 반전한 것이고,
상기 예측 레이블은 상기 제1 판별기 또는 상기 제2 판별기가 예측한 레이블이고,
상기 반전 예측 레이블은 상기 예측 레이블을 반전한 것인
기계 학습 장치.
The method of claim 10,
The processor
Using the error between the correct answer label and the predictive label or the error between the correct answer label and the reverse predictive label, the feature extraction layer is trained,
The correct answer label is correct answer domain information for at least one characteristic data among the plurality of characteristic data,
The inverted correct answer label is a reverse of the correct answer label,
The predicted label is a label predicted by the first discriminator or the second discriminator,
The inverted prediction label is an inversion of the predicted label.
Machine learning device.
제10항에 있어서,
상기 제1 도메인 및 상기 제2 도메인은 의료 데이터에 대응하는 도메인을 포함하고,
상기 클래스는 질병 유무 및 질병 종류 중 적어도 하나에 대응하는 복수의 클래스를 포함하는
기계 학습 장치.
The method of claim 10,
The first domain and the second domain include domains corresponding to medical data,
The class includes a plurality of classes corresponding to at least one of the presence or absence and type of disease
Machine learning device.
제10항에 있어서,
상기 제1 도메인은 2D 이미지에 대응하고,
상기 제2 도메인은 3D 이미지에 대응하는
기계 학습 장치.
The method of claim 10,
The first domain corresponds to a 2D image,
The second domain corresponds to a 3D image
Machine learning device.
제16항에 있어서,
상기 2D 이미지는 FFDM(Full-Field Digital Mammography) 이미지를 포함하고,
상기 3D 이미지는 DBT(Digital breast tomosynthesis) 이미지를 포함하는
기계 학습 장치.
The method of claim 16,
The 2D image includes a full-field digital mammography (FFDM) image,
The 3D image includes a digital breast tomosynthesis (DBT) image
Machine learning device.
제10항에 있어서,
상기 제1 도메인은 단일 레이어 이미지에 대응하고,
상기 제2 도메인은 멀티 레이어 이미지에 대응하는
기계 학습 장치.
The method of claim 10,
The first domain corresponds to a single layer image,
The second domain corresponds to a multi-layer image
Machine learning device.
KR1020190128092A 2019-10-15 2019-10-15 Method for domain adaptation based on adversarial learning and apparatus thereof KR102095684B1 (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
KR1020190128092A KR102095684B1 (en) 2019-10-15 2019-10-15 Method for domain adaptation based on adversarial learning and apparatus thereof

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
KR1020190128092A KR102095684B1 (en) 2019-10-15 2019-10-15 Method for domain adaptation based on adversarial learning and apparatus thereof

Related Parent Applications (1)

Application Number Title Priority Date Filing Date
KR1020190038197A Division KR102039138B1 (en) 2019-04-02 2019-04-02 Method for domain adaptation based on adversarial learning and apparatus thereof

Publications (1)

Publication Number Publication Date
KR102095684B1 true KR102095684B1 (en) 2020-03-31

Family

ID=70002093

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1020190128092A KR102095684B1 (en) 2019-10-15 2019-10-15 Method for domain adaptation based on adversarial learning and apparatus thereof

Country Status (1)

Country Link
KR (1) KR102095684B1 (en)

Cited By (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN111860618A (en) * 2020-07-01 2020-10-30 杭州健培科技有限公司 Bidirectional GAN model for pathological data conversion and construction and application methods thereof
KR102389368B1 (en) * 2021-01-13 2022-04-21 인하대학교 산학협력단 Adaptive Graph Adversarial Networks for Partial Domain Adaptation
KR20230026815A (en) 2021-08-18 2023-02-27 국민대학교산학협력단 Image deep learning method and device leveraging style transfer and adversarial learning

Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20180307947A1 (en) * 2017-04-25 2018-10-25 Nec Laboratories America, Inc. Cyclic generative adversarial network for unsupervised cross-domain image generation
KR20180120478A (en) 2017-04-27 2018-11-06 에스케이텔레콤 주식회사 Method for learning Cross-domain Relations based on Generative Adversarial Network
US20190065853A1 (en) * 2017-08-31 2019-02-28 Nec Laboratories America, Inc. Parking lot surveillance with viewpoint invariant object recognition by synthesization and domain adaptation

Patent Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20180307947A1 (en) * 2017-04-25 2018-10-25 Nec Laboratories America, Inc. Cyclic generative adversarial network for unsupervised cross-domain image generation
KR20180120478A (en) 2017-04-27 2018-11-06 에스케이텔레콤 주식회사 Method for learning Cross-domain Relations based on Generative Adversarial Network
US20190065853A1 (en) * 2017-08-31 2019-02-28 Nec Laboratories America, Inc. Parking lot surveillance with viewpoint invariant object recognition by synthesization and domain adaptation

Non-Patent Citations (2)

* Cited by examiner, † Cited by third party
Title
Exploring Explicit Domain Supervision for Latent Space Disentanglement in Unpaired Image-to-Image Translation. arXiv. 2019.03.26. *
MD-GAN: Multi-Discriminator Generative Adversarial Networks for Distributed Datasets. arXiv. 2019.02.06. *

Cited By (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN111860618A (en) * 2020-07-01 2020-10-30 杭州健培科技有限公司 Bidirectional GAN model for pathological data conversion and construction and application methods thereof
CN111860618B (en) * 2020-07-01 2024-05-14 杭州健培科技有限公司 Bidirectional GAN model for pathological data conversion and construction and application methods thereof
KR102389368B1 (en) * 2021-01-13 2022-04-21 인하대학교 산학협력단 Adaptive Graph Adversarial Networks for Partial Domain Adaptation
KR20230026815A (en) 2021-08-18 2023-02-27 국민대학교산학협력단 Image deep learning method and device leveraging style transfer and adversarial learning

Similar Documents

Publication Publication Date Title
KR102039138B1 (en) Method for domain adaptation based on adversarial learning and apparatus thereof
Taylor et al. Automated detection of moderate and large pneumothorax on frontal chest X-rays using deep convolutional neural networks: A retrospective study
US10853449B1 (en) Report formatting for automated or assisted analysis of medical imaging data and medical diagnosis
Zech et al. Variable generalization performance of a deep learning model to detect pneumonia in chest radiographs: a cross-sectional study
US10499857B1 (en) Medical protocol change in real-time imaging
Parmar et al. Data analysis strategies in medical imaging
KR102095684B1 (en) Method for domain adaptation based on adversarial learning and apparatus thereof
Wells et al. Artificial intelligence in dermatopathology: Diagnosis, education, and research
KR101908680B1 (en) A method and apparatus for machine learning based on weakly supervised learning
JP2020522794A (en) Neural network classification
CN111696642A (en) System and method for generating a description of an abnormality in a medical image
US10726948B2 (en) Medical imaging device- and display-invariant segmentation and measurement
Sivakumar et al. A novel method to detect bleeding frame and region in wireless capsule endoscopy video
US10748650B1 (en) Machine learning of dental images for E-commerce
CN112347977B (en) Automatic detection method, storage medium and device for induced pluripotent stem cells
CA3156623A1 (en) Automatic reduction of training sets for machine learning programs
KR20190143510A (en) System and method for two phase diagnosis using neural network
CN113380413A (en) Method and device for constructing invalid re-circulation (FR) prediction model
Mayampurath et al. Combining patient visual timelines with deep learning to predict mortality
Tosun et al. Histomapr™: An explainable ai (xai) platform for computational pathology solutions
Rajaraman et al. Novel loss functions for ensemble-based medical image classification
Kumar et al. Deep-learning-enabled multimodal data fusion for lung disease classification
WO2021173826A1 (en) Systems and methods for screening and staging of pneumoconiosis
US11809826B2 (en) Assertion detection in multi-labelled clinical text using scope localization
EP4057296A1 (en) Machine learning for automatic detection of intracranial hemorrhages with uncertainty measures from ct images

Legal Events

Date Code Title Description
E701 Decision to grant or registration of patent right
GRNT Written decision to grant