KR102037483B1 - Method for normalizing neural network data and apparatus thereof - Google Patents

Method for normalizing neural network data and apparatus thereof Download PDF

Info

Publication number
KR102037483B1
KR102037483B1 KR1020190038321A KR20190038321A KR102037483B1 KR 102037483 B1 KR102037483 B1 KR 102037483B1 KR 1020190038321 A KR1020190038321 A KR 1020190038321A KR 20190038321 A KR20190038321 A KR 20190038321A KR 102037483 B1 KR102037483 B1 KR 102037483B1
Authority
KR
South Korea
Prior art keywords
style
data
neural network
feature data
feature
Prior art date
Application number
KR1020190038321A
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 KR1020190038321A priority Critical patent/KR102037483B1/en
Application granted granted Critical
Publication of KR102037483B1 publication Critical patent/KR102037483B1/en

Links

Images

Classifications

    • G06N3/0481
    • 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/048Activation functions
    • 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

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 normalization method and an apparatus thereof capable of preserving style information contained in neural network data even if the size of arrangement is small. According to some embodiments of the present invention, a neural network data normalization method is capable of obtaining first feature data for a first training image outputted from a specific layer of the neural network, obtaining second feature data for a second training image outputted from the specific layer, generating a first style adjustment value for the first feature data based on the first feature data, generating a second style adjustment value for the second feature data based on the second feature data, normalizing the first feature data using the generated first style adjustment value, and normalizing the second feature data using the generated second style adjustment value. Therefore, even if normalization is performed, style information contained in feature data may be preserved.

Description

신경망 데이터 정규화 방법 및 그 장치{METHOD FOR NORMALIZING NEURAL NETWORK DATA AND APPARATUS THEREOF}Neural network data normalization method and apparatus therefor {METHOD FOR NORMALIZING NEURAL NETWORK DATA AND APPARATUS THEREOF}

본 개시는 신경망 데이터 정규화 방법 및 그 장치에 관한 것이다. 보다 자세하게는, 신경망 데이터에 내재되어 있는 스타일 정보를 고려하여 상기 신경망 데이터를 정규화하는 방법 및 그 방법을 지원하는 장치에 관한 것이다.The present disclosure relates to a neural network data normalization method and apparatus thereof. More specifically, the present invention relates to a method for normalizing the neural network data in consideration of style information inherent in the neural network data, and an apparatus for supporting the method.

신경망(neural network)은 인간의 뉴런 구조를 모사하여 만든 기계 학습 모델이다. 신경망은 하나 이상의 레이어로 구성되고, 각 레이어의 출력 데이터는 다음 레이어의 입력으로 이용된다. 최근에는, 다수의 레이어로 구성된 심층 신경망을 활용하는 것에 대한 연구가 집중적으로 진행되고 있으며, 심층 신경망은 음성 인식, 자연어 처리, 병변 진단 등 다양한 분야에서 인식 성능을 높이는 데 중요한 역할을 하고 있다.A neural network is a machine learning model that simulates the structure of human neurons. The neural network consists of one or more layers, and the output data of each layer is used as the input of the next layer. In recent years, research on the use of a deep neural network composed of a plurality of layers has been intensively conducted. The deep neural network plays an important role in improving recognition performance in various fields such as speech recognition, natural language processing, and lesion diagnosis.

심층 신경망은 다수의 은닉 레이어를 포함하기 때문에 다양한 비선형적 관계를 학습할 수 있다. 그러나, 다수의 은닉 레이어를 학습하다 보면, 과적합(overfitting), 기울기 소실 문제(vanishing gradient problem) 등이 발생될 수 있다. 이와 같은 문제를 해결하기 위해, 기계 학습 분야에서는 정규화 기법(normalization)이 주로 활용되고 있다. 이외에도, 정규화 기법은 학습의 안정화, 학습 속도 향상 등과 같이 다양한 목적을 위해 이용된다.Deep neural networks contain a number of hidden layers, allowing them to learn a variety of nonlinear relationships. However, learning a large number of hidden layers may result in overfitting, vanishing gradient problems, and the like. In order to solve this problem, the normalization technique (normalization) is mainly used in the field of machine learning. In addition, the normalization technique is used for various purposes such as stabilization of learning and speed of learning.

한국공개특허 제10-2017-0108081호 (2017.09.26일 공개)Korean Patent Publication No. 10-2017-0108081 (published Sep. 26, 2017)

본 개시의 몇몇 실시예를 통해 해결하고자 하는 기술적 과제는, 배치 사이즈가 충분히 크지 않은 경우에도, 트레이닝 이미지와 연관된 신경망 데이터의 스타일 정보를 보존할 수 있는 정규화 방법 및 그 방법을 지원하는 장치를 제공하는 것이다.The technical problem to be solved by some embodiments of the present disclosure is to provide a normalization method that can preserve the style information of neural network data associated with the training image, even if the batch size is not large enough, and an apparatus supporting the method. will be.

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

상기 기술적 과제를 해결하기 위한, 본 개시의 몇몇 실시예에 따른 신경망 데이터 정규화 방법은, 컴퓨팅 장치에서 신경망의 데이터를 정규화하는 방법에 있어서, 상기 신경망의 특정 레이어에서 출력된 제1 트레이닝 이미지에 대한 제1 특징 데이터를 얻는 단계, 상기 특정 레이어에서 출력된 제2 트레이닝 이미지에 대한 제2 특징 데이터를 얻는 단계, 상기 제1 특징 데이터에 기초하여 상기 제1 특징 데이터에 대한 제1 스타일 조정 값을 생성하는 단계, 상기 제2 특징 데이터에 기초하여 상기 제2 특징 데이터에 대한 제2 스타일 조정 값을 생성하는 단계, 상기 생성된 제1 스타일 조정 값을 이용하여 상기 제1 특징 데이터를 정규화하는 단계 및 상기 생성된 제2 스타일 조정 값을 이용하여 상기 제2 특징 데이터를 정규화하는 단계를 포함할 수 있다.In order to solve the above technical problem, a neural network data normalization method according to some embodiments of the present disclosure includes a method for normalizing data of a neural network in a computing device, the method comprising: generating a first training image output from a specific layer of the neural network; Obtaining first feature data, obtaining second feature data for a second training image output from the specific layer, and generating a first style adjustment value for the first feature data based on the first feature data Generating a second style adjustment value for the second feature data based on the second feature data; normalizing the first feature data using the generated first style adjustment value; and generating Normalizing the second feature data using the second style adjustment value.

몇몇 실시예에서, 상기 제1 스타일 조정 값을 생성하는 단계는, 상기 제1 특징 데이터의 스타일 정보를 추출하는 단계 및 상기 추출된 스타일 정보를 이용하여 상기 제1 스타일 조정 값을 생성하는 단계를 포함할 수 있다.In some embodiments, generating the first style adjustment value comprises extracting style information of the first feature data and generating the first style adjustment value using the extracted style information. can do.

몇몇 실시예에서, 상기 스타일 정보는 상기 특징 데이터의 평균 및 표준 편차 중 적어도 하나를 포함할 수 있다.In some embodiments, the style information may include at least one of an average and a standard deviation of the feature data.

몇몇 실시예에서, 상기 제1 스타일 조정 값을 생성하는 단계는, 상기 추출된 스타일 정보에 상기 신경망의 가중치와 함께 업데이트되는 스타일 조정 파라미터의 값을 반영하여 상기 제1 스타일 조정 값을 생성하는 단계를 포함할 수 있다.In some embodiments, the generating of the first style adjustment value may include generating the first style adjustment value by reflecting a value of a style adjustment parameter updated with the weight of the neural network in the extracted style information. It may include.

몇몇 실시예에서, 상기 특징 데이터는 제1 채널의 제1 특징 맵(feature map) 데이터와 제2 채널의 제2 특징 맵 데이터를 포함하고, 상기 스타일 정보는 상기 제1 특징 맵 데이터에 대한 제1 스타일 정보와 상기 제2 특징 맵 데이터에 대한 제2 스타일 정보를 포함하며, 상기 제1 스타일 조정 값을 생성하는 단계는, 완전 연결 레이어(fully-connected layer)를 통해 상기 제1 스타일 정보와 상기 제2 스타일 정보를 종합(aggregating)하여 상기 제1 스타일 조정 값을 생성하는 단계를 포함할 수 있다.In some embodiments, the feature data includes first feature map data of a first channel and second feature map data of a second channel, and the style information includes a first feature for the first feature map data. And second style information about the second feature map data, wherein the generating of the first style adjustment value comprises: the first style information and the first style information through a fully-connected layer; And aggregating second style information to generate the first style adjustment value.

몇몇 실시예에서, 상기 특징 데이터는 제1 채널의 제1 특징 맵(feature map) 데이터와 제2 채널의 제2 특징 맵 데이터를 포함하고, 상기 스타일 정보는 상기 제1 특징 맵 데이터에 대한 제1 스타일 정보와 상기 제2 특징 맵 데이터에 대한 제2 스타일 정보를 포함하며, 상기 제1 스타일 조정 값을 생성하는 단계는, 상기 제1 스타일 정보를 이용하여 상기 제1 채널에 대응되는 스타일 조정 값을 생성하는 단계 및 상기 제2 스타일 정보를 이용하여 상기 제2 채널에 대응되는 스타일 조정 값을 생성하는 단계를 포함할 수 있다.In some embodiments, the feature data includes first feature map data of a first channel and second feature map data of a second channel, and the style information includes a first feature for the first feature map data. And second style information about the second feature map data, wherein the generating of the first style adjustment value comprises: using the first style information, a style adjustment value corresponding to the first channel; And generating a style adjustment value corresponding to the second channel by using the second style information.

몇몇 실시예에서, 상기 제1 특징 데이터를 정규화하는 단계는, 상기 제1 트레이닝 이미지가 속한 배치(batch)의 통계 정보를 이용하여 상기 제1 특징 데이터를 제1 정규화 데이터로 변환하는 단계 및 상기 생성된 제1 스타일 조정 값을 이용하여 상기 제1 정규화 데이터에 대한 어파인 변환(affine transformation)을 수행하는 단계를 포함할 수 있다.In some embodiments, normalizing the first feature data may include converting the first feature data into first normalized data using the statistical information of a batch to which the first training image belongs and generating the first feature data. And performing affine transformation on the first normalized data by using the first style adjustment value.

몇몇 실시예에서, 상기 제1 스타일 조정 값을 생성하는 단계는, 상기 제1 특징 데이터와 상기 신경망의 가중치와 함께 업데이트되는 컨볼루션 필터(convolution filter)와의 컨볼루션 연산을 통해 상기 제1 스타일 조정 값을 생성하는 단계를 포함할 수 있다.In some embodiments, the generating of the first style adjustment value comprises: a first style adjustment value through a convolution operation with a convolution filter updated with the first feature data and the weight of the neural network; It may include the step of generating.

상기 기술적 과제를 해결하기 위한, 본 개시의 몇몇 실시예에 따른 신경망 데이터 정규화 장치는, 하나 이상의 인스트럭션들(instructions)을 저장하는 메모리 및 상기 저장된 하나 이상의 인스트럭션들을 실행함으로써, 신경망의 특정 레이어에서 출력된 제1 트레이닝 이미지에 대한 제1 특징 데이터를 얻고, 상기 특정 레이어에서 출력된 제2 트레이닝 이미지에 대한 제2 특징 데이터를 얻으며, 상기 제1 특징 데이터에 기초하여 상기 제1 특징 데이터에 대한 제1 스타일 조정 값을 생성하고, 상기 제2 특징 데이터에 기초하여 상기 제2 특징 데이터에 대한 제2 스타일 조정 값을 생성하며, 상기 생성된 제1 스타일 조정 값을 이용하여 상기 제1 특징 데이터를 정규화하고, 상기 생성된 제2 스타일 조정 값을 이용하여 상기 제2 특징 데이터를 정규화하는 프로세서를 포함할 수 있다.In order to solve the above technical problem, the neural network data normalization apparatus according to some embodiments of the present disclosure is output in a specific layer of a neural network by executing a memory for storing one or more instructions and the stored one or more instructions. Obtaining first feature data for a first training image, obtaining second feature data for a second training image output from the particular layer, and a first style for the first feature data based on the first feature data Generate an adjustment value, generate a second style adjustment value for the second feature data based on the second feature data, normalize the first feature data using the generated first style adjustment value, A processor to normalize the second feature data using the generated second style adjustment value It can be included.

