퍼셉트론부터 CNN까지, 딥러닝의 역사
상태바
퍼셉트론부터 CNN까지, 딥러닝의 역사
  • 박종건 기자
  • 승인 2019.05.28 13:48
  • 댓글 0
이 기사를 공유합니다

 인공지능은 컴퓨터의 개념이 등장했을 때부터 대두된 주제이다. 튜링 머신을 통해 현대적 컴퓨터의 개념을 최초로 제시한 영국의 수학자 앨런 튜링은, 1950년‘계산 기계와 지능’이라는 논문에서‘기계가 생각할 수 있는가’에 대한 답을 다각도로 고찰한 결과를 제시했다. 이처럼 컴퓨터의 등장은 인간처럼 고차원적인 정보 처리를 수행할 수 있는 기계를 만들고자 하는 노력에서 비롯되었으며, 따라서 인간의 지능을 모방하고자 하는 인공지능 역시 많은 연구자들이 관심을 가질 수밖에 없는 주제이다. 이 중 생명체의 신경계에서 영감을 얻어 구현된 딥러닝은, 여러 번의 침체와 부흥을 겪은 끝에 최근 들어 엄청난 주목을 받고 있다. 다양한 분야에서 각광받고 있는 딥러닝의 역사를 살펴보자.


인간의 두뇌를 모방하여 만든 퍼셉트론

 전자‘두뇌’가 스스로를 가르치다(Electric‘Brain’Teaches Itself). 1958년 7월 13일, 뉴욕 타임즈는 파격적인 제목의 기사를 내보냈다. 미 해군의 지원 아래 새로 개발된 연산 장치를 소개하는 내용이었다. 기사에 따르면, 퍼셉트론(Perceptron)이라 명명된 이 장치는 인간에 의한 훈련이나 조종 없이 주변을 감지, 인식, 분별하는 능력을 가지고 있었으며, 경험이 쌓일수록 더 지혜로워지는 특성을 보였다. 당시 미 해군은 퍼셉트론을 걷고, 말하고, 보고, 읽고, 쓰고, 스스로를 재생산하며, 스스로의 존재를 인지하는 기계로 발전시킬 것이라는 포부를 드러내기도 했다. 퍼셉트론의 등장은 각종 매스컴에 널리 소개되었고, 일각에서는 어쩌면 사람처럼 생각하는 기계가 발명될지도 모른다는 기대가 일었다. 퍼셉트론은 이제껏 인류가 보지 못했던, 인간의 두뇌를 가장 잘 흉내 낼 수 있는 거울이었다.

 퍼셉트론은 1958년, 코넬 항공 연구소의 프랭크 로젠블랫이 개발했다. 오늘날의 딥러닝 아키텍처와는 다르게 퍼셉트론은 알고리즘 그 자체보다는 실제 기계를 제작하기 위한 방법론으로서 개발된 측면이 컸다. 하지만 뇌의 뉴런이 서로 연결되어 정보를 처리하는 구조를 모방한 알고리즘은 당시로서는 새로운 것이었다. 퍼셉트론이 최초로 뉴런의 구조를 모델링한 것은 아니다. 1943년 시카고대학교의 워렌 맥컬록과 MIT 학생이었던 월터 피츠는 여러 개의 흥분성 신호와 억제성 신호를 받아들인 후 적절한 결과값을 출력하는 뉴런의 수학적 모델을 제시했다. 또한, 이들을 유한하게 조합한 네트워크로 튜링 머신과 동등한 연산을 수행할 수 있다는 점을 증명했다. 하지만 이 모형은 뉴런 자체의 구조에 집중한 것에 비해, 로젠블랫은 이를 활용해 실제 문제를 해결하는 데 응용하였다는 점에서 독창적이었다. 퍼셉트론은 맥컬록과 피츠가 제시한 뉴런 모형과 유사하게, 여러 개의 입력값에 가중치를 곱해서 더하고, 거기에 상수 값을 추가한다. 이 값은 활성 함수에 따라 다시 결과 값으로 변환되는데, 퍼셉트론의 경우에는 계산 값이 역치보다 크면 1, 작으면 0을 결과값으로 출력한다. 퍼셉트론의 가중치는 처음부터 정해지는 것이 아니라, 반복적인 학습을 통해 적절한 값으로 조정된다. 퍼셉트론은 각 시냅스의 가중치를 임의의 값으로 설정하고, 출력값, 그리고 출력값의 오차에 비례하도록 가중치를 수정하는 방식을 사용했으며, 이는 ‘델타 규칙’이라고 불린다. 로젠블랫은 실제로 이미지를 인식하는 문제에 퍼셉트론을 활용하여 성과를 보이기도 하였다.

 하지만 이렇듯 각광을 받던 퍼셉트론은 한순간에 그 명성을 잃고, 사람들의 관심 밖으로 멀어지게 된다. 1969년, MIT의 마빈 민스키와 시모어 패퍼트는 저서 <퍼셉트론>에서, 퍼셉트론이 선형 분리가 불가능한 데이터들을 분류할 수 없음을 증명했다. 선형 분리 가능한 데이터는 고차원 공간에서 어떤 초평면에 의해 분리될 수 있는 데이터를 뜻한다. 퍼셉트론이 선형 분리 밖에 수행하지 못한다는 점은 당시로서는 큰 충격이었다. 이는 곧 퍼셉트론이 우리 주변에서 일어나는 대부분의 과제를 수행할 수 없음을 뜻하기 때문이었다. 민스키와 패퍼트의 결론에 따르면, 퍼셉트론은 간단한 XOR 문제도 해결할 수 없었다. 1이 참, 0이 거짓을 나타낸다고 할 때, XOR 연산은 홀수 개의 1이 있을 때만 참, 즉 1을 반환한다. 다른 논리연산과는 달리, XOR 연산의 결과는 좌표로 나타내었을 때 선형 분리를 할 수 없고, 따라서 퍼셉트론으로는 XOR 연산을 구현하지 못한다. 인간에 필적하는 인공지능으로 거듭날 것으로 기대받은 알고리즘이 간단한 논리 연산에서부터 막혀버린 것이다.


