- 1 -
[편역 보완본, 2020] 인공지능을 위한 기초수학  교안 (일부)
<Dummy를 위한 인공지능>
             
               <Practical AI for Dummies (초보자를 위한 실용적인 AI)>
 저자  Kristian Hammond, PhD
 번역자 : 이상구 
[SGLee]  www.wiley.com 존 와일리 & 선즈 
저작권 © 2015 John Wiley & Sons, Inc., Hoboken, New Jersey
연락처 미국 : 877-409–4177, info@dummies.biz www.wiley.com/go/custompub
ISBN 978-1119-14983-5 (pbk); ISBN 978-1-11-14984-2 (ebk)  미국
Dummies, Dummies Man 로고, Dummies Way, Dummies.com,
Making Everything Easier 및 관련 trade dress는 John의 상표 또는 등록 상표입니다
Wiley & Sons, Inc. 및 / 또는 미국 및 기타 국가의 계열사이며 사용할 수 없습니다
- 2 -
- 3 -
[4차산업혁명 융·복합과목]  인공지능을 위한 기초수학 (Basic Mathematics for Artificial Intelligence) 
                                                 http://matrix.skku.ac.kr/math4ai/ 
Part Ⅰ. 행렬과 데이터분석   http://matrix.skku.ac.kr/math4ai/part1/ 
Part Ⅱ. 다변수 미적분학과 최적화  http://matrix.skku.ac.kr/math4ai/part2/ 
Part Ⅲ. 확률통계와 빅데이터  http://matrix.skku.ac.kr/math4ai/part3/ 
Part Ⅳ. 빅데이터와 인공지능  http://matrix.skku.ac.kr/math4ai/part4/ 
SKKU 2019 Fall 학부 <인공지능을 위한 기초수학> Basic Math for AI
인공지능을 위한 기초수학 1강 (강의운영 소개), Basic Math for AI 1  https://youtu.be/IkQxe1izELM
인공지능을 위한 기초수학 2강 (선형대수학 1: Big Picture, 벡터, 정사영, 최단거리), Basic Math for AI 2  https://youtu.be/UdCJCk2MWDU 
인공지능을 위한 기초수학 3강 (선형대수학 2: 선형연립방정식, 행렬과 행렬식), Basic Math for AI 3  https://youtu.be/qwQX_zPIlCU 
인공지능을 위한 기초수학 4강 (선형대수학 3: 기저, 차원), Basic Math for AI 4  https://youtu.be/UHqhruN38ps  
인공지능을 위한 기초수학 5강 (선형대수학 4: 최소제곱해, QR분해), Basic Math for AI 5  https://youtu.be/5r2KghYFw2w  
인공지능을 위한 기초수학 6강 (선형대수학 5: 선형변환), Basic Math for AI 6  https://youtu.be/_t871V2CDSw 
인공지능을 위한 기초수학 7강 (선형대수학 6: 행렬의 대각화), Basic Math for AI 7 https://youtu.be/d8KE1QpKiDo 
인공지능을 위한 기초수학 8강 (선형대수학 7: SVD), Basic Math for AI 8 https://youtu.be/e0IoDqJLB8U  
인공지능을 위한 기초수학 9강 (선형대수학 8: 이차형식), Basic Math for AI 9 https://youtu.be/rCNBWT0r5mA 
인공지능을 위한 기초수학 10강 (미적분 1: 극한과 도함수), Basic Math for AI 10 https://youtu.be/rsltpfMbtBQ  (New)
인공지능을 위한 기초수학 11강 (미적분 2: 미분의 응용), Basic Math for AI 11 https://youtu.be/O4lN5zEZnMA 
인공지능을 위한 기초수학 12강 (미적분 3: 적분), Basic Math for AI 12 https://youtu.be/62OxYG7VMsE 
인공지능을 위한 기초수학 13강 (미적분학 4: 다변수함수), Basic Math for AI 13  다변수함수와 미적분 https://youtu.be/XQW8_8k9GjE     
인공지능을 위한 기초수학 14강 (미적분학 5: 편도함수와 그래디언트), Basic Math for AI 14 https://youtu.be/cvsBYZT4SZg   
인공지능을 위한 기초수학 15강 (미적분학 6: 함수의 극대, 극소), Basic Math for AI 15 https://youtu.be/nR9it9cBjDk 
인공지능을 위한 기초수학 16강 (미적분 7: Gradient Descent Algorithm), Basic Math for AI 16 경사하강법 https://youtu.be/XWDPAdKhq-Q 
인공지능을 위한 기초수학 17강 (미적분 8: 중적분), Basic Math for AI 17 https://youtu.be/T1z_GYt85rI 
인공지능을 위한 기초수학 18강 (통계 1: 통계학과 R), Basic Math for AI 18 https://youtu.be/u82BC1RiJ0A 
인공지능을 위한 기초수학 19강 (통계 2: 순열, 조합, 확률), Basic Math for AI 19 https://youtu.be/KQXO-XbJauU 
인공지능을 위한 기초수학 20강 (통계 3: 확률변수), Basic Math for AI 20 https://youtu.be/SUsZHarQqqg 
인공지능을 위한 기초수학 21강 (통계 4: 이산확률분포), Basic Math for AI 21 https://youtu.be/Fq7D7bGG_cE 
인공지능을 위한 기초수학 22강 (통계 5: 연속확률분포), Basic Math for AI 22 https://youtu.be/4wx1raETI8o 
인공지능을 위한 기초수학 23강 (통계 6: 공분산과 상관계수, 데이터 활용의 실제), Basic Math for AI 23 https://youtu.be/oUSPhkyEWp4 (50:05) 
인공지능을 위한 기초수학 24강 (빅데이터와 인공지능 1, 개론), Basic Math for AI 24 https://youtu.be/MpWv-U_4fl0 
인공지능을 위한 기초수학 25강 (빅데이터와 인공지능 2, PCA 주성분분석, Basic Math for AI 25 https://youtu.be/NVd6_orz0ng  (56:21)
인공지능을 위한 기초수학 26강 (빅데이터와 인공지능 3, ANN 신경망 (Math of Hidden Layer)), https://youtu.be/d4WercT_OnU  (18:14)
인공지능을 위한 기초수학 27강 (빅데이터와 인공지능 4, MNIST), Basic Math for AI 27 https://youtu.be/UqmV4wEzKIY 
인공지능을 위한 기초수학 28강 (빅데이터와 인공지능 5, Project), Basic Math for AI 28 https://youtu.be/EKkr3EkDV3M 
****
인공지능을 위한 기초수학, Midterm PBL 학생 발표 1, 최진호  https://youtu.be/0iBPdFEXzqM 
인공지능을 위한 기초수학 29강 1학년 엄지민 Final PBL 학생 발표 https://youtu.be/kldV0YcuYu8  (13:39)
인공지능을 위한 기초수학 29강 화공과 최진호 Final PBL 학생 발표 https://youtu.be/zJ4PTgnWyac  (15:35)
인공지능을 위한 기초수학 29강 최준오 Final PBL 학생 발표 https://youtu.be/kWrqiiJ3oDE  (9:39)
인공지능을 위한 기초수학 29강 황태식 Final PBL 학생 발표 https://youtu.be/JSbcOaupkEo  (10:07)
인공지능을 위한 기초수학 29강 1팀 최진호 Final Project http://matrix.skku.ac.kr/math4ai/Project-1/ 
인공지능을 위한 기초수학 29강 2팀 Final PBL Project http://matrix.skku.ac.kr/math4ai/Project-2/ 
[창의재단 Talk]  수학교육과 인공지능(AI) by 이상구  https://youtu.be/-emrYxyde-M 
[한양대 Talk] Math for Big Data / Machine Learning / AL https://youtu.be/yZlIoZvYIOo 
 도움 (Acknowledgement) 
2019년 2학기   [인공지능을 위한 기초수학] 수강생들을 위하여 이상구 교수가 인공지능을 이용하여 전
체를 초벌 번역하였고, 이를 나누어 주어 아래 학생들이 초벌 번역의 윤문에 일부 기여하였습니다.^^ 
엄지민, 김태민, 최준오, 황태식, 최진호, 여정민, 송소영, 태영기, 유대청, 박지원, 김두영, 이재화 박사
- 4 -
목차  (Table of Contents)   초보자를 위한 실용적인 AI
서문          ........................................................................................................ 5
이 책에 대하여 ......................................................................................................... 5
AI에 현명하게 접근하기 ............................................................................................ 6
이 책의 내용 ........................................................................................................... 6
이 책에서 사용되는 아이콘(icon) ............................................................................... 7
1 장 : 로봇을 이해하기 위한 준비
인공지능의 정의 ....................................................................................................... 8
AI의 컴백을 환영합니다          ............................................................................... 9
AI 세계를 탐험하자      ......................................................................................... 10
   Strong AI(강한 의미의 AI)................................................................................... 10
   Weak AI(약한 의미의 AI)..................................................................................... 10
   그 사이에 있는 모든 것  ..................................................................................... 11
   Narrow AI와 Broad AI, 그것들이 모두 AI인가? ................................................... 11
용어에 포함된 의미를 이해하기.................................................................................. 12
2 장 : 생각한다는 것에 대한 생각 : AI 생태계(Ecosystem) 
AI는 어디에나 있음을 인식하자................................................................................. 14
   “인간은 왜 스마트한가?”에 대한 고찰   ............................................................... 15
AI의 구성 요소 검사 .............................................................................................. 16
   감지 (sensing) .................................................................................................. 16
   추론 (reasoning)................................................................................................ 17
   작동 (acting) ..................................................................................................... 17
하나가 아니라 다수     ........................................................................................... 18
3 장 : 빅 데이터를 이용한 정보의 추출
빅 데이터에 대한 관심 ........................................................................................... 20
AI로 데이터 평가하기 ............................................................................................ 20
AI를 통한 지식의 생산(추론).................................................................................... 22
   유사성 확인 ..................................................................................................... 22
   분류 ................................................................................................................ 23
   축적된 증거 ..................................................................................................... 23
AI로 미래를 예측 .................................................................................................. 23
4 장 : 신기술의 수용(Embracing)
스마트 기기 알아보기 ............................................................................................ 26
증거수집: Watson ................................................................................................. 27
- 5 -
네트워킹 : 딥 러닝 ................................................................................................. 28
결과예측 : 예측 분석 (Predictive Analytics)     ..................................................... 29
5 장 : AI 와의 소통(Communicating with AI)
언어에 대한 이해....................................................................................................... 32
언어 처리 ................................................................................................................ 33
   깊고 얕은 바다를 항해하자.................................................................................... 33
   추출, 태그 지정(tagging) 시작하기, 감정 분석 ....................................................... 34
언어 생성 ............................................................................................................... 34
   고급 NLG(자연어 생성) 시스템이 설명하는 방법 .................................................... 35
   데이터의 시각화만으로는 충분하지 않다 ................................................................ 36
제 6 장 : 미래를 위한 준비 그리고 그곳에 가는 10가지 팁
미래는? ................................................................................................................... 39
현재 할 일 : 앞으로 나가기 위한 10 가지 팁   ........................................................... 40
발행인의 감사의 글 (Publisher’s Acknowledgments)
이 책을 출시하는 데 도움을 준 사람들 중 일부는 다음과 같습니다.
개발 편집 : Daniel Mersey
프로젝트 편집 : Martin V. Minner
Acquisition 편집 : Amy Fandrei
편집 관리 : Rev Mengle
사업개발 담당 : Kimberley Schumacker 킴벌리 슈 맥커
회계 담당 : Katie Helm
제작 편집자 : Kumar Chellapan
소개
우리 대부분은 요즘 ‘감정이 없는 로봇이 당신이 자는 시간에 대신 일을 해주고, 당신이 사고 
싶은 것을 권하고, 당신이 가고 싶은 곳을 알려주는 일들’을 놀랍게도 잘 해준다는 것을 보고 
경험하면서 사실 조금씩 두려워합니다. 이 책은 그런 독자의 두려움을 덜어주기 위하여 독자
가 AI가 답하는 방식을 이해하고, AI와 대화하면서, 현명한 구매결정을 하는데 무리없도록 꼭 
필요한 정도의 지식을 세상에서 가장 쉽게 전달해 드릴 것입니다. 
번역자 : 이상구 
- 6 -
서문 (Introduction)
주위의 많은 사람들이 로봇의 시대가 오면 Arnold Schwarzenegger 
처럼 생긴 감정 없는 로봇이 우리를 공격하여 언젠가는 모두를 죽일 지
도 모른다고 확신(fAIrly certAIn)한다는 사실에 저는 크게 놀랐습니다. 
물론 우리가 그런 영화(터미네이터)를 본 것은 사실입니다. 그리고 그런 
일이 실제 진행되고 있을지도 모릅니다. SF 영화의 시나리오들은, 만일 
우리가 로봇에게 진다면, ‘초 지능형 로봇(hyper-intelligent 
machines)이 지구를 지배할 것이며, 영화 매트릭스(Matrix)에서 보듯
이 그들의 기분에 따라 우리를 전원 공급장치
로 사용하기 위해 노예로 만들거나(enslave) 또는 단순히 성가시다는 
이유로 우리 누구라도 쉽게 없애버릴(exterminate)것’이라고 우리가 
거의 확신하도록 만들었습니다. 실제로 우리가 얼마나 다양한 방법으
로, 그리고 마음 깊숙이 AI(인공지능)를 두려워하는지 알면 모두 놀라
실 겁니다. 
  많은 사람들이 이미 이런 공상과학 영화(아이로봇)를 보았기 때문
에, 실제 그런 일이 벌어질지도 모른다고 확신하고 있습니다. 또 영
화 속의 Will Smith 같이 ‘AI 로봇들 중 하나가 자신을 인지하고 
Will Smith에게 거짓말도 하고 윙크 할 때까지’ 아무 생각없이 멍
하게 살게 될 수도 있습니다. 동시에 우리가 이런 변화에서 살아남
아 할리우드 영화가 아닌 실제 현실(real life)에서 생활할 때가 되
어도, 스마트한 기계가 우리의 힘든 일 대부분을 대신 해 줄 것이라
는 것을 이미 잘 알고 있습니다. 공장, 도로, 심지어 집에서도 로봇
이 우리를 위해 일할 것입니다. 더 나아가 지능형 로봇(Box)이 우리 
업무를 대신하기 위해 자리를 차지하기 때문에, 우리는 자율주행 
Google 자동차를 타고, 교통체증 스트레스 없이 책을 보면서 직장으로 출근하는 쉬운 일조차 
하지 않아도 될지 모릅니다.
따라서 지능형 기계(intelligent machines)의 미래는 우리에게 죽음, 노예화 또는 영구적인 
실업을 줄 가능성도 있습니다. 큰일났습니다!! 그러나 우리가 정말로 두려워해야 할 것은 <인
공지능이 실제로 무엇인지 또는 무엇을 할 것인지 평생 모른 채, 우리 생을 살게 되는 것>입
니다. 모르는 것이 가장 위험하므로, 이 책의 의도는 그런 상황을 바꾸는 것입니다. 스토리텔
링 과학 에디션의 <초보자를 위한 인공 지능 (AI for Dummies)>을 쓰는 저자의 목표는 “성
장하는 인지 컴퓨팅(cognitive computing), 스마트 머신(smart machines), 머신러닝
(machine learning), 딥러닝, 자연어 생성(natural language generation), 음성인식(speech 
recognition), Turing 테스트, 광범위하거나 좁은(narrow) 의미의 AI 시스템, 약하거나 또는 
아주 strong한 AI”의 세계를 이해하는데 필요한 정보와 도구를 제공하고, 당신이 동료들에게 
“모두 염려마십시오(Don’t worry everyone), 우리에게는 이 책이 있습니다(I got this)!”라고 
말할 수 있는 자신감을 가졌으면 합니다. 이제 편하게 읽으시면 됩니다.
- 7 -
 이 책에 대하여 (About This Book)
요즘 AI(인공 지능)은 엄청난 과대광고와 흥분 및 두려움을 생산하고 있다. 세계를 장악 할 수 
있는 킬러 로봇(killer robots)에서부터 Jeopardy! 와 경쟁하는 슈퍼컴퓨터, 다음 끼니를 해결
할 식당은 어디가 적당한지를 알려주는 비
서(Siri)에 이르기까지 AI 환경은 광대하고 
잠재적인 용도가 많다. 이 책의 목적은 독
자가 AI를 이해하는데 필요한 이해에 바탕
을 두고, AI와 대화하면서, 필요한 구매 결
정(purchasing decisions)을 할 때 독자
가 스마트(intelligent)한 의사결정을 하도
록 도움을 주려는 것이다.
이 책은 오늘날 AI가 우리에게 매일매일 행하는 다양한 서비스를 이해시키고, 당신이 타인
과 대화 할 때, 더 스마트해 보이게 할 것이다. 또한 독자가 AI 시스템을 직접 만들지 못할 
수는 있지만, 주위의 AI 시스템을 사용하고 구매하는 결정을 할 때 그 AI 시스템들이 어떻게 
작동하는지는 충분히 이해하게 될 것이다.
AI에 현명하게 접근하기  (Getting Wise to AI)
오늘날 우리는 과거와는 달리 우리가 잘 이해하지 못하는 방식으로 일을 하는 다양한 지능형 
시스템 제품군들을 주위에 두고 있다. 실제로 두려운 것은 이러한 시스템을 매일 사용하면서
도, 최소한의 필요한 평가(evaluate)조차 할 수 없을 만큼 이러한 시스템에 대하여 무지하다
는 것이다. 따라서 동료나 딜러가 딥러닝 또는 자연어 생성의 작동 방식에 대해 이야기 할 때
마다 우리는 어느 부분을 믿어야하는지, 또 어느 부분을 의심해야하는지 고민하게 된다. 더 
중요한 것은 공급 업체나 기술 제공 업체와 대화할 때 그들이 떠벌리는 과대광고를 알아차리
고, 진실을 파악하여 바가지 쓰지 않을 지식이 부족하다는 것이다. 
  우리는 항상 기술 제공업체(technology providers)와 대화 할 준비가 되어있어야 한다. 오
래된 농담을 상기해 보자, “소프트웨어 세일즈맨과 중고차 세일즈맨의 차이점은 무엇인가?  
중고차 세일즈맨의 경우 그가 언제 거짓말을 하는지는 우리도 알고 있다는 것이다.” 그러나 
AI 과대광고의 세계에서는 무식하게 보일까봐 우리는 제대로 물어보지도 못하고 떠다니는 아
이디어를 확인하는 일 조차 제대로 못한다. 사실 수많은 ‘과대광고의 리더(hype leaders)’들
은 우리가 다른 사람들에게 AI와 관련한 까다로운 질문을 하거나 의심을 표하기를 두려워한다
는 것을 너무 잘 알기 때문에, 황제에게 새 옷을 파는 사람(purveyors)들처럼, 우리를 점점 
더 마케팅에 쉽게 이용하고 있다.
- 8 -
                                                            
이 책의 내용    
     
여러분의 편의를 위해 이 책은 몇 개의 장(chapter)으로 나뉘어져 있는데, 각각의 장들은 AI
에 관한 다양한 주제들을 다룹니다. 우리의 지식 축제(feast)를 위한 메뉴는 다음과 같습니다.
1장: ‘로봇을 이해하기 위한 준비’는 여러분에게 AI의 재출현에 대한 약간의 배경과 ‘AI가 무
엇인가?’ 라는 혼란스러운 질문에 대한 답을 줄 것입니다.
2장: ‘생각한다는 것에 대한 생각: AI 생태계’가 독자에게 AI를 구성하는 것 들, 특히 일상생
활에서 사용되는 AI 시스템을 이해하는데 필요한 도구(tool)를 제공합니다.
3장: "빅 데이터를 이용한 정보의 추출"은 우리의 활동으로부터 축적되어 온 빅 데이터들이 최
근 AI 기술과 만나면서, AI가 평가하고, 추론하고, 예측하는 능력을 어떻게 가속화하는 지를 
설명합니다.
4장: "신기술의 수용"은 최근 시장에 소개되는 새로운 기능의 스마트폰과 모바일 기기를 포함
한 첨단 기기들의 비밀들을 파헤칩니다.
5장: "AI와의 소통"은 AI의 미래에 대한 짧은 경험을 제공해줄 뿐만 아니라, AI가 인간의 언어
를 듣고, 가공한 후, 답을 찾아 행동하는 강력한 능력에 대하여 알아봅니다. 
6장: "미래를 위한 준비 그리고 그곳에 가는 10가지 팁"은 여러분에게 독자를 위하여 올바른 
AI 시스템을 선택하는 팁을 제공합니다.
 
- 9 -
이 책에서 사용되는 아이콘(Icons)
이 책의 내용에 대해 여러분들에게 핵심 정보를 전달하기 위해 몇 가지 그래픽의 아이콘들로 
표시해두었습니다. 혹시 모든 페이지의 모든 문장을 읽지 않더라도, 아래 아이콘들이 표시된 
문장은 꼭 확인하세요. 
(기억할 내용, remember) 
이 아이콘은 책에서 가장 중요한 내용들을 골라 놓았습니다. 만약 중요한 정보를 요약하려면, 
이 아이콘이 있는 곳이 당신이 필요한 내용을 찾는 출발점이 될 것입니다.
(기술적인 내용, technical stuff)
비록 낯선 용어와 장황한 설명을 피하려고 노력했지만, 때로는 피할 수가 없이 기술적인 용어
를 사용하였습니다. 이 아이콘은 여러분에게 그런 기술적인 정보가 포함된 부분을 알려줍니다.
(팁, tip) 
이 아이콘은 유용한 심화 지식과 AI 관련 정보 및 트랜드를 팁으로 제공하는 부분입니다.
(조심, warning!) 
요 주의! 조심해야 하거나 엉뚱한 곳으로 빠지는 것을 피해야 할 부분을 알려줍니다.
 
- 10 -
1 장 
          로봇을 이해하기 위한 준비
이 장에서는
 ▶ 인공지능을 정의하고
 ▶ AI가 컴백한(comeback) 배경을 살펴보고
 ▶ weak AI, strong AI, 좁은 의미의 AI와 넓은 의미의 AI 개념을 소개합니다.
그동안 놀라운 일이 일어났습니다. 우리는 인공지능 (AI)이 다가오는 것을 보지는 못했지만, 
돌이켜 보면 AI의 출현은 불가피했습니다. 오늘날 거의 모든 곳에서 인텔리전트 시스템이 우
리와 대화하고 (Siri), 추천을 해주며 (Netflix 및 Amazon), 재정 관련 조언을 해주고 
(Schwab의 Intelligent Portfolio), 퀴즈/게임 쇼에서 이기고(IBM의 Watson), 바둑의 달인을 
이기는 것을(알파고-Lee, 알파고-Master, 알파-Zero) 보아왔습니다. 또한 Google 및 
Facebook이 딥러닝을 기반으로 음성인식, 이미지 해석
(image interpretation), 얼굴인식 및 심지어 무인 자율
주행 자동차(Autonomous Vehicle)를 소개하고 있습니
다. 그 외에도 기계가 우리의 언어로 우리와 의사소통 할 
수 있도록 자연어 이해 및 생성 (Narrative Science’s 
Quill)을 향상시키는 것을 목표로 하는 일들이 진행 중입
니다.
인공지능의 정의
많은 회사에서 AI의 다양한 가능성들을 구현하는 수많은 노력들이 갑자기 진행되면서, 인공지
능의 부활은 우리를 약간 어리둥절하게 만들고 있습니다. 어디서부터 이해하여야 할까요? 우
선 인공지능(AI)의 정의에서 시작하겠습니다. AI는 사람들이 일반적으로 하는 것, 특히 지능적
으로 행동하는 사람들이 하는 일을 대신 할 수 있는 컴퓨터의 개발을 목표로 하는 컴퓨터 과
학의 하위 분야입니다.
 "다트머스 컨퍼런스"에서 인용된 정의에서 출발하면, 어떤 소프트웨어(프로그램)라도 
단지 사람들이 지적으로 생각할 만한 일들을 대신해 준다면 우리는 그것을 AI 시스템으로 볼 
수 있습니다. 따라서 어떻게 그렇게 하느냐는 문제가 되지 않습니다. 단지 기계가 그것을 할 수 
- 11 -
있다는 것이 핵심입니다. 1956년 여름에 있었던 다트머스 AI 컨퍼런스는 두 세대 전의 얘기인
데, AI의 발전이 요즘 다시 부각되는 것은, 그들이 60년 전에 생각했던 것보다 그런 발전
(Building intelligence)을 실제로 이루어 내는 것이 쉽지 않았고, 그래서 오래 걸렸을 뿐입니다. 
  “다트머스 컨퍼런스” (The Dartmouth Conference)
 스탠포드 연구원 존 매카시(McCarthy)가 1956년에 “다트머스 컨퍼런스”라고 불리는 학술회
의에서 AI 라는 용어를 소개하였다. 여기서 AI의 핵심 임무(core mission)가 정의되었다. 
 매카시는 이 학술회의 개최를 위한 제안서(proposal)에 다음과 같은 내용을 기술하였다. 
 “기계가 인간의 언어를 사용하고 추상화와 개념을 형성하며, 현재 인간들이 다루는 종류의 
문제를 해결하고, 스스로를 향상시키는 방법을 찾기 위한 시도가 이루어질 것이다. 우리는 신
중하게 선정된 과학자들 그룹이 여름 동안 모여서 함께 연구한다면 이 문제들 중 하나 또는 
그 이상에서 상당한 진보를 이루어 낼 것으로 생각한다.”
  by 존 매카시, 마빈 민스키, 나단 로체스터, 클로드 섀넌(Claude Shannon), "AI(인공지능)
에 관한 다트머스 여름 연구 프로젝트 제안서" (1955년)
AI의 컴백(comeback)을 환영합니다.
AI는 몇 단계의 혁신적인 진전(excellent runs)을 이루었다. 60년대에는 우리가 기계와 함께 
무엇을 할 수 있을지에 대한 멋진 희망과 약속을 주었고, 80년대에는 기계가 비즈니스에 혁신
을 일으킬 것이라는 희망을 보았다. 그러나 이 시기에 위의 희망과 목표는 우리가 실제로 구
현할 수 있던 능력의 수준 보다 훨씬 크고(far outstripped) 높았다. 
최근 AI가 다시 부각되는 이유
는 무엇인가? 21세기의 시스템이 과거의 
전문가 시스템, 진단 프로그램 또는 신경
망(neural nets)과 다른 점은 무엇인가? 
AI 부활 배경에는 여러 가지 이유가 있지
만, 5가지 핵심 요인으로 요약할 수 있
다.
- 12 -
  ✓ 우리는 향상된 성능의 컴퓨터 자원(increased computational resources)을 가지고 있
다. 이 기술들은 과거에도 작동은 잘 했지만 용량과 규모(scale)를 크게 늘릴 수 없었다. 그러
나 이제는 우리 주위 어디서나 쉽게 용량과 규모를 늘려서(expanded computational grid) 
무리없이 잘 사용할 수 있게 되었다
  ✓ 우리는 우리 기계에 바로 사용할 수 있는 폭발적으로 늘어난 양의 데이터(explosive 
growth of data available to our machines)를 가지고 있다. 이는 우리 시스템이 생각할 거
리가 훨씬 더 많아졌다는 의미이다. 특히 더 많은 데이터로 더 개선된 학습 시스템이 이제 몇 
백 개가 아니라 수십억 개의 예를 보고, 분석하고 생각할 수 있게 되었다는 것을 의미한다.
  ✓ 우리는 광범위한 문제를 다루던 AI가 특정 문제에 더 깊이 초점(focus)을 맞추는 방향
로 변화하고 있는 것을 알게 되었다. (우리의 AI 애플리케이션은 이제 꿈같은 목표가 아니라 
구체적인 무언가(Something)에 대해 깊이 생각하기 시작했다). 시리(Siri)와 코르타나
(Cortana)와 같은 시스템은 제한된 행동 영역 내에서 작동하며, 일반적인 언어를 이해하기보
다는 우리가 말한 것 중에서 아주 구체적인 단어들을 골라내는 데 초점을 맞출 수 있게 개발
되었다. 
  ✓ 우리는 로봇(knowledge 
engineering) 또는 컴퓨터시스템에 
규칙(명령어)을 주는 문제를 시스템
이 스스로 학습하는 환경으로 변화
시켰다. (우리는 시스템에 그들이 스
스로 배우게 하는 규칙/명령을 주기 
시작하였다.) 과거의 AI 시스템은 필
요한 모든 규칙(명령)을 시스템에 제
공해야 했으나, 현대적인 접근방식은 
이러한 규칙들을 시스템이 데이터를 
기반으로 스스로 학습하게 하는데 
초점을 맞추고 있다.
  ✓ 우리는 시스템이 스마트해지기 위해서, 사람과 같이 반드시 이성(reason)을 가질 필요는 
없다는 이해에 바탕을 둔 대안적 추리 모델(alternative reasoning models)을 채택했다. (기
계는 기계의 방식으로 생각한다는 것을 인정하자!)
  위의 모든 요소들이 함께 작용하여, 오늘날 우리 삶의 일부이며, 직장에서 꼭 필요한 도구
로 채택되고 있는 지능형 기계가 우리 앞에 나타난 것이다. 미래의 직장에서 이러한 새로운 
기술의 작동 방식을 이해하는 것은 절대적으로 중요하다. 설명 없이 답변을 제공하는 블랙박
스나 우리와 대화(소통)하지 못하는 시스템은 신뢰할 수 있는 파트너가 될 수 없다. 우리는 이
러한 시스템이 추론하는 방법의 기본 이론이 무엇이며, 시스템은 어떻게 우리가 필요로 하는 
답을 구해서 제공할 수 있는지 설명할 수 있어야 한다. 
- 13 -
AI 세계를 탐험하자 (Exploring AI) 
  보통의 개발자들은 단순히 제대로 작동하는 시스템을 구축하는 것을 목표로 하고 있다. 그
러나 AI 연구자와 개발자의 목표는, 사람과 같은 방식으로 지능적으로 행동하거나 생각할 수 
있는 시스템을 구축하는 것이다. 그 외에 인간의 추론을 모델로 하여 컴퓨터가 유사한 일을 
할 수 있는 방법을 연구하는 개발자들도 있다.
Strong AI (강한 의미의 AI)
strong AI는 인간의 추론을 모방하는 것을 목표로 하며, 어떤 결과든 인간이 생각하는 시스
템을 구축하는 데 사용될 수 있을 뿐만 아니라 인간이 어떻게 생각하는지도 설명하는 데 사용
될 수 있다. strong AI의 실제 모델이나 인간의 인지능력(cognition)을 실제 시뮬레이션한 시
스템은 아직 구축되지 않았다.
Weak AI (약한 의미의 AI)
weak AI는 단지 시스템이 작동하도록 하는 것을 목표로 하며, 혹시 인간처럼 행동할 수 있는 
시스템을 만들었더라도, 제공하는 결과물이 인간의 사고방식에 대해서는 아무것도 말해주지 
않는 경우라면 Weak AI 라고 생각하면 된다. Weak AI의 대표적인 예가 IBM의 딥 블루
(Deep Blue)인데, 체스의 명수지만 인간이 게임하는 것과 같은 방식으로 플레이하지 않았으
며, 자신의 인지(cognition)과정의 절차나 내용을 공개하지 않는 Weak AI 이다. 
그 사이에 있는 모든 것 (Everything in between)
strong AI와 weak AI가 균형을 이룬 시스템은 인간의 추론(reasoning)에 의해 다음 절차가 
알려(informed)지기는 하지만, 그것의 노예는 되지 않는 시스템들이다. 이것이 오늘날의 AI에
서 일어나고 있는 추세이다. 즉 이것은 인간의 추론(reasoning)을 지침으로 삼지만, 그것을 완
벽하게 모형화(Modeling)하려고 하지는 않는다. 이제 ‘이런 생각하는 학교(this school of 
thought)’에 어울리는 이름을 생각해 낼 수 있어야 하는데 ... 이런 일을 대신 해주는 것이 실
제 우리가 원하는 Practical AI일 수도 있다.
좋은 예가 advanced 자연어 생성(NLG) 시스템이다. 기존의 기본적인 NLG는 단지 데이터를 
텍스트(text)로 바꾸어 주는데 반하여, Advanced NLG 플랫폼은 데이터(data)를 언어
(language)로 변환해준다. Advanced NLG 플랫폼은 받아들인 데이터를 사람이 쓴 것과 구분
이 불가능할 정도의 우리 자연어(우리말)로 바꾸어 준다. 즉 말한 내용의 맥락을 분석하고 가
장 흥미롭고 중요한 말이 무엇인지 판단하여, 주요 내용에 대한 답을 결정한 후, 지능형 내러
티브를 통해 우리와 대화(소통)하게 해 준다는 것이다. 
- 14 -
 중요한 점은 시스템이 AI가 되기 위해서는 사람들과 같은 방식으로 똑똑할 필요는 
없다는 것이다. 단지 똑똑(smart)하기만 하면 된다.
Narrow AI와 broad AI, 그것들이 모두 AI인가? (is that AI at all?)
몇몇 AI 시스템들은 구체적인 업무를 수행하도록 디자인 되어있고 (보통 narrow AI라고 불린
다.) 다른 어떤 AI 시스템들은 일반적인 사고 능력을 중심으로 디자인 되어있다. (이를 broad 
AI 또는 general AI 라고 말한다.)
Strong AI와 weak AI가 하는 일 중, 가장 눈에 띄는 작업은 특정 문제에 집중하는 것이라 
narrow AI의 범주에 속한다.
  이것에 대한 예외는 주로 Google의 Deep learning(예시들을 통해 자동적으로 category-
범주들을 학습하는 일반적인 모델에 초점을 맞춤)과 IBM의 Watson(많은 텍스트 증거로부터 
결과를 이끌어내도록 설계됨)처럼 공학 쪽에서 발견된다. 그러나 양쪽 모두 아직 이런 시스템
들을 상업적인 목적으로 개발하지는 않았다.
Narrow AI 시스템의 힘은 그들이 구체적인 업무에 초점을 맞춘다는 것이다. 이러한 시스템들
은 그들이 업무를 보는 쪽에는 굉장히 뛰어난 성능을 보이지만, 그들이 업무를 보지 않는 쪽
에는 전혀 쓸모가 없다.
서로 다른 시스템들은 서로 다른 기술을 사용하고 서로 다른 종류의 추론을 목표로 한다. 그
러므로 당신의 과거 행동에 근거하여 당신에게 어떤 것을 추천해 주는 시스템과, 예시들로부
터 이미지를 인식하는 것을 배우는 시스템 그리고 종합적인 증거에 근거하여 의사 결정을 내
리는 시스템 사이에는 큰 차이 존재한다.
  시스템을 선택할 때 이런 차이점들을 고려라. 당신도 아마 당신의 의학적 진단
(medical diagnostics)을 위해서 가장 가까운 주유소(gas station)를 찾는 것을 잘하는 시스
템을 필요로 하지는 않을 것이다. 
  비록 몇몇 사람들이 그들을 전혀 AI라고 생각하지 않더라도, 많은 시스템들이 이미 narrow 
AI의 정의에는 포함된다. Amazon이 당신에게 책을 추천해줄 때, 당신은 그 추천 뒤에 숨은 
AI 시스템을 아직은 깨닫지 못할 것이다. 이런 시스템은 당신의 구매 패턴에 대한 정보를 모
으고, 당신이 누구인지 그리고 당신이 다른 사람들과 얼마나 비슷한지를 찾아낸다. 그리고 당
신과 비슷한 사람들이 좋아하는 것을 바탕으로 상품을 추천하기 위해 그 정보를 이용한다. 당
- 15 -
신이 그 시스템이 어떻게 작동하는지를 이해할 필요는 없다. 당신이 좋아하는 것을 보고 당신
이 또 어떤 다른 것을 좋아할지 알아내는 Amazon의 능력은 이미 매우 뛰어나다(pretty 
darn smart).
용어에 포함된 의미를 이해하기 (Understanding What’s in a Name) 
훨씬 더 많은 AI 시스템들이 나타날수록, AI를 위한 새로운 이름들이 늘어나는 것을 보게 된
다. (그림 1-1에서 몇 가지 예시들을 확인하라) 기업들의 브랜드화와 브랜드 이미지를 새롭게 
만들기 위한 노력의 일환으로, 세계의 마케팅 부서들은 “똑똑함(smart)”에 대응하는 새 단어
들을 찾기 위하여 계속 노력하고 있다.
           
                           그림 1-1
당신은 그들을 인지적 계산(cognitive computing), 똑똑한 기계(smart machines), 유능한 
비서 (intelligent assistants), 예측 분석(predictive analytics), 추천 시스템
(recommendation systems), 딥러닝, 머신러닝, 자율주행 차, 질문-답변 시스템, 자연어 생
성 플랫폼(natural language generation platforms) 등등 기타 여러 가지 화려한 이름으로 
부를 수 있다. 그들은 모두 AI의 서로 다른 측면을 나타내는 이름들이다각각의 AI 시스템들
은 우리가 지적(intelligent)인 활동이라고 부를 만한 무언가를 하고 있다.
            
- 16 -
2 장
    생각한다는 것에 대한 생각 : AI 생태계(Ecosystem) 
생각이란 무엇일까? : AI의 생태계
이 장에서는 
▶ AI가 언제 사용되는지 알기
▶ '지능(intelligence)'에 대해 생각해보기
▶ AI의 구성요소 파헤치기
             “As soon as it works, no one calls it AI anymore.”
                                               — John McCarthy —
AI에 대한 관심과 기사는 생겼다가 사라지기를 반복하지만, AI는 꽤 오랫동안 우리 
곁에 있어왔습니다. 단지 좁은 의미의 AI로써 작동했기 때문에 우리는 그것들이 AI라
고 생각하지 못했을 뿐입이다. 하지만 좁은 의미의 AI도 스마트하고 지금도 우리를 
돕고 있다는 것이 중요합니다. 
 좁은 의미의 AI에 대한 개념은 1단원에 기술해 두었다.
AI는 어디에나 있음을 인식하자 (Recognizing AI Is Everywhere)  
넷플릭스나 아마존은 마치 사람인 것 같이 당신의 취향에 알맞은 영화나 책을 추천해준다. 넷
플릭스나 아마존은 시청목록이나 구매목록에 근거하여, 과거에 당신이 무엇을 좋아했는지 알
아보고, 유사한 성향을 가진 사람들을 찾은 뒤 그들이 선호했던 것들 중에서 당신이 아직 보
지 않은 작품들을 추천해준다. 얼핏 황당무계한 것처럼 보이지만, 당신이 친구에게 줄 선물을 
고를 때의 행동패턴과 비슷하다는 것을 알 수 있을 것이다. 당신은 그 친구와 비슷한 취향을 
가진 다른 친구의 호불호를 통해 어떤 선물을 고를지 정할 것이다.
- 17 -
 지금부터 우리는 AI의 추천이 얼마나 좋은지 나쁜지에 대해서는 논하지 않을 것이
다. 대신, 이 시스템이 어떻게 프로필을 만들고, 어떻게 다른 사람들과의 유사성을 찾고, 그것
을 근거로 해서 누군가의 취향을 어떻게 예측하는 지에 대해 초점을 맞출 것이다.
"인간은 왜 스마트한가? (What Makes Us Smart?)"에 대한 고찰
'지능(intelligence)'과 '인식(cognition)'은 우리 목적성에 맞게 세 가지 단계로 나눌 수 있다.: 
정보습득, 그것에 대한 생각, 그 후 행동. 이것들을 각각 sensing(감지), reasoning(합리적 사
고, 추론), acting(행동)이라 하자. 이 책은 로봇공학을 다루는 것이 아니기에 acting(행동)은 '
말의 생성(generation of speech)'으로 규정하겠다.
  그림 2-1에서 보여주듯, 이 공간을 아래와 같이 더 자세하게 구분할 수 있다.: 말하기, 시상
인식, 다른 방향의 추론(논리적 추론 대 정보에 근거한 추론)과 의사소통에 도움을 주는 말의 
생성(혹은 다른 물리적 행동) 등.
               
                그림 2-1: AI의 세 가지 구성요소안의 다양한 능력: 
             sensing(감지), reasoning(합리적 사고, 추론), acting(행동)
  회색 영역은 특히 추론의 역할과 관련하여 이러한 작업 사이에 존재하지만, 이 세 가지 구
성 요소에 의해 정의된 지능에 대한 생각은 행동을 특성화 할 때 유용하다.
 ✓ 감지(sensing) : 아래를 포함하여 세계(world)에 대한 데이터를 감지하여 가져 오기 :
   • 이미지 처리 : 중요한 물체, 경로, 얼굴, 자동차 또는 고양이를 인식한다.
   • 음성 인식 : 노이즈(noise)를 걸러 내고 특정 단어를 인식한다.
   • 기타 센서 : 대부분 로봇 공학; 음파탐지기(sonar), 가속도계(accelerometers), 균형감지
(balance detection) 등.
- 18 -
✓ 추론(reasoning) : 사물(things)이 알려진 것(what is known)과 어떤 관계가 있는지 생
각한다. 예를 들면 다음과 같다.
   • 언어 처리 : 단어를 아이디어와 그들 사이의 관계로 바꾼다(Turning).
   • 상황 평가 : 아이디어만으로 세상에서 무슨 일이 벌어지고 있는지 파악할 수 있다.
   • 논리 기반 추론 : 논리적으로 사실이기 때문에 어떤 것이 참인지 결정한다.
   • 증거 기반의 추론 : 증거의 무게에 근거하여 어떤 것이 진실인지 결정한다.
   • 계획 / 문제 해결 : 목표 달성을 위해 무엇을 해야 하는지 파악한다.
   • 학습(Learning) : 데이터 세트의 예 또는 검사를 기반으로 새로운 지식을 구축한다.
   • 자연어 생성 : 의사소통 목표가 주어지면 이를 충족시키기 위해 언어를 생성한다.
✓ 행동(acting) : 다음과 같은 행동을 생성하고 통제한다. 
   • 음성 생성 : 텍스트가 주어지면 해당 텍스트를 나타내는 말소리(오디오)가 생성된다.
   • 로봇 제어 : 당신의 생각이 세상(world)에서 구현되게 하는 effectors(이펙터, 로봇)를 관
리한다.
AI의 구성 요소 검사 (Examining the Components of AI)
인공 지능에 대한 연구는 인간과 기계 추론의 다른 측면과 유사하다. 그러나 오늘날 대부분의 
시스템, 특히 Apple의 Siri(시리), Microsoft의 윈도우10 용 음성인식 비서인 코타나
(Cortana) 및  구글의 개인 비서 구글 나우(Google Now)와 같은 소비자 중심 제품은 세 계
층(layers)을 모두 사용한다.
  이 시스템은 새로운 AI 생태계에서 한 종류의 종족(동물, animal) 일뿐 아니라 (end‐to‐
end로) 완벽(complete)하다. 이들은 음성인식 및 생성(generation)을 양쪽 끝(both ends)에
서 사용하며, 간단한 언어 처리를 사용하여 의사 결정 모델을 구동하는 용어를 추출하여 요청
한 내용과 수행 할 작업을 파악한다. 그 후 응답이 음성 생성 시스템에 전달된다. 결과적으로 
- 19 -
이들 각각은 기능의 조합으로 구성된 겉보기에는 단 한가지의 경험을 제공한다. 다음 절에서
는 이러한 유형의 시스템에서 지능의 세 가지 측면 (감지, 추론 및 상호 작용)이 어떻게 결합
되는지에 대한 아이디어를 제공한다.
감지 (Sensing)
소비자 중심 모바일 도우미는 음성인식(speech recognition) 기능을 사용하여 시스템과 대
화 한 단어를 식별한다. 음성을 캡처하고 결과 파형(waveform)을 사용하여 단어 집합을 인식
하여 이를 수행한다. 이러한 각 시스템은 각자 버전의 음성​​인식 소프트웨어를 사용하는데, 
Apple은 뉘앙스(Nuance)에서 개발한 음성인식 제품을 사용하고 Microsoft와 Google은 자체
적으로 만들어 사용한다(rolling their own).
  그러나 음성인식 비서(assistants)는 단어를 캡처 할 수는 있지만 해당 단어의 의미를 즉시 
이해하지는 못한다. 단지 타이핑된 단어에 액세스하는 것과 같은 방법으로 당신이 말한 단어
에 액세스 한 것일 뿐이다. 그들은 단순히 그림 2-2의 파형과 같은 입력을 받아 "I want 
pizza!"라는 단어들로 변환한 것이다.
  이 과정의 결과는 실제로 단어의 배열일 뿐이다. 이런 단어열을 사용하기 위해, 시스템은, 
말하는 사람이 의미한 것, 당신이 원할지도 모르는(what you might want) 의미, 그리고 당
신이 필요한 것을 얻도록 어떻게 도울 수 있는 지에 대하여 결정하는 것을 포함하여, 입력된 
단어들에 대한 추론(reason)을 해야만 한다. 이 과정이 약간의 자연어 처리(tiny bit of 
natural language processing) 과정을 거쳐 성취할 수 있다는 것이다. (자세한 내용은 5장 
참조)
        
그림 2-2: 인공지능 비서가 여자 목소리 "I want pizza!" 를 갈무리(capture)해서 생성된 파형
추론 (Reasoning)
AI 시스템이 문제를 해결할 때, 그들은 추론의 단계에서 비슷한 행동을 한다. 위의 피자 예 (
want pizza!)에서 언급된 바와 같이, 그들은 음식(food)으로 표기된 ‘피자’라는 용어의 사용에 
주목하여, 말하는 사람이 피자를 만드는 방법을 알고 싶어 한다는 걸 암시하는 ‘조리법’과 같
은 용어가 본문에 없음을 보고, 말하는 사람이 피자집을 찾고 있다고 판단(결정)할 수 있다.
- 20 -
이것은 간단한 정의와 관계로 유도되는, 상당히 가벼운 언어 처리이다. 이로부터 어떤 사람이 
피자를 파는 식당을 찾고 있다는 것을 AI가 결론을 내리게 해준다. 좀 더 정확하게 말자하면, 
AI는 그녀가 피자를 먹을 수 있는 장소를 알고 싶어 한다는 것을 추론하게 해준다. 하지만 무
엇을 해야 할지 아는 것은 어떻게 해야 할지 아는 것과는 매우 다르다.
소리에서 시작해서 단어, 아이디어, 사용자 요구까지 가는 사고의 전환은 시스템이 사용자의 
요구를 충족시키기 위해 필요한 정보들을 제공한다. 이 경우 GPS 정보를 가지고 피자를 제공
하는 식당을 찾아 근접성, 등급, 가격 순으로 순위를 매긴다. 또는, 만약 당신이 이용한 식당들
의 기록이 있다면, 시스템은 당신이 자주 이용하는 식당 중 하나를 추천할 지도 모른다.
어떤 행동을 취할지 결정하기 위한 추론은 틀림없이 AI라 할 만하지만, 이러한 과정이 단순히 
정보 조각들을 모으는 것처럼 보일 수 있다. 그러나 이런 단순함 때문에 AI 시스템에서 그들
의 역할을 축소시켜서는 안 된다. 무엇을 해야 하고 언제 해야 하는지를 정확히 아는 것을 흔
히 ‘전문가’라고 한다.
작동 (Acting)
감지 및 추론이 완료된 후에는, 추론의 결과를 사용자에게 전달할 필요가 있다. 이 과정은 전
달할 결과를 합리적인 아이디어들로 정리하고, 그 아이디어를 한 두 문장으로 만들고(자연스
러운 언어 생성은 5장에서 더 자세하게 다뤄지고 있다.), 그림 2-3에서와 같이 그 단어들을 소
리(음성 생성)로 바꾸는 것을 포함한다.
"There is a pizza restaurant called Gino's about three blocks from here. “
    "여기서 3블록 정도 떨어진 곳에 Gino’s 라는 피자집이 있습니다."
         
그림 2-3: 인공지능 비서(예: Siri)가 질문의 답을 추론하여 얻은 답을 말로 전하며 생긴 파형
- 21 -
■ MNIST 데이터셋을 활용한 손 글씨 숫자 인식 (패턴인식)
 다음은 신경망을 활용하여 MNIST 데이터 셋의 손 글씨 숫자를 인식한 사례이다. 자료의 출처는 다음과 
같다.
[출처]  THE MNIST DATABASE of handwritten digits  http://yann.lecun.com/exdb/mnist/
      타리크라시드 지음, 송교석 옮김, 신경망 첫걸음, 한빛미디어, 2017년.
 기계 학습의 성과를 벤치마크 하는데 가장 널리 사용되는 MNIST 데이터 셋은 60,000개의 학습 데이터와 
10,000개의 테스트 데이터로 구성되어 있다. 각 데이터에는 손으로 쓴 0부터 9까지의 숫자의 이미지와 그 
레이블(실제 숫자)이 담겨 있다. 데이터 셋의 각 이미지는 가로, 세로가 각 28픽셀(pixel)로 28 x 28 = 784개
의 숫자를 갖는 벡터로 생각할 수 있으므로, 숫자를 인식하기 위한 신경망의 입력층은 784개의 노드, 출력
층은 0부터 9까지의 숫자를 나타내는 10개의 노드로 구성된다. 은닉층의 노드의 개수에 관하여 정해진 방법
은 따로 없으나 이 절의 예시코드에서는 100개로 하였다. 
 이제 어떤 숫자를 나타내는 이미지가 있다고 하자. 그러면 이것을 784 x 1의 벡터로 변환하여 신경망의 
입력층에 전달한다. 그리고 신경망을 거쳐 얻은 출력층의 신호가 가장 큰 노드의 레이블로 숫자를 판단하게 
된다. 예를 들어, 출력층의 신호가 가장 큰 노드의 레이블이 7이면 이를 숫자 7로 판단하게 된다.  
- 22 -
 아래는 https://github.com/freebz/Make-Your-Own-Neural-Network 에 공개된 Python 코드를 일부 수정
하여 Sage에서 구현한 것이다. 예를 들어, MNIST 데이터셋으로부터 숫자 7의 이미지를 읽어서 보여준다. 
[Sage code] https://sagecell.sagemath.org/   http://sage.skku.edu/ 
                                                                                  
# mnist 학습 데이터인 csv 파일을 리스트로 불러오기
import numpy
# 행렬을 시각화하기 위한 라이브러리
import matplotlib.pyplot
import csv
import urllib.request
import codecs
url = 
'https://media.githubusercontent.com/media/freebz/Make-Your-Own-Neural-Network/ma
ster/mnist_dataset/mnist_test_10.csv'
response = urllib.request.urlopen(url)
training_data_file = csv.reader(codecs.iterdecode(response, 'utf-8'))
training_data_list = list(training_data_file)
all_values = training_data_list[0]
image_array = numpy.asfarray(all_values[1:]).reshape((28,28))
matplotlib.pyplot.imshow(image_array, cmap = 'Greys', interpolation = 'None')
matplotlib.pyplot.savefig('foo.png')
response.close() 
                                                                                 
- 23 -
            
 이제 주어진 학습 데이터를 활용하여, 신경망의 적절한 가중치를 얻은 후, 테스트 데이터를 이용하여 신
경망의 성능을 판단해보자. 다음은 입력, 은닉, 출력 계층의 신경망으로, MNIST 데이터셋 일부를 학습시켜 
테스트용 숫자 이미지를 잘 인식하는지 보여주는 코드이다. 학습 데이터 100개, 테스트 데이터 10개를 아래
의 자료로부터 사용하였다.
 
[출처]  
https://github.com/freebz/Make-Your-Own-Neural-Network 
https://media.githubusercontent.com/media/freebz/Make-Your-Own-Neural-Network/master/mnist_dataset/mnist_train_100.csv 
https://media.githubusercontent.com/media/freebz/Make-Your-Own-Neural-Network/master/mnist_dataset/mnist_test_10.csv 
[Sage code] https://sagecell.sagemath.org/   http://sage.skku.edu/ 
                                                                                      
# 3계층의 신경망으로 MNIST 데이터를 학습하는 코드
import numpy
# 시그모이드 함수 expit() 사용을 위해 scipy.special 불러오기
import scipy.special
# 행렬을 시각화하기 위한 라이브러리
import matplotlib.pyplot
#신경망 클래스의 정의
class neuralNetwork:
    
    # 신경망 초기화하기
    def __init__(self, inputnodes, hiddennodes, outputnodes, learningrate):
        # 입력, 은닉, 출력 계층의 노드 개수 설정
        self.inodes = inputnodes
        self.hnodes = hiddennodes
        self.onodes = outputnodes
        
        # 가중치 행렬 wih와 who
        # 배열 내 가중치는 w_i_j로 표기. 노드 i에서 다음 계층의 노드 j로 연결됨을 의미
        # w11 w21
- 24 -
        # w12 w22 등
        self.wih = numpy.random.normal(0.0, pow(self.hnodes, -0.5), (self.hnodes, 
self.inodes))
        self.who = numpy.random.normal(0.0, pow(self.onodes, -0.5), (self.onodes, 
self.hnodes))
        
        # 학습률
        self.lr = learningrate
        # 활성화 함수로는 시그모이드 함수를 이용
        self.activation_function = lambda x: scipy.special.expit(x)
        
        pass
    
    # 신경망 학습시키기
    def train(self, inputs_list, targets_list):
        # 입력 리스트를 2차원의 행렬로 변환
        inputs = numpy.array(inputs_list, ndmin=2).T
        targets = numpy.array(targets_list, ndmin=2).T
        
        # 은닉 계층으로 들어오는 신호를 계산
        hidden_inputs = numpy.dot(self.wih, inputs)
        # 은닉 계층에서 나가는 신호를 계산
        hidden_outputs = self.activation_function(hidden_inputs)
        
        # 최종 출력 계층으로 들어오는 신호를 계산
        final_inputs = numpy.dot(self.who, hidden_outputs)
        # 최종 출력 계층에서 나가는 신호를 계산
        final_outputs = self.activation_function(final_inputs)
        # 출력 계층의 오차는 (실제 값 - 계산 값)
        output_errors = targets - final_outputs
        # 은닉 계층의 오차는 가중치에의해 나뉜 출력 계층의 오차들을 재조합해 계산
        hidden_errors = numpy.dot(self.who.T, output_errors)
        # 은닉 계층과 출력 계층 간의 가중치 업데이트
        self.who += self.lr * numpy.dot((output_errors * final_outputs * (1.0 - 
final_outputs)), numpy.transpose(hidden_outputs))
        # 입력 계층과 은닉 계층 간의 가중치 업데이트
        self.wih += self.lr * numpy.dot((hidden_errors * hidden_outputs * (1.0 - 
hidden_outputs)), numpy.transpose(inputs))
        
        pass
    
- 25 -
    # 신경망에 질의하기
    def query(self, inputs_list):
        # 입력 리스트를 2차원 행렬로 변환
        inputs = numpy.array(inputs_list, ndmin=2).T
        # 은닉 계층으로 들어오는 신호를 계산
        hidden_inputs = numpy.dot(self.wih, inputs)
        # 은닉 계층에서 나가는 신호를 계산
        hidden_outputs = self.activation_function(hidden_inputs)
        # 최종 출력 계층으로 들어오는 신호를 계산
        final_inputs = numpy.dot(self.who, hidden_outputs)
        # 최종 출력 계층에서 나가는 신호를 계산
        final_outputs = self.activation_function(final_inputs)
        
        return final_outputs
        
# 입력, 은닉, 출력 노드의 수
input_nodes = 784
hidden_nodes = 100   # 3000,  300  으로 높이면 65% 에서 70% 
output_nodes = 10    # 60000,  10000  으로 높이면 65% 에서 95%로 정확도 향상
# 학습률
learning_rate = 0.3
# 신경망의 인스턴스를 생성
n = neuralNetwork(input_nodes, hidden_nodes, output_nodes, learning_rate)
# mnist 학습 데이터인 csv 파일을 리스트로 불러오기
import csv
import urllib.request
import codecs
url = 
'https://media.githubusercontent.com/media/freebz/Make-Your-Own-Neural-Network/ma
ster/mnist_dataset/mnist_train_100.csv'
response = urllib.request.urlopen(url)
training_data_file = csv.reader(codecs.iterdecode(response, 'utf-8'))
training_data_list = list(training_data_file)
response.close()
# 신경망 학습시키기
# 주기(epoch)란 학습 데이터가 학습을 위해 사용되는 횟수를 의미
epochs = 5
- 26 -
for e in range(epochs):
    # 학습 데이터 모음 내의 모든 레코드 탐색
    for record in training_data_list:
        all_values = record
        # 입력 값의 범위와 값 조정
        inputs = (numpy.asfarray(all_values[1:]) / 255.0 * 0.99) + 0.01
        # 결과 값 생성 (실제 값인 0.99 외에는 모두 0.01)
        targets = numpy.zeros(output_nodes) + 0.01
        # all_values[0]은 이 레코드에 대한 결과 값
        targets[int(all_values[0])] = 0.99
        n.train(inputs, targets)
        pass
pass
# mnist 테스트 데이터인 csv 파일을 리스트로 불러오기
url = 
'https://media.githubusercontent.com/media/freebz/Make-Your-Own-Neural-Network/ma
ster/mnist_dataset/mnist_test_10.csv'
response1 = urllib.request.urlopen(url)
test_data_file = csv.reader(codecs.iterdecode(response1, 'utf-8'))
test_data_list = list(test_data_file)
response1.close()
# 신경망 테스트하기
# 신경망의 성능의 지표가되는 성적표를 아무 값도 가지지 않도록 초기화
scorecard = []
# 테스트 데이터 모음 내의 모든 레코드 탐색
for record in test_data_list:
    all_values = record
    # 정답은 첫 번째 값
    correct_label = int(all_values[0])
    # 입력 값의 범위와 값 조정
    inputs = (numpy.asfarray(all_values[1:]) / 255.0 * 0.99) + 0.01
    # 신경망에 질의
    outputs = n.query(inputs)
    # 가장 높은 값의 인덱스는 레이블의 인덱스와 일치
    label = numpy.argmax(outputs)
    # 정답 또는 오답을 리스트에 추가
    if (label == correct_label):
- 27 -
        # 정답인 경우 성적표에 1을 더함
        scorecard.append(1)
    else:
        # 정답이 아닌 경우 성적표에 0을 더함
        scorecard.append(0)
        pass
    pass
# 정답의 비율인 성적을 계산해 출력
scorecard_array = numpy.asarray(scorecard)
print("performance = ", float(scorecard_array.sum()) / scorecard_array.size)
                                                                                  
performance =  0.7         #  신경망의 정확도는 60%  
 위의 결과로부터 학습 데이터 100개, 테스트 데이터 10개를 사용했을 때, 신경망의 정확도는 70%임을 확
인할 수 있다. 학습 데이터의 수를 늘리게 되면, 이보다 더 높은 정확도를 기대할 수 있는데, 실제로 이 신
경망을 60,000개의 학습 데이터에 의해 학습시키고, 10,000개의 테스트 데이터에 적용하면, (신경망의 가중
치의 초기치가 임의로 주어지므로, 정확도의 수치가 일부 다를 수 있으나) 대략 95%의 정확도를 얻게 된다. 
 MNIST 데이터 셋의 손 글씨 숫자를 인식한 사례는 신경망을 학습시키기 위한 데이터가 충분히 확보되었
기에 가능했다. 이전에는 사용할 수 있는 데이터가 많지 않았으나, 오늘의 세계에서는 매일 
(quintillion) 바이트의 데이터가 생성된다고 알려져 있다. 인공지능 시스템이 많은 량의 학습 데이터를 이용
하여 특징을 파악하게 되면, 좀 더 나은 결과를 추론할 수 있을 것이다. 
 MNIST 숫자 인식 사례와 마찬가지로, 음성 또는 신호를 인식하거나 문자를 인식하는 것도 유사한 방법으
로 가능하다. 이보다 더 높은 수준의 분석이 요구되는 자연어 처리(Natural Language Processing, NLP)는 
우리가 일상생활에서 사용하는 언어를 컴퓨터가 의미를 분석하여 처리하도록 하는 것으로, 단순히 음성 또
는 문자를 인식하는 것 이외에 말하는 사람이 의미한 것, 필요한 것들을 추론을 해야 한다. 예를 들어, 사용
자가 "피자 먹고 싶다!"라는 문장을 말했을 때, 인공지능 시스템은 음성의 파형으로부터 "피자 먹고 싶다!"
는 문장을 인식하는 것에서 더 나아가 사용자가 실제로 원하는 정보를 추론을 거쳐 파악하고 찾아서 제공
해줘야 한다. 피자 예 ("피자 먹고 싶다!")에서 보면, 음식(food)으로 표기된 ‘피자’라는 용어의 사용에 주목하
여, 말하는 사람이 피자를 만드는 방법을 알고 싶어 한다는 걸 암시하는 ‘조리법’과 같은 용어가 본문에 없
음을 파악하고, 말하는 사람이 피자집을 찾고 있다고 판단할 수 있다. 이 경우 GPS 정보를 가지고 피자를 
제공하는 식당을 찾아 근접성, 등급, 가격 순으로 순위를 매긴다. 만약 사용자가 이용한 피자 식당들의 기록
이 있다면, 인공지능 시스템은 사용자가 자주 이용하는 식당 중 추천이 많은 가까운 곳을 찾아, 자연어 문장
을 생성하여, 우리말로 다음과 같이 추천할 수도 있다. 
                        "여기서 2km 정도 떨어진 곳에 ***라는 피자집이 있습니다."
- 28 -
하나가 아니라 다수 (Not One, But Many)
  Siri(시리)와 같은 AI가 우리에게 제공하는 기능은 여러 요소들을 합친 결과물이다. 보통 이
런 AI 시스템들은 하나의 알고리즘 만에 의존하지 않는다. 그들은 여러 구성요소들(알고리즘)
과 협업해서 추론을 하며, 최적의 결론을 내리기 위해 서로 도와주기도 하지만 때때로는 경쟁
을 하기도 한다. "모두를 지배할 수 있는 하나의 이론"은 없다. 대신에, 지능은 다른 측면에 
대한 여러 가지 접근법을 함께 모아 완전한 경험을 만들어낸다. 그 결과 이들 시스템은 기능
의 조합으로 구축된 겉보기엔 유일해 보이는 경험(추론 혹은 정답)을 제공한다.
  소비자 관리시스템(Consumer systems)은 비기술자(non‐technical people)를 
위해 설계되었다. 따라서 그들은 사용자(users)와 직접 듣고 소통하면서 ‘인간(human)’처럼 
느껴질 필요가 있다. 개발자 그룹의 작업현장(workplace)을 위한 시스템은 전문가들이 사용하
기 때문에 의사소통(strong communication layer) 단계가 여럿일 필요는 없다고 가정하려고 
하기도 한다. 그러나 이것은 잘못된 가정이고 5장에서 논할 것이지만, 미리 설명해보자면, 의
사소통과 무언가를 설명하는 능력은 얼마나 ‘지능’에 가까운 지를 판단하는 중요한 요소라는 
것이고, 따라서 기술 현장에서도 소통은 정말 중요한 비중을 차지한다는 것이다. 
              
- 29 -
3 장
        빅 데이터를 이용한 정보의 추출
이 장에서는
 ▶ AI를 비신격화(Demystifying, 이해하기 쉽게 만들자)
 ▶ AI로 세상을 평가 (Assessing)
 ▶ AI를 이용한 결론 도출 (Drawing conclusions)
 ▶ AI의 도움으로 미래 예측 (Predicting the future)
     "셜록 홈즈 씨, 제가 중국에 있었다는 걸 어떻게 아셨어요?“
     “오른쪽 손목 바로 위의 물고기 문신(tatoo)은 중국에서만 시술하는 문신입니
다. 그 물고기의 비늘을 섬세한 분홍색으로 얼룩지게 하는 비법은 매우 독특하여 중
국에서만 시술합니다. 또한 회중시계의 시계줄에 중국 동전이 걸려 있는 것을 봤기 
때문에, 어딘지 파악하기가 훨씬 쉬웠습니다.”
  Jabez Wilson씨는 크게 웃었다. "글쎄, 난 결코 못할 추론이네요!" "처음에는 당신
이 천재(clever)라고 생각했지만, 이제보니 관찰과 분석력만 있으면 별거 아니라는 
것을 알았습니다."
            — 붉은 머리 리그(The Red‐Headed League), Arthur Conan Doyle 
이 장의 목표는 현재 사용 중인 AI 시스템을 비신격화하여 미래에 직장에 들어갈 새로운 시스
템을 이해하기 위한 프레임을 구축하는 것이다. 인공지능 시스템이 어떻게 추론하는지, 특히 
그들이 어떻게 세상을 분석하고 결론을 도출하는지 살펴보고(추론), 그 후 어떤 일이 일어날 
지에 대해 추측한다(예측). 또한 데이터를 사용하여 현 상황(transactions, 링크 클릭, 네트워
크 연결, 쿼리 등)을 그림과 같이 표현한 후(use data to paint a picture of a situation, 
Big picture), 이런 아이디어를 이용하여 결론을 도출한다. 그 후 미래에 대한 추론(예: 이 고
객은 이런 책을 좋아할 것이다. 이 고객은 앞으로는 우리 제품을 구매하지 않을 것이다. 이 기계는 내일 
파손-crash 될 것이다)을 진행한다. 
  많은 AI 시스템이 평가, 추론 및 예측과 같은 인간 추론의 세 가지 주요 구성 요
소를 사용한다. 매일 매일, 우리는 우리 주변에서 일어나는 일, 그것이 의미하는 바, 그리고 
다음에 일어날 일에 관한 질문에 대답해야 한다. ‘엘리베이터로 걸어가면 통화 버튼을 누르고 
- 30 -
다음 엘리베이터가 올 때까지 기다린다.’와 같은 상황을 추론하듯이, AI 시스템은 엘리베이터
를 이용하여 층 사이를 이동하는 시스템과는 약간 다르지만, 평가하고 추론하고 예측하는 시
스템으로 동일(exactly the same)하게 작동한다.
 빅 데이터에 대한 관심 (Thinking Hard about Big Data)
매일 2.5
(quintillion) 바이트의 데이터가 생성되는 오늘의 빅데이터 세계(today’s 
world of Big Data)에서, AI 시스템이 데이터를 캡처하고, 합성하고, 추론을 유도하는 데 사
용하는 방법을 알고, 이를 빅데이터 문제에 적용하면 기계가 제어하는 ​​수로 이루어진 세계
(world of numbers)를 지식과 통찰의 세계(world of knowledge and insight)로 전환 할 수 
있다.
이러한 시스템을 이해하기 위한 비결은 ‘지능을 기반으로 하는 프로세스 자체는 크
게 스마트하지 않다는 것을 이해’하는 것이다. 지능형 시스템은 간단하며 우리가 완전히 이해
할 수 있는(simple and absolutely understandable) 프로세스 기반 위에 세워진 것이다. 이 
시스템의 중간에는 우리가 모르는 "스마트 박스(smart box)"는 존재하지 않는다. AI는 마술이 
아니라 데이터, 규모 및 처리 능력에 의해 구동되는 알고리즘 모음을 적용하는 것이다. 빅 데
이터는 상당히 간단한 학습 시스템(simple learning systems)을 이용하여 소음으로부터 신호
(signal out of the noise)를 끌어 오는 데 필요한 충분한 양의 예를 처리 할 수 ​​있게 해준
다. 동일한 아이디어를 표현하는 수십억 개의 영어/프랑스어 문장 쌍(English/French 
pairings of sentences)이 주어지면 두 언어를 서로 번역하는 방법을 스스로 배우는 것이 가
능하다. 병렬처리 프로세싱(Processing and parallelism)은 수천 개의 작은 증거를 수집하고 
독립적으로 테스트하며 결과를 합산(adding up the results)하는 것과 같은 일들이 가능하게 
한다. (4장에서 더 자세히 설명할) IBM Watson이 수천 개의 규칙을 사용하여 수천 개의 문서
로 부터 증거를 신속하게 찾기 때문에, 잘 작동하는 것이다. Watson의 경우 90대의 머신들이 
병렬처리 프로세싱을 하면서 동시에 돌아가고 있기 때문에, 그렇게 짧은 시간에 그렇게나 많
은(huge search in so little time) 검색을 수행할 수 있는 것이다.
AI로 데이터 평가하기
  지금 시장에서 사용되는 대부분의 ‘소비자 관리시스템(consumer systems)’은 우리를 평가
하고 있다. 예를 들어 아마존은 유사한 고객들을 짝짓고 우리를 예측할 정보원을 만들 수 있
도록 그에 관해 자세한 정보를 종합한다. 이 평가 데이터는 대개 ‘우리가 어떤 정보에 접근하
는가’, ‘우리가 무엇을 구매하는가’와 같은 거래(transactional)에 관한 것이다. 아마존의 추천 
엔진은 이 정보를 이용하여 개인별 프로필을 구축하고, 각자에게 추천 목록을 제공하고 있는 
것이다. 
- 31 -
    
 그러나 프로필 데이터는 그저 전체 그림의 일부에 불과하다. 물건의 범주(“요리책”)나, 고객
의 범주(“손재주 좋은 사람들”), 그리고 다른 사용자들을 기반으로 둔 정보(“당신을 좋아하는 
사람들”) 등이 여기에 더해진다. 그리고 당신의 소비 경향과 당신의 거주지 등의 정보도 당신
과 당신이 교류(interact)한 것들에 대한 내용도 당신에 관련한 전체그림(snapshots)을 정제
(refine)하는 데 투입된다.
이 경우, 결과는 다음과 같은 개인별 특징화(a set of characterizations)이다:
 당신이 좋아하는 모든 것들을 전부 고려할 때, 당신은 요리 책, 공상 과학 및 현대 
전기를 읽는 사람과 유사합니다.
 당신이 살펴보거나 산 것들, 당신이 찾던 것들의 특징들을 볼 때, 당신은 요리를 좋아
하는 것 같습니다.
 당신은 방금 SousVide Supreme™ Demi Temperature Controlled
Water Oven In Red 를 구매하셨습니다.
  소매 업체의 경우 핵심 정보는 거래, 사람 집단 및 제품 범주이다. 소셜 네트워크 (예: 페이
스북)의 경우 중요한 세부 사항은 "좋아요", 친구 네트워크의 사람들 및 "정보" 프로필에서 제
공하는 정보이다. 검색 엔진의 경우 중요한 데이터 비트(crucial bits of data)는 당신이 검색
한 용어, 클릭한 항목, 당신이 있는 장소 및 검색엔진 및 해당 응용 프로그램과 당신의 상호 
작용을 통해 얻을 수 있는 다양한 정보이다.

  상당한 분량의 상품구입이 이러한 시스템이 구동되는 환경을 제공한다. 시스템이 처리해야 
할 작업이 많기 때문에, 세상의 매우 약한 모델(very weak models of the world)에서 조차 
노이즈와 관련된 일부 데이터는 제거(sift out)해야 할 필요가 있다. 그리고 우리가 이 시스템
에서 상호 작용 하면 할수록 시스템은 우리에 대해 더 많이 배울 수 있다. 예를 들어, 하루에 
35억 건의 검색어를 분석하여 구글은 어떤 단어가 함께 표시되고 어떤 단어가 가장 적합한 
지 알아낸다. ‘구글 순간 검색 서비스’는 사용자뿐만 아니라 모든 사람의 이력을 사용하여 예
측 모델을 만든다.: "뭐가 좋을까요?"라고 입력하면 구글은 "숙취(hangover)해소"와 같은 유용
한 제안을 제공한다.
- 32 -
  고객 이탈 및 장비 가동 중지 시간과 같은 특정 결과를 예측하는 시스템은 항상 
이러한 문제와 관련된 기록의 정보 및 규칙을 사용한다. 그러나 상호 작용 데이터 (콜 센터 
상담원과의 대화 중에 고객의 감정 상태는 어땠습니까?)와 환경 데이터 (기계가 고장 났을 때 
날씨는 어땠습니까)를 포함하여 다양한 데이터를 통합하면, 데이터의 양에만 의존하는 경우보
다 더욱 정확한 학습 알고리즘을 만들게 된다.
AI를 통한 지식의 생산(추론, Inferring Knowledge)
  이런 세상에 대해 조금 알고 나면, 당신은 이제 그 지식을 확장하고 추론하는 단계를 시작
할 수 있다.
일반적으로 추론은 “만약-그렇다면(if-then)” 규칙으로 구성되는 것으로 생각되기 때문에, 아
마도 인공지능에서 가장 오해를 일으킨 부분일 것이다. 이것은 지능시스템의 기본 계층을 잘 
설명하는 것이지만, 인간의 추론(human reasoning)을 “단지 다수의 화학 반응(“just a 
bunch of chemical reactions)”이라고 묘사하는 것과 같다.
  이보다 강력한 접근 방식은 사물 간의 관계에 대한 아이디어로 시작하는 것이다. 개체 및 
작업, 프로필 및 범주, 사람 및 다른 사람 등 추론은 한 단계에서 다른 단계로 나아가는 과정
이다.
  때때로 이 과정은 단순히 “만약-그렇다면” 규칙처럼 보일 수 있다. 보통 대위는 상사보다 
우위(outranks)에 있다, 따라서 더글러스 대위는 필립스 상사보다 우위(outranks)에 있다. 이
런 논리는 -인간이나 기계- 누구든지 이런 추론(inference)에 도달하게 하는 단순한 추론
(deduction)이다.
그러나 세상은 일반적으로 그렇게 분명하지 않다(usually not so clear cut). 이런 종류의 추
론은 드물기(rare) 때문에 당신이 그런 추론을 할 기회는 거의 없을 것이다. 이렇게 단순한 
연역적 추론을 넘어서려면 다음 절에 설명한대로 유사성 평가, 증거 분류 및 수집 지점
(assessing similarity, categorizing, and amassing points of evidence)을 포함하는 증거
기반 추론의 세계(the world of evidence‐based reasoning)로 나아가야 한다.
- 33 -
유사성 확인
아마존의 시스템이 책을 추천하면 먼저 내가 누구와 성향이 비슷한 지, 어떤 종류의 독자가 
될지 고려한다. 시스템은 내 프로파일이 다른 프로파일과 얼마나 잘 일치하는지 판단해야한
다. 즉 두 프로파일이 얼마나 유사한지를 나타내는 점수가 나와야 하는 것이다. 이를 위하여 
두 프로파일의 어떤 기능이 일치하는지(evidence for the inference), 어떤 기능이 일치하지 
않는지(evidence against the inference)를 추론할 증거를 제공(providing)하여, 내가 원하는 
추론에 이르도록 일치하거나 일치하지 않는 항목(feature)들을 더하거나 빼서 점수화 하는 것
이다
분류 (범주화, Categorizing)
분류의 경우 그룹에 있는 멤버들의 정보 중에서 유의미한 여러 항목들의 상관관계(associated 
likelihood)를 사용하는 Naive Bayes와 같은 이론/기술을 사용하여, 특정 항목들에 상관관계
가 높은 사람(object)들을 구분하는 방법으로, 그룹의 구성원들 사이에 친근성(likelihood)을 
계산(calculate)할 수 있다. 이 기술은 예를 들어, “오리처럼 걷기”, “오리처럼 울기” 및 “오
리처럼 보인다.”를 추가하여 실제로 오리인지를 확인하는 것이다. Naive Bayes의 이 기능을 
사용하는 시스템은 기능의 상호 작용 방식에 대한 사전 지식이 필요하지 않다. Naive Bayes
는 예측 변수로 사용하는 기능이 독립적이라는 가정을 이용하는데, 이 기술을 사용하는 시스
템은 복잡한 세계 모델(complex model of the world)을 먼저 구축하지 않고도 쉽게 구현할 
수 있다는 말이다.
축적된 증거(Amassing evidence)
규칙은 대부분의 AI 시스템에서 추론을 유도하지만, 거의 모든 규칙에는 증거 개념이 포함된
다. 이 규칙들은 서로 협력하고 경쟁(collaborate and compete)할 수 있으며, 고차 프로세스
(higher order process)에 의해 중재(mediated)되어 추론의 진실(truth of an inference)에 
대한 독립적인 주장(independent arguments)을 할 수 있게 한다. 이러한 주장의 핵심에는 
정량적 점수와 임계값(quantitative scores and thresholds)이 있지만, 이를 사용하여 도출
된 결론은 더 질적으로 느껴지기(more qualitative in feel) 때문이다. 예를 들어, 고급 자연
어 생성 시스템(advanced natural language generation system)은 데이터를 가져 와서 다
음과 같은 보고서를 생성해 줄 수 있다. “Joe’s Auto Garage는 1만불을 넘는 송금(현금입금)
은 세무서에 보고되는 연방정부 기준을 피하여, 지난 6주 동안 $9,999-불 씩 10번의 입금을 
했는데, 이는 의심이 가는 활동(suspicious activity)으로 여겨진다.”
AI로 미래를 예측
추론 중 특히 유용한 부분(One focus of reasoning)은 예측이다. 다음에 무슨 일이 일어날 
지를 추측하는 것도 중요하므로, 우리는 이전의 경험과 데이터 및 이론을 활용하여 앞으로 예
측되는 사건과 행동에 대하여 적절하게 대응 할 수 ​​있어야 한다. 따라서 AI 시스템을 이용한 
예측에 관심을 갖는 것이 당연하다.
- 34 -
소매업체는 우리가 다음에 구매할 제품을 어떻게 추측할까? 부분적으로 그들은 우리와 비슷한 
구매 성향을 가진 사람들이 이전에 사거나 보았던 것을 보고, 그들의 행동기록(증거)을 우리에
게 투영(projection)한다. 본질적으로, 그림 3-1에서 볼 수 있듯이 그들은 다음과 같은 방식으
로 추론한다. “당신과 Bob 모두 스노우보드, 킥복싱 및 스카이다이빙을 좋아합니다. Bob이 
수상스키를 좋아한다는 것을 알고 있습니다. 나는 당신도 수상스키를 좋아한다는 것에 베팅을 
하겠습니다(I bet you would too).” 이런 Bob이 2억 7천만명 이상 있다면, 이런 식으로 어떤 
기업이 당신이 무엇을 좋아하는지, 무엇을 구매할 지를 미리 예측하는 것이다. 
          
     그림 3-1 : 이 두 사람 위의 책 제목들은 이전 구매 기록을 보여줍니다.
  협업 필터링(collaborative filtering)을 활용하면 당신이 ‘Data Science For Beginners’ 책을 구매할 가능성이 
있다고 예측 가능합니다. 그래서 당신에게 그 책을 추천한 것입니다.
- 35 -
    결혼중계업체인 < eHarmony >는 당신 생각보다 스마트합니다!
   배우자를 찾는 데 관심이 있습니까? eHarmony는 당신이 생각하는 것보다 더 스마트합니다. 일
부 데이트 사이트는 당신의 프로파일을 사용하여 전반적인 유사성을 기반으로, 서로에게 적합한지를 
예측하는데 놀라운 성공률을 보였습니다. 그 결과 미국에서 결혼한 커플의 3분의 1이 온라인으로부
터 만남을 시작했다고 합니다. 
  이러한 프로파일에는 명시적으로 표현된 환경 설정이 포함되어 있지만, 특징을 사용하여 다른 사
람과의 유사성을 평가하고 예측하는 기능을 사용하는 핵심 개념은 모든 곳에서 사용됩니다. 그리고 
평생 동반자(love of one’s life)를 자신에게 소개한 기계가 영특하지 않다고 생각하지 않을 수 있
을까요?
유사성을 계산하고, 이를 기반으로 판단(projecting)하는 조합(combination)을 협업 필터링
(collaborative filtering)이라고 하며, 대부분의 거래 권장(transactional recommendation)
시스템의 중심에 이 시스템이 자리한다. 이는 여러 항목(a set of dimensions)에서 취향이 
비슷한 사람들이 다른 면에서도 비슷할 것이라는 직관에 근거한다(people who seem similar 
along a set of dimensions will be similar across others as well). 
  다소 다른 예측은 프로파일(profiles)을 사용하여 개인 (및 그들의 행동)을 유사한 행동을 갖
는 사람들의 그룹으로 분류하는 것이다. 대형 소매업 체인인 Target 은 이 접근 방식을 사
용하여 “임산부” 들을 하나의 그룹으로 삼아, 이 그룹의 쇼핑 행동을 대응(매핑, mapping, 
두 집합의 원소들 사이의 대응)시켰는데, 여기서는 약간의 결함(flack)을 발견했다. 회사는 이 
대응(매핑)을 사용하여 임산부에게 필요한 상품을, 임신했다고 추정되는 여성들에게 적극적으
로 광고했다. 이 접근방법은 기술적으로는 상당히 정확했지만 아주 소수를 제외하고는 대부분 
임산부 고객은 초기 임신 사실을 가족에게 알리는 것을 꺼렸다는 것을 고객불편신고를 통하여 
바로 파악하게 되었다.
  동작(Actions) 또는 기능(features)은 종종 서로 밀접하게 연결되어 
있으므로 서로를 강력하게 예측할 수 있다. 커피 메이커를 사는 사람
들은 필터도 구입할 것이다. 영화 ‘Star Wars’를 본 사람은 ‘The 
Empire Strikes Back’을 볼 가능성이 높다. 그리고 당좌 예금 계좌
를 개설하면 곧 입금이 이루어질 것이다. 이런 예측은 비슷한 개인이
나 사물을 그룹으로 분류 할 필요성이 (leapfrog) 매우 크다는 것을 
알게 한다.
 예측의 목표는 종종 개인에게 물건 구매를 추천하는 것이 아니라, 홍보로 야기될 문제를 피
하는 것이다. 대상은 예측을 받는 사람이 아니라 예측 자체인 것이다. 
  권장 사항보다는 결과에 명시적으로 초점을 둔 시스템은 데이터 마이닝 또는 기계 
- 36 -
학습(machine learning)을 사용하는 경향이 있다. 기업은 한 시점에서 가시적인 기능(너무 
많은 통화 거부 등의 visible features)과 초기 기능의 빈도를 보고 이벤트가 기대하는 성과
(잘못하면 돈을 쓰고 고객을 잃게 됩니다)를 연결하는 효과적인 규칙을 빨리 만들어내는 시스
템을 필요로 한다. 그들은 “이것이 예측하는 것은 무엇입니까?”라고 묻는다. 여기서 이것은 
예를 들어 누군가 제품을 구매하거나, 제공받던 서비스를 취소하면서, 한발 더 나아가 사이버 
SNS 공격(cyber attack)을 시작할 수 있습니다. 그래서 그들은 회귀 분석(regression 
analysis, 변수 간의 관계를 추정하는 통계분야)과 같은 기술을 사용하여 문제가 발생하기 전
에 관심 있는 그 후에 벌어질 사건의 가능성을 예측하는 데 사용할 수 있는 규칙(rule)을 만
드는 것이다. 
  평가, 추론 및 예측의 역학(dynamic)은 많은 지능형 시스템의 핵심(core)이며, 우리가 상호 
작용하는 대부분의 시스템의 핵심(core)이다. 그 이유는 분명하다. 우리를 포함한 모든 지능형 
시스템의 경우 현재 진행 중인 상황을 이해하고 이로 부터 추론하여, 다음에 어떤 일이 일어
날 지 예측하는 능력이 바로 우리의 미래를 예측하고 계획을 세우는 능력이므로 실로 중요하
다.
- 37 -
4 장
             신기술의 수용(Embracing)
 
이 장의 내용은 아래와 같다: 
 ▶ 똑똑하게 스마트 머신에 대해  알아보기
 ▶ 홈즈처럼 IBM의 Watson에 대해 탐구해보기
 ▶ 딥러닝을 공부해보기
 ▶ 미래의 추세를 예측해보기
  "어떤 사람은 인공 지능이 우리를 열등하게 느끼게 할까 걱정하지만, 만일 그렇다
면 올바른 마음을 가진 사람은 꽃을 볼 때마다 열등감을 가져야합니다."   
                                       --  Alan Kay
  이 장에서는 우리 세계(our world)에 들어오기 시작하는 신기술에 관하여 다룬다. 
여기서 IBM Watson과 예측 분석 및 머신러닝을 포함하는 Google 및 다른 기업의 
딥러닝(deep learning)을 살펴본다.
            
스마트 기기
- 38 -
스마트 기기 알아보기
우리는 AI 시스템을 살펴보면서 그 AI가 실패(fail)하기를 기대하는 경향이 있다. 우리가 기계
보다 똑똑하다고 느끼는 것이 감정적으로나 철학적으로 우리를 더 편하게 만들어 주기 때문에 
그럴 것이다. 
  이런 관점의 문제점은 지능형 기계의 세계에서 자주 접할 수 있다. 지능형 기계들은, 우리
가 광범위한 문제를 해결하도록, 판단에 방해가 될 수 있는 다양한 편견(biases)과 선입관
(prejudices)을 피하는 방식으로, 우리를 돕는다. 예를 들면 다음과 같다.
✓ 방대한 양의 텍스트를 보고 수천 개의 규칙을 적용하여 질문과 가능한 답변을 연결하고 아
이디어를 믿는 증거를 쌓는다. 이것이 Watson이다.
✓ 시스템을 인식하는 방식으로 사물을 인식하고 분류한다. 이것이 딥러닝이다.
✓ 문제가 발생하기 전 피할 수 있는 방법. 이것이 예측 분석이다.
이 장에서는 세 가지를 모두 살펴본다.

증거 수집을 하는 Watson
  Watson은 TV에서 미국 전체를 대상으로 글로벌 데뷔 방송을 한 유일한 소프트웨어 시스템
이다. Watson은 전설적인 두뇌 학자 켄 제닝스 (Ken Jennings)와 브래드 러트너 (Brad 
Rutner)를 상대로 머리를 맞대고 그들보다 자신이 더 똑똑할 수 있다는 것을 보인 것에서 더 
나아가, 그 경기장(arena)에서 스마트함에 대한 새로운 정의를 제공하면서 인간보다 자신이 
더 스마트 할 수 있음을 보여주었다. 더 중요한 것은 우리의 마음이 작동하는 방식과 매우 유
사한(seemed uncannily similar to the way our own minds work) 기술을 사용하는 것이 
더 놀랄 만 했다. 
  Watson은 증거 엔진(evidence engine)이다. 질문, 증상 목록 또는 일련의 재정적 목표가 
주어지면 Watson은 경쟁하는 가능한 답들 중 정답이 무엇인가에 대한(for the truth of 
competing responses) 논쟁 과정을 구성하여 원하는 답, 병명 진단 또는 재정 운영에 대한 
조언을 제공했다. 정보 요구 사항을 읽은 텍스트의 답변 패턴에 매핑하는 수천 가지 규칙을 
실행한 것이다. 각 규칙에는 관련 가중치가 있으므로 동일한 답변의 규칙이 서로 강화 될 수 
있고 다른 답변의 규칙이 서로 경쟁 할 수 있었다. 결론적으로 전체 가한 답 중 최고의 가
치(best overall value)를 가진 답변이 Watson의 모니터 맨 위 화면에 나타나는 것이다. 
  Watson은 언어로 시작하며 질문과 쿼리를 자체 추론에 초점에 맞출 수 있는 광범위한 기
술을 이미 확보했다. 여기에는 구문 규칙(rules of syntax)이 포함된다. (예: 동사보다 앞에 
주어가 놓인다, the subject of a verb comes before it), 의미 구성 요소 (예: 프랑스가 국
가라는 것을 알기) 및 진단 쿼리가 증상 목록으로 구성된다는 것을 알 수 있는 것과 같은 특
- 39 -
정 도메인에 대한 일부 특별 규칙. 이러한 기술을 통해 Watson은 초점을 결정할 수 있었다
(to determine its focus).
"장기 퇴직 계획을 위한 최고의 금융 수단은 무엇입니까?"와 같은 질문에 대하여 Watson은  
"무엇(what)"이 "어떤 것(연금)"을 찾고 있음을 의미한다는 것을 이해했다. "금융 수단"은 찾고 
있는 것의 종류를 정의하고, “장기 퇴직 계획”은 이 대상이 수행해야 할 역할을 정의한 것이
다. 이것을 이해하는 것이 초점(focus)이다. 
그런 다음 Watson은 사용 가능한 텍스트 모음에서 정보를 찾기 위한 규칙을 적용했다. 이 규
칙은 쿼리의 요소를 가능한 답변에 연결하는 텍스트 패턴을 찾았으며, 텍스트의 패턴을 찾은 
후 답을 제안하기 위해 초점(focus) 정보를 포함한 여러 규칙을 전송했다. 주어진 답변을 가
리키는 각 규칙의 가중치가 합산되어 각각의 가능한 답변들에 대한 점수를 제공했으며, 그중 
가장 높은 점수를 얻은 답을 제공하여  Watson이 금융전문가들을 이긴 것이다. 
 일부 규칙은 “X”가 “Roth IRA”인 패턴과 불일치(match against patterns)하는 반면, 다른 
규칙은 답변이 “401(k)”인 텍스트와 불일치 할 수도 있었다. 이런 각 답변에 대한 증거를 제
공하는 규칙 수와 가중치에 따라 계산한 후 이 중 하나가 마지막 답변으로 선정되는 것이다.
 Watson에는 학습 구성 요소가 있다. 질문과 알려진 답변을 보고 각 규칙의 가중치를 학습 
한 다음 정답에 얼마나 잘 도달하는지에 따라 각 규칙의 가중치를 수정한다. 실제 Watson은 
자체 추론의 각 부분이 얼마나 잘 작동하는지 배우고 가장 잘 작동하는 답에 보상을 하는 것
이다. 
  Watson은 규칙을 사용하지만 AI를 고려할 때 자주 생각하는 "if-then"모델과는 
매우 다른 방식으로 규칙을 사용한다. Watson은 증거를 구축하고 평가하여 추론한다. (사람
은 세상을 통하여 배우지만) Watson은 배울 때 세상에 대해 배우지 않는다. Watson은 자기 
자신에 대하여 스스로 학습한다
 이러한 유형의 시스템에 대한 유일한 주의 사항은 주변 세계를 설명하는 데 능숙하
지만 여전히 자신을 설명하는 데 어려움을 겪는다는 것이다. 우리와 진정으로 파트너가 되려
면, 우리가 이해할 수 있는 언어로 광기의 배후에 있는 방법(method behind their 
madness)에 대해 이야기하는 법도 배워야 할 것이다. 
네트워킹을 통한 딥러닝
- 40 -
  Watson은 방대한 양의 텍스트 저장소에서 증거를 찾아 질문에 대한 해답을 추론하려고하
지만 Google 및 Facebook과 같은 회사는 거대한 기능 세트(huge feature sets)를 사용하고 
이를 평가하는 방법을 학습하여 객체, 단어 및 관계를 인식하고 분류하려고 한다. 
  인식된 이미지를 효과적으로 색인화하거나 ("이것은 픽셀 모음"이 아니라 "이것은 집-House
입니다“라고 색인) 오디오 신호의 단어를 인식하려면 초기 기능을 보다 복잡한 기능에 매핑 
할 수 있는 방법을 결정해야 한다. 예를 들어, 픽셀 또는 파형을 선, 곡선 또는 "
" 및 "
"의 
사운드에 매핑 해야 한다. 너무 상세한 기능은 인덱싱 및 추론(inference)을 지원하는 인식 
가능한 기능(more recognizable features)으로 변환해야 한다. 이것이 딥러닝이다
              
 딥러닝은 신경망(neural nets)을 사용한 추론을 기반으로 한다. 이러한 종류의 학
습은 신호를 일련의 내부 노드 층 (hidden layers은닉 층이라고 함)으로 보내는 입력 노드 
층을 사용하며, 각 층은 출력 층(output layer)에 도달 할 때까지 다음 층(layer)으로 신호를 
보낸다. 단일 노드가 모든 작업을 수행하지 않으며 네트워크 전체가 주어진 입력에 대한 결
과를 생성한다. 딥러닝 작업은 인간 뇌의 대뇌 피질(cerebral cortex of the human brain)
에서 발생하는 계산 계층화(layering of computation)에서 영감을 얻은 것이다. 
 
노드 사이의 각 연결에는 학습 중에 조정되는 가중치가 있다. 입력 측에는 "cat(고양이)" 또는 
"house(집)"와 같은 범주를 나타내는 출력 값을 가진 이미지의 모든 픽셀 값이 있을 수 있다. 
이러한 링크를 통한 값 전달에 의해 결정된 출력이 출력과 동일하지 않은 경우 일치하지 않는 
- 41 -
각 노드는 범주에 의해 설정된 값으로 오류가 발생했음을 나타내며 관련 링크의 가중치가 변
경되어야한다는 신호를 다시 보내는 것이다. 
시간이 지남에 따라, 이러한 작은 변화는 네트워크가 가중치 세트를 향하게 하여 새로운 입력
이 적절한 범주에 있는지 네트워크가 정확하게 평가할 수 있게 한다. 네트워크의 한쪽에서 전
송 된 활성화는 다른 쪽 끝에서 올바른 값을 가져오게 된다.
 딥러닝 시스템은 지도(supervised)학습과 비지도(unsupervised)학습이라는 2가지 
모드로 작동한다.
  
  ✓ 지도(supervised) 학습에서는 출력층이 범주와 관련된 값으로 잠겨있는 동안 입력으로 
사용된 예제를 통해 네트워크를 학습합니다. 출력층(output layer)은 정확히 출력(the 
output)입니다.
  ✓ 비지도(unsupervised) 학습에서는 입력과 출력이 처리중인 예제에 고정됩니다. 은닉층
은 외부층 보다 더 압축되어 있으므로 네트워크는 예제를 나타내는 데 여전히 사용할 수 있도
록 해당 기능을 압축하는 방법을 배워야합니다. 내부 또는 은닉층은 결국 출력이 됩니다. 
  충분한 시간과 충분한 예를 통해 딥러닝 시스템은 자체적으로 수행 할 수 없는 하위 수준의 
기능(lower level features)을 결합하여 추론(inference)을 지원하는 데 사용할 수 있는 새로
운 기능에 대해 스스로 학습할 수 있습니다.
- 42 -
1)
 메트릭은 특정 네트워크 인터페이스용 IP 경로에 할당되는 값으로, 해당 경로 사용과 관련된 비용을 
