KR20190118387A - Convolutional neural network based image processing system and method - Google Patents

Convolutional neural network based image processing system and method Download PDF

Info

Publication number
KR20190118387A
KR20190118387A KR1020180041634A KR20180041634A KR20190118387A KR 20190118387 A KR20190118387 A KR 20190118387A KR 1020180041634 A KR1020180041634 A KR 1020180041634A KR 20180041634 A KR20180041634 A KR 20180041634A KR 20190118387 A KR20190118387 A KR 20190118387A
Authority
KR
South Korea
Prior art keywords
value
layer unit
image processing
parameter
unit
Prior art date
Application number
KR1020180041634A
Other languages
Korean (ko)
Other versions
KR102068576B1 (en
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 KR1020180041634A priority Critical patent/KR102068576B1/en
Publication of KR20190118387A publication Critical patent/KR20190118387A/en
Application granted granted Critical
Publication of KR102068576B1 publication Critical patent/KR102068576B1/en

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06VIMAGE OR VIDEO RECOGNITION OR UNDERSTANDING
    • G06V10/00Arrangements for image or video recognition or understanding
    • G06V10/40Extraction of image or video features
    • G06V10/44Local feature extraction by analysis of parts of the pattern, e.g. by detecting edges, contours, loops, corners, strokes or intersections; Connectivity analysis, e.g. of connected components
    • G06V10/443Local feature extraction by analysis of parts of the pattern, e.g. by detecting edges, contours, loops, corners, strokes or intersections; Connectivity analysis, e.g. of connected components by matching or filtering
    • G06V10/449Biologically inspired filters, e.g. difference of Gaussians [DoG] or Gabor filters
    • G06V10/451Biologically inspired filters, e.g. difference of Gaussians [DoG] or Gabor filters with interaction between the filter responses, e.g. cortical complex cells
    • G06V10/454Integrating the filters into a hierarchical structure, e.g. convolutional neural networks [CNN]
    • 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
    • G06K9/4609
    • G06K9/6267
    • 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
    • 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/0464Convolutional networks [CNN, ConvNet]
    • 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
    • G06N3/084Backpropagation, e.g. using gradient descent
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06VIMAGE OR VIDEO RECOGNITION OR UNDERSTANDING
    • G06V10/00Arrangements for image or video recognition or understanding
    • G06V10/70Arrangements for image or video recognition or understanding using pattern recognition or machine learning
    • G06V10/764Arrangements for image or video recognition or understanding using pattern recognition or machine learning using classification, e.g. of video objects
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06VIMAGE OR VIDEO RECOGNITION OR UNDERSTANDING
    • G06V10/00Arrangements for image or video recognition or understanding
    • G06V10/70Arrangements for image or video recognition or understanding using pattern recognition or machine learning
    • G06V10/82Arrangements for image or video recognition or understanding using pattern recognition or machine learning using neural networks

Landscapes

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

Abstract

The present invention provides an image processing system based on a convolutional neural network and a method thereof which can improve image classification accuracy. According to an embodiment of the present invention, the image processing system based on a convolutional neural network comprises: a convolution layer unit to use a plurality of kernel filters to extract a feature value of an object from input data; an activation layer unit to perform a conversion task on the feature value extracted by the convolution layer unit by using a nonlinear activation function; a polling layer unit to use maximum polling calculation on an output value of the activation layer unit to reduce dimensions and remove or suppress noise; a classification output layer unit to output a classification prediction value for the input data by forward calculation using the output value of the polling layer unit; a loss calculation layer unit to compare the classification prediction value and a predetermined target value to calculate a loss value corresponding to an error value; a reverse calculation unit to calculate a partial differentiation value for the loss value by reverse calculation to acquire a correction value for a parameter of each layer unit; and a classification learning unit to perform an update on the parameter by a gradient descent method using a learning rate extracted by the correction value and a prescribed quantity of learning data.

Description

합성곱 신경망 기반 이미지 처리 시스템 및 방법{CONVOLUTIONAL NEURAL NETWORK BASED IMAGE PROCESSING SYSTEM AND METHOD}Convolutional neural network based image processing system and method {CONVOLUTIONAL NEURAL NETWORK BASED IMAGE PROCESSING SYSTEM AND METHOD}

본 발명의 실시예들은 이미지 처리 기술에 관한 것으로, 더욱 상세하게는 합성곱 신경망 기술을 활용하여 이미지를 처리함으로써 이미지 분류 정확도를 향상시킬 수 있는 시스템 및 방법에 관한 것이다.Embodiments of the present invention relate to an image processing technique, and more particularly, to a system and method that can improve image classification accuracy by processing an image using a composite product neural network technique.

인식(Recognition)은 컴퓨터 비전의 핵심 목표이다. 컴퓨터 비전 인식 방법론이나 인식 시스템을 객관적으로 비교하기 위한 표준 알고리즘과 인식의 성능 측정 알고리즘이 많이 공개되어 있다. 인식은 대상에 따라 사례 인식(Instance Recognition)과 범주 인식(Category Recognition)으로 나눈다. 사례 인식은 특정한 물체를 인식하는 것이다. 과거의 인식 알고리즘은 단순한 물체의 모양으로 인식하려던 실제 환경에서 조명 변화나 기하 변환 등이 종종 문제가 대두되고 있다. 이런 문제를 해결하기 위해서는 실용성을 향상시키기 위한 영상 처리 알고리즘 개발이 필요하게 된다. 사례 인식은 부류 모델링이 쉬운 반면, 범주 인식은 해당 범주에 속하는 물체가 다양하므로 부류를 모델링 하기가 어렵다. 범주 인식의 문제는 부류 내 변화(intra-class variation)문제가 있는 데, 이 문제를 해결하기 위해서는 컴퓨터 비전 알고리즘뿐만 아니라 패턴인식, 기계학습 등의 기술이 필요하게 된다.Recognition is a key goal of computer vision. There are many standard algorithms and objective measurement algorithms for objectively comparing computer vision recognition methodologies and recognition systems. Recognition is divided into instance recognition and category recognition according to the object. Case recognition is to recognize a specific object. In the past, recognition algorithms often face problems such as lighting changes and geometric transformations in real-world environments. To solve this problem, it is necessary to develop an image processing algorithm to improve practicality. Case recognition makes class modeling easy, while category recognition makes it difficult to model classes because of the variety of objects in the category. The problem of category recognition is that there is an intra-class variation problem. To solve this problem, not only computer vision algorithms but also patterns recognition and machine learning are required.

기존 사례 인식이나 범주 인식 개발자는 알고리즘에서 특징 추출 단계와 매칭 단계의 과정을 통하여 인식을 진행한다. 특징 추출단계는 에지 검출(LOG, Canny, edge segment), 지역 특징 검출(SSD, WSSD, SIFT, SURF), 특징 기술(SIFT, PCA-SIFT) 등과 같은 특징 추출 알고리즘을 이용한다. 매칭 단계는 이웃 탐색(kd tree, KNN, hashing), 변환 추정(M-estimator, RANSAC) 등 알고리즘과 특징을 이용하여 물체를 인식하는 방식이다.The existing case recognition or category recognition developer proceeds with the process of feature extraction and matching in the algorithm. The feature extraction step uses feature extraction algorithms such as edge detection (LOG, Canny, edge segment), local feature detection (SSD, WSSD, SIFT, SURF), feature description (SIFT, PCA-SIFT). The matching step is an object recognition method using algorithms and features such as neighbor search (kd tree, KNN, hashing) and transform estimation (M-estimator, RANSAC).

SIFT/SURF 등과 같은 특징 추출 알고리즘은 이동, 회전에 불변이므로, 이미지 인식 방식 중에서 널리 사용되고 있다. 그리고, 최근에는 특칭 추출 알고리즘의 장점과 매칭의 신뢰도가 높은 장점을 활용한 이미지 딥(deep) 학습 기술 방법인 이미지 딥 러닝(image deep learning)의 합성곱 신경망(Convolutional Neural Network, CNN)기술이 주목을 받고 있다.Since feature extraction algorithms such as SIFT / SURF are invariant to movement and rotation, they are widely used among image recognition methods. In recent years, the convolutional neural network (CNN) technology of image deep learning, which is an image deep learning method that utilizes the advantages of the feature extraction algorithm and the high reliability of matching, is noted. Is getting.

본 발명에서는 기존 이미지 인식 시스템의 인식 프로세스에 대한 단점인 프로세스에서 특징 추출과 매치가 서로 독립으로 처리하는 단순한 방식을 탈피하고, 합성곱 신경망 기술을 활용하여 특징 추출과 매치가 통합된 이미지 처리 시스템을 설계 및 구현하였다. 이를 위해, 기존 이미지 인식 시스템을 합성곱 신경망으로 운용 및 성능 분석이 가능하도록 하였으며, 이미지에 대한 특징 추출과 매칭 프로세스를 자동적으로 처리하여 시스템이 이루어질 수 있도록 설계 및 구현하였다.In the present invention, a simple method of processing feature extraction and matching independently from each other in a process which is a disadvantage of the recognition process of an existing image recognition system, and using an image processing system integrated with feature extraction and matching using a composite product neural network technology Design and implementation. To this end, the existing image recognition system can be operated and analyzed using a composite product neural network, and the system is designed and implemented to automatically process the feature extraction and matching process for images.

관련 선행기술로는 대한민국 등록특허공보 제10-1834791호(발명의 명칭: 합성곱신경망을 이용한 주자본과 목판본의 분류 정보 제공 방법, 등록일자: 2018.02.27)가 있다.Related prior arts include Republic of Korea Patent Publication No. 10-1834791 (name of the invention: a method for providing classification information of main capital and woodblock using a synthetic product neural network, registration date: February 27, 2018).

본 발명의 일 실시예는 합성곱 신경망 기술을 활용하여 이미지를 처리함으로써 이미지 분류 정확도를 향상시킬 수 있는 합성곱 신경망 기반 이미지 처리 시스템 및 방법을 제공한다.One embodiment of the present invention provides a multiplicative neural network based image processing system and method that can improve the image classification accuracy by processing the image using the multiplicative neural network technology.

본 발명이 해결하고자 하는 과제는 이상에서 언급한 과제(들)로 제한되지 않으며, 언급되지 않은 또 다른 과제(들)은 아래의 기재로부터 당업자에게 명확하게 이해될 수 있을 것이다.The problem to be solved by the present invention is not limited to the problem (s) mentioned above, and other object (s) not mentioned will be clearly understood by those skilled in the art from the following description.

본 발명의 일 실시예에 따른 합성곱 신경망 기반 이미지 처리 시스템은 복수의 커널 필터를 이용하여 입력 데이터로부터 물체의 특징 값을 추출하는 합성곱 계층부; 상기 합성곱 계층부에 의해 추출된 특징 값에 대하여 비선형 활성화 함수를 이용하여 변환 작업을 수행하는 활성화 계층부; 상기 활성화 계층부의 출력 값에 대하여 최댓값 풀링(max polling) 연산을 이용하여 차원을 축소하고 잡음을 제거 및 억제하는 풀링 계층부; 상기 풀링 계층부의 출력 값을 이용한 전방향 연산을 통해 상기 입력 데이터에 대한 분류 예측 값을 출력하는 분류 출력 계층부; 상기 분류 예측 값과 미리 정해진 목표 값을 비교하여 그 오차 값에 해당하는 손실 값을 산출하는 손실 계산 계층부; 상기 손실 값에 대한 편 미분 값을 역방향 연산을 통해 계산하여 상기 각 계층부의 매개 변수에 대한 수정 값을 획득하는 역방향 계산부; 및 상기 수정 값, 및 일정량의 학습 데이터들을 통해 도출된 학습률을 이용한 경사 하강법(Gradient Descent Method)을 통하여 상기 매개 변수에 대한 업데이트를 수행하는 분류 학습부를 포함한다.Synthetic product neural network based image processing system according to an embodiment of the present invention comprises a composite product layer unit for extracting a feature value of the object from the input data using a plurality of kernel filters; An activation layer unit which performs a transform operation on a feature value extracted by the composite product layer unit using a nonlinear activation function; A pooling layer unit which reduces a dimension, removes and suppresses noise by using a maximum polling operation on an output value of the activation layer unit; A classification output layer unit for outputting a classification prediction value for the input data through an omnidirectional operation using the output value of the pooling layer unit; A loss calculating layer unit comparing the classification prediction value with a predetermined target value and calculating a loss value corresponding to the error value; A reverse calculation unit calculating a partial differential value of the loss value through a reverse operation to obtain a correction value for a parameter of each layer unit; And a classification learning unit for updating the parameter through a gradient descent method using the correction value and the learning rate derived through a certain amount of learning data.

상기 활성화 계층부는 reLU 활성화 함수를 이용하여 상기 특징 값에 대하여 변환 작업을 수행할 수 있다.The activation layer may perform a conversion operation on the feature value by using a reLU activation function.

상기 역방향 계산부는 상기 손실 계산 계층부에서 상기 분류 출력 계층부 방향으로 상기 분류 출력 계층부의 제1 매개 변수에 대한 편 미분 값을 계산하고, 상기 분류 출력 계층부에서 마지막의 은닉 계층 방향으로의 제2 매개 변수에 대한 편 미분 값을 계산하며, 은닉 계층들 사이의 제3 매개 변수에 대한 편 미분 값을 계산하여 상기 각 계층부의 매개 변수(상기 제1 내지 제3 매개 변수)에 대한 수정 값을 획득할 수 있다.The reverse calculation section calculates a partial differential value for the first parameter of the classification output hierarchy in the direction of the classification output hierarchy in the loss calculation hierarchy, and a second derivative in the direction of the last hidden hierarchy in the classification output hierarchy. Partial derivative values for parameters are calculated, and partial derivative values for third parameters between hidden layers are calculated to obtain correction values for the parameters (the first to third parameters) of each layer part. can do.

본 발명의 일 실시예에 따른 합성곱 신경망 기반 이미지 처리 시스템은 상기 합성곱 계층부에 의해 출력된, 2개 이상의 특징 값에 대해 비선형 활성화 함수를 이용하여 병렬하여 연결 계산을 수행하고, 상기 병렬의 연결 계산 결과에 대해 합치 작업을 수행하여 다차원의 결과 값을 얻으며, 상기 다차원의 결과 값에 대해 커널 필터와 선형 활성화 함수를 이용하여 차원 변환 작업을 수행함으로써 상기 입력 데이터의 특징이 서로 조합된 새로운 특징 값을 추출하는 인셉션 계층부를 더 포함할 수 있다.In the convolutional neural network based image processing system according to an exemplary embodiment of the present invention, a convolution calculation is performed in parallel using a nonlinear activation function on two or more feature values output by the convolutional layer, and the parallel A new feature that combines the characteristics of the input data by performing a matching operation on the concatenation calculation result to obtain a multidimensional result value, and performing a dimensional transform operation on the multidimensional result value by using a kernel filter and a linear activation function. The apparatus may further include an inception layer unit that extracts a value.

본 발명의 일 실시예에 따른 합성곱 신경망 기반 이미지 처리 시스템은 상기 입력 데이터에 대해 상기 인셉션 계층부 및 상기 합성곱 계층부를 통해 다차원 데이터를 생성하고, 상기 다차원 데이터의 차원 수와 일치하도록 상기 입력 데이터의 차원 수를 변환하고, 상기 다차원 데이터와 상기 차원 수가 변환된 입력 데이터를 합치한 후 선형 활성화 함수를 이용하여 상기 입력 데이터의 특징 손실 문제를 억제하는 스킵 연결 계층부를 더 포함할 수 있다.The composite product neural network based image processing system according to an embodiment of the present invention generates multidimensional data through the inception layer unit and the composite product layer unit with respect to the input data, and matches the input to match the number of dimensions of the multidimensional data. The apparatus may further include a skip connection layer unit for converting the number of dimensions of data, combining the multidimensional data and the input data having the converted number of dimensions, and suppressing a problem of feature loss of the input data by using a linear activation function.

본 발명의 일 실시예에 따른 합성곱 신경망 기반 이미지 처리 시스템은 상기 각 계층부의 매개 변수의 수량을 이용하여 계산된 표본 표준 편차를 기반으로 He 초기값 알고리즘을 설계하고, 상기 He 초기값 알고리즘을 기반으로 상기 매개 변수의 초기화 작업을 수행하는 매개 변수 초기값 설계부를 더 포함할 수 있다.The composite product neural network based image processing system according to an embodiment of the present invention designs an He initial value algorithm based on a sample standard deviation calculated using the quantity of parameters of each layer unit, and is based on the He initial value algorithm. The apparatus may further include a parameter initial value design unit configured to initialize the parameter.

본 발명의 일 실시예에 따른 합성곱 신경망 기반 이미지 처리 시스템은 상기 입력 데이터 각각에 대해 미니 배치의 형태로 구현하고, 상기 미니 배치의 평균 값을 계산하고, 상기 미니 배치의 평균 값을 이용하여 상기 미니 배치의 분산 값을 계산하며, 상기 미니 배치의 각 입력 값에 대해 상기 미니 배치의 평균 값 및 분산 값을 이용하여 정규화 미니 배치의 각 값을 구하는 미니 배치 정규화 설계부를 더 포함하고, 상기 합성곱 계층부는 상기 정규화 미니 배치의 각 값을 상기 입력 데이터로서 이용할 수 있다.The composite product neural network based image processing system according to an embodiment of the present invention is implemented in the form of a mini batch for each of the input data, calculates an average value of the mini batch, and uses the average value of the mini batch. And a mini-batch normalization design unit for calculating a variance value of the mini-batch, and obtaining each value of the normalized mini-batch using the mean value and the variance value of the mini-batch for each input value of the mini-batch, and the composite product The hierarchical unit may use each value of the normalized mini batch as the input data.

본 발명의 일 실시예에 따른 합성곱 신경망 기반 이미지 처리 시스템은 상기 매개 변수의 모멘텀을 계산하고, 상기 매개 변수의 미분 값을 이용하여 상기 학습률의 수정 값을 계산하며, 상기 모멘텀 및 상기 학습률의 수정 값을 이용하여 상기 매개 변수의 수정 작업을 수행하는 경사 하강법 최적화 설계부를 더 포함할 수 있다.The composite product neural network based image processing system according to an embodiment of the present invention calculates the momentum of the parameter, calculates the correction value of the learning rate using the derivative value of the parameter, and corrects the momentum and the learning rate. The method may further include a gradient descent optimization design unit that performs a correction operation of the parameter using a value.

본 발명의 일 실시예에 따른 합성곱 신경망 기반 이미지 처리 방법은 상기 이미지 처리 시스템의 합성곱 계층부가 복수의 커널 필터를 이용하여 입력 데이터로부터 물체의 특징 값을 추출하는 단계; 상기 이미지 처리 시스템의 활성화 계층부가 상기 합성곱 계층부에 의해 추출된 특징 값에 대하여 비선형 활성화 함수를 이용하여 변환 작업을 수행하는 단계; 상기 이미지 처리 시스템의 풀링 계층부가 상기 활성화 계층부의 출력 값에 대하여 최댓값 풀링(max polling) 연산을 이용하여 차원을 축소하고 잡음을 제거 및 억제하는 단계; 상기 이미지 처리 시스템의 분류 출력 계층부가 상기 풀링 계층부의 출력 값을 이용한 전방향 연산을 통해 상기 입력 데이터에 대한 분류 예측 값을 출력하는 단계; 상기 이미지 처리 시스템의 손실 계산 계층부가 상기 분류 예측 값과 미리 정해진 목표 값을 비교하여 그 오차 값에 해당하는 손실 값을 산출하는 단계; 상기 이미지 처리 시스템의 역방향 계산부가 상기 손실 값에 대한 편 미분 값을 역방향 연산을 통해 계산하여 상기 각 계층부의 매개 변수에 대한 수정 값을 획득하는 단계; 및 상기 이미지 처리 시스템의 분류 학습부가 상기 수정 값, 및 일정량의 학습 데이터들을 통해 도출된 학습률을 이용한 경사 하강법(Gradient Descent Method)을 통하여 상기 매개 변수에 대한 업데이트를 수행하는 단계를 포함한다.Synthetic product neural network based image processing method according to an embodiment of the present invention comprises the steps of extracting the feature value of the object from the input data using a plurality of kernel filter of the composite product layer of the image processing system; Performing, by the activation layer unit of the image processing system, a transform operation on the feature value extracted by the composite product layer unit using a nonlinear activation function; A pooling layer unit of the image processing system reduces the dimension, removes and suppresses the noise by using a maximum polling operation on an output value of the activation layer unit; Outputting, by the classification output layer unit of the image processing system, a classification prediction value for the input data through an omnidirectional operation using the output value of the pooling layer unit; A loss calculating layer unit of the image processing system comparing the classification prediction value with a predetermined target value and calculating a loss value corresponding to the error value; A backward calculation unit of the image processing system calculates a partial differential value of the loss value through a backward operation to obtain a correction value for a parameter of each layer unit; And performing, by the classification learning unit of the image processing system, updating the parameter through a gradient descent method using the correction value and the learning rate derived through a predetermined amount of learning data.

본 발명의 일 실시예에 따른 합성곱 신경망 기반 이미지 처리 방법은 상기 이미지 처리 시스템의 경사 하강법 최적화 설계부가 상기 매개 변수의 모멘텀을 계산하는 단계; 상기 경사 하강법 최적화 설계부가 상기 매개 변수의 미분 값을 이용하여 상기 학습률의 수정 값을 계산하는 단계; 및 상기 경사 하강법 최적화 설계부가 상기 모멘텀 및 상기 학습률의 수정 값을 이용하여 상기 매개 변수의 수정 작업을 수행하는 단계를 더 포함할 수 있다.Synthetic product neural network based image processing method according to an embodiment of the present invention includes the step of calculating the momentum of the parameter by the gradient descent optimization design of the image processing system; Calculating, by the gradient descent optimization design unit, a correction value of the learning rate using the derivative value of the parameter; And performing a correction operation of the parameter by using the gradient descent optimization design unit by using the correction value of the momentum and the learning rate.

기타 실시예들의 구체적인 사항들은 상세한 설명 및 첨부 도면들에 포함되어 있다.Specific details of other embodiments are included in the detailed description and the accompanying drawings.

본 발명의 일 실시예에 따르면, 합성곱 신경망 기술을 활용하여 이미지를 처리함으로써 이미지 분류 정확도를 향상시킬 수 있다.According to an embodiment of the present invention, image classification accuracy may be improved by processing an image by using a composite product neural network technology.

본 발명의 일 실시예에 따르면, 다차원 이미지 데이터에 대해 병렬 처리할 수 있고, 메모리가 부담 없는 상태에서 적당한 다차원 이미지 데이터에 대해 합성곱/풀링 작업을 수행할 수 있다.According to an embodiment of the present invention, multi-dimensional image data can be processed in parallel, and a multiplication / pooling operation can be performed on appropriate multi-dimensional image data without burden of memory.

본 발명의 일 실시예에 따르면, 스킵 연결 계층을 통한 스킵 프로세스를 수행함으로써 학습 모델의 딥에 따라 학습 데이터의 특징 손실 문제를 억제할 수 있다.According to an embodiment of the present invention, by performing a skip process through the skip connection layer, it is possible to suppress the problem of feature loss of the training data according to the dip of the learning model.

본 발명의 일 실시예에 따르면, He 초기값 알고리즘 기반으로 매개 변수 초기화 작업을 수행함으로써 표현력 제한 및 매개 변수 손실 문제를 억제할 수 있다.According to one embodiment of the present invention, by performing the parameter initialization operation based on the He initial value algorithm, it is possible to suppress the problem of expression power limitation and parameter loss.

본 발명의 일 실시예에 따르면, 데이터 미니 배치 정규화 알고리즘을 사용하기 때문에 오버 피팅 문제를 억제할 수 있을 뿐만 아니라 빠른 학습을 진행할 수 있다.According to an embodiment of the present invention, since the data mini-batch normalization algorithm is used, not only the over fitting problem can be suppressed but also the fast learning can be performed.

본 발명의 일 실시예에 따르면, Adam 알고리즘 기반의 개량형(개선) 경사 하강법을 이용한 최적화 설계를 함으로써 가속 학습을 수행할 수 있고 제한 시간에 최적의 매개 변수를 계산할 수 있다.According to an embodiment of the present invention, by performing the optimization design using the advanced (improved) gradient descent method based on the Adam algorithm, it is possible to perform the acceleration learning and to calculate the optimal parameter in the time limit.

도 1은 본 발명의 일 실시예에 따른 합성곱 신경망 기반 이미지 처리 시스템을 설명하기 위해 도시한 블록도이다.
도 2는 제안 학습 모델의 기본 구조를 나타낸 도면이다.
도 3은 제안 학습 모델의 강화 구조를 나타낸 도면이다.
도 4는 제안 학습 모델의 복합 구조를 나타낸 도면이다.
도 5는 입력 4x4 크기의 데이터에 3x3 크기의 필터 알고리즘을 이용하여 처리되는 2x2 크기의 결과를 보여준다.
도 6은 필터 연산의 상세한 계산 과정을 나타낸 도면이다.
도 7은 패딩 처리 과정을 도시한 도면이다.
도 8은 2 x 2 최댓값 풀링 연산을 이용하여 데이터의 차원 크기 축소 과정을 보여준다.
도 9는 합성곱/풀링 프레임워크가 3차원 이미지를 처리하는 과정을 도시한 것이다.
도 10은 도 1의 인셉션 계층부의 구조를 보여준다.
도 11은 도 1의 스킵 연결 계층부의 구조를 보여준다.
도 12는 학습 모델의 역방향 계산 알고리즘을 설명하기 위해 도시한 도면이다.
도 13 내지 도 15는 세부적인 역방향 계산 과정을 도시한 도면이다.
도 16은 경사 하강법의 프로세스를 나타낸 도면이다.
도 17은 미니 배치 정규화를 이용하여 학습하는 과정의 흐름도이다.
도 18은 개량형 경사 하강법을 이용하여 학습하는 과정의 흐름도이다.
도 19는 3x3 커널의 이미지 처리 결과를 보여준다.
도 20은 다른 사이즈의 커널을 이용한 이미지 처리 효과를 보여준다.
도 21은 1차원 커널을 이용하여 이미지를 처리한 결과를 보여준다.
도 22는 3x3과 4x4 커널에 제안한 결합 처리 방법을 이용한 이미지 테스트 처리 결과를 보여준다.
도 23은 3개 및 4개의 커널을 이용하여 이미지를 처리한 결과를 보여준다.
도 24는 제안한 스킵 처리 방법을 이용한 이미지 처리 결과이다
도 25는 제안한 복합성 처리 방법을 이용한 이미지 처리 결과를 보여준다.
도 26은 합성곱 계층을 이용한 처리 결과에 대해 폴링 계층을 이용하여 처리된 결과를 보여준다.
도 27은 폴링 계층을 이용하여 이미지를 처리한 결과이다.
도 28은 합성곱/활성화/폴링 계층 방법을 통한 이미지 처리 테스트 결과를 보여준다.
도 29는 제안하는 성능 개선 프로세스를 이용하여 합성곱/활성화의 수량 성장(3, 5, 8)에 따라 이미지 처리 결과를 보여준다.
도 30은 제안하는 성능 개선 프로세스를 이용하지 않은 이미지 처리 결과를 보여준다.
도 31은 제안하는 성능 개선 작업을 이용하여 구현되는 시스템(딥 러닝 6계층)의 학습 과정을 보여준다
도 32는 제안하는 성능 개선 프로세스를 이용하지 않은 시스템의 학습 과정을 보여준다.
1 is a block diagram illustrating a composite product neural network based image processing system according to an exemplary embodiment of the present invention.
2 is a diagram illustrating a basic structure of a proposed learning model.
3 is a diagram illustrating a reinforcement structure of the proposed learning model.
4 is a diagram illustrating a complex structure of a proposed learning model.
5 shows a 2x2 size result processed using a 3x3 size filter algorithm on input 4x4 size data.
6 is a diagram illustrating a detailed calculation process of the filter operation.
7 is a diagram illustrating a padding process.
8 illustrates a process of reducing the size of data using a 2 × 2 maximum value pooling operation.
9 illustrates a process of a multiplication / pooling framework processing a 3D image.
FIG. 10 illustrates a structure of the inception layer unit of FIG. 1.
FIG. 11 illustrates a structure of a skipped connection layer unit of FIG. 1.
12 is a diagram illustrating a backward calculation algorithm of a learning model.
13 to 15 illustrate a detailed backward calculation process.
It is a figure which shows the process of the gradient descent method.
17 is a flowchart of a process of learning using mini-batch normalization.
18 is a flowchart of a process of learning using the improved gradient descent method.
19 shows an image processing result of a 3x3 kernel.
20 shows the effect of image processing using kernels of different sizes.
21 shows a result of processing an image using a one-dimensional kernel.
Fig. 22 shows the result of image test processing using the proposed joint processing method for 3x3 and 4x4 kernels.
Figure 23 shows the results of processing the image using three and four kernels.
24 shows image processing results using the proposed skip processing method.
25 shows an image processing result using the proposed complexity processing method.
26 shows a result processed using a polling layer with respect to a result processed using a convolutional layer.
27 shows a result of processing an image using a polling layer.
Figure 28 shows the results of the image processing test through the composite product / activation / polling layer method.
29 shows the results of image processing according to the quantity growth (3, 5, 8) of the composite product / activation using the proposed performance improvement process.
30 shows image processing results without using the proposed performance improvement process.
31 shows a learning process of a system (6 layers of deep learning) implemented using the proposed performance improvement task.
32 shows a learning process of a system that does not use the proposed performance improvement process.

본 발명의 이점 및/또는 특징, 그리고 그것들을 달성하는 방법은 첨부되는 도면과 함께 상세하게 후술되어 있는 실시예들을 참조하면 명확해질 것이다. 그러나, 본 발명은 이하에서 개시되는 실시예들에 한정되는 것이 아니라 서로 다른 다양한 형태로 구현될 것이며, 단지 본 실시예들은 본 발명의 개시가 완전하도록 하며, 본 발명이 속하는 기술분야에서 통상의 지식을 가진 자에게 발명의 범주를 완전하게 알려주기 위해 제공되는 것이며, 본 발명은 청구항의 범주에 의해 정의될 뿐이다. 명세서 전체에 걸쳐 동일 참조 부호는 동일 구성요소를 지칭한다.Advantages and / or features of the present invention and methods for achieving them will become apparent with reference to the embodiments described below in detail in conjunction with the accompanying drawings. However, the present invention is not limited to the embodiments disclosed below, but may be implemented in various different forms, only the present embodiments to make the disclosure of the present invention complete, and common knowledge in the art to which the present invention pertains. It is provided to fully inform the person having the scope of the invention, which is defined only by the scope of the claims. Like reference numerals refer to like elements throughout.

또한, 이하 실시되는 본 발명의 바람직한 실시예는 본 발명을 이루는 기술적 구성요소를 효율적으로 설명하기 위해 각각의 시스템 기능구성에 기 구비되어 있거나, 또는 본 발명이 속하는 기술분야에서 통상적으로 구비되는 시스템 기능 구성은 가능한 생략하고, 본 발명을 위해 추가적으로 구비되어야 하는 기능 구성을 위주로 설명한다. 만약 본 발명이 속하는 기술분야에서 통상의 지식을 가진 자라면, 하기에 도시하지 않고 생략된 기능 구성 중에서 종래에 기 사용되고 있는 구성요소의 기능을 용이하게 이해할 수 있을 것이며, 또한 상기와 같이 생략된 구성 요소와 본 발명을 위해 추가된 구성 요소 사이의 관계도 명백하게 이해할 수 있을 것이다.In addition, preferred embodiments of the present invention to be carried out below are provided in each system functional configuration to efficiently describe the technical components constituting the present invention, or system functions that are commonly provided in the technical field to which the present invention belongs. The configuration is omitted as much as possible, and will be described mainly on the functional configuration that should be additionally provided for the present invention. If those skilled in the art to which the present invention pertains, it will be easy to understand the functions of the components that are used in the prior art among the omitted functional configuration not shown below, and also the configuration omitted as described above The relationship between the elements and the components added for the present invention will also be clearly understood.

또한, 이하의 설명에 있어서, 신호 또는 정보의 "전송", "통신", "송신", "수신" 기타 이와 유사한 의미의 용어는 일 구성요소에서 다른 구성요소로 신호 또는 정보가 직접 전달되는 것뿐만이 아니라 다른 구성요소를 거쳐 전달되는 것도 포함한다. 특히 신호 또는 정보를 일 구성요소로 "전송" 또는 "송신"한다는 것은 그 신호 또는 정보의 최종 목적지를 지시하는 것이고 직접적인 목적지를 의미하는 것이 아니다. 이는 신호 또는 정보의 "수신"에 있어서도 동일하다.In addition, in the following description, the terms "transfer", "communication", "transmit", "receive", and the like in a signal or information mean that a signal or information is directly transmitted from one component to another component. As well as passing through other components. In particular, "transmitting" or "sending" a signal or information to a component indicates the final destination of the signal or information and does not mean a direct destination. The same is true for the "reception" of a signal or information.

본 발명의 실시예들을 설명하기에 앞서 CNN(Convolutional Neural Network) 기반의 학습 모델 구조에 대해 살펴보기로 한다.Before describing embodiments of the present invention, a learning model structure based on CNN (Convolutional Neural Network) will be described.

제안 학습 모델의 기본 구조는 도 2와 같다. 이 학습 모델에서는 각 그룹(210, 220, 230)을 합성곱 계층과 풀링 계층의 3+1 그룹으로 구축하고, 각 그룹(210, 220, 230)에 대해 순서대로 3회를 수행하고, 다음에는 Affine 계층(240) 및 Softmax 계층(250)을 수행한다. 즉, 제안 학습 모델의 기본 구조의 딥 사이즈는 (3+1) x 3 은닉층을 가지고 있다. 여기서, 상기 합성곱 계층은 도 1의 합성곱 계층부(110)에 대응하는 구성이고, 상기 풀링 계층은 도 1의 풀링 계층부(115)에 대응하는 구성이다.The basic structure of the proposed learning model is shown in FIG. In this learning model, each group (210, 220, 230) is constructed as a 3 + 1 group of composite product and pooling layers, and each group (210, 220, 230) is performed three times in order, and then Affine layer 240 and Softmax layer 250 are performed. That is, the deep size of the basic structure of the proposed learning model has a (3 + 1) x 3 hidden layer. Here, the convolutional product hierarchy is a configuration corresponding to the convolution product hierarchy unit 110 of FIG. 1, and the pooling layer is a configuration corresponding to the pooling hierarchy unit 115 of FIG. 1.

제안 학습 모델은 은닉층(hidden layer) 대신 그룹을 이용한다는 점에서, 학습 모델에 대해 확장성(scalability) 및 기술자(descriptor) 간편성을 가진다는 장점이 있다. 즉, 제안 학습 모델의 기본 구조를 바탕으로 새로운 모델 및 기능을 설계할 때 새로운 그룹을 추가하거나 그룹 내부에서 새로운 기능 함수 및 구조를 추가할 수 있다.The proposed learning model has the advantage of having scalability and descriptor simplicity with respect to the learning model in that groups are used instead of hidden layers. That is, when designing new models and functions based on the basic structure of the proposed learning model, new groups can be added or new function functions and structures can be added within the groups.

제안 학습 모델의 강화 구조는 도 3에 도시된 바와 같이 기본 구조를 바탕으로 각 그룹마다 두 개 합성곱 계층(310, 320)을 추가하고, 각 그룹에 대해 큰 사이즈 커널을 대신 작은 사이즈 커널을 사용한다. 제안 학습 모델의 복합 구조는 상술한 학습 모델의 단순한 그룹 구조보다 더 복잡한 구조 및 기능을 가지고, 그룹 사이에 대해 복잡한 구조를 설계한다.The reinforcement structure of the proposed learning model adds two convolutional layers 310 and 320 to each group based on the basic structure as shown in FIG. 3, and uses a small size kernel instead of a large size kernel for each group. do. The complex structure of the proposed learning model has a more complex structure and function than the simple group structure of the learning model described above, and designs a complex structure between groups.

제안 학습 모델의 복합 구조는 도 4와 같다. 이 복합 구조에서는 인셉션 계층(410) 및 스킵 연결 계층(420)을 있는 그룹을 가지고 있다. 그룹의 인셉션 계층(410) 부분의 기능은 입력 데이터에 대해 동시에 다양한 사이즈 커널을 이용하여 처리하고, 다양한 결과에 대해 병렬하여 연결한 결과를 출력한다. 스킵 연결 계층(420)의 기능은 다른 그룹 및 인셉션의 값에 대해 계정 변화 조작을 수행한다.The complex structure of the proposed learning model is shown in FIG. This composite structure has a group with an inception layer 410 and a skipped connection layer 420. The function of the inception layer 410 portion of the group processes the input data using various size kernels at the same time and outputs the results of the parallel connection for the various results. The function of the skipped connection layer 420 performs account change operations on the values of other groups and inceptions.

특히, 제안 학습 모델의 복합 구조에서는 1x1, 3x3 및 3x1, 1x3 커널 형식으로 많이 이용하여 제안 학습 모델의 딥에 따라 계산 량을 줄일 수 있고 계산 속도를 증가한다. 또한, 제안 학습 모델의 스킵 연결 계층(420)에서 인셉션 계층(410)을 포함할 수 있고, 합성곱 계층 그룹을 포함하는 목적이 제안 모델의 확장 능력을 추가할 수 있는 것이다. 즉, 학습의 목적에 따라 제안 학습 모델의 구조에 대해 수정할 때 스킵 연결 계층(420) 및 인셉션 계층(420)의 함수를 수정하면 될 수 있다. 참고로, 상기 인셉션 계층(410)은 도 1의 인셉션 계층부(145)에 대응하는 구성이고, 상기 스킵 연결 계층(420)은 도 1의 스킵 연결 계층부(150)에 대응하는 구성이다.In particular, in the complex structure of the proposed learning model, it is possible to reduce the amount of computation and increase the computational speed according to the dip of the proposed learning model by using the 1x1, 3x3 and 3x1, 1x3 kernel formats. In addition, the skip connection layer 420 of the proposed learning model may include an inception layer 410, and the purpose of including a convolutional layer group is to add an extension capability of the proposed model. That is, the function of the skip connection layer 420 and the inception layer 420 may be modified when modifying the structure of the proposed learning model according to the purpose of learning. For reference, the inception layer 410 is a configuration corresponding to the inception layer unit 145 of FIG. 1, and the skip connection layer 420 is a configuration corresponding to the skip connection layer unit 150 of FIG. 1. .

이하에서는 첨부된 도면을 참조하여 본 발명의 실시예들을 상세히 설명하기로 한다.Hereinafter, with reference to the accompanying drawings will be described embodiments of the present invention;

도 1은 본 발명의 일 실시예에 따른 합성곱 신경망 기반 이미지 처리 시스템을 설명하기 위해 도시한 블록도이다.1 is a block diagram illustrating a composite product neural network based image processing system according to an exemplary embodiment of the present invention.

도 1을 참조하면, 본 발명의 일 실시예에 따른 합성곱 신경망 기반 이미지 처리 시스템(100)은 합성곱 계층부(110), 활성화 계층부(115), 풀링 계층부(120), 분류 출력 계층부(125), 손실 계산 계층부(130), 역방향 계산부(135), 분류 학습부(140), 인셉션 계층부(145), 스킵 연결 계층부(150), 매개 변수 초기값 설계부(155), 미니 배치 정규화 설계부(160), 경사 하강법 최적화 설계부(165), 및 제어부(170)를 포함할 수 있다.1, a convolutional neural network based image processing system 100 according to an exemplary embodiment may include a convolutional layer 110, an activation layer 115, a pooling layer 120, and a classification output layer. Unit 125, loss calculation layer 130, backward calculation unit 135, classification learning unit 140, inception layer unit 145, skip connection layer unit 150, parameter initial value design unit 155 ), A mini batch normalization design unit 160, a gradient descent optimization design unit 165, and a controller 170.