상기 기술적 과제를 해결하기 위한, 본 개시의 몇몇 실시예에 따른 컴퓨터 프로그램은, 컴퓨팅 장치와 결합되어, 신경망의 특정 레이어에서 출력된 제1 트레이닝 이미지에 대한 제1 특징 데이터를 얻는 단계, 상기 특정 레이어에서 출력된 제2 트레이닝 이미지에 대한 제2 특징 데이터를 얻는 단계, 상기 제1 특징 데이터에 기초하여 상기 제1 특징 데이터에 대한 제1 스타일 조정 값을 생성하는 단계, 상기 제2 특징 데이터에 기초하여 상기 제2 특징 데이터에 대한 제2 스타일 조정 값을 생성하는 단계, 상기 생성된 제1 스타일 조정 값을 이용하여 상기 제1 특징 데이터를 정규화하는 단계 및 상기 생성된 제2 스타일 조정 값을 이용하여 상기 제2 특징 데이터를 정규화하는 단계를 실행시키기 위하여, 컴퓨터로 판독 가능한 기록매체에 저장될 수 있다.In order to solve the above technical problem, a computer program according to some embodiments of the present disclosure may be combined with a computing device to obtain first feature data for a first training image output from a specific layer of a neural network, wherein the specific layer Obtaining second feature data for the second training image output from the step of generating a first style adjustment value for the first feature data based on the first feature data, based on the second feature data Generating a second style adjustment value for the second feature data, normalizing the first feature data using the generated first style adjustment value, and using the generated second style adjustment value In order to carry out the step of normalizing the second characteristic data, it may be stored in a computer-readable recording medium.

상기 기술적 과제를 해결하기 위한, 본 개시의 다른 몇몇 실시예에 따른 신경망 데이터 정규화 방법은, 컴퓨팅 장치에서 신경망의 데이터를 정규화하는 방법에 있어서, 상기 신경망의 제1 레이어에서 출력된 트레이닝 이미지에 대한 특징 데이터를 얻는 단계, 상기 특징 데이터의 스타일 정보를 추출하는 단계, 상기 스타일 정보에 기초하여 상기 특징 데이터를 정규화하는 단계 및 상기 정규화된 특징 데이터를 상기 신경망의 제2 레이어의 입력으로 제공하는 단계를 포함할 수 있다.In order to solve the above technical problem, a neural network data normalization method according to another embodiment of the present disclosure, in a method of normalizing data of a neural network in a computing device, is characterized in that a training image is output from a first layer of the neural network. Obtaining data, extracting style information of the feature data, normalizing the feature data based on the style information, and providing the normalized feature data as an input of a second layer of the neural network. can do.

상기 기술적 과제를 해결하기 위한, 본 개시의 다른 몇몇 실시예에 따른 신경망 데이터 정규화 장치는, 하나 이상의 인스트럭션들(instructions)을 저장하는 메모리 및 상기 저장된 하나 이상의 인스트럭션들을 실행함으로써, 신경망의 제1 레이어에서 출력된 트레이닝 이미지에 대한 특징 데이터를 얻어오고, 상기 특징 데이터의 스타일 정보를 추출하며, 상기 스타일 정보에 기초하여 상기 특징 데이터를 정규화하며, 상기 정규화된 특징 데이터를 상기 신경망의 제2 레이어의 입력으로 제공의 제2 레이어의 입력으로 제공하는 프로세서를 포함할 수 있다.In order to solve the above technical problem, the neural network data normalization apparatus according to another embodiment of the present disclosure, in the first layer of the neural network by executing a memory and one or more stored instructions to store one or more instructions; Obtaining feature data for the output training image, extracting style information of the feature data, normalizing the feature data based on the style information, and converting the normalized feature data into an input of a second layer of the neural network. It may include a processor to provide as input of the second layer of provision.

상기 기술적 과제를 해결하기 위한, 본 개시의 다른 몇몇 실시예에 따른 컴퓨터 프로그램은, 컴퓨팅 장치와 결합되어, 신경망의 제1 레이어에서 출력된 트레이닝 이미지에 대한 특징 데이터를 얻는 단계, 상기 특징 데이터의 스타일 정보를 추출하는 단계, 상기 스타일 정보에 기초하여 상기 특징 데이터를 정규화하는 단계 및 상기 정규화된 특징 데이터를 상기 신경망의 제2 레이어의 입력으로 제공하는 단계를 실행시키기 위하여 컴퓨터로 판독 가능한 기록매체에 저장될 수 있다.In order to solve the above technical problem, a computer program according to another exemplary embodiment of the present disclosure may be combined with a computing device to obtain feature data for a training image output from a first layer of a neural network, and the style of the feature data. Extracting information, normalizing the feature data based on the style information, and providing the normalized feature data as input of a second layer of the neural network to a computer-readable recording medium. Can be.

도 1은 본 개시의 몇몇 실시예에 따른 신경망 학습 장치와 그 학습 환경을 설명하기 위한 도면이다.
도 2는 배치 정규화 기법을 설명하기 위한 도면이다.
도 3은 본 개시의 몇몇 실시예에 따른 신경망 데이터 정규화 방법을 개략적으로 나타내는 개념도이다.
도 4는 본 개시의 몇몇 실시예에 따른 신경망 데이터 정규화 방법을 나타내는 예시적인 흐름도이다.
도 5는 본 개시의 다양한 실시예에서 참조될 수 있는 신경망의 구조와 정규화 레이어를 설명하기 위한 예시도이다.
도 6은 본 개시의 몇몇 실시예에서 참조될 수 있는 특징 데이터를 설명하기 위한 예시도이다.
도 7은 본 개시의 몇몇 실시예에 따른 스타일 조정 프로세스를 설명하기 위한 예시적인 흐름도이다.
도 8 내지 도 10은 본 개시의 몇몇 실시예에 따른 스타일 조정 프로세스를 부연 설명하기 위한 예시도이다.
도 11은 본 개시의 다른 몇몇 실시예에 따른 스타일 조정 프로세스를 설명하기 위한 예시도이다.
도 12는 본 개시의 다른 몇몇 실시예에 따른 신경망 데이터 정규화 방법을 설명하기 위한 예시도이다.
도 13은 본 개시의 다양한 실시예에 따른 장치를 구현할 수 있는 예시적인 컴퓨팅 장치를 도시한다.
1 is a diagram illustrating a neural network learning apparatus and its learning environment according to some embodiments of the present disclosure.
2 is a diagram for explaining a batch normalization technique.
3 is a conceptual diagram schematically illustrating a neural network data normalization method according to some embodiments of the present disclosure.
4 is an exemplary flowchart illustrating a neural network data normalization method according to some embodiments of the present disclosure.
5 is an exemplary diagram for describing a structure and a normalization layer of a neural network that may be referenced in various embodiments of the present disclosure.
6 is an exemplary diagram for describing feature data that may be referred to in some embodiments of the present disclosure.
7 is an exemplary flowchart for describing a style adjustment process according to some embodiments of the present disclosure.
8 to 10 are exemplary diagrams for further describing a style adjusting process according to some embodiments of the present disclosure.
11 is an exemplary diagram for describing a style adjusting process according to some other embodiments of the present disclosure.
12 is an exemplary diagram for describing a neural network data normalization method according to another exemplary embodiment of the present disclosure.
13 illustrates an example computing device that may implement an apparatus in accordance with various embodiments of the present disclosure.

이하, 첨부된 도면을 참조하여 본 개시의 바람직한 실시예들을 상세히 설명한다. 본 개시의 이점 및 특징, 그리고 그것들을 달성하는 방법은 첨부되는 도면과 함께 상세하게 후술되어 있는 실시예들을 참조하면 명확해질 것이다. 그러나 본 개시의 기술적 사상은 이하의 실시예들에 한정되는 것이 아니라 서로 다른 다양한 형태로 구현될 수 있으며, 단지 이하의 실시예들은 본 개시의 기술적 사상을 완전하도록 하고, 본 개시가 속하는 기술분야에서 통상의 지식을 가진 자에게 본 개시의 범주를 완전하게 알려주기 위해 제공되는 것이며, 본 개시의 기술적 사상은 청구항의 범주에 의해 정의될 뿐이다.Hereinafter, exemplary embodiments of the present disclosure will be described in detail with reference to the accompanying drawings. Advantages and features of the present disclosure, and methods of accomplishing the same will become apparent with reference to the embodiments described below in detail in conjunction with the accompanying drawings. However, the technical spirit of the present disclosure is not limited to the following embodiments, and may be implemented in various 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 those skilled in the art the scope of the present disclosure, and the technical spirit of the present disclosure is only defined by the scope of the claims.

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

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

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

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

본 명세서에 대한 설명에 앞서, 본 명세서에서 사용되는 몇몇 용어들에 대하여 명확하게 하기로 한다.Prior to the description herein, some terms used herein 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 face recognition, facial expression recognition, gender classification, pose classification, and the like are performed from face data, each of face recognition, facial expression recognition, gender classification, and pose classification may correspond to an individual task. As another example, when performing recognition, classification, prediction, or the like of abnormality 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 may be referred to as the destination 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 neural structures. For example, the neural network may include all kinds of neural network based models such as an artificial neural network (ANN), a convolutional neural network (CNN), and the like.

본 명세서에서, 신경망 데이터(neural network data)란, 신경망을 구성하는 각 레이어에서 생성되거나 입출력되는 모든 종류의 데이터를 포함할 수 있다. 가령, 상기 신경망 데이터는 트레이닝 이미지가 신경망을 통해 포워딩됨에 따라 생성되는 상기 트레이닝 이미지의 특징 데이터(e.g. 특징 맵)를 포함할 수 있다.In this specification, neural network data may include all kinds of data generated or input / output in each layer constituting the neural network. For example, the neural network data may include feature data (e.g. feature map) of the training image generated as the training image is forwarded through the neural network.

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

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

도 1은 본 개시의 몇몇 실시예에 따른 신경망 학습 장치(10)와 학습 환경을 예시한다.1 illustrates a neural network learning apparatus 10 and a learning environment in accordance with some embodiments of the present disclosure.

도 1에 도시된 바와 같이, 신경망 학습 장치(10)는 목적 태스크를 수행하기 위해 신경망에 대한 기계학습을 수행하는 컴퓨팅 장치이다. 이때, 상기 목적 태스크는 이미지와 연관된 태스크(e.g. 객체 인식)일 수 있으나, 본 개시의 기술적 범위가 태스크 또는 신경망의 종류에 한정되는 것은 아니다. 이하에서는, 설명의 편의상 신경망 학습 장치(10)를 학습 장치(10)로 약칭하도록 한다.As shown in FIG. 1, the neural network learning apparatus 10 is a computing device that performs machine learning on a neural network to perform a target task. In this case, the object task may be a task (e.g. object recognition) associated with the image, but the technical scope of the present disclosure is not limited to the type of task or neural network. Hereinafter, for convenience of explanation, the neural network learning apparatus 10 will be abbreviated as the learning apparatus 10.

상기 컴퓨팅 장치는, 노트북, 데스크톱(desktop), 랩탑(laptop), 서버(server) 등이 될 수 있으나, 이에 국한되는 것은 아니며 컴퓨팅 기능이 구비된 모든 종류의 장치를 포함할 수 있다. 상기 컴퓨팅 장치의 일 예는 도 13을 참조하도록 한다.The computing device may be a laptop, a desktop, a laptop, a server, or the like, but is not limited thereto and may include any type of device having a computing function. An example of the computing device is described with reference to FIG. 13.

도 1은 학습 장치(10)가 하나의 컴퓨팅 장치로 구현된 것을 예로써 도시하고 있으나, 실제 물리적 환경에서 학습 장치(10)의 제1 기능은 제1 컴퓨팅 장치에서 구현되고, 학습 장치(10)의 제2 기능은 제2 컴퓨팅 장치에서 구현될 수도 있다. 또한, 학습 장치(10)는 복수의 컴퓨팅 장치로 구성될 수 있고, 복수의 컴퓨팅 장치가 제1 기능과 제2 기능을 나누어 구현할 수도 있다.Although FIG. 1 illustrates that the learning device 10 is implemented as one computing device, the first function of the learning device 10 is implemented in the first computing device in an actual physical environment, and the learning device 10 is illustrated in FIG. The second function of may be implemented in the second computing device. In addition, the learning device 10 may be composed of a plurality of computing devices, and the plurality of computing devices may be implemented by dividing the first function and the second function.

