최근 몇 년 동안 인공지능을 대표하는 딥러닝 분야가 과학과 산업 전반에 이바지하고 있는 내용은 점점 일상 생활에 파고들고 있다. 사실 딥러닝이 그리 최근의 기술은 아니다. 이것은 2010년을 기점으로 대량의 데이터를 수집가능한 초고속 인터넷 네트워크망과 저렴해진 저장장치, 그리고 고속의 GPU 프로세서 등의 제반 환경이 충분히 기존 이론을 구현할 수 있을만큼 성숙해졌기 때문이다. 딥러닝은 많은 응용에 사용되고 있지만 그 중에서도 패턴 인식 분야에 눈부신 발전을 이루었는데, 그것은 인간을 비롯하여 모든 생물의 진화 단계에서 맨 처음에 눈이 생겼을 시점을 분기해서 엄청나게 많은 폭발적으로 많은 종의 진화가 이루어진 사건과 비교해볼 때, 인공지능으로 가는 비약적 발전 혹은 더 나아가 특이점으로 가는 첫 걸음이기도 하다. 이렇다보니, 대개 딥러닝을 배우거나 가르칠 때 많은 교과서나 강의가 간단한 패턴 인식에서 시작한다.
딥러닝을 배우는 단계에는 여러가지가 있다. 수학적으로 접근하여 개념을 이해한 후, 코딩을 접해보는 것과 뭔지 쥐뿔도 모르지만 일단 코딩 먼저 해보고 뭔가가 돌아가는 걸 알게 된 다음에, 차근차근 하나씩 코딩 내의 작업에 대해서 거꾸로 알아가는 방법이 있다. 두 방법 모두가 쉽지만은 않다. 여러 유명 MOOC 에서 가장 많은 강좌가 나와 있는 것도 딥러닝과 데이터 사이언스 분야이고, 가장 인기가 많은 분야이면서 앞으로도 가장 많은 인재가 필요한 부분이 그 부분임에도 불구하고, 현재까지도 가장 인기를 모으고 있는 Andrew Ng의 코스가 끝까지 강의를 완료하는 완독률(?)의 비율이 엄청나게 낮은 것이 이 분야의 문턱이 높은 것을 알려준다.
관심이 있어 이책 저책, 유튜브와 무크를 조금씩 듣고 있는데, 북클럽에서 우연히 발견한 책이다. 다른 여러가지도 각자 나름대로 도움이 되었지만, 이 책은 복잡함을 간단하게 정리해서 개념을 쉽게 알려주는 책이어서 처음 배우는 사람이나 혹은 조금 알지만 이것 저것 개념을 더 정림하고 싶을 때 읽으라고 추천하고 싶은 책이다. 다른 강의들처럼 흔하게 패턴 인식 문제로 접근을 하는데, 다른 책과 다른 픽셀 단위의 흑백 숫자 필기체를 직접 그림으로 그려 해당 픽셀이 합성곱 신경망(CNN) 에서 처리되기 까지의 과정을 실제적으로 그림으로 아주 차근차근 시작하면서 시작하고 있다는 것이다.
당연히 신경망이라고 하면 아 뭔가 인간의 신경을 본따서 만들었겠구나 라는 생각이 든다. 거기까지 맞췄다면, 신경망의 어떤 부분을 딥러닝 컴퓨터 과학이 차용하고 있는것을 질문해봐야 한다. 인간의 뉴런과 딥러닝에서 계산하는 뉴런(유닛)은 매우 닮았다. 하나의 뉴런은 수많은 다른 뉴런과 신호를 주고 받음으로써 생각과 계산 의식이라는 것을 만들어내는데, 그 신호의 세기가 신호의 활성화에 이바지한다. 여러 개의 신호를 세게 동시에 받는다면 그 신호는 강한 연결을 만들어내고 활성화되어 다른 뉴런의 축삭으로 을 통해 뉴런 본체에게 전달되고, 이 신호들의 강약에 따라 거기서 연결이 비활성화될 지 활성화될지가 결정된다.
아무튼 이런 뇌의 신경 작용과 똑같이 패턴 매칭의 예에 적용하여 필기체로 쓴 아주 단순한 규모의 3x4 픽셀 규모의 글자가 어떻게 신경망을 통과해 글자를 식별하는 지를 아주 자세하게 예를 들면서 딥러닝에 처음 등장하는 가중치와 활성화 함수, 편향(bias), 입력층, 출력층, 은닉층, 신경망, 합성곱 신경망 등의 개념을 소개하고 있다. 특히 합성곱 신경망과 은닉층에 대해서는 숨은 악마라는 비유를 이용하여 신경망에서 은닉층의 하는 역할을 설명하고 있는데, 공식만으로는 잘 이해가 가지 않는 사람들에게는 적절한 비유라 하겠다.
일반 프로그래머나, 문과생이 딥러닝을 공부하고자 할 때 첫번째 부딪치는 벽이 온갖 공식일텐데, 딥러닝에 대한 기초 컨셉에 이어지는 다음 내용은 딥러닝에 필요한 기초 수학적 개념이다. 딥러닝의 기본 연산 단위가 될 행렬과 벡터는 아무리 강조해도 모자람이 없으니 당연히 다루었고, 그보다도 더 기초적인 시그마 연산과 확률밀도 함수 같은 것도 나와있으며, 이후, 미분, 편미분, 다변수 함수 경사하강법 등 딥러닝에서 필요한 거의 모든 수학적 표현과 기본 컨셉을 다루고 있으므로, 다른 방법으로 학습을 하다가 모르는 게 나오면 이 책을 참조하기에도 편리하다. 액셀로 실제로 데이터값을 확인해가면서 실습할 수 있어서, 차근차근 데이터 안쪽을 들여다볼 수 있게 되어 있다. 탄탄한 개념적 기초를 만드는데 도움이 될만한 책이다.