상기 합성곱 계층부(110)는 복수의 커널 필터를 이용하여 입력 데이터로부터 물체의 특징 값을 추출할 수 있다. 여기서, 상기 복수의 커널 필터는 동일한 사이즈일 수도 있고 다른 사이즈일 수도 있으며, 일부는 동일하고 일부는 다른 사이즈일 수도 있는 등 다양한 실시가 가능하다. 또한, 상기 복수의 커널 필터는 미리 설정된 기준 사이즈보다 큰 사이즈일 수도 있고 상기 기준 사이즈보다 작은 사이즈일 수도 있다.The composite product hierarchy 110 may extract a feature value of an object from input data using a plurality of kernel filters. Here, the plurality of kernel filters may be the same size or different sizes, some may be the same and some may be a different size, and the like. In addition, the plurality of kernel filters may be larger than a preset reference size or may be smaller than the reference size.

상기 활성화 계층부(115)는 상기 합성곱 계층부(110)에 의해 추출된 특징 값에 대하여 비선형 활성화 함수를 이용하여 변환 작업을 수행할 수 있다. 이때, 상기 활성화 계층부(115)는 reLU(Rectified linear Unit) 활성화 함수를 이용하여 상기 특징 값에 대하여 변환 작업을 수행할 수 있다.The activation layer unit 115 may perform a conversion operation on the feature value extracted by the composite product layer unit 110 using a nonlinear activation function. In this case, the activation layer 115 may perform a conversion operation on the feature value by using a rectified linear unit (RELU) activation function.