도 1에 도시된 바와 같이, 학습 장치(10)는 복수의 트레이닝 이미지로 구성된 데이터셋(11)을 이용하여 신경망(e.g. 컨볼루션 신경망)을 트레이닝할 수 있다. 상기 신경망을 구성하는 복수의 레이어 중 적어도 일부는 정규화 레이어를 포함할 수 있다. 또한, 학습 장치(10)는 상기 정규화 레이어를 통해 트레이닝 이미지에서 추출된 특징 데이터(e.g. 특징 맵)에 대한 정규화를 수행할 수 있다.As shown in FIG. 1, the learning apparatus 10 may train a neural network (e.g. a convolutional neural network) using a dataset 11 composed of a plurality of training images. At least some of the plurality of layers constituting the neural network may include a normalization layer. In addition, the learning apparatus 10 may perform normalization on feature data (e.g. feature map) extracted from a training image through the normalization layer.

몇몇 실시예에서, 상기 정규화는 배치 정규화(batch normalization) 기법에 기초하여 수행될 수 있다. 배치 정규화 기법에 관한 내용은 도 2에 도시되어 있다. 도 2에 도시된 바와 같이, 배치 정규화 기법은 정규화 프로세스(15)와 어파인 변환(affine transformation) 프로세스(17)를 통해 신경망 데이터를 정규화하는 기법이다. 이때, 정규화 프로세스(15)는 신경망 데이터의 배치 통계 정보(즉, 평균과 표준 편차)에 기반하여 수행된다.In some embodiments, the normalization may be performed based on a batch normalization technique. A description of the batch normalization technique is shown in FIG. As shown in FIG. 2, the batch normalization technique is a technique for normalizing neural network data through a normalization process 15 and an affine transformation process 17. At this time, the normalization process 15 is performed based on batch statistical information (ie, mean and standard deviation) of neural network data.

한편, 이미지의 스타일 정보 관점에서 배치 정규화 기법을 해석해보면, 스타일 정보의 보존 여부는 배치 사이즈(batch size)와 밀접하게 연관되어 있음을 알 수 있다. 구체적으로, 배치 사이즈가 충분히 크게 설정된 경우, 배치 정규화 기법은 신경망 데이터에 내포된 스타일 정보를 잘 보존할 수 있으나, 반대의 경우라면, 배치 정규화를 통해 스타일 정보가 왜곡되거나 손실될 수도 있다. 배치 사이즈가 작아질수록 배치 통계 정보에 포함된 바이어스(bias)가 커지고, 이로 인해 신경망 데이터에 내포된 스타일 정보가 손실될 수 있기 때문이다. 이는, 인스턴스 정규화(instance normalization) 기법에 의해 스타일 정보가 완전히 제거되는 것과 동일한 원리로 볼 수 있다.On the other hand, when the batch normalization technique is analyzed in terms of the style information of the image, it can be seen that the preservation of the style information is closely related to the batch size. Specifically, when the batch size is set large enough, the batch normalization technique may well preserve the style information embedded in the neural network data, but in the opposite case, the style information may be distorted or lost through batch normalization. This is because the smaller the batch size, the larger the bias included in the batch statistics information, and thus, the style information contained in the neural network data may be lost. This can be seen as the same principle that the style information is completely removed by the instance normalization technique.

그러나, 신경망을 트레이닝할 때, 메모리 제약 등의 다양한 이유로 배치 사이즈를 충분히 크게 설정할 수 없는 경우가 존재한다. 또한, 특정한 이미지 인식 문제에 있어서는 스타일 정보가 중요한 역할을 수행할 수 있다. 가령, 이미지로부터 날씨 혹은 시간대를 인식하고자 할 때, 이미지의 밝기와 대조 등의 스타일 정보는 날씨 혹은 시간대를 인식하기 위한 중요한 단서가 될 수도 있다. 이와 같은 경우, 작은 배치 사이즈로 신경망을 트레이닝하면, 스타일 정보의 손실로 인해 신경망의 성능은 떨어질 수 밖에 없다.However, when training neural networks, there are cases where the batch size cannot be set sufficiently large for various reasons such as memory constraints. In addition, style information may play an important role in a specific image recognition problem. For example, when trying to recognize the weather or time zone from an image, style information such as brightness and contrast of the image may be an important clue for recognizing the weather or time zone. In this case, if the neural network is trained with a small batch size, the neural network performance is inevitably degraded due to loss of style information.

따라서, 배치 사이즈가 충분히 크지 않은 경우에도 신경망 데이터에 내포된 스타일 정보를 보존할 수 있는 정규화 방법이 요구되는데, 이하에서는 이와 관련된 본 개시의 다양한 실시예들에 대하여 자세하게 설명하도록 한다.Accordingly, there is a need for a normalization method that can preserve style information embedded in neural network data even when the batch size is not large enough. Hereinafter, various embodiments of the present disclosure will be described in detail.

몇몇 실시예에서, 학습 장치(10)는 상기 특징 데이터에 내재되어 있는 스타일 정보가 보존되도록 정규화를 수행할 수 있다. 구체적으로, 학습 장치(10)는 상기 스타일 정보에 기초하여 상기 특징 데이터의 스타일 조정 값을 생성하고, 상기 스타일 조정 값으로 어파인 변환의 파라미터 값을 조정하며, 상기 조정된 값으로 어파인 변환을 수행할 수 있다. 그렇게 함으로써, 정규화 프로세스(즉, 어파인 변환 전에 수행된 정규화 프로세스)에서 왜곡되거나 손실된 스타일 정보가 보정되거나 복구될 수 있다. 본 실시예에 따르면, 배치 사이즈가 충분히 크지 않은 경우에도, 특징 데이터에 내포된 스타일 정보가 보존될 수 있으며, 그로 인해 신경망의 성능은 향상될 수 있다.In some embodiments, the learning apparatus 10 may perform normalization so that style information embedded in the feature data is preserved. Specifically, the learning apparatus 10 generates a style adjustment value of the feature data based on the style information, adjusts a parameter value of an affine transformation with the style adjustment value, and performs an affine transformation with the adjusted value. Can be done. By doing so, distorted or lost style information in the normalization process (ie, the normalization process performed before the affine transformation) can be corrected or recovered. According to this embodiment, even when the batch size is not large enough, the style information embedded in the feature data can be preserved, whereby the performance of the neural network can be improved.

위와 같이 정규화와 관련된 실시예들에서, 학습 장치(10)는 신경망 데이터 정규화 장치(10)로 명명될 수도 있다. 신경망 데이터 정규화 장치(10)의 정규화 동작에 대해서는 추후 도 3 이하의 도면을 참조하여 보다 상세하게 설명하도록 한다.In embodiments related to normalization as described above, the learning device 10 may be referred to as the neural network data normalization device 10. The normalization operation of the neural network data normalization apparatus 10 will be described later in more detail with reference to the drawings below.

신경망의 트레이닝이 완료된 이후, 학습 장치(10)는 신경망을 이용하여 목적 태스크를 수행할 수 있다. 가령, 학습 장치(10)는 실제 이미지(13)를 신경망에 입력하여 얻어진 예측 값(e.g. 클래스별 컨피던스 스코어)에 기반하여 예측 결과를 제공할 수 있다. 클래스별 컨피던스 스코어는 소프트맥스(softmax) 활성화함수를 거친 모델의 클래스별 최종 출력 확률 분포일 수 있다.After the training of the neural network is completed, the learning apparatus 10 may perform the object task using the neural network. For example, the learning apparatus 10 may provide a prediction result based on a prediction value (e.g., a confidence score for each class) obtained by inputting the real image 13 to the neural network. The confidence score for each class may be a final output probability distribution for each class of the model that has passed the softmax activation function.

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

도 3은 본 개시의 다양한 실시예에 따른 신경망 데이터 정규화 방법을 개략적으로 나타내는 개념도이다.3 is a conceptual diagram schematically illustrating a neural network data normalization method according to various embodiments of the present disclosure.

도 3에 도시된 바와 같이, 특징 데이터(21)를 포함하는 다양한 신경망 데이터는 정규화 프로세스(22)와 어파인 변환 프로세스(23)을 통해 정규화가 수행될 수 있다. 이 경우, 정규화 프로세스(22)에서 특징 데이터(e.g. 21)의 스타일 정보가 손실될 수 있다. 스타일 정보의 손실을 방지하기 위해, 본 개시의 다양한 실시예에 따른 신경망 데이터 정규화 방법은 스타일 조정 프로세스(24)를 통해 특징 데이터(21)에 적합한 어파인 변환 파라미터의 값(25)을 결정할 수 있다. 또한, 상기 방법은 결정된 값(25)을 이용하여 어파인 변환 프로세스(23)을 수행함으로써 손실된 스타일 정보를 복구할 수 있다. 이에 따라, 정규화된 특징 데이터(26)가 원본 특징 데이터(21)의 스타일 정보를 계속 유지할 수 있게 된다.As shown in FIG. 3, various neural network data including the feature data 21 may be normalized through the normalization process 22 and the affine transformation process 23. In this case, the style information of the feature data e.g. 21 may be lost in the normalization process 22. To prevent loss of style information, the neural network data normalization method according to various embodiments of the present disclosure may determine the value 25 of the affine transformation parameter suitable for the feature data 21 through the style adjustment process 24. . The method may also recover lost style information by performing the affine transformation process 23 using the determined value 25. Accordingly, the normalized feature data 26 can continue to hold the style information of the original feature data 21.

어파인 변환 파라미터 값(25)을 생성하는 구체적인 방법은 실시예에 따라 달라질 수 있다. 이하에서는, 어파인 변환 파라미터 값(25)을 생성하는 방법을 중심으로, 본 개시의 다양한 실시예에 따른 신경망 데이터 정규화 방법에 대하여 설명하도록 한다.The specific method of generating the affine transformation parameter value 25 may vary depending on the embodiment. Hereinafter, a method of normalizing neural network data according to various embodiments of the present disclosure will be described based on the method of generating the affine transformation parameter value 25.

이하에서 후술될 방법들의 각 단계는 컴퓨팅 장치에 의해 수행될 수 있다. 다시 말하면, 상기 방법들의 각 단계는 컴퓨팅 장치의 프로세서에 의해 실행되는 하나 이상의 인스트럭션들로 구현될 수 있다. 상기 방법들에 포함되는 모든 단계는 하나의 물리적인 컴퓨팅 장치에 의하여 실행될 수도 있을 것이나, 상기 방법들의 제1 단계들은 제1 컴퓨팅 장치에 의하여 수행되고, 상기 방법들의 제2 단계들은 제2 컴퓨팅 장치에 의하여 수행될 수도 있다. 이하에서는, 상기 방법들의 각 단계가 도 1에 예시된 장치(10)에 의해 수행되는 것을 가정하여 설명을 이어가도록 한다. 따라서, 이하의 설명에서 특정 동작의 주어가 생략된 경우, 해당 동작은 상기 예시된 장치(10)에 의하여 수행될 수 있는 것으로 이해될 수 있을 것이다. 또한, 이하에서 후술될 방법은 필요에 따라 논리적으로 수행 순서가 바뀔 수 있는 범위 안에서 각 동작의 수행 순서가 바뀔 수 있음은 물론이다.Each step of the methods described below may 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 the computing device. All steps included in the methods may be performed by one physical computing device, but the first steps of the methods are performed by the first computing device and the second steps of the methods are performed on the second computing device. It may also be performed by. In the following, it is assumed that each step of the above methods is performed by the apparatus 10 illustrated in FIG. Thus, when the subject of a specific operation is omitted in the following description, it will be understood that the operation can be performed by the apparatus 10 illustrated above. In addition, the method to be described below may be changed in the order of performing each operation within a range that can be changed logically if necessary.

도 4는 본 개시의 몇몇 실시예에 따른 신경망 데이터 정규화 방법을 나타내는 예시적인 흐름도이다. 단, 이는 본 개시의 목적을 달성하기 위한 바람직한 실시예를 설명하기 위한 것일 뿐이며, 필요에 따라 일부 단계가 추가되거나 삭제될 수도 있다.4 is an exemplary flowchart illustrating a neural network data normalization method according to some embodiments of the present disclosure. However, this is only for describing the preferred embodiment for achieving the purpose of the present disclosure, some steps may be added or deleted as necessary.

도 4에 도시된 바와 같이, 상기 정규화 방법은 신경망의 제1 레이어로부터 트레이닝 이미지에 대한 특징 데이터를 획득하는 단계 S100에서 시작된다. 본 개시의 다양한 실시예에서 참조될 수 있는 신경망의 몇몇 예시는 도 4에 도시되어 있다.As shown in FIG. 4, the normalization method starts at step S100 of obtaining feature data for a training image from a first layer of a neural network. Some examples of neural networks that may be referenced in various embodiments of the present disclosure are shown in FIG. 4.

