+ 펴낸 책2019.06.03 11:04

[실체가 손에 잡히는 딥러닝, 기초부터 실전 프로그래밍]

기초 수학과 파이썬 코드를 따라만 하면 

신기하게 이해되는 신경망, 역전파, CNN 구현

아즈마 유키나가(我妻幸長) 지음 | 최재원 옮김

364쪽 | 26,000원 | 2019년 6월 18일 출간 | 180*235*18 | ISBN 9791189909024

판매처 [교보문고] [YES24] [알라딘] [인터파크] [반디앤루니스+ 전국 교보문고 매장

 

정오표: https://www.onlybook.co.kr/entry/deeplearing-errata 
독자문의: support (at) onlybook.co.kr

 

* 예제 소스코드 파일 다운로드:

DeepLearning_Examples.zip
1.82MB

 

딥러닝의 기초 지식과 수학부터 
파이썬을 활용한 실전 프로그래밍 구현까지, 
한 권으로 모든 것을 끝내는 
딥러닝 입문자를 위한 최고의 책!

지금까지 나왔던 다른 어떤 책들과도 달리, 딥러닝을 수식과 코드로서 매우 이해하기 쉽게 설명한다.

 

또한, 간결하고 이해하기 쉬운 예제 코드들이 하나 하나 모여 책의 마지막에 이르러 최종적으로 실전에서도 활용할 수 있는 완결된 딥러닝 코드를 완성함으로써, 독자가 성취감을 느끼며 끝까지 포기하지 않고 완독할 수 있다는 점은 이 책의 최대 강점이다.

 

이 책에서는 파이썬과 기초 수학부터 시작해 역전파(Backpropagation)와 컨볼루션 신경망(CNN)까지, 딥러닝의 필수 요소를 빠짐없이 자세하게 설명한다.

 

독자가 파이썬 프로그래밍을 직접 코딩하면서 차근차근 순서대로 공부해 나가다 보면 딥러닝의 기초를 완벽하게 습득할 수 있다.

 

[이 책의 구성]

 

1장 딥러닝이란

머신러닝과 인공지능, 딥러닝과의 관계에 대해 소개하며 그동안 인공지능이 걸어온 길을 간략하게 설명합니다. 저자가 뇌과학에 상당히 관심이 깊어 딥러닝을 뇌과학의 관점에서 바라보며 딥러닝과 뇌의 유사성에 대한 다양하고 흥미로운 이야기를 풀어 놓습니다.

 

2장 파이썬 개요

파이썬 문법과 주피터 노트북에 대한 핵심만 소개합니다. 여기서 핵심이라는 의미는 책 전체에 걸쳐 구현되는 딥러닝 코드에 필요한 사항에만 집중한다는 의미입니다. 따라서 당연히 파이썬 전체를 소개하는 책에 비해서는 다루는 범위가 좁습니다만, 책에 나오는 프로그래밍 코드를 따라가는 데 필요한 내용은 모두 설명하므로 파이썬에 익숙하지 않은 독자라도 단기 속성 과정을 배우는 것처럼 효과적입니다.

 

3장 딥러닝에 필요한 수학

2장과 마찬가지로 딥러닝을 이해하고 구현하는 데 필요한 핵심적인 수학만 소개합니다. 선형대수와 미분을 다루는데, 고교 과정을 이수한 독자들이라면 무리 없이 따라갈 수 있습니다. 이 부분은 눈으로만 읽지 말고 수능 공부할 때처럼 백지에 연필을 긁적여가며 수식을 따라 써 볼 것을 권장합니다. 선형대수는 파이썬 넘파이(NumPy)를 이용한 실습 코드를 제공하는데, 초보자라면 이 부분도 소홀히 하지 말고 반복적으로 연습하기 바랍니다.

 

4장 신경망

딥러닝의 배경 이론인 신경망을 소개합니다. 신경망의 원리, 뉴런(노드)으로 구성된 층(layer)의 연결 관계, 순전파와 역전파, 가중치와 편향(바이어스), 활성화 함수 등의 핵심 내용을 친절한 코드와 함께 설명합니다. 특히 신경망에서 가중치와 편향의 역할과 영향력을 실제 코드로 보여주는 부분은 매우 인상적입니다.

 

5장 역전파

역전파(Backpropagation)는 신경망에서 출력 결과와 실제 값의 오차를 줄여나가는 과정입니다. 이 과정에서 필요한 경사 하강법과 아다그라드(Adagrad), 아담(Adam)과 같은 다양한 최적화 알고리즘을 수식과 코드를 이용해 설명합니다.

 

6장 딥러닝 구현

딥(deep)이라는 단어 그대로 신경망에 층을 많이 쌓아 데이터를 깊이 학습하는 것이 딥러닝입니다. 이렇게 층을 많이 쌓으면 신경망의 성능이 좋아지지만 과적합, 기울기 소실과 같은 여러 문제도 발생합니다. 이런 문제들을 유명한 붓꽃(Iris) 데이터를 통해 실제로 해결하는 과정을 코드로 제시하기 때문에 직관적으로 이해하기 쉽습니다.

 

7장 컨볼루션 신경망(CNN)

이 책의 최종 목표지점입니다. 딥러닝이 혜성처럼 등장한 것도 이미지 인식 대회였듯이 이미지 분류 작업에서 딥러닝은 탁월한 성과를 내고 있습니다. 7장에서는 앞에서 배웠던 모든 내용을 다 활용하고, 이미지 처리에 필요한 컨볼루션, 필터, 채널, 배치사이즈까지 고려한 실용적인 프로그래밍 코드를 완성하는 단계입니다. 다른 장(章)에 비해 분량이 가장 많아 학습하는 동안 지칠 수도 있지만 모든 내용을 끈기 있게 따라가면 손글씨 숫자 이미지를 거의 정확하게 분류하는 딥러닝의 마술을 스스로 구현하고 이해하게 되며 이때까지의 고생을 한번에 보상받을 수 있을 것입니다.

 

8장 그 밖의 딥러닝 기술

최신 딥러닝 기술을 소개합니다. 현재 딥러닝이 어느 수준까지 발전했고 딥러닝의 미래가 어떤 모습일지 짐작할 수 있는 내용으로 채워져 있습니다. 기본 수준을 넘어서 더 높은 단계로 도약하기 위해 필요한 안내서 같은 느낌으로 매우 유익한 내용입니다.

 

[이 책의 주요 특징]

  • 딥러닝 프레임워크를 사용하지 않고 딥러닝의 알고리즘을 파이썬 프로그래밍 코드로 구현
  • 딥러닝을 구현하는 데 꼭 필요한 만큼의 핵심 파이썬 문법
  • 파이썬과 수치연산 라이브러리 넘파이(NumPy)를 이용한 프로그래밍 기초 지식
  • 미분, 선형대수 등 신경망을 이해하는 데 필요한 기초 수학 이론과 수식 코딩 원리
  • 단계별 실습을 통해 최종적으로 컨볼루션 신경망(CNN)을 구현하고 응용하는 목표에 도달
  • 독자들이 스스로 응용하고 더 수준 높은 코드로 발전할 수 있는 완전한 파이썬 코드 제공
  • 인간 뇌의 동작과 대응시킴으로써, 딥러닝의 작동 방식을 직관적으로 이해하기 쉽게 설명
  • 최신 딥러닝의 발전 현황과 미래에 대한 구체적인 기술과 사례 소개

[이 책의 독자 대상]

  • 머신러닝, 인공지능, 딥러닝에 대해 막연한 관심을 갖고 있지만 어떤 책으로 시작해야 좋을지 고민하는 학생 및 일반인, 타 분야의 개발자 등 이 분야에 입문하고 싶어하는 완전 초보자
  • 딥러닝에 대한 대략적인 개념은 알고 있으나 딥러닝의 역사와 이론적 배경, 수학적 논리를 더 구체적이고 자세하게 이해하고 싶은 사람
  • 딥러닝 알고리즘을 수식으로 명확하게 이해하고 이를 프로그래밍 코드로 구현하고 싶은데 이 모든 과정을 한 권의 책으로 해결하고 싶은 사람
  • 실용적인 딥러닝 코드를 작성해 업무나 현장에서 바로 적용해보고 더 높은 수준의 딥러닝을 구현하고 싶은 개발자

[지은이 소개]

아즈마 유키나가(我妻 幸長)

 

‘인간과 AI의 공존’을 미션으로 하는 주식회사 SAI-Lab의 대표이사로, AI 관련 교육과 연구 개발에 종사하고 있다. 토후쿠대학 대학원 이학연구과 수료 후 이학박사(물리학)를 취득했다. 인공지능(AI), 복잡계, 뇌과학, 특이점(singularity) 등에 관심이 많으며 프로그래밍/AI 강사로서 지금까지 오프라인에서 1000명 이상, 온라인에서는 2만 명에 가까운 인원을 지도했다. 세계 최대 교육 동영상 플랫폼인 유데미(Udemy)에서 ‘처음 시작하는 파이썬’, ‘실전 데이터과학과 머신러닝’, ‘모두의 딥러닝’, ‘모두의 AI 강좌’ 등을 강의하고 있다. 엔지니어로도 일하면서 VR, 게임, SNS 등 분야를 불문한 다양한 애플리케이션을 개발했다.

 

[지은이의 말]

한국에 계신 독자 여러분께,

저의 책 『실체가 손에 잡히는 딥러닝, 기초부터 실전 프로그래밍』에 관심을 가져주셔서 감사합니다. 이 책은 지금까지 나왔던 다른 어떤 책과는 달리 딥러닝을 매우 이해하기 쉽게 설명하는 책이라 자부합니다. 일본에서는 2018년 8월에 출간된 이후 지금도 많은 독자분이 읽고 있습니다.

 

딥러닝으로 대표되는 인공지능 기술은 전 세계인의 관심을 끌고 있으며 여러 기업과 공공기관에서 다방면에 걸쳐 활용 방법을 모색하고 있습니다. 그러나 대다수 사람들은 여전히 딥러닝이 배우기 어려운 분야라고 생각합니다. 이러한 장벽을 허물기 위해 이 책에서는 프로그래밍 언어 파이썬과 기초 수학부터 시작해 컨볼루션 신경망까지, 딥러닝에 필수적인 요소를 빠짐없이 자세하게 설명했습니다. 차근차근 순서대로 공부해 나가다 보면 딥러닝의 기초를 확실하게 습득할 수 있도록 구성했습니다.

 

오늘날 인공지능은 배울 만한 가치가 가장 큰 기술 중 하나이며, 기술적인 측면뿐만 아니라 미래에 대한 상상력을 기르기 위한 교양으로서도 의미가 큽니다. 한국에 계신 독자분들이 이 책을 통해 인공지능에 대한 자신만의 생각을 기를 수 있다면 저자로서 매우 기쁘겠습니다. 그럼 모두 저와 함께 딥러닝의 세계를 탐험해 봅시다!

 

[옮긴이 소개]

최재원

 

일본 게이오 대학원을 졸업하고 아주대 대학원에서 학습분석(Learning Analytics)으로 박사 학위를 취득했다. 대학 졸업 후 7년간 디지털 엔터테인먼트 업계에서 3D 영상, 게임, VR 프로듀서로 종사했고 대학원 진학 후 데이터 사이언스를 연구했다. 대학에서 통계와 데이터 사이언스 과목을 강의했으며 현재는 아주대학교 교수학습개발센터/평가인증센터에서 교육•학습 데이터 분석 업무를 담당하고 있다. XGBoost, 딥러닝, 문항반응이론(IRT), 지식공간(Knowledge Spaces) 등의 알고리즘을 이용한 학습부진 위험학생 조기 예측, 적응형 학습(adaptive learning) 등을 연구 중이다. 

 

번역서로 『디지털 게임 교과서』(2012), 『유니티 입문』(2012), 『데이터 시각화, 인지과학을 만나다』(이상 에이콘출판, 2015), 『대학혁신을 위한 빅데이터와 학습분석』(시그마프레스, 2019)이 있으며, 전자책으로 출간된 『VR, 가까운 미래』(리디북스, 2016)를 집필했다. 

 

[옮긴이의 글]

머신러닝과 인공지능에 대한 기본적인 배경 지식을 갖추고 딥러닝의 수학적인 논리 전개를 정확하게 이해하면서 이를 파이썬으로 구현하는 과정은 결코 쉽지 않습니다. 머신러닝과 딥러닝은 이론을 이해하는 것 못지 않게 직접 구현해보며 공부하는 것이 매우 중요하기 때문입니다.

 

그동안 딥러닝을 처음 접하는 독자들을 대상으로 하는 훌륭한 국내서와 번역서들이 많이 출간되었지만 이론과 실습의 균형이라는 측면에서 조금은 아쉬운 면이 있었습니다. 딥러닝을 구성하는 이론을 다양하게 설명하는 데 치중하는 느낌도 들고, 쉬운 이해를 강조하다 보니 실전 프로그래밍에서 필요한 요소들이 많이 생략된 경우도 있었습니다. 예제로 제시되는 파이썬 코드는 체계적으로 구조화되지 못해 독자들이 직접 전체 딥러닝 코드를 구현하려고 하면 여전히 막막하다는 생각이 드는 경우도 많았을 것이라고 생각합니다.

 

이러한 이유로 『실체가 손에 잡히는 딥러닝, 기초부터 실전 프로그래밍』은 기존 책들과는 뚜렷이 차별되는 매력과 장점이 돋보입니다. 저자가 서문에서 “직접 손을 움직여가며 공부할 수 있도록” 저술했다고 밝혔듯이, 독자가 파이썬 프로그래밍을 직접 코딩하면서 딥러닝을 명확하게 이해하고 익힐 수 있게 구성되었다는 점이 이 책만의 탁월한 장점입니다.

 

간결하고 이해하기 쉬운 예제 코드들이 하나 하나 모여 책의 마지막에 이르면 최종적으로는 실전에서도 활용할 수 있는 완결된 딥러닝 코드를 완성하게 됩니다. 이런 코드를 차근차근 따라하며 실습하다 보면 딥러닝을 직관적이고 구체적으로 이해할 수 있습니다. 이처럼 간결하고 이해하기 쉬운 예제 코드는 물론, 딥러닝의 배경 이론과 수학적인 전개 과정에 대한 설명도 불필요한 군더더기 없이 매우 깔끔합니다.

 

이 책에서는 독자가 최종 단계인 ‘컨볼루션 신경망(CNN)’(7장)을 스스로 구현할 수 있도록 아무런  딥러닝 프레임워크를 사용하지 않고 레고 블록을 쌓듯이 한 단계씩 기본적이고 핵심적인 내용을 세심하게 설명하며 이끌어갑니다.

모든 장(章)의 내용은 체계적이고도 유기적으로 서로 연결되어 있습니다. 앞에서 배운 사항을 뒤에서 적용하고, 지금 배우는 내용이 앞에서 배운 것과 어떻게 연결되는지, 어느 부분에서 배웠는지를 친절하게 상기시킵니다. 그렇게 그물처럼 촘촘히 연결된 책의 내용을 1장부터 끝까지 좇아가다보면 어느샌가 딥러닝의 실체가 눈앞에 선명하게 드러납니다. 한마디로 이론과 실습이 절묘하게 조화된 훌륭한 책이라고 생각합니다.

 

번역하는 내내, 이 책은 마치 결승선을 향해 망설임 없이 질주하는 경주마 같다고 느꼈습니다. 아마 독자들도 책을 읽는 동안 경주마 위에 올라타 장애물을 하나씩 뛰어넘어 마침내 목표점을 통과하는 것과 같은 짜릿한 성취감을 맛볼 수 있을 것이라고 생각하며, 또 그렇게 될 수 있기를 진심으로 응원합니다.

 

 

[차례]

[1장] 딥러닝이란

1.1  지능이란 무엇인가

1.2  인공지능(AI)

1.3  머신러닝

1.4  신경망

1.5  딥러닝 개요

1.6  인공지능과 딥러닝의 역사

__1.6.1  제1차 인공지능 전성기: 1950년대~1960년대

__1.6.2  제2차 인공지능 전성기: 1980년대~1990년대 후반

__1.6.3  제3차 인공지능 전성기: 2000년대 이후

 

[2장] 파이썬 개요

2.1  파이썬을 사용하는 이유

2.2  아나콘다와 주피터 노트북 활용

__2.2.1  아나콘다 다운로드

__2.2.2  아나콘다 설치

__2.2.3  주피터 노트북 실행

__2.2.4  주피터 노트북 사용

__2.2.5  노트북 종료

2.3  파이썬 문법

__2.3.1  변수와 변수형

__2.3.2  연산자

__2.3.3  리스트

__2.3.4  튜플

__2.3.5  딕셔너리

__2.3.6  if문

__2.3.7  for문

__2.3.8  while문

__2.3.9  내포

__2.3.10  함수

__2.3.11  변수의 범위

__2.3.12  클래스

2.4  넘파이

__2.4.1  넘파이 임포트

__2.4.2  넘파이 배열

__2.4.3  배열을 생성하는 다양한 함수

__2.4.4  reshape를 이용한 형태 변환

__2.4.5  배열 연산

__2.4.6  브로드캐스트

__2.4.7  원솟값에 접근

__2.4.8  슬라이싱

__2.4.9  축과 transpose 메소드

__2.4.10  넘파이의 함수

2.5  맷플롯립

__2.5.1  모듈 임포트

__2.5.2  그래프 생성

__2.5.3  그래프 디자인

__2.5.4  산포도 표시

__2.5.5  이미지 표시

 

[3장] 딥러닝을 위한 수학

3.1  수학 기호

__3.1.1  시그마(Σ)로 총합계 표시

__3.1.2  자연상수 e

__3.1.3  자연로그 log

3.2  선형대수

__3.2.1  스칼라

__3.2.2  벡터

__3.2.3  행렬

__3.2.4  텐서

__3.2.5  스칼라와 행렬의 곱셈

__3.2.6  각 원소 간의 곱셈

__3.2.7  행렬 곱

__3.2.8  행렬 전치

3.3  미분

__3.3.1  상미분

__3.3.2  미분법의 기본 공식

__3.3.3  연쇄법칙

__3.3.4  편미분

__3.3.5  전미분

__3.3.6  다변수의 연쇄법칙

3.4  정규분포

 

[4장] 신경망

4.1  신경세포 네트워크

4.2  신경세포의 모델화

4.3  뉴런의 네트워크화

4.4  회귀와 분류

__4.4.1  회귀

__4.4.2  분류

4.5  활성화 함수

__4.5.1  계단 함수

__4.5.2  시그모이드 함수

__4.5.3  tanh

__4.5.4  ReLU

__4.5.5  Leaky ReLU

__4.5.6  항등 함수

__4.5.7  소프트맥스 함수

4.6  신경망 구현

__4.6.1  단일 뉴런 구현

__4.6.2  가중치와 편향의 영향

__4.6.3  신경망 구현

__4.6.4  각 층의 구현

__4.6.5  신경망(회귀)

__4.6.6  신경망의 표현력

__4.6.7  신경망(분류)

 

[5장] 역전파

5.1  학습 규칙

__5.1.1  헵의 규칙

__5.1.2  델타 규칙

5.2  역전파란?

5.3  훈련 데이터와 테스트 데이터

5.4  손실 함수

__5.4.1  오차제곱합

__5.4.2  교차 엔트로피 오차

5.5  경사 하강법

__5.5.1  경사 하강법 개요

__5.5.2  기울기 구하는 방법

__5.5.3  출력층 기울기

__5.5.4  출력층에서 입력값 기울기

__5.5.5  은닉층 기울기

__5.5.6  기울기를 구하는 식 정리

__5.5.7  회귀 문제에서 기울기 구하는 방법

__5.5.8  분류 문제에서 기울기 구하는 방법

5.6  최적화 알고리즘

__5.6.1  최적화 알고리즘 개요

__5.6.2  확률적 경사 하강법

__5.6.3  모멘텀

__5.6.4  아다그라드

__5.6.5  RMSProp

__5.6.6  아담

5.7  배치 사이즈

__5.7.1  에포크와 배치

__5.7.2  배치 학습

__5.7.3  온라인 학습

__5.7.4  미니 배치 학습

5.8  행렬 연산

__5.8.1  행렬의 형식

__5.8.2  행렬을 이용한 순전파

__5.8.3  행렬을 이용한 역전파

5.9  회귀 문제에서의 역전파 구현

__5.9.1  회귀 예(sin 함수의 학습)

__5.9.2  출력층 구현

__5.9.3  은닉층 구현

__5.9.4  역전파 구현

__5.9.5  역전파 구현 전체 코드(회귀)

__5.9.6  실행 결과

5.10  분류 문제에서의 역전파 구현

__5.10.1  분류 사례(소속 영역 학습)

__5.10.2  각 층의 구현

__5.10.3  역전파 구현 전체 코드(분류)

__5.10.4  실행 결과

 

[6장] 딥러닝 구현

6.1  다층화에 따른 문제

__6.1.1  국소 최적해 함정

__6.1.2  과적합

__6.1.3  기울기 소실

__6.1.4  장기간의 학습 시간 문제

6.2  문제 해결 방안

__6.2.1  하이퍼 파라미터 최적화

__6.2.2  규제화

__6.2.3  가중치와 편향 초깃값

__6.2.4  조기 종료

__6.2.5  데이터 확장

__6.2.6  데이터 전처리

__6.2.7  드롭아웃

6.3  붓꽃 품종 분류

__6.3.1  붓꽃 데이터 세트

__6.3.2  훈련 데이터와 테스트 데이터

__6.3.3  신경망 구성

__6.3.4  학습에 관련된 각 설정

6.4  딥러닝 구현

__6.4.1  데이터 입력과 전처리

__6.4.2  각 층의 구현

__6.4.3  신경망 구축

__6.4.4  미니배치법 구현

__6.4.5  정답률 측정

__6.4.6  붓꽃 데이터 품종 분류를 위한 전체 코드

__6.4.7  실행 결과

__6.4.8  과적합 방지를 위한 대책

__6.4.9  아다그라드 구현

__6.4.10  드롭아웃 구현

__6.4.11  과적합 방지 대책의 결과

__6.4.12  품종 분류

 

[7장] 컨볼루션 신경망(CNN)

7.1  컨볼루션 신경망(CNN)의 개요

__7.1.1  시각 처리 체계

__7.1.2  CNN 구조

__7.1.3  컨볼루션 층

__7.1.4  풀링층

__7.1.5  전결합층

__7.1.6  패딩

__7.1.7  스트라이드

__7.1.8  CNN 학습

__7.1.9  변수 정리

7.2  im2col과 col2im

__7.2.1  im2col과 col2im의 개요

__7.2.2  im2col 알고리즘

__7.2.3  간단한 im2col 구현

__7.2.4  배치와 채널을 고려한 실전 im2col 코드

__7.2.5  col2im 알고리즘

__7.2.6  col2im 구현

7.3  컨볼루션층 구현

__7.3.1  구현 개요

__7.3.2  순전파

__7.3.3  역전파

7.4  풀링층 구현

__7.4.1  구현 과정 개요

__7.4.2  순전파

__7.4.3  역전파

7.5  전결합층 구현

7.6  컨볼루션 신경망 구현

__7.6.1  사용 데이터 세트

__7.6.2  구축할 신경망

__7.6.3  CNN 코드

__7.6.4  실행 결과

__7.6.5  컨볼루션층의 시각화

__7.6.6  컨볼루션층 효과

7.7  더 깊은 신경망

__7.7.1  신경망 구축

__7.2.2  실행 결과

 

[8장] 그 밖의 딥러닝 기술

8.1  순환 신경망(RNN)

__8.1.1  RNN의 개요

__8.1.2  LSTM

__8.1.3  GRU

8.2  자연어 처리

__8 2.1  형태소 분석

__8.2.2  단어 임베딩

8.3  생성 모델

__8.3.1  생성적 적대 신경망(GAN)

__8.3.2  VAE

8.4  강화학습

__8.4.1  강화학습 개요

__8.4.2  심층 강화학습

8.5  GPU 활용

__8.5.1  GPU란

__8.5.2  딥러닝에서 GPU 활용

8.6  딥러닝 프레임워크

8.7  딥러닝의 미래

 

Posted by 책만

댓글을 달아 주세요

+ 펴낸 책2017.10.23 23:21

[왓슨을 이용한 인공지능 서비스 입문]

챗봇, 이미지 인식, 음성 인식, 자연어 서비스 등을 위한 왓슨 API의 이해와 활용

이노우에 켄이치 지음 | 마창근, 김남근 옮김 

272쪽 | 22,000원 | 2017년 10월 25일 출간 | 180*235 | ISBN 9791196203702

판매처 [교보문고] [YES24] [알라딘] [인터파크] [반디앤루니스] + 전국 교보문고, 반디앤루니스 매장

서: 初めてのWatson: APIの用例と実践プログラミング

자료실: https://github.com/Charlesma/Watson_Begin (4장과 6장의 참고자료 수록)


어려운 수식이나 이론 없이도 손쉽게 인공지능 앱을 만들 수 있다!

왓슨 무료 평가판으로 쉽고 빠르게 만들어보는 인공지능 서비스 맛보기

개발자 팀을 꾸려 직접 데이터를 준비하고, 학습하고, 튜닝하고, 알고리즘을 이해하고 개선하는, 수많은 어려운 작업을 꼭 해야 할까? 개념적인 서비스 사례 기획, 최소한의 데이터 준비와 학습 과정만으로 손쉽게 인공지능 서비스를 만들 수는 없을까? IBM 왓슨(Watson)을 이용해 인공지능에 대한 개요를 이해하고 간단한 인공지능 서비스를 만들어보고 싶은 사람들을 위한 기초 실습서가 출간됐다. 인공지능 서비스에 관심이 많은 개발자, 자사 제품에 인공지능 서비스를 도입하고자 하는 CEO와 기획자가 꼭 읽어야 할 책으로, 하나씩 따라 해보면서 쉽게 이해할 수 있도록 200여 개에 달하는 스크린샷과 그림, 친절한 설명이 가득하다.

이 책에서는 인공지능과 왓슨이 무엇인지 알아보고 클라우드 서비스인 IBM 블루믹스 무료 체험판과 왓슨을 통해 간단한 챗봇과 얼굴 인식, 음성 인식 앱 등을 만들어본다.


이 책의 독자대상

인공지능 서비스 도입에 관심이 있는 기업의 IT기획자, 직접 만들어보고 싶은 IT엔지니어는 물론, 간단한 코딩 상식이 있는 일반인과 학생

이 책의 구성

1장에서는 여러분이 왓슨에 대해 궁금한 점을 하나씩 알아가본다. 2장에서는 인공지능 연구의 긴 역사 속에서 왓슨이 어떤 위상을 차지하고 있는지를 설명한다. 2장을 읽으면 왓슨이 무엇인지에 대한 지식을 쌓을 수 있을 것이다.

그러나 왓슨의 본질을 이해하기 위해서는 직접 사용해 보는 것이 최선이다. 3장과 4장에서는 (왓슨이 API로 제공되는) IBM 블루믹스에 접속해 왓슨을 직접 사용해 본다. 블루믹스는 처음 등록한 날로부터 30일간 무료로 사용할 수 있고, 그 이후에도 조건에 따른 무료 옵션이 계속해서 제공되니 이 책을 가이드 삼아 부담 없이 사용해보기 바란다.

5장과 6장에서는 왓슨을 사용해 앱을 직접 개발해보는 실습 내용을 다룬다. 기초적이고 단순한 앱을 제작하는 내용을 다루지만 직접 만들어봄으로써 자신의 아이디어가 반영된 더 향상된 앱을 개발해볼도 수 있을 것이다. 7장에서는 지은이가 생각하는 다양한 적용 아이디어에 대한 방향을 제시하므로 참고하기 바란다.

마지막으로, 한국어판을 위해 옮긴이가 직접 작성한 부록에서는 IBM 왓슨과 블루믹스의 무료 사용 정보를 정리해뒀다.

 

이 책에서 다루는 내용

- 인공지능의 역사와 발전과정

- IBM 왓슨은 무엇이며 어떻게 다른가

- 왓슨의 주요 API 소개와 서비스 맛보기

- 간단한 음성 인식, 자연어 분류, 대화, 문서 변환 서비스 맛보기

- 트위터 챗봇 서비스 만들기

- 얼굴 인식 애플리케이션 만들기

- 왓슨 인공지능의 미래와 전망

 

[추천의 글]

국내에 인공지능 관련 서적들이 많이 출시되고 있지만 대부분 기술적인 내용을 중심으로 인공지능 전문가가 아니면 이해하기 쉽지 않은 내용이 대부분인 현실이다. 이러한 상황에서 저자는 권의 책에서공지능에 대한 전체적인 이해의 프레임워크를 제공하고, 독자들이 궁금해 하는 인공지능에 대한 근본적인 질문에 명확한 답변을 전해준다. 특히 이 책의 역자는 IBM 인공지능 플랫폼인 왓슨 한글화 진행 검수 과정에 직접 참여하며 느낀 생생한 경험과 지식에 기반을 두고 국내 독자가 좀 더 이해하기 쉽게 번역하는 데 주력했다. 인공지능의 수준과 이를 활용해 적용할 있는 사례들에 대한 구체적인 가이드, 그리고 미래의 발전방향을 제시하는 측면에서 매우 값진 결과물이다.

- 이문진 / SK() Aibril사업본부장


현존하는 다양한 인공지능 서비스 중 한 종류인 왓슨은 기존 머신러닝 주류의 기술과는 분명한 차별적 영역이 존재하는 기술이며, 상용화된 최초의 인공지능 플랫폼 기반 서비스다. 이 점을 감안할 때, 왓슨의 탄생부터 시작해서 여러 AI와의 다른 점, 개별 API의 상세한 설명을 한 권의 책에서 만날 수 있는 것은 개발자들에게 많은 도움이 될 것이다. 특히 왓슨의 한글 API에 대해서도 최초로 소개하는 책이라 더욱 반가운 마음이 든다.

- 장현기 / 신한은행 디지털전략본부장 


오늘날 인공지능은 학계와 기업에서 가장 각광받는 기술 분야다. 인공지능과 관련된 서비스를 개발하는 데 무엇보다도 중요한 요소는 데이터의 학습과정을 통해 서비스 이용자의 의도를 얼마나 정교하게 기계적으로 판단할 있느냐 하는 인지 능력이다. IBM 스스로 왓슨 플랫폼이 이러한 인지 능력에 초점을 코그니티브 컴퓨팅 플랫폼이라 말한다.

대화글, 이미지, 소셜미디어 등의 분석 데이터를 학습시키고 이를 통해 사용자가 말하는 내용에 어떤 의도가 있는지, 카메라로 인식된 이미지가 어떤 사물인지, 또는 사용자가 정의한 이미지인지 아닌지를 가려내고, 소셜미디어상의 데이터로 이용자의 성향을 알아내는 데에 초점을 두어 개발된 플랫폼이라 있다. 실제로도 직접 왓슨 플랫폼을 사용해 이미지 인식, 대화 서비스 등을 만들어 보았을 이미지 구분과 대화 의도 파악 등에탁월한 성능을 발휘했다.

책은 이러한 인공지능 서비스 개발에 관심 있는 분들이 서비스를 빠르게 만들어볼 있도록 도움을 주는 내용으로 구성되어 있다. 책에 설명된 내용을 따라 하면 간단한 챗봇 서비스 정도는 쉽게 만들 있다. 책에 포함된 왓슨 플랫폼 서비스들만으로도 전반적인 인공지능 관련 서비스 개발 분야들을 충분히 다뤄볼 있으며, 특히 실무에 적용하려는 분들께도움이 것이다.

- 김기남 / ()이마트 S-LAB 테크니컬 프로젝트 매니저

 

2011 IBM의 인공지능 왓슨이 <제퍼디!>라는 미국 퀴즈쇼에서 사람을 상대로 승리하면서 인공지능 분야에 가장 공격적으로 뛰어든 후, 최근에는 미국의 구글과 중국의 바이두가 인공지능 기술 개발에서 치열한 경쟁을 벌이고, 저마다 인공지능 관련 오픈소스를 공개했다인공지능 시대가 활짝 열리고 있는 이 시점에 왓슨 최고의 참고서로 불려도 손색이 없는 한국어판의 출간을 축하한다. 왓슨에 대한 영문 강의 자료와 튜토리얼은 손쉽게 구할 수 있지만, 쉽고 체계적으로 접근할 수 있는 국문 자료는 아직 많이 부족한 상황에서 왓슨 국문 자료에 대한 지적 갈증을 해소하는 데에는 이만한 책이 없을 것이다.

이 책에서는 왓슨이 제공하는 여러가지 API를 통해 인공지능의 동작 원리를 쉽게 배우고, 이를 토대로 인공지능 서비스를 직접 구축해 볼 수 있다. 인공지능에 대한 기초 지식이 없는 이라도 책의 내용을 따라 하다 보면, 인공지능 서비스에 대한 감을 잡을 수 있을 것이기에 이 책은 인공지능에 관심이 있는 개발자와 학생들에게 좋은 길잡이가 될 것이다.

마지막으로, 일본 책을 옮긴 것이어서 대부분 일본어 중심으로 되어 있던 많은 API 예제를 한글로 새롭게 재창조해준 역자의 노력에 박수를 보낸다

- 최재철 / SK() Aibril 플랫폼팀 수석, 과학영재를 만드는 아두이노 교실 저자


[지은이 소개]

이노우에 켄이치(井上研一)

일본 도쿄의 나카노 구에서 활동하고 있는 IT코디네이터 겸 IT엔지니어다. 1979년 후쿠오카 현 키타큐슈 시에서 태어났다. 1996년부터 웹사이트 구축, 앱 개발을 시작했으며 잡지에 다수의 글을 기고하고 있다. 일본 중견 SI회사와 컨설팅회사 등을 거쳐 2013년 아르티잔 엣지 합동회사(현재는합동회사 이노우에 켄이치 사무소로 상호가 바뀜)를 설립해 대표 겸 CEO직을 맡고 있다. 기술 자체보다 기술이 사회에 미치는 영향에 흥미를 갖고 IT와 비즈니스가 동시에 필요한 곳을 찾아 활동 중이다.

고객 기업과의 프로젝트에 참가하는 한편, 비정기적 기고와 집필 활동도 적극적으로 하고 있으며 꾸준히 자신의 블로그(https://inoccu.com)도 운영한다. 2013년부터 왕초보 전문 IT학원인 테크 가든 스쿨(Tech Garden School)에서 강의를 하고 있으며 최근에는 어린이 프로그래밍 교육 활동도 시작했다.

 

[지은이의 말]

이 책은 왓슨(Watson)을 이용해 간단한 인공지능 서비스를 만들어보고 싶은 사람들을 위한 안내서다. 먼저 왓슨이 무엇인지 알아보고 클라우드 서비스인 IBM 블루믹스(Bluemix)의 무료 체험판을 통해 왓슨을 사용해본 다음, 간단한 챗봇과 얼굴 인식 앱을 직접 만들어 볼 것이다. 주요 독자대상은 IT엔지니어들이지만, 자바스크립트를 다룰 줄 아는 사람이라면 일반 직장인이나 학생들도 어렵지 않게 이 책을 읽고 활용해 볼 수 있다.

이 책에서는 수식이나 그래프, 인공지능에 대한 어려운 이론이나 설명은 나오지 않는다. 왓슨을 사용하는 데 복잡한 이론은 전혀 필요치 않기 때문이다. 왓슨은 일반 소프트웨어 엔지니어가 손쉽게 사용할 수 있는 도구다. 적어도 이 책에서 다루는 왓슨은 학술 연구를 목표로 한 것이 아니며 직접 사용해보는 데 중점을 두었으므로 독자들이 향후 새로운 서비스를 개발하는 데 좋은 소재를 제공해 줄 것이다.

실제로 나 자신도 인공지능 연구자라거나 왓슨 관계자가 아니다. 다시 말해 사용자의 눈높이에 맞춰 왓슨을 미리 체험해 본 경험을 독자들에게 전달하고자 이 책을 집필했다. 이 책의 내용을 하나씩 따라하다 보면 왓슨이 어떤 것인지 자연스레 이해하게 될 뿐만 아니라이렇게 사용해 보면 어떨까?’ 하는 아이디어도 떠오를 것이다.

 

[옮긴이 소개]

마창수

학부에서 정보통신공학을 전공하고 대학원에서는 인공지능을 전공햇다. IMF로 어렵던 시절 IT 업계에 입문해 현재까지 약 18여 년에 이르고 있다.

경력 초기에는 주로 C/C++ 등을 이용한 다양한 윈도우 애플리케이션과 알고리즘 개발에 전념하다가 IT엔지니어에게 프로그램 개발 능력뿐 아니라 기술 산업에 대한 전문성도 중요하다는 점을 깨닫고 당시 스마트폰 확산으로 붐 업이 된 위치 기반 서비스(Location Base Service, LBS)에 참여해 세계 각국 디지털 지도 데이터를 다루는 일에도 종사했다. 이후 기술 트렌드 및 산업 영역에 대한 역량을 확대하기 위해 ITS(Intelligence Transport System), 그린(Green) IT의 에너지관리시스템(Energy Management system, EMS), 빅데이터, 클라우드, IoT를 활용한 원격검침시스템(Automatic Meter Reading, AMR) 등 다양한 산업 분야에 대한 프로젝트와 IT 기술 기획에 참여했다.

현재는 SK에서 여러 산업 분야에 인공지능을 전파하기 위해 Aibril을 통한 인공지능 기술 도입을 지원하고 있으며 IBM 왓슨의 한국어 서비스를 도입하고 확장하는 업무를 담당하고 있다. ‘2016 학술 부문 세종도서로 선정된 『과학 영재를 만드는 아두이노』(에이콘출판, 2015)를 공동 저술했다.

 

김남근

2005년부터 2007년까지 3년간동경비디오페스티벌한국 작품 예비심사 통역을 담당했다. 당시 매년 100에서 200여 편에 이르는 한국작품을 통역하는 심사에 참여했으며, 동경의 대학부설 일본어학교 홈페이지를 한국어로 번역했다.

2009년에는 NHK BS(위성)TV 생방송 다큐멘터리 <지구 아고라> AD 업무를 하며 지구촌 구석구석의 오지 탐방 등을 통해 인간과 자연과 환경에 대한 중요성을 다시 한 번 깨닫는 계기가 되었다.

2011년 동일본 대지진으로 인해 한국으로 귀국해 의약부외품 회사 일본관련 업무 및 마케팅을 담당하며 시장 유통(온라인 포함) 등에 관심을 가지게 되었다. 현재는 물론앞으로의 생활에 크게 영향을 미치는 모바일 및 빅데이터 같은 IT와 소비자의 구매 분석 등에 관심이 많다.

 

[옮긴이의 말]

어느새 2017년 하고도 9월이 지나가고 있다. 기술의 흐름이 참 빠르다는 생각이 든다. 뉴스처럼 기술도 스쳐 지나가듯이 새로운 기술들이 쏟아져 나온다. 돌이켜 보면 정말 새로운 기술인가 헛갈리기도 한다. 빅데이터, 클라우드, IoT, AI 등 모두가 처음 등장한 기술들도 아니다. 마치 패션의 유행이 사이클을 타듯이 기술들도 순환하는 듯하다. 분산 컴퓨팅이 클라우드라는 이름으로, 유비쿼터스가 IoT라는 이름으로, AI는 기술 요소만 딥러닝의 대세로 바뀌었을 뿐 돌고 돈다. 어찌 보면 기술도 기계(하드웨어 성능 발전과 가격 하락)와 기름(오픈소스)이 버무려져 선순환되고 있는 것 같다. 두 요소의 성숙도가 어느 수준에 도달하고 나서부터는 기술의 발전 속도가 감당하기 힘들 정도로 빨라지고 있다. 예전에는 기술 트렌드를 따라 갈 수 있다고 여겼다면, 요즘은 뉴스에서 기사 보듯이 새로운 기술들이 쏟아진다.

인공지능도 두 가지 재료를 만나 크게 성장하고 있다. 돌고 도는 기술이지만 한 바퀴 돌 때마다 이전에는 하지 못했던 한계를 한꺼풀씩 벗음으로써 새로운 기대감을 갖게 한다. 그러다가 기대와는 다른 기술적 한계에 다시 한 번 실망하고 다음번 싸이클로 넘어가기도 한다.왓슨은 운 좋게도 그러한 기술적 발전의 사이클에 주기가 맞아 많은 기대와 우려를 한 몸에 받고 있다. 하지만 한편, 왓슨은 기술뿐 아니라 서비스와 브랜드로서 포지션을 하고 있다. 기술적 한계에 대한 검토도 중요하지만 사용자 입장에서는 무엇을 할 수 있을까에 집중하려고 한다. 왓슨은 서비스에 집중한다. 인공지능인지 의심이 갈 정도로 기술이 외부에 드러나 있지 않고 서비스를 노출한다. 오히려 이러한 점이 고객이 활용에만 집중할 수 있도록 도와준다. 설치도 필요 없도록 클라우드로만 서비스를 제공하므로, 고객은 복잡한 고민을 뒤로 하고 서비스에 더욱 집중할 수 있다. 엔지니어나 전문가가 아니어도 얼마든지 왓슨을 사용해 볼 수 있다. 이것이 왓슨의 가장 큰 장점일 테다. 부족한 점에 아쉬워 하기보다 할 수 있는 것에 집중한다면 생각지 못한 재미를 비즈니스에 녹일 수 있을 것이다.

긴 여름이 지나고 이제 날씨도 점점 싸늘해지고 있다. 생각보다 번역 기간이 오래 걸렸다. 단순 번역으로 생각하고 시작한 일이 거의 새 책을 쓰는 만큼의 노력이 들어갔다. 모쪼록 이 책이 다양한 독자들에게 조금이나마 인공지능과 왓슨을 이해시키는 데 도움이 되기를 희망한다.

- 마창수

 

무수히 많은 정보가 축적되는 시대다. 이러한 정보와 데이터를어떻게 분류하고 활용할 것인가하는 문제는 지금도 많은 사람들이 연구하는 미션일 것이다. 널려 있는 너무나 많은 정보로 인해 더 많은 데이터를 수집하고 만들어내고 있는 것은 아닌지 참 혼란스럽기도 하다. 이러한 수고를 덜어주기 위한 일환으로 인공지능이 앞으로 정보의 활용도를 더욱 높여주지 않을까 하는 기대도 든다.

한편, 인공지능 생활화에 앞서 도덕적, 사회적 측면에서의 권리와 비판 등 순기능 못지 않게 해결해야 할 과제와 역기능도 많다. 하지만 지금도 세상은 급속히 변하고 있으며, 그 안에서 인공지능은 IoT, 빅데이터 등을 기반으로 발전이 더욱 가속화될 것이며, 앞으로도 모든 분야에 활용될 것이다. 인간은 그 생활영역 안에서 삶을 영위해야 하므로, 인공지능은 인간의 삶을 더욱 여유롭고 윤택하게 해주기 위한 도구로서 우리가 더욱 행복하고 인간다운 삶을 살 수 있게 도와줄 것이라 기대한다.

- 김남근

 

[차례]


1 왓슨을 이해하기 위한 6가지 질문

_1.1 왓슨은 인공지능인가

_1.2 왓슨으로 무엇을 있을까

_1.3 왓슨을 도입한 사례는 바로 재현 가능한가

_1.4 왓슨은 어떻게 동작할까

_1.5 왓슨을 간단히 사용해 있을까

_1.6 한국어 서비스를 지원하나

 

2 인공지능이란 무엇인가?

_2.1 인공지능의 역사

_2.2 현대의 인공지능: 3 인공지능

_2.3 왓슨과 인공지능

_2.4 왓슨과 타사 인공지능 서비스 비교

 

3 왓슨 체험해 보기

_3.1 블루믹스란

_3.2 블루믹스의 계정 생성

_3.3 음성 인식 서비스 맛보기

_3.4 자연어 분류 서비스 맛보기

 

4 왓슨의 주요 서비스

_4.1 왓슨 API 개요

_4.2 왓슨 서비스를 사용하기 위한 준비사항

_4.3 자연어 분류

_4.4 검색 평가

_4.5 문서 변환

_4.6 대화 서비스

_4.7 음성 인식과 음성 합성

_4.8 이미지 인식

_4.9 밖의 왓슨 API

_4.10 왓슨의 기타 서비스

 

5 챗봇 만들기

_5.1 노드레드

_5.2 왓슨 서비스를 이용한 트위터 챗봇

_5.3 NLC R&R 준비

_5.4 노드레드로 챗봇 개발

_5.5 추가 기능

 

6 이미지 인식 애플리케이션 만들기

_6.1 이미지 인식

_6.2 하이브리드 모바일 앱 개발 툴

_6.3 얼굴 인식 개발

 

7 왓슨의 미래

_7.1 왓슨의 활용 가능성

_7.2 스스로 지능 올리기

_7.3 두뇌 연결하기

_7.4 인지 컴퓨팅

 

[한국어판 특별 부록] IBM 왓슨과 블루믹스 무료 사용 정보

 



Posted by 책만

댓글을 달아 주세요