본 실시예에서는 오차 역전파법에서 시그모이드 함수와 쌍곡 탄젠트 함수의 도함수는 입력 값이 커지면 경사가 0에 가까워서 딥 학습을 진행하지 않는 단점이 있기 때문에, 딥 러닝 학습에서 다른 함수보다 학습 속도, 경사 계산 속도 및 병렬처리 속도가 빠른 reLU 활성화 함수를 상기 비선형 활성화 함수로서 사용하는 것이 바람직하다.In the present embodiment, since the derivatives of the sigmoid function and the hyperbolic tangent function in the error backpropagation method have an inclination that the slope is close to 0 when the input value is increased, the deep learning does not proceed. It is preferable to use the reLU activation function, which has a high calculation speed and parallel processing speed, as the nonlinear activation function.

상기 풀링 계층부(120)는 상기 활성화 계층부(115)의 출력 값에 대하여 최댓값 풀링(max polling) 연산을 이용하여 차원을 축소하고 잡음을 제거 및 억제할 수 있다. 참고로, 이미지 인식 분야에서는 주로 상기 최댓값 풀링 연산을 이용하여 이미지의 제한 영역에서 최댓값을 추출하고, 데이터의 잡음을 제거할 수 있다.The pooling layer unit 120 may reduce the dimension, remove and suppress the noise by using a maximum polling operation on the output value of the activation layer unit 115. For reference, in the image recognition field, the maximum value may be extracted from the limited region of the image and the noise of the data may be mainly removed using the maximum value pooling operation.

이와 같이 본 발명의 일 실시예에 따른 합성곱 신경망 기반 이미지 처리 시스템(100)은 합성곱 계층부(110)과 풀링 계층부(120)을 통하여 이미지의 노이즈를 제거하고 특징을 추출 처리한다. 이하에서는 상기 상기 합성곱 계층부(110)는 필터 연산 방법을 이용하여 계산한다. 도 5는 입력 4x4 크기의 데이터(510)에 3x3 크기의 필터(520) 알고리즘을 이용하여 처리되는 2x2 크기의 결과(530)를 보여준다. 필터 연산의 과정은 원도우를 일정 간격으로 입력 값에 대응하는 원소끼리 곱한 후 총합을 계산한다. As described above, the composite product neural network based image processing system 100 according to an exemplary embodiment removes noise of an image and extracts a feature through the composite product layer 110 and the pooling layer 120. Hereinafter, the composite product hierarchy 110 is calculated using a filter calculation method. 5 shows a 2x2 sized result 530 that is processed using a 3x3 sized filter 520 algorithm on an input 4x4 sized data 510. The filter operation process calculates the total after multiplying the windows corresponding to the input values at regular intervals.

필터 연산의 상세한 계산 과정은 도 6과 같이 A부터 B까지 모든 장소에서 수행한다. 또한, 이미지에 합성곱 연산을 수행하기 전후에 패딩(padding) 연산을 수행한다. 패딩 연산의 목적은 처리되는 데이터의 사이즈와 입력 데이터의 사이즈가 서로 같은 값을 유지하고, 다수의 합성곱 연산으로 처리되는 데이터의 사이즈가 고정 사이즈(차원)가 되도록 설정하는 것이다.Detailed calculation of the filter operation is performed at every place from A to B as shown in FIG. In addition, a padding operation is performed before and after performing a composite product operation on the image. The purpose of the padding operation is to set the size of the data to be processed and the size of the input data to be the same, and to set the size of the data to be fixed size (dimension) processed by a plurality of composite product operations.

패딩 연산 방법은 두 가지가 있다. 첫 번째는 입력 데이터의 주변에 특정 값을 채운다. 두 번째는 처리되는 데이터의 주변에 특정 값을 채운다. 도 7의 좌측 도면에서와 같이 입력 데이터의 사이즈(3,3)에 폭 1짜리 패딩을 추가하여 데이터의 사이즈(5,5)가 되도록 할 수 있다. 실제 상황에서 1로 설정할 수 있고, 처리 데이터의 상황에 따라 원하는 정수로 설정할 수 있다. 도 7의 우측 도면에서와 같이 입력 데이터의 사이즈(3,3)에 폭 2짜리 패딩을 추가하여 데이터의 사이즈(7,7)가 되도록 할 수도 있다.There are two ways of calculating padding. The first fills a specific value around the input data. The second fills a certain value around the data being processed. As shown in the left figure of FIG. 7, one-width padding may be added to the size (3, 3) of the input data so that the data size (5, 5). It can be set to 1 in the actual situation and can be set to a desired integer according to the situation of the processing data. As shown in the right figure of FIG. 7, two-width padding may be added to the size (3, 3) of the input data so that the size (7, 7) of the data.

상기 풀링 계층부(120)의 목적은 입력 및 처리되는 데이터의 차원의 크기를 축소하기 위한 것이다. 즉 풀링 연산은 데이터에서 세로 및 가로 방향 공간의 크기를 줄이는 연산이다. 풀링 연산 방법은 다양한 형식(예: 평균, 중간 값, 최댓값, 최소값 등)이 있고, 본 발명의 실시예에서 많이 이용하는 풀링 방법은 최댓값 풀링 연산과 평균 풀링 연산이다. 도 8은 2 x 2 최댓값 풀링 연산을 이용하여 데이터의 차원 크기 축소 과정을 보여준다. 특히, 이미지 인식 분야에서는 주로 최댓값 풀링 연산(max polling)을 이용하여 이미지의 제한 영역에서 최댓값을 추출하고, 데이터의 잡음을 제거할 수 있다.The purpose of the pooling layer 120 is to reduce the size of the dimension of the data being input and processed. In other words, the pooling operation reduces the size of the vertical and horizontal spaces in the data. There are various types of pooling operations (eg, average, median, maximum, minimum, etc.), and the pooling methods commonly used in embodiments of the present invention are a maximum value pooling operation and an average pooling operation. 8 illustrates a process of reducing the size of data using a 2 × 2 maximum value pooling operation. In particular, in the field of image recognition, the maximum value may be extracted from the limited region of the image and the noise of the data may be removed using a maximum polling operation.