다층 퍼셉트론과 오류 역전파 알고리즘

 <퍼셉트론>의 출간은 강력한 머신 러닝 아키텍처의 등장을 한순간에 물거품으로 만들었다. 그 이후로 ‘인공 신경망’과 관련된 연구는 오랜 기간 침체기를 겪었고, 제대로 된 발전을 이루지 못했다. 순전히 퍼셉트론이 치명적인 한계점을 가지고 있기 때문만은 아니었다. <퍼셉트론>에서 마빈 민스키는 퍼셉트론의 구조를 여러 층으로 반복한 다층 퍼셉트론이 이 문제를 해결할 수 있으리라 언급했지만, ‘지구 상의 그 누구도 이를 학습시킬 방법을 찾아낸 바가 없다’며 다층 퍼셉트론의 구현에 회의감을 드러냈다. 민스키의 말처럼, 이후 십수년간 다층 퍼셉트론은 그저 범접할 수 없는 영역으로 남아 있게 되었다. 이렇듯 1970년대에 걸쳐 이어졌던 침체기를 일컬어 인공지능의 첫 번째 겨울이라고 한다.

 1986년 카네기 멜런 대학의 제프리 힌튼, 캘리포니아 대학의 데이비드 럼멜하트, 노스이스턴 대학의 로널드 윌리엄스가 오류 역전파 알고리즘으로 다층 퍼셉트론을 학습시키는 데 성공하면서, 길고도 길었던 겨울이 끝나가는 듯했다. 그들은 독자적으로 오류 역전파 알고리즘을 고안하기는 했지만, 최초로 발견한 것은 아니었다. 오류 역전파 알고리즘의 수학적인 일반화에 해당하는 ‘후진 방식 자동 미분’ 기법이 이미 1970년대에 발견되었고, 1974년에는 하버드 대학교의 학생이었던 폴 웨어보스가 후진 방식 자동 미분에서 영감을 받아, 오류 역전파 알고리즘으로 다층 퍼셉트론을 학습시키는 방법을 박사 학위 논문으로 발표한 바 있다. 그러나 본격적으로 학계의 판도가 바뀐 것은 힌튼의 논문이 발표된 이후였다.

 다층 퍼셉트론을 학습시킬 수 없었던 이유는 매우 단순하다. 퍼셉트론은 원하는 결과 값과의 오차를 계산하여 이에 비례하게 가중치를 조정할 수 있다. 하지만 다층 퍼셉트론은 데이터가 입력되는 입력층, 결과 값을 출력하는 출력층 사이에도 여러 은닉층이 존재한다. 이들 층에 속하는 노드의 출력값은 오차를 측정할 기준이 없기 때문에 가중치를 어떻게 조정해야 하는지 알 수 없다. 오류 역전파 알고리즘은 출력층에서 발생한 오차를 출력층에서 입력층의 방향으로 보내면서, 은닉층의 노드 사이의 가중치를 재조정한다. 오류 역전파 알고리즘을 사용하면 수많은 노드층이 쌓인 다층 퍼셉트론도 학습시킬 수 있을 것으로 기대됐다. 힌튼과 동료들의 발견은 한동안 사람들의 관심 밖이었던 인공 신경망 분야에 다시 활기를 불어넣어 주었다.

 1950년대 후반, 하버드 의대의 데이비드 허블과 토르스텐 비셀은 고양이를 이용한 실험으로 우리 눈에서 수용된 정보가 두뇌의 뉴런에서 어떻게 처리되는지에 대한 단서를 밝혀냈다. 그들은 고양이의 뇌에 전극을 심고, 화면에 다양한 모양의 물체를 비추었을 때 뉴런의 활성화 정도를 측정했다. 그 결과, 동물의 시각 피질 내에 있는 뉴런들은 전체 이미지를 한꺼번에 수용하는 것이 아니라, 소수의 뉴런이 모여 이룬 국부 수용장이 이미지의 일부분을 각각 받아들인다는 것을 밝혀냈다. 이러한 구조는 이미지 인식을 위한 인공 신경망의 구성에 큰 영감을 제공해주었다. 1980년, NHK 방송기술 연구소의 쿠니히코 후쿠시마는 허블과 비셀이 밝힌 시각 피질의 구조를 본떠, ‘네오코그니트론(Neocognitron)’이라는 신경망 모델을 개발했다. 1989년 AT&T 랩스의 얀 르쿤은 손으로 작성된 우편물의 ZIP 코드를 인식하여 자동으로 분류할 수 있는 프로그램을 개발했다. 비록 수일 동안 학습을 시켜야 하는 번거로움이 있었지만, 개발된 프로그램은 약 90%의 정확도로 손 글씨를 인식할 수 있었다. 이후 르쿤과 그의 동료들은 오류 역전파 알고리즘을 적용하여 네오코그니트론을 발전시켰고, 1998년 CNN(Convolutional Neural Network)을 발표하기에 이르렀다. CNN은 오늘날까지도 이미지 처리 분야에서 널리 쓰이는 대표적인 딥러닝 아키텍처 중 하나이다.