확인하는 데 사용된다.
 이와 같은 기술을 사용하는 유일한 단점(downside)은 기술이 다소 타협할 수 없다
(impenetrable)는 것입니다. 이러한 시스템은 발견한(discovered) 기능(features)에 대해 보
고(report)하는 것을 잘 못 합니다. 이런 시스템은 자신에 대하여 설명 할 수 있는 결정적인 
능력(crucial ability)이 부족합니다. 이것은 그들이 우리가 보지도 못하고 이해하지도 못한 분
석에 근거하여, 우리를 위한 의사결정을 하는 위치에 있을 수 있다는 것을 의미합니다.
결과 예측 : 예측 분석 (Predictive Analytics)
Watson이 추론을 목표로 하고, 딥러닝이 주로 평가를 목표로 하는 것처럼 예측 분석은 실제 
AI 퍼즐의 세 번째 부분인 예측입니다.
AI의 3 가지 필수 구성 요소는 다음과 같습니다.
  ✓ 평가
  ✓ 추론
  ✓ 예측
     그러나 “예측”이 최고(수상자, winner)입니다(But prediction is the prize!)!
Watson 및 딥러닝 모두 마찬가지로 예측 분석(Predictive Analytics) 작업은 학습을 활용
(leverage)합니다. 이 작업의 목표는 일부 보이는 기능 세트(some set of visible features)와 
결과 사이의 관계를 만드는 것입니다. 
우리는 ‘휴대폰 사용자가 서비스를 중단하거나, 누군가가 돈 세탁(laundering money)을 할 
때, 또는 누군가가 대출 상환을 불이행(default on a loan) 할 때’와 같이 우리가 알기 원하
는 작업에 우선 관심을 갖습니다. 우리는 이런 이벤트를 예측 (또는 설명)하여 예상 할 수 있
는 요인(features)이 무엇인지 식별(identify)하려고 합니다. 
  예측 분석(predictive analytics) 작업은 다양한 기술을 사용합니다. 보다 공식적