한편, 다차원 이미지 처리를 위해 합성곱/풀링 계층을 설계할 수 있다. 합성곱/풀링 계산은 1차원 이미지에 대해 처리할 수 있고, 다차원 이미지에 대해 효율적으로 처리하기 위한 특정 프레임워크를 설계한다. 이 프레임워크는 입력 다차원 이미지의 각 차원에 대해 병렬로 이미지와 합성곱/풀링 연산을 한 후, 다차원 이미지를 출력한다.Meanwhile, a composite product / pooling layer may be designed for multidimensional image processing. The composite product / pooling calculation can handle one-dimensional images and design a specific framework for efficiently processing multi-dimensional images. The framework performs a composite product / pooling operation on each dimension of the input multidimensional image in parallel and then outputs the multidimensional image.

도 9는 합성곱/풀링 프레임워크가 3차원 이미지를 처리하는 과정을 도시한 것이다. 이 처리 과정은 세 단계로 나뉜다. 첫 번째 단계에서는 3 차원 이미지의 각 차원 구조를 추출한다. 두 번째 단계에서는 이미지의 각 차원 구조에 대해 합성곱/풀링 작업을 수행한다. 세 번째 단계에서는 3차원 이미지의 상태를 회복한다. 특히 상기 합성곱/풀링 프레임워크는 다차원 이미지 데이터에 대해 병렬 처리할 수 있고, 메모리가 부담 없는 상태에서 적당한 다차원 이미지 데이터에 대해 합성곱/풀링 작업을 수행할 수 있다.9 illustrates a process of a multiplication / pooling framework processing a 3D image. This process is divided into three steps. In the first step, we extract each dimensional structure of a three-dimensional image. In the second step, we perform composite product / pooling on each dimensional structure of the image. In the third step, the state of the three-dimensional image is restored. In particular, the convolution product / pooling framework may perform parallel processing on multi-dimensional image data, and perform convolution product / pooling on appropriate multi-dimensional image data without burden of memory.

한편, 상기 활성화 계층부(115)는 상기 합성곱 계층부(110)의 출력 값에 대해 변환 작업을 수행한다. 활성화 함수는 종류에 따라 2가지가 있고, 하나는 선형 활성화 함수, 하나는 비선형 활성화 함수이다. 본 발명의 실시예에서는 주로 사용하는 함수는 비선형 활성화 함수이지만 제안 모델에 따라 선형 활성화 함수와 비선형 활성화 함수를 같이 사용할 수도 있다.On the other hand, the activation layer 115 performs a conversion operation on the output value of the composite product layer 110. There are two types of activation functions, one for linear activation and one for nonlinear activation. In the embodiment of the present invention, a function mainly used is a nonlinear activation function, but a linear activation function and a nonlinear activation function may be used together according to the proposed model.

비선형 활성화 함수의 계산 과정은 상기 합성곱 계층부(110)의 연산 결과값에 대해 설정한 최소값을 이용하여, 작은 값을 막고 최소값을 초과하여 급격히 큰 값을 출력하는 것이다. 본 발명의 일 실시예에서 주로 이용되는 비선형 활성화 함수는 시그모이드(Sigmoid), 쌍곡 탄젠트(Byperbolic tangent) 함수, ReLU(Rectified linear Unit) 함수이다.The calculation process of the nonlinear activation function uses a minimum value set for the operation result of the composite product hierarchy 110 to prevent a small value and to output a large value exceeding the minimum value. Non-linear activation functions mainly used in one embodiment of the present invention are sigmoid, hyperbolic tangent function, rectified linear unit (ReLU) function.

다만, 오차 역전파법에서 시그모이드 함수와 쌍곡 탄젠트 함수의 도함수는 입력 값이 커지면 경사가 0에 가까워서 딥 학습을 진행하지 않는다. 이상의 이유로 본 발명의 일 실시예에서는 ReLU 활성화 함수를 사용하는 것이 바람직하다. 특히 딥 러닝 학습에서 ReLU 함수는 다른 함수보다 학습 속도, 경사 계산 속도 및 병렬처리 속도가 빠르다.However, in the error backpropagation method, the derivatives of the sigmoid function and the hyperbolic tangent function do not proceed deep learning because the slope is close to 0 when the input value increases. For the above reason, it is preferable to use the ReLU activation function in one embodiment of the present invention. Especially in deep learning, ReLU function has faster learning speed, gradient calculation speed, and parallel processing speed than other functions.

다시 도 1을 참조하면, 상기 분류 출력 계층부(125)는 상기 풀링 계층부(120)의 출력 값을 이용한 전방향 연산을 통해 상기 입력 데이터에 대한 분류 예측 값(도 12의 "Y1, Y2, ..., Yn" 참조)을 출력할 수 있다.Referring back to FIG. 1, the classification output layer unit 125 performs a classification prediction value on the input data (“Y1, Y2, FIG. 12” through an omnidirectional operation using the output value of the pooling layer unit 120). ..., Yn ").

손실 계산 계층부(130)는 상기 분류 예측 값과 미리 정해진 목표 값(도 12의 "T1, T2, ..., Tn" 참조)을 비교하여 그 오차 값에 해당하는 손실 값을 산출할 수 있다. 즉, 상기 손실 계산 계층부(130)는 상기 분류 예측 값과 상기 목표 값의 차이를 손실 값으로서 산출할 수 있다.The loss calculation layer unit 130 may calculate the loss value corresponding to the error value by comparing the classification prediction value with a predetermined target value (see "T1, T2, ..., Tn" in FIG. 12). . That is, the loss calculating layer unit 130 may calculate a difference between the classification prediction value and the target value as a loss value.

상기 역방향 계산부(135)는 상기 손실 값에 대한 편 미분 값을 역방향 연산을 통해 계산하여 상기 각 계층부(110, 115, 120, 125, 130)의 매개 변수에 대한 수정 값을 획득할 수 있다.The reverse calculation unit 135 may obtain a correction value for the parameters of the hierarchical units 110, 115, 120, 125, and 130 by calculating a partial derivative value of the loss value through a reverse operation. .

구체적으로, 상기 역방향 계산부(135)는 상기 손실 계산 계층부(130)에서 상기 분류 출력 계층부(125) 방향으로 상기 분류 출력 계층부(125)의 제1 매개 변수에 대한 편 미분 값을 계산하고, 상기 분류 출력 계층부(125)에서 마지막의 은닉 계층(110, 115, 120) 방향으로의 제2 매개 변수에 대한 편 미분 값을 계산할 수 있다. 상기 역방향 계산부(135)는 상기 은닉 계층들(110, 115, 120) 사이의 제3 매개 변수에 대한 편 미분 값을 계산하여 상기 각 계층부(110, 115, 120, 125, 130)의 매개 변수(상기 제1 내지 제3 매개 변수)에 대한 수정 값을 획득할 수 있다.Specifically, the backward calculation unit 135 calculates a partial differential value for the first parameter of the classification output hierarchy 125 from the loss calculation hierarchy 130 toward the classification output hierarchy 125. The partial output value for the second parameter toward the last hidden layer 110, 115, 120 may be calculated by the classification output layer unit 125. The backward calculation unit 135 calculates a partial differential value for the third parameter between the hidden layers 110, 115, 120, and the parameters of the hierarchical units 110, 115, 120, 125, and 130. It is possible to obtain a correction value for the variable (the first to third parameters).

도 12는 도 1의 역방향 계산부(135)의 역방향 알고리즘의 계산 그래프를 개략적으로 보여준다. 도 12에서는 분류 문제에 대해 수행하는 신경망을 가정하여 이전 계층(합성곱/풀링 계층)으로부터의 입력 값은 A(An는 제 n계층의 입력 값이고, Wn는 제 n 계층의 매개 변수이며 An+1의 계산 결과는 WnAn를 개략적으로 표현한다)이며, 상기 분류 출력 계층(1210)(softmax 계층)의 출력 값은 Y(Y1, Y2, ..., Yn: Yn는 n번째 목표에 대해 예측한 값이다)를 출력한다. 특히 Y의 결과는 WnAn 형식이다. 또한 입력 값에 대한 정답 값(목표 값)은 T(T1, T2, ..., Tn)이며, 손실 계산 계층(1220)은 출력 값을 이용하여 손실 L을 출력한다. 손실 L은 수학식 1을 이용하여 계산한다. 역방향 계산은 손실 L에 대해 편 미분함으로써 학습 모델 각각 계층의 매개 변수 수정 값을 얻을 수 있다. 참고로, 상기 분류 출력 계층(1210)은 도 1의 분류 출력 계층부(125)에 대응하는 구성이고, 상기 손실 계산 계층(1220)은 도 1의 손실 계산 계층부(130)에 대응하는 구성이다.12 schematically illustrates a calculation graph of the backward algorithm of the backward calculation unit 135 of FIG. 1. In FIG. 12, assuming a neural network performing a classification problem, an input value from the previous layer (composite product / pooling layer) is A (An is an input value of the nth layer, Wn is a parameter of the nth layer, and An + The calculation result of 1 represents WnAn schematically, and the output value of the classification output layer 1210 (softmax layer) is Y (Y1, Y2, ..., Yn: Yn is estimated for the nth target. Value). In particular, the result of Y is of type WnAn. In addition, the correct value (target value) for the input value is T (T1, T2, ..., Tn), and the loss calculation layer 1220 outputs the loss L using the output value. Loss L is calculated using Equation 1. The inverse calculation is partial differentiation for the loss L to obtain the parameter correction value of each layer of the learning model. For reference, the classification output layer 1210 is a configuration corresponding to the classification output layer unit 125 of FIG. 1, and the loss calculation layer 1220 is a configuration corresponding to the loss calculation layer unit 130 of FIG. 1. .

[수학식 1][Equation 1]

Figure pat00001
Figure pat00001

상기 역방향 알고리즘은 세 단계로 나눌 수 있다. 첫 단계에서는 손실 계산 계층(1220)에서 분류 출력 계층(1210)으로 분류 출력 계층(1210)의 매개 변수에 대한 편 미분 값을 계산한다. 즉, 수학식 2를 이용하여 매개 변수의 수정 값을 계산할 수 있다.The reverse algorithm can be divided into three steps. In the first step, the partial differential values for the parameters of the classification output layer 1210 are calculated from the loss calculation layer 1220 to the classification output layer 1210. That is, the modified value of the parameter can be calculated using Equation 2.

[수학식 2][Equation 2]

Figure pat00002
Figure pat00002

두 번째 단계에서는 수학식 3을 이용하여 분류 출력 계층(1210)에서 마지막의 은닉층으로의 매개 변수에 대한 편 미분 값을 계산한다.In the second step, Equation 3 is used to calculate the partial differential value for the parameter from the classification output layer 1210 to the last hidden layer.

[수학식 3][Equation 3]

Figure pat00003
Figure pat00003

세 번째 단계에서는 수학식 4를 이용하여 은닉층들의 사이 매개 변수에 대한 편 미분 값을 계산한다.In the third step, Equation 4 is used to calculate partial differential values for the parameters between the hidden layers.

[수학식 4][Equation 4]

Figure pat00004
Figure pat00004

세부적인 역방향 계산 과정은 도 13 내지 도 15에 도시된 바와 같다. 즉, 도 13은 첫 번째 단계 손실 값에 대한 편 미분 계산 과정을 상세히 도시한 도면이고, 도 14는 두 번째 단계 은닉 계층의 매개 변수에 대한 편 미분 계산 과정을 상세히 도시한 도면이며, 도 15는 세 번째 단계 은닉 계층들의 매개 변수에 대한 편 미분 계산 과정을 상세히 도시한 도면이다.The detailed backward calculation process is shown in FIGS. 13 to 15. That is, FIG. 13 is a diagram illustrating in detail a partial differential calculation process for a first stage loss value, and FIG. 14 is a diagram illustrating in detail a partial differential calculation process for a parameter of a second stage hidden layer. The third step is a detailed illustration of the partial differential calculation process for the parameters of the hidden layers.

다시 도 1을 참조하면, 상기 분류 학습부(140)는 상기 수정 값, 및 일정량의 학습 데이터들을 통해 도출된 학습률을 이용한 경사 하강법(Gradient Descent Mothod)을 통하여 상기 매개 변수에 대한 업데이트를 수행할 수 있다.Referring back to FIG. 1, the classification learning unit 140 may perform an update on the parameter through a gradient descent method using the correction value and the learning rate derived through a certain amount of learning data. Can be.

역방향 계산은 편 미분 방법으로 학습 모델의 매개변수에 대한 수정 값을 계산할 수 있지만, 이 값의 의미는 매개 변수에 대한 단지 수정 방향만 제시한다. 그래서 이 값은 매개 변수에 대해 어느 정도를 수정할지 제시할 수 없다. 이 문제를 개선하기 위해, 상기 분류 학습부(140)는 경사 하강법을 이용하여 학습 모델의 매개 변수의 갱신 값을 계산할 수 있다.The backward calculation can calculate the correction value for the parameters of the learning model by the partial differential method, but the meaning of this value gives only the direction of the correction for the parameter. So this value cannot tell how much to modify the parameter. In order to improve this problem, the classification learning unit 140 may calculate the update value of the parameter of the learning model using the gradient descent method.

상기 경사 하강법의 프로세스는 일정량 학습 데이터들을 이용하여 계산된 수정 값과 학습률을 통하여 업데이트 매개 변수를 계산할 수 있다. 특히 상기 프로세스의 역방향 계산에서는 배치 방식을 이용하여 수정 값의 계산 과정을 수행한다. 자세한 프로세스 과정은 도 16과 같고, 상기 경사 하강법은 수학식 5를 이용하여 각 매개 변수에 대한 업데이트를 수행할 수 있다.The gradient descent process may calculate an update parameter based on a correction value and a learning rate calculated using predetermined amount of learning data. In particular, in the backward calculation of the process, the correction value is calculated using a batch method. A detailed process is as shown in FIG. 16, and the gradient descent method can update each parameter by using Equation 5.

[수학식 5][Equation 5]

Figure pat00005
Figure pat00005

또한, 상기 경사 하강법 중에서 주로 이용하는 배치 방식은 두 가지가 있는데, 하나는 한 개 학습 데이터를 이용하는 방식이고, 또 하나는 모든 학습 데이터를 이용하는 방식이다. 상기 경사 하강법은 이 두 가지 배치 방식을 모두 이용할 수 있지만, 메모리 부족 문제(모든 학습 데이터 배치 상태) 및 학습 시간이 오래 걸리는 문제를 고려하여 무작위로 소량의 학습 데이터를 이용할 수 있다(수학식 6 참조).In addition, there are two arrangement methods mainly used among the gradient descent methods, one method using one learning data, and another method using all learning data. The gradient descent can use both of these arrangements, but can randomly use a small amount of training data in consideration of insufficient memory problems (all training data placement states) and long learning times (Equation 6). Reference).

[수학식 6][Equation 6]

Figure pat00006
Figure pat00006

본 실시예에서 이용하는 학습 데이터의 수량은 2의 거듭제곱으로 설계한다. 즉, 1 횟수 학습 데이터의 수량은 64(26)~512(29)이고, 학습 데이터의 수량에 따라 더 높은 수량의 학습 데이터를 이용할 수 있다.The quantity of learning data used in this embodiment is designed with a power of two. That is, the quantity of learning data for one time is 64 (26) to 512 (29), and higher quantity of learning data can be used according to the quantity of learning data.