도 4에 도시된 바와 같이, 신경망(30)은 복수의 레이어(e.g. 31 내지 33)을 포함하고, 복수의 레이어(e.g. 31 내지 33) 중 적어도 일부는 정규화 레이어(32)일 수 있다. 신경망(30)은 이미지에 관한 태스크를 수행하는 모델이므로, 컨볼루션 신경망에 기반하여 구현되는 것이 통상적일 것이나, 본 개시의 기술적 범위가 이에 한정되는 것은 아니다. 다만, 이해의 편의를 제공하기 위해, 이하에서는 신경망(30)이 컨볼루션 신경망에 기반한 것을 가정하여 설명을 이어가도록 한다.As shown in FIG. 4, the neural network 30 may include a plurality of layers e.g. 31 to 33, and at least some of the plurality of layers e.g. 31 to 33 may be normalization layers 32. Since the neural network 30 is a model for performing a task on an image, it may be conventionally implemented based on a convolutional neural network, but the technical scope of the present disclosure is not limited thereto. However, in order to provide convenience of understanding, hereinafter, the neural network 30 is assumed to be based on the convolutional neural network to continue the description.

도 4에 도시된 바와 같이, 정규화 레이어(32)는 제1 레이어(31)에서 출력된 트레이닝 이미지(34)의 특징 데이터를 제2 레이어(33)의 입력으로 제공하는 역할을 수행할 수 있다. 즉, 본 단계 S100와 후술될 단계(S200 내지 S400)들은 엄밀하게는 정규화 레이어(32)에서 수행되는 동작으로 이해될 수 있다. 정규화 레이어(32)의 위치 또는 개수는 물론 실시예에 따라 얼마든지 달라질 수 있다.As illustrated in FIG. 4, the normalization layer 32 may serve to provide feature data of the training image 34 output from the first layer 31 as an input of the second layer 33. That is, the present step S100 and the following steps S200 to S400 may be understood as strictly operations performed in the normalization layer 32. The location or number of normalization layers 32 may of course vary depending on the embodiment.

또한, 정규화 레이어(32)는 정규화 파라미터(38)를 이용하여 정규화를 수행할 수 있는데, 정규화 파라미터(38)는 어파인 변환을 위한 어파인 변환 파라미터와 스타일 조정 값을 생성하기 위한 스타일 조정 파라미터를 포함할 수 있다. 상기 어파인 변환 파라미터는 스케일(scale) 및 쉬프트(shift) 파라미터 중 적어도 하나를 포함할 수 있다. 여기서, 상기 어파인 변환 파라미터와 상기 스타일 조정 파라미터는 모두 학습 가능한 파라미터(learnable parameter)로써, 신경망(30)과 함께 학습되는 파라미터로 이해될 수 있다. 가령, 트레이닝 이미지(34)에 대한 정답과 예측 값(35) 간의 오차(36)가 역전파될 때, 신경망의 가중치(e.g. 37, 39)와 함께 정규화 파라미터(38)의 값도 업데이트될 수 있다. 정규화 파라미터(38)에 대한 보다 자세한 설명은 추후 도 7 내지 도 12를 참조하여 보다 상세하게 설명하도록 한다.In addition, the normalization layer 32 may perform normalization using the normalization parameter 38. The normalization parameter 38 may include an affine transformation parameter for affine transformation and a style adjustment parameter for generating a style adjustment value. It may include. The affine transformation parameter may include at least one of a scale and a shift parameter. Here, the affine transformation parameter and the style adjustment parameter are both learnable parameters and may be understood as parameters learned together with the neural network 30. For example, when the error 36 between the correct answer for the training image 34 and the predicted value 35 is backpropagated, the value of the normalization parameter 38 may be updated along with the weights of the neural network (eg 37, 39). . The normalization parameter 38 will be described in more detail later with reference to FIGS. 7 to 12.

몇몇 실시예에서, 제1 레이어(31)는 컨볼루션 레이어이고, 제2 레이어(33)는 활성화 레이어일 수 있다. 여기서, 컨볼루션 레이어는 컨볼루션 연산을 통해 특징 맵을 추출하는 레이어이고, 활성화 레이어는 활성화 함수(activation function)을 통해 입력된 데이터에 대한 비선형 변환을 수행하는 레이어를 의미한다. 상기 활성화 함수는 시그모이드(sigmoid) 함수, ReLU(Rectified Linear Unit) 함수 등을 포함할 수 있을 것이나, 본 개시의 기술적 범위가 이에 한정되는 것은 아니다. 다른 몇몇 실시예에서는, 제1 레이어(31)와 제2 레이어(33)의 종류가 달라질 수도 있다.In some embodiments, the first layer 31 may be a convolutional layer and the second layer 33 may be an activation layer. Here, the convolution layer is a layer for extracting a feature map through a convolution operation, and the activation layer refers to a layer for performing nonlinear transformation on data input through an activation function. The activation function may include a sigmoid function, a rectified linear unit function, and the like, but the technical scope of the present disclosure is not limited thereto. In some other embodiments, the types of the first layer 31 and the second layer 33 may vary.

상기 특징 데이터는 컨볼루션 연산 등을 통해 트레이닝 이미지(또는 특징 맵)에서 추출된 하나 이상의 특징 맵을 가리키는 것일 수 있다. 가령, 도 6에 도시된 바와 같이, 컨볼루션 레이어(43)의 컨볼루션 필터를 통해 트레이닝 이미지(41)로부터 하나 이상의 특징 맵(45)이 추출될 수 있는데, 특징 맵(45)이 트레이닝 이미지(41)에 대한 특징 데이터를 의미하는 것일 수 있다. 이때, C개의 컨볼루션 필터가 이용되면 C 채널의 특징 맵이 추출될 수 있다.The feature data may indicate one or more feature maps extracted from a training image (or feature map) through a convolution operation. For example, as shown in FIG. 6, one or more feature maps 45 may be extracted from the training image 41 through a convolution filter of the convolution layer 43, wherein the feature map 45 may be extracted from the training image ( 41) may mean feature data. In this case, when C convolution filters are used, the feature map of the C channel may be extracted.

다시 도 4를 참조하여 설명한다.This will be described with reference to FIG. 4 again.

단계 S200에서, 상기 특징 데이터로부터 스타일 정보가 추출된다. 상기 스타일 정보는 평균과 표준 편차와 같이 다양한 형태의 통계 정보 중 적어도 하나의 정보를 포함할 수 있다. 따라서, 평균 또는 표준 편차 등의 통계적 연산을 통해 상기 특징 데이터로부터 상기 스타일 정보가 추출될 수 있다. 상기 특징 데이터가 복수의 채널(or 깊이)을 갖는 특징 맵인 경우(즉, 복수개의 필터를 통해 복수개의 특징 맵이 추출된 경우), 채널 별로(즉, 각 특징 맵 별로) 스타일 정보가 추출될 수 있다.In step S200, style information is extracted from the feature data. The style information may include at least one of various types of statistical information such as average and standard deviation. Therefore, the style information may be extracted from the feature data through statistical calculations such as mean or standard deviation. When the feature data is a feature map having a plurality of channels (or depths) (that is, when a plurality of feature maps are extracted through a plurality of filters), style information may be extracted for each channel (ie, for each feature map). have.

단계 S300에서, 특징 데이터의 스타일 정보에 기초하여 특징 데이터가 정규화된다. 상기 정규화는 배치 정규화 기법을 통해 수행될 수 있는데, 상기 스타일 정보는 배치 정규화의 어파인 변환 프로세스에서 활용될 수 있다.In step S300, the feature data is normalized based on the style information of the feature data. The normalization may be performed through a batch normalization technique, and the style information may be utilized in the affine transformation process of batch normalization.

본 개시의 다양한 실시예에 따르면, 각 특징 데이터의 스타일 정보에 기초하여 특징 데이터 별로 스타일 조정 값이 생성될 수 있다. 또한, 상기 스타일 조정 값을 이용하여 특징 데이터 별로 어파인 변환 파라미터의 값이 결정되고, 결정된 값으로 어파인 변환 프로세스가 수행될 수 있다. 즉, 제1 특징 데이터에 대한 제1 스타일 조정 값에 기초하여 상기 제1 특징 데이터에 대한 어파인 변환이 수행되고, 제2 특징 데이터에 대한 제2 스타일 조정 값에 기초하여 상기 제2 특징 데이터에 대한 어파인 변환이 수행될 수 있다. 이때, 상기 제1 특징 데이터는 제1 트레이닝 이미지와 연관된 특징 데이터이고, 상기 제2 특징 데이터는 제2 트레이닝 이미지와 연관된 특징 데이터일 수 있다.According to various embodiments of the present disclosure, a style adjustment value may be generated for each feature data based on the style information of each feature data. In addition, a value of the affine transformation parameter may be determined for each feature data using the style adjustment value, and the affine transformation process may be performed with the determined value. That is, the affine transformation is performed on the first feature data based on the first style adjustment value for the first feature data, and is applied to the second feature data based on the second style adjustment value for the second feature data. An affine transformation may be performed. In this case, the first feature data may be feature data associated with a first training image, and the second feature data may be feature data associated with a second training image.

어파인 변환 파라미터의 값을 결정하는 구체적인 방식은 실시예에 따라 달라질 수 있다.The specific way of determining the value of the affine transformation parameter may vary depending on the embodiment.

몇몇 실시예에서는, 상기 스타일 조정 값이 글로벌 어파인 변환 파라미터의 값에 반영되어 최종적인 어파인 변환 파라미터의 값이 결정될 수 있다. 여기서, 상기 글로벌 어파인 변환 파라미터는 복수의 특징 데이터(또는 트레이닝 이미지)에 대해 공통적으로 적용되는 어파인 변환 파라미터를 의미할 수 있다. 본 실시예에 따르면, 트레이닝 이미지들 간의 공통된 특징을 학습한 글로벌 어파인 변환 파라미터와 각 트레이닝 이미지의 개별적 특징이 반영된 스타일 조정 값을 함께 이용하여 어파인 변환이 수행될 수 있다. 즉, 공통된 특징과 개별적 특징을 함께 고려하여 정규화가 수행될 수 있다. 따라서, 대부분의 태스크에 대해 용이하게 학습이 수행될 수 있으며, 신경망의 성능은 향상될 수 있다. 본 실시예에 대해서는 추후 도 7 내지 도 10을 참조하여 상세하게 설명하도록 한다.In some embodiments, the style adjustment value may be reflected in the value of the global affine transformation parameter to determine the value of the final affine transformation parameter. Here, the global affine transformation parameter may mean an affine transformation parameter that is commonly applied to a plurality of feature data (or training images). According to the present embodiment, the affine transformation may be performed using a global affine transformation parameter that learns a common feature among training images and a style adjustment value reflecting an individual feature of each training image. That is, normalization may be performed considering both common and individual features. Therefore, learning can be easily performed for most tasks, and the performance of the neural network can be improved. This embodiment will be described in detail later with reference to FIGS. 7 to 10.

다른 몇몇 실시예에서는, 상기 스타일 조정 값이 그대로 어파인 변환 파라미터의 값으로 결정될 수 있다. 즉, 상술한 실시예와는 달리, 글로벌 어파인 변환 파라미터의 값이 이용되지 않을 수 있다. 본 실시예에 따르면, 특징 데이터의 개별적 특징에 보다 집중하여 어파인 변환이 수행될 수 있다. 따라서, 정규화 프로세스를 통해 손실된 스타일 정보가 정확하게 복구될 수 있고, 스타일 정보에 민감한 신경망(또는 태스크)의 성능이 크게 향상될 수 있다. 본 실시예에 대해서는 추후 도 11를 참조하여 상세하게 설명하도록 한다.In some other embodiments, the style adjustment value may be determined as the value of the affine transformation parameter. That is, unlike the above-described embodiment, the value of the global affine transformation parameter may not be used. According to the present embodiment, the affine transformation can be performed by focusing more on individual features of the feature data. Therefore, lost style information can be accurately recovered through the normalization process, and the performance of neural networks (or tasks) sensitive to the style information can be greatly improved. This embodiment will be described in detail later with reference to FIG. 11.

단계 S400에서, 정규화된 특징 데이터가 신경망의 제2 레이어의 입력으로 제공된다. 또한, 상기 정규화된 특징 데이터는 상기 제2 레이어를 통해 포워딩되어, 트레이닝 이미지에 대한 예측 오차(e.g. 도 4의 36)를 산출하는 데 이용될 수 있다. 상기 예측 오차는 신경망으로 역전파되어, 상기 신경망의 가중치(e.g. 도 4의 37, 39)를 업데이트하는데 이용된다. 이때, 전술한 정규화 파라미터(e.g. 도 4의 38)도 함께 업데이트될 수 있다.In step S400, normalized feature data is provided as an input of a second layer of the neural network. In addition, the normalized feature data may be forwarded through the second layer and used to calculate a prediction error (e.g. 36 in FIG. 4) for a training image. The prediction error is back propagated to the neural network and used to update the weights of the neural network (e. G. 37, 39 of FIG. 4). In this case, the above-described normalization parameter (e. G. 38 of FIG. 4) may also be updated.

