Chapter 05 딥러닝의 효율을 향상시키는 다양한 기술
딥러닝은 높은 예측 성능을 보여주지만, 방대한 계산과 높은 전력 소모라는 단점이 존재한다. 따라서 딥러닝을 가볍게 하는 접근, 즉 알고리즘 측면에서 인공신경망을 줄이는 것과 딥러닝에 최적화된 하드웨어를 개발하는 기술이 연구되고 있다.
■ 심층 압축 (Deep Compression)
네트워크 프루닝, 양자화, 허프만 코딩 기법을 도입한 방법이다. 허프만 코딩은 주어진 정보를 손실없이 압축하는 방법이다. 심층 압축은 기존 프루닝 기법의 90% 보다 큰 97%의 효율을 보장한다.
■ 이진신경망 (Binary Neural Network)
일반적인 인공신경망이 실수의 단정밀도 32비트를 사용하는 데 반해 이진신경망은 1비트로 표현하므로 계산량을 32배 이상 줄일 수 있다. 소규모 IoT 장비 등 소형 임베디드 장치에서 활용될 가능성이 높다.
■ Once For All 신경망
스마트폰 같은 소형 하드웨어에서 인공신경망을 활용하기 위해서는 해당 기기의 성능에 맞도록 최적화를 해야 한다. 심층 압축이 이러한 최적화 방법이지만 기기가 변경될 때마다 많은 재학습을 거쳐야 하는 단점이 있다.
Once For All은 이미 학습된 인공신경망을 다양한 환경의 하드웨어에서 압축할 때 효율을 높이기 위한 방법론이다.
■ 인공신경망의 지식 증류 (Distilling the Knowledge)
해당 문제 해결에 최적화된 여러가지 모델을 동시에 활용하는 것을 앙상블(Ensemble)이라고 하는데 앙상블 기법에 활용된 여러 인공신경망 지식을 하나의 인공신경망에 전달하는 것이 지식의 증류의 개념이다.
어떤 그림이 자동차 95%, 트럭 4.98%, 크레인 0.01%, 오토바이 0.01%로 확률(Softmax 값)로 결과가 나왔다면, 실제 자동차 사진의 소프트맥스 값이 100%가 아닌 것은 자동차가 트럭과 일부 유사한 점이 있기 때문이고, 이는 소프트맥스 값에 지식이 내재되어 있다는 뜻이다.
실제 지식 증류 실험에서는 하나의 신경망에서 보여주지 않았던 분류의 데이터도 예측이 가능하다는 놀라운 현상이 발견됐다.
■ 딥러닝 하드웨어의 성능 측정 (MLPerf)
머신러닝, 특히 딥러닝에서의 성능 측정 기준이다. MLPerf에서도 딥러닝과 마찬가지로 학습과 추론에서 서로 다른 기준을 제시한다.
전통적인 하드웨어 성능 측정 방법이 초당 연산 처리 수(FLOPS)인데 반해, 딥러닝은 다양한 정밀도를 활용하는 측면에서 일률적인 측정이 어렵기 때문에 서비스의 시간 지연으로 성능을 측정하는 경우가 많다.
※ 2020년 6월 기준으로 세계 슈퍼컴퓨터 10위 안에서 6대가 딥러닝에 활용되는 GPU를 탑재하고 있다.
'AI_머신러닝_딥러닝' 카테고리의 다른 글
<회귀모델>에서 '회귀 regression'의 의미 (0) | 2022.10.03 |
---|---|
딥러닝 최신 용어정리 #8 학습용하드웨어 FPGA TPU 추론용하드웨어 모바일네트워크 깊이별로구분가능한합성곱 네트워크프루닝 (0) | 2022.09.23 |
딥러닝 최신 용어정리 #7 스파이킹신경망 활성학습 그래프신경망 메모리네트워크 뉴럴튜링머신 BERT OpenAI 캡슐네트워크 다이내믹라우팅 (0) | 2022.09.22 |
딥러닝 최신 용어정리 #6 메타학습 원샷학습 지속적인학습 신경망구조탐색 AutoML (0) | 2022.09.16 |
딥러닝 최신 용어정리 #5 스타크래프트2의 인공지능 알파스타 (0) | 2022.09.12 |