KR102120443B1 - 엔트로피 기반 신경망(Neural Networks) 부분학습 방법 및 시스템 - Google Patents
엔트로피 기반 신경망(Neural Networks) 부분학습 방법 및 시스템 Download PDFInfo
- Publication number
- KR102120443B1 KR102120443B1 KR1020180117733A KR20180117733A KR102120443B1 KR 102120443 B1 KR102120443 B1 KR 102120443B1 KR 1020180117733 A KR1020180117733 A KR 1020180117733A KR 20180117733 A KR20180117733 A KR 20180117733A KR 102120443 B1 KR102120443 B1 KR 102120443B1
- Authority
- KR
- South Korea
- Prior art keywords
- learning
- entropy
- weights
- node
- weight
- Prior art date
Links
Images
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06N—COMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
- G06N3/00—Computing arrangements based on biological models
- G06N3/02—Neural networks
- G06N3/04—Architecture, e.g. interconnection topology
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06N—COMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
- G06N3/00—Computing arrangements based on biological models
- G06N3/02—Neural networks
- G06N3/08—Learning methods
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Physics & Mathematics (AREA)
- Data Mining & Analysis (AREA)
- General Health & Medical Sciences (AREA)
- Biomedical Technology (AREA)
- Biophysics (AREA)
- Computational Linguistics (AREA)
- Life Sciences & Earth Sciences (AREA)
- Evolutionary Computation (AREA)
- Artificial Intelligence (AREA)
- Molecular Biology (AREA)
- Computing Systems (AREA)
- General Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Mathematical Physics (AREA)
- Software Systems (AREA)
- Health & Medical Sciences (AREA)
- Image Analysis (AREA)
Abstract
본 발명은 콘볼루션 신경망(Convolutional Neural Networks)을 이용한 학습에 있어서, 새로운 클래스가 나타난 경우 학습의 부하를 줄이면서도 정확도를 유지할 수 있는 방법 및 시스템에 관한 것으로, 더욱 상세하게는 엔트로피에 기반한 가중치 평가에 의한 콘볼루션 신경망의 부분학습 방법 및 시스템에 관한 것으로, 신경망(Neural Networks)을 이용한 학습 방법에 있어서, 새로운 클래스의 발생을 인식하는 (a) 단계; 복수의 가중치들의 엔트로피에 기반한 질적 정보 및 를 상기 복수의 가중치들 중 부분학습할 가중치를 결정하기 위한 임계값을 연산하는 (b) 단계; 및 상기 질적 정보가 임계값 이하의 값을 가지는 가중치들을 이용해 상기 새로운 클래스를 학습하는 (c) 단계;를 포함하는 구성을 개시한다.
Description
본 발명은 콘볼루션 신경망(Convolutional Neural Networks)을 이용한 학습에 있어서, 새로운 클래스가 나타난 경우 학습의 부하를 줄이면서도 정확도를 유지할 수 있는 방법 및 시스템에 관한 것으로, 더욱 상세하게는 엔트로피에 기반한 가중치 평가에 의한 콘볼루션 신경망의 부분학습 방법 및 시스템에 관한 것이다.
DNN(Deep-Neural Networks)은 다양한 학문적 또는 산업 분야에서 엄청난 변화와 진보를 이루어 왔다. 특히, Convolutional Neural Networks (CNNs)은 ImageNet 데이터 세트와 GoogleNet, ResNet 및 VGNet와 같은 여러 고급 네트워크 때문에 학술 분야에서 빠른 발전을 이루었다. 최근, 이러한 발전을 이용한 지능형 서비스를 제공하는 응용 프로그램의 경우, 스마트폰, 태블릿 PC, 드론, 임베딩 보드 같은 다양한 모바일 장치에 CNN이 삽입되고 있다. CNN은 모바일 카메라로 촬영된 동영상에서 사람들의 행동을 예측해 위험한 상황을 감지하고, 모바일 장치로 사진을 찍고, 사진 정보를 제공하는 등 영상 분류에 능하다. 그러나, 일반적으로, CNN은 무거운 층과 많은 매개 변수들로 구성된 복잡한 네트워크 구조를 가지고 있다. 복잡성과 컴퓨팅 부하로 인해 CNN은 대규모 클라우드 네트워크에서 학습되고 실행된다. 하지만 클라우드 네트워크에서 학습하고 수행하는 데 두 가지 장애물이 있다. 1) 정보의 교환이 쉬워짐에 따라 개인 정보의 보안이 취약해지고, 해킹에 의한 개인 정보 유출의 가능성이 높다. 2) 학습과 실행이 불안정해질 수 있다. 모바일 네트워크 상태의 경과 따라서 일부 선행 기술은 네트워크를 학습하고 운영하기 위해 CNN의 구조를 압축하고 효율적이며 경미한 학습으로 만들기 위해 연구했다. 네트워크 구조의 대표적인 압축 방법은 체중 매트릭스 재구성, 정량화 및 제거다. 또한 효율적이며 가벼운 학습을 위한 선호되는 방법은 기존 네트워크의 정보를 활용하여 네트워크를 교육하는 전송 학습이다. 기존 네트워크를 교육하는 동안 알려지지 않은 새로운 클래스나 패턴이 발생할 때 학습 비용을 절감할 수 있다.
추가 네트워크 구조, 피쳐 클래스 등을 전송함으로써 증분 전송, 매개변수 전송 및 피쳐 전송기와 같은 다양한 전달 방식이 개발되었다. 증분 전송 방법(추가 네트워크 구조 전송)은 기존 네트워크와 병렬로 새 클래스에 대한 추가 네트워크를 연결하여 기존 네트워크를 재구성한다. 그러나 이 방법에는 추가 네트워크 구조를 설계하기 위한 구조 오버헤드가 필요한 단점이 있다. 매개변수 전달(특징 값 전송)은 기존 네트워크의 피쳐 필터에서 추출된 공통 피쳐를 사용하여 네트워크를 구성한다. 그러나 이 방법의 적용은 네트워크가 가우스 프로세스라는 가정을 요구하는 특정 네트워크에서 제한된다. 인스턴스 전송(가중치 전송)은 가중치의 차이 분석에서 얻은 공통 가중치만 사용하여 기존 네트워크를 훈련시킨다. 분석은 기존 클래스 및 새 클래스의 입력 데이터 분포를 기반으로 수행된다. 그러나 이 방법은 가중치 차이 분석의 불필요한 계산 오버헤드를 요구한다.
따라서, 추가적인 클래스에 대하여 시스템의 부하를 감소시키면서도 효율적으로 학습을 수행할 수 있는 방법이 필요한 실정이다.
따라서, 본 발명은 상기한 바와 같은 문제점을 해결하기 위한 것으로서, 추가 네트워크 구조를 요구하지 않고 불필요한 계산 오버헤드를 줄일 수 있는 온디바이스 부분 학습 기법을 제안하고자 한다.
상기한 문제를 해결하기 위한 본 발명의 일 실시 예에 따른 엔트로피 기반 신경망(Neural Networks) 부분학습 방법은 신경망(Neural Networks)을 이용한 학습 방법에 있어서, 새로운 클래스의 발생을 인식하는 (a) 단계; 복수의 가중치들의 엔트로피에 기반한 질적 정보 및 를 상기 복수의 가중치들 중 부분학습할 가중치를 결정하기 위한 임계값을 연산하는 (b) 단계; 및 상기 질적 정보가 임계값 이하의 값을 가지는 가중치들을 이용해 상기 새로운 클래스를 학습하는 (c) 단계;를 포함할 수 있다.
본 발명의 일 실시 예에 따르면, 상기 (a) 단계 내지 (c) 단계는, 상기 신경망이 학습을 수행하는 중에 수행될 수 있다.
본 발명의 일 실시 예에 따르면, 상기 임계값은 하기 수학식 1을 연산해 얻을 수 있다.
[수학식 1]
본 발명의 일 실시 예에 따르면, 상기 질적 정보(QA)는 하기 수학식 2를 연산해 얻을 수 있다.
[수학식 2]
상기한 문제를 해결하기 위한 본 발명의 일 실시 예에 따른 엔트로피 기반 신경망(Neural Networks) 부분학습 시스템은 신경망(Neural Networks)을 이용한 학습 시스템에 있어서, 신경망(Neural Networks)을 이용한 학습을 수행하는 학습부; 상기 신경망의 복수의 가중치들의 엔트로피에 기반한 질적 정보 및 상기 복수의 가중치들 중 부분학습할 가중치를 결정하기 위한 임계값을 연산하는 연산부; 및 상기 질적 정보가 임계값 이하의 값을 가지는 가중치들을 이용해 부분학습하는 부분학습 제어부;를 포함할 수 있다.
본 발명의 일 실시 예에 따르면, 상기 연산부 및 부분학습 제어부는, 상기 학습부가 학습을 수행하는 중에 연산 및 부분학습 제어를 수행할 수 있다.
본 발명의 일 실시 예에 따르면, 상기 임계값은 하기 수학식 1을 연산해 얻을 수 있다.
[수학식 1]
본 발명의 일 실시 예에 따르면, 상기 질적 정보는 하기 수학식 2를 연산해 얻을 수 있다.
[수학식 2]
본 발명에 따르면, 기존의 방법보다 압축보다 성능이 뛰어나며, 기존 압축 방법인 MNIST(Mixed National Institute of Standards and Technology) 데이터를 사용하여 처리 시간 및 오버헤드를 줄여준다.
또한, 학습 중에 가중치에 따른 부분학습을 수행하여 연산 중간에도 시스템의 부하를 감소시킬 수 있다.
한편, 본 발명의 효과는 이상에서 언급한 효과들로 제한되지 않으며, 이하에서 설명할 내용으로부터 통상의 기술자에게 자명한 범위 내에서 다양한 효과들이 포함될 수 있다.
도 1은 본 발명의 일 실시 예에 따른 질적 엔트로피 기반 신경망(Neural Networks) 부분학습 방법의 개념도이다.
도 2는 본 발명의 일 실시 예에 따른 질적 엔트로피 계산의 일 예시이다.
도 3은 본 발명의 일 실시 예에 따른 엔트로피 기반 신경망(Neural Networks) 부분학습 시스템의 블록도이다.
도 4는 LeNet-5와 AlexNet의 완전 연결 계층 1의 가중치 분포의 일 예시이다.
도 5는 본 발명의 일 실시 예에 따른 노드의 엔트로피와 노드에 연결된 가중치 정보의 양 및 노드의 질적 엔트로피 및 노드에 연결된 가중치 정보의 질적 양을 도시한 그래프이다.
도 6는 LeNet-5에서 대해 수학식 7에 의해 선택된 가중치이다.
도 7은 AlexNet에서 대해 수학식 7에 의해 선택된 가중치이다.
도 8은 MNIST에서 새로운 클래스를 추가했을 때의 부분 학습의 성능 그래프이다.
도 9은 17종의 꽃 이미지에서 새로운 클래스를 추가했을 때의 부분 학습의 성능 그래프이다.
도 10은 LeNet-5에서의 부분 학습 및 이동 학습의 학습 시간 성능이다.
도 11은 AlexNet 에서의 부분 학습 및 이동 학습의 학습 시간 성능이다.
도 12는 본 발명의 일 실시 예에 따른 엔트로피 기반 신경망(Neural Networks) 부분학습 방법의 흐름도이다.
도 2는 본 발명의 일 실시 예에 따른 질적 엔트로피 계산의 일 예시이다.
도 3은 본 발명의 일 실시 예에 따른 엔트로피 기반 신경망(Neural Networks) 부분학습 시스템의 블록도이다.
도 4는 LeNet-5와 AlexNet의 완전 연결 계층 1의 가중치 분포의 일 예시이다.
도 5는 본 발명의 일 실시 예에 따른 노드의 엔트로피와 노드에 연결된 가중치 정보의 양 및 노드의 질적 엔트로피 및 노드에 연결된 가중치 정보의 질적 양을 도시한 그래프이다.
도 6는 LeNet-5에서 대해 수학식 7에 의해 선택된 가중치이다.
도 7은 AlexNet에서 대해 수학식 7에 의해 선택된 가중치이다.
도 8은 MNIST에서 새로운 클래스를 추가했을 때의 부분 학습의 성능 그래프이다.
도 9은 17종의 꽃 이미지에서 새로운 클래스를 추가했을 때의 부분 학습의 성능 그래프이다.
도 10은 LeNet-5에서의 부분 학습 및 이동 학습의 학습 시간 성능이다.
도 11은 AlexNet 에서의 부분 학습 및 이동 학습의 학습 시간 성능이다.
도 12는 본 발명의 일 실시 예에 따른 엔트로피 기반 신경망(Neural Networks) 부분학습 방법의 흐름도이다.
이하, 첨부된 도면들을 참조하여 본 발명에 따른 '엔트로피 기반 신경망(Neural Networks) 부분학습 방법 및 시스템'을 상세하게 설명한다. 설명하는 실시 예들은 본 발명의 기술 사상을 당업자가 용이하게 이해할 수 있도록 제공되는 것으로 이에 의해 본 발명이 한정되지 않는다. 또한, 첨부된 도면에 표현된 사항들은 본 발명의 실시 예들을 쉽게 설명하기 위해 도식화된 도면으로 실제로 구현되는 형태와 상이할 수 있다.
한편, 이하에서 표현되는 각 구성부는 본 발명을 구현하기 위한 예일 뿐이다. 따라서, 본 발명의 다른 구현에서는 본 발명의 사상 및 범위를 벗어나지 않는 범위에서 다른 구성부가 사용될 수 있다.
또한, 각 구성부는 순전히 하드웨어 또는 소프트웨어의 구성만으로 구현될 수도 있지만, 동일 기능을 수행하는 다양한 하드웨어 및 소프트웨어 구성들의 조합으로 구현될 수도 있다. 또한, 하나의 하드웨어 또는 소프트웨어에 의해 둘 이상의 구성부들이 함께 구현될 수도 있다.
또한, 어떤 구성요소들을 '포함'한다는 표현은, '개방형'의 표현으로서 해당 구성요소들이 존재하는 것을 단순히 지칭할 뿐이며, 추가적인 구성요소들을 배제하는 것으로 이해되어서는 안 된다.
도 1은 본 발명의 일 실시 예에 따른 질적 엔트로피 기반 신경망(Neural Networks) 부분학습 방법의 개념도이다.
도 1을 참조하면, 본 발명의 일 실시 예에 따른 질적 엔트로피 기반 신경망(Neural Networks) 부분학습 방법은 입력 이미지에서 새로운 클래스가 발생하면 상기 새로운 클래스를 인식할 수 있다. 상기 새로운 클래스를 학습하기 위해 엔트로피에 기반해 부분학습에 이용할 노드 및 가중치를 선택해 부분학습에 이용할 수 있다.
본 발명의 일 실시 예에 따른 질적 엔트로피 기반 신경망(Neural Networks) 부분학습 방법에서 엔트로피는 수학식 1과 같이 출력 발생에 대한 가중치 정보의 예상치를 계산하는 데 사용될 수 있다. 상기 가중치의 정보량이 전체 가중치 집합의 엔트로피보다 낮은 경우 상기 가중치는 덜 중요한 것으로 간주될 수 있다.
본 발명의 일 실시 예에 따른 질적 엔트로피 기반 신경망(Neural Networks) 부분학습 방법은 상기 덜 중요한 것으로 간주되는 가중치를 선택해 상기 새로운 클래스에 대한 부분학습을 수행할 수 있다.
도 2는 본 발명의 일 실시 예에 따른 질적 엔트로피 계산의 일 예시이다.
도 2를 참조하면, 4 개의 노드 (i1, i2, i3, i4)는 동일한 값 1을 가지며 L2의 노드에 완전히 연결될 수 있다. L2의 n1에 연결된 가중치의 값이 1, 1, 1 및 2이면 노드의 엔트로피는 0.431이다. 그러나 L2의 n2에 연결된 가중치의 값이 1, 1, 3 인 경우 엔트로피도 0.431이다. n1과 n2의 엔트로피 값은 같다. 이는 엔트로피가 확률 분포만을 사용하여 계산되기 때문이다. n1과 n2의 엔트로피가 같더라도, n2는 L3에서 o1과 o2에 더 큰 영향을 미친다. 문제를 해결하기 위해 많은 정보가 있는 가중치가 높은 확률로 인해 중요하지 않은 것으로 오해하지 않도록 가중치의 품질을 고려할 수 있다.
가중치의 품질은 Sigmoid 함수를 사용하여 [0, 1]로 정규화할 수 있다. 이는 가중치 분포의 특정 범위를 벗어나는 가중치의 과도한 강조를 피하는 데 도움이 될 수 있다. 본 발명에서는 가중치의 표준화 된 품질을 편의상 질적 특성이라고 할 수 있다.
도 3은 본 발명의 일 실시 예에 따른 엔트로피 기반 신경망(Neural Networks) 부분학습 시스템의 블록도이다.
도 3을 참조하면, 본 발명의 일 실시 예에 따른 엔트로피 기반 신경망(Neural Networks) 부분학습 시스템은 연산부(310), 부분학습 제어부(320) 및 학습부(330)를 포함할 수 있다.
상기 연산부(310)는 신경망(NN)의 복수의 가중치에 대해 각각의 엔트로피, 질적 엔트로피, 정보량, 질적 정보량을 연산할 수 있다. 상기 연산부(310)는 상기 신경망의 가중치 전체의 평균, 표준편차를 연산할 수 있다.
상기 엔트로피는 하기 수학식 1과 같이 출력 발생에 대한 가중치 정보의 예상치를 계산하는 데 사용될 수 있다. 상기 가중치의 정보량이 가중치 전체의 엔트로피보다 낮은 경우 상기 가중치는 덜 중요한 것으로 간주될 수 있다.
[수학식 1]
여기서, 은 L번째 계층에서 r번째 노드, 는 의 엔트로피이며, 은 L번째 계층의 k번째 노드에서 다음 레이어의 r번째 노드로 연결된 가중치, 은 에 연결된 가중치 중 의 확률, 은 이 보유한 정보의 양이다. 각 엔트로피는 에 연결된 이 보유하는 정보 양의 예상값을 의미한다. 상기 연산부(310)는 상기 각각의 정보의 양은 수학식 2로 평가할 수 있다.
[수학식 2]
상기 연산부(310)는 각 의 값이 보다 작을 경우, 로 전송되는 정보가 더 적다는 의미이다. 학습 중 출력을 생성하는 데 이 중요하지 않다고 볼 수 있다. 단, 상기 수학식 1과 수학식 2에서 확인할 수 있듯이 엔트로피는 가중치의 확률 분포에 기초한 프로덕트 곱에 의해서만 만들어진다. 가중치의 확률 분포가 유사한 경우 상기 가중치는 엔트로피가 유사하다. 가중치에 엔트로피가 유사하지만, 가중치가 블랙박스 패턴으로 학습을 수행하기 때문에 출력 노드에 미치는 영향은 다를 수 있다
상기 연산부(310)는 상기 가중치의 분포의 특정 범위를 벗어나는 가중치의 품질을 하기 수학식 3을 연산해 질적으로 과도하게 강조하지 않도록 하기 위해 Sigmoid 함수를 사용하여 가중치의 품질을 [0, 1]로 표준화할 수 있다.
[수학식 3]
상기 연산부(310)에서 질적 정보량은 한 노드에 연결된 각 가중치의 중요도에 따라 달라질 수 있다. 각 가중치의 질적 정보량은 수학식 2와 수학식 3을 하기 수학식 4와 같이 연결하여 구할 수 있다.
[수학식 4]
상기 수학식 4를 이용해 질적 엔트로피를 하기 수학식 5와 같이 연산할 수 있다.
[수학식 5]
여기서, 는 의 질적 엔트로피, 은 에 연결된 가중치 중 의 확률, 는 의 질적 정보량이다. 대부분의 CNN에서, 가중치의 확률 분포는 중심근한 정리에 의한 벨 모양을 가진 가우스 분포로 수렴될 수 있다. CNN은 최소한 5000개의 완전히 연결된 레이어에 엄청난 수의 가중치를 가지고 있기 때문이다. 따라서 수학식 5는 수학식 6으로 단순화할 수 있다.
[수학식 6]
여기서, 는 의 질적 엔트로피, 는 번째 계층의 번째 노드, 는 번째 계층에서 가중치의 표준 편차, 는 번째 계층의 번째 노드에서 다음 계층의 번째 노드로 연결된 가중치의 정보 양이다. 출력에 거의 영향을 미치지 않는 가중치를 이용해 부분적으로 학습함으로써 기존 클래스의 분류 성능을 유지할 수 있다.
상기 부분학습 제어부(320)는 새로운 클래스의 발생여부를 인지할 수 있다. 상기 부분학습 제어부(320)는 새로운 클래스가 발생한 경우 상기 연산부(310)에서 신경망(NN)의 복수의 가중치에 대해 각각의 엔트로피, 질적 엔트로피, 정보량, 질적 정보량을 연산할 수 있다. 상기 연산부(310)는 상기 신경망의 가중치 전체의 평균, 표준편차를 연산하게 할 수 있다.
상기 부분학습 제어부(320)는 상기 연산부(310)에서 연산된 값들을 이용해 중요도가 낮은 가중치를 판단할 수 있다. 상기 부분학습 제어부(320)는 상기 중요도가 낮은 가중치를 통해 새로운 클래스를 학습하도록 할 수 있다. 상기 중요도가 낮은 가중치는 정보가 거의 없는 가중치를 의미할 수 있다. 상기 정보가 거의 없는 가중치는 상기 수학식 4와 수학식 6에서 얻는 하기 수학식 7로 선택할 수 있다.
[수학식 7]
여기서, 는 의 질적 엔트로피, 는 의 질적 정보량이다. 그러나 부분 학습은 마지막 계층에서는 위의 방법을 적용하지 않는다. 마지막 계층에는 정보를 전송할 다음 노드가 없으므로 가중치는 출력 노드에 독립적으로 영향을 미친다. 따라서 새로운 클래스와 관련된 가중치만 학습시키는 것이 효율적이다. 질적 엔트로피 때문에 질적 특성과 확률론적 특성이 모두 고려되므로, 본 발명은 결과를 생성하고 교육하는 데 필요한 정보가 적은 가중치를 식별할 수 있다. 상기 중요도가 낮은 가중치 또는 필요한 정보가 적은 가중치를 임계값이라고 할 수 있다.
상기 부분학습 제어부(320)는 상기 학습부(330)가 상기 임계값을 이용해 상기 새로운 클래스를 학습하도록 할 수 있다.
상기 학습부(330)는 신경망(NN)을 이용해 학습을 수행할 수 있다. 상기 학습부(330)는 신경망(NN)을 이용해 학습을 수행할 수 있다. 상기 학습부(330)는 새로운 클래스가 발생한 경우 상기 부분학습 제어부(320)를 통해서 상기 임계값을 이용해 상기 새로운 클래스를 부분학습할 수 있다. 상기 신경망(NN)은 Multi Layer Perceptron (MLP), Convolutional Neural Network(CNN), Deep Neural Network(DNN), Recurrent Neural Network(RNN) 등을 포함할 수 있다.
도 4는 LeNet-5와 AlexNet의 완전 연결 계층 1의 가중치 분포의 일 예시이고, 도 5는 본 발명의 일 실시 예에 따른 노드의 엔트로피와 노드에 연결된 가중치 정보의 양 및 노드의 질적 엔트로피 및 노드에 연결된 가중치 정보의 질적 양을 도시한 그래프이다.
도 4 및 도 5를 참조하면, 본 발명의 일 실시 예에서, 메커니즘을 분석하고 Lenet-5와 Alexnet과 같은 네트워크를 사용하여 성능을 보여준다. Lenet-5는 두 개의 컨벌루션 레이어와 두 개의 완전 연결된 레이어로 구성될 수 있다. 각 계층의 가중치는 각각 500, 25000, 400000 및 5000이다. 네트워크는 10 개의 수기 이미지 클래스, 각각 6000 개의 조각을 갖는 MNIST 데이터 세트로 트레이닝될 수 있다. Alexnet은 5 개의 컨벌루션 레이어와 3 개의 완전 연결된 레이어로 구성될 수 있다. 각 계층의 가중치는 각각 3500, 307000, 885000, 663000, 442000, 38000000, 17000000 및 4000000이다. 이 네트워크는 1360 개의 꽃 이미지를 17 가지 카테고리의 꽃으로 분류하여 학습한다. 본 발명의 일 실시 예에서, 선택되지 않은 가중치를 무시하는 마스크를 추가하여 Tensorflow 프레임 워크를 수정한다. 또한 NVIDIA Titan X Pascal 그래픽 처리 장치를 사용한다.
도 4는 완전히 연결된 Layer1에서부터 LeNet-5와 AlexNet의 완전히 연결된 layer2에 연결된 가중치 분포를 보여준다. 가중치의 분포가 종 모양이기 때문에 정 성적 엔트로피는 수학식 6을 사용하여 계산되어 도 5와 같이 나타날 수 있다.
도 5 (a)와 도 5 (b)는 질적 특성이 아직 적용되지 않은 노드에서 수학식 1과 수학식 2를 사용하여 얻은 정보량과 엔트로피를 보여준다. 도 5 (c)와 도 5 (d)는 노드에서 수학식 4와 수학식 6을 사용하여 질적 엔트로피와 질적 정보량을 보여준다.
도 5 (a)와 도 5 (b)에서 볼 수 있듯이, 엔트로피보다 정보량이 적은 가중치가 대다수이므로 가중치의 95 % 이상이 선택된다. 이 경우 확률이 높은 가중치는 가중치의 크기에 관계없이 확률 분포 만 고려하기 때문에 결과에 중요하지 않은 것으로 오해 할 수 있다. 즉, 대부분의 가중치는 새로운 클래스에 대한 재교육이 아닌 것으로 선택된다. 도 5 (a)와 도 5 (b)의 엔트로피는 1.45와 거의 같다. 왜냐하면 두 네트워크의 확률 분포가 도 4에서와 같이 가우스 분포와 거의 같기 때문이다. 반면에 도 5 (c)와 도 5 (d)는 각각 0.015 및 0.09이다. 도 5 (c)와 도 5 (d)의 확률 분포는 도 5 (a)와 도 5 (b)와는 달리 거의 동일하지만 가중치를 질적 엔트로피로 적절히 나누었다.
도 6는 LeNet-5에서 대해 수학식 7에 의해 선택된 가중치이고, 도 7은 AlexNet에서 대해 수학식 7에 의해 선택된 가중치이다.
도 6 및 도 7을 참조하면, 가중치를 질적 엔트로피로 적절히 나누었다. 도 6은 LeNet-5에서 각 계층에 대해 선택된 가중치의 수를 보여준다. 완전 연결 layer1과 완전 연결 layer2에서 선택된 가중치는 각각 400,000 개 중 272195 개, 5000 개 중 3634 개이다. 결과적으로 완전 연결 계층의 가중치 중 68.10 %가 선택된다. 도 7은 또한 AlexNet에서 각 계층에 대해 선택된 가중치 수를 보여준다. 완전 연결 레이어 1, 완전 연결 레이어 2 및 완전 연결 레이어 3에서 선택한 가중치는 각각 38000000 개 중 23943187 개, 17000000 개 중 11053214 개, 4000000 개 중 2800745 개다. 결과적으로 완전 연결 계층의 총 가중치 중 64.06 %가 선택된다.
도 8은 MNIST에서 새로운 클래스를 추가했을 때의 부분 학습의 성능 그래프이고, 도 9은 17종의 꽃 이미지에서 새로운 클래스를 추가했을 때의 부분 학습의 성능 그래프이다.
도 8 및 도 9를 참조하면, 도 8은 MNIST와 17 개의 카테고리의 꽃 이미지를 사용하여 새로운 클래스를 추가하여 부분 학습의 분류 정확도를 보여준다. 먼저 LeNet-5를 초기 네트워크 구조로 사용하여 5 개의 클래스를 학습한다.
분류 정확도는 99.20 %다. 구조에서 한 번에 하나의 클래스를 추가하여 성능을 분석한다. 새로운 클래스가 추가될 때마다 학습의 정확도는 99.06 % (총 6 개 클래스), 98.25 % (7 개 클래스), 97.61 % (8 개 클래스), 93.19 % (9 개 클래스), 89.74 %이다. 하나의 새로운 클래스가 추가될 때, 6 클래스 네트워크 구조와 원래의 네트워크 구조 사이에 정확도 차이가 거의 없다. 2 개 및 3 개의 새 클래스의 정확도 차이는 각각 1 % 및 1.6 % 미만이다. 네 가지 새로운 클래스에서 성능이 점차 저하된다. 꽃 이미지가 17 개 범주 인 경우 AlexNet을 초기 네트워크 구조로 사용하여 8 개의 클래스를 학습하면 정확도는 72.79 %입니다. 한 번에 하나의 새로운 클래스를 추가하여 성능을 분석한다. 정확도는 각각 71.63 % (총 9 개 클래스), 71.52 % (10 개 클래스), 71.08 % (11 개 클래스), 70.56 % (12 개 클래스), 70.16 % (13 개 클래스), 93.26 % (총 14 개 클래스), 60.10 % (15 개 클래스), 57.40 % (16 개 클래스), 51.92 % (17 개 클래스)이다. 1개 또는 2 개의 새로운 클래스의 경우, 원래의 네트워크 구조에 비해 9 클래스, 10 클래스 네트워크 구조에 대한 정확도 저하가 거의 없다. 3 가지 및 4 가지 새로운 클래스의 정확도 차이는 각각 1.7 % 및 2.3 % 미만이다. 다섯 가지 새로운 클래스에서 성능이 점차 저하된다.
상기 실시 예를 통해 부분 학습은 기존 네트워크에 최대 3 개의 새 클래스를 추가 할 때 전송 학습보다 더 나은 성능을 제공한다. 본 발명은 부분적인 재교육을 위해 기존 네트워크의 새로운 클래스의 약 40 %를 수용 할 수 있다.
도 10은 LeNet-5에서의 부분 학습 및 이동 학습의 학습 시간 성능이고, 도 11은 AlexNet 에서의 부분 학습 및 이동 학습의 학습 시간 성능이다.
도 10을 참조하면, 한 번에 새로운 클래스를 추가하는 것으로 MNIST를 사용하여 LeNet-5에서 부분 학습 및 전송 학습에 필요한 교육 시간을 보여준다. 본 발명의 방법과 전송 학습 간의 시간차는 각각 기존의 네트워크에 최대 5 개의 새로운 클래스를 추가함으로써 207s, 241s, 274s, 309s 및 348s이다. 시간 차이는 부분 학습이 점차 계산 복잡도의 감소에 영향을 미치기 때문에 네트워크 크기가 커짐에 따라 증가한다. 전송 학습의 경우 네트워크 구조의 크기가 커짐에 따라 가중치 수가 기하 급수적으로 증가하기 때문에 새 클래스가 추가되면 학습 시간이 늘어난다. 도 11을 참조하면, 17 가지 범주의 꽃으로 AlexNet의 교육 시간 성능을 보여준다. 기존 네트워크에 최대 5 개의 새로운 클래스를 추가한다. 본 발명의 일 실시 예에 따른 엔트로피 기반 부분학습 방법과 전송 학습 간의 시간차는 각각 5074, 5602, 6177, 6432, 6940, 7497, 7970, 8509, 9051이다. AlexNet의 크기가 LeNet-5보다 140 배 더 크기 때문에 꽃 데이터 세트의 17 가지 카테고리의 복잡성이 MNIST보다 크기 때문에 시간 간격은 도 10보다 크다. 결과적으로 교육 시간이 기하 급수적으로 증가한다. 따라서 데이터와 네트워크가 복잡할수록 본 발명의 일 실시 예에 따른 엔트로피 기반 부분 학습 기술이 더 효과적이다.
도 12는 본 발명의 일 실시 예에 따른 엔트로피 기반 신경망(Neural Networks) 부분학습 방법의 흐름도이다.
도 12를 참조하면, 본 발명의 일 실시 예에 따른 엔트로피 기반 신경망(Neural Networks) 부분학습 방법은 새로운 클래스의 발생을 인식하는 (a) 단계(S1210)를 포함할 수 있다.
S1210 단계에서, 상기 부분학습 제어부(320)는 새로운 클래스의 발생여부를 인지할 수 있다. 상기 부분학습 제어부(320)는 새로운 클래스가 발생한 경우 상기 연산부(310)에서 신경망(NN)의 복수의 가중치에 대해 각각의 엔트로피, 질적 엔트로피, 정보량, 질적 정보량을 연산할 수 있다. 상기 연산부(310)는 상기 신경망의 가중치 전체의 평균, 표준편차를 연산하게 할 수 있다.
본 발명의 일 실시 예에 따른 엔트로피 기반 신경망(Neural Networks) 부분학습 방법은 복수의 가중치들의 엔트로피에 기반한 질적 정보 및 를 상기 복수의 가중치들 중 부분학습할 가중치를 결정하기 위한 임계값을 연산하는 (b) 단계(S1220)를 포함할 수 있다.
S1220 단계에서, 상기 연산부(310)는 신경망(NN)의 복수의 가중치에 대해 각각의 엔트로피, 질적 엔트로피, 정보량, 질적 정보량을 연산할 수 있다. 상기 연산부(310)는 상기 신경망의 가중치 전체의 평균, 표준편차를 연산할 수 있다.
상기 엔트로피는 하기 수학식 1과 같이 출력 발생에 대한 가중치 정보의 예상치를 계산하는 데 사용될 수 있다. 상기 가중치의 정보량이 가중치 전체의 엔트로피보다 낮은 경우 상기 가중치는 덜 중요한 것으로 간주될 수 있다.
[수학식 1]
여기서, 은 L번째 계층에서 r번째 노드, 는 의 엔트로피이며, 은 L번째 계층의 k번째 노드에서 다음 레이어의 r번째 노드로 연결된 가중치, 은 에 연결된 가중치 중 의 확률, 은 이 보유한 정보의 양이다. 각 엔트로피는 에 연결된 이 보유하는 정보 양의 예상값을 의미한다.
[수학식 2]
S1220 단계에서, 각 의 값이 보다 작을 경우, 로 전송되는 정보가 더 적다는 의미이다. 학습 중 출력을 생성하는 데 이 중요하지 않다고 볼 수 있다. 단, 상기 수학식 1과 수학식 2에서 확인할 수 있듯이 엔트로피는 가중치의 확률 분포에 기초한 프로덕트 곱에 의해서만 만들어진다. 가중치의 확률 분포가 유사한 경우 상기 가중치는 엔트로피가 유사하다. 가중치에 엔트로피가 유사하지만, 가중치가 블랙박스 패턴으로 학습을 수행하기 때문에 출력 노드에 미치는 영향은 다를 수 있다
S1220 단계에서, 상기 연산부(310)는 상기 가중치의 분포의 특정 범위를 벗어나는 가중치의 품질을 하기 수학식 3을 연산해 질적으로 과도하게 강조하지 않도록 하기 위해 Sigmoid 함수를 사용하여 가중치의 품질을 [0, 1]로 표준화할 수 있다.
[수학식 3]
S1220 단계에서, 상기 연산부(310)에서 질적 정보량은 한 노드에 연결된 각 가중치의 중요도에 따라 달라질 수 있다. 각 가중치의 질적 정보량은 수학식 2와 수학식 3을 하기 수학식 4와 같이 연결하여 구할 수 있다.
[수학식 4]
S1220 단계에서, 상기 수학식 4를 이용해 질적 엔트로피를 하기 수학식 5와 같이 연산할 수 있다.
[수학식 5]
여기서, 는 의 질적 엔트로피, 은 에 연결된 가중치 중 의 확률, 는 의 질적 정보량이다. 대부분의 CNN에서, 가중치의 확률 분포는 중심근한 정리에 의한 벨 모양을 가진 가우스 분포로 수렴될 수 있다. CNN은 최소한 5000개의 완전히 연결된 레이어에 엄청난 수의 가중치를 가지고 있기 때문이다. 따라서 수학식 5는 수학식 6으로 단순화할 수 있다.
[수학식 6]
여기서, 는 의 질적 엔트로피, 는 번째 계층의 번째 노드, 는 번째 계층에서 가중치의 표준 편차, 는 번째 계층의 번째 노드에서 다음 계층의 번째 노드로 연결된 가중치의 정보 양이다. 출력에 거의 영향을 미치지 않는 가중치를 이용해 부분적으로 학습함으로써 기존 클래스의 분류 성능을 유지할 수 있다.
본 발명의 일 실시 예에 따른 엔트로피 기반 신경망(Neural Networks) 부분학습 방법은 상기 질적 정보가 임계값 이하의 값을 가지는 가중치들을 이용해 상기 새로운 클래스를 학습하는 (c) 단계(S1230)를 포함할 수 있다.
S1230 단계에서, 상기 부분학습 제어부(320)는 상기 연산부(310)에서 연산된 값들을 이용해 중요도가 낮은 가중치를 판단할 수 있다. 상기 부분학습 제어부(320)는 상기 중요도가 낮은 가중치를 통해 새로운 클래스를 학습하도록 할 수 있다. 상기 중요도가 낮은 가중치는 정보가 거의 없는 가중치를 의미할 수 있다. 상기 정보가 거의 없는 가중치는 상기 수학식 4와 수학식 6에서 얻는 하기 수학식 7로 선택할 수 있다.
[수학식 7]
여기서, 는 의 질적 엔트로피, 는 의 질적 정보량이다. 그러나 부분 학습은 마지막 계층에서는 위의 방법을 적용하지 않는다. 마지막 계층에는 정보를 전송할 다음 노드가 없으므로 가중치는 출력 노드에 독립적으로 영향을 미친다. 따라서 새로운 클래스와 관련된 가중치만 학습시키는 것이 효율적이다. 질적 엔트로피 때문에 질적 특성과 확률론적 특성이 모두 고려되므로, 본 발명은 결과를 생성하고 교육하는 데 필요한 정보가 적은 가중치를 식별할 수 있다. 상기 중요도가 낮은 가중치 또는 필요한 정보가 적은 가중치를 임계값이라고 할 수 있다.
상기 부분학습 제어부(320)는 상기 학습부(330)가 상기 임계값을 이용해 상기 새로운 클래스를 학습하도록 할 수 있다.
상기 학습부(330)는 신경망(NN)을 이용해 학습을 수행할 수 있다. 상기 학습부(330)는 신경망(NN)을 이용해 학습을 수행할 수 있다. 상기 학습부(330)는 새로운 클래스가 발생한 경우 상기 부분학습 제어부(320)를 통해서 상기 임계값을 이용해 상기 새로운 클래스를 부분학습할 수 있다. 상기 신경망(NN)은 Multi Layer Perceptron (MLP), Convolutional Neural Network(CNN), Deep Neural Network(DNN), Recurrent Neural Network(RNN) 등을 포함할 수 있다.
이제까지 본 발명에 대하여 그 바람직한 실시 예들을 중심으로 살펴보았다. 본 발명이 속하는 기술 분야에서 통 상의 지식을 가진 자는 본 발명이 본 발명의 본질적인 특성에서 벗어나지 않는 범위에서 변형된 형태로 구현될 수 있음을 이해할 수 있을 것이다. 그러므로 개시된 실시 예들은 한정적인 관점이 아니라 설명적인 관점에서 고려되어야 한다. 본 발명의 범위는 전술한 설명이 아니라 특허청구범위에 나타나 있으며, 그와 동등한 범위 내에 있는 모든 차이점은 본 발명에 포함된 것으로 해석되어야 할 것이다.
Claims (8)
- 신경망(Neural Networks)을 이용한 학습 방법에 있어서,
컴퓨팅 장치가 새로운 클래스의 발생을 인식하는 (a) 단계;
상기 컴퓨팅 장치가 복수의 가중치들의 엔트로피에 기반한 질적 정보 및 상기 복수의 가중치들 중 부분학습할 가중치를 결정하기 위한 임계값을 연산하는 (b) 단계; 및
상기 컴퓨팅 장치가 상기 질적 정보가 임계값 이하의 값을 가지는 가중치들을 이용해 상기 새로운 클래스를 학습하는 (c) 단계;를 포함하되,
상기 임계값은 하기 수학식 1을 연산해 얻는 엔트로피 기반 신경망(Neural Networks) 부분학습 방법.
[수학식 1]
(여기서, 는 번째 계층의 번째 노드, 는 번째 계층에서 가중치의 표준 편차, 는 번째 계층의 번째 노드에서 다음 계층의 번째 노드로 연결된 가중치의 정보 양이다.)
- 제1항에 있어서,
상기 (a) 단계 내지 (c) 단계는,
상기 신경망이 학습을 수행하는 중에 수행되는 것을 특징으로 하는 엔트로피 기반 신경망(Neural Networks) 부분학습 방법.
- 삭제
- 신경망(Neural Networks)을 이용한 학습 시스템에 있어서,
신경망(Neural Networks)을 이용한 학습을 수행하는 학습부;
상기 신경망의 복수의 가중치들의 엔트로피에 기반한 질적 정보 및 상기 복수의 가중치들 중 부분학습할 가중치를 결정하기 위한 임계값을 연산하는 연산부; 및
상기 질적 정보가 임계값 이하의 값을 가지는 가중치들을 이용해 부분학습하는 부분학습 제어부;를 포함하되,
상기 임계값은 하기 수학식 1을 연산해 얻는 엔트로피 기반 신경망(Neural Networks) 부분학습 시스템.
[수학식 1]
(여기서, 는 번째 계층의 번째 노드, 는 번째 계층에서 가중치의 표준 편차, 는 번째 계층의 번째 노드에서 다음 계층의 번째 노드로 연결된 가중치의 정보 양이다.) - 제5항에 있어서,
상기 연산부 및 부분학습 제어부는,
상기 학습부가 학습을 수행하는 중에 연산 및 부분학습 제어를 수행하는 것을 특징으로 하는 엔트로피 기반 신경망(Neural Networks) 부분학습 시스템.
- 삭제
Priority Applications (2)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
KR1020180117733A KR102120443B1 (ko) | 2018-10-02 | 2018-10-02 | 엔트로피 기반 신경망(Neural Networks) 부분학습 방법 및 시스템 |
PCT/KR2019/007639 WO2020071618A1 (ko) | 2018-10-02 | 2019-06-25 | 엔트로피 기반 신경망 부분학습 방법 및 시스템 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
KR1020180117733A KR102120443B1 (ko) | 2018-10-02 | 2018-10-02 | 엔트로피 기반 신경망(Neural Networks) 부분학습 방법 및 시스템 |
Publications (2)
Publication Number | Publication Date |
---|---|
KR20200038072A KR20200038072A (ko) | 2020-04-10 |
KR102120443B1 true KR102120443B1 (ko) | 2020-06-08 |
Family
ID=70054617
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
KR1020180117733A KR102120443B1 (ko) | 2018-10-02 | 2018-10-02 | 엔트로피 기반 신경망(Neural Networks) 부분학습 방법 및 시스템 |
Country Status (2)
Country | Link |
---|---|
KR (1) | KR102120443B1 (ko) |
WO (1) | WO2020071618A1 (ko) |
Families Citing this family (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
KR102554624B1 (ko) * | 2020-06-15 | 2023-07-13 | 한국전자통신연구원 | 임베디드 기기에서의 딥러닝 기반 객체 인식 장치 및 임베디드 기기용 객체 인식 모델 학습 장치 |
CN112232484B (zh) * | 2020-10-15 | 2022-08-05 | 北京航空航天大学 | 一种基于类脑神经网络的空间碎片识别捕获方法及系统 |
KR102432003B1 (ko) * | 2021-01-21 | 2022-08-12 | 인하대학교 산학협력단 | 개인 정보 보호 도메인 적응 방법 및 장치 |
Family Cites Families (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
KR20130084016A (ko) * | 2012-01-16 | 2013-07-24 | 삼성전자주식회사 | 분산된 학습 구조에 기초하는 자세 인식기 학습 시스템 및 방법 |
KR20140133417A (ko) * | 2013-05-06 | 2014-11-19 | 한양대학교 산학협력단 | 시간 및 공간적 엔트로피를 이용한 작업 솜씨 학습 방법 |
KR101887267B1 (ko) * | 2016-08-24 | 2018-08-09 | 한국과학기술원 | 부분구조 학습기법과 영상데이터를 이용한 신경망 학습 방법 및 장치 |
KR101851374B1 (ko) * | 2016-09-07 | 2018-04-23 | 서울대학교산학협력단 | 입력 데이터를 학습하는 방법 및 학습 장치 |
KR101912918B1 (ko) * | 2016-10-31 | 2018-10-29 | 한국생산기술연구원 | 학습 로봇, 그리고 이를 이용한 작업 솜씨 학습 방법 |
-
2018
- 2018-10-02 KR KR1020180117733A patent/KR102120443B1/ko active IP Right Grant
-
2019
- 2019-06-25 WO PCT/KR2019/007639 patent/WO2020071618A1/ko active Application Filing
Also Published As
Publication number | Publication date |
---|---|
WO2020071618A1 (ko) | 2020-04-09 |
KR20200038072A (ko) | 2020-04-10 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
Tonioni et al. | Learning to adapt for stereo | |
WO2021078027A1 (zh) | 构建网络结构优化器的方法、装置及计算机可读存储介质 | |
CN111738231B (zh) | 目标对象检测方法、装置、计算机设备和存储介质 | |
Fu et al. | Fast crowd density estimation with convolutional neural networks | |
US20220215227A1 (en) | Neural Architecture Search Method, Image Processing Method And Apparatus, And Storage Medium | |
Ieracitano et al. | Statistical analysis driven optimized deep learning system for intrusion detection | |
CN105144203B (zh) | 信号处理系统 | |
CN113408743A (zh) | 联邦模型的生成方法、装置、电子设备和存储介质 | |
KR102120443B1 (ko) | 엔트로피 기반 신경망(Neural Networks) 부분학습 방법 및 시스템 | |
WO2023179429A1 (zh) | 一种视频数据的处理方法、装置、电子设备及存储介质 | |
KR20180004898A (ko) | 딥러닝 기반의 이미지 처리 기술 및 그 방법 | |
Zhong et al. | Where to Prune: Using LSTM to Guide End-to-end Pruning. | |
CN110599443A (zh) | 一种使用双向长短期记忆网络的视觉显著性检测方法 | |
CN111079930A (zh) | 数据集质量参数的确定方法、装置及电子设备 | |
Tripathy et al. | A real-time two-input stream multi-column multi-stage convolution neural network (TIS-MCMS-CNN) for efficient crowd congestion-level analysis | |
Xiang et al. | Crowd density estimation method using deep learning for passenger flow detection system in exhibition center | |
CN117235559B (zh) | 一种基于边缘计算的物联网数据采集方法及系统 | |
CN111079900B (zh) | 一种基于自适应连接神经网络的图像处理方法及装置 | |
CN115174421B (zh) | 基于自监督解缠绕超图注意力的网络故障预测方法及装置 | |
Javaheripi et al. | Swann: Small-world architecture for fast convergence of neural networks | |
CN114760104A (zh) | 一种物联网环境下的分布式异常流量检测方法 | |
KR102340387B1 (ko) | 뇌 연결성 학습 방법 및 이를 위한 시스템 | |
Cui et al. | A cutting-edge video anomaly detection method using image quality assessment and attention mechanism-based deep learning | |
Rizos et al. | Deep learning for underwater object detection | |
Chen et al. | Image Recognition Based on Convolution Neural Network with Small Data Set |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
E701 | Decision to grant or registration of patent right | ||
GRNT | Written decision to grant |