인 측면에서 시스템은 소스 (표시되는 기능)와 대상 (관심 있는 기능)을 연결하는 수학적 모델
을 만드는 것을 목표로 하는 회귀 분석(regression analysis)과 같은 기술을 사용합니다. 단
일 메트릭(metric)1)이 시간이 지남에 따라 추적되는 상황에서 시계열 분석(time series 
analysis)을 통해 시스템은 주어진 과거의 행태(behavior)를 이용하여 메트릭의 미래 경로를 
투사(projection) 할 수 있습니다. 또한 우리는 종종 개별 기능과 예측 능력이 결합되어 단일 
결과 또는 딥러닝에 사용되는 신경망과 같은 신경망(neural nets)을 생성하는 Naïve Bayes와 
- 43 -
같은 기계 학습 기술(machine learning techniques)을 사용하는 경우가 많습니다.
 이러한 기술 중 일부는 통계에 뿌리를 두고 있으며 다른 기술은 인공 지능에 뿌리를 두고 있
지만, 이 두 기술의 차이는 이를 주로 설명하는 데 사용되는 용어들이 다를 뿐입니다. 통계에
서는 예를 사용하여 특성(feature)들을 서로 연결하는 확률을 계산합니다. AI에서는 그것들을 
배웁니다. 그러나 두 가지 모두에 대해 알고 있는 기능과 원하는 예측 사이의 링크로 연결됩
니다.
■ 신경망(Neural Network)
 신경망(neural network)은 신경계의 기본 단위인 뉴런(신경세포, neuron)을 모델화 한 것으로, 인간의 뇌
