Efficient Processing of Deep Neural Network: from Algorithms to Hardware Architectures
"인공지능"이 세상의 모든 기술관련 매체의 지면을 뒤덮고 있다. 반도체 회로 설계와 컴퓨터 구조 분야는 온통 "깊은 신경망(Deep Neural Networks)"의 효율적(저전력!) 구현에 모여있다. 돌이켜보면 20세기말1990년대의 논문은 온통 효율적인 곱셈기와 누산기 설계로 채웠었다. 그때는 디지털 신호처리, 특히 멀티 미디어 코덱이 대상이었다. 신호처리에 특화된 명령이 범용 프로세서에 들어가고 저전력 공정 기술이 발달하자 전용 칩보다 유연한 저전력 CPU 세상이 됐다. 21세기 들어 고속 CPU와 GPU로 톡톡히 재미를 보다가 한계에 다다르자 다시 전용 칩(ASIC)이란다. 무슨 이야기들을 하는지 들여다 보면 결국 곱셈 잘하는 방법, 곱셈 횟수 줄이는 방법이다. 예전과 다른 점이라면 빠른 연산회로 연구에서 연산 횟수 줄이기로, 반복적인 상수 곱셈(DSP 고속 알고리즘의 특징)의 재활용에서 곱셈할 필요 없는 경우 찾기와 메모리 계층적 활용 등이다. 연산회로(Computer Arithmetics)에서 컴퓨터 구조(Computer Architecture)로 추상화 수준이 높아졌다. 어쨌든 다시 반도체 설계가 돌아오니 반갑다. 무엇보다도 강연을 보기 편하다! (음... 다 아는 얘기구먼...) 인공지능과 신경망 역시 한시대를 유행했었으니까...
Computer architecture for deep learning applications/David Brooks/Havard
https://alchem.usc.edu/ceng-seminar/slides/2017/Brooks_USC_April2017.pdf
강연을 들어보면 신경망을 현존 컴퓨터 구조로 구현해 놓으니 곱셈기보다 메모리에서 소모하는 전력이 훨씬 많다고 한다(저전력 곱셈 연산기 회로는 이미 30년전에 끝내놓았으니까!). 신경망 알고리즘을 쪼개 파이프라인 병렬처리 구조를 취하고 전역 메모리 구조보다 지역 메모리를 사용하는 방향으로 가자는 주장이다. 당연한 것을 인공지능에 얹어 현란하게 말하고 있다는 느낌이 든다. 어쨌든 오늘의 신경망 컴퓨팅을 아주 잘 정리하고 있는 강연 두편을 들어보자.
Efficient Processing of Deep Neural Network: from Algorithms to Hardware Architectures #NeurIPS2019
원고: https://eyeriss.mit.edu/2019_neurips_tutorial.pdf
Lecture 15 | Efficient Methods and Hardware for Deep Learning
원고: https://cs231n.stanford.edu/slides/2017/cs231n_2017_lecture15.pdf
깃-허브에 실행 모델들이 있다. (오픈-소스 만세!)
A Scalable Eyeriss Model in SystemC
https://github.com/nietzhuang/Cycle-accurate-Eyeriss-model
Hierarchical Mesh NoC - Eyeriss v2
https://github.com/karthisugumar/CSE240D-Hierarchical_Mesh_NoC-Eyeriss_v2
요즘 학생들은 30년전에 신경망, 병렬처리, 고속 신호처리 알고리즘들이 학계를 휩쓸었던 것을 모르는지 신경망이 마치 새로운 분야로 알고 있다. 그때와 달라진 점이라면 규모가 어마어마하게 커졌고 공부할 수 있는 환경이 무척 풍부해 졌다는 것이다. 7백여개의 입력 층 노드, 수십개의 은익층 노드 그리고 10여개의 출력층 노드를 갖는 필기체 숫자인식 신경망 쯤이야 널리고 널렸다. 불과 30년전에는 석사 논문 쯤으로 등장할 법한 내용들을 고등학교 수준에서 구현하는 것을 보면 말이다.
돌고 도는 것이 패션 뿐 만은 아니다.
-----------------------------------------------------
블로그 관련글: "신경망(뉴럴 네트워크)": "뉴로모픽 컴퓨팅"의 "Hello, World!"
https://fun-teaching-goodkook.blogspot.com/2024/05/hello-world.html