지금까지 도 4 내지 도 6을 참조하여 본 개시의 몇몇 실시예에 따른 신경망 데이터 정규화 방법에 대하여 개략적으로 살펴보았다. 이하에서는, 도 7 내지 도 11을 참조하여 본 개시의 다양한 실시예에 따른 스타일 조정 프로세스에 대하여 설명하도록 한다.So far, the neural network data normalization method according to some embodiments of the present disclosure has been described with reference to FIGS. 4 to 6. Hereinafter, a style adjustment process according to various embodiments of the present disclosure will be described with reference to FIGS. 7 to 11.

도 7은 본 개시의 몇몇 실시예에 따른 스타일 조정 프로세스를 설명하기 위한 예시적인 흐름도이다.7 is an exemplary flowchart for describing a style adjustment process according to some embodiments of the present disclosure.

도 7에 도시된 바와 같이, 상기 스타일 조정 프로세스(e.g. S340, 360)는 상술한 정규화 단계 S300에서 수행될 수 있다. 또한, 정규화 단계 S300에서, 정규화 프로세스(e.g. S320)와 어파인 변환 프로세스(e.g. S380)가 더 수행될 수 있다. 이하, 스타일 조정 프로세스를 중심으로 정규화 단계 S300에 대하여 설명한다.As illustrated in FIG. 7, the style adjustment process (e.g. S340, 360) may be performed in the above-described normalization step S300. In addition, in the normalization step S300, a normalization process (e.g. S320) and an affine transformation process (e.g. S380) may be further performed. Hereinafter, the normalization step S300 will be described centering on the style adjustment process.

정규화 단계 S300은 트레이닝 이미지가 속한 배치의 통계 정보를 이용하여 상기 특징 데이터를 정규화하는 단계 S320에서 시작된다.실시예에 따라, 단계 S320과 단계 S340/S360은 동시에 수행되거나, 반대의 순서로 수행될 수도 있다.The normalization step S300 starts at step S320 for normalizing the feature data using statistical information of the batch to which the training image belongs. According to an embodiment, steps S320 and S340 / S360 may be performed simultaneously or in reverse order. It may be.

배치 정규화는 이미 당해 기술 분야의 당업자에게 자명한 사항일 것인 바, 단계 S320에 대한 자세한 설명은 생략하도록 한다.Since batch normalization will already be apparent to those skilled in the art, a detailed description of step S320 will be omitted.

단계 S340에서, 상기 스타일 정보에 기초하여 특징 데이터의 스타일 조정 값이 생성된다. 상기 스타일 조정 값은 어파인 변환 파라미터의 값을 조정하여, 정규화 프로세스에서 왜곡된(또는 손실된) 스타일 정보를 보정(또는 복구)하기 위해 이용되는 값으로 이해될 수 있다. 따라서, 상기 스타일 조정 값은 각 특징 데이터 별로(또는 트레이닝 이미지 별로) 해당 특징 데이터의 스타일 정보에 기초하여 생성된다. 상기 스타일 조정 값을 생성하는 구체적인 예시에 대해서는 추후 도 8 내지 도 10을 참조하여 부연 설명하도록 한다.In step S340, a style adjustment value of feature data is generated based on the style information. The style adjustment value may be understood as a value used to adjust the value of the affine transformation parameter to correct (or recover) distorted (or lost) style information in the normalization process. Therefore, the style adjustment value is generated based on the style information of the feature data for each feature data (or for each training image). A detailed example of generating the style adjustment value will be described later with reference to FIGS. 8 to 10.

단계 S360에서, 상기 스타일 조정 값을 반영하여 어파인 변환 파라미터의 값이 조정된다. 여기서, 상기 어파인 변환 파라미터는 스케일과 쉬프트를 조절하기 위한 파라미터들 중 적어도 일부를 포함할 수 있다. 전술한 바와 같이, 상기 어파인 변환 파라미터는 복수의 트레이닝 이미지에 동일하게 적용되는 글로벌 어파인 파라미터를 지칭하는 것으로 이해될 수 있다. 그러나, 상기 스타일 조정 값은 각 트레이닝 이미지(또는 각 특징 데이터) 별로 서로 다른 값으로 생성될 수 있다. 일반적으로, 각 트레이닝 이미지와 연관된 특징 데이터에는 서로 다른 스타일 정보가 포함되어 있을 것이기 때문이다. 본 단계 에서, 어파인 변환 파라미터의 값이 각 특징 데이터의 스타일 정보를 보정(또는 복구)하기 위해 특화된 값으로 조정될 수 있다.In step S360, the value of the affine transformation parameter is adjusted to reflect the style adjustment value. Herein, the affine transformation parameter may include at least some of parameters for adjusting the scale and the shift. As described above, the affine transformation parameter may be understood to refer to a global affine parameter that is equally applied to a plurality of training images. However, the style adjustment value may be generated as a different value for each training image (or each feature data). In general, the feature data associated with each training image may include different style information. In this step, the value of the affine transformation parameter may be adjusted to a specialized value to correct (or recover) the style information of each feature data.

단계 S380에서, 상기 조정된 어파인 변환 파라미터의 값으로 어파인 변환이 수행된다. 이에 따라, 상기 특징 데이터에 내재된 스타일 정보가 보정(또는 복구)될 수 있다.In step S380, affine transformation is performed with a value of the adjusted affine transformation parameter. Accordingly, the style information embedded in the feature data may be corrected (or restored).

보다 이해의 편의를 제공하기 위해, 도 8 내지 도 10을 참조하여 정규화 단계 S300의 세부 프로세스에 대하여 부연 설명하도록 한다.For convenience of understanding, the detailed process of the normalization step S300 will be described in detail with reference to FIGS. 8 to 10.

도 8 내지 도 10은 상기 정규화 프로세스를 부연 설명하기 위한 예시도이다.8 to 10 are exemplary diagrams for further explaining the normalization process.

도 8은 정규화 프로세스(53) 및 어파인 변환 프로세스(54)를 통해 4개의 트레이닝 이미지의 특징 데이터(52-1 내지 52-4)가 정규화된 특징 데이터(55-1 내지 55-4)로 변환되는 것을 예시하고 있다. 물론, 트레이닝 이미지 및/또는 특징 데이터 개수는 얼마든지 달라질 수 있다.8 converts feature data 52-1 through 52-4 of the four training images into normalized feature data 55-1 through 55-4 through normalization process 53 and affine transformation process 54. It is illustrated. Of course, the number of training images and / or feature data may vary.

도 8에 도시된 바와 같이, 각 특징 데이터(52-1 내지 52-4)의 스타일 정보로부터 스타일 조정 값이 생성되고, 상기 스타일 조정 값은 어파인 변환 프로세스(54)에서 활용된다.As shown in Fig. 8, a style adjustment value is generated from the style information of each feature data 52-1 to 52-4, and the style adjustment value is utilized in the affine transformation process 54.

도 9는 제1 특징 데이터(52-1)의 스타일 조정 값을 이용하여 어파인 변환 프로세스(54)에서 제1 특징 데이터(52-1)의 스타일 정보가 보정(또는 복구)되는 것을 설명하기 위한 예시도이다. 물론, 도 9를 참조하여 설명된 내용은 다른 특징 데이터(e.g. 52-2 내지 52-4)에도 동일하게 적용될 수 있다.9 illustrates that the style information of the first feature data 52-1 is corrected (or restored) in the affine transformation process 54 using the style adjustment value of the first feature data 52-1. It is an illustration. Of course, the contents described with reference to FIG. 9 may be equally applied to other feature data (e. G. 52-2 to 52-4).

도 9에 도시된 바와 같이, 특징 데이터(52-1)로부터 특징 데이터(52-1)의 스타일 정보(61)가 추출된다. 전술한 바와 같이, 스타일 정보(61)는 평균 및 표준 편차 중 적어도 하나의 정보를 포함할 수 있다.As shown in Fig. 9, the style information 61 of the feature data 52-1 is extracted from the feature data 52-1. As described above, the style information 61 may include at least one of average and standard deviation.

특징 데이터(52-1)가 복수의 채널을 갖는 특징 맵인 경우, 각 채널 별로 평균 및/또는 표준 편차가 산출되고, 각 채널의 평균 및/또는 표준 편차를 종합(e.g. concatenation)하여 벡터 형태의 스타일 정보(61)가 생성될 수 있다. 즉, 특징 데이터(52-1)가 C개의 채널을 갖는 특징 맵이라면, 스타일 정보(61)는 C 차원의 벡터로 산출될 수 있다.If the feature data 52-1 is a feature map having a plurality of channels, the average and / or standard deviation is calculated for each channel, and the average and / or standard deviation of each channel is aggregated (eg concatenation) to form a vector. Information 61 may be generated. That is, if the feature data 52-1 is a feature map having C channels, the style information 61 may be calculated as a vector having a C dimension.

다음으로, 스타일 정보(61)로부터 특징 데이터(52-1)의 스타일 조정 값(63)이 생성된다. 특징 데이터(52-1)의 스타일 조정 값(63)은 특징 데이터(52-1)의 스타일 정보에 스타일 조정 파라미터의 값을 반영하여 생성될 수 있다. 전술한 바와 같이, 상기 스타일 조정 파라미터는 스타일 조정 값을 생성하기 위해 이용되는 학습 가능 파라미터를 의미할 수 있다. 스타일 조정 값을 생성하는 구체적인 방식은 실시예에 따라 달라질 수 있다.Next, the style adjustment value 63 of the feature data 52-1 is generated from the style information 61. The style adjustment value 63 of the feature data 52-1 may be generated by reflecting the value of the style adjustment parameter in the style information of the feature data 52-1. As described above, the style adjustment parameter may refer to a learnable parameter used to generate a style adjustment value. The specific way of generating the style adjustment value may vary depending on the embodiment.

몇몇 실시예에서, 도 10에 도시된 바와 같이, 스타일 정보(71)에 필터(73)의 값을 반영하여 스타일 조정 값(75)이 생성될 수 있다. 즉, 필터(73)를 구성하는 스타일 조정 파라미터의 값과 스타일 정보(71) 간의 소정의 연산을 수행하여 스타일 조정 값(75)이 생성될 수 있다. 여기서, 필터(73)는 스타일 정보(71)의 차원(즉, 특징 맵의 채널)마다 존재할 수도 있고, 복수의 차원(즉, 특징 맵의 복수의 채널)에 대해 하나의 필터가 존재할 수도 있으며, 이는 실시예에 따라 얼마든지 달라질 수 있다. 본 실시예에 따르면, 학습 가능한 파라미터를 통해 트레이닝 이미지(또는 특징 데이터)의 스타일 정보에 적합한 스타일 조정 값이 생성될 수 있다. 즉, 신경망이 학습됨에 따라, 해당 특징 데이터의 스타일 정보를 보정하거나 복구하는데 적합한 스타일 조정 값이 자동으로 생성될 수 있다.In some embodiments, as shown in FIG. 10, the style adjustment value 75 may be generated by reflecting the value of the filter 73 in the style information 71. That is, the style adjustment value 75 may be generated by performing a predetermined operation between the value of the style adjustment parameter constituting the filter 73 and the style information 71. Here, the filter 73 may exist for each dimension (ie, channels of the feature map) of the style information 71, and one filter may exist for a plurality of dimensions (ie, multiple channels of the feature map). This may vary depending on the embodiment. According to the present embodiment, a style adjustment value suitable for style information of a training image (or feature data) may be generated through the learnable parameter. That is, as the neural network is learned, a style adjustment value suitable for correcting or restoring style information of corresponding feature data may be automatically generated.

다른 몇몇 실시예에서는, 특징 데이터가 복수의 채널을 갖는 특징 맵 데이터이고, 각 채널 별로 스타일 정보가 추출되며, 완전 연결 레이어(fully-connected layer)를 통해 상기 채널 별 스타일 정보를 종합(aggregating)하는 방식으로 스타일 조정 값이 생성될 수 있다. 즉, 본 실시예에서는, 완전 연결 레이어의 가중치 파라미터들이 스타일 조정 파라미터로 동작하게 된다. 본 실시예에 따르면, 채널 간 종속성(channel dependency)을 고려하여 적절한 스타일 조정 값이 생성될 수 있다.In some other embodiments, the feature data is feature map data having a plurality of channels, style information is extracted for each channel, and aggregates the channel-specific style information through a fully-connected layer. Style adjustment values can be generated in a manner. That is, in this embodiment, the weight parameters of the fully connected layer operate as the style adjustment parameter. According to the present embodiment, an appropriate style adjustment value may be generated in consideration of channel dependencies.

