영상요약
인공지능 기술의 정점이라 불리는 알파고나 테슬라의 자율주행 엔진, 그리고 병원에서 활용되는 암 판별기의 내부는 의외로 단순한 원리로 구성되어 있습니다. 이들은 모두 입력된 데이터를 숫자로 변환한 뒤, 복잡한 수식 대신 곱셈과 덧셈이라는 기초적인 연산을 반복하여 최종적인 결과를 도출합니다. 자율주행차는 카메라 영상을 숫자로 인식해 가속이나 제동을 결정하고, 바둑 인공지능은 판 위를 숫자로 읽어 최적의 수를 찾아냅니다. 이처럼 현대 문명을 바꾸고 있는 고도화된 기술들의 핵심은 결국 입력값에 따른 산술 연산의 나열에 불과하다는 사실이 매우 흥미롭습니다.
인공신경망 학습의 대표적인 방식인 지도 학습은 사람이 기계에게 직접 정답을 가르쳐주는 과정이라고 할 수 있습니다. 예를 들어 특정 배경색 위에서 흰색 글씨와 검은색 글씨 중 어느 것이 더 잘 보이는지 사람이 직접 선택하면, 기계는 이를 바탕으로 정답 데이터셋을 구축하게 됩니다. 여기서 배경색은 입력값인 X가 되고, 사람이 선택한 더 잘 보이는 글씨색은 출력값인 Y가 되어 하나의 정답 쌍을 이룹니다. 마치 아이에게 사진을 보여주며 이름이 무엇인지 알려주는 것과 같은 원리이며, 이러한 양질의 데이터를 충분히 확보하는 것이 기계 학습의 가장 필수적인 전제 조건이 됩니다.
전통적 프로그래밍과 딥러닝의 가장 결정적인 차이점은 알고리즘 내의 핵심 수치인 가중치를 누가 결정하느냐에 있습니다. 과거에는 생물학적 연구 결과 등을 토대로 사람이 직접 RGB 값에 특정 숫자를 곱해 회색조로 변환하는 등의 세부적인 규칙을 코드로 작성했습니다. 즉, 문제 해결을 위한 논리 구조를 인간이 직접 설계한 셈입니다. 반면 딥러닝은 인공신경망 내부의 수많은 가중치 값을 기계가 스스로 찾아내도록 유도합니다. 사람이 일일이 계산 규칙을 정의하지 않아도, 기계는 반복적인 학습을 통해 어떤 수치를 적용해야 최선의 결과를 낼 수 있는지 스스로 터득하며 인간의 역할을 보완합니다.
사고의 주체도 사람이고 그 사고를 구현하는 코드 역시 사람이 직접 작성하는 것이 바로 전통적 프로그래밍의 가장 큰 특징입니다.
인공신경망의 구조를 자세히 들여다보면 수많은 레이어와 노드가 복잡한 그물망처럼 얽혀 있는 것을 볼 수 있습니다. 기계 내부에서는 입력된 정보가 각 레이어를 거치고, 그 안에 포함된 노드를 지나며, 다시 각 노드에 연결된 수많은 연결선의 가중치와 계산되는 삼중 루프 구조의 연산이 수행됩니다. 이 과정의 핵심은 각각의 연결선에 부여된 가중치입니다. 알파고의 경우 수천만 개에서 수억 개의 가중치를 가지고 있으며, 기계는 학습을 반복할 때마다 이 숫자들을 미세하게 조정합니다. 인간이 이 방대한 숫자들의 개별적인 의미를 전부 파악할 수는 없지만, 결과적으로 기계는 정교한 판단을 내리게 됩니다.
딥러닝의 놀라운 점은 아주 적은 양의 정답 데이터만으로도 전체 영역에 대한 정확한 판단이 가능하다는 일반화 능력에 있습니다. 예를 들어 1,600만 가지가 넘는 전체 색상 중 단 20~30개에 대한 정답만 알려주었음에도 불구하고, 인공신경망은 학습하지 않은 나머지 수많은 색상에 대해서도 적절한 글씨색을 정확히 판별해냅니다. 이러한 원리는 의료 분야의 암 판별이나 사물 인식 기술에도 동일하게 적용됩니다. 수천 장의 사진을 학습한 인공지능이 한 번도 본 적 없는 환자의 영상에서 병변을 찾아내는 것처럼, 기계는 데이터의 파편 속에서 보편적인 규칙을 스스로 찾아내며 인간의 한계를 뛰어넘고 있습니다.