복잡한 신경망을 학습시키기 위한 방법

 CNN의 성공에도 불구하고, 인공 신경망은 실용적인 응용에 적합하지 못했다. 은닉층의 개수가 많아질수록, 즉 신경망이 ‘깊어질수록’ 학습 속도가 더뎠고 학습이 제대로 이루어지지 않는 경우가 많았다. 오류 역전파 알고리즘을 사용하여도 여러 은닉층을 거치며 역방향으로 전파되는 오류가 점점 소실되는 그래디언트 소실 문제가 발생하기 때문이었다. 이렇게 되면 은닉층을 많이 추가해도 대부분의 가중치가 조정되지 않으므로 학습을 하는 의미가 없어지게 된다. 은닉층을 마냥 추가하는 것이 모든 문제를 해결해주리라는 생각은 큰 오산이었다. 해결 불가능한 문제에 봉착하며, 인공 신경망 분야는 2000년대 중반에 이르기까지 또 한번의 겨울을 맞이하였다.

 그러나 여러 기술적 해결책이 하나 둘씩 등장하기 시작했다. 대표적으로 그래디언트 소실 문제는, 입력이 음수이면 0, 양수이면 자기 자신을 반환하는 ReLU 함수를 뉴런의 활성 함수로 사용하는 등의 방법으로 해결되었다. 기존에는 활성 함수로 보통 시그모이드 함수를 사용했다. 시그모이드 함수는 입력이 작으면 0, 점점 커질수록 함수 값이 증가하다 일정 수준 이상에서는 다시 일정해지는 추이를 보인다. 하지만 이 경우 매우 큰 입력에 대해서도 뉴런의 결과 값은 일정하게 유지되는 한계가 있다. 반면 ReLU 함수는 매우 큰 입력에 대해서도 자기 자신을 반환하기 때문에 이러한 한계를 보정할 수 있다. 더딘 학습 속도도 컴퓨터의 하드웨어 성능이 비약적인 발전을 이루며 어느 정도 해소될 수 있었다.

 이렇게 개선된 인공 신경망은 다양한 분야에서 기존의 머신 러닝 방식에 비해 압도적인 성능을 보여주었다. 대표적인 사례로 대량의 시각 자료 데이터베이스인 이미지넷의 이미지를 분류하는 ILSVRC 대회를 들 수 있다. 2012년 ILSVRC의 우승은 알렉스넷(AlexNet)이라 명명된 CNN 기반의 인공 신경망이 차지했는데, 알렉스넷의 오차율은 15%로 다른 경쟁자들에 비해 무려 10%p 낮은 파격적인 수치였다.


 2014년, 구글은 영국의 한 벤처 기업을 인수했다. 무려 4~5천억 원에 달하는 인수 금액은 직원 50명 정도의 작은 규모와 크게 대조되었다.‘딥마인드’라고 불리던 이 회사는 비록 규모는 작았지만 딥러닝에 관한 한 최첨단의 기술을 보유하고 있었고, 2016년 알파고(AlphaGo)를 등장시켜 바둑계를 뒤흔들며 그 저력을 드러냈다. 이처럼 구글은 올해 인공지능 기술에 15조 원 가량을 투자하며 딥러닝 등의 분야에서 핵심 기술 확보에 열을 올리고 있다. 실제로 두 번의 침체기를 극복하고 최근 다시 각광받고 있는 딥러닝은 앞서 언급했던 알파고에서부터, 테슬라의 자율주행 자동차, 애플의 얼굴 인식 시스템 Face ID까지 놀랄 만한 성과를 보여주고 있다. 이전에는 상상조차 하지 못했던 일들을 딥러닝이 해내고 있다. 앞으로도 딥러닝은 앞을 가로막는 수많은 장벽을 깨부수며 새로이 거듭날 것이고, 그럴수록 우리의 삶은 편리해질 것이다. 딥러닝의 발전이 새로이 만들어갈 미래의 모습을 그려본다.


참고문헌 | <핸즈온 머신러닝: 사이킷런과 텐서플로를 활용한 머신러닝, 딥러닝 실무>, 오렐리아 게론, 한빛미디어

<Neural Networks: A Systematic Introduction>, 라울 로하스, Springer


댓글삭제
삭제한 댓글은 다시 복구할 수 없습니다.
그래도 삭제하시겠습니까?
댓글 0
0 / 400
댓글쓰기
계정을 선택하시면 로그인·계정인증을 통해
댓글을 남기실 수 있습니다.
주요기사
이슈포토