또 다른 몇몇 실시예에서는, 채널 단위 변환(channel-wise transformation)을 통해 스타일 조정 값이 생성될 수 있다. 즉, 제1 채널에 스타일 정보를 제1 변환 파라미터를 통해 변환하여 상기 제1 채널에 대한 스타일 조정 값이 생성되고, 제2 채널에 스타일 정보를 제2 변환 파라미터를 통해 변환하여 상기 제2 채널에 대한 스타일 조정 값이 생성될 수 있다. 본 실시예에서는, 상기 제1 변환 파라미터와 상기 제2 변환 파라미터가 스타일 조정 파라미터로 동작하게 된다. 본 실시예에 따르면, 완전 연결 레이어에 비해 적은 개수의 변환 파라미터를 이용하여 스타일 조정 값이 생성될 수 있다. 즉, 학습되는 파라미터의 개수가 감소될 수 있다. 따라서, 학습에 소모되는 컴퓨팅 비용이 절감되고, 스타일 조정 값은 신속하게 산출될 수 있다.In some other embodiments, style adjustment values may be generated through channel-wise transformation. That is, a style adjustment value for the first channel is generated by converting style information in a first channel through a first conversion parameter, and converts style information in a second channel through a second conversion parameter to the second channel. A style adjustment value for can be generated. In the present embodiment, the first conversion parameter and the second conversion parameter operate as style adjustment parameters. According to the present embodiment, the style adjustment value may be generated using a smaller number of conversion parameters than the fully connected layer. That is, the number of parameters learned can be reduced. Thus, the computing cost consumed for learning is reduced, and the style adjustment value can be calculated quickly.

한편, 몇몇 실시예에서는, 스타일 조정 파라미터가 트레이닝 이미지(또는 특징 데이터) 별로 존재할 수 있다. 즉, 제1 트레이닝 이미지에 적용되는 제1 스타일 조정 파라미터와 제2 트레이닝 이미지에 적용되는 제2 스타일 조정 파라미터가 서로 개별적으로 존재할 수도 있다.Meanwhile, in some embodiments, the style adjustment parameter may exist for each training image (or feature data). That is, the first style adjustment parameter applied to the first training image and the second style adjustment parameter applied to the second training image may exist separately from each other.

다시 도 9를 참조하여 설명한다.This will be described again with reference to FIG. 9.

도 9에 도시된 바와 같이, 스타일 조정 값(63)을 반영하여 어파인 변환 파라미터(65)의 값이 조정된다. 도 9는 스타일 조정 값(63)을 어파인 변환 파라미터(65)에 곱하는 방식으로, 파라미터 값이 조정되는 것을 예로써 도시하고 있으나, 스타일 조정 값(63)을 반영하는 방식은 얼마든지 달라질 수 있다.As shown in FIG. 9, the value of the affine transformation parameter 65 is adjusted to reflect the style adjustment value 63. 9 illustrates that the parameter adjustment value is adjusted by multiplying the style adjustment value 63 by the affine transformation parameter 65. However, the method of reflecting the style adjustment value 63 may vary. .

지금까지 도 8 내지 도 10을 참조하여 본 개시의 몇몇 실시예에 따른 스타일 조정 프로세스에 대하여 설명하였다. 이하, 도 11을 참조하여 본 개시의 다른 몇몇 실시예에 따른 스타일 조정 프로세스에 대하여 설명한다.So far, the style adjustment process according to some embodiments of the present disclosure has been described with reference to FIGS. 8 to 10. Hereinafter, a style adjustment process according to some other embodiments of the present disclosure will be described with reference to FIG. 11.

도 11에 도시된 바와 같이, 본 실시예에서도, 특징 데이터(81)에서 스타일 정보(83)가 추출되고, 스타일 정보(83)에 기초하여 스타일 조정 값(85)이 생성될 수 있다. 스타일 조정 값(85)을 생성하는 방식은 전술한 실시예들(e.g. 완전 연결 레이어, 채널 단위 변환)과 유사하므로, 이에 대한 설명은 생략하도록 한다.As shown in FIG. 11, even in this embodiment, the style information 83 may be extracted from the feature data 81, and the style adjustment value 85 may be generated based on the style information 83. Since the method of generating the style adjustment value 85 is similar to the above-described embodiments (e.g. fully connected layer, channel unit conversion), description thereof will be omitted.

다만, 본 실시예에서는, 스타일 조정 값(85)이 그대로 특징 데이터(81)의 어파인 변환 파라미터로 이용될 수 있다. 즉, 스타일 조정 값(85)이 특징 데이터(81)의 어파인 변환 파라미터 값으로 설정되고, 설정된 값으로 어파인 변환 프로세스(87)가 수행될 수 있다.However, in the present embodiment, the style adjustment value 85 may be used as an affine transformation parameter of the feature data 81 as it is. That is, the style adjustment value 85 may be set to the affine transformation parameter value of the feature data 81, and the affine transformation process 87 may be performed with the set value.

지금까지 도 5 내지 도 11을 참조하여 본 개시의 몇몇 실시예에 따른 신경망 데이터 정규화 방법에 대하여 설명하였다. 상술한 방법에 따르면, 배치 사이즈가 작게 설정된 경우라 하더라도, 스타일 정보를 보존하면서 정규화가 수행될 수 있다. 따라서, 스타일 정보가 중요한 역할을 하는 태스크를 위해 신경망을 트레이닝할 때, 신경망의 성능이 크게 향상될 수 있다.So far, the neural network data normalization method according to some embodiments of the present disclosure has been described with reference to FIGS. 5 to 11. According to the above method, even when the batch size is set small, normalization can be performed while preserving the style information. Therefore, when training neural networks for tasks in which style information plays an important role, the performance of neural networks can be greatly improved.

이하에서는, 도 12를 참조하여 본 개시의 다른 몇몇 실시예에 따른 신경망 데이터 정규화 방법에 대하여 설명한다.Hereinafter, a neural network data normalization method according to some other embodiments of the present disclosure will be described with reference to FIG. 12.

도 12는 본 개시의 다른 몇몇 실시예에 따른 신경망 데이터 정규화 방법을 설명하기 위한 예시도이다. 도 12를 참조하여 설명한다. 본 개시의 명료함을 위해 앞선 실시예와 중복되는 내용에 대한 설명은 생략하도록 한다.12 is an exemplary diagram for describing a neural network data normalization method according to another exemplary embodiment of the present disclosure. It demonstrates with reference to FIG. For the clarity of the present disclosure, descriptions of overlapping contents with the foregoing embodiments will be omitted.

도 12 도시된 바와 같이, 본 실시예에서는 특징 데이터(91)로부터 스타일 정보가 추출되지 않고, 컨볼루션 연산을 통해 스타일 조정 값(95)이 생성될 수 있다. 예를 들어, 제1 컨볼루션 연산을 통해 특징 데이터(91)에서 제1 특징 데이터(93)가 추출되고, 제2 컨볼루션 연산을 통해 제1 특징 데이터(93)에서 제2 특징 데이터(미도시)가 추출될 수 있다. 또한, 반복적 컨볼루션 연산을 통해 추출된 최종 특징 데이터(95)가 스타일 조정 값으로 이용될 수 있다. 상기 컨볼루션 연산은 특징 데이터(e.g. 91, 93)와 컨볼루션 필터 간에 수행될 수 있고, 컨볼루션 연산이 수행되는 횟수는 실시예에 따라 달라질 수 있다. 본 실시예에서는, 컨볼루션 필터의 가중치가 스타일 조정 파라미터로 동작하는 것으로 이해될 수 있다.As shown in FIG. 12, in the present embodiment, style information is not extracted from the feature data 91, and a style adjustment value 95 may be generated through a convolution operation. For example, the first feature data 93 is extracted from the feature data 91 through a first convolution operation, and the second feature data (not shown) from the first feature data 93 through a second convolution operation. ) Can be extracted. In addition, the final feature data 95 extracted through the iterative convolution operation may be used as the style adjustment value. The convolution operation may be performed between the feature data (e.g. 91, 93) and the convolution filter, and the number of times the convolution operation is performed may vary according to embodiments. In this embodiment, it can be understood that the weight of the convolution filter operates as a style adjustment parameter.

도 12는 스타일 조정 값(95)이 어파인 변환 프로세스(97)에 그대로 이용되는 것을 예시하고 있다. 그러나, 다른 몇몇 실시예에서는, 스타일 조정 값(95)과 글로벌 어파인 변환 파라미터의 값을 함께 이용하여 어파인 변환이 수행될 수도 있다(도 9 참조).12 illustrates that the style adjustment value 95 is used intact in the affine transformation process 97. However, in some other embodiments, affine transformation may be performed using the style adjustment value 95 together with the value of the global affine transformation parameter (see FIG. 9).

본 실시예에 따르면, 특징 데이터에 내포된 전체 컨텍스트(global context)와 채널 간 종속성(channel dependency)을 모두 고려하여 적절한 스타일 조정 값이 생성될 수 있다.According to the present embodiment, an appropriate style adjustment value may be generated in consideration of both the global context and the channel dependency included in the feature data.

지금까지 도 12를 참조하여 본 개시의 다른 몇몇 실시예에 따른 신경망 데이터 정규화 방법에 대하여 설명하였다.So far, the neural network data normalization method according to some other embodiments of the present disclosure has been described with reference to FIG. 12.

한편, 지금까지는 신경망 정규화 방법(이하, "스타일 기반 정규화")이 배치 사이즈에 관계없이 수행되는 것을 가정하여 본 개시의 다양한 실시예들을 설명하였다. 그러나, 본 개시의 다른 몇몇 실시예에서는, 배치 사이즈가 기준치 미만이라는 판정에 응답하여, 상기 스타일 기반 정규화가 수행될 수도 있다. 즉, 배치 사이즈가 상기 기준치 이상인 경우(즉, 충분히 큰 경우)에는 조정되지 않은 어파인 변환 파라미터의 값을 이용하여 어파인 변환이 수행되고, 반대의 경우에는 조정된 어파인 변환 파라미터의 값을 이용하여 어파인 변환이 수행될 수 있다. 배치 사이즈가 충분히 큰 경우라면, 스타일 정보가 잘 보존될 수 있기 때문이다.Meanwhile, various embodiments of the present disclosure have been described on the assumption that neural network normalization method (hereinafter, “style based normalization”) is performed regardless of the batch size. However, in some other embodiments of the present disclosure, the style based normalization may be performed in response to determining that the batch size is below a reference value. That is, if the batch size is greater than or equal to the reference value (i.e., large enough), then the affine transformation is performed using the unadjusted affine transform parameter value, and vice versa. Affine transformation can be performed. If the batch size is large enough, style information can be well preserved.

몇몇 실시예에서, 상기 기준치는 신경망의 목적 태스크와 스타일 정보 간의 관계에 기초하여 결정될 수 있다. 가령, 상기 목적 태스크와 스타일 정보가 밀접한 관계를 갖는 경우(즉, 스타일 정보가 해당 태스크에 중요한 역할을 하는 경우), 상기 기준치는 상대적으로 더 높은 값(즉, 밀접한 관계를 갖지 않는 다른 태스크보다 더 높은 값)으로 결정될 수 있다. 그렇게 함으로써, 배치 사이즈가 크더라도 스타일 기반 정규화를 통해 더욱 잘 스타일 정보가 보존될 수 있기 때문이다. 반대의 경우라면, 상기 기준치는 상대적으로 더 낮은 값으로 결정될 수 있다. 이를테면, 신경망의 목적 태스크가 스타일 변환(style transfer)와 같이 스타일 정보를 필요로 하지 않는 태스크인 경우, 상기 기준치는 매우 낮은 값으로 결정될 수도 있다.In some embodiments, the reference value may be determined based on a relationship between an object task of the neural network and style information. For example, if the target task has a close relationship with the style information (ie, the style information plays an important role in the task), the reference value is higher than a relatively higher value (ie, other tasks that do not have a close relationship). High value). By doing so, style information can be better preserved through style-based normalization even with large batch sizes. In the opposite case, the reference value can be determined with a relatively lower value. For example, if the target task of the neural network is a task that does not require style information such as style transfer, the reference value may be determined to be a very low value.