다시 도 1을 참조하면, 상기 인셉션 계층부(145)는 상기 합성곱 계층부(110)에 의해 출력된, 2개 이상의 특징 값에 대해 비선형 활성화 함수를 이용하여 병렬하여 연결 계산을 수행하고, 상기 병렬의 연결 계산 결과에 대해 합치 작업을 수행하여 다차원의 결과 값을 얻으며, 상기 다차원의 결과 값에 대해 커널 필터와 선형 활성화 함수를 이용하여 차원 변환 작업을 수행함으로써 상기 입력 데이터의 특징이 서로 조합된 새로운 특징 값을 추출할 수 있다.Referring back to FIG. 1, the inception layer unit 145 performs a connection calculation in parallel using a nonlinear activation function on two or more feature values output by the convolutional layer layer 110. The parallel connection calculation result is performed to obtain a multi-dimensional result value, and the feature of the input data is combined with each other by performing a dimensional transform operation using a kernel filter and a linear activation function on the multi-dimensional result value. New feature values can be extracted.

상기 스킵 연결 계층부(150)는 상기 입력 데이터에 대해 상기 인셉션 계층부(145) 및 상기 합성곱 계층부(110)를 통해 다차원 데이터를 생성하고, 상기 다차원 데이터의 차원 수와 일치하도록 상기 입력 데이터의 차원 수를 변환할 수 있다. 그리고, 상기 스킵 연결 계층부(150)는 상기 다차원 데이터와 상기 차원 수가 변환된 입력 데이터를 합치한 후 선형 활성화 함수를 이용하여 상기 입력 데이터의 특징 손실 문제를 억제할 수 있다.The skip connection layer unit 150 generates multidimensional data through the inception layer unit 145 and the convolutional layer layer unit 110 with respect to the input data, and matches the input to match the number of dimensions of the multidimensional data. You can convert the number of dimensions of data. The skip connection layer unit 150 may suppress the feature loss problem of the input data by using a linear activation function after combining the multi-dimensional data and the input data whose dimension number is converted.

도 10은 도 1의 인셉션 계층부(145)의 구조를 보여준다. 상기 인셉션 계층부(145)의 계산 과정은 3단계를 포함한다. 첫 단계(1010)에서는 2개 이상의 다른 사이즈 필터 합성곱 계층과 비선형 활성화 함수를 이용하여 입력 데이터에 대해 병행 방법으로 처리한다. 두 번째 단계(1020)에서는 첫 단계(1010)의 각 처리 결과에 대해 합치 작업(예: CONCAT 함수)을 수행하고 다차원 결과를 얻는다. 세 번째 단계(1030)에서는 두 번째 단계(1020)의 다차원 결과에 대해 차원 변환 작업(데이터의 차원 확대/축소)을 수행한다. 특히 상기 인셉션 계층부(145)는 계산 과정에 따라 다양한 사이즈 필터와 활성화 함수를 이용한다.FIG. 10 illustrates a structure of the inception layer unit 145 of FIG. 1. The calculation process of the inception layer unit 145 includes three steps. In the first step 1010, the input data is processed in parallel using two or more different size filter convolutional layers and a nonlinear activation function. In the second step 1020, a matching operation (eg, a CONCAT function) is performed on each processing result of the first step 1010, and a multidimensional result is obtained. In a third step 1030, a dimensional transformation operation (dimension zooming of data) is performed on the multidimensional result of the second step 1020. In particular, the inception layer unit 145 uses various size filters and activation functions according to the calculation process.

상기 인셉션 계층부(145)의 첫 번째 단계(1010) 계산 과정에서는 주로 1x1, 3x3 등의 사이즈 필터 비선형 활성화 함수를 이용하고, 세 번째 단계(1030) 계산 과정에서는 주로 1x1 사이즈 필터와 선형 활성화 함수를 이용한다. 또한 상기 인셉션 계층부(145)는 다른 사이즈 필터를 병행으로 입력 데이터의 다양한 특징들을 추출할 수 있고, 특징들이 서로 조합된 새로운 특징이 될 수 있다.In the first step 1010 of the inception layer unit 145, a size filter nonlinear activation function such as 1x1 and 3x3 is mainly used, and in the third step 1030, a 1x1 size filter and a linear activation function are mainly used. Use In addition, the inception layer unit 145 may extract various features of the input data in parallel with different size filters, and may be a new feature in which the features are combined with each other.

도 11은 도 1의 스킵 연결 계층부(150)의 구조를 보여준다. 상기 스킵 연결 계층부(150)의 계산 과정은 3단계를 포함한다. 첫 번째 단계(1110)에서는 입력 데이터에 대해 합성곱/풀링 계층 및 인셉션 계층을 이용하여 다차원 데이터를 생성한다. 두 번째 단계(1120)에서는 입력 데이터의 차원수에 대해 변환한다. 그러면 변환되는 차원수는 첫 번째 단계(1110)의 다차원 데이터의 차원수와 일치한다. 세 번째 단계(1130)에서는 첫 번째 단계(1110)의 결과와 두 번째 단계(1120)의 결과에 대해 합치(예: Add 작업) 작업을 수행한 후에 선형 활성화 함수를 이용하여 다차원 데이터를 출력한다.11 illustrates a structure of the skip connection layer unit 150 of FIG. 1. The calculation process of the skip connection layer unit 150 includes three steps. In a first step 1110, multidimensional data is generated using a composite product / pooling layer and an inception layer on input data. In the second step 1120, the number of dimensions of the input data is converted. The number of dimensions to be transformed then matches the number of dimensions of the multidimensional data of the first step 1110. In the third step 1130, after performing a matching operation (eg, an add operation) on the result of the first step 1110 and the result of the second step 1120, the multi-dimensional data is output using the linear activation function.

상기 스킵 연결 계층부(150)의 장점은 스킵 작업이다. 즉 상기 스킵 연결 계층부(150)는 스킵 프로세스를 가입하고, 제안 학습 모델의 딥(deep)에 따라 학습 데이터의 특징 손실 문제를 억제할 수 있다. 또한 상기 스킵 연결 계층부(150)는 상기 합성곱 계층부(110)뿐만 아니라 상기 인셉션 계층부(145)의 구조를 포함할 수 있다. 상술한 구조의 장점은 단순 딥 모델의 추출 방법보다 데이터에 대해 딥, 넓이(특징들이 서로 관계) 및 스킵 3가지 방법을 통하여 데이터의 다양한 특징을 추출하여 조합하고 최적으로 학습할 수 있는 것이다.An advantage of the skip connection layer unit 150 is a skip operation. That is, the skip connection layer unit 150 may join the skip process and suppress the problem of feature loss of the training data according to the deepness of the proposed learning model. In addition, the skip connection layer unit 150 may include a structure of the inception layer unit 145 as well as the composite product layer unit 110. The advantage of the above-described structure is that it is possible to extract, combine and optimally learn various features of the data through three methods such as dip, width (features are related to each other), and skip over the data, rather than a simple dip model extraction method.

다시 도 1을 참조하면, 상기 매개 변수 초기값 설계부(155)는 상기 각 계층부(110, 115, 120, 125, 130)의 매개 변수의 수량을 이용하여 계산된 표본 표준 편차를 기반으로 He 초기값 알고리즘을 설계하고, 상기 He 초기값 알고리즘을 기반으로 상기 매개 변수의 초기화 작업을 수행할 수 있다.Referring back to FIG. 1, the parameter initial value design unit 155 may initialize the He based on the sample standard deviation calculated using the quantity of the parameters of the hierarchical units 110, 115, 120, 125, and 130. A value algorithm can be designed and initialization of the parameter can be performed based on the He initial value algorithm.

상기 역방향 계산부(135)의 역방향 알고리즘 및 상기 분류 학습부(140)의 경사 하강법을 통해 학습 시스템을 학습시킬 때, 학습 시스템의 매개 변수에 대한 초기값 설정 방법은 주로 무작위 초기값 방법을 이용하여 범용 성능을 높을 수 있지만 매개 변수 손실과 표현력 제한 문제에 대해 처리할 수 없다When the learning system is trained through the backward algorithm of the backward calculation unit 135 and the gradient descent method of the classification learning unit 140, an initial value setting method for a parameter of the learning system mainly uses a random initial value method. Can increase general-purpose performance, but cannot deal with parameter loss and expressiveness issues

매개 변수 손실 및 표현력 제한 문제를 억제하기 위하여, 학습 시스템은 매개 변수 집중적인 분포(concentrated distribution) 매핑보다 균등 분포(uniform distribution) 매핑을 추구한다. 학습 시스템의 매개변수 균등 분포 매핑을 설정하기 제안 학습 모델은 위하여 He 초기값 알고리즘기반으로 매개 변수 초기화 작업을 수행한다. He 초기값 방법은 수학식 7을 기반으로 설계한다. 수학식 7에서 stddev는 표본 표준 편차를 나타내고, dpper_size는 학습 모델 각 계층의 매개 변수의 수량을 나타낸다.In order to suppress the parameter loss and expressive power limitation problem, the learning system seeks a uniform distribution mapping rather than a parameter concentrated distribution mapping. Establishing Parameter Equal Distribution Mapping for Learning System The proposed learning model performs parameter initialization based on He initial value algorithm. He initial value method is designed based on Equation 7. In Equation 7, stddev represents a sample standard deviation and dpper_size represents a quantity of parameters of each layer of the learning model.

[수학식 7][Equation 7]

Figure pat00007
Figure pat00007

He 초기값을 이용할 때 층이 깊어져도 매개 변수 분포가 균일하게 유지하여 9층 이상 학습 모델에서 매개변수 값의 분포가 균일하게 유지하고, 매개수 손실의 문제를 억제한다.When the initial value of He is used, the parameter distribution remains uniform even when the layer is deepened. Thus, the parameter value is uniformly maintained in the learning model of nine or more layers, and the problem of parameter loss is suppressed.

다시 도 1을 참조하면, 상기 미니 배치 정규화 설계부(160)는 상기 입력 데이터 각각에 대해 미니 배치의 형태로 구현하고, 상기 미니 배치의 평균 값을 계산할 수 있다. 그리고, 상기 미니 배치 정규화 설계부(160)는 상기 미니 배치의 평균 값을 이용하여 상기 미니 배치의 분산 값을 계산하고, 상기 미니 배치의 각 입력 값에 대해 상기 미니 배치의 평균 값 및 분산 값을 이용하여 정규화 미니 배치의 각 값을 구할 수 있다.Referring back to FIG. 1, the mini batch normalization design unit 160 may implement a mini batch for each of the input data and calculate an average value of the mini batch. The mini batch normalization design unit 160 calculates a variance value of the mini batch by using the average value of the mini batch, and uses the average value and the variance value of the mini batch for each input value of the mini batch. Each value of the normalized mini batch can be obtained.

여기서, 상기 정규화 미니 배치의 각 값은 상기 합성곱 계층부(110)에서 상기 입력 데이터로서 이용될 수 있다.Here, each value of the normalized mini-batch may be used as the input data in the composite product hierarchy 110.

매개 변수 손실 등 문제에 대해 He 초기값을 이용하여 학습 모델의 매개 변수 손실 문제를 억제할 수 있지만, 학습 모델의 딥에 따라 학습 할 때 오버 피팅 문제가 있다. 이 문제를 보완하기 위하여 상기 미니 배치 정규화 설계부(160)는 데이터 미니 배치 정규화 알고리즘을 사용한다. 데이터 미니 배치 정규화의 장점은 오버 피팅 문제를 억제할 수 있을 뿐만 아니라 빠른 학습을 진행할 수 있다는 것이다.We can suppress the parameter loss problem of the learning model by using the He initial value for problems such as parameter loss, but there is an overfit problem when learning according to the learning model dip. To compensate for this problem, the mini batch normalization design unit 160 uses a data mini batch normalization algorithm. The advantage of data mini-batch normalization is that it not only suppresses the overfitting problem but also speeds up learning.

미니 배치 정규화는 입력 데이터에 대한 분포가 평균 0, 분산 1으로 정규화 값을 계산하는 과정이다. 구체적으로 계산 과정은 수학식 8에서와 같이 3단계로 구성된다. 수학식 8을 참조하여 설명하면, 첫 단계에서는 n개 입력 데이터에 대해 미니 배치(x1, x2, ..., xn) 형태로 구현하고 이 미니 배치의 평균 값(M)을 계산한다. 두 번째 단계에서는 미니 배치의 분산 값(D)을 계산한다. 마지막 단계에서는 미니 배치의 각 입력 값에 대해 평균 값(M)및 분산 값(D)을 이용하여 정규화 미니 배치의 각 값(X1, X2, ..., Xn)을 구한다. 수학식 8에서 K는 작은 0으로 나누는 사태를 예방하기 위해 0이 아닌 작은 값으로 정의한다.Mini-batch normalization is the process of calculating the normalized value with the average of 0 and variance 1 of the input data. Specifically, the calculation process consists of three steps as shown in Equation (8). Referring to Equation 8, the first step is implemented in the form of mini-batches (x1, x2, ..., xn) for the n input data and calculates the average value (M) of the mini-batches. In the second step, the variance value (D) of the mini batch is calculated. The final step is to find each value (X1, X2, ..., Xn) of the normalized mini-batch using the mean value (M) and the variance value (D) for each input value in the mini-batch. In Equation 8, K is defined as a small value other than zero to prevent a situation of dividing by a small zero.

[수학식 8][Equation 8]

Figure pat00008
Figure pat00008

도 17은 미니 배치 정규화를 이용하여 학습하는 과정의 흐름도이다.17 is a flowchart of a process of learning using mini-batch normalization.

도 17을 참조하면, 단계(1710)에서 입력 데이터에 대한 입력값이 입력되고, 단계(1720)에서 합성곱/풀링 계층 연산을 수행하여 상기 입력값에 대한 특징 값을 추출하여 출력한다. 다음으로, 단계(1730)에서 데이터 미니 배치 정규화를 수행하고, 단계(1740)에서 활성화 계층 연산을 수행하고, 단계(1760)에서 활성화 계층 연산의 결과를 출력값으로 출력한다. 한편, 단계(1750)에서 활성화 계층 연산의 결과에 대해 경사 하강법을 수행하여 매개 변수를 수정하고, 그 수정 값을 단계(1720)의 합성곱/풀링 계층으로 전달한다.Referring to FIG. 17, in operation 1710, an input value for input data is input, and in operation 1720, a composite product / pooling layer operation is performed to extract and output a feature value for the input value. Next, in step 1730, data mini-batch normalization is performed, in step 1740, an activation layer operation is performed, and in step 1760, the result of the activation layer operation is output as an output value. On the other hand, in step 1750, the gradient descent method is performed on the result of the activation layer operation to correct the parameter, and the correction value is transferred to the composite product / pooling layer of step 1720.

다시 도 1을 참조하면, 상기 경사 하강법 최적화 설계부(165)는 상기 매개 변수의 모멘텀을 계산하고, 상기 매개 변수의 미분 값을 이용하여 상기 학습률의 수정 값을 계산하며, 상기 모멘텀 및 상기 학습률의 수정 값을 이용하여 상기 매개 변수의 수정 작업을 수행할 수 있다.Referring back to FIG. 1, the gradient descent optimization design unit 165 calculates the momentum of the parameter, calculates a correction value of the learning rate using the derivative value of the parameter, and calculates the momentum and the learning rate. The correction value may be used to modify the parameter.

