( 4 ) Sample
( 4 ) Sample
Copyright ⓒ 2021, 2020, 2003 by Pearson Educations, Inc. All rights reserved.
편집부 김정준, 이민숙, 최병찬, 이주원 / 소통기획부 송찬수, 강민철 / 소통지원부 민지환, 김유미, 김수연
진행 김정준 / 교정 및 교열 오현숙 / 내지디자인 및 편집 조찬영
용지 타라유통 / 인쇄 한길프린테크 / 제본 보경문화사
제이펍은 독자 여러분의 아이디어와 원고 투고를 기다리고 있습니다. 책으로 펴내고자 하는 아이디어나 원고가 있는
분께서는 책의 간단한 개요와 차례, 구성과 저(역)자 약력 등을 메일([email protected])로 보내 주세요.
인공지능 현대적 접근방식 제4판
Artificial Intelligence
A Modern Approach
4th Edition
1
스튜어트 러셀� 피터 노빅 지음 / 류 광 옮김
※ 드리는 말씀
・ 이 책에 기재된 내용을 기반으로 한 운용 결과에 대해 저자, 역자, 소프트웨어 개발자 및 제공자, 제이펍 출판사는 일체의 책임을 지지 않으므로 양해 바랍니다.
・ 주요 용어에 대한 번역은 대학수학회의 수학용어집을 비롯해 관련 학회의 권위 있는 용어집과 위키백과 등을 따랐습니다. 다소 생소한 단어는 원어를 병기하였으며,
찾아보기에도 수록해 두었음을 알려드립니다. (용어와 관련된 고민은 ‘옮긴이 머리말’에서 이어집니다.)
・ 이 책에 등장하는 각 회사명, 제품명은 일반적으로 각 회사의 등록 상표 또는 상표입니다. 본문 중에는 TM, Ⓒ, Ⓡ 마크 등이 표시되어 있지 않습니다.
・ 이 책은 두 권으로 나누어져 있으며, 1권에서 2권을 언급하거나 2권에서 1권을 언급할 때는 원문자 ‘❶(1권), ❷(2권)’로 표기하였습니다.
・ 이 책에서는 참고문헌을 대괄호([ ])나 소괄호(( ))를 사용하여 [저자, 연도] 식으로 표기하였습니다. 대괄호나 소괄호로 언급된 참고문헌에 대한 정보는 2권에서
찾아볼 수 있습니다(저자와 연도가 동일하나 다른 내용의 참고문헌일 경우 연도에 알파벳을 붙여 차별화했습니다).
[Korf, 1985a]
・ ‘§’ 기호는 절(section 또는 subsection)을 의미합니다.
・ ‘찾아보기’는 독자들의 효율적인 용어 검색을 위해 PDF로도 제공되며, 제이펍 홈페이지(www.jpub.kr)의 이 책 소개 페이지에서 다운로드할 수 있습니다.
・ 이 책의 원서와 관련된 자료(소스 코드, 그림 등)는 다음의 사이트에서 다운로드할 수 있습니다.
http://aima.cs.berkeley.edu/
・ 전판인 3판까지는 책의 본문에 실렸던 연습문제가 4판에서는 원서부터가 웹 제공으로 바뀌었으나, 21년 8월 현재까지 완성되지 않은 상태여서 책에 번역하여
싣지 못한 연습문제 영문 링크를 다음과 같이 알려드립니다.
https://aimacode.github.io/aima-exercises/ (단축 URL: https://bit.ly/AIprob)
1권
PART I 인공지능
CHAPTER 1 소개 ∙ 3
1.1 인공지능이란 무엇인가? ·············································································· 4
1.2 인공지능의 기반 학문 ··············································································· 10
1.3 인공지능의 역사 ························································································ 25
1.4 인공지능의 현황 ························································································ 38
1.5 인공지능의 위험과 혜택 ············································································ 43
‣‣ 요약 ······································································································ 47
‣‣ 참고문헌 및 역사적 참고사항 ····························································· 49
vi 차례
PART II 문제 해결
CHAPTER 3 검색을 통한 문제 해결 ∙ 87
3.1 문제 해결 에이전트 ··················································································· 88
3.2 문제의 예 ··································································································· 92
3.3 검색 알고리즘들 ························································································ 97
3.4 정보 없는 검색 전략 ··············································································· 104
3.5 정보 있는 검색(발견적 검색) 전략들 ····················································· 114
3.6 발견적 함수 ······························································································ 130
‣‣ 요약 ···································································································· 140
‣‣ 참고문헌 및 역사적 참고사항 ··························································· 141
CHAPTER 6 제약 충족 문제 ∙ 235
6.1 제약 충족 문제의 정의 ············································································ 236
6.2 제약 전파: CSP의 추론 ·········································································· 242
6.3 CSP를 위한 역추적 검색 ······································································· 250
차례 vii
6.4 CSP를 위한 국소 검색 ··········································································· 257
6.5 문제의 구조 ······························································································ 259
‣‣ 요약 ···································································································· 265
‣‣ 참고문헌 및 역사적 참고사항 ··························································· 266
CHAPTER 8 1차 논리 ∙ 327
8.1 표현의 재고찰 ·························································································· 327
8.2 1차 논리의 구문과 의미론 ······································································· 333
8.3 1차 논리의 활용 ······················································································· 346
8.4 1차 논리의 지식 공학 ·············································································· 354
‣‣ 요약 ···································································································· 361
‣‣ 참고문헌 및 역사적 참고사항 ··························································· 362
viii 차례
CHAPTER 10 지식 표현 ∙ 409
10.1 온톨로지 공학 ························································································ 410
10.2 범주와 객체 ···························································································· 413
10.3 사건 ········································································································ 420
10.4 정신적 객체와 양상 논리 ······································································ 425
10.5 범주 추론 시스템 ··················································································· 429
10.6 기본 정보를 이용한 추론 ······································································ 434
‣‣ 요약 ·································································································· 440
‣‣ 참고문헌 및 역사적 참고사항 ························································· 441
CHAPTER 11 자동 계획 수립 ∙ 449
11.1 고전적 계획 수립의 정의 ······································································ 450
11.2 고전적 계획 수립을 위한 알고리즘들 ··················································· 455
11.3 계획 수립을 위한 발견적 함수 ····························································· 460
11.4 위계적 계획 수립 ··················································································· 465
11.5 비결정론적 정의역에서의 계획 수립과 실행 ········································ 476
11.6 시간, 일정, 자원 ···················································································· 488
11.7 계획 수립 접근방식들의 분석 ······························································· 493
‣‣ 요약 ·································································································· 494
‣‣ 참고문헌 및 역사적 참고사항 ························································· 495
차례 ix
CHAPTER 13 확률적 추론 ∙ 539
13.1 불확실한 문제 영역의 지식 표현 ·························································· 539
13.2 베이즈망의 의미론 ················································································· 542
13.3 베이즈망의 정확 추론 ············································································ 558
13.4 베이즈망의 근사 추론 ············································································ 568
13.5 인과망 ····································································································· 585
‣‣ 요약 ·································································································· 591
‣‣ 참고문헌 및 역사적 참고사항 ························································· 591
x 차례
CHAPTER 17 복잡한 의사결정 ∙ 727
17.1 순차적 의사결정 문제 ············································································ 727
17.2 MDP를 위한 알고리즘들 ······································································· 740
17.3 강도 문제 ······························································································· 750
17.4 부분 관측 가능 MDP ············································································ 759
17.5 POMDP를 푸는 알고리즘 ····································································· 762
‣‣ 요약 ·································································································· 768
‣‣ 참고문헌 및 역사적 참고사항 ························································· 769
2권
PART V 기계학습
차례 xi
CHAPTER 20 확률 모형의 학습 ∙ 89
20.1 통계적 학습 ······························································································ 90
20.2 완전 데이터를 이용한 학습 ····································································· 93
20.3 은닉 변수가 있는 학습: EM 알고리즘 ················································· 109
‣‣ 요약 ·································································································· 119
‣‣ 참고문헌 및 역사적 참고사항 ························································· 120
xii 차례
23.4 증강 문법 ······························································································· 240
23.5 실제 자연어의 복잡한 사항들 ······························································· 246
23.6 자연어 처리 과제들 ··············································································· 250
‣‣ 요약 ·································································································· 252
‣‣ 참고문헌 및 역사적 참고사항 ························································· 253
차례 xiii
PART VII 결론
xiv 차례
옮
긴
이
머리
말
옮긴이 머리말 xv
좋은 번역서를 만들기 위해 많은 분이 힘써 주셨지만, 그래도 여전히 오탈자와 오
역이 남아 있을 것입니다. 제 홈페이지에 이 책의 오탈자와 오역 제보를 위한 공간
(http://occamsrazr.net/book/AiModernApproach4th, 단축 URL: https://bit.ly/
AI4th)을 마련해 두었습니다. 번역에 대한 의견이나 질문도 환영합니다.
재미있게 읽으시길!
옮긴이 류광
제4판에서 새로운 점들
이번 제4판은 2010년 제3판 이후 인공지능 분야에 생긴 변화를 반영한다.
머리말 xvii
고 있다고 가정하지 않는다. 대신, 시스템은 자신이 봉사하는 인간의 진짜 목적이
무엇인지 확실하게 알지 못할 수 있다고 가정한다. 시스템은 반드시 자신이 무엇을
최대화할 것인지를 배워야 하며, 목적에 관해 불확실성이 존재하더라도 적절히 작
동해야 한다.
• 인공지능이 사회에 미치는 영향을 좀 더 자세하게 다루었다. 여기에는 윤리, 공정
성, 신뢰, 안정성에 관한 핵심적인 문제들을 고찰한다.
• 각 장 끝의 연습문제들을 온라인 사이트로 옮겼다. 덕분에 강사들의 요구와 이 분
야 및 인공지능 관련 소프트웨어 도구의 발전에 맞게 연습문제들을 계속 추가, 갱
신, 개선할 수 있게 되었다.
• 전체적으로, 책의 약 25%가 완전히 새로운 내용이고 나머지 75%도 이 분야의 좀
더 통합된 상을 제시하기 위해 크게 재작성되었다. 이번 판에서 인용한 문헌의
22%는 2010년 이후에 출판된 것이다.
이 책의 개요
이 책을 관통하는 주된 주제는 지능적 에이전트(intelligent agent)라는 개념이다. 이 책은
인공지능이라는 것을 환경으로부터 지각(percept)을 받고 동작을 수행하는 에이전트에
대한 연구로 정의한다. 그러한 각 에이전트는 일련의 지각들을 동작들에 대응시키는 하
나의 함수를 구현한다. 이 책은 그러한 함수를 표현하는 다양한 방식, 이를테면 반사 에
이전트, 실시간 계획 수립기, 결정이론적 시스템, 심층학습 시스템을 논의한다. 이 책은
학습을 경쟁력 있는 시스템을 구축하는 방법이라는 측면과 그리고 설계자의 포괄 범위
를 미지의 환경으로까지 확장하는 수단이라는 측면으로 살펴본다. 이 책은 로봇공학과
컴퓨터 시각을 개별적으로 정의된 문제가 아니라 목표 달성 과정 중 제기되는 문제로 취
급한다. 이 책은 적절한 에이전트 설계를 결정할 때 과제 환경의 중요성을 강조한다.
이 책의 주된 목표는 지난 70년간의 인공지능 연구와 지난 수백 년간의 관련 연구
에서 나온 착안(idea)들을 독자에게 전달하는 것이다. 그런 착안들을, 정밀함을 유지하면
서도 너무 형식적이지 않은 방식으로 제시하고자 노력했다. 핵심 착안을 구체적으로 이
해하는 데 도움이 되는 수학 공식과 의사코드 알고리즘들도 제시한다. 부록 A는 관련
수학 개념과 표기법을, 부록 B는 이 책에 쓰이는 의사코드의 문법을 소개한다.
이 책은 기본적으로 대학 학부생용 강좌(들)의 교과서로 쓰일 것을 염두에 두고 저
술한 것이다. 이 책은 총 28장으로 되어 있으며, 각 장은 대략 한 주(week)의 강의 분량
이다. 따라서 책 전체를 떼려면 두 학기가 걸릴 것이다. 강사와 학생의 관심사에 맞는 장
들을 선택해서 한 학기 과정을 만드는 것도 가능할 것이다. 이 책을 대학원생 수준의 강
좌에 사용할 수도 있고(필요하다면 참고문헌 부분에 제시된 몇몇 1차 출전들을 추가해
xviii 머리말
서), 독학서 또는 참고자료로 사용할 수도 있다.
책 전반에서 중요한 사항을 여백에 삼각형 아이콘으로 표시해 두었다. 새로운 용어
새로운 용어 를 처음 정의할 때도 여백에 해당 용어를 표시해 두었다. 그 용어가 이후에 주요하게 쓰
일 때는 굵은 글씨로 표시하되, 여백에는 표시하지 않았다. 책 끝에는 방대한 참고문헌
과 상세한 찾아보기가 있다.
이 책의 학습에 필요한 사전 조건은 컴퓨터 과학의 기본 개념들(알고리즘, 자료구
조, 복잡도)을 학부 2학년 수준으로 이해하고 있어야 한다는 것뿐이다. 몇몇 주제에 대해
서는 학부 1학년 수준의 미적분학과 선형대수 지식이 도움이 된다.
온라인 자료
원서 출판사가 관리하는 pearsonhighered.com/cs-resources 또는 저자들이 관리
하는 aima.cs.berkeley.edu는 다음과 같은 보충 자료를 온라인으로 제공한다.
앞표지에 대해
앞표지는 1997년에 프로그램이 체스 세계 챔피언 게리 카스파로프Garry
Kasparov
를 물리친 체스 시합에서 승리를 결정지은 제6국의 마지막 국면을 표현한 것이다.
흑을 플레이한 카스파로프가 패배를 인정함으로써, 이 시합은 컴퓨터가 세계 챔피언을
이긴 최초의 사건으로 기록되었다. 상단에 카스파로프의 사진이 나와 있다. 사진 오른쪽
머리말 xix
은 전 바둑 세계 챔피언 이세돌과 딥마인드의 프로그램이 벌인 역사적인 바
둑 시합 중 제2국의 결정적인 국면이다. 의 제37수는 수 세기 동안 이어진 바
둑 정석을 위반했으며, 당시 인간 전문가들은 이를 실착으로 간주했지만 복기 후에 이것
이 승리의 한 수였음이 밝여졌다. 왼쪽 위는 Boston Dynamics 사가 만든 인간형 로봇
Atlas이다. 세계 최초의 컴퓨터 프로그래머인 에이다 러블레이스Ada Lovelace
와 기초 연구
로 인공지능을 정의한 앨런 튜링 사이에 자율주행차가 주변 환경을 감지하는 모습이 묘
사되어 있다. 체스판 제일 아래에는 화성 탐사 로버(Mars Exploration Rover)와 아리스토
텔레스의 흉상이 있다. 더 아래 왼쪽의 저자 이름들 뒤로 아리스토텔레스의 동물론(De
Motu Animalium)에 나온 계획 수립 알고리즘이 보인다. 체스판 전체에 깔린 것은 UN 포
괄적 핵실험 금지 조약 기구가 지진 신호에서 핵 폭발을 감지하는 데 사용하는 확률적
프로그래밍 모형의 코드이다.
이미지 제공: Stan Honda/Getty(카스파로프), Library of Congress(베이즈), NASA(화
성 탐사 로버), National Museum of Rome(아리스토텔레스), Peter Norvig(책), Ian Parker
(버클리 풍경), Shutterstock(아시모와 체스 기물들), Time Life/Getty(셰이키와 튜링).
감사의 글
이 책을 만드는 데 전 세계의 많은 이가 참여했다. 600명이 넘는 사람이 이 책의 일부를
읽고 개선안을 제시했다. 모든 참여자의 명단이 aima.cs.berkeley.edu/ack.html에
있다. 우리는 이분들 모두에게 감사한다. 지면의 한계로 여기서는 특히나 중요한 기여자
몇 명만 나열한다. 우선, 다음은 글을 기여한 저자들이다.
xx 머리말
• 오마리 스티븐스Omari Stephens
(삽화)
Tracy Johnson
• 트레이시 존슨 (편집)
Erin Ault
• 에린 올트 와 로즈 커넌Rose Kernan
(표지 및 색상 변환)
Nalin Chhibber Sam Goto
• 날린 치버 , 샘 고토 , 레이몬드 드 라카제Raymond de Lacaze
, 라비 모한
Ravi Mohan Ciaran O’Reilly Amit Patel
, 키어런 오라일리 , 아미트 파텔 , 라고미르 라디프Dragomir
Radiv
, 사마그라 샴라Samagra Sharma
(온라인 코드 개발 및 멘토링)
• 구글 Summer of Code 학생들(온라인 코드 개발)
머리말 xxi
베
타
리
더
후기
강미희
인공지능, 양자컴퓨터 등이 한창 화두가 되고 있는 이때, 인공지능의 4판이 나온다고 하여 무
척 반가웠습니다. 이 책은 인공지능이 무엇인지에 대한 정의부터 지금까지 연구되어온 인공지
능의 주요한 내용이 포함된 책인 만큼 방대한 내용을 다루고 있습니다. 인공지능을 공부하는
사람들에게 아주 유용한 책이 될 것 같습니다.
송헌(루닛)
인공지능을 하나의 학문으로서 공부하고 싶으신 분들에게 좋은 길잡이가 되어줄 책입니다. 다
양한 관점에서 인공지능을 바라보며 그에 대한 해석과 앞으로 어떠한 방향으로 공부를 더 해
나갈 수 있을지를 제시해주며, 수식도 많지 않으면서 용어 대부분과 설명을 굉장히 엄밀하게
정의하고 있습니다. 다만, 그만큼 도구로서가 아닌 학문으로서 인공지능을 처음 접하시는 분들
에게는 다소 어려운 내용이 될 수 있습니다.
이동욱(한국 오라클)
수학과 통계학에 대한 전공자 수준의 지식이 없다면 매우 어려운 책이지만, 다 이해하지 못해
도 끝까지 읽다 보면 한 파트, 한 파트마다 새로운 무언가를 배울 수 있는 책입니다.
이석곤(엔컴)
인공지능을 정말 제대로 공부하고 싶다면 주저 없이 이 책을 강력히 추천합니다. 인공지능의
처음과 끝이 모두 있다고 할 수 있을 정도로 방대한 내용을 다루고 있습니다. 복잡한 내용을
명확한 서술과 다양한 예제와 비유로 쉽게 설명하려는 노력이 돋보이며, 깊고 넓은 수준의 내
용을 다루고 있어 입문자와 인공지능 현업 담당자 모두에게 도움이 되리라 생각합니다.
xxii 베타리더 후기
정욱재(당근마켓)
이 책은 인공지능을 배우는 데 필요한 다양한 지식을 담고 있습니다. 전통적인 인공지능 이론
부터 최신 알고리즘까지 모두 다루고 있습니다. 분명한 것은, 처음 접하는 분들에게는 다소 어
려울 수 있지만, 인공지능의 정석 같은 입문서이면서 끝까지 읽어볼 충분한 가치가 있는 좋은
책이라는 점입니다.
조원양(스마트사운드)
이 책은 지능적인 에이전트라는 키워드를 가지고 인공지능의 아주 광범위한 분야를 다루고 있습
니다. 인공지능의 밑바닥 기초부터 넓은 범위까지 공부를 하고 싶다면 도전해볼 만한 책입니다.
베타리더 후기 xxiii
Artificial
ArtificialIntelligence:
Intelligence A
A Modern Approach, 4th
Modern Approach, 4th Edition
Edition
I
PART
인공지능
CHAPTER 1 소개
CHAPTER 2 지능적 에이전트
소개
3
다양한 하위 분야를 포괄한다. 인공지능은 모든 지적 과제에 연관된다. 그런 만큼 진정
으로 보편적인 분야라 할 수 있다.
4 CHAPTER 1 소개
를 통과할 수 있도록 컴퓨터를 프로그래밍하려면 많은 작업이 필요하다는 점만 짚고 넘
어가자. 그런 컴퓨터는 다음과 같은 능력을 갖추어야 한다.
6 CHAPTER 1 소개
논리주의자 무한 루프에 빠질 수 있다.) 인공지능 분야에 존재하는 소위 논리주의자(logicist)의 전통
은 지능적 시스템을 생성하는 것과 비슷한 프로그램을 구축하길 희망한다.
전통적인 의미에서의 논리학에는 세계에 관한 확실한 지식이 필요하다. 그러나 현실
에서 그런 지식을 갖출 수 있을 때는 그리 많지 않다. 예를 들어 정치나 전쟁의 법칙을
체스 규칙이나 수학의 산술 법칙처럼 확실하게 알 수는 없다. 이러한 간극을 메우는 것
확률론 이 확률론(probability theory)이다. 확률론 덕분에 불확실한 정보로도 엄밀한 추론이 가능
하다. 원칙적으로, 확률론을 이용하면 합리적 사고의 상세한 모형을 구축할 수 있다. 즉,
원본(raw) 감각 정보에서 출발해서 세상의 작동 방식을 이해하는 단계로 나아가고, 그에
기초해서 미래를 예측할 수 있게 되는 것이다. 그렇지만 확률론이 지능적 행동을 산출하
지는 않는다. 지능적 행동을 위해서는 합리적 행동에 관한 이론이 필요하다. 합리적 사
고만으로는 부족하다.
역주1
적어도 이 번역서에서 reasoning과 inference을 구분하는 것은 큰 의미가 없다고 판단해서 둘 다 ‘추론’으
로 옮기기로 한다. 단, 한 문단 안에 reasoning과 inference가 같이 등장하는 경우에는 후자를 ‘추리’로 옮
긴다.
1.1.5 이로운 기계
표준 모형은 초창기부터 인공지능 연구의 유용한 지침으로 작용했지만, 장기적으로 볼
때는 딱 맞는 모형이 아닐 수도 있다. 이유는, 표준 모형은 우리 인간이 기계(컴퓨터)에
게 목적을 완전히 상세하게 알려줄 수 있다는 가정을 깔고 있기 때문이다.
체스나 최단 경로 계산 같은 인위적으로 정의된 과제에서는 과제 자체에 목적이 정
의되어 있으며, 따라서 표준 모형을 적용할 수 있다. 그러나 현실 세계로 들어갈수록 목
적을 완전하고 정확하게 명시하기가 점점 더 어려워진다. 예를 들어 자율주행차를 설계
한다면 목적지에 안전하게 도착하는 것을 목적으로 삼을 것이다. 그러나 차를 몰고 가다
보면 다른 운전자의 부주의나 기계 고장 등의 이유로 운전자가 부상을 입을 가능성이 있
으므로, 안전을 궁극의 목적으로 삼는다면 그냥 차고를 떠나지 않는 것이 정답일 것이
8 CHAPTER 1 소개
다. 목적지로 나아가는 것과 부상 위험을 야기하는 것 사이에는 절충 관계가 존재한다.
적절한 절충점을 어떻게 찾아야 할까? 더 나아가서, 다른 운전자들을 화나게 할 만한 행
동을 자율주행차에게 어느 정도나 허용해야 할까? 승객이 흔들리지 않도록 자율주행차
가 가속이나 방향 조정, 제동을 어느 정도나 조정하게 해야 할까? 이런 종류의 질문은
선험적으로는 답하기 어렵다. 이런 질문들은 인간 ‒ 로봇 상호작용이라는 좀 더 일반적인
영역(자율주행차는 이 영역의 한 사례이다)에서 특히나 골치 아픈 문제이다.
우리가 정말로 원하는 것과 우리가 기계에게 제공하는 목적을 잘 조화시키는 문제
가치 정렬 문제 를 가리켜 가치 정렬 문제(value alignment problem)라고 부른다. 우리가 기계에게 주입
하는 가치 또는 목적은 반드시 인간이 추구하는 가치 또는 목적과 부합해야 한다. 인공
지능 시스템을 연구실이나 시뮬레이터 안에서 개발할 때는(이 분야의 역사 대부분에서
실제로 그렇게 해왔다), 목적을 부정확하게 명시해서 문제가 생겨도 쉽게 고칠 수 있다.
그냥 시스템을 재설정하고, 목적을 수정하고, 다시 시도하면 된다. 그러나 현실 세계에
실제로 배치되는 능력 있는 지능형 시스템들을 만들어 내는 쪽으로 이 분야가 발전함에
따라 그런 접근방식이 불가능해지고 있다. 목적이 잘못 명시된 시스템을 실무에 배치하
면 바람직하지 못한 결과가 발생한다. 더 나아가서, 그 시스템이 지능적일수록 결과가
더욱 나빠진다.
겉으로는 별 문제 없어 보이는 체스의 예로 돌아가서, 체스판의 틀을 벗어나서 추론
하고 행동할 정도로 컴퓨터가 지능적이면 어떤 일이 생길지 생각해 보자. 그런 경우 컴
퓨터는 상대방을 홀리거나 협박해서, 또는 관중에게 뇌물을 주어 소음을 발생하게 해서
상대방이 집중하지 못하게 만드는 등의 책략으로 자신의 승리 확률을 높이려 할 수도 있
다.3 심지어, 컴퓨팅 자원을 훔쳐서 자신의 계산에 사용하려 들 수도 있다. 이런 행동을
“비지능적”이거나 “미친” 행동이라고 말할 수는 없다. 이는 단지 컴퓨터에게 승리를 유일한
목적으로 알려준 것에서 비롯된 논리적인 결과일 뿐이다.
어떤 고정된 목적을 추구하는 기계가 잘못 행동할 만한 모든 방법을 미리 예측하는
것은 불가능하다. 따라서 표준 모형은 부적합하다고 생각하는 것이 합리적이다. 기계 자
신의 목적을 추구하기 때문에 지능적이라고 간주되는 기계는 바람직하지 않다. 우리가
원하는 것은 우리 인간의 목적을 추구하는 기계이다. 표준 모형으로 우리의 목적을 기계
에 완벽하게 전달하지 못한다면, 새로운 어떤 틀이 필요하다. 그 틀은 기계가 우리의 목
적을 추구하되, 그 목적이 구체적으로 무엇인지를 기계가 확실히 알지 못하는 형태이어야
할 것이다. 인간의 목적을 자신이 완전하게 알지 못한다는 점을 아는 기계는 조심스럽게
행동하고, 허락을 구하고, 관측을 통해서 우리의 선호도(preference)를 더 배우고, 우리에
이롭다는 점을 게 통제권을 넘기려 할 것이다. 정리하자면, 우리가 원하는 것은 인간에게 이롭다는 점을
증명할 수 있는
증명할 수 있는(provably beneficial) 에이전트이다. 이 주제는 §1.5에서 좀 더 논의하겠다.
1.2.1 철학
• 형식적 규칙들을 이용해서 유효한 결론을 이끌어낼 수 있는가?
• 물리적인 뇌에서 어떻게 정신이 창발하는가?
• 지식은 어디에서 오는가?
• 지식은 어떻게 행동으로 이어지는가?
10 CHAPTER 1 소개
규칙들 일부를 흉내 내는 물리적 시스템을 구축하는 것과 정신 자체가 바로 그런 물리적
시스템이라고 주장하는 것은 다른 문제이다. 정신과 물질의 구분 및 그로부터 비롯되는
문제들을 처음으로 명확하게 논의한 이는 르네 데카르트René Descartes(1596–1650)이다. 정
신을 순수하게 물리적으로 이해하는 것에 관련된 문제점 하나는, 그런 모형에는 자유 의
지가 포함될 여지가 거의 없다는 점이다. 만일 정신이 전적으로 물리 법칙에 의해 운영
된다면, 자유 의지는 그저 바위가 지구의 중심을 향해 떨어지기로 “결정하는” 것보다 나
이원론 을 것이 없다. 데카르트는 이원론(dualism)의 주창자이기도 했다. 그는 사람의 정신(또는
영혼이나 마음)에는 자연에서 벗어난, 물리 법칙으로부터 자유로운 부분이 있다는 믿음
을 유지했다. 반면 동물에는 그러한 이원론적 속성이 없으므로 기계처럼 다룰 수 있다고
생각했다.
유물론 이원론의 한 대안은 유물론(materialism)이다. 유물론은 물리 법칙들에 따른 두뇌의
작용이 정신을 구성한다고 주장한다. 자유 의지는 선택하는 개체에게 주어지는 여러 가
물리주의 능한 선택 사항들을 인식하는 한 방법일 뿐이다. 물리주의(physicalism)라는 용어와 자연
자연주의
주의(naturalism)라는 용어도 초자연적인 관점과 대조되는 이러한 관점을 서술하는 데 쓰
인다.
지식을 조작하는 물리적 정신이 있다고 할 때, 그다음 문제는 지식의 근원을 확립하
는 것이다. 프랜시스 베이컨Francis Bacon(1561–1626)의 노붐 오르가눔Novum Organum 4에서 시
경험주의 작된 경험주의(empiricism) 운동은 존 로크John Locke(1632–1704)의 다음과 같은 견해로 특
징지을 수 있다: “애초에 감각에 없었던 것은 오성(이해)에도 없다.”
데이비드 흄David Hume(1711–1776)은 인간 본성에 관한 논고(A Treatise of Human
귀납법 Nature; Hume, 1739)에서, 지금은 귀납법(induction)이라고 부르는 원리를 제안했다. 즉,
일반적인 규칙은 그 요소들 사이의 반복적인 연관성을 노출함으로써 얻을 수 있다는 것
이다.
비트겐슈타인Ludwig Wittgenstein(1889–1951)과 버트런드 러셀Bertrand Russell(1872–1970)의
연구에 기초해서, 빈 학파(1920년대와 1930년대에 비엔나에서 교류한 일단의 철학자들
논리 실증주의 과 수학자들)는 논리 실증주의(logical positivism) 교리를 만들어 냈다(Sigmund, 2017).
관측 문장 이 교리는 궁극적으로 모든 지식을 감각적 입력에 대응되는 관측 문장(observation sentence)
들과 연관된 논리적 이론들로 특징지을 수 있다고 주장한다. 따라서 논리 실증주의는 합
리주의와 경험주의의 결합이라 할 수 있다.
입증 이론 루돌프 카르납Rudolf Carnap(1891–1970)과 칼 헴펠Carl Hempel(1905–1997)의 입증 이론
(confirmation theory)은 확신도 또는 믿음의 정도를 정량화함으로써 경험으로부터의 지식
획득을 분석하려 했다. 여기서 믿음의 정도는 주어진 논리 명제와 그것을 입증 또는 반증
하는 관측들의 관계에 따라 명제에 부여하는 수치이다. 카르납의 책 The Logical Structure
of the World(Carnap, 1928)은 기초적 경험에서 지식을 추출하는 계산 절차를 명시적으로
정의했다. 아마도 이는 계산 과정으로서의 정신에 관한 최초의 이론일 것이다.
1.2 인공지능의 기반 학문 11
정신의 철학적 묘사의 최종 요소는 지식과 행동의 관계이다. 이 문제가 인공지능에
아주 중요한 이유는, 지능에는 추론뿐만 아니라 행동도 필요하기 때문이다. 더 나아가서,
정당화할 수 있는(즉, 합리적인) 동작을 수행하는 에이전트를 만드는 방법을 이해하려면
행동들이 어떻게 정당화되는지 이해해야 한다.
아리스토텔레스는 행동들이 목표와 행동의 결과에 관한 지식 사이의 논리적 연결에
의해 정당화된다고 주장했다(동물운동론(De Motu Animalium)에서). (다음 인용구의 마지
막 부분의 그리스어 원문이 이 책 앞표지에 나온다.)
12 CHAPTER 1 소개
는 도박의 합리적 결정을 분석하면서, 결과의 금전적 기대 가치를 최대화하는 정량적 공
식 하나를 제시했다(Arnauld, 1662). 그후 다니엘 베르누이Daniel Bernoulli는 결과의 내재적
효용 이고 주관적인 가치를 반영하는, 효용(utility)이라는 좀 더 일반적인 개념을 소개했다. 제
16장에서 설명하겠지만, 불확실성 하의 합리적 의사결정에 관한 현대적인 개념에는 기대
효용의 최대화가 관여한다.
윤리와 공공 정책의 측면에서, 의사결정자는 반드시 개인 대중의 이해를 고려해야
한다. 제러미 벤담Jeremy Bentham과 존 스튜어트 밀John Stuart Mill은 효용 최대화에 기초한 합
공리주의 리적 결정을 인간 활동의 모든 권역에 적용해야 한다는 공리주의(utilitarianism)를 주창
했다(Bentham, 1823; Mill, 1863). 그러한 권역에는 다수의 개인을 대신한 공공 정책 결
결과주의 정도 포함된다. 공리주의는 결과주의(consequentialism), 즉 무엇이 옳고 그른지는 행동의
기대 결과에 따라 결정된다는 개념의 일종이다.
의무론적 윤리 반면 임마누엘 칸트는 1785년 규칙 기반(rule-based) 또는 의무론적 윤리(deontological
ethic)의 이론을 제안했는데, 이 이론에서 “옳은 일”은 행위의 결과로 결정되는 것이 아
니라 허용 가능한 행위를 관장하는 보편적인 사회 법칙들(이를테면 “거짓말하지 말라”나
“살인하지 말라”)로 결정된다. 따라서, 공리주의자는 기대되는 선이 악을 능가한다면 선
의의 거짓말을 할 수 있지만, 칸트주의자는 그럴 수 없다(애초에 거짓말은 잘못된 일이
므로). 밀은 규칙의 가치를 인식하긴 했지만, 규칙을 결과를 추론하는 제1원리들에서 조
합된 효율적인 의사결정 절차들로 간주했다. 현대적인 인공지능 시스템들 다수는 바로
그런 접근방식을 적용한다.
1.2.2 수학
• 유효한 결론을 이끌어내는 공식적인 규칙들은 무엇인가?
• 계산할 수 있는 것은 무엇인가?
• 불확실한 정보로 어떻게 추론을 진행할 것인가?
5 프레게가 제안한 1차 논리 표기법(텍스트적 특징과 기하학적 특징의 난해한 조합)은 결국 대중화되지 못했다.
1.2 인공지능의 기반 학문 13
ARTIFICIAL INTELLIGENCE: A MODERN APPROACH, 4th Edition
by RUSSELL, STUART; NORVIG, PETER published by Pearson Education, Inc.
Copyright ⓒ 2021, 2020, 2003 by Pearson Educations, Inc. All rights reserved.
편집부 김정준, 이민숙, 최병찬, 이주원 / 소통기획부 송찬수, 강민철 / 소통지원부 민지환, 김유미, 김수연
진행 김정준 / 교정 및 교열 오현숙 / 내지디자인 및 편집 조찬영
용지 타라유통 / 인쇄 한길프린테크 / 제본 보경문화사
제이펍은 독자 여러분의 아이디어와 원고 투고를 기다리고 있습니다. 책으로 펴내고자 하는 아이디어나 원고가 있는
분께서는 책의 간단한 개요와 차례, 구성과 저(역)자 약력 등을 메일([email protected])로 보내 주세요.
인공지능 현대적 접근방식 제4판
Artificial Intelligence
A Modern Approach
4th Edition
2
스튜어트 러셀� 피터 노빅 지음 / 류 광 옮김
베
타
리
더
후기
강찬석(LG전자)
‘인공지능 바이블’이라고 불리는 AIMA의 최신판으로서, 3판에서 담지 못했던 딥러닝 관
련 내용과 최근 논문들을 추가하여 소개하고 있습니다. 내용 전개에 포함되어 있는 의사코
드나 공식에 대한 증명이 처음 접하는 사람에게는 어려울 수도 있으나, 다양한 분야에 적
용되어 있는 인공지능의 기술과 동작 원리에 대한 이해를 학습하는 데 있어서 최고의 책이
아닐까 생각합니다.
김용현(Microsoft MVP)
이 책《인공지능: 현대적 접근방식(제4판)》은 최신 내용이 반영된 개정판으로, 인공지능과
관련된 모든 내용을 함축적으로 망라해 담고 있어 출간된 도서 중 가장 통찰력 있고 가장
포괄적인 교과서입니다. 인공지능의 각 분야를 현대적 시각을 통해 조망하며 접근하면서
수많은 전문가들의 연구와 아이디어를 정갈하게 정돈하여 전달하고 있습니다.
사지원(뉴빌리티)
인공지능이란 학문은 매우 방대하고 넓은 분야입니다. 딥러닝과 머신러닝뿐만 아니라 다른
인공지능에 무엇이 있고, 또 어떤 기술인지 관심이 있다면 참고할 만한 책입니다. 과거
3판에 비해, 특히 딥러닝과 관련된 내용과 최신 동향까지 정리되어 있습니다. 단, 가볍게
읽고 지나갈 수 있는 책은 아닙니다. 높은 난이도를 자랑하지만 이 책을 견뎌낸다면 보
상은 확실합니다.
신진규
인공지능의 시작부터 현재까지의 모든 것을 집약한 책입니다. 깊이 있는 설명과 예시를
통해 인공지능의 과거, 현재, 미래에 대해 통찰을 제시하고 있습니다.
xxii 베타리더 후기
양성모(현대오토에버)
이 책은 인공지능 분야에 관련된 넓고 깊은 이야기들을 담고 있습니다. 수많은 대학에서
교재로 활용되는 책인 만큼, 상세한 설명과 예시를 통해 처음 접하는 분야의 이론들도 부담
없이 읽을 수 있었던 것 같습니다. 이런 멋진 책을 접할 수 있었다는 것에 감사합니다.
이문환(LG CNS)
이 책은 Perceptron, BERT에 대해서 설명하지 않습니다. 숲에서 원하는 나무를 걸러내는
Random Forest 모델이 어떤 가설을 바탕으로 증명되는지, 그리고 Majority Voting을 증
명하는 내용 등이 설명되어 있습니다. 학교의 인공지능 수업과 이 책을 통해 저는 어떤
이론과 가설들이 인공지능 개념 구현에 어떻게 녹아들어 있는지에 대해 흥미 진지하게
탐구하고 있습니다. 어느 순간 여러분들도 무릎을 탁 치며 “이게 이거였군!”하는 날이 올
겁니다.
이주형(구글)
머신러닝의 개념과 원리를 기초부터 잘 정리해 놓은, 그야말로 ‘교과서’라고 생각합니다.
피상적인 이해와 어플리케이션 적용을 위한 테크닉에 치중되어 있는 요즈음의 머신러닝
교재들과 비교해 볼 때, 학문으로서 이 분야를 연구하고 발전시켜 나갈 목적이라면 정리를
위해 더욱 중요한 책입니다.
한상곤(부산대학교 소프트웨어교육센터)
대학원 시절에 인공지능을 학습할 때 정말 많은 도움을 받았던 교재가 개정 및 번역되어
출간되었습니다. 개정 4판은 딥러닝과 머신러닝 관련 부분이 추가되었고, 번역도 훌륭하게
잘 되었습니다. 신규 개발자와 연구자들에게 기존의 축적된 내용에 대한 좋은 길잡이가
될 것이고, 기존 개발자와 연구자에게는 믿을 수 있는 참고서가 될 듯합니다.
베타리더 후기 xxiii
Artificial
ArtificialIntelligence:
Intelligence A
A Modern Approach, 4th
Modern Approach, 4th Edition
Edition
V
PART
기계학습
C H A P T E R 19 견본에서 배우는 학습
C H A P T E R 20 확률 모형의 학습
C H A P T E R 21 심층학습
C H A P T E R 22 강화학습
견본에서 배우는 학습
3
같은 비매개변수 모형(§19.7), 무작위 숲(랜덤 포레스트random forest
) 같은 앙상블 모형
(§19.8) 등 다양한 부류의 모형들에 관한 논의가 섞여 있다.
19.1 학습의 여러 형태
에이전트 프로그램을 구성하는 어떤 요소라도 기계학습으로 개선할 수 있다. 다음은 그
러한 개선의 종류 및 개선에 쓰이는 기법에 영향을 미치는 주요 요인 세 가지이다.
19.1 학습의 여러 형태 5
동작을 학습할 때(구성요소 1의 학습) 입력은 현재 상태(차의 빠르기와 방향, 도로
상태 등)이고 출력은 제동 거리(stopping distance)이다. 출력값을 에이전트가 자신
의 지각(관측 이후의)에서 직접 구할 수 있는 경우에는 환경이 교사이다. 그런 설
정에서 에이전트는 상태들을 제동 거리로 사상하는 함수를 배운다.
비지도학습 • 비지도학습(unsupervised learning)에서 에이전트는 명시적인 피드백 없이 입력에서
패턴을 배운다. 가장 흔한 비지도학습 과제는 군집화(clustering), 즉 입력 견본
(example)들에서 잠재적으로 유용한 군집들을 검출하는 것이다. 예를 들어 인터넷
에서 구한 수백만 장의 이미지를 관측한 컴퓨터 시각 시스템은 영어 사용자가
‘cat(고양이)’라고 부를 만한 비슷한 이미지들의 커다란 군집을 식별할 수 있다.
강화학습 • 강화학습(reinforcement learning)에서 에이전트는 일련의 강화(보상 또는 징벌)들로
부터 배운다. 예를 들어 체스 게임의 끝에서 에이전트에게 이겼는지(보상) 졌는지
(징벌)을 알려주면, 에이전트는 그때까지의 동작 중 그 결과에 가장 책임이 큰 동
작을 알아내고 그에 기초해서 다음 번에는 좀 더 큰 보상을 얻도록 자신의 행동
방식을 변경한다.
19.2 지도학습
지도학습의 과제를 좀 더 엄밀하게 정의하면 다음과 같다.
훈련 집합
개의 견본 입력–출력 쌍들로 이루어진 훈련 집합(training set)
…
19.2 지도학습 7
• 1열: 직선, 즉 형태의 함수. 자료점들과 일치하는 가설(일관 가
설)에 해당하는 직선은 없다.
• 2열: 형태의 정현파(sinusoidal) 함수. 일관 가설은 아니지
만 그래도 두 데이터 집합 모두에 아주 잘 적합한다. 역주1 2
역주1
역주 “A가 B에 적합하다” 형태의 일반적인 용법과는 달리, 기계학습(그리고 통계학, 제어이론 등의 관련
분야)에서는 “적합하다”가 “A를 B에 적합시킨다”나 “A가 B에 잘 적합한다”처럼 어떤 동작 또는 상태 변
화를 나타내는 술어로도 쓰인다.
.
∈
19.2 지도학습 9