나는 2019년 10월 22일, 세계적인 안면인식 인공지능 업체인 센스타임(Sense Time) 상해 지사에서 충격적인 현실을 목도했다. 상해 지사에 근무하는 2,800명 직원 중 2,500명이 인공지능 솔루션 개발 엔지니어인 점도 놀라웠지만, 파이썬(python) 프로그래밍을 기술한 중학생용 『인공지능입문』과 인공지능의 핵심 개념들을 수학적으로 기술한 고등학생용 『인공지능기초』를 출간하고 이것을 상해에 있는 중학교 및 20개 고등학교에서 교과서로 채택하고 있어 매년 2,000명에 가까운 고교생들이 현재 한국 석사과정 정도에서 배우는 인공지능 지식을 갖춘 채 졸업한다는 것이다. 이와는 대조적으로, 2019년 11월에 제조업 품질개선을 지도하는 경영학과 및 산업공학과 교수님 180명을 대상으로 품질토크쇼를 진행하면서 ‘경사하강법’이나 ‘서포트 벡터 머신’의 개념을 알고 있는 분들을 현장에서 파악했더니 5명 정도에 불과했다.
--- p.6, 「저자의 글」 중에서
기계학습은 인공지능의 부분 집합으로 간주되고 있다. 기계학습은 더 많은 데이터나 경험을 바탕으로 주어진 과제의 수행성과를 개선하는 시스템이다. 기계학습 알고리듬의 과업은 입력 데이터를 기반으로 패턴이나 데이터 간의 상호관계를 파악하는 모델을 구축하여 예측을 하거나 현상을 설명하는 것이다. 인간의 경우 어린 시절부터 반복적인 학습을 하면서 인지를 활용하여 같은 사물의 형체나 패턴이 변하더라도 동일한 것으로 인지할 수 있다. 기계학습/머신러닝은 데이터의 패턴이나 기저에 내재한 속성을 구분하는 데 있다. 훈련데이터를 특정 알고리듬에 반복하여 학습시킨 후 새로운 모델을 만든다. 다음 단계로 이 모델에 과거에 전혀 보지 못했던 새로운 데이터를 입력하면 어떤 패턴이 나올 것인지 예측하게 된다. 이것이 결과값이다. 이러한 결과값을 바탕으로 행동 대안을 선택하고 문제를 해결할 수 있다.
--- p.49, 「제3장. 어떻게 기계학습으로 인공지능이 가능할까?」 중에서
의사결정트리의 단점은 훈련데이터에 너무 잘 맞는 과적합이 되는 경향이 있다. 여러 개의 의사결정트리를 통해 랜덤 포레스트(random forest[무작위의 숲])를 만들면 과적합의 단점을 해결할 수 있다. 예를 들면, 어떤 사람의 암 발병률을 예측하는 데 있어서 수많은 속성을-성별, 나이, 몸무게, 근육량, 운동 정도, 스트레스 정도, 가족력, 과거 유사질병을 앓은 경험, 항체 보유 여부, 설탕 섭취량, 수면 시간, 근무 환경, 건강검진 주기 등 13가지-감안하여 배깅을 한다면 거의 100퍼센트에 가깝게 예측을 할 수 있다. 과적합이 일어나서 데이터 포인트를 분류하는 선이 지그재그하거나 구불구불하게 그려져서 훈련데이터(training data)의 특성은 잘 반영하지만 검증 데이터(test data)를 사용하는 경우, 훈련된 모델이 맞지 않아 의사결정이나 예측을 하기가 오히려 어려워져서 쓸모가 낮아진다. 특히 기계학습에서 수많은 구분 규칙(rule)을 적용하는 경우 과적합이 일어나기 쉽다. 너무 제한적이거나 너무 유연한 학습 모델을 사용하지 않는 것이 데이터 사이언스의 핵심 중 하나다.
--- p.88, 「제4장. 인공지능 알고리듬 쉽게 이해하기」 중에서
언어를 이해하는 데 단순히 발성된 대화나 음성만으로 파악하기보다는 몸짓(gesture)을 인식하고 눈을 따라 가거나 표정을 확인하는 등 다양한 모드를 동시에 결합하여 사용하면 화자의 발언 내용과 주제, 감정, 중요성 등을 이해하기가 더욱 용이하다(multi modal language processing). 사람들이 말을 할 때 특정한 상황에 맞는 몸짓을 하는 경우 의미를 명확히 하거나 단순화시킬 수 있고, 심지어는 “의견에 동의한다”라고 발언하는 것보다 크게 고개를 끄덕이는 것이 때론 훨씬 더 효과적이다. 또한 기계학습의 경우에는 수많은 유튜브 동영상 자료에서 화자가 요청하는 질문에 대해 정확히 답변하는 동영상의 특정한 부분과 연관시키거나, 마이크 위치와 카메라 위치를 통해 화자의 위치를 추정하거나, 화자의 입술 모양 변화를 통해 단어를 추정할 수 있다.
--- p.156, 「제7장. 음성인식을 활용한 인공지능」 중에서
인공지능은 신비의 마법약이 아니고 이러한 한계를 가지고 있으므로 어떻게 업무에 적용하여 효율을 확보하느냐가 중요하며, 다음과 같이 단계적인 점검이 필요하다. 첫째, 어떤 사용례(use case)가 적정한지를 선택하고 과녁을 정확히 하는 것이다. 컴퓨터에게 어떤 인공지능 솔루션이나 활용 방안이 적정한지 선택하게 할 수 없다. 때문에 관리자가 컴퓨터로 하여금 양질의 데이터를 기반으로 조직의 운영이나 서비스 제공에서 기계가 하기 적당한 업무가 무엇이고, 어떤 업무가 인간이 학습하고 수행하는 것보다 효과적인지를 명확히 기술해야 한다. 즉, 얻고자 하는 결과물이 무엇인지 아주 구체적으로 기술하고, 어떤 형태로 출력되어야 하는지를 분명히 설정해야 한다.
--- p.207, 「제10장. 인공지능으로 경영하라」 중에서