또한, 몇몇 실시예에서는, 상기 배치 사이즈가 신경망의 목적 태스크와 스타일 정보 간의 관계에 기초하여 결정될 수도 있다. 가령, 목적 태스크와 스타일 정보가 밀접한 관계를 갖는 경우(즉, 스타일 정보가 해당 태스크에 중요한 역할을 하는 경우), 상기 배치 사이즈는 상대적으로 더 큰 값(즉, 밀접한 관계를 갖지 않는 다른 태스크보다 더 높은 값)으로 결정될 수 있다. 이때, 배치 사이즈가 이미 설정된 경우라면, 상기 목적 태스크와 스타일 정보 간의 관계에 따라 상기 설정된 배치 사이즈가 조정될 수도 있다. 반대의 경우라면, 상기 배치 사이즈는 상대적으로 더 작은 값으로 결정될 수 있다.Further, in some embodiments, the batch size may be determined based on the relationship between the destination task of the neural network and the style information. For example, if the objective task has a close relationship with the style information (ie, the style information plays an important role for that task), the batch size is larger than the other larger values (ie, less closely related tasks). High value). In this case, if the batch size is already set, the set batch size may be adjusted according to the relationship between the target task and the style information. In the opposite case, the batch size can be determined with a relatively smaller value.

이하에서는, 도 13을 참조하여 본 개시의 다양한 실시예들에 따른 장치(e.g. 도 1의 학습 장치 10)를 구현할 수 있는 예시적인 컴퓨팅 장치(100)에 대하여 설명하도록 한다.Hereinafter, an exemplary computing device 100 that may implement an apparatus (e.g. learning device 10 of FIG. 1) according to various embodiments of the present disclosure will be described with reference to FIG. 13.

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

도 13에 도시된 바와 같이, 컴퓨팅 장치(100)는 하나 이상의 프로세서(110), 버스(150), 통신 인터페이스(170), 프로세서(110)에 의하여 수행되는 컴퓨터 프로그램을 로드(load)하는 메모리(130)와, 컴퓨터 프로그램(191)을 저장하는 스토리지(190)를 포함할 수 있다. 다만, 도 13에는 본 개시의 실시예와 관련 있는 구성요소들만이 도시되어 있다. 따라서, 본 개시가 속한 기술분야의 통상의 기술자라면 도 13에 도시된 구성요소들 외에 다른 범용적인 구성 요소들이 더 포함될 수 있음을 알 수 있다. 즉, 컴퓨팅 장치(100)에는, 도 13에 도시된 구성 요소 이외에도 다양한 구성 요소가 더 포함될 수 있다.As shown in FIG. 13, the computing device 100 may include one or more processors 110, a bus 150, a communication interface 170, and a memory that loads a computer program executed by the processor 110. 130 and a storage 190 for storing the computer program 191. However, FIG. 13 illustrates only the components related to the embodiment of the present disclosure. Accordingly, it will be appreciated by those skilled in the art that the present disclosure may further include other general purpose components in addition to the components shown in FIG. 13. That is, the computing device 100 may further include various components 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. It can be configured to include. In addition, the processor 110 may perform an operation on at least one application or program for executing a method / operation according to embodiments of the present disclosure. Computing device 100 may have one or more processors.

메모리(130)는 각종 데이터, 명령 및/또는 정보를 저장한다. 메모리(130)는 본 개시의 다양한 실시예들에 따른 방법/동작을 실행하기 위하여 스토리지(190)로부터 하나 이상의 프로그램(191)을 로드할 수 있다. 메모리(130)는 RAM과 같은 휘발성 메모리로 구현될 수 있을 것이나, 본 개시의 기술적 범위가 이에 한정되는 것은 아니다.The memory 130 stores various data, commands, and / or information. Memory 130 may load one or more programs 191 from storage 190 to execute methods / operations in accordance with various embodiments of the present disclosure. The memory 130 may be implemented as a volatile memory such as a 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 a communication function 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. In addition, the communication interface 170 may support various communication methods other than Internet communication. To this end, the communication interface 170 may comprise a communication module well known in the art of the present disclosure. In some cases, the communication interface 170 may be omitted.

스토리지(190)는 상기 하나 이상의 프로그램(191)을 비임시적으로 저장할 수 있다. 스토리지(190)는 ROM(Read Only Memory), EPROM(Erasable Programmable ROM), EEPROM(Electrically Erasable Programmable ROM), 플래시 메모리 등과 같은 비휘발성 메모리, 하드 디스크, 착탈형 디스크, 또는 본 개시가 속하는 기술 분야에서 잘 알려진 임의의 형태의 컴퓨터로 읽을 수 있는 기록 매체를 포함하여 구성될 수 있다.The storage 190 may non-temporarily store the one or more programs 191. Storage 190 is well known in the art, such as non-volatile memory, hard disks, removable disks, or the like to which the present disclosure belongs, such as Read Only Memory (ROM), Eraseable Programmable ROM (EPROM), Electrically Erasable Programmable ROM (EEPROM), flash memory, and the like. It may comprise any known type of computer readable recording medium.