경사 하강법의 계산 과정은 구현 및 설계하는 것이 쉽지만, 이 계산 과정은 비효율적인 문제점을 갖고 있다. 이 비효율적 문제점을 개선하기 위하여, 상기 경사 하강법 최적화 설계부(165)는 Adam 알고리즘 기반으로 개량형 경사 하강법을 설계한다. Adam 알고리즘의 중심 아이디어는 경사 하강법을 기반으로 두 방법에 대해 조절하는 것이다. 첫 번째 방법은 모멘텀을 추가하는 것이다. 즉 매번 학습에 무작위의 모멘텀을 이용하여 매개 변수 값을 가속으로 계산할 수 있다. 두 번째 방법은 학습률을 조절하는 것이다. 즉 매번 학습에 매개 변수의 하강 값과 모멘텀을 이용하여 학습률 값을 계산한다.The calculation process of the gradient descent method is easy to implement and design, but this calculation process has an inefficient problem. In order to improve this inefficient problem, the gradient descent optimization design unit 165 designs an improved gradient descent method based on the Adam algorithm. The central idea of the Adam algorithm is to adjust for both methods based on the gradient descent method. The first way is to add momentum. In other words, the parameter value can be calculated by acceleration using random momentum each time. The second method is to adjust the learning rate. That is, the learning rate value is calculated by using the falling value of the parameter and the momentum each time.

이와 같은 개량형 경사 하강법은 Adam 기반으로 수학식 9를 이용하여 효율적 가중치를 계산하는 과정을 통해 구하는 것으로서, 세 단계를 포함할 수 있다. 첫 단계에서는 매개 변수의 모멘텀(수학식 9의 M 변수)을 계산한다. 두 번째 단계에서는 매개 변수의 미분 값을 이용하여 이번 학습 학습률의 수정 값(수학식 9의 V 변수)을 계산한다. 마지막 단계에서는 모멘텀과 학습률의 수정 값을 이용하여 학습 모델의 매개 변수 수정 작업을 수행한다. 수학식 9에서는 학습률의 수정 값(V 변수)을 0으로 나누는 것을 예방하기 위하여 이 값에 대해 작은 값(K 변수)을 추가한다.The improved gradient descent method is obtained through a process of calculating an effective weight using Equation 9 on the basis of Adam, and may include three steps. In the first step, we calculate the momentum of the parameter (M variable in Equation 9). In the second step, the derivative value of the parameter is used to calculate the modified value of the learning rate (V variable in Equation 9). In the final step, the parameters of the learning model are modified using the modified values of momentum and learning rate. In Equation 9, a small value (K variable) is added to this value to prevent dividing the modified value of the learning rate (V variable) by zero.

[수학식 9][Equation 9]

Figure pat00009
Figure pat00009

도 18은 개량형 경사 하강법을 이용하여 학습하는 과정의 흐름도이다.18 is a flowchart of a process of learning using the improved gradient descent method.

도 18을 참조하면, 단계(1810)에서 입력 데이터에 대한 입력값이 입력되고, 단계(1820)에서 합성곱/풀링 계층 연산을 수행하여 상기 입력값에 대한 특징 값을 추출하여 출력한다. 다음으로, 단계(1830)에서 데이터 미니 배치 정규화를 수행하고, 단계(1840)에서 활성화 계층 연산을 수행하고, 단계(1860)에서 활성화 계층 연산의 결과를 출력값으로 출력한다. 한편, 단계(1850)에서 활성화 계층 연산의 결과에 대해 경사 하강법을 수행하여 매개 변수를 수정하는데, 이때 단계(1860)에서 경사 하강법을 개선하여 모멘텀과 학습률 조절을 통해 매개 변수를 수정하는 개선(개량형) 경사 하강법을 수행하며, 상기 개선 경사 하강법의 수행에 의한 매개 변수의 수정 값을 단계(1820)의 합성곱/풀링 계층으로 전달한다. 이와 같이 본 발명의 일 실시예에 따르면 상기 개선 경사 하강법을 이용하여 가속 학습을 수행할 수 있고 제한 시간에 상대적으로 최적의 매개 변수를 계산할 수 있다.Referring to FIG. 18, in operation 1810, an input value for input data is input, and in operation 1820, a composite product / pooling layer operation is performed to extract and output a feature value for the input value. Next, in step 1830, data mini-batch normalization is performed, in step 1840, an activation layer operation is performed, and in step 1860, the result of the activation layer operation is output as an output value. Meanwhile, in step 1850, the parameter is modified by performing the gradient descent method on the result of the activation layer operation. In this case, the parameter is modified by adjusting the momentum and the learning rate by improving the gradient descent method in step 1860. A (improved) gradient descent method is performed, and the correction value of the parameter by performing the improved gradient descent method is transferred to the composite product / pooling layer of step 1820. As described above, according to the exemplary embodiment of the present invention, acceleration learning may be performed using the improved gradient descent method, and an optimal parameter may be calculated relatively to the time limit.

다시 도 1을 참조하면, 상기 제어부(170)는 본 발명의 일 실시예에 따른 합성곱 신경망 기반 이미지 처리 시스템(100), 즉 상기 합성곱 계층부(110), 상기 활성화 계층부(115), 상기 풀링 계층부(120), 상기 분류 출력 계층부(125), 상기 손실 계산 계층부(130), 상기 역방향 계산부(135), 상기 분류 학습부(140), 상기 인셉션 계층부(145), 상기 스킵 연결 계층부(150), 상기 매개 변수 초기값 설계부(155), 상기 미니 배치 정규화 설계부(160), 상기 경사 하강법 최적화 설계부(165) 등의 동작을 전반적으로 제어할 수 있다.Referring back to FIG. 1, the controller 170 is a composite product neural network based image processing system 100 according to an embodiment of the present invention, that is, the composite product layer unit 110, the activation layer unit 115, The pooling layer unit 120, the classification output layer unit 125, the loss calculation layer unit 130, the reverse calculation unit 135, the classification learning unit 140, the inception layer unit 145 The overall operations of the skip connection layer unit 150, the parameter initial value design unit 155, the mini batch normalization design unit 160, and the gradient descent optimization design unit 165 may be controlled.

시스템 구현System implementation

본 발명의 일 실시예에 따른 3x3 커널의 이미지 처리 결과는 도 19와 같다. 도 19의 오른쪽 부분은 배경을 분리하고 물체의 특징을 추출한 결과를 보여준다.An image processing result of the 3x3 kernel according to an embodiment of the present invention is shown in FIG. 19. The right part of FIG. 19 shows the result of separating the background and extracting the features of the object.

도 20은 다른 사이즈의 커널을 이용한 이미지 처리 효과를 보여준다. 작은 사이즈의 커널은 많은 특징을 추출할 수 있지만 수행 속도 저하 문제를 있다. 이에 반해 큰 사이즈의 커널은 특징을 추출함으로써 수행 속도가 빠르게 나타난다. 특징 추출의 수량 및 수행 효율 등의 문제를 종합적으로 고려하기 위해 제안한 시스템에서는 1x1, 3x3, 5x5및 7x7 사이즈 커널을 이용하여 합성곱 계층을 구현한다.20 shows the effect of image processing using kernels of different sizes. Smaller kernels can extract a lot of features but have a slow performance problem. In contrast, large kernels perform faster by extracting features. In order to comprehensively consider the problems such as the quantity and performance efficiency of feature extraction, the proposed system implements a composite product layer using 1x1, 3x3, 5x5, and 7x7 kernels.

1차원 처리는 1차원 컨볼루션(One-Dimensional Convolution) 방법을 기반으로 구현한다. 제안한 방법의 처리 과정은 1xN 및 Nx1(N = 1, 2, 3, 4...) 형식의 1차원 커널을 이용하여 이미지 처리 작업을 수행한다.One-dimensional processing is implemented based on the One-Dimensional Convolution method. In the proposed method, image processing is performed by using 1-dimensional kernel of 1xN and Nx1 (N = 1, 2, 3, 4 ...) format.

도 21은 1차원 커널을 이용하여 이미지를 처리한 결과를 보여준다. 제안한 시스템에서 1차원 커널을 이용한 이유는 하드웨어 및 메모리 제한 상황에 따라 부담이 없고 이미지의 특징을 정확하게 추출할 수 있으며 하드웨어 및 메모리 제한이 없는 상황에 따라 빠르게 계산할 수 있기 때문이다. 이와 같이 계산하는 플랫폼의 성능에 따라 커널의 형식에 대해 고려할 수 있다. 제안한 시스템에서는 주로 1x3, 3x1, 1x7 및 7x1 사이즈의 1차원 커널을 이용한다.21 shows a result of processing an image using a one-dimensional kernel. The reason for using the 1-D kernel in the proposed system is that it is not burdened by the hardware and memory limitations and can accurately extract the features of the image, and it can be quickly calculated according to the hardware and memory limitations. Depending on the performance of the platform you compute in this way, you can consider the format of the kernel. The proposed system mainly uses 1x3, 3x1, 1x7 and 7x1 sized one-dimensional kernels.

결합 처리는 2차원 및 1차원 커널 결합 방식으로 구현한다. 제안한 결합 처리 방법을 구현하기 위해 두 가지 단계로 나눈다. 첫 번째 단계에서는 2차원 및 1차원 커널을 이용하여 다양한 이미지 처리 결과를 출력하며, 두 번째 단계에서는 첫 번째 단계의 결과들을 하나의 결과로 연결한다. 3x3과 4x4 커널에 제안한 결합 처리 방법을 이용한 이미지 테스트 처리 결과는 도 22와 같다. 또한 제안한 결합 처리를 구현할 때 이미지 특징에 대해 다각도(커널 사이즈 등)로 추출하기 위해 3~4개의 다른 사이즈 커널을 이용한다. 도 23은 3개 및 4개의 커널을 이용하여 이미지를 처리한 결과를 보여준다.The joining process is implemented in two-dimensional and one-dimensional kernel combining methods. In order to implement the proposed join processing method, it is divided into two steps. In the first step, various image processing results are output by using two-dimensional and one-dimensional kernels. In the second step, the results of the first step are concatenated into one result. The image test processing result using the combination processing method proposed in the 3x3 and 4x4 kernels is shown in FIG. 22. In addition, when implementing the proposed combining process, we use 3-4 different size kernels to extract the image features in multiple angles (kernel size, etc.). Figure 23 shows the results of processing the image using three and four kernels.

스킵 처리는 2, 1차원 커널을 이용하여 부분 순환 방법으로 구현한다. 제안 스킵 처리를 구현하기 위해 세 가지 단계를 포함한다. 첫 번째 단계에서는 2, 1차원 커널을 이용하여 이미지 처리 작업을 수행하고, 두 번째 단계에서는 원본 이미지에 대해 1x1 커널 이용하여 첫 번째 단계 결과의 차원수와 같은 차원수로 조절한다. 마지막 단계에서는 첫 번째 단계 및 두 번째 단계의 결과에 대해 합치 작업을 수행한다. 도 24는 제안한 스킵 처리 방법을 이용한 이미지 처리 결과이다.Skip processing is implemented in a partial recursion method using a two- and one-dimensional kernel. Three steps are included to implement the proposed skip process. In the first step, image processing is performed using two- and one-dimensional kernels. In the second step, the original image is adjusted to the same number of dimensions as the result of the first step by using a 1x1 kernel. In the final step, the results of the first and second steps are matched. 24 shows image processing results using the proposed skip processing method.

복합성 처리는 결합과 스킵 처리 방식을 복합하여 구현한다. 이러한 구현 과정은 두 가지 단계를 포함한다. 첫 번째 단계에서는 스킵 처리 구조를 구현하고, 두 번째 단계에서는 결합 처리 구조를 구현하여 첫 번째 단계의 스킵 처리 구조에 포함시킨다. 또한 제안한 복합성 처리 과정에서는 차원 불일치 및 축소 등의 문제를 해결하기 위해 각 단계마다 차원수 조정 및 패딩 프로세스를 수행한다. 도 25는 제안한 복합성 처리 방법을 이용한 이미지 처리 결과를 보여준다.Complexity processing is implemented by combining combining and skip processing. This implementation process involves two steps. In the first step, the skip processing structure is implemented. In the second step, the join processing structure is implemented and included in the skip processing structure of the first step. In addition, in the proposed complexity process, dimension adjustment and padding processes are performed at each step to solve problems such as dimension mismatch and reduction. 25 shows an image processing result using the proposed complexity processing method.

제안한 폴링 계층의 기능은 합성곱 계층에서 추출된 특징에 대해 최적화 프로세스를 수행하고 입력된 특징 값에 대해 축소 작업을 수행한다. 이 중에서 최적화 프로세스 및 축소 작업을 구현하기 위해 두 가지 방법을 이용한다. 첫 번째 방법은 최댓값 계산 방법을 통하여 구현하며 두 번째 방법은 평균 계산 방법을 이용하여 구현한다. 또한 이미지의 경계 패딩(padding) 문제를 해결하기 위해 필러 기능(Filler Function)을 추가한다. 도 26의 왼쪽 부분은 합성곱 계층을 이용한 처리 결과이다. 해당 결과에 대해 폴링 계층을 이용하여 처리된 결과는 도 26의 오른쪽 부분과 같이 축소된 이미지를 보여주고 물체의 세부적인 특징을 정확하게 나타낸다.The proposed polling layer performs an optimization process on the features extracted from the convolutional product layer and reduces the input feature values. Among these, two methods are used to implement the optimization process and the reduction work. The first method is implemented using the maximum value calculation method, and the second method is implemented using the average calculation method. It also adds a filler function to solve the problem of padding of images. The left part of FIG. 26 shows the processing result using the composite product layer. The result processed using the polling layer for the result shows a reduced image as shown in the right part of FIG. 26 and accurately represents the detailed characteristics of the object.

도 27은 폴링 계층을 이용하여 이미지를 처리한 결과로서, 도 27의 왼쪽 그림은 최댓값 계산 폴링 계층을 이용하여 처리되는 결과이고, 오른쪽 그림은 평균 계산 폴링 계층을 통해 처리되는 결과를 나타낸다. 두 결과를 비교했을 때 평균 계산 폴링 계층보다 최댓값 계산 폴링 계층은 물체의 윤곽 등의 특징을 추출할 수 있다. 제안한 시스템에서는 최댓값 계산 폴링 계층을 이용한다.FIG. 27 is a result of processing an image using a polling layer. The left figure of FIG. 27 is a result processed using a maximum value calculated polling layer, and a right figure shows a result processed through an average calculated polling layer. When comparing the two results, the maximum computation polling layer may extract features such as an outline of an object rather than the average computation polling layer. The proposed system uses the maximum computation polling layer.

제안한 활성화 함수 계층은 활성화 함수 알고리즘을 기반으로 구현한다. 이미지 인식 분야 학습 모델에서는 ReLU기반 알고리즘을 이용하여 구현한다.The proposed activation function hierarchy is implemented based on the activation function algorithm. In the image recognition field learning model, we implement it using ReLU-based algorithm.

도 28은 합성곱/활성화/폴링 계층 방법을 통한 이미지 처리 테스트 결과를 보여준다. 테스트 결과를 통해 물체 대부분의 특징을 정확하게 추출된 것을 확인할 수 있다. 또한 물체의 특징을 포함하지 않은 부분은 배경과 같이 사라진다.Figure 28 shows the results of the image processing test through the composite product / activation / polling layer method. The test results confirm that the features of most of the objects have been extracted accurately. Also, the part that does not contain the feature of the object disappears like the background.

도 29는 제안하는 성능 개선 프로세스를 이용하여 합성곱/활성화의 수량 성장(3, 5, 8)에 따라 이미지 처리 결과를 보여주고, 도 30은 제안하는 성능 개선 프로세스를 이용하지 않은 이미지 처리 결과를 보여준다. 도 29와 같이, 제안하는 성능 개선 프로세스를 적용한 시스템에서는 학습 모델의 답에 따라 이미지 대부분의 특징을 기존 시스템보다 정확히 추출할 수 있다. 반면, 도 30과 같이 제안하는 성능 개선 프로세스를 이용하지 않은 상황은 합성곱/활성화의 수량 성장에 따라 이미지의 특징이 다수 손실되는 단점을 보여준다.FIG. 29 shows image processing results according to the quantity growth (3, 5, 8) of the composite product / activation using the proposed performance improvement process, and FIG. 30 shows the image processing results without using the proposed performance improvement process. Shows. As shown in FIG. 29, in the system to which the proposed performance improvement process is applied, most features of the image can be extracted more accurately than the existing system according to the answer of the learning model. On the other hand, the situation that does not use the proposed performance improvement process as shown in Figure 30 shows the disadvantage that a number of features of the image is lost as the quantity growth of the composite product / activation.