는 약 1000억 개의 뉴런을 가지고, 컴퓨터에게는 어려운 이미지 인식과 같은 업무를 잘 수행한다. 아래 그
림은 각각 실제 뉴런과 이를 모델화한 인공 뉴런이다. 
- 44 -
        
[출처]  https://m.blog.naver.com/PostList.nhn?blogId=samsjang 
      
       
[그림 출처]  http://cs231n.github.io/neural-networks-1/ 
 하나의 인공 뉴런에서는 다수의 입력 신호 
를 받아서 하나의 신호를 출력한다. 이는 실제 뉴런에서 전
기신호를 내보내 정보를 전달하는 것과 비슷하다. 이때 뉴런의 돌기가 신호를 전달하는 역할을 인공 뉴런에
서는 가중치(weight) 
가 그 역할을 한다. 각 입력신호에는 고유한 가중치가 부여되며 가중치가 클수록 해
당 신호가 중요하다고 볼 수 있다. 
 뉴런에서 임계값(threshold) 이상의 자극이 주어져야 감각이 반응하는 것처럼, 인공 뉴런에서도 다수의 입
력 신호가 주어지면, 미리 부여된 가중치와 계산을 한 후 그 총합이 정해진 임계값을 넘으면, 1을 출력하고 
넘지 못하면 0 (또는 –1)을 출력한다. 이때 출력을 결정하는 함수를 활성화 함수(activation function) 라 한
다. 주로 사용되는 활성화 함수로는 유계이며 미분 가능한 실함수인 sigmoid 함수가 있다.
- 45 -
 
                       
이는 임계값을 기준으로 활성화 되거나 혹은 비활성화 되는 step function  또는 Heaviside function을 근사
화 한 것이다.
                       
 
 
 신경망은 순환하지 않는 그래프로 연결된 뉴런의 모음을 모델화 한 것으로 다음은 신경망을 그림으로 표
