KR20190055447A - 연산 가속화가 적용된 신경망 모델의 생성 및 활용을 위한 장치 및 방법 - Google Patents

연산 가속화가 적용된 신경망 모델의 생성 및 활용을 위한 장치 및 방법 Download PDF

Info

Publication number
KR20190055447A
KR20190055447A KR1020170152180A KR20170152180A KR20190055447A KR 20190055447 A KR20190055447 A KR 20190055447A KR 1020170152180 A KR1020170152180 A KR 1020170152180A KR 20170152180 A KR20170152180 A KR 20170152180A KR 20190055447 A KR20190055447 A KR 20190055447A
Authority
KR
South Korea
Prior art keywords
data
unit
neural network
network model
matrix
Prior art date
Application number
KR1020170152180A
Other languages
English (en)
Other versions
KR102095335B1 (ko
Inventor
황성수
김봉모
박정환
홍석진
Original Assignee
에스케이텔레콤 주식회사
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by 에스케이텔레콤 주식회사 filed Critical 에스케이텔레콤 주식회사
Priority to KR1020170152180A priority Critical patent/KR102095335B1/ko
Publication of KR20190055447A publication Critical patent/KR20190055447A/ko
Application granted granted Critical
Publication of KR102095335B1 publication Critical patent/KR102095335B1/ko

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06NCOMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
    • G06N3/00Computing arrangements based on biological models
    • G06N3/02Neural networks
    • G06N3/08Learning methods
    • G06N3/084Backpropagation, e.g. using gradient descent
    • 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

Abstract

본 발명의 일 실시예에 따른 연산 가속화가 적용된 신경망 모델을 생성하는 서버 장치는, 학습용 데이터를 복수의 단위 데이터로 분할하는 데이터 분할부, 상기 각 단위 데이터를, 소정의 분류 기준에 따라 복수의 그룹 중 하나의 그룹에 속하도록 분류하고, 상기 복수의 그룹 중 같은 그룹에 속하는 단위 데이터를 동일한 값을 갖는 변환 데이터로 변환하는 전처리부, 상기 변환 데이터로 구성된 데이터 행렬(matrix)에, 소정의 차원을 갖는 행렬인 특징 추출 필터를 적용하여 합성곱(convolution) 연산을 수행한 결과 및 상기 학습용 데이터에 포함된 정보 간의 관계에 기초하여 신경망 모델을 생성하는 모델 생성부 및 상기 데이터 행렬의 일부인 부분 행렬과, 상기 합성곱 연산 중 상기 부분 행렬에 대해 수행된 연산의 결과가 서로 매칭되어 저장됨으로써, 상기 신경망 모델을 통해 상기 학습용 데이터와는 다른 인식 대상 데이터에 포함된 정보를 인식하는 데 이용되는 연산 테이블을 생성하는 테이블 생성부를 포함할 수 있다.

Description

연산 가속화가 적용된 신경망 모델의 생성 및 활용을 위한 장치 및 방법 {APPARATUS AND METHOD FOR GENERATING AND USING NEURAL NETWORK MODEL APPLYING ACCELERATED COMPUTATION}
본 발명은 합성곱 신경망(convolution neural network, CNN) 모델을 이용하여 영상(image) 데이터와 같은 인식 대상 데이터를 인식하는 데 있어서, 연산량을 줄임으로써 인식의 속도를 향상시키기 위한 장치 및 방법에 관한 것이다.
영상 데이터 혹은 텍스트 데이터 등의 인식 대상 데이터를 자동으로 분석하여, 상기 인식 대상 데이터를 유형별로 분류하거나 상기 인식 대상 데이터에 포함된 정보를 추출해 내는 기술이 인공 지능(artificial intelligence, AI) 기술의 일종으로서 최근 각광받고 있다. 이와 같은 기술은 단순히 영상 데이터 내의 객체의 종류를 인식하는 것에 그치지 않고, 자율 주행, 의료 영상 판독, 보안 시스템 등 다양한 분야에서 이용될 수 있다.
특히 최근에는 딥 러닝(deep learning)과 같은 기계 학습(machine learning) 기법이 데이터 인식 기술에 적용되고 있다. 이와 같은 딥 러닝 기법 중 널리 알려진 합성곱 신경망 기법은 영상 데이터 인식에 있어 높은 성능을 보이고 있다.
다만, 합성곱 신경망 기법을 이용하여 인식 대상 데이터에 포함된 정보를 인식하는 과정에서는, 곱셈과 덧셈의 조합으로 이루어지는 합성곱(convolution) 연산이 다수 회 수행된다. 이와 같이 거듭되어 수행되는 방대한 연산량의 합성곱 연산은 합성곱 신경망 기법을 통한 데이터 인식에 걸림돌로 작용할 수 있다. 특히, 앞서 언급한 자율 주행과 같이 신속한 연산이 중요한 영상 데이터 인식 분야에 있어서는, 합성곱 연산에 소요되는 시간은 큰 문제가 될 수 있다.
한국공개특허공보, 제 10-2016-0122452 호 (2016.10.24. 공개)
본 발명이 해결하고자 하는 과제는, 합성곱 신경망 모델을 이용한 인식 대상 데이터의 인식 작업의 속도를 향상시키기 위한 장치 및 방법을 제공하는 것이다.
다만, 본 발명이 해결하고자 하는 과제는 이상에서 언급한 것으로 제한되지 않으며, 언급되지 않은 또 다른 해결하고자 하는 과제는 아래의 기재로부터 본 발명이 속하는 통상의 지식을 가진 자에게 명확하게 이해될 수 있을 것이다.
본 발명의 일 실시예에 따른 연산 가속화가 적용된 신경망 모델을 생성하는 서버 장치는, 학습용 데이터를 복수의 단위 데이터로 분할하는 데이터 분할부, 상기 각 단위 데이터를, 소정의 분류 기준에 따라 복수의 그룹 중 하나의 그룹에 속하도록 분류하고, 상기 복수의 그룹 중 같은 그룹에 속하는 단위 데이터를 동일한 값을 갖는 변환 데이터로 변환하는 전처리부, 상기 변환 데이터로 구성된 데이터 행렬(matrix)에, 소정의 차원(dimension)을 갖는 행렬인 특징 추출 필터를 적용하여 합성곱(convolution) 연산을 수행한 결과 및 상기 학습용 데이터에 포함된 정보 간의 관계에 기초하여 신경망 모델을 생성하는 모델 생성부 및 상기 데이터 행렬의 일부인 부분 행렬과, 상기 합성곱 연산 중 상기 부분 행렬에 대해 수행된 연산의 결과가 서로 매칭되어 저장됨으로써, 상기 신경망 모델을 통해 상기 학습용 데이터와는 다른 인식 대상 데이터에 포함된 정보를 인식하는 데 이용되는 연산 테이블을 생성하는 테이블 생성부를 포함할 수 있다.
본 발명의 일 실시예에 따른 연산 가속화가 적용된 신경망 모델을 이용하는 서버 장치는, 인식 대상 데이터를, 소정의 분할 기준에 따라 복수의 대상 단위 데이터로 분할하는 데이터 분할부, 상기 각 대상 단위 데이터를, 소정의 분류 기준에 따라 복수의 그룹 중 하나의 그룹에 속하도록 분류하고, 상기 복수의 그룹 중 같은 그룹에 속하는 대상 단위 데이터를 동일한 값을 갖는 변환 데이터로 변환하는 데이터 변환부 및 상기 변환 데이터로 구성된 대상 데이터 행렬에, 소정의 차원을 갖는 행렬인 특징 추출 필터를 적용하여 상기 인식 대상 데이터의 특징을 추출함으로써 상기 인식 대상 데이터에 포함된 정보를 인식하되, 상기 대상 데이터 행렬의 일부인 대상 부분 행렬과 동일한 원소를 갖는 행렬과 상기 특징 추출 필터 간에 기 수행된 합성곱 연산의 결과가 기 저장된 연산 테이블로부터 상기 대상 부분 행렬과 상기 특징 추출 필터 간의 합성곱 연산의 결과를 획득하는 대상 인식부를 포함할 수 있다.
본 발명의 일 실시예에 따른 연산 가속화가 적용된 신경망 모델을 생성하기 위한 방법은, 학습용 데이터를 복수의 단위 데이터로 분할하는 단계, 상기 각 단위 데이터를, 소정의 분류 기준에 따라 복수의 그룹 중 하나의 그룹에 속하도록 분류하고, 상기 복수의 그룹 중 같은 그룹에 속하는 단위 데이터를 동일한 값을 갖는 변환 데이터로 변환하는 단계, 상기 변환 데이터로 구성된 데이터 행렬에, 소정의 차원을 갖는 행렬인 특징 추출 필터를 적용하여 합성곱 연산을 수행한 결과 및 상기 학습용 데이터에 포함된 정보 간의 관계에 기초하여 신경망 모델을 생성하는 단계 및 상기 데이터 행렬의 일부인 부분 행렬과, 상기 합성곱 연산 중 상기 부분 행렬에 대해 수행된 연산의 결과가 서로 매칭되어 저장됨으로써, 상기 신경망 모델을 통해 상기 학습용 데이터와는 다른 인식 대상 데이터에 포함된 정보를 인식하는 데 이용되는 연산 테이블을 생성하는 단계를 포함할 수 있다.
본 발명의 일 실시예에 따른 연산 가속화가 적용된 신경망 모델을 이용한 데이터 인식 방법은, 인식 대상 데이터를, 소정의 분할 기준에 따라 복수의 대상 단위 데이터로 분할하는 단계, 상기 각 대상 단위 데이터를, 소정의 분류 기준에 따라 복수의 그룹 중 하나의 그룹에 속하도록 분류하고, 상기 복수의 그룹 중 같은 그룹에 속하는 대상 단위 데이터를 동일한 값을 갖는 변환 데이터로 변환하는 단계 및 상기 변환 데이터로 구성된 대상 데이터 행렬에, 소정의 차원을 갖는 행렬인 특징 추출 필터를 적용하여 상기 인식 대상 데이터의 특징을 추출함으로써 상기 인식 대상 데이터에 포함된 정보를 인식하되, 상기 대상 데이터 행렬의 일부인 대상 부분 행렬과 동일한 원소를 갖는 행렬과 상기 특징 추출 필터 간에 기 수행된 합성곱 연산의 결과가 기 저장된 연산 테이블로부터 상기 대상 부분 행렬과 상기 특징 추출 필터 간의 합성곱 연산의 결과를 획득하는 단계를 포함할 수 있다.
본 발명의 일 실시예에 따르면, 합성곱 신경망 모델 생성 과정에서 입력 가능한 모든 데이터와 합성곱 신경망 간의 연산을 미리 수행하여 연산 테이블에 저장해 놓고, 인식 대상 데이터를 인식하는데 이를 이용할 수 있다. 이로써 인식 과정에서의 연산의 중복 수행이 방지될 수 있으며, 결과적으로 연산량이 획기적으로 줄어들어 신경망 모델을 이용하는 시스템의 효율이 증대될 수 있다.
특히, 본 발명의 일 실시예에 의하면, 신경망 모델 생성 과정에서의 학습용 데이터 혹은 신경망 모델 활용 과정에서의 인식 대상 데이터에 포함된 데이터의 양 혹은 가짓수를 합리적인 수준으로 감소시킬 수 있다. 이를 통해 상기 연산 테이블과 같은 시스템에 저장되어야 하는 정보의 양이 감소될 수 있으며, 신경망 모델의 생성 및 활용에 있어서의 효율이 크게 향상될 수 있다.
도 1은 본 발명의 일 실시예에 따른 연산 가속화가 적용된 신경망 모델의 생성 및 활용을 위한 서버 장치의 구성을 도시한 도면이다.
도 2는 본 발명의 일 실시예에 따른 연산 가속화가 적용된 신경망 모델의 생성 방법의 각 단계를 도시한 도면이다.
도 3a 및 3b는 본 발명의 일 실시예에 의한 연산 가속화가 적용된 신경망 모델의 생성 방법의 전처리 과정에 대해 설명하기 위한 도면이다.
도 4는 합성곱 신경망에서의 합성곱 연산에 대해 설명하기 위한 도면이다.
도 5는 본 발명의 일 실시예에 따른 연산 가속화가 적용된 신경망 모델의 활용 방법의 각 단계를 도시한 도면이다.
도 6은 본 발명의 일 실시예에 따른 연산 가속화가 적용된 신경망 모델의 활용 방법의 효과를 설명하기 위한 도면이다.
본 발명의 이점 및 특징, 그리고 그것들을 달성하는 방법은 첨부되는 도면과 함께 상세하게 후술되어 있는 실시예들을 참조하면 명확해질 것이다. 그러나 본 발명은 이하에서 개시되는 실시예들에 한정되는 것이 아니라 서로 다른 다양한 형태로 구현될 수 있으며, 단지 본 실시예들은 본 발명의 개시가 완전하도록 하고, 본 발명이 속하는 기술분야에서 통상의 지식을 가진 자에게 발명의 범주를 완전하게 알려주기 위해 제공되는 것이며, 본 발명은 청구항의 범주에 의해 정의될 뿐이다.
본 발명의 실시예들을 설명함에 있어서 공지 기능 또는 구성에 대한 구체적인 설명이 본 발명의 요지를 불필요하게 흐릴 수 있다고 판단되는 경우에는 그 상세한 설명을 생략할 것이다. 그리고 후술되는 용어들은 본 발명의 실시예에서의 기능을 고려하여 정의된 용어들로서 이는 사용자, 운용자의 의도 또는 관례 등에 따라 달라질 수 있다. 그러므로 그 정의는 본 명세서 전반에 걸친 내용을 토대로 내려져야 할 것이다.
도 1은 본 발명의 일 실시예에 따른 연산 가속화가 적용된 신경망 모델의 생성 및 활용을 위한 서버 장치의 구성을 도시한 도면이다. 도 1의 서버 장치(100)는 입력부(110), 데이터 분할부(120), 전처리부(130), 모델 생성부(140), 사전 생성부(150), 테이블 생성부(160), 데이터베이스(170), 데이터 변환부(180) 및 대상 인식부(190)를 포함할 수 있다. 다만, 도 1의 서버 장치(100)의 구성 요소는 본 발명의 일 실시예에 불과하므로, 도 1에 의해 본 발명의 기술적 사상이 한정 해석되는 것은 아니다.
입력부(110)는 신경망 모델 생성 과정에서 이용될 학습용 데이터, 혹은 신경망 모델 활용 과정에서 이용될 인식 대상 데이터를 입력받을 수 있다. 상기 학습용 데이터 혹은 인식 대상 데이터는 복수의 부호로 구성된 것이라면 어느 것이든 될 수 있겠지만, 이하에서는 영상 데이터임을 가정하고 설명하도록 한다. 입력부(110)는 키보드(keyboard), 마우스(mouse) 등의 입력 장치, 데이터의 수신을 위한 데이터 버스, 혹은 유/무선 통신 모듈 등을 포함하여 구현될 수 있다.
데이터 분할부(120)는 학습용 데이터 혹은 인식 대상 데이터를 소정의 분할 기준에 따라 분할할 수 있다. 예컨대, 영상 데이터인 학습용 데이터 혹은 인식 대상 데이터의 경우, 상기 분할 기준은 픽셀(pixel) 단위의 분할이 될 수 있다. 이하에서는 학습용 데이터가 분할되어 생성된 데이터를 단위 데이터, 인식 대상 데이터가 분할되어 생성된 데이터를 대상 단위 데이터라 칭하도록 한다. 따라서, 하나의 단위 데이터 혹은 대상 단위 데이터는 학습용 데이터 혹은 인식 대상 데이터의 하나의 픽셀에 대응될 수 있다.
상기 데이터 분할부(120)는 마이크로프로세서(microprocessor)와 같은 연산 장치를 포함하여 구현될 수 있으며, 이는 후술할 다른 구성 요소인 전처리부(130), 모델 생성부(140), 사전 생성부(150), 테이블 생성부(160), 데이터 변환부(180) 및 대상 인식부(190)에 있어서도 같다.
한편, 학습용 데이터에 속한 단위 데이터는 그 분량뿐 아니라 가질 수 있는 값의 가짓수가 매우 많을 수 있다. 예컨대, 영상 데이터의 각 픽셀은 R(red, 빨강), G(green, 초록), B(blue, 파랑)의 세 가지 색상을 각각 나타내기 위한 3개의 채널(channel)을 통해 표현될 수 있음은 주지된 바와 같다. 0 이상 255 이하의 정수를 이용하여 임의의 한 픽셀의 한 채널의 값을 나타낼 경우, 상기 픽셀의 픽셀 값(pixel value), 즉 상기 픽셀에 대응되는 하나의 단위 데이터가 가질 수 있는 값의 가짓수는 총 2563가지가 될 것이다. 게다가, 영상 데이터 내에는 매우 많은 수의 픽셀이 행렬(matrix)의 형태를 이루어 존재하고 있으므로, 영상 데이터로부터 생성되는 단위 데이터에 포함된 정보의 양 및 이들 단위 데이터들이 가질 수 있는 값의 조합의 총 가짓수는 천문학적인 수가 될 것이다.
이에, 본 발명의 일 실시예에서의 전처리부(130)는 소정의 분류 기준에 따라, 단위 데이터(혹은 대상 단위 데이터)를 분류할 수 있다. 구체적으로, 전처리부(130)는 소정의 분류 기준에 따라 각 단위 데이터가 복수의 그룹 중 하나의 그룹에 속하도록 분류하고, 상기 복수의 그룹 중 같은 그룹에 속하는 단위 데이터는 서로 동일한 값을 갖는 변환 데이터로 변환되도록 할 수 있으며, 상이한 그룹에 속하는 단위 데이터는 상이한 변환 데이터로 변환되도록 할 수 있다. 즉, 같은 그룹에 속한 단위 데이터끼리는 신경망 모델의 생성 및 활용에 있어 서로 같은 입력 데이터로 여겨질 수 있게 되며, 상기 분류 기준의 구체적인 예시에 대해서는 후술하도록 한다.
모델 생성부(140)는 단위 데이터로 분할되고 변환 데이터로 변환된 학습용 데이터를 학습함으로써, 학습용 데이터와는 다른 데이터로서 인식의 대상이 되는 인식 대상 데이터의 인식을 위한 신경망 모델을 생성할 수 있다. 이와 같은 신경망 모델은 인식 대상 데이터의 인식 과정에서 합성곱 연산을 활용하는 모델이라면 어떤 것이든 될 수 있다. 신경망 모델의 구체적인 생성 및 활용 방법에 대해서는 머신 러닝 분야의 통상의 기술자에게 용이한 것이므로 여기에서는 자세한 설명을 생략한다.
사전 생성부(150)는 단위 데이터(혹은 대상 단위 데이터)를 분류하기 위한 분류 기준 및 분류된 단위 데이터를 변환 데이터로 변환하기 위한 변환 기준을 저장하는 사전(dictionary)을 생성할 수 있다. 상기 분류 기준 및 변환 기준은 신경망 모델 생성 과정을 거치며 최적화될 수 있으며, 이와 같은 최적화된 기준이 사전에 저장되어, 인식 대상 데이터로부터 생성된 대상 단위 데이터를 분류 및 변환하는 데 이용될 수 있다.
테이블 생성부(160)는 모델 생성부(140)가 신경망 모델을 생성하는 과정에서 학습용 데이터에 대해 수행한 합성곱(convolution) 연산의 결과를 저장하는 연산 테이블을 생성할 수 있다. 이와 같이 연산 테이블에 신경망 모델 생성 과정에서의 합성곱 연산의 결과가 저장됨에 따라, 신경망 모델 활용 과정에서는 합성곱 연산을 일일이 수행하는 대신, 상기 연산 테이블로부터 동일한 상황에서의 합성곱 연산의 결과를 획득하여 사용하는 것이 가능해진다.
데이터베이스(170)는 생성된 신경망 모델, 연산 테이블 및 사전 등을 저장할 수 있다. 물론 데이터베이스(170)가 저장할 수 있는 정보는 반드시 이에 한정되지 않고, 서버 장치(100)의 동작에 필요한 임시적 혹은 영구적 정보라면 어떤 것이든 될 수 있다. 데이터베이스(170)는 컴퓨터 판독 기록 매체로서 구현될 수 있으며, 상기 컴퓨터 판독 기록 매체의 예로는 하드 디스크, 플로피 디스크 및 자기 테이프와 같은 자기 매체(magnetic media), CD-ROM, DVD와 같은 광기록 매체(optical media), 플롭티컬 디스크(floptical disk)와 같은 자기-광 매체(magneto-optical media), 플래시 메모리(flash memory)와 같은 프로그램 명령어들을 저장하고 수행하도록 특별히 구성된 하드웨어 장치를 들 수 있다.
데이터 변환부(180)는 인식 대상 데이터가 데이터 분할부(120)에 의해 분할되어 생성된 각 단위 데이터를, 변환 데이터 중 어느 하나로 각각 변환할 수 있다. 이와 같은 변환은 데이터베이스(170)에 저장된 사전을 이용하여 수행될 수 있다.
대상 인식부(190)는 데이터베이스(170)에 저장된 신경망 모델을 이용하여 인식 대상 데이터의 특징을 추출하고, 이를 바탕으로 인식 대상 데이터에 포함된 정보를 인식하여, 인식 대상 데이터의 분류 혹은 내용 파악 등의 작업을 수행할 수 있다. 이와 같은 대상 인식부(190)의 신경망 모델 이용 과정에서는 합성곱 연산이 수행될 수 있는데, 대상 인식부(190)는 합성곱 연산을 일일이 수행하는 대신, 데이터베이스(170)에 저장된 연산 테이블로부터 합성곱 연산의 결과를 획득하여 사용할 수 있다. 이와 같은 연산 테이블의 사용은 본 발명의 일 실시예에 따른 대상 인식 과정의 효율을 비약적으로 증대시킬 수 있다.
도 2는 본 발명의 일 실시예에 따른 연산 가속화가 적용된 신경망 모델의 생성 방법의 각 단계를 도시한 도면이다. 도 2의 방법은 도 1을 참조하여 설명한 서버 장치(100)에 의해 수행될 수 있다. 단, 도 2에 도시된 방법은 본 발명의 일 실시예에 불과하므로 도 2에 의해 본 발명의 사상이 한정 해석되는 것은 아니며, 도 2에 도시된 방법의 각 단계는 경우에 따라 도면에 제시된 바와 그 순서를 달리하여 수행될 수 있음은 물론이다. 또한, 도 1과 중복되는 바에 대해서는 자세한 설명이 생략될 수 있다.
우선 데이터 분할부(120)는, 입력부(110)를 통해 입력된 학습용 데이터를 복수의 단위 데이터로 분할할 수 있다(S110). 이하에서는 학습용 데이터 및 인식 대상 데이터를 특정 객체를 촬영한 영상 데이터로 가정하도록 하겠지만, 본 발명의 적용 범위가 반드시 이에 한정되는 것은 아니다.
다음으로, 전처리부(130)는 상기 각 단위 데이터에 대한 분류 및 변환 데이터로의 변환을 수행할 수 있다(S120). 예컨대, 영상 데이터인 학습용 데이터에서 각 픽셀의 픽셀 값은 0 이상 255 이하의 정수로 총 256가지가 나올 수 있음은 앞서 말한 바와 같다. 이 때, 전처리부(130)는 양자화(quantization) 기법을 이용하여, 상기 픽셀 값이 가질 수 있는 수치의 범위를 복수의 구간으로 분할하고, 각 단위 데이터에 대응되는 픽셀의 픽셀 값이 상기 복수의 구간 중 어느 구간에 속하는지에 따라 상기 각 단위 데이터를 분류할 수 있다.
예컨대, 전처리부(130)는 상기 픽셀 값의 범위를 동일한 크기를 갖는 8개의 구간으로 분할할 수 있다. 그러면 하나의 구간에는 32종류의 픽셀 값이 속하게 된다. 이에 따라, 전처리부(130)는 상기 256종류의 픽셀 값에 의한 단위 데이터를, 8종류의 값을 갖는 변환 데이터로 변환할 수 있으며, 이에 따라 0 이상 255 이하의 정수로 표현되는 단위 데이터는 0 이상 7 이하의 정수로 표현되는 변환 데이터 중 어느 하나로 변환될 수 있을 것이다.
혹은, 전처리부(130)는 학습용 데이터의 각 픽셀에 대해, 서로 다른 색상에 관한 두 종류 이상의 픽셀 값을 평균한 값을 산출한 결과에 기초하여 상기 분류를 수행할 수도 있을 것이다. 예컨대, 각 픽셀이 위에서도 언급한 대로 R, G, B의 3개의 색상에 각각 대응되는 3종류의 픽셀 값을 가질 경우, 전처리부(130)는 이들 3종류의 각 픽셀 값을 모두 포함하는 단위 데이터를, 상기 3종류의 픽셀 값의 평균값 하나만을 포함하는 변환 데이터로 변환할 수 있다. 이는 컬러 영상을 그레이 스케일(gray scale)로 변환하여 취급하는 것과 유사하다 할 수 있다.
경우에 따라, 전처리부(130)는 상기 평균값으로서 단순한 산술 평균 대신 픽셀 값의 각 종류별로 정해지는 가중치에 따라 가중평균(weighted mean)된 값을 이용할 수도 있다. 이에 따르면, 다른 종류의 픽셀 값에 비해 보다 인식 결과에 영향을 미친다고 판단되는 픽셀 값에 높은 가중치를 부여하여, 신경망 모델의 성능을 높이는 것이 가능하다.
전처리부(130)는 지금까지 설명한 분류 및 변환의 기준 중 하나만을 사용할 수도 있고, 두 개 이상의 기준을 혼합하여 사용할 수도 있다. 한편, 지금까지 설명한 분류 및 변환의 기준은 단지 예시적인 것일 뿐이며, 다른 기준이 적용될 수도 있음은 물론이다. 아울러, 상기 분류 및 변환의 기준은 사용자에 의해 직접 설정될 수도 있지만, 신경망 모델 생성 과정에서 최적화될 수도 있다. 이 경우, 전처리부(130)는 모델 생성부(140)와 상호 작용을 수행하며 동작하게 될 것이다. 상기 최적화에 의해, 신경망 모델에 의해 처리될 데이터의 양을 줄이면서도, 모델의 성능 감소는 최소화할 수 있는 기준을 설정할 수 있다.
다음으로 모델 생성부(140)가 상기 각 변환 데이터를 이용하여, 신경망 모델을 생성할 수 있다(S130). 즉, 신경망 모델은 모델 생성부(140)가 학습용 데이터를 학습한 결과에 기초하여 생성된다. 아울러, 사전 생성부(150)는 상기 분류 및 변환의 기준을 저장하는 사전을 생성함으로써(S140), 신경망 모델 활용 단계에서 상기 사전을 참조하여 인식 대상 데이터가 분류 및 변환되도록 할 수 있다.
보다 구체적으로, 학습용 데이터로부터 생성된 각 변환 데이터는 대응되는 픽셀이 학습용 데이터에서 차지하는 위치에 기초하여, 하나의 데이터 행렬(matrix)를 구성할 수 있다. 모델 생성부(140)는 상기 데이터 행렬에 대해 소정의 차원(예컨대, 2x2 혹은 3x3)을 갖는 행렬인 특징 추출 필터를 적용하여 합성곱 연산을 수행한 결과와, 상기 학습용 데이터에 포함된 객체의 종류와 같은 정보 간의 관계에 기초하여, 인식 대상 데이터의 인식을 위한 신경망 모델을 생성할 수 있다.
또한, 신경망 모델을 생성하는 과정에서, 상기 특징 추출 필터 역시 학습에 의해 적응적으로 변화함으로써 최적화될 수 있다. 특징 추출 필터의 최적화 과정 및 특징 추출 필터에 의한 합성곱 연산의 결과를 활용하는 과정의 구체적인 사항에 대해서는 통상의 기술자에게 용이한 것이므로 여기에서는 자세한 설명을 생략한다.
이하에서는 도 3a 내지 4를 참조하여, 전처리 과정 및 합성곱 연산의 결과 저장에 대해 상세히 설명하도록 한다. 도 3a 및 3b는 본 발명의 일 실시예에 의한 연산 가속화가 적용된 신경망 모델의 생성 방법의 전처리 과정에 대해 설명하기 위한 도면이다. 학습용 데이터 혹은 인식 대상 데이터로서 사용될 수 있는 영상 데이터(210)가 입력부(110)를 통해 입력되면, 데이터 분할부(120)는 픽셀 단위로 상기 영상 데이터(210)를 분할할 수 있음은 앞서 말한 바와 같다.
여기서, 전처리부(130)는 R, G, B 3개의 채널을 이용해 표현된 영상 데이터(210)각 픽셀의 픽셀 값을 평균함으로써, 도 3a와 같이 각 픽셀의 픽셀 값이 하나의 채널로 표현된 변환 영상 데이터(220)를 생성할 수 있다. 즉, 변환 영상 데이터(220)의 한 픽셀의 픽셀 값은 하나의 변환 데이터가 된다고 볼 수 있다.
또한 도 3b를 참조하면, 변환 영상 데이터(220)의 각 픽셀에서의 위치에 기초하여, 각 픽셀에 대응되는 변환 데이터(231)를 원소로 갖는 데이터 행렬(230)이 전처리부(130)에 의해 도출될 수 있음을 볼 수 있다. 본래의 영상 데이터(220)에는 하나의 픽셀당 R, G, B의 3종류의 값이 있었으나, 데이터 행렬(230)에서는 하나의 픽셀에 대응되는 변환 데이터(231)가 0 이상 255 이하의 값을 갖는 하나의 수치로서 표현될 수 있다.
도 4는 합성곱 신경망에서의 합성곱 연산에 대해 설명하기 위한 도면이다. 모델 생성부(140)는 신경망 모델 생성 과정에서, 데이터 행렬(230)에 소정 차원(도 4의 예에서는 3x3)의 행렬 형태의 특징 추출 필터(250)를 적용하여 영상 데이터(210)의 특징을 추출할 수 있다. 특징 추출 필터(250)는 데이터 행렬(230)과 마찬가지로 소정 범위 내의 수치를 원소로 갖는 행렬일 수 있다. 또한, 상기 특징 추출 필터(250)는 바람직하게는 정사각 행렬(square matrix)일 수 있다.
보다 구체적으로, 신경망 모델 생성 과정에서 데이터 행렬(230)의 일부로서 특징 추출 필터(250)와 같은 차원을 갖는 부분 행렬(240, 진한 테두리 안의 부분)과 특징 추출 필터(250) 간의 합성곱 연산이 수행될 수 있다. 이와 같은 부분 행렬(240)에 대한 합성곱 연산에 의하면, 부분 행렬(240)의 원소와, 특징 추출 필터(250) 중 상기 부분 행렬(240)의 원소에 대응되는 위치의 원소를 곱하게 된다. 이와 같은 곱셈은 부분 행렬(240) 혹은 특징 추출 필터(250)의 원소의 개수만큼 수행될 수 있다. 그리고 나서, 상기 곱셈의 결과를 모두 더하게 된다.
이와 같은 합성곱 연산은, 데이터 행렬(230)로부터 도출될 수 있는 각 부분 행렬(240)에 대해 반복하여 수행될 수 있다. 즉, 특징 추출 필터(250)는 데이터 행렬(230)의 모든(혹은 일부) 영역을 스캔함으로써, 상기 합성곱 연산이 수행되도록 할 수 있다. 또한, 이와 같은 특징 추출 필터(250)는 복수 개 존재할 수 있으며, 각 특징 추출 필터(250) 간에는 차원이 다를 수 있다.
상기 합성곱 연산은 데이터 행렬(230)로부터 도출될 수 있는 각 부분 행렬(240)과 특징 추출 필터(250)의 각 원소 간의 곱셈 및 이들 곱셈의 결과에 대한 덧셈을 포함하므로, 그 연산의 양이 매우 많아 비효율적이다. 이와 같은 비효율의 방지를 위해, 본 발명의 일 실시예에서의 테이블 생성부(160)는, 합성곱 모델 생성 과정에서 부분 행렬(240)과 특징 추출 필터(250)간에 수행된 합성곱 연산의 결과가 상기 부분 행렬(240)과 매칭되어 저장된 연산 테이블을 생성할 수 있다(S150). 이 경우, 신경망 모델을 이용하여 인식 대상 데이터를 인식할 때에 수행될 합성곱 연산에 대해서는, 직접 합성곱 연산을 수행하는 대신, 상기 연산 테이블로부터 기 수행된 합성곱 연산의 결과만을 획득함으로써, 연산의 부담을 대폭 줄일 수 있다.
한편, 상기 연산 테이블에는 어떤 하나의 부분 행렬(240)과 특징 추출 필터(250) 간의 합성곱 연산 결과가 전체로서 저장될 수도 있지만, 특징 추출 필터(250)의 특정 행(혹은 특정 열)과, 상기 특정 행(혹은 특정 열)에 대응되는 부분 행렬의 행(혹은 열) 간의 합성곱 연산 결과가 저장될 수도 있다. 예컨대, 도 4에서 특징 추출 필터(250)의 첫 번째 행인 (239, 94, 241)과 부분 행렬(240)의 첫 번째 행인 (6, 6, 6)의 합성곱 연산(실질적으로는 두 행 벡터의 내적) 결과가 저장될 수 있으며, 마찬가지로 특징 추출 필터(250)과 부분 행렬(240)의 두 번째 행끼리의 합성곱 연산 결과와 세 번째 행끼리의 합성곱 연산 결과도 각각 따로 저장될 수 있다.
이와 같이 특징 추출 필터(250)를 행 혹은 열 단위로 분해(decomposition)함으로써, 연산 결과를 보다 세분화하여 저장할 수 있다. 특징 추출 필터(250)를 어느 정도의 크기로 분해하는가에 따라 연산 테이블에 포함된 데이터의 양이 달라질 수 있기 때문에, 특징 추출 필터(250)의 분해 기준 역시 신경망 모델 생성 과정에서 적절히 최적화될 수 있다.
도 5는 본 발명의 일 실시예에 따른 연산 가속화가 적용된 신경망 모델의 활용 방법의 각 단계를 도시한 도면이다. 도 5의 방법은 도 1을 참조하여 설명한 서버 장치(100)에 의해 수행될 수 있다. 단, 도 5에 도시된 방법은 본 발명의 일 실시예에 불과하므로 도 5에 의해 본 발명의 사상이 한정 해석되는 것은 아니며, 도 5에 도시된 방법의 각 단계는 경우에 따라 도면에 제시된 바와 그 순서를 달리하여 수행될 수 있음은 물론이다. 또한, 도 1 내지 4와 중복되는 바에 대해서는 자세한 설명이 생략될 수 있다.
우선 데이터 분할부(120)는 입력부(110)에 의해 획득된 인식 대상 데이터를 대상 단위 데이터로 분할할 수 있다(S210). 그리고, 데이터 변환부(180)는 사전을 참고하여 각 대상 단위 데이터에 대한 분류 및 변환 데이터로의 변환을 수행할 수 있다(S220). 구체적으로, 데이터 변환부(180)는 각 대상 단위 데이터를 복수의 그룹 중 하나의 그룹에 속하도록 분류하고, 상기 복수의 그룹 중 같은 그룹에 속하는 대상 단위 데이터를 동일한 값을 갖는 변환 데이터로 변환할 수 있다. 이와 같은 분류 및 변환에는 데이터베이스(170)에 저장된 사전이 이용될 수 있으며, 이로써 인식 대상 데이터에도 학습용 데이터와 같은 기준의 전처리가 수행될 수 있다.
다음으로, 대상 인식부(190)는 상기 대상 단위 데이터에 대한 합성곱 연산의 결과를 도출하여(S230), 인식 대상 데이터에 대한 인식 결과를 생성할 수 있다(S240). 요컨대, 대상 인식부(190)는 신경망 모델을 이용하여 인식 대상 데이터의 인식을 수행할 수 있는 것이다. 보다 구체적으로, 대상 인식부(190)는 상기 신경망 모델에 상기 각 대상 단위 데이터가 변환되어 생성된 각 변환 데이터로 구성된 대상 데이터 행렬을 입력할 경우의 출력에 기초하여 상기 인식을 수행할 수 있다.
다만, 전술한 바와 같이 대상 인식부(190)는 합성곱 연산을 일일이 수행하는 대신, 대상 데이터 행렬의 일부인 대상 부분 행렬과 동일한 원소를 갖는 행렬과 특징 추출 필터(250) 간에 기 수행된 합성곱 연산의 결과가 기 저장된 연산 테이블로부터 상기 대상 부분 행렬과 특징 추출 필터(250) 간의 합성곱 연산의 결과만을 추출하여 사용할 수 있다. 즉, 대상 부분 행렬의 각 원소와 특징 추출 필터(250)의 각 원소끼리의 곱셈 및 곱셈 결과에 대한 덧셈을 일일이 수행하지 않고도 합성곱 연산의 결과를 연산 테이블을 통해 쉽게 얻음으로써, 획기적인 연산 가속화가 달성될 수 있다.
아울러, 상기 신경망 모델을 이용한 인식 과정에서는, 합성곱 연산의 결과 도출 이후에도 맥스 풀링(max pooling), 신경망을 통한 분류(classification) 등의 세부 과정이 수행될 수 있으며, 이에 대해서는 통상의 기술자에게 용이한 것이므로 자세한 설명은 생략한다.
도 6은 본 발명의 일 실시예에 따른 연산 가속화가 적용된 신경망 모델의 활용 방법의 효과를 설명하기 위한 도면이다. 인식 대상 데이터로부터 생성된 대상 데이터 행렬(260)의 행의 개수를 Hseq, 열의 개수를 Wseq라 하도록 한다. 그리고 특징 추출 필터(250)는 크기(즉, 정사각 행렬에서의 행 혹은 열의 개수)별로 다양하게 마련될 수 있는데, 같은 크기(fn)를 갖는 특징 추출 필터(250)의 개수는 Nfilter라 하고, 이러한 특징 추출 필터(250)를 1 x fn 크기를 갖는 fn개의 필터로 분리하였다고 가정하도록 한다. 이 때, 본 발명의 일 실시예에 의해 줄어들게 되는 덧셈 연산의 횟수는 아래 수학식 1과 같다.
Figure pat00001
또한, 본 발명의 일 실시예에 의해 줄어들게 되는 곱셈 연산의 횟수는 아래 수학식 2와 같다.
Figure pat00002
상기 수학식 1 및 2를 통해, 본 발명의 일 실시예에 의하면 비약적인 연산량 감소의 효과를 달성할 수 있다는 결론을 얻을 수 있다.
지금까지 설명한 바와 같은 본 발명의 일 실시예에 따르면, 합성곱 신경망이 적용된 특징 모델을 이용하여 인식 대상 데이터를 인식하는 과정에서의 연산의 중복 수행이 방지될 수 있으며, 이에 따라 연산량이 획기적으로 줄어들어 상기 신경망 모델을 이용하는 시스템의 효율이 증대될 수 있다. 특히 본 발명의 일 실시예에서는, 영상 데이터와 같이 입력 데이터의 양 및 가짓수가 매우 많은 경우에 있어서도, 전술한 전처리 과정을 통해 입력 데이터의 양 및 가짓수를 합리적인 수준으로 줄임으로써, 인식 과정에서의 효율성 증대 및 저장 공간의 절약 등의 효과를 달성할 수 있다.
본 발명에 첨부된 블록도의 각 블록과 흐름도의 각 단계의 조합들은 컴퓨터 프로그램 인스트럭션들에 의해 수행될 수도 있다. 이들 컴퓨터 프로그램 인스트럭션들은 범용 컴퓨터, 특수용 컴퓨터 또는 기타 프로그램 가능한 데이터 프로세싱 장비의 인코딩 프로세서에 탑재될 수 있으므로, 컴퓨터 또는 기타 프로그램 가능한 데이터 프로세싱 장비의 인코딩 프로세서를 통해 수행되는 그 인스트럭션들이 블록도의 각 블록 또는 흐름도의 각 단계에서 설명된 기능들을 수행하는 수단을 생성하게 된다. 이들 컴퓨터 프로그램 인스트럭션들은 특정 방법으로 기능을 구현하기 위해 컴퓨터 또는 기타 프로그램 가능한 데이터 프로세싱 장비를 지향할 수 있는 컴퓨터 이용 가능 또는 컴퓨터 판독 가능 메모리에 저장되는 것도 가능하므로, 그 컴퓨터 이용가능 또는 컴퓨터 판독 가능 메모리에 저장된 인스트럭션들은 블록도의 각 블록 또는 흐름도 각 단계에서 설명된 기능을 수행하는 인스트럭션 수단을 내포하는 제조 품목을 생산하는 것도 가능하다. 컴퓨터 프로그램 인스트럭션들은 컴퓨터 또는 기타 프로그램 가능한 데이터 프로세싱 장비 상에 탑재되는 것도 가능하므로, 컴퓨터 또는 기타 프로그램 가능한 데이터 프로세싱 장비 상에서 일련의 동작 단계들이 수행되어 컴퓨터로 실행되는 프로세스를 생성해서 컴퓨터 또는 기타 프로그램 가능한 데이터 프로세싱 장비를 수행하는 인스트럭션들은 블록도의 각 블록 및 흐름도의 각 단계에서 설명된 기능들을 실행하기 위한 단계들을 제공하는 것도 가능하다.
또한, 각 블록 또는 각 단계는 특정된 논리적 기능(들)을 실행하기 위한 하나 이상의 실행 가능한 인스트럭션들을 포함하는 모듈, 세그먼트 또는 코드의 일부를 나타낼 수 있다. 또, 몇 가지 대체 실시예들에서는 블록들 또는 단계들에서 언급된 기능들이 순서를 벗어나서 발생하는 것도 가능함을 주목해야 한다. 예컨대, 잇달아 도시되어 있는 두 개의 블록들 또는 단계들은 사실 실질적으로 동시에 수행되는 것도 가능하고 또는 그 블록들 또는 단계들이 때때로 해당하는 기능에 따라 역순으로 수행되는 것도 가능하다.
이상의 설명은 본 발명의 기술 사상을 예시적으로 설명한 것에 불과한 것으로서, 본 발명이 속하는 기술 분야에서 통상의 지식을 가진 자라면 본 발명의 본질적인 품질에서 벗어나지 않는 범위에서 다양한 수정 및 변형이 가능할 것이다. 따라서, 본 발명에 개시된 실시예들은 본 발명의 기술 사상을 한정하기 위한 것이 아니라 설명하기 위한 것이고, 이러한 실시예에 의하여 본 발명의 기술 사상의 범위가 한정되는 것은 아니다. 본 발명의 보호 범위는 아래의 청구범위에 의하여 해석되어야 하며, 그와 균등한 범위 내에 있는 모든 기술사상은 본 발명의 권리범위에 포함되는 것으로 해석되어야 할 것이다.
본 발명의 일 실시예에 따르면, 합성곱 신경망이 적용된 특징 모델을 이용하여 인식 대상 데이터를 인식하는 과정에서의 연산의 중복 수행이 방지될 수 있으며, 이에 따라 연산량이 획기적으로 줄어들 수 있다. 또한, 상기 연산 테이블과 같은 시스템에 저장되어야 하는 정보의 양이 감소될 수 있으며, 신경망 모델의 생성 및 활용에 있어서의 효율이 크게 향상될 수 있다.
100: 서버 장치
110: 입력부
120: 데이터 분할부
130: 전처리부
140: 모델 생성부
150: 사전 생성부
160: 테이블 생성부
170: 데이터베이스
180: 데이터 변환부
190: 대상 인식부

Claims (13)

  1. 학습용 데이터를 복수의 단위 데이터로 분할하는 데이터 분할부;
    상기 각 단위 데이터를, 소정의 분류 기준에 따라 복수의 그룹 중 하나의 그룹에 속하도록 분류하고, 상기 복수의 그룹 중 같은 그룹에 속하는 단위 데이터를 동일한 값을 갖는 변환 데이터로 변환하는 전처리부;
    상기 변환 데이터로 구성된 데이터 행렬(matrix)에, 소정의 차원(dimension)을 갖는 행렬인 특징 추출 필터를 적용하여 합성곱(convolution) 연산을 수행한 결과 및 상기 학습용 데이터에 포함된 정보 간의 관계에 기초하여 신경망 모델을 생성하는 모델 생성부; 및
    상기 데이터 행렬의 일부인 부분 행렬과, 상기 합성곱 연산 중 상기 부분 행렬에 대해 수행된 연산의 결과가 서로 매칭되어 저장됨으로써, 상기 신경망 모델을 통해 상기 학습용 데이터와는 다른 인식 대상 데이터에 포함된 정보를 인식하는 데 이용되는 연산 테이블을 생성하는 테이블 생성부를 포함하는
    연산 가속화가 적용된 신경망 모델을 생성하는 서버 장치.
  2. 제 1 항에 있어서,
    상기 학습용 데이터는, 영상(image) 데이터이며,
    상기 데이터 분할부는, 상기 학습용 데이터의 하나의 픽셀(pixel)의 정보가 하나의 단위 데이터를 이루도록 상기 학습용 데이터를 분할하는
    연산 가속화가 적용된 신경망 모델을 생성하는 서버 장치.
  3. 제 2 항에 있어서,
    상기 전처리부는, 상기 학습용 데이터의 픽셀이 픽셀 값으로 가질 수 있는 수치의 범위를 복수의 구간으로 분할하고, 상기 학습용 데이터의 각 픽셀의 픽셀 값이 상기 복수의 구간 중 어느 구간에 속하는지에 기초하여 상기 각 단위 데이터를 분류하는
    연산 가속화가 적용된 신경망 모델을 생성하는 서버 장치.
  4. 제 2 항에 있어서,
    상기 전처리부는, 상기 학습용 데이터의 각 픽셀에 대해, 서로 다른 색상에 관한 두 종류 이상의 픽셀 값을 평균한 값을 산출한 결과에 기초하여 상기 각 단위 데이터를 분류하는
    연산 가속화가 적용된 신경망 모델을 생성하는 서버 장치.
  5. 제 4 항에 있어서,
    상기 평균한 값은, 상기 픽셀 값의 종류별로 정해지는 가중치에 따라 가중평균(weighted mean)된 값인
    연산 가속화가 적용된 신경망 모델을 생성하는 서버 장치.
  6. 제 1 항에 있어서,
    상기 부분 행렬은, 상기 특징 추출 필터와 같은 차원을 가지며,
    상기 합성곱 연산 중 상기 부분 행렬에 대해 수행된 연산의 결과는, 상기 부분 행렬의 각 원소에 상기 특징 추출 필터에서 대응되는 위치의 원소를 곱한 결과를 모두 더함으로써 산출되는
    연산 가속화가 적용된 신경망 모델을 생성하는 서버 장치.
  7. 제 1 항에 있어서,
    상기 각 단위 데이터와 상기 각 변환 데이터 간의 변환 기준이 저장된 사전을 생성하는 사전 생성부를 더 포함하며,
    상기 변환 기준은, 상기 복수의 그룹 중 상이한 그룹에 속한 단위 데이터는 상이한 변환 데이터로 변환되도록 정의되는
    연산 가속화가 적용된 신경망 모델을 생성하는 서버 장치.
  8. 제 7 항에 있어서,
    상기 데이터 분할부는, 상기 인식 대상 데이터를, 상기 분할 기준에 따라 복수의 대상 단위 데이터로 분할하며,
    상기 서버 장치는,
    상기 각 대상 단위 데이터를, 상기 사전에 저장된 상기 변환 기준에 기초하여 상기 변환 데이터 중 어느 하나로 각각 변환하는 데이터 변환부; 및
    상기 인식 대상 데이터로부터 생성된 각 변환 데이터로 구성된 대상 데이터 행렬을 상기 신경망 모델에 입력할 경우의 출력에 기초하여 상기 인식 대상 데이터에 포함된 정보를 인식하되, 상기 대상 데이터 행렬에 대해 상기 특징 추출 필터를 적용할 경우 수행될 합성곱 연산의 결과를 상기 연산 테이블로부터 획득하는 대상 인식부를 더 포함하는
    연산 가속화가 적용된 신경망 모델을 생성하는 서버 장치.
  9. 인식 대상 데이터를, 소정의 분할 기준에 따라 복수의 대상 단위 데이터로 분할하는 데이터 분할부;
    상기 각 대상 단위 데이터를, 소정의 분류 기준에 따라 복수의 그룹 중 하나의 그룹에 속하도록 분류하고, 상기 복수의 그룹 중 같은 그룹에 속하는 대상 단위 데이터를 동일한 값을 갖는 변환 데이터로 변환하는 데이터 변환부; 및
    상기 변환 데이터로 구성된 대상 데이터 행렬에, 소정의 차원을 갖는 행렬인 특징 추출 필터를 적용하여 상기 인식 대상 데이터의 특징을 추출함으로써 상기 인식 대상 데이터에 포함된 정보를 인식하되, 상기 대상 데이터 행렬의 일부인 대상 부분 행렬과 동일한 원소를 갖는 행렬과 상기 특징 추출 필터 간에 기 수행된 합성곱 연산의 결과가 기 저장된 연산 테이블로부터 상기 대상 부분 행렬과 상기 특징 추출 필터 간의 합성곱 연산의 결과를 획득하는 대상 인식부를 포함하는
    연산 가속화가 적용된 신경망 모델을 이용하는 서버 장치.
  10. 제 9 항에 있어서,
    상기 부분 행렬은, 상기 특징 추출 필터와 같은 차원을 가지며,
    상기 대상 부분 행렬과 상기 특징 추출 필터 간의 합성곱 연산은, 상기 대상 부분 행렬의 각 원소에 상기 특징 추출 필터에서 대응되는 위치의 원소를 곱한 결과를 모두 더하는 연산인
    연산 가속화가 적용된 신경망 모델을 이용하는 서버 장치.
  11. 제 9 항에 있어서,
    상기 데이터 변환부는, 상기 대상 단위 데이터와 상기 변환 데이터 간의 변환 기준이 기 저장된 사전을 이용하여 상기 각 대상 단위 데이터에 대한 변환을 수행하는
    연산 가속화가 적용된 신경망 모델을 이용하는 서버 장치.
  12. 학습용 데이터를 복수의 단위 데이터로 분할하는 단계;
    상기 각 단위 데이터를, 소정의 분류 기준에 따라 복수의 그룹 중 하나의 그룹에 속하도록 분류하고, 상기 복수의 그룹 중 같은 그룹에 속하는 단위 데이터를 동일한 값을 갖는 변환 데이터로 변환하는 단계;
    상기 변환 데이터로 구성된 데이터 행렬에, 소정의 차원을 갖는 행렬인 특징 추출 필터를 적용하여 합성곱 연산을 수행한 결과 및 상기 학습용 데이터에 포함된 정보 간의 관계에 기초하여 신경망 모델을 생성하는 단계; 및
    상기 데이터 행렬의 일부인 부분 행렬과, 상기 합성곱 연산 중 상기 부분 행렬에 대해 수행된 연산의 결과가 서로 매칭되어 저장됨으로써, 상기 신경망 모델을 통해 상기 학습용 데이터와는 다른 인식 대상 데이터에 포함된 정보를 인식하는 데 이용되는 연산 테이블을 생성하는 단계를 포함하는
    연산 가속화가 적용된 신경망 모델을 생성하기 위한 방법.
  13. 인식 대상 데이터를, 소정의 분할 기준에 따라 복수의 대상 단위 데이터로 분할하는 단계;
    상기 각 대상 단위 데이터를, 소정의 분류 기준에 따라 복수의 그룹 중 하나의 그룹에 속하도록 분류하고, 상기 복수의 그룹 중 같은 그룹에 속하는 대상 단위 데이터를 동일한 값을 갖는 변환 데이터로 변환하는 단계; 및
    상기 변환 데이터로 구성된 대상 데이터 행렬에, 소정의 차원을 갖는 행렬인 특징 추출 필터를 적용하여 상기 인식 대상 데이터의 특징을 추출함으로써 상기 인식 대상 데이터에 포함된 정보를 인식하되, 상기 대상 데이터 행렬의 일부인 대상 부분 행렬과 동일한 원소를 갖는 행렬과 상기 특징 추출 필터 간에 기 수행된 합성곱 연산의 결과가 기 저장된 연산 테이블로부터 상기 대상 부분 행렬과 상기 특징 추출 필터 간의 합성곱 연산의 결과를 획득하는 단계를 포함하는
    연산 가속화가 적용된 신경망 모델을 이용한 데이터 인식 방법.
KR1020170152180A 2017-11-15 2017-11-15 연산 가속화가 적용된 신경망 모델의 생성 및 활용을 위한 장치 및 방법 KR102095335B1 (ko)

Priority Applications (1)

Application Number Priority Date Filing Date Title
KR1020170152180A KR102095335B1 (ko) 2017-11-15 2017-11-15 연산 가속화가 적용된 신경망 모델의 생성 및 활용을 위한 장치 및 방법

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
KR1020170152180A KR102095335B1 (ko) 2017-11-15 2017-11-15 연산 가속화가 적용된 신경망 모델의 생성 및 활용을 위한 장치 및 방법

Related Child Applications (1)

Application Number Title Priority Date Filing Date
KR1020200031002A Division KR102227437B1 (ko) 2020-03-12 2020-03-12 연산 가속화가 적용된 신경망 모델의 생성 및 활용을 위한 장치 및 방법

Publications (2)

Publication Number Publication Date
KR20190055447A true KR20190055447A (ko) 2019-05-23
KR102095335B1 KR102095335B1 (ko) 2020-03-31

Family

ID=66681240

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1020170152180A KR102095335B1 (ko) 2017-11-15 2017-11-15 연산 가속화가 적용된 신경망 모델의 생성 및 활용을 위한 장치 및 방법

Country Status (1)

Country Link
KR (1) KR102095335B1 (ko)

Cited By (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR20210014897A (ko) 2019-07-31 2021-02-10 한양대학교 산학협력단 인공 신경망을 위한 행렬 연산기 및 행렬 연산 방법
CN112434781A (zh) * 2019-08-26 2021-03-02 上海寒武纪信息科技有限公司 用于处理数据的方法、装置以及相关产品
CN113837923A (zh) * 2021-09-26 2021-12-24 安徽寒武纪信息科技有限公司 数据处理装置、数据处理方法及相关产品

Families Citing this family (21)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2018176000A1 (en) 2017-03-23 2018-09-27 DeepScale, Inc. Data synthesis for autonomous control systems
US11893393B2 (en) 2017-07-24 2024-02-06 Tesla, Inc. Computational array microprocessor system with hardware arbiter managing memory requests
US11157441B2 (en) 2017-07-24 2021-10-26 Tesla, Inc. Computational array microprocessor system using non-consecutive data formatting
US11409692B2 (en) 2017-07-24 2022-08-09 Tesla, Inc. Vector computational unit
US10671349B2 (en) 2017-07-24 2020-06-02 Tesla, Inc. Accelerated mathematical engine
US11561791B2 (en) 2018-02-01 2023-01-24 Tesla, Inc. Vector computational unit receiving data elements in parallel from a last row of a computational array
US11215999B2 (en) 2018-06-20 2022-01-04 Tesla, Inc. Data pipeline and deep learning system for autonomous driving
US11361457B2 (en) 2018-07-20 2022-06-14 Tesla, Inc. Annotation cross-labeling for autonomous control systems
US11636333B2 (en) 2018-07-26 2023-04-25 Tesla, Inc. Optimizing neural network structures for embedded systems
US11562231B2 (en) 2018-09-03 2023-01-24 Tesla, Inc. Neural networks for embedded devices
CN115512173A (zh) 2018-10-11 2022-12-23 特斯拉公司 用于使用增广数据训练机器模型的系统和方法
US11196678B2 (en) 2018-10-25 2021-12-07 Tesla, Inc. QOS manager for system on a chip communications
US11816585B2 (en) 2018-12-03 2023-11-14 Tesla, Inc. Machine learning models operating at different frequencies for autonomous vehicles
US11537811B2 (en) 2018-12-04 2022-12-27 Tesla, Inc. Enhanced object detection for autonomous vehicles based on field view
US11610117B2 (en) 2018-12-27 2023-03-21 Tesla, Inc. System and method for adapting a neural network model on a hardware platform
US10997461B2 (en) 2019-02-01 2021-05-04 Tesla, Inc. Generating ground truth for machine learning from time series elements
US11567514B2 (en) 2019-02-11 2023-01-31 Tesla, Inc. Autonomous and user controlled vehicle summon to a target
US10956755B2 (en) 2019-02-19 2021-03-23 Tesla, Inc. Estimating object properties using visual image data
KR102243125B1 (ko) 2020-07-31 2021-04-22 주식회사 웨이센 신경망 모델을 이용한 영상의 복합 특성 분류 방법 및 장치
KR102236615B1 (ko) 2020-07-31 2021-04-06 주식회사 웨이센 복합 특성 분류와 공통 국소화를 위한 신경망 모델의 학습 방법 및 장치
KR102387437B1 (ko) * 2020-08-06 2022-04-15 주식회사 영국전자 영상인식을 위한 스펙트럼-공간 패턴생성 방법

Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR20160122452A (ko) 2015-04-14 2016-10-24 (주)한국플랫폼서비스기술 비주얼 콘텐츠기반 영상 인식을 위한 딥러닝 프레임워크 및 영상 인식 방법
KR20170077183A (ko) * 2014-10-27 2017-07-05 이베이 인크. 계층적인 심층 합성곱 신경망
KR20170099848A (ko) * 2014-12-19 2017-09-01 인텔 코포레이션 컨볼루션 연산을 수행하기 위한 저장 디바이스 및 방법

Patent Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR20170077183A (ko) * 2014-10-27 2017-07-05 이베이 인크. 계층적인 심층 합성곱 신경망
KR20170099848A (ko) * 2014-12-19 2017-09-01 인텔 코포레이션 컨볼루션 연산을 수행하기 위한 저장 디바이스 및 방법
KR20160122452A (ko) 2015-04-14 2016-10-24 (주)한국플랫폼서비스기술 비주얼 콘텐츠기반 영상 인식을 위한 딥러닝 프레임워크 및 영상 인식 방법

Non-Patent Citations (2)

* Cited by examiner, † Cited by third party
Title
Aravind Vasudevan 외 2명. Parallel Multi Channel Convolution using General Matrix Multiplication. 2017.7.3. *
Caiwen Ding 외 15명. CirCNN: Accelerating and Compressing Deep Neural Networks Using Block-Circulant Weight Matrices. 2017.8.29. *

Cited By (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR20210014897A (ko) 2019-07-31 2021-02-10 한양대학교 산학협력단 인공 신경망을 위한 행렬 연산기 및 행렬 연산 방법
CN112434781A (zh) * 2019-08-26 2021-03-02 上海寒武纪信息科技有限公司 用于处理数据的方法、装置以及相关产品
CN113837923A (zh) * 2021-09-26 2021-12-24 安徽寒武纪信息科技有限公司 数据处理装置、数据处理方法及相关产品

Also Published As

Publication number Publication date
KR102095335B1 (ko) 2020-03-31

Similar Documents

Publication Publication Date Title
KR20190055447A (ko) 연산 가속화가 적용된 신경망 모델의 생성 및 활용을 위한 장치 및 방법
Li et al. Highly efficient forward and backward propagation of convolutional neural networks for pixelwise classification
TWI806134B (zh) 用於分層權重稀疏卷積處理之方法和系統及其相關的非暫時性電腦可讀儲存媒體
CN107871306B (zh) 一种图片去噪的方法和装置
US11328184B2 (en) Image classification and conversion method and device, image processor and training method therefor, and medium
JP2021509747A (ja) ハードウェアベースのプーリングのシステムおよび方法
ES2284478T3 (es) Procedimiento y aparato para el tratamiento de imagenes en color.
CN111932445A (zh) 对风格迁移网络的压缩方法及风格迁移方法、装置和系统
CN112581414A (zh) 一种卷积神经网络、图像处理的方法及电子设备
CN111696038A (zh) 图像超分辨率方法、装置、设备及计算机可读存储介质
CN113015022A (zh) 行为识别方法、装置、终端设备及计算机可读存储介质
WO2010080857A2 (en) Scalable media fingerprint extraction
CN112529862A (zh) 一种交互循环特征重塑的显著性图像检测方法
CN115984701A (zh) 一种基于编解码结构的多模态遥感图像语义分割方法
CN106682258B (zh) 一种高层次综合工具中的多操作数加法优化方法及系统
KR102227437B1 (ko) 연산 가속화가 적용된 신경망 모델의 생성 및 활용을 위한 장치 및 방법
WO2021188262A1 (en) Processing in memory methods for convolutional operations
Kharinov et al. Object detection in color image
Happ et al. Towards distributed region growing image segmentation based on MapReduce
JP2023541466A (ja) 階層的パレットテーブル生成を利用したパレットモードビデオ符号化
CN113269701A (zh) 一种基于注意力引导和核选择机制的低照度图像增强方法
CN110462637B (zh) 神经网络数据处理装置和方法
US20230124075A1 (en) Methods, systems, and media for computer vision using 2d convolution of 4d video data tensors
CN112183711B (zh) 使用像素通道置乱的卷积神经网络的演算方法与系统
Kharinov et al. Data Structure for Multimodal Signal Processing

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