KR20210109327A - 인공신경망의 학습 방법 및 장치 - Google Patents

인공신경망의 학습 방법 및 장치 Download PDF

Info

Publication number
KR20210109327A
KR20210109327A KR1020200024485A KR20200024485A KR20210109327A KR 20210109327 A KR20210109327 A KR 20210109327A KR 1020200024485 A KR1020200024485 A KR 1020200024485A KR 20200024485 A KR20200024485 A KR 20200024485A KR 20210109327 A KR20210109327 A KR 20210109327A
Authority
KR
South Korea
Prior art keywords
image
sampling
format
neural network
format image
Prior art date
Application number
KR1020200024485A
Other languages
English (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 KR1020200024485A priority Critical patent/KR20210109327A/ko
Priority to US17/021,398 priority patent/US11436432B2/en
Publication of KR20210109327A publication Critical patent/KR20210109327A/ko

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06VIMAGE OR VIDEO RECOGNITION OR UNDERSTANDING
    • G06V10/00Arrangements for image or video recognition or understanding
    • G06V10/20Image preprocessing
    • G06V10/22Image preprocessing by selection of a specific region containing or referencing a pattern; Locating or processing of specific regions to guide the detection or recognition
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F18/00Pattern recognition
    • G06F18/20Analysing
    • G06F18/21Design or setup of recognition systems or techniques; Extraction of features in feature space; Blind source separation
    • G06F18/214Generating training patterns; Bootstrap methods, e.g. bagging or boosting
    • 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/044Recurrent networks, e.g. Hopfield networks
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06NCOMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
    • G06N3/00Computing arrangements based on biological models
    • G06N3/02Neural networks
    • G06N3/04Architecture, e.g. interconnection topology
    • G06N3/045Combinations of networks
    • 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
    • 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
    • G06VIMAGE OR VIDEO RECOGNITION OR UNDERSTANDING
    • G06V10/00Arrangements for image or video recognition or understanding
    • G06V10/40Extraction of image or video features
    • G06V10/50Extraction of image or video features by performing operations within image blocks; by using histograms, e.g. histogram of oriented gradients [HoG]; by summing image-intensity values; Projection analysis
    • 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
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N9/00Details of colour television systems
    • H04N9/64Circuits for processing colour signals
    • H04N9/67Circuits for processing colour signals for matrixing
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06VIMAGE OR VIDEO RECOGNITION OR UNDERSTANDING
    • G06V20/00Scenes; Scene-specific elements
    • G06V20/50Context or environment of the image
    • G06V20/56Context or environment of the image exterior to a vehicle by using sensors mounted on the vehicle

Abstract

본 발명의 실시예에 따른 인공신경망의 학습 장치는, 입력되는 이미지로부터 제1 포맷 이미지 및 제2 포맷 이미지를 생성하는 포맷 변환부, 제1 샘플링 방식으로 상기 제1 포맷 이미지를 샘플링하여 제1 특징맵을 생성하고, 상기 제1 샘플링 방식과는 다른 제2 샘플링 방식으로 상기 제2 포맷 이미지를 샘플링하여 제2 특징맵을 생성하는 샘플링부, 및 상기 제1 특징맵 및 상기 제2 특징맵을 이용하여 인공신경망을 학습시키는 학습부를 포함한다.

Description

인공신경망의 학습 방법 및 장치{METHOD AND APPARATUS FOR LEARNING ARTIFICIAL NEURAL NETWORK}
본 발명은 인공신경망에 관한 것으로서, 더욱 상세하게는 인공신경망의 학습 방법 및 장치에 관한 것이다.
인공신경망은 인간의 뇌가 패턴을 인식하는 방식을 모사하여 복잡한 망 구조로 구현되는 모델링 기법을 말한다.
인공신경망은 입력되는 이미지, 비디오, 텍스트, 또는 사운드 등의 데이터 내의 특정 패턴을 인식함으로써 데이터의 분류(classification) 또는 군집(clustering)에 활용하게 되는데, 특히 이미지 또는 비디오 데이터가 입력되는 경우, 입력되는 데이터로부터 특징맵을 추출하여 특정 패턴의 인식률을 높이기 위한 다양한 연구들이 진행되고 있다.
상기와 같은 문제점을 해결하기 위한 본 발명의 일 목적은 특정 패턴의 인식률을 높일 수 있는 인공신경망의 학습 방법을 제공하는 것이다.
본 발명의 다른 목적은 상기 인공신경망의 학습 방법을 수행하는 인공신경망의 학습 장치를 제공하는 것이다.
상기 일 목적을 달성하기 위해, 본 발명의 일 실시예에 따른 인공신경망의 학습 장치는, 입력되는 이미지로부터 제1 포맷 이미지 및 제2 포맷 이미지를 생성하는 포맷 변환부, 제1 샘플링 방식으로 상기 제1 포맷 이미지를 샘플링하여 제1 특징맵을 생성하고, 상기 제1 샘플링 방식과는 다른 제2 샘플링 방식으로 상기 제2 포맷 이미지를 샘플링하여 제2 특징맵을 생성하는 샘플링부, 및 상기 제1 특징맵 및 상기 제2 특징맵을 이용하여 인공신경망을 학습시키는 학습부를 포함한다.
상기 일 목적을 달성하기 위해, 본 발명의 일 실시예에 따른 인공신경망의 학습 장치는, 입력되는 이미지로부터 제1 포맷 이미지 및 제2 포맷 이미지를 생성하고, 제1 샘플링 방식으로 상기 제1 포맷 이미지를 샘플링하여 제1 특징맵을 생성하고, 상기 제1 샘플링 방식과는 다른 제2 샘플링 방식으로 상기 제2 포맷 이미지를 샘플링하여 제2 특징맵을 생성하는 특징맵 제공부, 및 상기 제1 특징맵 및 상기 제2 특징맵을 이용하여 인공신경망을 학습시키고, 상기 학습의 결과로서 상기 이미지 및 상기 이미지에 상응하는 레이블에 기초하여 오차를 계산하여 오차 정보를 생성하고, 상기 오차 정보를 상기 특징맵 제공부로 전송하는 학습부를 포함한다.
상기 다른 목적을 달성하기 위해, 본 발명의 일 실시예에 따른 인공신경망의 학습 방법은, 입력되는 이미지로부터 제1 포맷 이미지 및 제2 포맷 이미지를 생성하는 단계, 제1 샘플링 방식으로 상기 제1 포맷 이미지를 샘플링하여 제1 특징맵을 생성하고, 상기 제1 샘플링 방식과는 다른 제2 샘플링 방식으로 상기 제2 포맷 이미지를 샘플링하여 제2 특징맵을 생성하는 단계, 및 상기 제1 특징맵 및 상기 제2 특징맵을 이용하여 인공신경망을 학습시키는 단계를 포함한다.
본 발명의 실시예들에 따른 인공신경망의 학습 방법 및 학습 장치는 입력되는 이미지로부터 제1 포맷 이미지 및 제2 포맷 이미지를 생성할 수 있다. 그리고, 상기 제1 포맷 이미지는 제1 샘플링 방식으로 샘플링하고, 상기 제2 포맷 이미지는 상기 제1 샘플링 방식과는 다른 제2 샘플링 방식으로 샘플링함으로써 다양한 특징맵들을 생성할 수 있고, 상기 특징맵들을 이용하여 인공신경망을 학습시킬 수 있다. 그 결과, 상기 인공신경망의 특정 패턴에 대한 인식률을 높일 수 있다.
도 1은 본 발명의 일 실시예에 따른 인공신경망의 학습 방법을 나타내는 흐름도이다.
도 2는 본 발명의 일 실시예에 따른 인공신경망 학습 장치를 나타내는 블록도이다. 도 3은 도 2의 인공신경망 학습 장치에 포함되는 특징맵 제공부의 일 실시예를 나타내는 블록도이다.
도 4a는 외부로부터 수신되는 샘플링 정보에 따른 샘플링 방식의 일 실시예를 설명하기 위한 도면이다. 도 4b는 샘플링 방식의 다른 실시예를 설명하기 위한 도면이다. 도 4c는 샘플링 방식의 또 다른 실시예를 설명하기 위한 도면이다.
도 5는 도 2의 인공신경망 학습 장치에 포함되는 특징맵 제공부의 다른 실시예를 나타내는 블록도이다.
도 6은 포맷 변환부에 의해 생성되는 샘플링 정보에 따른 샘플링 방식의 일 실시예를 설명하기 위한 도면이다.
도 7a, 도 7b, 도 7c, 및 도 8은 서로 다른 샘플링 방식이 적용될 수 있는 영역들을 설명하기 위한 도면들이다.
도 9는 본 발명의 다른 실시예에 따른 인공신경망 학습 장치를 나타내는 블록도이다. 도 10은 도 9의 인공신경망 학습 장치에 포함되는 특징맵 제공부의 일 실시예를 나타내는 블록도이다.
도 11, 도 12 및 도 13은 본 발명의 실시예들에 따른 스토리지 시스템에 의한 딥러닝의 수행에 이용되는 네트워크 구조의 예를 설명하기 위한 도면들이다.
도 14는 본 발명의 실시예들에 따른 전자 시스템을 나타내는 블록도이다.
이하, 첨부한 도면들을 참조하여, 본 발명의 바람직한 실시예를 보다 상세하게 설명하고자 한다. 도면상의 동일한 구성요소에 대해서는 동일한 참조부호를 사용하고 동일한 구성요소에 대해서 중복된 설명은 생략한다.
도 1은 본 발명의 일 실시예에 따른 인공신경망의 학습 방법을 나타내는 흐름도이다.
도 1을 참조하면, 인공신경망의 학습 방법은 도 2 및 도 3 등을 참조하여 후술하게 되는 인공신경망 학습 장치에 의해 수행될 수 있다.
인공신경망 학습 장치는 입력되는 이미지 내의 특정 패턴의 인식률을 높이기 위해, 상기 입력되는 이미지로부터 제1 포맷 이미지 및 제2 포맷 이미지를 생성할 수 있다(S1000).
상기 이미지는 이미지 센서를 포함하는 카메라를 통해 얻어지는 스틸 이미지 또는 비디오 이미지를 포함할 수 있다. 상기 이미지 센서는 CMOS(Complementary Metal Oxide Semiconductor) 이미지 센서일 수 있고, 상기 CMOS 이미지 센서는 시야에서 전개되는 이미지를 광전 소자를 이용하여 전기적 신호로 변환하고, 상기 전기적 신호를 다시 디지털 신호로 변환하여 상기 이미지를 생성할 수 있다. 상기 카메라는 전통적인 의미의 카메라뿐만 아니라, 상기 이미지 센서를 포함하는 휴대폰(mobile phone), 스마트 폰(smart phone), 태블릿(tablet) PC(Personal Computer), 노트북(laptop computer), 디지털 카메라(digital camera), 캠코더(camcorder), 휴대용 게임 콘솔(portable game console), 웨어러블 (wearable) 기기 등을 포함할 수 있다.
상기 이미지는 상기 이미지 센서에 포함되는 픽셀 어레이의 픽셀 수에 상응하는 해상도를 가지는 RGB 이미지, YCbCr 이미지 또는 YUV 이미지 중 어느 하나일 수 있으나, 본 발명의 범위가 이에 한정되는 것은 아니다. 실시예에 따라, 상기 이미지는 인공신경망의 학습을 위해 당해 기술분야에 속하는 통상의 기술자에 의해 널리 활용되는 MNIST 데이터 세트 또는 Cifar-10 데이터 세트일 수도 있다.
상기 제1 포맷 이미지는 상기 이미지를 가공하여 얻어지는 이미지로서, 상기 이미지의 포맷을 변환한 이미지를 말한다. 실시예에 따라, 상기 이미지가 RGB 이미지인 경우, 상기 제1 포맷 이미지는 R(Red) 이미지, G(Green) 이미지, 및 B(Blue) 이미지를 포함할 수 있다. 다른 실시예에 따라, 상기 이미지가 YCbCr 이미지인 경우, 상기 제1 포맷 이미지는 Y 이미지, Cb 이미지, 및 Cr 이미지를 포함할 수 있다. 또 다른 실시예에 따라, 상기 이미지가 YUV 이미지인 경우, 상기 제1 포맷 이미지는 Y 이미지, U 이미지, 및 V 이미지를 포함할 수 있다.
상기 제2 포맷 이미지는 상기 이미지 또는 상기 제1 포맷 이미지를 가공하여 얻어지는 이미지로서, 상기 이미지 또는 상기 제1 포맷 이미지의 포맷을 변환한 이미지를 말한다. 실시예에 따라, 상기 제2 포맷 이미지는 상기 이미지 또는 상기 제1 포맷 이미지에 포함되는 이미지들 중 어느 하나에 존재하는 에지를 검출한 에지 이미지일 수 있다. 그리고, 상기 에지 이미지는 상기 이미지 또는 상기 제1 포맷 이미지에 포함되는 이미지들에 대하여 미리 설정된 마스크(mask)를 적용하여 생성될 수 있다.
실시예에 따라, 상기 마스크는 소벨(Sobel) 마스크일 수 있으나, 본 발명의 범위는 이에 한정되지 않는다. 다른 실시예에 따라, 상기 마스크는 프리윗(Prewitt) 마스크, 로버츠(Robert) 마스크, 라플라시안, LOG(Laplacian Of Gaussian), 또는 DOG(Difference Of Gaussian) 중 어느 하나일 수 있다.
또 다른 실시예에 따라, 상기 에지 이미지는 상기 이미지 또는 상기 제1 포맷 이미지에 케니 에지 검출(Canny Edge Detection) 알고리즘을 적용하여 얻어질 수도 있다.
그리고, 인공신경망 학습 장치는 제1 샘플링 방식으로 제1 포맷 이미지를 샘플링하여 제1 특징맵을 생성하고, 제2 샘플링 방식으로 제2 포맷 이미지를 샘플링하여 제2 특징맵을 생성할 수 있다(S3000).
샘플링 방식이라 함은 상기 제1 포맷 이미지 및 상기 제2 포맷 이미지에 포함되는 복수의 픽셀들 중 일부의 픽셀들을 미리 정해진 방식에 따라 선택하는 방식을 의미할 수 있다. 실시예에 따라, 상기 샘플링 방식은 제1 방향 샘플링 정보(D1) 및 제2 방향 샘플링 정보(D2)를 포함할 수 있으나, 본 발명의 범위가 이에 한정되는 것은 아니다. 다른 실시예에 따라, 상기 샘플링 방식은 오프셋 정보(OFS)를 더 포함할 수도 있다.
상기 제1 샘플링 방식은 상기 제1 포맷 이미지에 포함되는 복수의 픽셀들 중 일부의 픽셀들을 선택하는 방식을 의미할 수 있고, 실시예에 따라, 상기 제1 샘플링 방식은 상기 제1 포맷 이미지의 크기를 축소시키는 방식일 수 있다. 이 경우 상기 제1 방향 샘플링 정보(D1)와 상기 제2 방향 샘플링 정보(D2)는 동일할 수 있다.
상기 제2 샘플링 방식은 상기 제1 샘플링 방식과 다를 수 있다. 상기 제2 샘플링 방식은 상기 제2 포맷 이미지에 포함되는 복수의 픽셀들 중 일부의 픽셀들을 선택하는 방식을 의미할 수 있고, 실시예에 따라, 상기 제2 샘플링 방식은 상기 제2 포맷 이미지의 크기를 축소시키면서 동시에 형태를 변경하는 방식일 수 있다. 이 경우 상기 제1 방향 샘플링 정보(D1)와 상기 제2 방향 샘플링 정보(D2)는 서로 다를 수 있다.
상기 제1 포맷 이미지는 상기 제1 샘플링 방식으로 샘플링 될 수 있고, 상기 제2 포맷 이미지는 상기 제2 샘플링 방식으로 샘플링 될 수 있으며, 샘플링되어 생성된 새로운 이미지는 특징맵이라 지칭될 수 있다.
그리고, 인공신경망 학습 장치는 상기 제1 특징맵 및 상기 제2 특징맵을 이용하여 인공신경망을 학습시킬 수 있다(S5000).
즉, 본 발명의 일 실시예에 따른 인공신경망의 학습 방법은 입력되는 이미지로부터 제1 포맷 이미지 및 제2 포맷 이미지를 생성할 수 있다. 그리고, 상기 제1 포맷 이미지는 제1 샘플링 방식으로 샘플링하고, 상기 제2 포맷 이미지는 상기 제1 샘플링 방식과는 다른 제2 샘플링 방식으로 샘플링함으로써 다양한 특징맵들을 생성할 수 있고, 상기 특징맵들을 이용하여 인공신경망을 학습시킬 수 있다. 그 결과, 상기 인공신경망의 특정 패턴에 대한 인식률을 높일 수 있다.
도 2는 본 발명의 일 실시예에 따른 인공신경망 학습 장치를 나타내는 블록도이다. 도 3은 도 2의 인공신경망 학습 장치에 포함되는 특징맵 제공부의 일 실시예를 나타내는 블록도이다.
도 2를 참조하면, 인공신경망 학습 장치(1000)는 특징맵 제공부(100) 및 학습부(500)를 포함할 수 있다. 특징맵 제공부(100)는 포맷 변환부(130) 및 샘플링부(150)를 포함할 수 있고, 샘플링부(150)는 제1 샘플러(152) 및 제2 샘플러(154)를 포함할 수 있다.
포맷 변환부(130)는 입력되는 이미지(IDAT)로부터 제1 포맷 이미지(FM1) 및 제2 포맷 이미지(FM2)를 생성할 수 있다.
상기 제1 포맷 이미지(FM1)는 이미지(IDAT)를 가공하여 얻어지는 이미지이고, 상기 제2 포맷 이미지(FM2)는 이미지(IDAT) 또는 제1 포맷 이미지(FM1)를 가공하여 얻어지는 이미지일 수 있다.
이미지(IDAT)는 RGB 이미지, YCbCr 이미지, 또는 YUV 이미지 중 어느 하나일 수 있다. 실시예에 따라, 이미지(IDAT)가 RGB 이미지인 경우, 제1 포맷 이미지(FM1)는R 이미지, G 이미지, 및 B 이미지를 포함할 수 있고, 제2 포맷 이미지(FM2)는 상기 RGB 이미지, 상기 R 이미지, 상기 G 이미지, 또는 상기 B 이미지 중 적어도 하나에 존재하는 에지를 검출한 에지 이미지일 수 있다.
샘플링부(150)는 샘플링 방식에 관한 정보를 포함하는 샘플링 정보(SFI1)를 외부로부터 수신할 수 있다.
샘플링 방식이라 함은, 제1 포맷 이미지(FM1) 및 제2 포맷 이미지(FM2)에 포함되는 복수의 픽셀들 중 일부의 픽셀들을 미리 정해진 방식에 따라 선택하는 방식을 의미할 수 있다.
샘플링 정보(SF1)는 제1 샘플링 방식 및 제2 샘플링 방식에 관한 정보를 포함할 수 있다. 실시예에 따라, 상기 제1 샘플링 방식은 상기 제1 포맷 이미지(FM1)에 상응하고, 상기 제2 샘플링 방식은 상기 제2 포맷 이미지(FM2)에 상응할 수 있다.
샘플링부(150)는 상기 제1 샘플링 방식으로 상기 제1 포맷 이미지(FM1)를 샘플링하여 제1 특징맵을 생성하고, 상기 제2 샘플링 방식으로 제2 포맷 이미지(FM2)를 샘플링하여 제2 특징맵을 생성할 수 있다. 그리고, 상기 제1 특징맵 및 상기 제2 특징맵을 특징맵 데이터(FDAT)로서 출력할 수 있다.
상기 제1 특징맵은 제1 샘플러(152)에 의해 생성될 수 있고, 상기 제2 특징맵은 제2 샘플러(154)에 의해 생성될 수도 있다.
학습부(500)는 상기 제1 특징맵 및 상기 제2 특징맵을 이용하여 인공신경망을 학습시킬 수 있다.
이하에서, 샘플링 방식에 관하여 보다 구체적으로 설명하기로 한다.
도 4a는 외부로부터 수신되는 샘플링 정보에 따른 샘플링 방식의 일 실시예를 설명하기 위한 도면이다. 도 4b는 샘플링 방식의 다른 실시예를 설명하기 위한 도면이다. 도 4c는 샘플링 방식의 또 다른 실시예를 설명하기 위한 도면이다.
도 4a, 도 4b, 및 도 4c에는 샘플링 방식의 일 실시예를 설명하기 위한 이미지의 일부 영역(즉, 10X16 크기의 영역)이 도시되어 있다. 상기 이미지는 도 1 내지 도 3을 참조하여 상술한 상기 제1 포맷 이미지 및 상기 제2 포맷 이미지 중 어느 하나일 수 있다. 상기 이미지의 일부 영역은 복수의 픽셀들(즉, 사각형으로 표시되는 10X16개의 픽셀들)을 포함할 수 있고, 상기 복수의 픽셀들 중 별도의 표시가 부가되어 있는 일부의 픽셀들(즉, 내부에 내접하는 원이 중첩적으로 그려진 사각형으로 표시되는 픽셀들)은 상기 샘플링 방식에 따라 선택되는 일부의 픽셀들을 나타낸다.
상기 샘플링 방식이라 함은 상기 제1 포맷 이미지 및 상기 제2 포맷 이미지에 포함되는 복수의 픽셀들 중 일부의 픽셀들을 미리 정해진 방식에 따라 선택하는 방식을 의미할 수 있다.
상기 샘플링 방식은 제1 방향 샘플링 정보(D1) 및 제2 방향 샘플링 정보(D2)를 포함할 수 있으나, 본 발명의 범위가 이에 한정되는 것은 아니다. 다른 실시예에 따라, 상기 샘플링 방식은 오프셋 정보(OFS)를 더 포함할 수도 있다.
제1 방향 샘플링 정보(D1), 제2 방향 샘플링 정보(D2), 및 오프셋 정보(OFS) 각각은 벡터 형식으로 표현될 수 있다. 이 경우, 상기 벡터 형식에 따른 벡터는 상기 샘플링 방식에 따라 선택되는 일부의 픽셀들의 상대적인 위치에 기초하여 결정될 수 있다.
먼저, 도 4a를 참조하면, 상기 샘플링 방식은 제1 방향 샘플링 정보(D1) 및 제2 방향 샘플링 정보(D2)를 포함할 수 있다. 실시예에 따라, 제1 방향 샘플링 정보(D1) 및 제2 방향 샘플링 정보(D2) 각각은 (0, 2) 및 (2, 0)일 수 있으나, 본 발명의 범위는 이에 한정되지 않는다. 다른 실시예에 따라, 제1 방향 샘플링 정보(D1) 및 제2 방향 샘플링 정보(D2) 각각은 (0, -2) 및 (2, 0)일 수 있고, 또 다른 실시예에 따라, (0, -2) 및 (-2, 0)일 수 있고, 또 다른 실시예에 따라, (0, -2) 및 (-2, 0)일 수 있다. 이 경우, 상기 샘플링 방식에 의해 상기 이미지의 크기는 축소될 수 있다.
다음으로, 도 4b를 참조하면, 상기 샘플링 방식은 제1 방향 샘플링 정보(D1) 및 제2 방향 샘플링 정보(D2)를 포함할 수 있다. 실시예에 따라, 제1 방향 샘플링 정보(D1) 및 제2 방향 샘플링 정보(D2) 각각은 (0, 4) 및 (5, 0.5)일 수 있으나, 본 발명의 범위는 이에 한정되지 않는다. 다른 실시예에 따라, 제1 방향 샘플링 정보(D1) 및 제2 방향 샘플링 정보(D2) 각각은 (0, -4) 및 (5, 0.5)일 수 있고, 또 다른 실시예에 따라, (0, -4) 및 (-5, 0,5)일 수 있고, 또 다른 실시예에 따라, (0, -4) 및 (-5, 0.5)일 수 있다. 이 경우, 상기 샘플링 방식에 의해 상기 이미지의 크기는 축소되고, 상기 이미지의 형태는 변경될 수 있다.
다음으로, 도 4c를 참조하면, 상기 샘플링 방식은 제1 방향 샘플링 정보(D1), 제2 방향 샘플링 정보(D2), 오프셋 정보(OFS)를 포함할 수 있다. 실시예에 따라, 제1 방향 샘플링 정보(D1) 및 제2 방향 샘플링 정보(D2) 각각은 (0, 2.5) 및 (2.5, 0)일 수 있으나, 본 발명의 범위는 이에 한정되지 않는다. 다른 실시예에 따라, 제1 방향 샘플링 정보(D1) 및 제2 방향 샘플링 정보(D2) 각각은 (0, -2.5) 및 (2.5, 0)일 수 있고, 또 다른 실시예에 따라, (0, -2.5) 및 (-2.5, 0)일 수 있고, 또 다른 실시예에 따라, (0, -2.5) 및 (-2.5, 0)일 수 있다. 그리고, 오프셋 정보(OFS)는 (1,1)일 수 있다. 이 경우, 상기 샘플링 방식에 의해 상기 이미지의 크기는 축소될 수 있다.
도 1 내지 도 3을 참조하여 상술한 바와 같이, 상기 제1 샘플링 방식은 상기 제1 포맷 이미지에 상응하고, 상기 제2 샘플링 방식은 상기 제2 포맷 이미지에 상응할 수 있다. 실시예에 따라, 상기 제1 샘플링 방식 및 상기 제2 샘플링 방식 각각은 상기 제1 포맷 이미지 및 상기 제2 포맷 이미지에 포함되는 복수의 픽셀들 중 일부의 픽셀들을 선택하는 방식을 의미할 수 있다. 이 경우 상기 제1 샘플링 방식은 상기 제1 포맷 이미지의 크기를 축소시키는 방식일 수 있고, 상기 제2 샘플링 방식은 상기 제2 포맷 이미지의 크기를 축소시키면서 동시에 형태를 변경하는 방식일 수 있다. 실시예에 따라, 상기 제1 샘플링 방식은 도 4a 또는 도 4c를 참조하여 상술한 샘플링 방식 중 어느 하나일 수 있고, 상기 제2 샘플링 방식은 도 4a, 도 4b, 또는 도 4c를 참조하여 상술한 샘플링 방식 중 어느 하나일 수 있다.
도 5는 도 2의 인공신경망 학습 장치에 포함되는 특징맵 제공부의 다른 실시예를 나타내는 블록도이다.
도 5에 도시된 특징맵 제공부(100a)는 특징맵 제공부(100a)에 포함되는 포맷 변환부(130a)가 샘플링 정보(SFI2)를 더 생성하고, 샘플링 정보(SFI2)를 샘플링부(150a)로 전송한다는 점을 제외하고는 도 3에 도시된 특징맵 제공부(100)와 유사한 기능을 수행하므로, 이하에서 중복되는 설명은 생략하기로 한다.
도 5를 참조하면, 특징맵 제공부(100a)는 포맷 변환부(130a) 및 샘플링부(150a)를 포함할 수 있고, 샘플링부(150a)는 제1 샘플러(152) 및 제2 샘플러(154)를 포함할 수 있다.
포맷 변환부(130a)는 입력되는 이미지(IDAT)로부터 제1 포맷 이미지(FM1) 및 제2 포맷 이미지(FM2)를 생성할 수 있다.
상기 제1 포맷 이미지(FM1)는 상기 이미지(IDAT)를 가공하여 얻어지는 이미지이고, 상기 제2 포맷 이미지(FM2)는 상기 이미지(IDAT) 또는 상기 제1 포맷 이미지를 가공하여 얻어지는 이미지일 수 있다.
상기 이미지는 RGB 이미지, YCbCr 이미지, 또는 YUV 이미지 중 어느 하나일 수 있다. 실시예에 따라, 상기 이미지가 RGB 이미지인 경우, 상기 제1 포맷 이미지는 R 이미지, G 이미지, 및 B 이미지를 포함할 수 있고, 상기 제2 포맷 이미지는 상기 RGB 이미지, 상기 R 이미지, 상기 G 이미지, 또는 상기 B 이미지 중 적어도 하나에 존재하는 에지를 검출한 에지 이미지일 수 있다.
포맷 변환부(130a)는 상기 제2 포맷 이미지(FM2)로부터 샘플링 정보(SFI2)를 생성할 수 있다. 샘플링 정보(SFI2)는 제2 샘플링 방식에 관한 정보를 포함할 수 있다. 즉, 포맷 변환부(130a)는 제2 포맷 이미지(FM2)를 제2 샘플링 방식으로 샘플링하기 위한 샘플링 정보(SFI2)를 생성할 수 있다.
이하에서, 포맷 변환부(130a)에 의해 생성되는 샘플링 정보(SFI2)에 따른 샘플링 방식에 관하여 보다 구체적으로 설명하기로 한다.
도 6은 포맷 변환부에 의해 생성되는 샘플링 정보에 따른 샘플링 방식의 일 실시예를 설명하기 위한 도면이다.
도 6에서는 샘플링 방식의 일 실시예를 설명하기 위한 이미지의 일부 영역(즉, 10X16 크기의 영역)이 도시되어 있다. 상기 이미지는 도 1 내지 도 3을 참조하여 상술한 제2 포맷 이미지(FM2)일 수 있다. 상기 이미지의 일부 영역은 복수의 픽셀들(즉, 사각형으로 표시되는 10X16개의 픽셀들)을 포함할 수 있고, 상기 복수의 픽셀들 중 별도의 표시가 부가되어 있는 일부의 픽셀들(즉, 내부에 내접하는 원이 중첩적으로 그려진 사각형으로 표시되는 픽셀들)은 상기 샘플링 방식에 따라 선택되는 일부의 픽셀들을 나타낸다. 나아가, 상기 복수의 픽셀들 중 별도의 표시가 부가되어 있는 일부의 픽셀들(즉, 내부가 채워져 있는 사각형으로 표시되는 픽셀들)(PEDG)은 상기 제2 포맷 이미지(FM2)에 존재하는 에지 픽셀들을 나타낸다.
상기 샘플링 방식이라 함은 상기 제2 포맷 이미지(FM2)에 포함되는 복수의 픽셀들 중 일부의 픽셀들을 미리 정해진 방식에 따라 선택하는 방식을 의미할 수 있다.
상기 샘플링 방식은 제1 방향 샘플링 정보(D1) 및 제2 방향 샘플링 정보(D2)를 포함할 수 있으나, 본 발명의 범위가 이에 한정되는 것은 아니다. 다른 실시예에 따라, 상기 샘플링 방식은 오프셋 정보(OFS)를 더 포함할 수도 있다.
제1 방향 샘플링 정보(D1), 제2 방향 샘플링 정보(D2), 및 오프셋 정보(OFS) 각각은 벡터 형식으로 표현될 수 있다. 이 경우, 상기 벡터 형식에 따른 벡터는 상기 샘플링 방식에 따라 선택되는 일부의 픽셀들의 상대적인 위치에 기초하여 결정될 수 있다.
도 6을 참조하면, 상기 샘플링 방식은 제1 방향 샘플링 정보(D1), 제2 방향 샘플링 정보(D2), 및 오프셋 정보(OFS)를 포함할 수 있다.
제1 방향 샘플링 정보(D1)는 제2 포맷 이미지(FM2)에 존재하는 에지 픽셀들(PEDG) 각각에 상응하는 기울기(gradient) 값에 기초하여 결정될 수 있다. 상기 기울기 값은 제2 포맷 이미지(FM2)에 미리 설정된 마스크를 적용하여 생성될 수 있고, 이 경우, 제2 포맷 이미지(FM2)에 적용되는 마스크는 소벨 마스크일 수 있다.
실시예에 따라, 제1 방향 샘플링 정보(D1)는 각 에지 픽셀(PEDG)로부터 미리 설정된 범위 내에 존재하는 에지 픽셀들(PEDG) 각각에 상응하는 기울기 값들을 수집하여 최대 빈도로 검출되는 기울기 값에 기초하여 결정될 수 있다.
실시예에 따라, 제2 방향 샘플링 정보(D2)는 각 에지 픽셀(PEDG)로부터 미리 설정된 범위 내에 존재하는 에지 픽셀들(PEDG) 각각에 상응하는 기울기 값들을 수집하여 최소 빈도로 검출되는 기울기 값에 기초하여 결정될 수 있다.
실시예에 따라, 제1 방향 샘플링 정보(D1) 및 제2 방향 샘플링 정보(D2) 각각은 (-4, 2) 및 (0, 3)일 수 있으나, 본 발명의 범위는 이에 한정되지 않는다. 다른 실시예에 따라, 제1 방향 샘플링 정보(D1) 및 제2 방향 샘플링 정보(D2) 각각은 (-4, 2) 및 (0, -3)일 수 있고, 또 다른 실시예에 따라, (4, -2) 및 (0, -3)일 수 있고, 또 다른 실시예에 따라, (4, -2) 및 (0, -3)일 수 있다. 이 경우, 상기 샘플링 방식에 의해 상기 이미지의 크기는 축소되고, 상기 이미지의 형태는 변경될 수 있다.
오프셋 정보(OFS)는 제1 방향 샘플링 정보(D1), 에지 픽셀들(PEDG), 및 에지 픽셀들(PEDG) 각각의 좌표값에 기초하여 결정될 수 있다. 실시예에 따라, 오프셋정보(OFS)는 제1 방향 샘플링 정보(D1)에 상응하는 기울기 값에 상응하는 에지 픽셀의 좌표값에 기초하여 결정될 수 있다.
도 7a, 도 7b, 도 7c, 및 도 8은 서로 다른 샘플링 방식이 적용될 수 있는 영역들을 설명하기 위한 도면들이다.
도 7a를 참조하면, 이미지(IDAT)의 전체 영역은 복수의 영역들(RGN1, RGN2, RGN3, 및 RGN4)을 포함할 수 있다.
복수의 영역들(RGN1, RGN2, RGN3, 및 RGN4) 각각의 모양과 크기는 동일하고, 복수의 영역들(RGN1, RGN2, RGN3, 및 RGN4) 각각은 중첩되는 영역을 포함하지 않는다.
실시예에 따라, 복수의 영역들(RGN1, RGN2, RGN3, 및 RGN4) 각각은 도 4a, 도 4b, 도 4c, 및 도 6을 참조하여 상술한 샘플링 방식 중 어느 하나로 샘플링 될 수 있다.
도 7b를 참조하면, 이미지(IDAT)의 전체 영역은 복수의 영역들(RGN1-1, RGN2-1, RGN3-1, 및 RGN4-1)을 포함할 수 있다.
복수의 영역들(RGN1-1, RGN2-1, RGN3-1, 및 RGN4-1) 각각의 모양은 동일하나 크기는 다르고, 복수의 영역들(RGN1-1, RGN2-1, RGN3-1, 및 RGN4-1) 각각은 중첩되는 영역을 포함하지 않는다.
실시예에 따라, 복수의 영역들(RGN1-1, RGN2-1, RGN3-1, 및 RGN4-1) 각각은 도 4a, 도 4b, 도 4c, 및 도 6을 참조하여 상술한 샘플링 방식 중 어느 하나로 샘플링 될 수 있다.
도 7c를 참조하면, 이미지(IDAT)의 전체 영역은 복수의 영역들(RGN1-2, RGN2-2, RGN3-2, 및 RGN4-2)을 포함할 수 있다.
복수의 영역들(RGN1-2, RGN2-2, RGN3-2, 및 RGN4-2) 각각의 모양은 동일하나 크기는 다르고, 복수의 영역들(RGN1-2, RGN2-2, RGN3-2, 및 RGN4-2) 각각은 중첩되는 영역을 포함할 수 있다.
실시예에 따라, 복수의 영역들(RGN1-2, RGN2-2, RGN3-2, 및 RGN4-2) 각각은 도 4a, 도 4b, 도 4c, 및 도 6을 참조하여 상술한 샘플링 방식 중 어느 하나로 샘플링 될 수 있다.
도 8을 참조하면, 이미지(IDAT)의 전체 영역은 복수의 영역들(RGN1-3, 및 RGN2-3)을 포함할 수 있다.
복수의 영역들(RGN1-3, 및 RGN2-3) 각각의 모양은 서로 다르고 크기도 다르며, 복수의 영역들(RGN1-3, 및 RGN2-3) 각각은 중첩되는 영역을 포함하지 않는다.
실시예에 따라, 복수의 영역들(RGN1-3, 및 RGN2-3) 각각은 도 4a, 도 4b, 도 4c, 및 도 6을 참조하여 상술한 샘플링 방식 중 어느 하나로 샘플링 될 수 있다.
도 7a, 도 7b, 도 7c, 및 도 8을 참조하여 상술한 복수의 영역들은 도 2 및 도 3에 도시된 샘플링부(150)에 의해 서로 다른 샘플링 방식으로 샘플링 될 수 있으나, 본 발명의 범위가 이에 한정되는 것은 아니다.
도 9는 본 발명의 다른 실시예에 따른 인공신경망 학습 장치를 나타내는 블록도이다. 도 10은 도 9의 인공신경망 학습 장치에 포함되는 특징맵 제공부의 일 실시예를 나타내는 블록도이다.
도 9 및 도 10을 참조하면, 인공신경망 학습 장치(1000a)는 특징맵 제공부(100a) 및 학습부(500a)를 포함할 수 있다. 특징맵 제공부(100a)는 포맷 변환부(130a) 및 샘플링부(150a)를 포함할 수 있고, 샘플링부(150a)는 제1 샘플러(152) 및 제2 샘플러(154)를 포함할 수 있다. 학습부(500a)는 손실함수 계산부(550)을 포함할 수 있다.
포맷 변환부(130a)는 입력되는 이미지(IDAT)로부터 제1 포맷 이미지(FM1) 및 제2 포맷 이미지(FM2)를 생성할 수 있다.
상기 제1 포맷 이미지(FM1)는 이미지(IDAT)를 가공하여 얻어지는 이미지이고, 상기 제2 포맷 이미지(FM2)는 이미지(IDAT) 또는 제1 포맷 이미지(FM1)를 가공하여 얻어지는 이미지일 수 있다.
샘플링부(150a)는 샘플링 방식에 관한 정보를 포함하는 샘플링 정보(SF1)를 외부로부터 수신할 수 있다.
샘플링 방식이라 함은, 제1 포맷 이미지(FM1) 및 제2 포맷 이미지(FM2)에 포함되는 복수의 픽셀들 중 일부의 픽셀들을 미리 정해진 방식에 따라 선택하는 방식을 의미할 수 있다.
샘플링 정보(SF1)는 제1 샘플링 방식 및 제2 샘플링 방식에 관한 정보를 포함할 수 있다. 실시예에 따라, 상기 제1 샘플링 방식은 상기 제1 포맷 이미지(FM1)에 상응하고, 상기 제2 샘플링 방식은 상기 제2 포맷 이미지(FM2)에 상응할 수 있다.
샘플링부(150a)는 상기 제1 샘플링 방식으로 상기 제1 포맷 이미지(FM1)를 샘플링하여 제1 특징맵을 생성하고, 상기 제2 샘플링 방식으로 제2 포맷 이미지(FM2)를 샘플링하여 제2 특징맵을 생성할 수 있다. 그리고, 상기 제1 특징맵 및 상기 제2 특징맵을 특징맵 데이터(FDAT)로서 출력할 수 있다.
상기 제1 특징맵은 제1 샘플러(152)에 의해 생성될 수 있고, 상기 제2 특징맵은 제2 샘플러(154)에 의해 생성될 수도 있다.
학습부(500)는 상기 제1 특징맵 및 상기 제2 특징맵을 이용하여 인공신경망을 학습시킬 수 있다.
손실함수 계산부(550)는 상기 학습의 결과로서 이미지(IDAT)와 이미지(IDAT)에 상응하는 레이블에 기초하여 오차를 계산할 수 있다.
손실함수 계산부(550)는 상기 오차의 계산을 위해 평균 제곱 오차(Mean Squared Error)(MSE) 또는 교차 엔트로피 오차(Cross Entropy Error)(CEE) 중 어느 하나를 사용할 수 있으나, 본 발명의 범위가 이에 한정되는 것은 아니다.
손실함수 계산부(550)는 상기 오차에 기초하여 오차 정보(LR)를 생성하고, 오차 정보(LR)를 특징맵 제공부(100a)로전송할 수 있다.
포맷 변환부(130a) 및 샘플링부(150a)는 특징맵 제공부(100a)로 전송된 오차 정보(LR)를 수신할 수 있다.
포맷 변환부(130a)는 오차 정보(LR)에 기초하여 입력되는 이미지(IDAT)로부터 제1 포맷 이미지(FM1) 및 제2 포맷 이미지(FM2)를 생성할 수 있다.
샘플링부(150a)는 오차 정보(LR)에 기초하여 상기 제1 샘플링 방식 및 상기 제2 샘플링방식을 변경할 수 있다.
샘플링부(150a)는 상기 변경된 제1 샘플링 방식으로 상기 제1 포맷 이미지(FM1)를 샘플링하여 제1 특징맵을 생성하고, 상기 변경된 제2 샘플링방식으로 제2 포맷 이미지(FM2)를 샘플링하여 제2 특징맵을 생성할 수 있다.
도 11, 도 12 및 도 13은 본 발명의 실시예들에 따른 스토리지 시스템에 의한 딥러닝의 수행에 이용되는 네트워크 구조의 예를 설명하기 위한 도면들이다.
도 11을 참조하면, 일반적인 인공 신경망의 네트워크 구조는 입력 레이어(IL), 복수의 히든 레이어들(HL1, HL2, ..., HLn) 및 출력 레이어(OL)를 포함할 수 있다.
입력 레이어(IL)는 i(i는 자연수)개의 입력 노드들(x1, x2, ..., xi)을 포함할 수 있고, 길이가 i인 벡터 입력 데이터(IDAT)가 각 입력 노드에 입력될 수 있다.
복수의 히든 레이어들(HL1, HL2, ..., HLn)은 n(n은 자연수)개의 히든 레이어들을 포함하며, 히든 노드들(h11, h12, h13, ..., h1m, h21, h22, h23, ..., h2m, hn1, hn2, hn3, ..., hnm)을 포함할 수 있다. 예를 들어, 히든 레이어(HL1)는 m(m은 자연수)개의 히든 노드들(h11, h12, h13, ..., h1m)을 포함할 수 있고, 히든 레이어(HL2)는 m개의 히든 노드들(h21, h22, h23, ..., h2m)을 포함할 수 있으며, 히든 레이어(HLn)는 m개의 히든 노드들(hn1, hn2, hn3, ..., hnm)을 포함할 수 있다.
출력 레이어(OL)는 분류할 클래스에 대응하는 j(j는 자연수)개의 출력 노드들(y1, y2, ..., yj)을 포함할 수 있고, 입력 데이터(IDAT)에 대하여 각 클래스 별로 결과(예를 들어, 점수 또는 class score)를 출력할 수 있다. 출력 레이어(OL)는fully connected 레이어라고 부를 수 있으며, 예를 들어 입력 데이터(IDAT)가 자동차에 대응할 확률을 수치로 나타낼 수 있다.
도 11에 도시된 네트워크 구조는, 두 개의 노드들 사이에 직선으로 도시된 노드들 간의 연결(branch)과, 도시되지는 않았지만 각 연결에서 사용되는 가중치(weight)를 포함할 수 있다. 이 때, 하나의 레이어 내의 노드들 간에는 연결이 되지 않을 수 있고, 서로 다른 레이어들에 포함되는 노드들은 완전하게 혹은 부분적으로 연결될 수 있다.
도 11의 각 노드(예를 들어, h11)는 이전 노드(예를 들어, x1)의 출력을 입력 받아 연산할 수 있고, 연산 결과를 이후 노드(예를 들어, h21)에 출력할 수 있다. 이 때, 각 노드는 입력된 값을 특정 함수, 예를 들어 비선형 함수에 적용하여 출력할 값을 연산할 수 있다.
일반적으로 신경망의 네트워크 구조는 미리 결정되어 있으며, 노드들 간의 연결에 따른 가중치들은 이미 어떤 클래스에 속할지 정답이 알려진 데이터를 이용하여 적절한 값을 산정하게 된다. 이와 같이 이미 정답이 알려진 데이터들을 '학습 데이터'라고 하고, 가중치를 결정하는 과정을 '학습'이라고 한다. 또한, 독립적으로 학습이 가능한 구조와 가중치의 묶음을 '모델'이라고 가정하고, 가중치가 결정된 모델이 입력 데이터가 어느 클래스에 속할지를 예측하여 그 예측값을 출력하는 것을 '테스트' 과정이라고 한다.
한편, 도 11에 도시된 일반적인 신경망은 각 노드(예를 들어, h11)가 앞쪽 레이어(previous layer)(예를 들어, IL)의 모든 노드들(예를 들어, x1, x2, ..., xi)과 연결되어 있어, 입력 데이터(IDAT)가 영상(또는 음성)인 경우에 영상의 크기가 증가할수록 필요한 가중치의 개수가 기하급수적으로 증가하며, 따라서 영상을 다루기에 적절하지 않을 수 있다. 이에 따라, 신경망에 필터 기술을 병합하여, 신경망이 2차원 영상을 잘 습득할 수 있도록 구현된 컨볼루션(convolutional) 신경망이 연구되고 있다.
도 12를 참조하면, 컨볼루션 신경망의 네트워크 구조는 복수의 레이어들(CONV1, RELU1, CONV2, RELU2, POOL1, CONV3, RELU3, CONV4, RELU4, POOL2, CONV5, RELU5, CONV6, RELU6, POOL3, FC)을 포함할 수 있다.
일반적인 신경망과 다르게, 컨볼루션 신경망의 각 레이어는 가로(또는 폭, width), 세로(또는 높이, height), 깊이(depth)의 3개의 차원을 가질 수 있다. 이에 따라, 각 레이어에 입력되는 데이터 또한 가로, 세로, 깊이의 3개의 차원을 가지는 볼륨 데이터일 수 있다. 예를 들어, 도 3b에서 입력 영상이 가로 32, 세로 32의 크기를 가지고 세 개의 컬러 채널(R, G, B)을 가지는 경우에, 상기 입력 영상에 대응하는 입력 데이터(IDAT)는 32*32*3의 크기를 가질 수 있다. 도 14b의 입력 데이터(IDAT)는 입력 볼륨 데이터 또는 입력 액티베이션 볼륨(activation volume)이라 부를 수 있다.
컨볼루션 레이어들(CONV1, CONV2, CONV3, CONV4, CONV5, CONV6)은 입력에 대한 컨볼루션 연산을 수행할 수 있다. 영상 처리에서 컨볼루션이란 가중치를 갖는 마스크를 이용하여 데이터를 처리하는 것을 의미할 수 있으며, 입력 값과 마스크의 가중치를 곱한 후에 그 합을 출력 값으로 정하는 것을 나타낼 수 있다. 이 때, 마스크를 필터(filter), 윈도우(window) 또는 커널(kernel)이라고 부를 수 있다.
구체적으로, 각 컨볼루션 레이어의 파라미터들은 일련의 학습 가능한 필터들로 이루어져 있을 수 있다. 각 필터는 가로/세로 차원으로는 각 레이어의 전체 크기보다 작지만 깊이 차원으로는 각 레이어의 전체 깊이를 아우를 수 있다. 예를 들어, 각 필터를 입력 볼륨의 가로/세로 차원으로 슬라이딩(정확히는 convolve) 시키며 필터와 입력의 요소들 사이의 내적 연산(dot product)을 수행하여 2차원의 액티베이션 맵(activation map)을 생성할 수 있고, 이러한 액티베이션 맵을 깊이 차원을 따라 쌓아서 출력 볼륨을 생성할 수 있다. 예를 들어, 컨볼루션 레이어(CONV1)가 32*32*3의 크기의 입력 볼륨 데이터(IDAT)에 네 개의 필터들을 제로 패딩(zero-padding)과 함께 적용하면, 컨볼루션 레이어(CONV1)의 출력 볼륨은 32*32*12의 크기를 가질 수 있다 (즉, 깊이 증가).
RELU 레이어들(RELU1, RELU2, RELU3, RELU4, RELU5, RELU6)은 입력에 대한 정정 선형 유닛 연산을 수행할 수 있다. 예를 들어, 정정 선형 유닛 연산은 max(0, x)와 같이 음수에 대해서만 0으로 처리하는 함수를 나타낼 수 있다. 예를 들어, RELU 레이어(RELU1)가 컨볼루션 레이어(CONV1)로부터 제공된 32*32*12의 크기의 입력 볼륨에 정정 선형 유닛 연산을 수행하면, RELU 레이어(RELU1)의 출력 볼륨은 32*32*12의 크기를 가질 수 있다 (즉, 볼륨 유지).
풀링 레이어들(POOL1, POOL2, POOL3)은 입력 볼륨의 가로/세로 차원에 대해 다운 샘플링을 수행할 수 있다. 예를 들어, 2*2 필터를 적용하는 경우에 2*2 영역의 네 개의 입력들을 하나의 출력으로 변환할 수 있다. 구체적으로, 2*2 최대 값 풀링과 같이 2*2 영역의 네 개의 입력들 중 최대 값을 선택하거나, 2*2 평균 값 풀링과 같이 2*2 영역의 네 개의 입력들의 평균 값을 연산할 수 있다. 예를 들어, 풀링 레이어(POOL1)가 32*32*12의 크기의 입력 볼륨에 2*2 필터를 적용하면, 풀링 레이어(POOL1)의 출력 볼륨은 16*16*12의 크기를 가질 수 있다 (즉, 가로/세로 감소, 깊이 유지, 볼륨 감소).
일반적으로 컨볼루션 신경망에서는 하나의 컨볼루션 레이어(예를 들어, CONV1)와 하나의 RELU 레이어(예를 들어, RELU1)가 한 쌍을 형성할 수 있고, 컨볼루션/RELU 레이어들의 쌍이 반복 배치될 수 있으며, 컨볼루션/RELU 레이어들의 쌍이 반복 배치되는 중간 중간에 풀링 레이어를 삽입함으로써, 영상을 줄여나가면서 영상의 특징을 추출할 수 있다.
출력 레이어 또는 fully connected 레이어(FC)는 입력 볼륨 데이터(IDAT)에 대하여 각 클래스 별로 결과를 출력할 수 있다. 예를 들어, 컨볼루션 및 서브 샘플링을 반복 수행함에 따라 2차원 영상에 대응하는 입력 볼륨 데이터(IDAT)가 1차원 행렬(또는 벡터)로 변환될 수 있다. 예를 들어, fully connected 레이어(FC)는 입력 볼륨 데이터(IDAT)가 자동차(CAR), 트럭(TRUCK), 비행기(AIRPLANE), 배(SHIP), 말(HORSE)에 대응할 확률을 수치로 나타낼 수 있다.
한편, 도시하지는 않았으나, 컨볼루션 신경망에 포함되는 레이어들의 종류 및 개수는 실시예에 따라서 다양하게 변경될 수 있다. 또한, 도시하지는 않았으나, 실시예에 따라서 컨볼루션 신경망은 예측된 결과인 점수(score) 값을 확률 값으로 변환하는 Softmax 레이어, 바이어스(bias)를 추가하는 Bias add 레이어 등을 더 포함할 수 있다.
도 13을 참조하면, 회귀 신경망의 네트워크 구조는 도 13의 좌측에 도시된 특정 노드(N) 또는 셀을 이용한 반복 구조를 포함할 수 있다.
도 13의 우측에 도시된 구조는 좌측에 도시된 회귀 신경망의 반복적인 연결이 펼쳐진(UNFOLD) 것을 나타내며, 회귀 신경망을 "펼친다"는 것은 네트워크를 모든 노드들(NA, NB, NC)을 포함하는 전체 시퀀스에 대해 도시한 것일 수 있다. 예를 들어, 관심 있는 시퀀스 정보가 3개의 단어로 이루어진 문장이라면, 회귀 신경망은 한 단어당 하나의 계층(layer)씩 (recurrent 연결이 없는, 또는 사이클이 없는) 3-layer 신경망 구조로 펼쳐질 수 있다.
회귀 신경망에서, X는 회귀 신경망의 입력값을 나타낸다. 예를 들어, Xt는 시간 스텝(time step) t에서의 입력값이며, Xt-1 및 Xt+1 역시 각각 시간 스텝 t-1 및 t+1에서의 입력값일 수 있다.
회귀 신경망에서, S는 히든 상태(hidden state)를 나타낸다. 예를 들어, St는 시간 스텝 t에서의 히든 상태이며, St-1 및 St+1도 역시 각각 시간 스텝 t-1 및 t+1에서의 히든 상태일 수 있다. 히든 상태는 이전 시간 스텝의 히든 상태 값과 현재 시간 스텝의 입력값에 의해 계산될 수 있다. 예를 들어, St=f(UXt+WSt-1)일 수 있고, 이 때 비선형 함수 f는 tanh나 ReLU가 사용될 수 있으며, 최초의 히든 상태를 계산하기 위한 S-1은 보통 0으로 초기화시킬 수 있다.
회귀 신경망에서, O는 시간 스텝 t에서의 출력값을 나타낸다. 예를 들어, Ot는 시간 스텝 t에서의 출력값이며, Ot-1 및 Ot+1 역시 각각 시간 스텝 t-1 및 t+1에서의 출력값일 수 있다. 예를 들어, 문장에서 다음 단어를 추측하고 싶다면 단어 수만큼의 차원의 확률 벡터가 될 것이다. 예를 들어, Ot=softmax(VSt)일 수 있다.
회귀 신경망에서, 히든 상태는 네트워크의 "메모리" 부분일 수 있다. 다시 말하면, 회귀 신경망은 현재까지 계산된 결과에 대한 "메모리" 정보를 갖고 있다고 볼 수 있다. St는 과거의 시간 스텝들에서 일어난 일들에 대한 정보를 전부 담고 있고, 출력값 Ot는 오로지 현재 시간 스텝 t의 메모리에만 의존할 수 있다. 또한, 각 계층마다의 파라미터 값들이 전부 다른 기존의 신경망 구조와 달리, 회귀 신경망은 모든 시간 스텝에 대해 파라미터 값(도 5c의 U, V, W)을 전부 공유하고 있다. 이는 회귀 신경망이 각 스텝마다 입력값만 다를 뿐 거의 똑같은 계산을 하고 있음을 나타내며, 학습해야 하는 파라미터 수를 감소시킬 수 있다.
일 실시예에서, 영상 분류(image classify) 서비스, 생체 정보에 기초한 사용자 인증(authentication) 서비스, 운전 보조 시스템(advanced driver assistance system; ADAS) 서비스, 음성 보조(voice assistant) 서비스, 자동 음성 인식(automatic speech recognition; ASR) 서비스 등과 같은 다양한 서비스 및/또는 어플리케이션이 도 14a, 14b 및 14c를 참조하여 상술한 신경망 시스템에 의해 실행 및 처리될 수 있다.
도 14는 본 발명의 실시예들에 따른 전자 시스템을 나타내는 블록도이다.
도 14를 참조하면, 전자 시스템(4000)은 프로세서(4100), 통신 모듈(4200), 디스플레이/터치 모듈(4300), 스토리지 장치(4400) 및 메모리 장치(4500)를 포함한다. 예를 들어, 전자 시스템(4000)은 임의의 모바일 시스템 또는 컴퓨팅 시스템일 수 있다.
프로세서(4100)는 전자 시스템(4000)의 전반적인 동작을 제어한다. 프로세서(4100)는 운영 체제, 어플리케이션 등을 실행할 수 있다. 통신 모듈(4200)은 외부와의 유선 통신 및/또는 무선 통신을 제어하도록 구현될 수 있다. 디스플레이/터치 모듈(4300)은 프로세서(4100)에서 처리된 데이터를 디스플레이 하거나, 터치 패널로부터 데이터를 입력 받도록 구현될 수 있다. 스토리지 장치(4400)는 사용자의 데이터를 저장할 수 있다. 메모리 장치(4500)는 전자 시스템(4000)의 처리 동작 시 필요한 데이터를 임시로 저장할 수 있다. 프로세서(4100)는 도 2에 인공신경망 학습 장치(1000)에 대응할 수 있다.
이상 설명한 바와 같이, 본 발명의 실시예들에 따른 인공신경망의 학습 방법 및 학습 장치는 입력되는 이미지로부터 제1 포맷 이미지 및 제2 포맷 이미지를 생성할 수 있다. 그리고, 상기 제1 포맷 이미지는 제1 샘플링 방식으로 샘플링하고, 상기 제2 포맷 이미지는 상기 제1 샘플링 방식과는 다른 제2 샘플링 방식으로 샘플링함으로써 다양한 특징맵들을 생성할 수 있고, 상기 특징맵들을 이용하여 인공신경망을 학습시킬 수 있다. 그 결과, 상기 인공신경망의 특정 패턴에 대한 인식률을 높일 수 있다.
해당 기술 분야의 숙련된 당업자는 본 발명의 실시예들이 시스템, 방법, 컴퓨터로 판독 가능한 매체에 저장된 컴퓨터로 판독 가능한 프로그램 코드를 포함하는 제품 등의 형태로 구현될 수 있음을 이해할 것이다. 상기 컴퓨터로 판독 가능한 프로그램 코드는 다양한 컴퓨터 또는 다른 데이터 처리 장치의 프로세서로 제공될 수 있다. 상기 컴퓨터로 판독 가능한 매체는 컴퓨터로 판독 가능한 신호 매체 또는 컴퓨터로 판독 가능한 기록 매체일 수 있다. 상기 컴퓨터로 판독 가능한 기록 매체는 명령어 실행 시스템, 장비 또는 장치 내에 또는 이들과 접속되어 프로그램을 저장하거나 포함할 수 있는 임의의 유형적인 매체일 수 있다.
본 발명의 실시예들은 인공신경망을 학습하는 학습 방법 및 학습 장치에서 유용하게 이용될 수 있다. 예를 들어, 본 발명의 실시예들은 메모리 카드, 솔리드 스테이트 드라이브(Solid State Drive; SSD), 임베디드 멀티미디어 카드(eMMC, embedded multimedia card), 유니버셜 플래시 스토리지(UFS, universal flash storage), 컴퓨터(computer), 노트북(laptop), 핸드폰(cellular phone), 스마트폰(smart phone), MP3 플레이어, 피디에이(Personal Digital Assistants; PDA), 피엠피(Portable Multimedia Player; PMP), 디지털 TV, 디지털 카메라, 포터블 게임 콘솔(portable game console), 네비게이션(navigation) 기기, 웨어러블(wearable) 기기, IoT(internet of things;) 기기, IoE(internet of everything:) 기기, e-북(e-book), VR(virtual reality) 기기, AR(augmented reality) 기기 등과 같은 전자시스템에 더욱 유용하게 적용될 수 있다.
상기에서는 본 발명이 바람직한 실시예를 참조하여 설명하였지만, 해당 기술분야의 숙련된 당업자는 하기의 특허청구범위에 기재된 본 발명의 사상 및 영역으로부터 벗어나지 않는 범위 내에서 본 발명을 다양하게 수정 및 변경시킬 수 있음을 이해할 것이다.

Claims (10)

  1. 입력되는 이미지로부터 제1 포맷 이미지 및 제2 포맷 이미지를 생성하는 포맷 변환부
    제1 샘플링 방식으로 상기 제1 포맷 이미지를 샘플링하여 제1 특징맵을 생성하고, 상기 제1 샘플링 방식과는 다른 제2 샘플링 방식으로 상기 제2 포맷 이미지를 샘플링하여 제2 특징맵을 생성하는 샘플링부 및
    상기 제1 특징맵 및 상기 제2 특징맵을 이용하여 인공신경망을 학습시키는 학습부를 포함하는, 인공신경망의 학습 장치.
  2. 제1 항에 있어서,
    상기 제1 포맷 이미지는 상기 이미지가 RGB 이미지인 경우, R(Red) 이미지, G(Green) 이미지, 및B(Blue) 이미지를 포함하고,
    상기 제2 포맷 이미지는 상기 이미지 또는 상기 제1 포맷 이미지에 포함되는 이미지들 중 어느 하나에 존재하는 에지를 검출한 에지 이미지인 것을 특징으로 하는 인공신경망의 학습 장치.
  3. 제2 항에 있어서,
    상기 에지 이미지는 상기 이미지 또는 상기 제1 포맷 이미지에 포함되는 이미지들에 대하여 미리 설정된 마스크를 적용하여 생성되는 것을 특징으로 하는 인공신경망의 학습 장치.
  4. 제1 항에 있어서,
    제1 샘플링 방식 및 제2 샘플링 방식 각각은,
    제1 방향 샘플링 정보, 제2 방향 샘플링 정보, 및 오프셋 정보를 포함하는 것을 특징으로 하는 인공신경망의 학습 장치.
  5. 제1 항에 있어서,
    상기 제1 샘플링 방식은 상기 제1 포맷 이미지에 포함되는 복수의 픽셀들 중 일부의 픽셀들을 선택하는 방식이고,
    상기 제2 샘플링 방식은 상기 제2 포맷 이미지에 포함되는 복수의 픽셀들 중 일부의 픽셀들을 선택하는 방식인 것을 특징으로 하는 인공신경망의 학습 장치.
  6. 제1 항에 있어서,
    상기 제1 샘플링 방식은 상기 제1 포맷 이미지의 크기를 축소시키는 방식이고, 상기 제2 샘플링 방식은 상기 제2 포맷 이미지의 크기를 축소시키면서 상기 제2 포맷 이미지의 형태를 변경하는 방식인 것을 특징으로 하는 인공신경망의 학습 장치.
  7. 제1 항에 있어서,
    상기 포맷 변환부는 상기 제2 샘플링 방식으로 상기 제2 포맷 이미지를 샘플링하기 위한 샘플링 정보를 생성하고,
    상기 샘플링 정보는
    제1 방향 샘플링 정보, 제2 방향 샘플링 정보, 및 오프셋 정보를 포함하고,
    상기 샘플링 정보는 벡터 형식인 것을 특징으로 하는 인공신경망의 학습 장치.
  8. 제7 항에 있어서,
    상기 제1 방향 샘플링 정보는 상기 제2 포맷 이미지에 존재하는 에지 픽셀들 각각에 상응하는 기울기(gradient) 값에 기초하여 결정되는 것을 특징으로 하는 인공신경망의 학습 장치.
  9. 제8 항에 있어서, 상기 제1 방향 샘플링 정보는
    상기 에지 픽셀들 각각으로부터 미리 설정된 범위 내에 존재하는 에지 픽셀들 각각에 상응하는 기울기 값들을 수집하여 최대 빈도로 검출되는 기울기 값에 기초하여 결정되는 것을 특징으로 하는 인공신경망의 학습 장치.
  10. 제1 항에 있어서, 상기 이미지는 복수의 영역들을 포함하고,
    상기 샘플링부는 상기 복수의 영역들 각각을 서로 다른 샘플링 방식으로 샘플링하는 것을 특징으로 하는 인공신경망의 학습 장치.
KR1020200024485A 2020-02-27 2020-02-27 인공신경망의 학습 방법 및 장치 KR20210109327A (ko)

Priority Applications (2)

Application Number Priority Date Filing Date Title
KR1020200024485A KR20210109327A (ko) 2020-02-27 2020-02-27 인공신경망의 학습 방법 및 장치
US17/021,398 US11436432B2 (en) 2020-02-27 2020-09-15 Method and apparatus for artificial neural network

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
KR1020200024485A KR20210109327A (ko) 2020-02-27 2020-02-27 인공신경망의 학습 방법 및 장치

Publications (1)

Publication Number Publication Date
KR20210109327A true KR20210109327A (ko) 2021-09-06

Family

ID=77463975

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1020200024485A KR20210109327A (ko) 2020-02-27 2020-02-27 인공신경망의 학습 방법 및 장치

Country Status (2)

Country Link
US (1) US11436432B2 (ko)
KR (1) KR20210109327A (ko)

Families Citing this family (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US11366624B2 (en) * 2020-03-30 2022-06-21 Kyocera Document Solutions Inc. Super-resolution convolutional neural network with gradient image detection
KR102514512B1 (ko) * 2022-09-28 2023-03-27 주식회사 젠젠에이아이 경량화된 이미지 처리 방법 및 장치

Family Cites Families (14)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US7593561B2 (en) 2005-01-04 2009-09-22 Carestream Health, Inc. Computer-aided detection of microcalcification clusters
US8442321B1 (en) 2011-09-14 2013-05-14 Google Inc. Object recognition in images
US9275282B2 (en) * 2012-10-30 2016-03-01 Qualcomm Incorporated Processing and managing multiple maps for an LCI
US10298859B2 (en) 2013-11-01 2019-05-21 Flir Systems Ab Enhanced visual representation of infrared data values
US9928410B2 (en) 2014-11-24 2018-03-27 Samsung Electronics Co., Ltd. Method and apparatus for recognizing object, and method and apparatus for training recognizer
US9965719B2 (en) 2015-11-04 2018-05-08 Nec Corporation Subcategory-aware convolutional neural networks for object detection
WO2018052586A1 (en) 2016-09-14 2018-03-22 Konica Minolta Laboratory U.S.A., Inc. Method and system for multi-scale cell image segmentation using multiple parallel convolutional neural networks
US10339421B2 (en) * 2017-03-30 2019-07-02 Toyota Motor Engineering & Manufacturing North America, Inc. RGB-D scene labeling with multimodal recurrent neural networks
US11212539B2 (en) 2017-07-28 2021-12-28 Nvidia Corporation Efficient lossless compression of captured raw image information systems and methods
CN107527069A (zh) 2017-08-22 2017-12-29 京东方科技集团股份有限公司 图像处理方法、装置、电子设备及计算机可读介质
CN110555800A (zh) * 2018-05-30 2019-12-10 北京三星通信技术研究有限公司 图像处理装置及方法
KR20210001324A (ko) * 2019-06-27 2021-01-06 삼성전자주식회사 인공 신경망 모델 및 이를 포함하는 전자 장치
EP4094194A1 (en) * 2020-01-23 2022-11-30 Umnai Limited An explainable neural net architecture for multidimensional data
CN111310074B (zh) * 2020-02-13 2023-08-18 北京百度网讯科技有限公司 兴趣点的标签优化方法、装置、电子设备和计算机可读介质

Also Published As

Publication number Publication date
US11436432B2 (en) 2022-09-06
US20210271927A1 (en) 2021-09-02

Similar Documents

Publication Publication Date Title
CN110599492B (zh) 图像分割模型的训练方法、装置、电子设备及存储介质
EP3933693B1 (en) Object recognition method and device
WO2021249255A1 (zh) 一种基于RP-ResNet网络的抓取检测方法
US11651214B2 (en) Multimodal data learning method and device
CN106649542A (zh) 用于视觉问答的系统和方法
CN111178211A (zh) 图像分割方法、装置、电子设备及可读存储介质
CN111914997B (zh) 训练神经网络的方法、图像处理方法及装置
CN113705769A (zh) 一种神经网络训练方法以及装置
CN112036260B (zh) 一种自然环境下多尺度子块聚合的表情识别方法及系统
CN113870335A (zh) 一种基于多尺度特征融合的单目深度估计方法
CN113449700B (zh) 视频分类模型的训练、视频分类方法、装置、设备及介质
US20220108545A1 (en) Method and device for high-speed image recognition using 3d cnn
KR20210109327A (ko) 인공신경망의 학습 방법 및 장치
KR20210059576A (ko) 인공 지능 기반의 영상 처리 방법 및 이를 수행하는 영상 처리 장치
CN111179272A (zh) 一种面向道路场景的快速语义分割方法
US20050185834A1 (en) Method and apparatus for scene learning and three-dimensional tracking using stereo video cameras
CN113762039A (zh) 一种交通标志牌的信息匹配方法及相关装置
CN115294337B (zh) 训练语义分割模型的方法、图像语义分割方法及相关装置
CN111179212A (zh) 集成蒸馏策略和反卷积的微小目标检测片上实现方法
CN114638408A (zh) 一种基于时空信息的行人轨迹预测方法
CN114267062A (zh) 模型训练方法、电子设备和计算机可读存储介质
CN112183336A (zh) 表情识别模型训练方法、装置、终端设备及存储介质
CN111104929A (zh) 基于3d卷积和spp的多模态动态手势识别方法
WO2023061465A1 (en) Methods, systems, and media for computer vision using 2d convolution of 4d video data tensors
CN117197208A (zh) 图像处理方法、装置、电子设备及计算机可读存储介质