현한 것이다. 왼쪽부터 입력층(Input layer), 은닉층(Hidden layers), 출력층(Output layer)으로 구성되어 있다. 
따라서 입력층에서 신호를 받으면, 미리 부여된 가중치와 계산 후 그 총합이 은닉층으로 전파되고, 주어진 
활성화 함수에 따라 그 다음 층으로 전해질 신호가 계산된다. 이런 식으로 전파되어 출력층에서 해당하는 
결과를 내보낸다.
    
[그림 출처]  http://neuralnetworksanddeeplearning.com/chap1.html 
 활성화 함수가 일차함수인 간단한 경우를 통해 신경망의 원리를 살펴보도록 하자. 아래와 같이 하나의 노
드는 입력 신호를 받아 결과를 전달해주는 하나의 함수로 볼 수 있다. 따라서 입력 
를 받아 
를 출력하는 
경우 
와 같이 나타낼 수 있다. (여기서 
는 편향(bias)을 의미한다. 예를 들어, 입력층에서 신호 
- 46 -
를 받으면, 미리 부여된 가중치 
와 계산 후 그 결과값이 임계값 
를 넘으면 1을 출력, 즉 
                                         
 
 1을 출력
할 때 
를 왼쪽으로 이항하면 
를 얻는다.) 
 
