KR102276339B1 - Cnn의 근사화를 위한 학습 장치 및 방법 - Google Patents

Cnn의 근사화를 위한 학습 장치 및 방법 Download PDF

Info

Publication number
KR102276339B1
KR102276339B1 KR1020140175946A KR20140175946A KR102276339B1 KR 102276339 B1 KR102276339 B1 KR 102276339B1 KR 1020140175946 A KR1020140175946 A KR 1020140175946A KR 20140175946 A KR20140175946 A KR 20140175946A KR 102276339 B1 KR102276339 B1 KR 102276339B1
Authority
KR
South Korea
Prior art keywords
cnn
changing
learning
filter
approximation
Prior art date
Application number
KR1020140175946A
Other languages
English (en)
Other versions
KR20160069834A (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 KR1020140175946A priority Critical patent/KR102276339B1/ko
Priority to US14/960,942 priority patent/US10452979B2/en
Publication of KR20160069834A publication Critical patent/KR20160069834A/ko
Application granted granted Critical
Publication of KR102276339B1 publication Critical patent/KR102276339B1/ko

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06NCOMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
    • G06N20/00Machine learning
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06NCOMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
    • G06N3/00Computing arrangements based on biological models
    • G06N3/02Neural networks
    • G06N3/08Learning methods
    • G06N3/082Learning methods modifying the architecture, e.g. adding, deleting or silencing nodes or connections
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06NCOMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
    • G06N3/00Computing arrangements based on biological models
    • G06N3/02Neural networks
    • G06N3/04Architecture, e.g. interconnection topology
    • G06N3/045Combinations of networks
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T2207/00Indexing scheme for image analysis or image enhancement
    • G06T2207/20Special algorithmic details
    • G06T2207/20081Training; Learning
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T2207/00Indexing scheme for image analysis or image enhancement
    • G06T2207/20Special algorithmic details
    • G06T2207/20084Artificial neural networks [ANN]

Abstract

CNN의 근사화를 위한 학습 장치 및 방법이 개시된다. 일 양상에 따른, 다수의 컨볼루션 레이어를 포함하는 CNN(Convolutional Neural Network)의 근사화를 위한 학습 방법은, 다수의 컨볼루션 레이어 중 하나를 낮은 계수 근사법(Low Rank Approximation)을 이용하여 근사화하는 단계와, 근사화된 컨볼루션 레이어의 출력 복원 필터의 개수를 근사화에 따른 출력 복원 필터의 개수보다 작은 범위 내에서 변경하는 단계와, 근사화 결과 및 출력 복원 필터의 개수 변경 결과를 기반으로 CNN의 구조를 변경하는 단계와, 변경된 CNN을 학습시키는 단계를 포함할 수 있다.

Description

CNN의 근사화를 위한 학습 장치 및 방법{Apparatus and method for training convolutional neural network for approximation of convolutional neural network}
기계 학습(machine learning) 기술에 관한 것으로, 특히, CNN의 근사화를 위한 학습 장치 및 방법에 관한 것이다.
최근 딥러닝(deep learning)이라는 기술이 다양한 분야에서 각광받고 있고, 특히 객체 인식(object recognition) 분야에서는 딥러닝의 일종인 CNN(convolutional neural network)이라는 기술이 각광받고 있다.
CNN은 사람이 물체를 인식할 때 물체의 기본적인 특징들을 추출한 다음 뇌 속에서 복잡한 계산을 거쳐 그 결과를 기반으로 물체를 인식한다는 가정을 기반으로 만들어진 사람의 뇌 기능을 모사한 모델이다. CNN에서는 기본적으로 컨볼루션(convolution) 연산을 통해 영상의 특징을 추출하기 위한 다양한 필터와 비선형적인 특성을 더하기 위한 풀링(pooling) 또는 비선형 활성화(non-linear activation) 함수 등이 함께 사용된다.
한편, CNN은 모델이 클수록 객체 인식의 정확도가 커진다. 따라서, 객체 인식 분야에서는 보통 필요 이상의 큰 모델을 사용하기 때문에, 실제로 영상에서 객체를 인식할 때는 시간이 오래 걸린다는 문제가 있다.
빠른 시간에 영상 데이터를 분류할 있도록 CNN을 근사화하기 위한 학습 장치 및 방법을 제공하는 것을 목적으로 한다.
일 양상에 따른, 다수의 컨볼루션 레이어를 포함하는 CNN(Convolutional Neural Network)의 근사화를 위한 학습 방법은, 다수의 컨볼루션 레이어 중 하나를 낮은 계수 근사법(Low Rank Approximation)을 이용하여 근사화하는 단계와, 근사화된 컨볼루션 레이어의 출력 복원 필터의 개수를 근사화에 따른 출력 복원 필터의 개수보다 작은 범위 내에서 변경하는 단계와, 근사화 결과 및 출력 복원 필터의 개수 변경 결과를 기반으로 CNN의 구조를 변경하는 단계와, 변경된 CNN을 학습시키는 단계를 포함할 수 있다.
학습 방법은, 학습시키는 단계 이후에, 근사화된 컨볼루션 레이어의 다음 컨볼루션 레이어 중 적어도 일부의 컨볼루션 레이어에 대하여 순차적으로 근사화하는 단계, 출력 복원 필터 개수를 변경하는 단계, CNN의 구조를 변경하는 단계, 및 학습시키는 단계를 반복 수행하는 단계를 더 포함할 수 있다.
학습 방법은, 학습시키는 단계 이후에, 학습된 CNN을 이용하여 영상 데이터를 분류하는 단계와, 분류의 정확도가 설정된 기준을 만족하지 않는 경우, 출력 복원 필터 개수를 변경하는 단계, CNN의 구조를 변경하는 단계, 및 학습시키는 단계를 반복 수행하는 단계를 더 포함할 수 있다.
학습 방법은, 근사화된 컨볼루션 레이어의 다음 컨볼루션 레이어 중 적어도 일부의 컨볼루션 레이어의 구조를 변경하는 단계를 더 포함하고, CNN의 구조를 변경하는 단계는, 적어도 일부의 컨볼루션 레이어의 구조 변경 결과를 더 기반으로 CNN의 구조를 변경할 수 있다.
적어도 일부의 컨볼루션 레이어의 구조를 변경하는 단계는, 적어도 일부의 컨볼루션 레이어의 컨볼루션 필터의 개수를 변경함으로써 적어도 일부의 컨볼루션 레이어의 구조를 변경할 수 있다.
학습 방법은, 학습시키는 단계 이후에, 학습된 CNN을 이용하여 영상 데이터를 분류하는 단계와, 분류의 정확도가 설정된 기준을 만족하지 않는 경우, 적어도 일부의 컨볼루션 레이어의 구조를 변경하는 단계, CNN의 구조를 변경하는 단계, 및 학습시키는 단계를 반복 수행하는 단계를 더 포함할 수 있다.
근사화하는 단계는, 다수의 컨볼루션 레이어 중 하나를 입력 변환 필터, 컨볼루션 필터, 및 출력 복원 필터로 근사화할 수 있다.
입력 변환 필터는 입력 데이터의 채널의 수를 줄이는 필터이고, 컨볼루션 필터는 채널 수가 줄어든 입력 데이터에 대해 컨볼루션 연산을 수행하는 필터이고, 출력 복원 필터는 컨볼루션 연산 결과를 컨볼루션 레이어와 동일한 채널 개수로 복원하는 필터일 수 있다.
다른 양상에 따른, 다수의 컨볼루션 레이어를 포함하는 CNN(Convolutional Neural Network)의 근사화를 위한 학습 장치는, 다수의 컨볼루션 레이어 중 하나를 낮은 계수 근사법(Low Rank Approximation)을 이용하여 근사화하는 근사화부와, 근사화된 컨볼루션 레이어의 출력 복원 필터의 개수를 근사화에 따른 출력 복원 필터의 개수보다 작은 범위 내에서 변경하는 필터 개수 변경부와, 근사화 결과 및 출력 복원 필터의 개수 변경 결과를 기반으로 CNN의 구조를 변경하고, 변경된 CNN을 학습시키는 학습부를 포함할 수 있다.
근사화부는, 변경된 CNN의 학습이 완료될 때마다 근사화된 컨볼루션 레이어의 다음 컨볼루션 레이어를 순차적으로 근사화할 수 있다.
학습 장치는, 학습된 CNN을 이용하여 영상 데이터를 분류하는 분류부를 더 포함하고, 변경부는, 분류의 정확도가 설정된 기준을 만족하지 않는 경우, 출력 복원 필터의 개수를 재변경할 수 있다.
학습 장치는, 근사화된 컨볼루션 레이어의 다음 컨볼루션 레이어 중 적어도 일부의 컨볼루션 레이어의 구조를 변경하는 레이어 구조 변경부를 더 포함하고, 학습부는, 적어도 일부의 컨볼루션 레이어의 구조 변경 결과를 더 기반으로 CNN의 구조를 변경할 수 있다.
레이어 구조 변경부는, 적어도 일부의 컨볼루션 레이어의 컨볼루션 필터의 개수를 변경함으로써 적어도 일부의 컨볼루션 레이어의 구조를 변경할 수 있다.
학습 장치는, 학습된 CNN을 이용하여 영상 데이터를 분류하는 분류부를 더 포함하고, 레이어 구조 변경부는, 분류의 정확도가 설정된 기준을 만족하지 않는 경우, 적어도 일부의 컨볼루션 레이어의 구조를 재변경할 수 있다.
근사화부는, 다수의 컨볼루션 레이어 중 하나를 입력 변환 필터, 컨볼루션 필터, 및 출력 복원 필터로 근사화할 수 있다.
입력 변환 필터는 입력 데이터의 채널의 수를 줄이는 필터이고, 컨볼루션 필터는 채널 수가 줄어든 입력 데이터에 대해 컨볼루션 연산을 수행하는 필터이고, 출력 복원 필터는 컨볼루션 연산 결과를 컨볼루션 레이어와 동일한 채널 개수로 복원하는 필터일 수 있다.
CNN을 다중 계층을 고려하여 근사화 및 학습시킴으로써 CNN을 통한 연산 속도를 증가시킬 수 있다.
도 1은 CNN(Convolutional Neural Network) 구조를 도시한 도면이다.
도 2는 CNN의 근사화를 위한 학습 장치의 일 실시예를 도시한 블록도이다.
도 3는 도 2의 근사화부(210)가 컨볼루션 레이어를 근사화한 예를 도시한 도면이다.
도 4a 내지 도 4d는 도 2의 학습 장치(200)의 동작을 설명하기 위한 예시도이다.
도 5는 CNN의 근사화를 위한 학습 방법의 일 실시예를 도시한 흐름도이다.
도 6은 CNN의 근사화를 위한 학습 방법의 다른 실시예를 도시한 흐름도이다.
도 7은 CNN의 근사화를 위한 학습 방법의 또 다른 실시예를 도시한 흐름도이다.
이하, 첨부된 도면을 참조하여 본 발명의 일 실시예를 상세하게 설명한다. 본 발명을 설명함에 있어 관련된 공지 기능 또는 구성에 대한 구체적인 설명이 본 발명의 요지를 불필요하게 흐릴 수 있다고 판단되는 경우에는 그 상세한 설명을 생략할 것이다. 또한, 후술되는 용어들은 본 발명에서의 기능을 고려하여 정의된 용어들로서 이는 사용자, 운용자의 의도 또는 관례 등에 따라 달라질 수 있다. 그러므로, 그 정의는 본 명세서 전반에 걸친 내용을 토대로 내려져야 할 것이다.
도 1은 CNN(Convolutional Neural Network) 구조를 도시한 도면이다.
도 1을 참조하면, CNN은 입력 레이어(10), 히든 레이어(20) 및 출력 레이어(30)를 포함한다. 입력 레이어(10)는 입력 영상 데이터(50)를 입력 받는다. 히든 레이어(20)는 다수의 레이어(21, 22)로 구성되고, 각 레이어(21, 22)는 컨볼루션 레이어(23, 25) 및 서브 샘플링 레이어(24, 26)을 포함한다. 컨볼루션 레이어(23, 25)는 컨볼루션 필터를 이용하여 각 레이어(21, 22)에 입력된 영상 데이터(50, 52)에 컨볼루션 연산을 수행하고, 특징 지도(feature map)(51, 53)를 생성한다. 이때, 특징 지도는 입력 영상 데이터(50)의 다양한 특징이 표현된 영상 데이터를 의미한다. 서브 샘플링 레이어(24, 26)는 샘플링 또는 풀링(pooling)을 통해 특징 지도(51, 53)의 크기를 감소시킨다. 출력 레이어(30)는 특징 지도(54)에 표현된 다양한 특징을 조합하여 영상 데이터(50)의 클래스(class)를 분류한다. 이때, 출력 레이어(30)는 완전 연결 레이어(fully connected layer)로 구성될 수 있다.
일반적으로 CNN의 구조(예컨대, 히든 레이어의 수, 각 레이어에서의 필터의 수와 크기 등)는 미리 결정되며, 각 레이어에서의 필터(특히, 컨볼루션 필터)의 가중치 메트릭스(weight matrix)는 이미 어느 클래스에 속할지 정답이 알려진 데이터들을 이용하여 적절한 값으로 산정된다. 이와 같이 이미 정답이 알려진 데이터들을 '학습 데이터'라고 하고, 필터의 가중치 메트릭스를 결정하는 과정을 '학습'이라고 한다.
도 1에 도시된 예는, 4개의 컨볼루션 필터를 이용하여 4개의 특징 지도(51)를 생성하는 제1 컨볼루션 레이어(23), 및 6개의 컨볼루션 필터를 이용하여 6개의 특징 지도(53)를 생성하는 제2 컨볼루션 레이어(25)를 포함하는 CNN의 구조를 도시한 것이다. 이때, 4개의 특징 지도(51)는 4개의 채널을, 6개의 특징 지도(53)는 6개의 채널을 가진다고 한다.
도 2는 CNN의 근사화를 위한 학습 장치의 일 실시예를 도시한 블록도이다.
도 2를 참조하면, 학습 장치(200)는 근사화부(210), 필터 개수 변경부(220), 레이어 구조 변경부(230), 학습부(240), 및 분류부(250)를 포함할 수 있다.
근사화부(210)는 학습된 CNN의 컨볼루션 레이어를 낮은 계수 근사법을 이용하여 근사화할 수 있다. 예컨대, 근사화부(210)는 학습된 컨볼루션 레이어의 컨볼루션 필터(w)를 낮은 계수 근사법(Low Rank Approximation)을 이용하여 입력 변환 필터(α), 컨볼루션 필터(β) 및 출력 복원 필터(γ)로 근사화할 수 있다. 이때, 근사화부(210)는 외적 분해(outer product decomposition)를 이용하여 컨볼루션 필터(w)의 가중치 메트릭스를 입력 변환 필터(α)의 메트릭스, 컨볼루션 필터(β)의 메트릭스 및 출력 복원 필터(γ)의 메트릭스로 분리할 수 있다.
여기서, 입력 변환 필터(α)는 입력 영상 데이터의 채널 수를 줄이는 필터이고, 컨볼루션 필터(β)는 채널 수가 줄어든 입력 영상 데이터에 컨볼루션 연산을 수행하여 특징 지도를 생성하는 필터이다. 또한, 출력 복원 필터(γ)는 컨볼루션 필터(β)에서 생성된 특징 지도를 컨볼루션 필터(w)의 출력 영상 데이터의 채널 수와 동일한 채널 수로 복원하는 필터이다.
이때, 입력 변환 필터(α)의 개수 및 컨볼루션 필터(β)의 개수는 사용자에 의해 미리 결정될 수 있다.
필터 개수 변경부(220)는 출력 복원 필터(γ)의 개수를 근사화에 따른 출력 복원 필터(γ)의 개수보다 작은 범위 내에서 변경할 수 있다. 예컨대, 근사화된 컨볼루션 레이어가 6개의 출력 복원 필터(γ)를 포함한다고 가정하면, 필터 개수 변경부(220)는 출력 복원 필터(γ)의 개수를 1개 내지 5개 중 하나로 변경할 수 있다. 이때, 출력 복원 필터(γ)의 개수는 임의의 개수로 변경될 수도 있으며, 사용자의 입력에 따라 변경될 수도 있다.
레이어 구조 변경부(230)는 근사화된 컨볼루션 레이어 다음의 컨볼루션 레이어들(이하, 다음 컨볼루션 레이어)의 구조를 변경할 수 있다. 일 실시예에 따르면, 구조 변경부(250)는 다음 컨볼루션 레이어의 컨볼루션 필터 개수를 변경함으로써 다음 컨볼루션 레이어의 구조를 변경할 수 있다. 예컨대, CNN이 3개의 컨볼루션 레이어(제1 컨볼루션 레이어 내지 제3 컨볼루션 레이어)를 포함하고, 근사화부(210)에서 제1 컨볼루션 레이어를 근사화하였다고 가정하면, 레이어 구조 변경부(230)는 제2 컨볼루션 레이어 및 제3 컨볼루션 레이어 중 적어도 하나의 컨볼루션 필터의 개수를 변경하여 그 구조를 변경할 수 있다. 이때, 컨볼루션 필터의 개수는 임의의 개수로 변경될 수도 있으며, 사용자의 입력에 따라 변경될 수도 있다.
학습부(240)는 근사화부(210)의 근사화 결과, 필터 개수 변경부(220)의 출력 복원 필터(γ) 개수 변경 결과 및 레이어 구조 변경부(230)의 다음 컨볼루션 레이어의 구조 변경 결과를 기반으로 CNN의 구조를 변경하고, 학습 데이터를 이용하여 변경된 구조의 CNN을 학습시킬 수 있다. 이때, 학습부(240)는 입력 변환 필터(α)의 값 및 컨볼루션 필터(β)의 값을 고정시키고, 변경된 구조의 CNN을 학습시킬 수 있다.
컨볼루션 레이어의 근사화, 출력 복원 필터(γ)의 개수 변경, 및 다음 컨볼루션 레이어의 구조 변경으로 인하여 CNN의 구조가 변경되어, 기존의 학습 결과는 구조가 변경된 CNN에 적용될 수 없게 된다. 따라서, 변경된 구조의 CNN을 학습시키는 과정이 필요하며, 학습부(230)에서 이러한 기능을 수행한다.
일 실시예에 따르면, 학습부(230)는 오류 역전파(back propagation) 학습 방법을 이용하여 변경된 구조의 CNN을 학습시킬 수 있다.
일반적으로 오류 역전파 학습 방법은 주어진 데이터의 정답과 현재 모델의 예측 값과의 함수로 나타내어지는 손실함수(loss function)를 최소화하기 위해 최적화 기법 중의 하나인 기울기 하강(gradient descent) 방법을 효율적으로 구현하는 방법이다. 이때, 기울기 하강 방법은 변경 가능한 각각의 가중치들을 기준으로 편미분한 기울기 벡터(gradient vector)에 현재 가중치를 대입한 현 위치의 기울기에 어떤 정해진 수를 곱하여 빼는 과정을 여러 번 반복하여 최소값을 찾는 방법이다. 이러한 기울기 벡터를 구하는 방식이 오류 역전파 학습 방법이라 할 수 있다.
분류부(250)는 학습된 CNN을 이용하여 영상 데이터를 분류할 수 있다. 이때, 분류 결과는 영상 데이터가 속하는 클래스 및 분류 정확도를 포함할 수 있다.
일 실시예에 따르면, 필터 개수 변경부(220)는 분류부(250)의 분류 정확도가 설정된 기준을 만족하지 않는 경우, 출력 복원 필터(γ)의 개수를 근사화에 따른 출력 복원 필터(γ)의 개수보다 작은 범위 내에서 재변경할 수 있다. 이 경우, 학습부(240)는 재변경된 출력 복원 필터(γ) 개수를 기초로 CNN의 구조를 재변경하고, 재변경된 CNN을 학습시킬 수 있다. 즉, 일 실시예에 따른 학습 장치(200)는 출력 복원 필터(γ)의 개수를 조정함으로써 분류의 정확도가 높은 CNN의 구조를 찾는 것이 가능하다.
일 실시예에 따르면, 레이어 구조 변경부(230)는 분류부(250)의 분류 정확도가 설정된 기준을 만족하지 않는 경우, 다음 컨볼루션 레이어의 구조를 재변경할 수 있다. 이 경우, 학습부(240)는 구조가 재변경된 다음 컨볼루션 레이어를 기초로 CNN의 구조를 재변경하고, 재변경된 CNN을 학습시킬 수 있다. 즉, 일 실시예에 따른 학습 장치(200)는 다음 컨볼루션 레이어의 구조를 변경함으로써 분류의 정확도가 높은 CNN의 구조를 찾는 것이 가능하다.
한편, 필터 개수 변경부(220) 및 레이어 구조 변경부(240)는 사용자의 입력에 따라 출력 복원 필터(γ)의 개수 및 다음 컨볼루션 레이어의 구조를 각각 변경하는 것도 가능하다.
일 실시예에 따르면, 학습 장치(200)는 CNN의 모든 또는 일부 컨볼루션 레이어에 대하여 레이어의 순서에 따라 순차적으로 근사화, 출력 복원 필터(γ) 개수 변경, 다음 컨볼루션 레이어의 구조 변경 및 학습을 반복 수행할 수 있다. 자세하게는, 근사화부(210), 필터 개수 변경부(220), 레이어 구조 변경부(230) 및 학습부(240)는 CNN의 모든 또는 일부 컨볼루션 레이어에 대하여 순차적으로 근사화, 출력 복원 필터(γ) 개수 변경, 다음 컨볼루션 레이어의 구조 변경 및 학습을 반복 수행하도록 구현될 수 있다.
이에 대한 자세한 설명은 도 4a 내지 도 4d를 참조하여 후술하기로 한다.
도 3는 도 2의 근사화부(210)가 컨볼루션 레이어를 근사화한 예를 도시한 도면이다.
도 3를 참조하면, 4채널 입력 영상 데이터(310)를 입력 받아 6개의 컨볼루션 필터(w)(315)를 이용하여 6채널 출력 영상 데이터(320), 즉, 6개의 특징 지도를 출력하는 컨볼루션 레이어를 근사화 한다고 가정한다. 이때, 근사화부(210)는 낮은 계수 근사법(Low Rank Approximation)을 이용하여 6개의 컨볼루션 필터(w)(315)를 입력 영상 데이터(310)의 채널의 수를 4개에서 2개로 줄이는 입력 변환 필터(α)(325), 입력 변환 필터(α)(325)의 출력인 2채널 영상 데이터(330)에 컨볼루션 연산을 수행하는 2개의 컨볼루션 필터(β)(335), 및 컨볼루션 필터(β)(335)의 출력인 2채널 영상 데이터(340)를 근사화 전과 동일한 개수인 6개의 채널로 복원하는 출력 복원 필터(γ)(345)로 근사화할 수 있다. 이때, 근사화를 위한 입력 변환 필터(α)(325)의 개수 및 컨볼루션 필터(β)(335)의 개수는 사용자에 의해 미리 설정될 수 있다.
이하, 도 4a 내지 도 4d를 참조하여 학습 장치(200)의 동작을 상세하게 설명한다.
도 4a 내지 도 4d는 도 2의 학습 장치(200)의 동작을 설명하기 위한 예시도이다.
도 2 및 도 4a를 참조하면, 근사화부(210)는 CNN(410)의 제1 컨볼루션 레이어(411)를 낮은 계수 근사법을 이용하여 입력 변환 필터(α1)(421a), 2개의 컨볼루션 필터(β1)(421b) 및 출력 복원 필터(γ1)(421c)로 근사화한다. 이때, 컨볼루션 필터(β1)(421b)의 개수는 제1 컨볼루션 레이어(411)의 컨볼루션 필터의 개수보다 작은 범위 내에서 사용자에 의해 설정될 수 있다.
도 2, 도 4a 및 도 4b를 참조하면, 필터 개수 변경부(220)는 근사화된 제1 컨볼루션 레이어(421)의 출력 복원 필터(γ1)(421c)의 개수를 근사화 결과보다 작은 범위 내에서 변경한다. 예컨대, 근사화 결과 출력 복원 필터(γ1)(421c)의 개수가 5개이면, 필터 개수 변경부(220)는 출력 복원 필터(γ1)(421c)의 개수를 3개로 변경할 수 있다. 참조번호 421d는 개수가 변경된 출력 복원 필터(γ1')를 나타낸다.
레이어 구조 변경부(250)는 CNN(410)의 제2 컨볼루션 레이어(413) 및 제3 컨볼루션 레이어(415)의 구조를 변경한다. 도시된 예에서, 레이어 구조 변경부(250)는 제2 컨볼루션 레이어(413)의 컨볼루션 필터의 개수를 6개에서 3개로 변경하고, 제3 컨볼루션 레이어(415)의 컨볼루션 필터의 개수를 4개에서 3개로 변경한다. 참조번호 423은 변경된 제2 컨볼루션 레이어를, 참조번호 425는 변경된 제3 컨볼루션 레이어를 나타낸다.
학습부(230)는 입력 변환 필터(α1)(421a) 및 컨볼루션 필터(β1)(421b)를 고정시키고, 변경된 구조의 CNN(420)을 학습시킨다.
도 2 및 도 4c를 참조하면, 학습부(230)에서 변경된 CNN(420)의 학습이 완료되면, 근사화부(210)는 학습된 CNN(420)의 제2 컨볼루션 레이어(423)를 낮은 계수 근사법을 이용하여 입력 변환 필터(α2)(433a), 2개의 컨볼루션 필터(β2)(433b) 및 출력 복원 필터(γ2)(433c)로 근사화한다. 이때, 컨볼루션 필터(β2)(433b)의 개수는 제2 컨볼루션 레이어(423)의 컨볼루션 필터의 개수보다 작은 범위 내에서 사용자에 의해 설정될 수 있다.
도 2, 도 4c 및 도 4d를 참조하면, 필터 개수 변경부(220)는 근사화된 제2 컨볼루션 레이어(433)의 출력 복원 필터(γ2)(433c)의 개수를 근사화 결과보다 작은 범위 내에서 변경한다. 예컨대, 근사화 결과 출력 복원 필터(γ2)(433c)의 개수가 6개이면, 필터 개수 변경부(220)는 출력 복원 필터(γ2)(433c)의 개수를 4개로 변경할 수 있다. 참조번호 433d는 개수가 변경된 출력 복원 필터(γ2')를 나타낸다.
레이어 구조 변경부(250)는 CNN(420)의 제3 컨볼루션 레이어(425)의 구조를 변경한다. 도시된 예에서, 레이어 구조 변경부(250)는 제3 컨볼루션 레이어(425)의 컨볼루션 필터의 개수를 3개에서 1개로 변경한다.
학습부(230)는 제1 컨볼루션 레이어(422), 입력 변환 필터(α2)(433a) 및 컨볼루션 필터(β2)(433b)를 고정시키고, 변경된 구조의 CNN(430)을 학습시킨다.
도시된 예에서, 마지막 컨볼루션 레이어인 제3 컨볼루션 레이어(435)에 대해서는 근사화, 출력 복원 필터의 개수 변경, 및 학습 과정을 수행하지 않는 것으로 도시하고 있으나, 이에 한정되는 것은 아니다. 즉, 학습 장치(200)는 제3 컨볼루션 레이어(435)에 대해 근사화만 수행하는 것도 가능하고, 근사화, 출력 복원 필터의 개수 변경, 및 학습 과정을 모두 수행하는 것도 가능하다.
또한, 학습 장치(200)는 제1 컨볼루션 레이어에 대해서는 근사화, 출력 복원 필터의 개수 변경, 및 학습 과정을 수행하지 않고, 제2 컨볼루션 레이어 및 제3 컨볼루션 레이어에 대해서만 근사화, 출력 복원 필터의 개수 변경, 및 학습 과정을 수행하는 것도 가능하다.
또한, 학습 장치(200)는 제1 컨볼루션 레이어를 근사화한 후 CNN을 학습시키기 전에, 제2 컨볼루션 레이어 및 제3 컨볼루션 레이어의 구조를 변경하는 과정을 생략할 수도 있고, 제2 컨볼루션 레이어와 제3 컨볼루션 레이어 중 하나에 대해서만 그 구조를 변경하는 과정을 수행하는 것도 가능하다.
도 5는 CNN의 근사화를 위한 학습 방법의 일 실시예를 도시한 흐름도이다.
도 5를 참조하면, 일 실시예에 따른 학습 방법(500)은, 먼저, CNN의 컨볼루션 레이어를 낮은 계수 근사법을 이용하여 근사화한다(510).
예컨대, 학습 장치(200)는 컨볼루션 레이어의 컨볼루션 필터(w)를 낮은 계수 근사법(Low Rank Approximation)을 이용하여 입력 변환 필터(α), 컨볼루션 필터(β) 및 출력 복원 필터(γ)로 근사화할 수 있다. 여기서, 입력 변환 필터(α)는 입력 영상 데이터의 채널 수를 줄이는 필터이고, 컨볼루션 필터(β)는 채널 수가 줄어든 입력 영상 데이터에 컨볼루션 연산을 수행하여 특징 지도를 생성하는 필터이다. 또한, 출력 복원 필터(γ)는 컨볼루션 필터(β)에서 생성된 특징 지도를 컨볼루션 필터(w)의 출력 영상 데이터의 채널 수와 동일한 채널 수로 복원하는 필터이다.
이때, 입력 변환 필터(α)의 개수 및 컨볼루션 필터(β)의 개수는 사용자에 의해 미리 결정될 수 있다.
그 후, 근사화된 컨볼루션 레이어의 출력 복원 필터(γ)의 개수를 근사화에 따른 출력 복원 필터(γ)의 개수보다 작은 범위 내에서 변경한다(520). 예컨대, 근사화된 컨볼루션 레이어가 6개의 출력 복원 필터(γ)를 포함한다고 가정하면, 학습 장치(200)는 출력 복원 필터(γ)의 개수를 1개 내지 5개 중 하나로 변경할 수 있다.
그 후, 근사화 결과 및 출력 복원 필터(γ)의 개수 변경 결과를 기반으로 CNN의 구조를 변경하고(530), 변경된 구조의 CNN을 학습시킨다(540). 예컨대, 학습 장치(200)는 변경된 구조의 CNN에서 입력 변환 필터(α)의 값 및 컨볼루션 필터(β)의 값을 고정시키고 변경된 구조의 CNN을 학습시킬 수 있다.
그 후, 근사화된 컨볼루션 레이어의 다음 컨볼루션 레이어가 존재하면(550), 단계 510으로 돌아가 다음 컨볼루션 레이어에 대하여 레이어의 순서에 따라 순차적으로 단계 510 내지 단계 540을 수행한다.
도 6은 CNN의 근사화를 위한 학습 방법의 다른 실시예를 도시한 흐름도이다.
도 6을 참조하면, 다른 실시예에 따른 학습 방법(600)은 도 5의 학습 방법(500)에 학습된 CNN을 이용하여 영상 데이터를 분류하는 단계(610) 및 분류 정확도가 설정된 기준을 만족하는지 여부를 판단하는 단계(610)를 더 포함할 수 있다.
학습 방법(600)은 단계 540에서 학습된 변경된 구조의 CNN을 이용하여 영상 데이터를 분류한다(610). 그 후, 분류의 정확도가 설정된 기준을 만족하는지 여부를 판단하고(620), 분류의 정확도가 설정된 기준을 만족하지 않는 경우, 단계 520 내지 540을 다시 수행한다.
예컨대, 학습 장치(200)는 학습된 변경된 구조의 CNN을 이용하여 영상 데이터를 분류한다. 그 후, 학습 장치(200)는 분류의 정확도가 설정된 기준을 만족하지 않는 경우, 출력 복원 필터(γ)의 개수를 근사화 결과보다 작은 범위 내에서 재변경하고, 이를 기반으로 CNN의 구조를 재변경하고 재변경된 CNN을 학습시킬 수 있다.
한편, 학습 방법(600)은 학습된 변경된 구조의 CNN을 이용한 분류의 정확도가 설정된 기준을 만족하는 경우(610), 단계 550을 수행한다.
도 7은 CNN의 근사화를 위한 학습 방법의 또 다른 실시예를 도시한 흐름도이다.
도 7을 참조하면, 또 다른 실시예에 따른 학습 방법(700)은 먼저, CNN의 컨볼루션 레이어를 낮은 계수 근사법을 이용하여 근사화한다(710).
예컨대, 학습 장치(200)는 컨볼루션 레이어의 컨볼루션 필터(w)를 낮은 계수 근사법(Low Rank Approximation)을 이용하여 입력 변환 필터(α), 컨볼루션 필터(β) 및 출력 복원 필터(γ)로 근사화할 수 있다. 이때, 입력 변환 필터(α)의 개수 및 컨볼루션 필터(β)의 개수는 사용자에 의해 미리 결정될 수 있다.
그 후, 근사화된 컨볼루션 레이어의 출력 복원 필터(γ)의 개수를 근사화에 따른 출력 복원 필터(γ)의 개수보다 작은 범위 내에서 변경한다(720). 예컨대, 근사화된 컨볼루션 레이어가 6개의 출력 복원 필터(γ)를 포함한다고 가정하면, 학습 장치(200)는 출력 복원 필터(γ)의 개수를 1개 내지 5개 중 하나로 변경할 수 있다.
그 후, 근사화된 컨볼루션 레이어의 다음 컨볼루션 레이어가 존재하는지 여부를 판단하고(730), 다음 컨볼루션 레이어가 존재하면, 다음 컨볼루션 레이어의 구조를 변경한다(740). 예컨대, 학습 장치(200)는 다음 컨볼루션 레이어의 컨볼루션 필터의 개수를 변경함으로써 다음 컨볼루션 레이어의 구조를 변경할 수 있다.
그 후, 근사화 결과, 출력 복원 필터(γ)의 개수 변경 결과 및 다음 컨볼루션 레이어의 구조 변경 결과를 기반으로 CNN의 구조를 변경하고(740), 변경된 구조의 CNN을 학습시킨다(750). 예컨대, 학습 장치(200)는 변경된 구조의 CNN에서 입력 변환 필터(α)의 값 및 컨볼루션 필터(β)의 값을 고정시키고 변경된 구조의 CNN을 학습시킬 수 있다.
그 후, 변경된 구조의 CNN을 학습 데이터를 이용하여 영상 데이터를 분류하고(770), 분류의 정확도가 설정된 기준을 만족하는지 여부를 판단한다(780).
판단 결과, 분류의 정확도가 설정된 기준을 만족하지 않는 경우, 단계 740 내지 770을 다시 수행한다.
판단 결과, 분류의 정확도가 설정된 기준을 만족하는 경우, 단계 710으로 돌아가 다음 컨볼루션 레이어에 대해 근사화를 수행한다.
한편, 단계 730의 판단 결과, 다음 컨볼루션 레이어가 존재하지 않으면, 근사화 결과 및 출력 복원 필터의 개수 변경 결과를 기반으로 CNN의 구조를 변경하고(790), 변경된 구조의 CNN을 학습시킨다(800).
본 발명의 일 양상은 컴퓨터로 읽을 수 있는 기록 매체에 컴퓨터가 읽을 수 있는 코드로서 구현될 수 있다. 상기의 프로그램을 구현하는 코드들 및 코드 세그먼트들은 당해 분야의 컴퓨터 프로그래머에 의하여 용이하게 추론될 수 있다. 컴퓨터가 읽을 수 있는 기록 매체는 컴퓨터 시스템에 의하여 읽혀질 수 있는 데이터가 저장되는 모든 종류의 기록 장치를 포함할 수 있다. 컴퓨터가 읽을 수 있는 기록 매체의 예로는 ROM, RAM, CD-ROM, 자기 테이프, 플로피 디스크, 광 디스크 등을 포함할 수 있다. 또한, 컴퓨터가 읽을 수 있는 기록 매체는 네트워크로 연결된 컴퓨터 시스템에 분산되어, 분산 방식으로 컴퓨터가 읽을 수 있는 코드로 작성되고 실행될 수 있다.
이제까지 본 발명에 대하여 그 바람직한 실시 예들을 중심으로 살펴보았다. 본 발명이 속하는 기술 분야에서 통상의 지식을 가진 자는 본 발명이 본 발명의 본질적인 특성에서 벗어나지 않는 범위에서 변형된 형태로 구현될 수 있음을 이해할 수 있을 것이다. 따라서, 본 발명의 범위는 전술한 실시 예에 한정되지 않고 특허 청구범위에 기재된 내용과 동등한 범위 내에 있는 다양한 실시 형태가 포함되도록 해석되어야 할 것이다.
200: 학습 장치
210: 근사화부
220: 필터 개수 변경부
230: 레이어 구조 변경구
240: 학습부
250: 분류부

Claims (16)

  1. 다수의 컨볼루션 레이어를 포함하는 CNN(Convolutional Neural Network)의 근사화를 위한 학습 방법에 있어서,
    상기 다수의 컨볼루션 레이어 중 하나를 낮은 계수 근사법(Low Rank Approximation)을 이용하여 근사화하는 단계;
    근사화된 컨볼루션 레이어의 출력 복원 필터의 개수를 근사화에 따른 출력 복원 필터의 개수보다 작은 범위 내에서 변경하는 단계;
    근사화 결과 및 출력 복원 필터의 개수 변경 결과를 기반으로 상기 CNN의 구조를 변경하는 단계; 및
    상기 변경된 CNN을 학습시키는 단계; 를 포함하고,
    상기 근사화하는 단계는,
    상기 다수의 컨볼루션 레이어 중 하나를 입력 변환 필터, 컨볼루션 필터, 및 출력 복원 필터로 근사화하고,
    상기 입력 변환 필터는 입력 데이터의 채널의 수를 줄이는 필터이고,
    상기 컨볼루션 필터는 채널 수가 줄어든 입력 데이터에 대해 컨볼루션 연산을 수행하는 필터이고,
    상기 출력 복원 필터는 컨볼루션 연산 결과를 상기 컨볼루션 레이어와 동일한 채널 개수로 복원하는 필터인 학습 방법.
  2. 제1항에 있어서,
    상기 학습시키는 단계 이후에,
    상기 근사화된 컨볼루션 레이어의 다음 컨볼루션 레이어 중 적어도 일부의 컨볼루션 레이어에 대하여 순차적으로 상기 근사화하는 단계, 상기 출력 복원 필터 개수를 변경하는 단계, 상기 CNN의 구조를 변경하는 단계, 및 상기 학습시키는 단계를 반복 수행하는 단계; 를 더 포함하는 학습 방법.
  3. 제1항에 있어서,
    상기 학습시키는 단계 이후에,
    상기 학습된 CNN을 이용하여 영상 데이터를 분류하는 단계; 및
    상기 분류의 정확도가 설정된 기준을 만족하지 않는 경우, 상기 출력 복원 필터 개수를 변경하는 단계, 상기 CNN의 구조를 변경하는 단계, 및 상기 학습시키는 단계를 반복 수행하는 단계; 를 더 포함하는 학습 방법.
  4. 제1항에 있어서,
    상기 근사화된 컨볼루션 레이어의 다음 컨볼루션 레이어 중 적어도 일부의 컨볼루션 레이어의 구조를 변경하는 단계; 더 포함하고,
    상기 CNN의 구조를 변경하는 단계는,
    상기 적어도 일부의 컨볼루션 레이어의 구조 변경 결과를 더 기반으로 상기 CNN의 구조를 변경하는 학습 방법.
  5. 제4항에 있어서,
    상기 적어도 일부의 컨볼루션 레이어의 구조를 변경하는 단계는,
    상기 적어도 일부의 컨볼루션 레이어의 컨볼루션 필터의 개수를 변경함으로써 상기 적어도 일부의 컨볼루션 레이어의 구조를 변경하는 학습 방법.
  6. 제4항에 있어서,
    상기 학습시키는 단계 이후에,
    상기 학습된 CNN을 이용하여 영상 데이터를 분류하는 단계; 및
    상기 분류의 정확도가 설정된 기준을 만족하지 않는 경우, 상기 적어도 일부의 컨볼루션 레이어의 구조를 변경하는 단계, 상기 CNN의 구조를 변경하는 단계, 및 상기 학습시키는 단계를 반복 수행하는 단계; 를 더 포함하는 학습 방법.
  7. 삭제
  8. 삭제
  9. 다수의 컨볼루션 레이어를 포함하는 CNN(Convolutional Neural Network)의 근사화를 위한 학습 장치에 있어서,
    상기 다수의 컨볼루션 레이어 중 하나를 낮은 계수 근사법(Low Rank Approximation)을 이용하여 근사화하는 근사화부;
    근사화된 컨볼루션 레이어의 출력 복원 필터의 개수를 근사화에 따른 출력 복원 필터의 개수보다 작은 범위 내에서 변경하는 필터 개수 변경부; 및
    근사화 결과 및 출력 복원 필터의 개수 변경 결과를 기반으로 상기 CNN의 구조를 변경하고, 상기 변경된 CNN을 학습시키는 학습부; 를 포함하고,
    상기 근사화부는,
    상기 다수의 컨볼루션 레이어 중 하나를 입력 변환 필터, 컨볼루션 필터, 및 출력 복원 필터로 근사화하고,
    상기 입력 변환 필터는 입력 데이터의 채널의 수를 줄이는 필터이고,
    상기 컨볼루션 필터는 채널 수가 줄어든 입력 데이터에 대해 컨볼루션 연산을 수행하는 필터이고,
    상기 출력 복원 필터는 컨볼루션 연산 결과를 상기 컨볼루션 레이어와 동일한 채널 개수로 복원하는 필터인 학습 장치.
  10. 제9항에 있어서,
    상기 근사화부는,
    상기 변경된 CNN의 학습이 완료될 때마다 상기 근사화된 컨볼루션 레이어의 다음 컨볼루션 레이어를 순차적으로 근사화하는 학습 장치.
  11. 제9항에 있어서,
    상기 학습된 CNN을 이용하여 영상 데이터를 분류하는 분류부; 를 더 포함하고,
    상기 변경부는,
    분류의 정확도가 설정된 기준을 만족하지 않는 경우, 상기 출력 복원 필터의 개수를 재변경하는 학습 장치.
  12. 제9항에 있어서,
    상기 근사화된 컨볼루션 레이어의 다음 컨볼루션 레이어 중 적어도 일부의 컨볼루션 레이어의 구조를 변경하는 레이어 구조 변경부; 더 포함하고,
    상기 학습부는,
    상기 적어도 일부의 컨볼루션 레이어의 구조 변경 결과를 더 기반으로 상기 CNN의 구조를 변경하는 학습 장치.
  13. 제12항에 있어서,
    상기 레이어 구조 변경부는,
    상기 적어도 일부의 컨볼루션 레이어의 컨볼루션 필터의 개수를 변경함으로써 상기 적어도 일부의 컨볼루션 레이어의 구조를 변경하는 학습 장치.
  14. 제12항에 있어서,
    상기 학습된 CNN을 이용하여 영상 데이터를 분류하는 분류부; 를 더 포함하고,
    상기 레이어 구조 변경부는,
    분류의 정확도가 설정된 기준을 만족하지 않는 경우, 상기 적어도 일부의 컨볼루션 레이어의 구조를 재변경하는 학습 장치.
  15. 삭제
  16. 삭제
KR1020140175946A 2014-12-09 2014-12-09 Cnn의 근사화를 위한 학습 장치 및 방법 KR102276339B1 (ko)

Priority Applications (2)

Application Number Priority Date Filing Date Title
KR1020140175946A KR102276339B1 (ko) 2014-12-09 2014-12-09 Cnn의 근사화를 위한 학습 장치 및 방법
US14/960,942 US10452979B2 (en) 2014-12-09 2015-12-07 Convolution neural network training apparatus and method thereof

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
KR1020140175946A KR102276339B1 (ko) 2014-12-09 2014-12-09 Cnn의 근사화를 위한 학습 장치 및 방법

Publications (2)

Publication Number Publication Date
KR20160069834A KR20160069834A (ko) 2016-06-17
KR102276339B1 true KR102276339B1 (ko) 2021-07-12

Family

ID=56094617

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1020140175946A KR102276339B1 (ko) 2014-12-09 2014-12-09 Cnn의 근사화를 위한 학습 장치 및 방법

Country Status (2)

Country Link
US (1) US10452979B2 (ko)
KR (1) KR102276339B1 (ko)

Families Citing this family (69)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2016146174A (ja) * 2015-02-06 2016-08-12 パナソニックIpマネジメント株式会社 決定方法およびプログラム
US10515304B2 (en) * 2015-04-28 2019-12-24 Qualcomm Incorporated Filter specificity as training criterion for neural networks
KR101974261B1 (ko) 2016-06-24 2019-04-30 한국과학기술원 Cnn 기반 인루프 필터를 포함하는 부호화 방법과 장치 및 복호화 방법과 장치
CN114495249A (zh) 2016-07-14 2022-05-13 奇跃公司 使用角膜曲率的虹膜边界估计
EP3485425B1 (en) 2016-07-14 2023-08-23 Magic Leap, Inc. Deep neural network for iris identification
US10402697B2 (en) * 2016-08-01 2019-09-03 Nvidia Corporation Fusing multilayer and multimodal deep neural networks for video classification
US10055667B2 (en) 2016-08-03 2018-08-21 X Development Llc Generating a model for an object encountered by a robot
CN106326985A (zh) * 2016-08-18 2017-01-11 北京旷视科技有限公司 神经网络训练方法和装置及数据处理方法和装置
US11238337B2 (en) * 2016-08-22 2022-02-01 Applied Brain Research Inc. Methods and systems for implementing dynamic neural networks
WO2018039269A1 (en) 2016-08-22 2018-03-01 Magic Leap, Inc. Augmented reality display device with deep learning sensors
US9715656B1 (en) 2016-09-12 2017-07-25 International Business Machines Corporation Killing asymmetric resistive processing units for neural network training
US9646243B1 (en) 2016-09-12 2017-05-09 International Business Machines Corporation Convolutional neural networks using resistive processing unit array
KR20180034853A (ko) * 2016-09-28 2018-04-05 에스케이하이닉스 주식회사 합성곱 신경망의 연산 장치 및 방법
RU2016138608A (ru) 2016-09-29 2018-03-30 Мэджик Лип, Инк. Нейронная сеть для сегментации изображения глаза и оценки качества изображения
CA3038967A1 (en) * 2016-10-04 2018-04-12 Magic Leap, Inc. Efficient data layouts for convolutional neural networks
US11003985B2 (en) 2016-11-07 2021-05-11 Electronics And Telecommunications Research Institute Convolutional neural network system and operation method thereof
KR102631381B1 (ko) 2016-11-07 2024-01-31 삼성전자주식회사 컨볼루션 신경망 처리 방법 및 장치
JP6854344B2 (ja) 2016-11-15 2021-04-07 マジック リープ, インコーポレイテッドMagic Leap,Inc. 直方体検出のための深層機械学習システム
KR20180060257A (ko) 2016-11-28 2018-06-07 삼성전자주식회사 객체 인식 방법 및 장치
KR102413561B1 (ko) 2016-12-05 2022-06-24 매직 립, 인코포레이티드 혼합 현실 환경의 가상 사용자 입력 콘트롤들
US10657424B2 (en) 2016-12-07 2020-05-19 Samsung Electronics Co., Ltd. Target detection method and apparatus
KR20180073314A (ko) 2016-12-22 2018-07-02 삼성전자주식회사 컨볼루션 신경망 시스템 및 그것의 동작 방법
KR20180073118A (ko) 2016-12-22 2018-07-02 삼성전자주식회사 컨볼루션 신경망 처리 방법 및 장치
US11151361B2 (en) * 2017-01-20 2021-10-19 Intel Corporation Dynamic emotion recognition in unconstrained scenarios
WO2018170421A1 (en) 2017-03-17 2018-09-20 Magic Leap, Inc. Room layout estimation methods and techniques
KR102061408B1 (ko) * 2017-03-24 2019-12-31 (주)제이엘케이인스펙션 가상 3차원 심층 신경망을 이용하는 영상 분석 장치 및 방법
WO2018187005A1 (en) * 2017-04-07 2018-10-11 Regents Of The University Of Minnesota Methods for scan-specific k-space interpolation reconstruction in magnetic resonance imaging using machine learning
US11037330B2 (en) * 2017-04-08 2021-06-15 Intel Corporation Low rank matrix compression
KR102475826B1 (ko) * 2017-04-21 2022-12-09 삼성메디슨 주식회사 영상 분할 방법 및 그 전자 장치
CN107248144B (zh) * 2017-04-27 2019-12-10 东南大学 一种基于压缩型卷积神经网络的图像去噪方法
US10517680B2 (en) * 2017-04-28 2019-12-31 Medtronic Navigation, Inc. Automatic identification of instruments
KR102343963B1 (ko) * 2017-05-30 2021-12-24 주식회사 케이티 손 제스처를 검출하는 컨볼루션 신경망, 그리고 손 제스처에 의한 기기 제어시스템
CN107368887B (zh) * 2017-07-25 2020-08-07 江西理工大学 一种深度记忆卷积神经网络的装置及其构建方法
IL271929B (en) 2017-07-26 2022-07-01 Magic Leap Inc Neural network training with displays of user interface devices
KR101854258B1 (ko) * 2017-08-29 2018-05-03 한밭대학교 산학협력단 딥러닝을 pc에 적용하기 위한 메모리 최적화 방법
KR101934443B1 (ko) 2017-09-20 2019-01-02 대한민국 합성곱신경망과 이미지 추출을 이용한 주자본과 목판본의 분류 정보 제공 방법
US10719951B2 (en) 2017-09-20 2020-07-21 Magic Leap, Inc. Personalized neural network for eye tracking
US11093832B2 (en) 2017-10-19 2021-08-17 International Business Machines Corporation Pruning redundant neurons and kernels of deep convolutional neural networks
KR102602117B1 (ko) 2017-10-26 2023-11-13 매직 립, 인코포레이티드 딥 멀티태스크 네트워크들에서 적응적 손실 밸런싱을 위한 그라디언트 정규화 시스템들 및 방법들
US10572760B1 (en) * 2017-11-13 2020-02-25 Amazon Technologies, Inc. Image text localization
KR101998036B1 (ko) * 2017-12-06 2019-07-08 한국과학기술원 왜곡 제거 방법 및 장치
US11586924B2 (en) * 2018-01-23 2023-02-21 Qualcomm Incorporated Determining layer ranks for compression of deep networks
US10393842B1 (en) * 2018-02-20 2019-08-27 The Board Of Trustees Of The Leland Stanford Junior University Highly-scalable image reconstruction using deep convolutional neural networks with bandpass filtering
KR102487535B1 (ko) * 2018-02-20 2023-01-12 삼성전자주식회사 시스톨릭 배열(Systolic Array)을 이용하여 딥 러닝(Deep Learning) 연산을 수행하는 방법 및 장치
US11734910B2 (en) * 2018-02-21 2023-08-22 Robert Bosch Gmbh Real-time object detection using depth sensors
KR102178521B1 (ko) * 2018-05-02 2020-11-16 동국대학교 산학협력단 딥 러닝 기반의 홍채 영역 검출 장치 및 방법
CN110533156B (zh) * 2018-05-23 2023-06-23 富士通株式会社 提高卷积神经网络的处理速度的方法和设备
US20190392287A1 (en) 2018-06-22 2019-12-26 Samsung Electronics Co., Ltd. Neural processor
CN108846445B (zh) * 2018-06-26 2021-11-26 清华大学 一种图像处理方法
CN108969980B (zh) * 2018-06-28 2020-06-26 广州视源电子科技股份有限公司 一种跑步机及其步数统计的方法、装置及存储介质
US11449728B2 (en) 2018-07-01 2022-09-20 Al Falcon Ltd. Method of optimization of operating a convolutional neural network and system thereof
US11125844B2 (en) * 2018-07-06 2021-09-21 The Board Of Trustees Of The Leland Stanford Junior University Deep learning based methods to accelerate multi-spectral imaging
KR102476239B1 (ko) 2018-07-17 2022-12-12 삼성전자주식회사 전자 장치, 영상 처리 방법 및 컴퓨터 판독가능 기록 매체
US10824943B2 (en) * 2018-08-21 2020-11-03 GM Global Technology Operations LLC High precision low bit convolutional neural network
KR102547802B1 (ko) 2018-08-23 2023-06-26 삼성전자주식회사 뉴럴 네트워크를 이용하여 화학 구조를 생성하는 장치 및 방법
EP3635953B1 (en) 2018-08-31 2023-10-04 Samsung Electronics Co., Ltd. Electronic device for high-speed compression processing of feature map of cnn utilizing system and controlling method thereof
CN109242033B (zh) * 2018-09-21 2021-08-20 长鑫存储技术有限公司 晶片缺陷模式分类方法及装置、存储介质、电子设备
AU2019365219A1 (en) * 2018-10-24 2021-05-20 Climate Llc Detecting infection of plant diseases with improved machine learning
KR102462910B1 (ko) 2018-11-12 2022-11-04 한국전자통신연구원 배치 정규화 레이어의 웨이트들에 대한 양자화 방법 및 그 장치
WO2020122753A1 (en) * 2018-12-14 2020-06-18 Intel Corporation On the fly adaptive convolutional neural network for variable computational resources
CN111382833A (zh) * 2018-12-29 2020-07-07 佳能株式会社 多层神经网络模型的训练和应用方法、装置及存储介质
CN110009611B (zh) * 2019-03-27 2021-05-14 中南民族大学 一种面向图像序列的视觉目标动态计数方法及系统
US11880760B2 (en) 2019-05-01 2024-01-23 Samsung Electronics Co., Ltd. Mixed-precision NPU tile with depth-wise convolution
KR20220027233A (ko) * 2019-07-01 2022-03-07 옵티멈 세미컨덕터 테크놀로지스 인코포레이티드 파라미터-효율적 시맨틱 이미지 세그먼트화를 위한 피드백 디코더
KR20210052036A (ko) * 2019-10-31 2021-05-10 엘지전자 주식회사 복수 의도어 획득을 위한 합성곱 신경망을 가진 장치 및 그 방법
US20210216868A1 (en) * 2020-01-08 2021-07-15 Maxim Integrated Products, Inc. Systems and methods for reducing memory requirements in neural networks
CN112001485B (zh) * 2020-08-24 2024-04-09 平安科技(深圳)有限公司 一种组卷积数目搜索方法和装置
WO2022109610A1 (en) * 2020-11-20 2022-05-27 Ephesoft Inc. Adaptive filter generator, identifying lines and table morphology
KR20220096021A (ko) * 2020-12-30 2022-07-07 삼성전자주식회사 전자 장치 및 이의 제어 방법

Family Cites Families (10)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US8064726B1 (en) * 2007-03-08 2011-11-22 Nvidia Corporation Apparatus and method for approximating a convolution function utilizing a sum of gaussian functions
WO2010144259A1 (en) 2009-06-09 2010-12-16 Arizona Board Of Regents Acting For And On Behalf Of Arizona State University Ultra-low dimensional representation for face recognition under varying expressions
US8345984B2 (en) 2010-01-28 2013-01-01 Nec Laboratories America, Inc. 3D convolutional neural networks for automatic human action recognition
US8452719B2 (en) 2010-06-29 2013-05-28 Rockwell Automation Technologies, Inc. Extrapolating empirical models for control, prediction, and optimization applications
US8938113B2 (en) 2010-07-26 2015-01-20 Kjaya, Llc Adaptive visualization for direct physician use
US8631017B2 (en) 2010-12-16 2014-01-14 Hewlett-Packard Development, L.P. Collaborative filtering with hashing
CN103814384B (zh) 2011-06-09 2017-08-18 香港科技大学 基于图像的跟踪
US9767410B1 (en) * 2014-10-03 2017-09-19 Google Inc. Rank-constrained neural networks
US9665802B2 (en) * 2014-11-13 2017-05-30 Nec Corporation Object-centric fine-grained image classification
US9563825B2 (en) * 2014-11-20 2017-02-07 Adobe Systems Incorporated Convolutional neural network using a binarized convolution layer

Non-Patent Citations (2)

* Cited by examiner, † Cited by third party
Title
Low-Rank Approximations for Conditional Feedforward Computation in Deep Neural Networks, 2014년 1월 28일, 1부.*
Speeding up convolutional neural networks with low rank expansions, JADERBERG, VEDALDI, AND ZISSERMAN: SPEEDING UP CONVOLUTIONAL, 2014년 5월15일 1부.*

Also Published As

Publication number Publication date
US20160162782A1 (en) 2016-06-09
KR20160069834A (ko) 2016-06-17
US10452979B2 (en) 2019-10-22

Similar Documents

Publication Publication Date Title
KR102276339B1 (ko) Cnn의 근사화를 위한 학습 장치 및 방법
EP4006902B1 (en) Inter-channel feature extraction for audio separation
US20190197109A1 (en) System and methods for performing nlp related tasks using contextualized word representations
KR20180125905A (ko) 딥 뉴럴 네트워크(Deep Neural Network)를 이용하여 문장이 속하는 클래스(class)를 분류하는 방법 및 장치
KR20200052444A (ko) 신경망을 이용하여 예측 결과를 출력하는 방법, 신경망을 생성하는 방법 및 그 장치들
CN109816032B (zh) 基于生成式对抗网络的无偏映射零样本分类方法和装置
CN109726045A (zh) 用于块稀疏递归神经网络的系统和方法
KR20210114074A (ko) 멀티미디어 데이터의 캡셔닝 정보를 생성하는 방법, 장치, 디바이스 및 매체
KR20200045128A (ko) 모델 학습 방법 및 장치, 및 데이터 인식 방법
US11586909B2 (en) Information processing method, information processing apparatus, and computer readable storage medium
KR20180045635A (ko) 뉴럴 네트워크 간소화 방법 및 장치
KR102011788B1 (ko) 계층적 시각 특징을 이용한 시각 질의 응답 장치 및 방법
KR20200128938A (ko) 모델 학습 방법 및 장치
KR20200129639A (ko) 모델 학습 방법 및 장치
CN108491808B (zh) 用于获取信息的方法及装置
JP2020123345A (ja) Ganを用いて仮想世界における仮想データから取得したトレーニングデータを生成して、自律走行用ニューラルネットワークの学習プロセスに必要なアノテーションコストを削減する学習方法や学習装置、それを利用したテスト方法やテスト装置
CN106570162A (zh) 基于人工智能的谣言识别方法及装置
CN111341294B (zh) 将文本转换为指定风格语音的方法
CN114356540A (zh) 一种参数更新方法、装置、电子设备和存储介质
CN113077237B (zh) 一种自适应混合算法的排课方法及系统
CN117251057A (zh) 一种基于aigc构建ai数智人的方法及系统
KR102100973B1 (ko) 공동 학습을 이용한 기계학습 시스템 및 그 방법
CN108447487B (zh) 基于文本输入与输出训练模拟人脑思维的方法及系统
KR102393761B1 (ko) 이미지 처리를 위한 인공 신경망 모델 학습 방법 및 시스템
CN108280511A (zh) 一种基于卷积网络进行网络访问数据进行处理的方法

Legal Events

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