컴퓨터 프로그램(191)은 메모리(130)에 로드될 때 프로세서(110)로 하여금 본 개시의 다양한 실시예에 따른 방법/동작을 수행하도록 하는 하나 이상의 인스트럭션들(instructions)을 포함할 수 있다. 즉, 프로세서(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 methods according to various embodiments of the present disclosure by executing the one or more instructions.

예를 들어, 컴퓨터 프로그램(191)은 신경망의 제1 레이어에서 출력된 트레이닝 이미지에 대한 특징 데이터를 얻는 동작, 상기 특징 데이터의 스타일 정보를 추출하는 동작, 상기 스타일 정보에 기초하여 상기 특징 데이터를 정규화하는 동작 및 상기 정규화된 특징 데이터를 상기 신경망의 제2 레이어의 입력으로 제공하는 동작을 수행하도록 하는 인스트럭션들을 포함할 수 있다. 이와 같은 경우, 컴퓨팅 장치(100)를 통해 본 개시의 몇몇 실시예에 따른 신경망 학습 장치(e.g. 10) 또는 신경망 데이터 정규화 장치(e.g. 10)가 구현될 수 있다.For example, the computer program 191 obtains feature data for a training image output from a first layer of a neural network, extracts style information of the feature data, and normalizes the feature data based on the style information. And providing the normalized characteristic data as an input of the second layer of the neural network. In this case, the neural network learning device (e.g. 10) or the neural network data normalization device (e.g. 10) according to some embodiments of the present disclosure may be implemented through the computing device 100.

다른 예를 들어, 컴퓨터 프로그램(191)은 신경망의 특정 레이어에서 출력된 제1 트레이닝 이미지에 대한 제1 특징 데이터를 얻는 동작, 상기 특정 레이어에서 출력된 제2 트레이닝 이미지에 대한 제2 특징 데이터를 얻는 동작, 상기 제1 특징 데이터에 기초하여 상기 제1 특징 데이터에 대한 제1 스타일 조정 값을 생성하는 동작, 상기 제2 특징 데이터에 기초하여 상기 제2 특징 데이터에 대한 제2 스타일 조정 값을 생성하는 동작, 상기 생성된 제1 스타일 조정 값을 이용하여 상기 제1 특징 데이터를 정규화하는 동작 및 상기 생성된 제2 스타일 조정 값을 이용하여 상기 제2 특징 데이터를 정규화하는 동작을 수행하도록 하는 인스트럭션들을 포함할 수 있다. 이와 같은 경우, 컴퓨팅 장치(100)를 통해 본 개시의 다른 몇몇 실시예에 따른 신경망 학습 장치(e.g. 10) 또는 신경망 데이터 정규화 장치(e.g. 10)가 구현될 수 있다.In another example, the computer program 191 obtains first feature data for a first training image output from a specific layer of a neural network, and obtains second feature data for a second training image output from the specific layer. Operation, generating a first style adjustment value for the first feature data based on the first feature data, generating a second style adjustment value for the second feature data based on the second feature data. Instructions for performing an operation, normalizing the first feature data using the generated first style adjustment value, and normalizing the second feature data using the generated second style adjustment value. can do. In this case, the neural network learning device (e.g. 10) or the neural network data normalization device (e.g. 10) according to some other embodiments of the present disclosure may be implemented through the computing device 100.

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

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

이상에서, 본 개시의 실시예를 구성하는 모든 구성 요소들이 하나로 결합되거나 결합되어 동작하는 것으로 설명되었다고 해서, 본 개시의 기술적 사상이 반드시 이러한 실시예에 한정되는 것은 아니다. 즉, 본 개시의 목적 범위 안에서라면, 그 모든 구성요소들이 하나 이상으로 선택적으로 결합하여 동작할 수도 있다.In the above description, it is described that all the elements constituting the embodiments of the present disclosure are combined or operated as one, but 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 operated in one or more combinations.

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

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

Claims (20)

컴퓨팅 장치에서 신경망의 데이터를 정규화하는 방법에 있어서,
상기 신경망의 특정 레이어에서 출력된 특정 트레이닝 이미지에 대한 특징 데이터를 얻는 단계;
상기 특징 데이터의 통계 정보를 이용하여 상기 특징 데이터의 스타일 정보를 추출하는 단계;
상기 스타일 정보를 이용하여 상기 특징 데이터에 대한 스타일 조정 값을 생성하는 단계;
상기 스타일 조정 값을 반영하여 어파인 변환 파라미터의 값을 조정하는 단계;
상기 특징 데이터를 배치(batch)의 통계 정보로 정규화한 정규화값을 생성하는 단계;
상기 조정된 어파인 변환 파라미터의 값을 이용하여 상기 정규화값에 대한 어파인 변환을 수행하는 단계: 및
상기 어파인 변환된 값을 상기 특정 트레이닝 이미지의 정규화된 특징 데이터로 출력하는 단계를 포함하는,
신경망 데이터 정규화 방법.
In a method for normalizing data of neural networks in a computing device,
Obtaining feature data for a specific training image output from a specific layer of the neural network;
Extracting style information of the feature data using statistical information of the feature data;
Generating a style adjustment value for the feature data using the style information;
Adjusting a value of an affine transformation parameter by reflecting the style adjustment value;
Generating a normalization value obtained by normalizing the feature data with statistical information of a batch;
Performing an affine transformation on the normalized value using a value of the adjusted affine transformation parameter: and
Outputting the affine transformed values as normalized feature data of the particular training image,
Neural network data normalization method.
삭제delete 제1 항에 있어서,
상기 스타일 정보는 상기 특징 데이터의 평균 및 표준 편차 중 적어도 하나를 포함하는,
신경망 데이터 정규화 방법.
According to claim 1,
The style information includes at least one of an average and a standard deviation of the feature data;
Neural network data normalization method.
제1 항에 있어서,
상기 특징 데이터는 복수의 채널을 갖는 특징 맵(feature map) 데이터이고,
상기 스타일 정보를 추출하는 단계는,
상기 특징 맵 데이터의 채널 별로 상기 스타일 정보를 추출하는 단계를 포함하는,
신경망 데이터 정규화 방법.
According to claim 1,
The feature data is feature map data having a plurality of channels,
Extracting the style information,
Extracting the style information for each channel of the feature map data;
Neural network data normalization method.
제1 항에 있어서,
상기 스타일 조정 값을 생성하는 단계는,
상기 스타일 정보에 상기 신경망의 가중치와 함께 업데이트되는 스타일 조정 파라미터의 값을 반영하여 상기 스타일 조정 값을 생성하는 단계를 포함하는,
신경망 데이터 정규화 방법.
According to claim 1,
Generating the style adjustment value,
Generating the style adjustment value by reflecting a value of a style adjustment parameter updated with the weight of the neural network in the style information.
Neural network data normalization method.
제1 항에 있어서,
상기 특징 데이터는 제1 채널의 제1 특징 맵(feature map) 데이터와 제2 채널의 제2 특징 맵 데이터를 포함하고,
상기 스타일 정보는 상기 제1 특징 맵 데이터에 대한 제1 스타일 정보와 상기 제2 특징 맵 데이터에 대한 제2 스타일 정보를 포함하며,
상기 스타일 조정 값을 생성하는 단계는,
완전 연결 레이어(fully-connected layer)를 통해 상기 제1 스타일 정보와 상기 제2 스타일 정보를 종합(aggregating)하여 상기 스타일 조정 값을 생성하는 단계를 포함하는,
신경망 데이터 정규화 방법.
According to claim 1,
The feature data includes first feature map data of a first channel and second feature map data of a second channel,
The style information includes first style information about the first feature map data and second style information about the second feature map data.
Generating the style adjustment value,
Generating the style adjustment value by aggregating the first style information and the second style information through a fully-connected layer;
Neural network data normalization method.
제1 항에 있어서,
상기 특징 데이터는 제1 채널의 제1 특징 맵(feature map) 데이터와 제2 채널의 제2 특징 맵 데이터를 포함하고,
상기 스타일 정보는 상기 제1 특징 맵 데이터에 대한 제1 스타일 정보와 상기 제2 특징 맵 데이터에 대한 제2 스타일 정보를 포함하며,
상기 스타일 조정 값을 생성하는 단계는,
상기 제1 스타일 정보를 이용하여 상기 제1 채널에 대응되는 스타일 조정 값을 생성하는 단계; 및
상기 제2 스타일 정보를 이용하여 상기 제2 채널에 대응되는 스타일 조정 값을 생성하는 단계를 포함하는,
신경망 데이터 정규화 방법.
According to claim 1,
The feature data includes first feature map data of a first channel and second feature map data of a second channel,
The style information includes first style information about the first feature map data and second style information about the second feature map data.
Generating the style adjustment value,
Generating a style adjustment value corresponding to the first channel using the first style information; And
Generating a style adjustment value corresponding to the second channel by using the second style information;
Neural network data normalization method.
삭제delete 삭제delete 제1 항에 있어서,
상기 스타일 조정 값을 생성하는 단계는,
상기 신경망의 특정 레이어에서 출력된 특징 데이터와 상기 신경망의 가중치와 함께 업데이트되는 컨볼루션 필터(convolution filter)와의 컨볼루션 연산을 통해 상기 스타일 조정 값을 생성하는 단계를 포함하는,
신경망 데이터 정규화 방법.
According to claim 1,
Generating the style adjustment value,
Generating the style adjustment value through a convolution operation between a feature data output from a specific layer of the neural network and a convolution filter updated with weights of the neural network;
Neural network data normalization method.
제1 항에 있어서,
상기 특정 트레이닝 이미지는 상기 배치의 사이즈가 기준치 미만인 이미지이고,
상기 배치의 사이즈가 상기 기준치 이상인 트레이닝 이미지의 특징 데이터는 상기 배치의 통계 정보에 기초하여 정규화되는,
신경망 데이터 정규화 방법.
According to claim 1,
The specific training image is an image in which the size of the batch is less than a reference value,
The feature data of the training image whose size of the batch is greater than or equal to the reference value is normalized based on statistical information of the batch,
Neural network data normalization method.
하나 이상의 인스트럭션들(instructions)을 저장하는 메모리; 및
상기 저장된 하나 이상의 인스트럭션들을 실행하는 프로세서를 포함하고,
상기 프로세서는
신경망의 특정 레이어에서 출력된 특정 트레이닝 이미지에 대한 특징 데이터를 얻는 단계;
상기 특징 데이터의 통계 정보를 이용하여 상기 특징 데이터의 스타일 정보를 추출하는 단계;
상기 스타일 정보를 이용하여 상기 특징 데이터에 대한 스타일 조정 값을 생성하는 단계;
상기 스타일 조정 값을 반영하여 어파인 변환 파라미터의 값을 조정하는 단계;
상기 특징 데이터를 배치(batch)의 통계 정보로 정규화한 정규화값을 생성하는 단계;
상기 조정된 어파인 변환 파라미터의 값을 이용하여 상기 정규화값에 대한 어파인 변환을 수행하는 단계: 및
상기 어파인 변환된 값을 상기 특정 트레이닝 이미지의 정규화된 특징 데이터로 출력하는 단계를 실행하는,
신경망 데이터 정규화 장치.
A memory for storing one or more instructions; And
A processor for executing the stored one or more instructions,
The processor is
Obtaining feature data for a specific training image output from a specific layer of the neural network;
Extracting style information of the feature data using statistical information of the feature data;
Generating a style adjustment value for the feature data using the style information;
Adjusting a value of an affine transformation parameter by reflecting the style adjustment value;
Generating a normalization value obtained by normalizing the feature data with statistical information of a batch;
Performing an affine transformation on the normalized value using a value of the adjusted affine transformation parameter: and
Outputting the affine transformed values as normalized feature data of the particular training image;
Neural Network Data Normalization Device.
삭제delete 제12 항에 있어서,
상기 프로세서는,
상기 스타일 정보에 상기 신경망의 가중치와 함께 업데이트되는 스타일 조정 파라미터의 값을 반영하여 상기 스타일 조정 값을 생성하는,
신경망 데이터 정규화 장치.
The method of claim 12,
The processor,
Generating the style adjustment value by reflecting a value of a style adjustment parameter updated with the weight of the neural network in the style information;
Neural Network Data Normalization Device.
제12 항에 있어서,
상기 특징 데이터는 제1 채널의 제1 특징 맵(feature map) 데이터와 제2 채널의 제2 특징 맵 데이터를 포함하고,
상기 스타일 정보는 상기 제1 특징 맵 데이터에 대한 제1 스타일 정보와 상기 제2 특징 맵 데이터에 대한 제2 스타일 정보를 포함하며,
상기 프로세서는,
완전 연결 레이어(fully-connected layer)를 통해 상기 제1 스타일 정보와 상기 제2 스타일 정보를 종합(aggregating)하여 상기 스타일 조정 값을 생성하는,
신경망 데이터 정규화 장치.
The method of claim 12,
The feature data includes first feature map data of a first channel and second feature map data of a second channel,
The style information includes first style information about the first feature map data and second style information about the second feature map data.
The processor,
Generating the style adjustment value by aggregating the first style information and the second style information through a fully-connected layer;
Neural Network Data Normalization Device.
제12 항에 있어서,
상기 특징 데이터는 제1 채널의 제1 특징 맵(feature map) 데이터와 제2 채널의 제2 특징 맵 데이터를 포함하고,
상기 스타일 정보는 상기 제1 특징 맵 데이터에 대한 제1 스타일 정보와 상기 제2 특징 맵 데이터에 대한 제2 스타일 정보를 포함하며,
상기 프로세서는,
상기 제1 스타일 정보를 이용하여 상기 제1 채널에 대응되는 스타일 조정 값을 생성하고,
상기 제2 스타일 정보를 이용하여 상기 제2 채널에 대응되는 스타일 조정 값을 생성하는,
신경망 데이터 정규화 장치.
The method of claim 12,
The feature data includes first feature map data of a first channel and second feature map data of a second channel,
The style information includes first style information about the first feature map data and second style information about the second feature map data.
The processor,
Generating a style adjustment value corresponding to the first channel by using the first style information,
Generating a style adjustment value corresponding to the second channel by using the second style information;
Neural Network Data Normalization Device.
삭제delete 삭제delete 제12 항에 있어서,
상기 프로세서는,
상기 신경망의 특정 레이어에서 출력된 특징 데이터와 상기 신경망의 가중치와 함께 업데이트되는 컨볼루션 필터(convolution filter)와의 컨볼루션 연산을 통해 상기 스타일 조정 값을 생성하는,
신경망 데이터 정규화 장치.
The method of claim 12,
The processor,
Generating the style adjustment value through a convolution operation between a feature data output from a specific layer of the neural network and a convolution filter updated together with the weight of the neural network;
Neural Network Data Normalization Device.
컴퓨터로 판독 가능한 기록매체에 저장된 컴퓨터 프로그램으로서,
신경망의 특정 레이어에서 출력된 특정 트레이닝 이미지에 대한 특징 데이터를 얻는 단계;
상기 특징 데이터의 통계 정보를 이용하여 상기 특징 데이터의 스타일 정보를 추출하는 단계;
상기 스타일 정보를 이용하여 상기 특징 데이터에 대한 스타일 조정 값을 생성하는 단계;
상기 스타일 조정 값을 반영하여 어파인 변환 파라미터의 값을 조정하는 단계;
상기 특징 데이터를 배치(batch)의 통계 정보로 정규화한 정규화값을 생성하는 단계;
상기 조정된 어파인 변환 파라미터의 값을 이용하여 상기 정규화값에 대한 어파인 변환을 수행하는 단계: 및
상기 어파인 변환된 값을 상기 특정 트레이닝 이미지의 정규화된 특징 데이터로 출력하는 단계를 실행시키기 위한 인스트럭션들(instructions)을 포함하는, 컴퓨터 프로그램.
A computer program stored in a computer-readable recording medium,
Obtaining feature data for a specific training image output from a specific layer of the neural network;
Extracting style information of the feature data using statistical information of the feature data;
Generating a style adjustment value for the feature data using the style information;
Adjusting a value of an affine transformation parameter by reflecting the style adjustment value;
Generating a normalization value obtained by normalizing the feature data with statistical information of a batch;
Performing an affine transformation on the normalized value using a value of the adjusted affine transformation parameter: and
And instructions for executing the step of outputting the affine transformed value as normalized feature data of the particular training image.
KR1020190038321A 2019-04-02 2019-04-02 Method for normalizing neural network data and apparatus thereof KR102037483B1 (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
KR1020190038321A KR102037483B1 (en) 2019-04-02 2019-04-02 Method for normalizing neural network data and apparatus thereof

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
KR1020190038321A KR102037483B1 (en) 2019-04-02 2019-04-02 Method for normalizing neural network data and apparatus thereof

Publications (1)

Publication Number Publication Date
KR102037483B1 true KR102037483B1 (en) 2019-11-15

Family

ID=68578595

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1020190038321A KR102037483B1 (en) 2019-04-02 2019-04-02 Method for normalizing neural network data and apparatus thereof

Country Status (1)

Country Link
KR (1) KR102037483B1 (en)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR102290980B1 (en) * 2020-12-11 2021-08-23 (주)그린텍아이엔씨 Prediction System for the Production and Distribution of Water Supply Using Artificial Intelligence

Citations (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR20170108081A (en) 2015-01-28 2017-09-26 구글 인코포레이티드 Batch normalization layers

Patent Citations (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR20170108081A (en) 2015-01-28 2017-09-26 구글 인코포레이티드 Batch normalization layers

Non-Patent Citations (3)

* Cited by examiner, † Cited by third party
Title
Nam, Hyeonseob, and Hyo-Eun Kim. Batch-instance normalization for adaptively style-invariant neural networks. Advances in Neural Information Processing Systems. 2018. *
Wu, Yuxin, and Kaiming He. Group normalization. Proceedings of the European Conference on Computer Vision (ECCV). 2018.9.* *
Xu, Zheng, et al. Strong Baseline for Single Image Dehazing with Deep Features and Instance Normalization. BMVC. Vol. 2. No. 3. 2018. *

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR102290980B1 (en) * 2020-12-11 2021-08-23 (주)그린텍아이엔씨 Prediction System for the Production and Distribution of Water Supply Using Artificial Intelligence

Similar Documents

Publication Publication Date Title
KR102410820B1 (en) Method and apparatus for recognizing based on neural network and for training the neural network
KR102589303B1 (en) Method and apparatus for generating fixed point type neural network
JP5943358B2 (en) Learning device, processing device, prediction system, learning method, processing method, and program
US20210019630A1 (en) Loss-error-aware quantization of a low-bit neural network
KR102046113B1 (en) Machine-learning method for neural network and apparatus thereof
KR20190028320A (en) Pruning and retraining method for a convolution neural network
US10810464B2 (en) Information processing apparatus, information processing method, and storage medium
KR20200128938A (en) Model training method and apparatus, and data recognizing method
KR20210032140A (en) Method and apparatus for performing pruning of neural network
US11875257B2 (en) Normalization method for machine-learning and apparatus thereof
JP6521440B2 (en) Neural network and computer program therefor
KR102199285B1 (en) Method for compressing deep learning neural networks and apparatus for performing the same
US11954755B2 (en) Image processing device and operation method thereof
WO2020195940A1 (en) Model reduction device of neural network
KR102037483B1 (en) Method for normalizing neural network data and apparatus thereof
US10824944B2 (en) Method for feature data recalibration and apparatus thereof
Liu et al. A unified framework of surrogate loss by refactoring and interpolation
KR102449840B1 (en) Method and apparatus for user adaptive speech recognition
US11941505B2 (en) Information processing apparatus of controlling training of neural network, non-transitory computer-readable storage medium for storing information processing program of controlling training of neural network, and information processing method of controlling training of neural network
KR102143192B1 (en) Machine-learning method for neural network and apparatus thereof
US20210081756A1 (en) Fractional convolutional kernels
KR102559036B1 (en) Zero skipping method for non-zero activation function and apparatus thereof
JP7310927B2 (en) Object tracking device, object tracking method and recording medium
KR102375896B1 (en) Method and apparatus for quantizing deep neural network
US20230004863A1 (en) Learning apparatus, method, computer readable medium and inference apparatus

Legal Events

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