마찬가지로 입력이 두 개라면,  
, 입력이 세 개라면 
와 
같이 표현할 수 있을 것이다. 
 만일 출력이 두 개라면, 다음과 같이 Part 1에서 학습한 행렬의 곱을 이용하여 나타낼 수 있다. 이때, 편
의상 편향은 0이라고 하고, 
는 입력층의 
번째 노드에서 출력층의 
번째 노드로 연결된 가중치를 의미
한다.
     
   또는   
- 47 -
          
   
 
           
     
   
     [출처: 고려대학교 영어영문학과, NAMZ(MediaZen AI 연구소), 남호성 교수, 제5회 MASS  발표자료]
 입력값과 정답을 알고 있는 데이터셋(dataset)이 있다고 하자. 우리의 목적은 주어진 데이터셋을 잘 판단
하도록 신경망의 가중치를 찾는 것이다. 이때 어떤 공식에 의해서 가중치를 계산하는 것이 아니라, 초기에 
임의로 가중치를 부여해놓고, 주어진 데이터로부터 신경망을 이용하여 얻은 예측값과 미리 알고 있는 정답
간의 오차를 줄이는 방향으로 가중치를 점차 갱신해 나간다. 이때 계층 간의 각각의 연결이 오차에 영향을 
주는 정도에 비례해서 오차를 전달해준다. 대표적인 방법으로 오차 역전파(back propagation)법이 있다. 
- 48 -
[그림 출처]  https://sacko.tistory.com/19?category=632408 
 위에서 언급한 오차 역전파법은 사실 신경망을 개선하기 위하여 오차함수를 최소화하는 것이라 할 수 있