도 31은 제안하는 성능 개선 작업을 이용하여 구현되는 시스템(딥 러닝 6계층)의 학습 과정을 보여준다(accuracy: 정확도, epoch: 학습 횟수/테스트 횟수, train: 학습 과정의 정확도, test: 테스트 과정의 정확도). 도 32는 제안하는 성능 개선 프로세스를 이용하지 않은 시스템의 학습 과정을 보여준다. 두 학습 과정을 서로 비교하면, 제안하는 성능 개선 프로세스를 이용하는 시스템이 정확도, 오버 피팅(overfitting) 및 신속한 수렴 등의 다방면에서 좋은 결과를 얻을 수 있음을 알 수 있다.FIG. 31 shows the learning process of the system (6 levels of deep learning) implemented using the proposed performance improvement task (accuracy: accuracy, epoch: learning count / test count, train: accuracy of learning process, test: testing process (Figure Accuracy) Figure 32 shows the learning process of a system that does not use the proposed performance improvement process, comparing the two learning processes, the accuracy, overfitting and rapid convergence of the system using the proposed performance improvement process, etc. It can be seen that good results can be obtained in various ways.

이상에서 설명된 장치는 하드웨어 구성 요소, 소프트웨어 구성 요소, 및/또는 하드웨어 구성 요소 및 소프트웨어 구성 요소의 조합으로 구현될 수 있다. 예를 들어, 실시예들에서 설명된 장치 및 구성 요소는, 예를 들어, 프로세서, 컨트롤러, ALU(arithmetic logic unit), 디지털 신호 프로세서(digital signal processor), 마이크로컴퓨터, FPA(field programmable array), PLU(programmable logic unit), 마이크로프로세서, 또는 명령(instruction)을 실행하고 응답할 수 있는 다른 어떠한 장치와 같이, 하나 이상의 범용 컴퓨터 또는 특수 목적 컴퓨터를 이용하여 구현될 수 있다. 처리 장치는 운영 체제(OS) 및 상기 운영 체제 상에서 수행되는 하나 이상의 소프트웨어 애플리케이션을 수행할 수 있다. 또한, 처리 장치는 소프트웨어의 실행에 응답하여, 데이터를 접근, 저장, 조작, 처리 및 생성할 수도 있다. 이해의 편의를 위하여, 처리 장치는 하나가 사용되는 것으로 설명된 경우도 있지만, 해당 기술분야에서 통상의 지식을 가진 자는, 처리 장치가 복수 개의 처리 요소(processing element) 및/또는 복수 유형의 처리 요소를 포함할 수 있음을 알 수 있다. 예를 들어, 처리 장치는 복수 개의 프로세서 또는 하나의 프로세서 및 하나의 컨트롤러를 포함할 수 있다. 또한, 병렬 프로세서(parallel processor)와 같은, 다른 처리 구성(processing configuration)도 가능하다.The apparatus described above may be implemented as a hardware component, a software component, and / or a combination of hardware components and software components. For example, the apparatus and components described in the embodiments may include, for example, a processor, a controller, an arithmetic logic unit (ALU), a digital signal processor, a microcomputer, a field programmable array (FPA), It may be implemented using one or more general purpose or special purpose computers, such as a programmable logic unit (PLU), microprocessor, or any other device capable of executing and responding to instructions. The processing device may execute an operating system (OS) and one or more software applications running on the operating system. The processing device may also access, store, manipulate, process, and generate data in response to the execution of the software. For the convenience of understanding, a processing device may be described as one being used, but a person skilled in the art will appreciate that the processing device includes a plurality of processing elements and / or a plurality of types of processing elements. It can be seen that it may include. For example, the processing device may include a plurality of processors or one processor and one controller. In addition, other processing configurations are possible, such as parallel processors.

소프트웨어는 컴퓨터 프로그램(computer program), 코드(code), 명령(instruction), 또는 이들 중 하나 이상의 조합을 포함할 수 있으며, 원하는 대로 동작하도록 처리 장치를 구성하거나 독립적으로 또는 결합적으로(collectively) 처리 장치를 명령할 수 있다. 소프트웨어 및/또는 데이터는, 처리 장치에 의하여 해석되거나 처리 장치에 명령 또는 데이터를 제공하기 위하여, 어떤 유형의 기계, 구성요소(component), 물리적 장치, 가상 장치(virtual equipment), 컴퓨터 저장 매체 또는 장치, 또는 전송되는 신호 파(signal wave)에 영구적으로, 또는 일시적으로 구체화(embody)될 수 있다. 소프트웨어는 네트워크로 연결된 컴퓨터 시스템 상에 분산되어서, 분산된 방법으로 저장되거나 실행될 수도 있다. 소프트웨어 및 데이터는 하나 이상의 컴퓨터 판독 가능 기록 매체에 저장될 수 있다.The software may include a computer program, code, instructions, or a combination of one or more of the above, and configure the processing device to operate as desired, or process independently or collectively. You can command the device. Software and / or data may be any type of machine, component, physical device, virtual equipment, computer storage medium or device in order to be interpreted by or to provide instructions or data to the processing device. Or may be permanently or temporarily embodied in a signal wave to be transmitted. The software may be distributed over networked computer systems so that they are stored or executed in a distributed manner. Software and data may be stored on one or more computer readable recording media.

실시예에 따른 방법은 다양한 컴퓨터 수단을 통하여 수행될 수 있는 프로그램 명령 형태로 구현되어 컴퓨터 판독 가능 매체에 기록될 수 있다. 상기 컴퓨터 판독 가능 매체는 프로그램 명령, 데이터 파일, 데이터 구조 등을 단독으로 또는 조합하여 포함할 수 있다. 상기 매체에 기록되는 프로그램 명령은 실시예를 위하여 특별히 설계되고 구성된 것들이거나 컴퓨터 소프트웨어 당업자에게 공지되어 사용 가능한 것일 수도 있다. 컴퓨터 판독 가능 기록 매체의 예에는 하드 디스크, 플로피 디스크 및 자기 테이프와 같은 자기 매체(magnetic media), CDROM, DVD와 같은 광기록 매체(optical media), 플롭티컬 디스크(floptical disk)와 같은 자기-광 매체(magneto-optical media), 및 롬(ROM), 램(RAM), 플래시 메모리 등과 같은 프로그램 명령을 저장하고 수행하도록 특별히 구성된 하드웨어 장치가 포함된다. 프로그램 명령의 예에는 컴파일러에 의해 만들어지는 것과 같은 기계어 코드뿐만 아니라 인터프리터 등을 사용해서 컴퓨터에 의해서 실행될 수 있는 고급 언어 코드를 포함한다. 상기된 하드웨어 장치는 실시예의 동작을 수행하기 위해 하나 이상의 소프트웨어 모듈로서 작동하도록 구성될 수 있으며, 그 역도 마찬가지이다.Method according to the embodiment is implemented in the form of program instructions that can be executed by various computer means may be recorded on a computer readable medium. The computer readable medium may include program instructions, data files, data structures, and the like, alone or in combination. The program instructions recorded on the media may be those specially designed and constructed for the purposes of the embodiments, or they may be of the kind well-known and available to those having skill in the computer software arts. Examples of computer-readable recording media include magnetic media such as hard disks, floppy disks, and magnetic tape, optical media such as CDROMs, DVDs, and magnetic-optical such as floppy disks. Media, and hardware devices specifically configured to store and execute program instructions, such as ROM, RAM, flash memory, and the like. Examples of program instructions include machine code, such as produced by a compiler, as well as high-level language code that can be executed by a computer using an interpreter or the like. The hardware device described above may be configured to operate as one or more software modules to perform the operations of the embodiments, and vice versa.

이상과 같이 실시예들이 비록 한정된 실시예와 도면에 의해 설명되었으나, 해당 기술분야에서 통상의 지식을 가진 자라면 상기의 기재로부터 다양한 수정 및 변형이 가능하다. 예를 들어, 설명된 기술들이 설명된 방법과 다른 순서로 수행되거나, 및/또는 설명된 시스템, 구조, 장치, 회로 등의 구성요소들이 설명된 방법과 다른 형태로 결합 또는 조합되거나, 다른 구성요소 또는 균등물에 의하여 대치되거나 치환되더라도 적절한 결과가 달성될 수 있다.Although the embodiments have been described by the limited embodiments and the drawings as described above, various modifications and variations are possible to those skilled in the art from the above description. For example, the described techniques may be performed in a different order than the described method, and / or components of the described systems, structures, devices, circuits, etc. may be combined or combined in a different manner than the described method, or other components. Or even if replaced or replaced by equivalents, an appropriate result can be achieved.

그러므로, 다른 구현들, 다른 실시예들 및 청구범위와 균등한 것들도 후술하는 청구범위의 범위에 속한다.Therefore, other implementations, other embodiments, and equivalents to the claims are within the scope of the following claims.

110: 합성곱 계층부
115: 활성화 계층부
120: 풀링 계층부
125: 분류 출력 계층부
130: 손실 계산 계층부
135: 역방향 계산부
140: 분류 학습부
145: 인셉션 계층부
150: 스킵 연결 계층부
155: 매개 변수 초기값 설계부
160: 미니 배치 정규화 설계부
165: 경사 하강법 최적화 설계부
170: 제어부
110: composite product hierarchy
115: Activation layer
120: pooling layer part
125: classification output layer
130: loss calculation hierarchy
135: reverse calculation unit
140: classification learning unit
145: inception hierarchy
150: skip connection layer portion
155: parameter initial value design unit
160: mini batch normalization design
165: gradient descent optimization design
170: control unit

Claims (10)

복수의 커널 필터를 이용하여 입력 데이터로부터 물체의 특징 값을 추출하는 합성곱 계층부;
상기 합성곱 계층부에 의해 추출된 특징 값에 대하여 비선형 활성화 함수를 이용하여 변환 작업을 수행하는 활성화 계층부;
상기 활성화 계층부의 출력 값에 대하여 최댓값 풀링(max polling) 연산을 이용하여 차원을 축소하고 잡음을 제거 및 억제하는 풀링 계층부;
상기 풀링 계층부의 출력 값을 이용한 전방향 연산을 통해 상기 입력 데이터에 대한 분류 예측 값을 출력하는 분류 출력 계층부;
상기 분류 예측 값과 미리 정해진 목표 값을 비교하여 그 오차 값에 해당하는 손실 값을 산출하는 손실 계산 계층부;
상기 손실 값에 대한 편 미분 값을 역방향 연산을 통해 계산하여 상기 각 계층부의 매개 변수에 대한 수정 값을 획득하는 역방향 계산부; 및
상기 수정 값, 및 일정량의 학습 데이터들을 통해 도출된 학습률을 이용한 경사 하강법(Gradient Descent Method)을 통하여 상기 매개 변수에 대한 업데이트를 수행하는 분류 학습부
를 포함하는 것을 특징으로 하는 합성곱 신경망 기반 이미지 처리 시스템.
A compound product hierarchy unit for extracting feature values of an object from input data using a plurality of kernel filters;
An activation layer unit which performs a transform operation on a feature value extracted by the composite product layer unit using a nonlinear activation function;
A pooling layer unit which reduces a dimension, removes and suppresses noise by using a maximum polling operation on an output value of the activation layer unit;
A classification output layer unit for outputting a classification prediction value for the input data through an omnidirectional operation using the output value of the pooling layer unit;
A loss calculating layer unit comparing the classification prediction value with a predetermined target value and calculating a loss value corresponding to the error value;
A reverse calculation unit calculating a partial differential value of the loss value through a reverse operation to obtain a correction value for a parameter of each layer unit; And
A classification learning unit for updating the parameter through a gradient descent method using the correction value and the learning rate derived through a certain amount of learning data.
Synthetic product neural network based image processing system comprising a.
제1항에 있어서,
상기 활성화 계층부는
reLU 활성화 함수를 이용하여 상기 특징 값에 대하여 변환 작업을 수행하는 것을 특징으로 하는 합성곱 신경망 기반 이미지 처리 시스템.
The method of claim 1,
The activation layer unit
and a transform product for the feature value using a reLU activation function.
제1항에 있어서,
상기 역방향 계산부는
상기 손실 계산 계층부에서 상기 분류 출력 계층부 방향으로 상기 분류 출력 계층부의 제1 매개 변수에 대한 편 미분 값을 계산하고, 상기 분류 출력 계층부에서 마지막의 은닉 계층 방향으로의 제2 매개 변수에 대한 편 미분 값을 계산하며, 은닉 계층들 사이의 제3 매개 변수에 대한 편 미분 값을 계산하여 상기 각 계층부의 매개 변수(상기 제1 내지 제3 매개 변수)에 대한 수정 값을 획득하는 것을 특징으로 하는 합성곱 신경망 기반 이미지 처리 시스템.
The method of claim 1,
The reverse calculation unit
Calculate a partial differential value for the first parameter of the classification output hierarchy in the loss calculation hierarchy towards the classification output hierarchy and for a second parameter in the direction of the last hidden hierarchy in the classification output hierarchy. A partial differential value is calculated, and a partial differential value for a third parameter between hidden layers is calculated to obtain a correction value for a parameter (the first to third parameters) of each layer part. Synthetic product neural network based image processing system.
제1항에 있어서,
상기 합성곱 계층부에 의해 출력된, 2개 이상의 특징 값에 대해 비선형 활성화 함수를 이용하여 병렬하여 연결 계산을 수행하고, 상기 병렬의 연결 계산 결과에 대해 합치 작업을 수행하여 다차원의 결과 값을 얻으며, 상기 다차원의 결과 값에 대해 커널 필터와 선형 활성화 함수를 이용하여 차원 변환 작업을 수행함으로써 상기 입력 데이터의 특징이 서로 조합된 새로운 특징 값을 추출하는 인셉션 계층부
를 더 포함하는 것을 특징으로 하는 합성곱 신경망 기반 이미지 처리 시스템.
The method of claim 1,
Perform a linkage calculation in parallel using a nonlinear activation function on two or more feature values output by the convolutional product layer, and perform a matching operation on the parallel linkage calculation results to obtain multidimensional result values. An inception layer unit for extracting a new feature value combining features of the input data by performing a dimensional transformation on the multi-dimensional result using a kernel filter and a linear activation function
Synthetic product neural network based image processing system further comprising.
제4항에 있어서,
상기 입력 데이터에 대해 상기 인셉션 계층부 및 상기 합성곱 계층부를 통해 다차원 데이터를 생성하고, 상기 다차원 데이터의 차원 수와 일치하도록 상기 입력 데이터의 차원 수를 변환하고, 상기 다차원 데이터와 상기 차원 수가 변환된 입력 데이터를 합치한 후 선형 활성화 함수를 이용하여 상기 입력 데이터의 특징 손실 문제를 억제하는 스킵 연결 계층부
를 더 포함하는 것을 특징으로 하는 합성곱 신경만 기반 이미지 처리 시스템.
The method of claim 4, wherein
Generate multidimensional data for the input data through the inception layer unit and the composite product layer unit, convert the number of dimensions of the input data to match the number of dimensions of the multidimensional data, and convert the multidimensional data and the number of dimensions A skipped connection layer unit for suppressing a feature loss problem of the input data using a linear activation function after matching the input data
Synthetic nerve-only image processing system further comprises a.
제1항에 있어서,
상기 각 계층부의 매개 변수의 수량을 이용하여 계산된 표본 표준 편차를 기반으로 He 초기값 알고리즘을 설계하고, 상기 He 초기값 알고리즘을 기반으로 상기 매개 변수의 초기화 작업을 수행하는 매개 변수 초기값 설계부
를 더 포함하는 것을 특징으로 하는 합성곱 신경만 기반 이미지 처리 시스템.
The method of claim 1,
A parameter initial value design unit for designing a He initial value algorithm based on a sample standard deviation calculated using the quantity of parameters of each layer unit, and performing initialization of the parameter based on the He initial value algorithm.
Synthetic nerve-only image processing system further comprises a.
제1항에 있어서,
상기 입력 데이터 각각에 대해 미니 배치의 형태로 구현하고, 상기 미니 배치의 평균 값을 계산하고, 상기 미니 배치의 평균 값을 이용하여 상기 미니 배치의 분산 값을 계산하며, 상기 미니 배치의 각 입력 값에 대해 상기 미니 배치의 평균 값 및 분산 값을 이용하여 정규화 미니 배치의 각 값을 구하는 미니 배치 정규화 설계부
를 더 포함하고,
상기 합성곱 계층부는
상기 정규화 미니 배치의 각 값을 상기 입력 데이터로서 이용하는 것을 특징으로 하는 합성곱 신경만 기반 이미지 처리 시스템.
The method of claim 1,
Each input data is implemented in the form of a mini batch, calculates an average value of the mini batch, calculates a variance value of the mini batch using the average value of the mini batch, and inputs each input value of the mini batch. Mini batch normalization design unit for calculating each value of the normalized mini batch using the mean value and the variance of the mini batch
More,
The composite product layer part
And using each value of the normalized mini-batch as the input data.
제1항에 있어서,
상기 매개 변수의 모멘텀을 계산하고, 상기 매개 변수의 미분 값을 이용하여 상기 학습률의 수정 값을 계산하며, 상기 모멘텀 및 상기 학습률의 수정 값을 이용하여 상기 매개 변수의 수정 작업을 수행하는 경사 하강법 최적화 설계부
를 더 포함하는 것을 특징으로 하는 합성곱 신경만 기반 이미지 처리 시스템.
The method of claim 1,
Gradient descent method for calculating the momentum of the parameter, calculating the correction value of the learning rate using the derivative value of the parameter, and performing the correction operation of the parameter using the momentum and the correction value of the learning rate Optimization design department
Synthetic nerve-only image processing system further comprises a.
합성곱 신경망 기반 이미지 처리 시스템을 이용한 이미지 처리 방법에 있어서,
상기 이미지 처리 시스템의 합성곱 계층부가 복수의 커널 필터를 이용하여 입력 데이터로부터 물체의 특징 값을 추출하는 단계;
상기 이미지 처리 시스템의 활성화 계층부가 상기 합성곱 계층부에 의해 추출된 특징 값에 대하여 비선형 활성화 함수를 이용하여 변환 작업을 수행하는 단계;
상기 이미지 처리 시스템의 풀링 계층부가 상기 활성화 계층부의 출력 값에 대하여 최댓값 풀링(max polling) 연산을 이용하여 차원을 축소하고 잡음을 제거 및 억제하는 단계;
상기 이미지 처리 시스템의 분류 출력 계층부가 상기 풀링 계층부의 출력 값을 이용한 전방향 연산을 통해 상기 입력 데이터에 대한 분류 예측 값을 출력하는 단계;
상기 이미지 처리 시스템의 손실 계산 계층부가 상기 분류 예측 값과 미리 정해진 목표 값을 비교하여 그 오차 값에 해당하는 손실 값을 산출하는 단계;
상기 이미지 처리 시스템의 역방향 계산부가 상기 손실 값에 대한 편 미분 값을 역방향 연산을 통해 계산하여 상기 각 계층부의 매개 변수에 대한 수정 값을 획득하는 단계; 및
상기 이미지 처리 시스템의 분류 학습부가 상기 수정 값, 및 일정량의 학습 데이터들을 통해 도출된 학습률을 이용한 경사 하강법(Gradient Descent Method)을 통하여 상기 매개 변수에 대한 업데이트를 수행하는 단계
를 포함하는 것을 특징으로 하는 합성곱 신경망 기반 이미지 처리 방법.
In the image processing method using a composite product neural network based image processing system,
Extracting a feature value of an object from input data by using a plurality of kernel filters of the image processing system by using a plurality of kernel filters;
Performing, by the activation layer unit of the image processing system, a transform operation on the feature value extracted by the composite product layer unit using a nonlinear activation function;
A pooling layer unit of the image processing system reduces the dimension, removes and suppresses the noise by using a maximum polling operation on an output value of the activation layer unit;
Outputting, by the classification output layer unit of the image processing system, a classification prediction value for the input data through an omnidirectional operation using the output value of the pooling layer unit;
A loss calculating layer unit of the image processing system comparing the classification prediction value with a predetermined target value and calculating a loss value corresponding to the error value;
A backward calculation unit of the image processing system calculates a partial differential value of the loss value through a backward operation to obtain a correction value for a parameter of each layer unit; And
The classifying learning unit of the image processing system performs an update on the parameter through a gradient descent method using the correction value and the learning rate derived through a certain amount of learning data.
Composite product neural network based image processing method comprising a.
제9항에 있어서,
상기 이미지 처리 시스템의 경사 하강법 최적화 설계부가 상기 매개 변수의 모멘텀을 계산하는 단계;
상기 경사 하강법 최적화 설계부가 상기 매개 변수의 미분 값을 이용하여 상기 학습률의 수정 값을 계산하는 단계; 및
상기 경사 하강법 최적화 설계부가 상기 모멘텀 및 상기 학습률의 수정 값을 이용하여 상기 매개 변수의 수정 작업을 수행하는 단계
를 더 포함하는 것을 특징으로 하는 합성곱 신경만 기반 이미지 처리 방법.
The method of claim 9,
Calculating, by the gradient descent optimization design unit of the image processing system, momentum of the parameter;
Calculating, by the gradient descent optimization design unit, a correction value of the learning rate using the derivative value of the parameter; And
Performing a correction operation of the parameter by using the gradient descent optimization design unit by using the correction value of the momentum and the learning rate
Synthetic nerve-only image processing method further comprising a.
KR1020180041634A 2018-04-10 2018-04-10 Convolutional neural network based image processing system and method KR102068576B1 (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
KR1020180041634A KR102068576B1 (en) 2018-04-10 2018-04-10 Convolutional neural network based image processing system and method

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
KR1020180041634A KR102068576B1 (en) 2018-04-10 2018-04-10 Convolutional neural network based image processing system and method

Publications (2)

Publication Number Publication Date
KR20190118387A true KR20190118387A (en) 2019-10-18
KR102068576B1 KR102068576B1 (en) 2020-01-21

Family

ID=68462733

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1020180041634A KR102068576B1 (en) 2018-04-10 2018-04-10 Convolutional neural network based image processing system and method

Country Status (1)

Country Link
KR (1) KR102068576B1 (en)

Cited By (17)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN111368931A (en) * 2020-03-09 2020-07-03 第四范式(北京)技术有限公司 Method and device for training image classification model, computer device and storage medium
CN111783558A (en) * 2020-06-11 2020-10-16 上海交通大学 Satellite navigation interference signal type intelligent identification method and system
CN111797970A (en) * 2019-12-24 2020-10-20 华为技术有限公司 Method and apparatus for training neural network
CN111860585A (en) * 2020-06-11 2020-10-30 南京简凡科技有限公司 Automatic fatty liver detection method based on ultrasonic image artificial intelligence algorithm
CN112084941A (en) * 2020-09-09 2020-12-15 国科天成(北京)科技有限公司 Target detection and identification method based on remote sensing image
CN112766549A (en) * 2021-01-07 2021-05-07 清华大学 Air pollutant concentration forecasting method and device and storage medium
KR20210075910A (en) * 2019-12-13 2021-06-23 한국과학기술원 Deep joint frame processing method and apparatus apparatus for performing frame interpolation, super-resolution or inverse tone mapping
WO2021139237A1 (en) * 2020-05-14 2021-07-15 平安科技(深圳)有限公司 Method and apparatus for loss function optimization, device, and storage medium
KR102315359B1 (en) * 2021-02-01 2021-10-21 한양대학교 산학협력단 Blind Video Denoising System and Method using Dense Recurrent Convolutional Neural Network
KR20210132908A (en) * 2020-04-28 2021-11-05 영남대학교 산학협력단 Method for learnig images using convolution neural network and apparatus for executing the method
KR20220010419A (en) 2020-07-17 2022-01-25 고려대학교 산학협력단 Electronice device and learning method for low complexity artificial intelligentce model learning based on selecting the dynamic prediction confidence thresholed
CN114724009A (en) * 2022-04-26 2022-07-08 北京拙河科技有限公司 Image identification method and device based on improved deep learning network
WO2022197478A1 (en) * 2021-03-19 2022-09-22 Micron Technology, Inc. Systems and methods for training machine learning models for denoising images
CN116052452A (en) * 2023-04-03 2023-05-02 江西方兴科技股份有限公司 Data processing method and lane early warning method for wireless communication
CN116226761A (en) * 2022-12-27 2023-06-06 北京关键科技股份有限公司 Training data classification cataloging method and system based on deep neural network
CN116681992A (en) * 2023-07-29 2023-09-01 河南省新乡生态环境监测中心 Ammonia nitrogen detection method based on neural network
CN117934208A (en) * 2024-03-18 2024-04-26 广东工业大学 Multi-channel depth network-based multi-source data offshore wind power prediction method

Families Citing this family (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR20220163941A (en) * 2020-04-03 2022-12-12 엘지전자 주식회사 Video transmission method, video transmission device, video reception method, video reception device
KR102632773B1 (en) * 2021-09-30 2024-02-06 고려대학교 산학협력단 System for split training of medical data, method therefor, and computer readable medium for performing the method
KR102529214B1 (en) 2023-02-04 2023-05-08 주식회사 이너버즈 Method and apparatus for learning face swapping deep learning system

Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2016033806A (en) * 2014-05-15 2016-03-10 株式会社リコー Image processor, image processing method and program
KR101688458B1 (en) * 2016-04-27 2016-12-23 디아이티 주식회사 Image inspection apparatus for manufactured articles using deep neural network training method and image inspection method of manufactured articles thereby

Patent Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2016033806A (en) * 2014-05-15 2016-03-10 株式会社リコー Image processor, image processing method and program
KR101688458B1 (en) * 2016-04-27 2016-12-23 디아이티 주식회사 Image inspection apparatus for manufactured articles using deep neural network training method and image inspection method of manufactured articles thereby

Non-Patent Citations (2)

* Cited by examiner, † Cited by third party
Title
Wikipedia: Convolutional neural network. 2018.03.28. *
오차역전파(backpropagation). 2017.03.14. *

Cited By (21)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR20210075910A (en) * 2019-12-13 2021-06-23 한국과학기술원 Deep joint frame processing method and apparatus apparatus for performing frame interpolation, super-resolution or inverse tone mapping
CN111797970A (en) * 2019-12-24 2020-10-20 华为技术有限公司 Method and apparatus for training neural network
CN111368931A (en) * 2020-03-09 2020-07-03 第四范式(北京)技术有限公司 Method and device for training image classification model, computer device and storage medium
CN111368931B (en) * 2020-03-09 2023-11-17 第四范式(北京)技术有限公司 Method for determining learning rate of image classification model
KR20210132908A (en) * 2020-04-28 2021-11-05 영남대학교 산학협력단 Method for learnig images using convolution neural network and apparatus for executing the method
WO2021139237A1 (en) * 2020-05-14 2021-07-15 平安科技(深圳)有限公司 Method and apparatus for loss function optimization, device, and storage medium
CN111783558A (en) * 2020-06-11 2020-10-16 上海交通大学 Satellite navigation interference signal type intelligent identification method and system
CN111860585A (en) * 2020-06-11 2020-10-30 南京简凡科技有限公司 Automatic fatty liver detection method based on ultrasonic image artificial intelligence algorithm
KR20220010419A (en) 2020-07-17 2022-01-25 고려대학교 산학협력단 Electronice device and learning method for low complexity artificial intelligentce model learning based on selecting the dynamic prediction confidence thresholed
CN112084941A (en) * 2020-09-09 2020-12-15 国科天成(北京)科技有限公司 Target detection and identification method based on remote sensing image
CN112766549A (en) * 2021-01-07 2021-05-07 清华大学 Air pollutant concentration forecasting method and device and storage medium
KR102315359B1 (en) * 2021-02-01 2021-10-21 한양대학교 산학협력단 Blind Video Denoising System and Method using Dense Recurrent Convolutional Neural Network
WO2022197478A1 (en) * 2021-03-19 2022-09-22 Micron Technology, Inc. Systems and methods for training machine learning models for denoising images
CN114724009A (en) * 2022-04-26 2022-07-08 北京拙河科技有限公司 Image identification method and device based on improved deep learning network
CN114724009B (en) * 2022-04-26 2022-09-27 北京拙河科技有限公司 Image identification method and device based on improved deep learning network
CN116226761A (en) * 2022-12-27 2023-06-06 北京关键科技股份有限公司 Training data classification cataloging method and system based on deep neural network
CN116052452A (en) * 2023-04-03 2023-05-02 江西方兴科技股份有限公司 Data processing method and lane early warning method for wireless communication
CN116052452B (en) * 2023-04-03 2023-06-20 江西方兴科技股份有限公司 Data processing method and lane early warning method for wireless communication
CN116681992A (en) * 2023-07-29 2023-09-01 河南省新乡生态环境监测中心 Ammonia nitrogen detection method based on neural network
CN116681992B (en) * 2023-07-29 2023-10-20 河南省新乡生态环境监测中心 Ammonia nitrogen detection method based on neural network
CN117934208A (en) * 2024-03-18 2024-04-26 广东工业大学 Multi-channel depth network-based multi-source data offshore wind power prediction method

Also Published As

Publication number Publication date
KR102068576B1 (en) 2020-01-21

Similar Documents

Publication Publication Date Title
KR102068576B1 (en) Convolutional neural network based image processing system and method
Sabour et al. Matrix capsules with EM routing
US9830709B2 (en) Video analysis with convolutional attention recurrent neural networks
RU2641447C1 (en) Method of training deep neural networks based on distributions of pairwise similarity measures
WO2018227800A1 (en) Neural network training method and device
JP6393058B2 (en) Information processing apparatus and information processing method
US20230214652A1 (en) Method and apparatus with bit-serial data processing of a neural network
CN112288011B (en) Image matching method based on self-attention deep neural network
Deutsch et al. Zero shot learning via multi-scale manifold regularization
EP3572984A1 (en) Implementing traditional computer vision algorithms as neural networks
US20210182687A1 (en) Apparatus and method with neural network implementation of domain adaptation
US11568212B2 (en) Techniques for understanding how trained neural networks operate
CN113496247A (en) Estimating an implicit likelihood of generating a countermeasure network
US11954755B2 (en) Image processing device and operation method thereof
KR20190126857A (en) Detect and Represent Objects in Images
KR102420104B1 (en) Image processing apparatus and operating method for the same
CN112132255A (en) Batch normalization layer fusion and quantification method for model inference in artificial intelligence neural network engine
US10747845B2 (en) System, method and apparatus for computationally efficient data manipulation
JP2021051589A5 (en)
Favorskaya et al. Image inpainting based on self-organizing maps by using multi-agent implementation
US20220284545A1 (en) Image processing device and operating method thereof
CN113516670A (en) Non-mode image segmentation method and device with enhanced feedback attention
EP4032028A1 (en) Efficient inferencing with fast pointwise convolution
EP3996000A1 (en) Method and apparatus for quantizing parameters of neural network
US20230298192A1 (en) Method for subpixel disparity calculation

Legal Events

Date Code Title Description
A201 Request for examination
E902 Notification of reason for refusal
E701 Decision to grant or registration of patent right
GRNT Written decision to grant