비대면 시대를 이끄는 챗봇 기술, 한 권의 책으로 만나다!
기초부터 꼼꼼하게 익히고 실무까지 유연하게 적용하는 챗봇 입문서
메디컬 챗봇을 개발/운영하는 스타트업 웨저에서 CTO(기술이사)를 맡고 있으며, 임베디드에서 웹 개발까지 다양한 기술 분야에 개발 경험을 갖고 있습니다. 챗봇 엔진을 처음 개발하면서 고생했던 경험들을 재료 삼아 관련 지식을 쉽게 전달하고자 책을 쓰게 되었습니다. 현재 더 많은 지식을 전달하기 위해 여러 권의 책을 준비하고 있습니다.
CHAPTER 1 챗봇 입문하기
1.1 챗봇의 이해
1.2 챗봇 활용 사례
__1.2.1 카카오 챗봇 사례
__1.2.2 대학병원 챗봇 사례
__1.2.3 제약회사 챗봇 사례
1.3 마치며
CHAPTER 2 파이썬 시작하기
2.1 파이썬 소개
2.2 파이썬 기본
__2.2.1 자료형
__2.2.2 파이썬 제어문
__2.2.3 함수
__2.2.4 클래스
__2.2.5 모듈
__2.2.6 예외 처리
__2.2.7 엑셀 파일을 읽고 쓰는 방법
2.3 데이터 분석을 위한 필수 라이브러리
__2.3.1 넘파이
__2.3.2 팬더스
__2.3.3 맷플롯립
2.4 마치며
CHAPTER 3 토크나이징
3.1 토크나이징 소개
3.2 KoNLPy
__3.2.1 Kkma
__3.2.2 Komoran
__3.2.3 Okt
__3.2.4 사용자 사전 구축
3.3 마치며
CHAPTER 4 임베딩
4.1 임베딩이란?
4.2 단어 임베딩
__4.2.1 원-핫 인코딩
__4.2.2 희소 표현과 분산 표현
__4.2.3 Word2Vec
4.3 마치며
CHAPTER 5 텍스트 유사도
5.1 텍스트 유사도 개요
5.2 n-gram 유사도
5.3 코사인 유사도
5.4 마치며
CHAPTER 6 챗봇 엔진에 필요한 딥러닝 모델
6.1 빠르게 케라스 정리하기
__6.1.1 인공 신경망
__6.1.2 딥러닝 분류 모델 만들기
__6.1.3 학습된 딥러닝 모델 사용하기
6.2 문장 분류를 위한 CNN 모델
__6.2.1 CNN 모델 개념
__6.2.2 챗봇 문답 데이터 감정 분류 모델 구현
__6.2.3 챗봇 문답 데이터 감정 분류 모델 사용
6.3 개체명 인식을 위한 양방향 LSTM 모델
__6.3.1 RNN
__6.3.2 LSTM
__6.3.3 양방향 LSTM
__6.3.4 개체명 인식
6.4 마치며
CHAPTER 7 챗봇 학습툴 만들기
7.1 MySQL 소개
7.2 파이썬으로 데이터베이스 연동하기
__7.2.1 데이터베이스 연결하기
__7.2.2 데이터 조작하기
7.3 챗봇 학습툴 만들기
__7.3.1 프로젝트 구조
__7.3.2 학습용 데이터베이스 설계 및 데이터 테이블 생성
__7.3.3 챗봇 학습 데이터 엑셀 파일 및 DB 연동
7.4 마치며
CHAPTER 8 챗봇 엔진 만들기
8.1 챗봇 엔진 소개
8.2 챗봇 엔진 구조
8.3 전처리 과정
8.4 단어 사전 구축 및 시퀀스 생성
8.5 의도 분류 모델
__8.5.1 의도 분류 모델 학습
__8.5.2 의도 분류 모듈 생성
8.6 개체명 인식 모델 학습
__8.6.1 개체명 인식 모델 학습
__8.6.2 개체명 인식 모듈 생성
8.7 답변 검색
__8.7.1 데이터베이스 제어 모듈 생성
__8.7.2 답변 검색 모듈 생성
8.8 챗봇 엔진 서버 개발
__8.8.1 통신 프로토콜 정의
__8.8.2 다중 접속을 위한 TCP 소켓 서버
__8.8.3 챗봇 테스트 클라이언트 프로그램
8.9 마치며
CHAPTER 9 챗봇 API 만들기
9.1 챗봇 API 소개
9.2 파이썬 Flask
__9.2.1 Hello Flask
__9.2.2 URI 동적 변수
__9.2.3 기본적인 REST API 서비스 구현
9.3 챗봇 API 서버 구현
9.4 마치며
CHAPTER 10 카카오톡 챗봇 만들기
10.1 카카오 아이 오픈빌더 소개
__10.1.1 카카오톡 채널 가입
__10.1.2 카카오 아이 오픈빌더 OBT 신청
__10.1.3 봇 생성
10.2 카카오톡 챗봇 연동
__10.2.1 시나리오와 블록
__10.2.2 스킬
10.3 스킬 사용하기
__10.3.1 스킬 서버 이해하기
__10.3.2 스킬 서버 만들기
__10.3.3 오픈빌더에서 스킬/블록 등록하기
__10.3.4 응답 타입별 JSON 포맷
10.4 챗봇 API 서버에 카카오톡 연동
__10.4.1 챗봇 API 서버 수정
__10.4.2 오픈빌더 폴백 블록 설정 및 스킬 연결
10.5 마치며
CHAPTER 11 네이버톡톡 챗봇 만들기
11.1 네이버톡톡 챗봇 플랫폼 소개
__11.1.1 네이버톡톡 가입
__11.1.2 챗봇 API 설정
11.2 네이버톡톡 Chat Bot API v1
__11.2.1 이벤트 명세
__11.2.2 메시지 타입 명세
__11.2.3 보내기 API 작성
11.3 챗봇 API 서버에 네이버톡톡 연동
__11.3.1 챗봇 API 서버 수정
11.4 마치며
APPENDIX A 개발 환경 구축
A.1 맥에서 파이썬 설치하기
A.2 윈도우에서 파이썬 설치하기
A.3 아나콘다 설치하기
A.4 CLI 환경에서 콘다로 가상 환경 만들기
A.5 기타 패키지 설치하기
A.6 PyCharm 설치 및 프로젝트 생성
APPENDIX B AWS에서 챗봇 구동 환경 만들기
B.1 EC2
B.2 RDS