다. 이는 앞서 Part 2에서 학습한 경사하강법(gradient descent method)을 오차함수에 사용한 것과 같다. 예
를 들어, 입력층에서 
를 받아 신경망으로부터 출력된 값을 
라 하고, 실제 정답은 
라 하자. 그러면 
곱 오차(squared error)는 다음과 같이 주어진다.
            
그러면 가중치를 갱신하는 공식은 경사하강법으로부터 다음과 같이 주어진다. 
            
 신경망은 제대로 예측할 때 까지 많은 데이터를 필요로 하며, 또한 입력층과 출력층 사이에 많은 은닉층
을 둘 수도 있다. 이와 같이 은닉층이 여러 개 있는 인공신경망을 심층신경망(deep neural network)이라고 
부르며, 심층 신경망을 학습하기 위한 기계학습 기법을 딥러닝(deep learning)이라고 부른다. 자세한 사항은 
신경망과 관련된 도서를 참조하라. 
예측 분석은 사기 탐지(fraud detection), 고객 유지(customer retention), 위기관리(risk 
management), 직접 마케팅 및 교차 판매(cross‐selling)와 같은 다양한 장소에서 유용합니
다. 핵심 기술(core techniques)은 알고 있는 기능과 예측할 기능이 모두 포함된 그간의 기
록을 모두 담은 데이터(historical data)가 있는 어디에서도 사용할 수 있습니다.
적용성 문제는 데이터가 있는지 여부와 보유하고 있는 것과 보유해야 할 것 사이에 실제 관계
가 있는지에 대한 문제로 귀결됩니다. 적절한 데이터를 통해 기업은 비즈니스 목표에 적용되
는 예측 분석을 적용함으로써 엄청난 혜택을 누릴 수 있습니다. 그러나 가장 중요한(crucial) 
것은 당신이 데이터를 가지고 있어야 한다는 것입니다. 
여기서 논의한 다른 모든 기술과 마찬가지로 이러한(Predictive analytics) 기술의 성과는 가
지고 있는 데이터의 양, 품질 및 적합성에 달려 있습니다. 이 분석 과정은 마술(magic)이 아
니라 단순히 수학/통계학적 기술을 코딩을 이용하여 데이터에 지능적으로 적용(intelligent 
application of techniques against data)하는 일입니다.
                
- 49 -
2)
 the study of the use of linguistic signs, words and sentences, in actual situations
5 장 
         AI와의 소통 (Communicating with AI)
이 장에서는
▶ AI에서 언어의 역할 이해 (Understanding the role of language in AI)
▶ 구문론(syntax), 의미론(semantics) 및 화용론(pragmatics)2)이 어떻게 도움을 줄 수 있는지 
결정
▶ 무슨 말을 어떻게 해야 할지 현실화하기 (Realizing what to say and how to say it)
"저는 의사소통을 향상시키는 도구가 사람들이 서로에게서 배울 수 있는 방법과 그들
이 원하는 자유를 얻을 수 있는 방법에 심오한 영향을 미친다는 것을 믿는 사람(
great believer)입니다."
                                          - 빌 게이츠 (Bill Gates)
이 장에서는 언어에 대하여, 특히 의사소통에서의 언어의 힘과 AI 시스템에서의 언어의 역할
에 대하여 다룬다. 기계가 언어를 다루는 두 가지 방법인 이해와 생성(understanding and 
generation)에 초점을 맞추며, 또한 기계가 작업공간에서 우리와 성공적인 파트너가 되기 위
하여 자연어를 사용해야 하는 이유에 대하여도 살펴본다. 
언어에 대한 이해
인간을 다른 동물들과 분리시키는 지능의 주요 측면은 바로 언어를 사용한다는 것이다. 우리
는 복잡한 생각을 설명하거나 일련의 사건을 표현(articulate)할 때, 그리고 다른 사람들이 우
리에게 말할 때 그것을 이해하는 능력이 독특하다. 수 천 가지의 다른 능력들도 우리의 지능
에 기여하고 있지만, 언어의 사용은 복잡한 생각의 의사소통 면에서 지적 능력들 중에 으뜸
(trumps them all)으로 꼽을 수 있다. 
 직장이나 다른 곳에서 AI 시스템이 우리와 파트너가 되려면, 그 시스템이 우리를 
진정으로 이해하고, 우리가 이해하는 방식으로 우리가 하고 있는 일을 전달해야 합니다. 
- 50 -
  놀랍게도 기계의 지능을 테스트하기 위해 제안된 한 가지 방법인 튜링 테스트 (Turing 
Test)는 언어를 핵심으로 하고 있습니다. 튜링 테스트는 AI 시스템이 우리와 설득력 있는 대
화를 할 수 있도록 설계되었습니다. 튜링 테스트는 시험을 통과하는 데 저녁 식사 동반자가 
기대하는 것 이상을 요구하지는 않지만, AI 평가를 위한 황금률이 되었습니다. 
  Siri 및 기타 개인 비서를 지능적으로 받아들이려는 우리의 의지는 거의 전적으로 언어를 
사용하여 우리와 상호 작용할 수 있는 능력에 기초합니다. 우리를 위해 일하는 능력이 다소 
제한되어 있다는 사실은 언어를 사용한다는 사실보다 우리에게 훨씬 덜 중요합니다.
언어 처리
자연어 이해 (NLU, natural language understanding) 시스템의 목표는 입력받은 언어의 의
미를 단어, 문장, 이야기 등을 토대로 찾아내는 것이며, 이 시스템은 이런 문제에 대하여 세 
가지 다른 종류의 정보를 조합하여 해결하고자 합니다. 
✓화용론(Pragmatics) : 목록이나 설명과 같은 문맥상황을 담은 정보(Contextual 
information)
✓의미론(semantics) : 단어의 의미와 그 의미를 결합하는 방법.
✓구문론(syntax) : 명사, 주어, 목적어, 전치사, 관용구와 같은 언어의 구성요소 유형 간의 
조적인 관계(structural relationships)
- 51 -
    
깊고 얕은 바다를 항해하자 (Navigating deep and shallow waters)
특정 언어의 문법을 구성하는 구문 규칙을 세우는 것은 매우 간단하지만, 의미론과 화용론적 
측면은 일을 어렵게 만든다. 
“Tricky”는 언어 이해 시스템을 구축할 때 두 가지 문제와 관련된 복잡성이 절충을 강요한다
는 점에서 과소평가 받고 있다. 다음 중 하나를 할 수 있다. 
- 52 -
✓ 범위는 매우 좁지만, 이해할 수 있는 것과 관련하여 상당히 깊은 시스템을 구축하는 것
✓ 광범위하지만, 주어진 단어로부터 결정할 수 있는 면에서 매우 얕은 시스템을 구축하는 것
깊은 시스템은 명시적으로 있는 정보를 넘어 이해한다. 예를 들어, “Bob은 출근길에 운전하면
서 커피를 마시다, 앞차를 들이받았다.”를 읽을 수 있다는 것과 아침에 무슨 일이 일어났는지
를 파악하는 것을 구분하는 것은 깊은 이해(deep understanding)의 좋은 예시이다. 낮 시간
대에 대하여는 명시되어 있지 않지만, 사람들은 아침에 커피를 마시고 출근하는 경향이 있다. 
여기서 구문론, 의미론, 화용론(syntax, semantics, and pragmatics)이 모두 함께 작동한다. 
 그러나 소비자와 기업 시스템에서 보는 대부분의 언어 처리 시스템은 범위가 넓고
(broad), 깊이는 얕은(shallow) 경향이 있다. 예를 들어, 시리는 당신이 말을 할 때 당신이 진
정 무엇을 의미하는지는 충분히 이해하지 못하지만, 당신이 표현(expressing)한 말로부터, 전
달하려는 기본적인 내용(필요, needs)이 무엇인지 파악할 능력은 갖추고 있다. 
추출, 태그 지정(tagging) 시작하기, 감정 분석(sentiment analysis)
자연어 처리 (NLP) 시스템은 정보가 어떻게 연결되어 있는지를 파악하기 보다는 특정 정보를 
추출한다. 그들은 회사 이름, 사람, 조직을 추출하는데 초점을 두고, 정치, 금융, 스포츠와 같
은 주제에 대해 텍스트에 태그를 지정하고, 감정을 평가한다. 이런 시스템은 뉴스 분석 및 소
셜 미디어에서의 태도와 의견을 추적하는데 사용되는 경향이 있다. 이 시스템은 실체를 추출
하고 정서를 평가하는 것을 결합하여 회사, 정치인 브랜드에 사람들의 의견을 제공한다. 
 추출(Extraction)은 일반적으로 Wikipedia 및 유사한 웹 사이트에서 수집된 용어
를 포함하여 인식 할 수 있는 사람, 장소 및 사물의 실제 목록과 구문 규칙 (syntactic rules, 
적절한 이름은 대문자를 사용하는 경향이 있고 이름은 제목을 따르는 등)을 결합한 결과이다. 
주제 태깅 및 감정 분석은 문서 ​​내의 단어와 관련된 확률을 기반으로 문서가 특정 주제 및 감
정의 범주에 속할 확률을 계산하여 수행된다. 
응용 프로그램과 관련된 언어 이해 시스템은 범위는 좁지만 우리에게 이런 시스템에 직접 요
구 사항을 설명할 수 있는 기능을 제공한다. 시스템 자신은 범위(scope)가 좁기 때문에, 그는 
우리가 필요로 하는 기능의 수준(the level of functionality) 안에서만 가능한 답을 제공한다. 
우리가 Siri와 Watson에게 그들이 도저히 할 수 없는 일을 해 달라고 요청할 때는, Siri와 
Watson은 우리의 입장을 이해할 필요가 전혀 없다.
- 53 -
언어 생성
언어를 이해하는 시스템은 글을 쓰는 시점에 제한되어 있지만, 제공하는 이해 수준은 지원하
는 시스템을 직접적인 목표로 한다. 그래서 작업공간에 들어와 있는 시스템은 우리와 함께 일
하기에 충분한 언어를 이해할 수 있다. 이제 문제는 그들이 우리에게 자신에 대하여 설명 할 
수 있는지 여부이다. 
자연어 생성 (NLG) 시스템의 목표는 시스템이 알고 있는 것을 어떻게 효과적으로 잘 전달할
지를 파악(figure out)하는 것이다. 비결은 시스템이 무엇을 말해야 할지와 어떻게 말해야하는
지(what the system is to say and how it should say it)를 정확히 파악하는 것이다. 
NLU(자연어 이해)와 달리 NLG(자연어 생성) 시스템은 임의의 텍스트가 아니라 잘 제어되고 
모호하지 않은 세계의 그림(unambiguous picture of the world)으로 시작한다. 간단한 
NLG 시스템은 아이디어를 취하여 언어로 바꿀 수 있다. Siri와 같은 시스템은 제한된 반응
(limited responses)을 보이기 위해 사용한다. 이런 환경에서는 아이디어와 문장을 단순하게 
연결하는 것이 적절하다. 
- 54 -
고급 NLG(자연어 생성) 시스템이 설명하는 방법
직장에서 우리는 비즈니스 인텔리전스 도구, 기계 학습 및 예측 분석 시스템(다른 AI 시스템
뿐만 아니라)에 의해 만들어진 추가 데이터 세트와 함께 페타바이트(petabytes)의 가공되지 
않은 데이터에 둘러싸여 있다. 기계가 처리하는 지금의 모든 사실에 대한 단순한 단어 생성보
다 더 무언가가 필요하다. 이 세상을 위해서 우리는 예를 들어, 내러티브 사이언스 퀼
(Narrative Science Quill) 같은 진보된 NLG 시스템이 필요하다. 
고급 NLG의 임무(job)는 그들이 가지고 있는 모든 사실들을 조사하고, 그들이 생산하는 보고
서나 메시지에 어떤 것을 포함시킬지를 확립하는 것이다. 그들은 통신의 순서와 조직을 결정
해야 한다. 이런 필터링(filtering)과 조직(organization)과정이 끝나면 특정한 청중(audience)
이 이해하기 쉬운 언어로 아이디어를 설명해야(map) 한다. 
 고급 NLG 시스템은 무엇이 진실인지, 무엇을 의미하는지, 중요한 것이 무엇인지, 
그리고 어떻게 말해야 하는지를 결정해야 한다. 예를 들어, 펀드 매니저에게 보고서를 작성할 
때, 펀드 매니저의 성과에 초점을 맞춘 보고서라면, 먼저 펀드가 절대 수익률(3퍼센트 수익률)
에서 어떻게 운용되었는지, 벤치마크(S&P 500 1.3%)와 어떻게 비교되는지, 그리고 어떤 결정
이 이번 성과에 가장 큰 영향을 미치는지(기술에 큰 비중, 애플 주식은 특히) 알고 싶을 것이
다. 가장 큰 변화, 가장 큰 영향, 가장 큰 차이에 초점을 두는 것에 의해 당신은 결국 가장 의
미있는 아이디어들과 함께 하게 된다. 생산되는 문서가 완전해야 할 때에만, 영향을 덜 주는 
다른 사실들(예를 들어, 펀드와 벤치마크는 정확히 같은 소매업 부문의 주식 투자 수준과 균
형 수준)이 언급된다. 
이런 종류의 분석이 완료되면, 고급 NLG의 언어 부분이 아이디어와 그 구조를 실제언어로 변
환하게 된다.
이 시스템의 생산량은 상당히 주목할 만하다. 그림 5-1의 기사는 편지쓰기 롤플레잉 게임 퀼
(Quill)이 작성한 것이다.
- 55 -
             
  포브스(Forbes) 수익 미리보기: 체사피크(Chesapeake) 에너지
분석가들은 2012년 2월 21일 화요일 4분기 실적을 발표할 때 체사피크 에너지(CHK)의 수익이 감소
할 것으로 예상하고 있다. 체사피크 에너지는 1년 전 70센트의 이익을 보고했지만 합의된 추정에 따
르면 주당 59센트의 수익을 올릴 것으로 보인다.
예상 사항:
  지난 3개월 동안, 합의 추정치는 62센트 이하로 떨어졌다. 분석가들은 회계연도에 주당 2.80달러
의 수익을 기대하고 있다.
  이번 분기의 매출은 올해 전체 19억8000만 달러보다 53.9% 늘어난 30억4천만 달러가 될 것으로 
예상된다. 올해의 경우, ......
  그림 5-1: 고급 자연어 생성 플랫폼인 Quill (https://www.quill.org/) 이 작성한 기사
데이터의 시각화만으로는 충분하지 않다.
대시보드와 시각화 같은 다른 통신 방법도 많은 진전을 이루었지만, 이러한 접근방식은 단순
히 데이터와 분석결과를 보이는 다른 방법일 뿐이다. 그러나 비용, 매출, 성과와 거시경제요소 
등을 보여주는 그래프는 경기 상승시기에 가격을 인하해서 경쟁사를 이겼다고 말해주는 보고
서를 정리할 수 없다. 만약 당신이 가진 것이 그래프 뿐이라면 그런 것들을 혼자서 알아내야
만 한다. 
 그들의 본성에 따르면, 데이터의 시각화는 어떤 일이 일어나고 있는지 설명하지는 
못하고 주로 데이터에 관한 해석이 되면 도움이 될 하나의 추가 자료를 제공할 뿐이다. 많은 
- 56 -
경우 당신을 위해서 그 표를 대신 분석해 줄 데이터 전문가(data savvy)가 필요하다. 그림 
5-2가 증명하듯이, 시각화 자료는 여전히 의미의 해석(interpretation)을 필요로 한다. 
      
          그림 5-2 : 해석하기 어려운 시각화된 데이터가 있는 대시 보드(dashboard)
고급 NLG는 데이터를 분석하고 결과를 전달하는 데 필요한 시간을 단축하거나 심지어 제거
(eliminating)하는 것을 목표로 한다. 그 결과는 데이터를 분석하는 방법을 모르거나 시간이 
없는 사람들에게는 매우 유용할 수 있다.
이러한 시스템은 데이터 분석(data analysis)의 힘에 그 분석 내용을 효과적으로 전달
(communication)한다는 두 기능을 결합하는 것을 목표(focus)로 한다. 예를 들어, 어떤 회사
가 시간이 흐르면서 더 잘하고 있는지 아니면 경영상태가 점점 더 나빠지는지를 알고 싶다면 
당신이 관심을 두는 측정 기준 – 아마도 수익, 비용, 이익 - 에 대한 시계열 분석(time 
series analysis)을 할 필요가 있다. 다른 측정 기준, 또는 운동선수, 학생, FitBit 사용자 또
는 전력 발전소 등을 대상으로 하더라도 분석 방법은 정확히 일치한다. 시스템이 무엇을 어떻
게 말해야 할지 언제 말하는지를 결정하는 것은 오히려 쉬운 부분이다. 이것이 고급 NLG가 
주는 측정할 수 있는 능력(ability to scale)이다. 
 “블랙박스(black box)”라는 질문. 새로운 기술이 작업환경으로 들어오면서 우리는 
흥미로운 문제에 직면하게 된다. 우리는 답을 제공하는 능력을 갖춘 AI 시스템을 포함하는 시
스템을 제자리에 갖추게 될 것이다. 그러나 이 시스템과 진정한 파트너가 되려면 시스템이 내
놓은 답 이상의 것이 필요하다, 즉 설명(explanations)이 필요하다는 것이다
- 57 -
지능형 시스템(intelligent systems)에서 언어의 역할은 매우 중요하다, 특히 같은 작업환경에
서 우리가 지능형 시스템과 진정한 파트너로써 일하려면 더욱 그렇다. 시스템이 답을 준 후 
우리에게 맹목적인 믿음(blind faith)을 요구하거나, 우리 모두에게 데이터 분석(data 
analytics)의 스킬과 대쉬보드의 해석을 요구하는 시스템이라면, 그런 시스템은 아직 멀었다.  
우리는 시스템이 우리에게 기계에 더 다가와서 기계의 조건(terms)에 따라 일을 처리하라고 
우리에게 강요하는 이런 시스템은 원하지 않는다. 우리에게 필요한 시스템은, 우리에게 다가
와서 우리의 조건으로 우리가 필요로 하는 것을 이해하고 우리에게 그들이 얻은 답과, 그 답
을 얻은 사고과정(thinking)을 우리에게 자세히 설명해주는 지능형 시스템이 필요하다. 이러한 
시스템은 자연어 이해와 고급 NLG를 통하여만 가능하다
    
- 58 -
   
 
- 59 -
제 6 장 
     미래를 위한 준비 그리고 그곳에 가는 10가지 팁
이 장에서는
 ▶ 미래에 대한 준비
 ▶ 준비 방법 연습
이 장은 지금 우리 앞에 놓인 것을 준비하는데 필요한 10가지 중요한 팁을 제시한다. 
미래는?
앞으로는 - 이 예측에는 언제라는 날짜를 적지 않았다 - 당신이 출근하는 길에 전국적으로 
당신 상품이 어떻게 판매되고 있는지에 대한 개인화된 보고서(your personalized report)를 
받아, 읽으면서 사무실로 향하고 있을 것입니다. 이 보고서는 누가 업무를 추진하고 있는
(drivers), 다양한 전략(various strategies)이 세일즈(sales)에 어떻게 영향을 미쳤는지, 또 
목표 달성을 위해서는 이제 어떻게 해야 되는지를 강조하여 알려줄 것입니다. 이 보고서를 보
면서 당신이 궁금한 점을 질문 하면 바로 답을 주는 대화식 창(interactive window)이 될 것
입니다.
  사무실에 도착하면 전 세계에서 회사와 제품이 어떻게 인식되는지에 대하여 가상비서
(virtual assistant)와 대화 할 수 있습니다. 비서는 정보가 어디에서 왔으며, 그 정보들을 어
디로 전달할(redirect) 것인지를 알려줄 것입니다.
  당신이 공장(factory)에 들어가면, 기계가 기계의 상태에 대하여 당신에게 정보를 제공할 것
이며, 어떤 부분이 교체나 수리가 필요하고, 또 어느 제작과정에서 병목 현상이 발생할 가능
성이 있다고 알려줄 것입니다. 독립 에이전트로서의 공장(factory)은 이미 작업흐름
(workflow)의 순서를 관리하여 생산성을 높이도록 공정을 수정하여 관리하고 있을 것입니다. 
그러나 당신도 그 의사결정 과정의 고리(loop)에 포함되어 수시로 공장이 그런 의사결정을 하
게 된 가정과 결론(assumptions 과 conclusions)에 대하여 의문을 제기하는 역할을 하게 될 것
입니다. 그리고 점심시간이  되면 당신은 당신 공장이 필요로 하는 원자재(소재) 공급자
(supplier)에게 영향을 줄지 모르는 볼리비아의 날씨 문제에 대한 경고를 전달 받을 수도 있
습니다. 
  모든 상호 작용(interaction)은 시스템 안에서 당신과 의사소통 하는 방법을 잘 알고, 각자
의 업무를 잘 수행하게 될 것입니다. 그들은 기계이지만 동시에 당신의 파트너가 될 것입니다. 
- 60 -
현재 할 일 : 앞으로 나아가기 위한 10 가지 팁
그것이 미래였지만 지금은 현재입니다(That was the future; this is now). 당신은 앞으로 
전개될 상황에 대하여 잘 준비하는 탄탄한 토대(solid foundation)를 구축하는 방법을 묻고 
있을 것입니다. 
  당신이 당신의 시스템과의 좋은 동반 관계(partnership)를 달성하려면 앞으로 무엇을 구매
하고 무엇을 구축(build)해야 할지에 대하여 유의하십시오. 다음은 그것을 위한 10 가지 팁입
니다.
1. 당신의 진정한 목표는 단순히 "AI 전략" 또는 "인지 컴퓨팅" 작업 계획을 세우는 것이 아니
라 실제 당신 사업(비즈니스) 관련 문제를 해결하는 것입니다. 핵심 기능 작업과 관련된 비즈
니스 목표에 중점을 두어야합니다.
2. 전체적인 조망(landscape)도 중요하지만, 해야 할 숙제(Homework)도 하고, 사용 가능한 
시스템의 길이와 폭도 이해해야합니다. 대부분의 시스템은 작업(job)의 일부일 뿐이므로 적합
하지 않은 작업에 쐐기를 박지 않도록 주의하십시오.
3. 당신이 가지고 있는 데이터에 집중하십시오. 추론이나 예측을 뒷받침 할 수 있는 데이터가 
있을 수도 있지만, 시스템이 사용자가 제공하는 데이터를 넘어서서는 생각할 수 없습니다.
4. 시스템이 어떻게 작동하는지 최소한 시스템 뒤에 숨은 핵심 직관(core intuition) 수준은 
알고 있어야합니다. 누구도 그가 구축한 당신의 시스템에 대하여, 당신이 이해하기 어려운 마
법이거나 너무 복잡한 시스템이라고 당신을 설득하려고 둘러대는 말을 절대 믿지 마십시오. 
5. 기계 학습을 다른 형태의 추론(reasoning)과 혼동하지 마십시오. 시스템이 기계 학습을 사
용한다고 들었을 때는 항상 다음과 같이 질문하십시오. 시스템이 학습하는 내용은 무엇이며, 
학습한 정보는 어떻게 사용합니까?
6. 깊이와 폭의 균형(trade‐off)을 항상 기억하십시오. 범위가 넓은 시스템은 비례적으로 얕습
니다. 만일 어떤 시스템이 모든 언어를 이해한다면 분명히 깊이 이해하지는 못한다는 의미입
니다. 
7. 시스템이 당신의 워크플로(workflow)의 어느 부분에서 어떻게 자리하여, 어떤 역할을 하
며, 그것을 누가 사용하는지를 이해해야합니다. 누가 구성(configure)하고 누가 시스템의 출력
물 (output)을 받아서 다음 작업을 이어지게 할 것인지 결정하십시오.
8. 당신이 인간과 컴퓨터 간의 파트너십(human-computer partnership)을 체결하고 있음을 
명심하십시오. AI 시스템은 완벽하지 않으므로 당신이 유연해야 합니다. 또한 당신 시스템의 
- 61 -
답변에 당신이 수시로 질문 할 수 있어야합니다.
9. 항상 시스템이 당신은 물론 시스템을 사용하는 다른 사람과 - 내부 및 외부 모두 - 어떻
게 communicate 하는지에 대하여 항상 염두에 두고 계십시오. 답만으로는 당신의 지능 시스
템이 무슨 생각으로 그 답을 당신에게 주었는지를 이해할 수 없습니다. 당신이 시스템을 그냥 
사용하는 것에서 더 나아가, 당신의 시스템이 제공하는 결과물을 평가하기 위하여, 지속적으
로 설명을 요구해야 합니다. 
10. 황제의 새 옷 이야기를 기억하십시오. 시스템의 작동 방식을 이해하지 못한다고 말할 수 
있어야 합니다. 질문하고 또 질문하여 시스템 공급 업체, IT 팀 및 데이터 과학자들이 당신이 
당신의 시스템이 수행하는 작업의 과정에 대하여 충분히 이해시키도록 만들어야 합니다. 
    
- 62 -
인공지능이 재등장! 준비됐나요?
인공지능(AI)은 엄청난 과장 광고, 흥분, 공포를 만들어내고 있다. 이 책의 목적은 독자가 과
장광고에 미혹되는 일이 없도록 하고, AI를 어디에 어떻게 적용할 수 있는지를 이해시키며, 
독자가 가질 수 있는 AI에 대한 두려움을 제거하는 데 필요한 설명으로 독자를 무장시키는 것
이다. 우리가 정말 두려워해야 하는 것은 AI가 무엇인지 그리고 어떻게 작동되는지 전혀 모르
는 상태에서 AI 시스템을 평가하는 것이다. 이 책을 통하여 독자는 "AI란 무엇인가?"라는 질
문에 대답할 수 있을 뿐만 아니라, AI의 핵심 구성 요소들에 능숙해져 실제 비즈니스 문제를 
해결하고 결과를 이끌어 낼 수 있는 방법을 이해할 수 있을 것이다.
AI 기본: AI가 인간 추론의 주요 구성요소를 어떻게 사용하는지 이해하라.
우리 일상생활 안의 AI: Siri 뒤에 숨겨진 비밀의 장막을 거두어라.
AI 및 빅데이터: 데이터, 스케일 및 처리 능력이 어떻게 AI에게 유리한 환경을 만들어 왔
는지 이해하라.
AI와 자연어: AI의 가장 정교하고 유망한 능력을 발견해라.
Kristian Hammond는 인공지능 플랫폼인 Quill을 발명한 기술 회사인 Narrative Science의 
공동 설립자 겸 최고 과학자이다. Kristian은 시카고 인공지능 연구소를 설립했으며, 그 후 
Northwestern대 교수가 되어 현재 컴퓨터과학 및 저널리즘 교수이다. 
이 책을 펴서 다음을 찾으십시오.
사업상의 문제를 AI로 해결하는 방법에 대한 실질적인 조언
AI 시스템을 올바르게 평가하는 방법에 대한 리소스
스마트 머신과 협력하고 커뮤니케이션하는 방법에 대한 정보
AI의 미래를 대비한 놀라운 가능성
           
  
 번역 :  이상구  sglee at skku.edu  성균관대 
                                                                       [End]