SlideShare ist ein Scribd-Unternehmen logo
1 von 50
Downloaden Sie, um offline zu lesen
1시간만에 만드는 음성인식 인공지능
챗봇
정명훈, Google Cloud
2
목차
● 챗봇의 원리
● 어떤 챗봇을 만들까? 스케치
● 데이터 모으기
● 대화하는 법 가르치기
● 똑똑하게 만들기
● 음성 지원 및 다양한 채널
3
챗봇의 원리
4
챗봇의 원리
● 챗봇이란?
○ 채팅과 로봇의 합성어
○ 인공지능을 기반으로 사람과 대화를 나누는 프로그램
5
챗봇의 원리
챗봇 인공
지능
=
6
챗봇의 원리
챗봇 인공
지능
=
7
챗봇의 원리
● 챗봇이란?
○ 인간의 언어를 흉내 내어 인간의 질문에 답하는 형식
○ 메신저 상에서 사람처럼 행동하며 날씨나 교통정보 제공,
제품 주문, 고객지원 등을 제공
8
챗봇의 원리
● 챗봇이란?
○ 인간의 언어를 흉내 내어 인간의 질문에 답하는 형식
○ 메신저 상에서 사람처럼 행동하며 날씨나 교통정보 제공,
제품 주문, 고객지원 등을 제공
(능동적인 대화가 아니라는 의미)
9
챗봇의 원리
● 챗봇이란?
○ 인간의 언어를 흉내 내어 인간의 질문에 답하는 형식
○ 메신저 상에서 사람처럼 행동하며 날씨나 교통정보 제공,
제품 주문, 고객지원 등을 제공
(아직은 제한된 역할)
10
챗봇에 대한 관심도 - 전 세계
11
챗봇에 대한 관심도 - 한국
12
딱 이 느낌...
13
챗봇 만들 때 알아두어야 할 것
● 인간의 언어를 흉내 내어 인간의 질문에 답하는 형식
(인간과 유사한 대화가 편하게 느껴짐)
정말 잘못(appology)
했습니다
????? (한대 때릴까???)
저는 사과(apple)를
좋아해요
14
챗봇 어린이는 어떻게 대화를 배울까?
● 인간의 언어를 흉내 내어 인간의 질문에 답하는 형식
(어떻게 하면 흉내를 잘 낼 것인가?)
저는 사과를 좋아해요
음 이번엔
신중하게
대답해야지…
사과는 정말 맛있죠
15
챗봇 어린이는 어떻게 대화를 배울까?
● 인간의 언어를 흉내 내어 인간의 질문에 답하는 형식
저는 사과를 좋아해요
우리 대화의
장소는 과일 가게
사과는 정말 맛있죠
대화의 범위를 제약 (아직 데리고 다녀야 할 때가 많음)
16
챗봇 어린이는 어떻게 대화를 배울까?
● 인간의 언어를 흉내 내어 인간의 질문에 답하는 형식
저는 사과를 좋아해요
참, 과일 얘기를
하고 있었지?
사과는 정말 맛있죠
대화의 분위기를 파악 (눈치도 좋아져야 함)
17
챗봇 어린이는 어떻게 대화를 배울까?
● 인간의 언어를 흉내 내어 인간의 질문에 답하는 형식
저는 사과를 좋아해요
사과(appology)를
받고 싶을 땐,
좋아한다고
말하지는 않았음
사과는 정말 맛있죠
언어적인 이해와 경험 향상 (국어 공부를 열심히)
18
챗봇의 대화 방법
19
챗봇의 대화 방법
대화의 “의도(Intent)”
대화의 “재료(Entity)”
대화의 “분위기(Context)”
대화의 경험을 쌓고 응용(Training)”
20
챗봇의 대화 방법
대화의 “의도(Intent)”
대화의 “재료(Entity)”
대화의 “분위기(Context)”
대화의 경험을 쌓고 응용(Training)”
(사과라는 과일을 좋아한다)
(사과, 배, 복숭아 등 과일 이름)
(과일 이야기를 이어서 하기)
(과일 이야기를 할 때는 주로 이런
표현을 사용하는 구나...)
21
어떤 챗봇을 만들까? 스케치
22
챗봇에게 무엇을 가르칠까?
이번 과제의 핵심은?
주말에 데이트할 좋은
장소는?
오늘 발표 자료좀 만들어
주면 안될까… ㅠㅠ
흑흑… 저보고
어쩌시라고요?
가출...
23
챗봇에게 무엇을 가르칠까? 장소와 역할을 정의
쇼핑몰
스마트폰 판매 직원
대화의 “의도(Intent)”
대화의 “재료(Entity)”
대화의 “분위기(Context)”
대화의 경험을 쌓고 응용
(Training)”
공부!! 공부!! 공부!!
24
챗봇에게 무엇을 가르칠까? 대화에 대한 스케치
25
챗봇에게 무엇을 가르칠까? 교재는 뭘로?
● 쇼핑몰이 가지고 있는 상품 목록 (Entity - 대화의 재료)
● 쇼핑몰 상담 목록? 쇼핑몰 직원의 대화록? (Intent - 대화의 의도)
● 기존 대화에 대한 분석, 직관, 상황설정 (Context - 대화의 분위기 및 흐름)
● 학습: 대화록 입력 또는 실제 대화의 내용을 보고 교육
(연기는 설정이 중요합니다~)
26
만들어 볼 챗봇에 대한 정리
● 쇼핑몰이 가지고 있는 상품 목록 (Entity - 대화의 재료)
⇒ 상품 목록 CSV 파일
● 쇼핑몰 상담 목록? 쇼핑몰 직원의 대화록? (Intent - 대화의 의도)
⇒ 최대한 단순환 상황을 가정(시간적인 한계)
● 기존 대화에 대한 분석, 직관, 상황설정 (Context - 대화의 분위기 및 흐름)
⇒ 최대한 단순환 상황을 가정(시간적인 한계)
● 학습: 대화록 입력 또는 실제 대화의 내용을 보고 교육
⇒ 인터넷 상에 있는 스마트폰 매장 대화 예시 및 지속적인 훈련
27
데이터 모으기
28
데이터 모으기
쇼핑몰
검색키워드
(소스)
실제 쇼핑몰이라면 자체 데이터를 가지고 있음
구글링을 통해서 데이터 수집
29
데이터 모으기
쇼핑몰
검색키워드
(소스)
데이터 가공 및 정제 (Google DataPrep)
키워드 분류하여 연관된 것들끼리 묶음
스마트폰 관련 키워드 추출
향후 가공/정제 작업 자동화
키워드 중에서 애매한
부분에 대한 판단 요청
(예) samsung galaxy case
Google Natural Language API
30
데이터 모으기
쇼핑몰
검색키워드
(소스)
데이터 가공 및 정제 (Google
DataPrep)
Google Natural Language API
제품, 카테고리, 브랜드,
상품모델로 구분하여
Entity 등록
Dialogflow(api.ai)
31
대화하는 법 가르치기
32
챗봇 어린이
Dialogflow(api.ai)
저는 배울
준비가 되어
있습니다. 근데
뭘???
배울 자세는 잘
되어 있는 착한
어린이군
근데 뭘???
33
챗봇 상담원 - 한 번에 하나씩, Entity부터
Dialogflow(api.ai)
자 일단 외우세요… (우리나라의
수도는?)
카테고리, 상품 등
(Entity)
스마트폰
모델에는
samsung, apple
등이 있슴
34
시연 - Entity 입력
35
챗봇 상담원 - 대화의 기술 가르치기, 기본적인
인사법
Dialogflow(api.ai)
이런 대화는 어떤 경우에 할까요?
(기본 인사법부터)
Small Talk
(Intent)
고객을
처음만나면
인사를 해야겠군
Hello!!
Good morning
Hello
... 보통은 기본 내장
36
챗봇 상담원 - 대화의 기술 가르치기, 의도(Intent)
Dialogflow(api.ai)
이런 대화는 어떤 경우에 할까요?
(고객이 스마트폰을 찾으면 어떻게 대답)
아 고객이
스마트폰을
찾으면
(Intent) 이렇게
대답(행동)해야
하는 구나
May I see smartphones?
라고 물으면…
smartphone(s)라는 Entity
Yes we have라 대답하고
원하는 모델이 있는지 추가 질문
37
시연 - Intent 등록
38
챗봇 상담원 - 대화의 기술 가르치기, 분위기
(Context)
Dialogflow(api.ai)
고객이 가격을 물으면 어떤 제품에 대한
가격을 답하는게 맞을까요?
고객이 갑자기
가격을 물을 때는
그 전까지 대화하던
브랜드라는
Context를
참고해야겠구나
현재 Context가
“brand-chosen”인지 파악
해당 Context로부터 정보
(브랜드)를 추출하여 대답
39
시연 - Context 처리
40
챗봇 아키텍처
챗봇 상담원
Frontline
41
챗봇 아키텍처
백엔드 전문가 그룹
Backline
Python 등
42
똑똑하게 만들기
43
챗봇의 성장
학습 및 훈련 (상담 전문가)
재교육과 경험
기반의 학습을
통해서
전문가로 성장
교육 전 (챗봇 어린이)
교육 후 (챗봇 상담원)
기본
지식
교육
대화의
기술 교육
챗봇 교육 담당자
예외 처리
44
챗봇의 성장 - 재교육
학습 및 훈련 (상담 전문가)
실제 사례를
통해서 배우니
확실히 이해가
잘 된다
교육 후 (챗봇 상담원)
챗봇 교육 담당자
아까 예외 상황에서
이렇게 한 것은 “잘한 것이야”
아까 예외 상황에서는
판단이 “틀렸어"
재학습
45
챗봇의 성장 - 자체 ML 학습
학습 및 훈련 (상담 전문가)
이렇게 응용을
해보니 이제
조금 더
전문가가 된
느낌이다
ML 학습
더 많은 학습 데이터 (상담 경험)
기타
자료
인터넷
자료
상담록
46
음성 지원 및 다양한 채널
47
챗봇 아키텍처 - 다양한 입출력 채널
다양한 입출력
채널
(웹, 메신저,
음성)
48
다양한 입출력 채널
텔레그램 메신저
Google Assistant
49
Demo & Source Code
● github
○ https://github.com/javalove93/dialogflowdemo
○ Dialogflow Agent 및 WebHook Python Sample
50
감사합니다.
Free credit!!
페이스북 구글 클라우드 사용자 그룹
https://www.facebook.com/groups/googlecloudkorea/

Weitere ähnliche Inhalte

Was ist angesagt?

PyTorch Python Tutorial | Deep Learning Using PyTorch | Image Classifier Usin...
PyTorch Python Tutorial | Deep Learning Using PyTorch | Image Classifier Usin...PyTorch Python Tutorial | Deep Learning Using PyTorch | Image Classifier Usin...
PyTorch Python Tutorial | Deep Learning Using PyTorch | Image Classifier Usin...Edureka!
 
Introduction to PyTorch
Introduction to PyTorchIntroduction to PyTorch
Introduction to PyTorchJun Young Park
 
Efficient and effective passage search via contextualized late interaction ov...
Efficient and effective passage search via contextualized late interaction ov...Efficient and effective passage search via contextualized late interaction ov...
Efficient and effective passage search via contextualized late interaction ov...taeseon ryu
 
Open domain dialogue Chatbot(잡담봇 삽질기)
Open domain dialogue Chatbot(잡담봇 삽질기)Open domain dialogue Chatbot(잡담봇 삽질기)
Open domain dialogue Chatbot(잡담봇 삽질기)NAVER Engineering
 
Python coding standards
Python coding standardsPython coding standards
Python coding standardsSharad Singla
 
[222]대화 시스템 서비스 동향 및 개발 방법
[222]대화 시스템 서비스 동향 및 개발 방법[222]대화 시스템 서비스 동향 및 개발 방법
[222]대화 시스템 서비스 동향 및 개발 방법NAVER D2
 
Natural Language processing
Natural Language processingNatural Language processing
Natural Language processingSanzid Kawsar
 
화성에서 온 개발자, 금성에서 온 기획자
화성에서 온 개발자, 금성에서 온 기획자화성에서 온 개발자, 금성에서 온 기획자
화성에서 온 개발자, 금성에서 온 기획자Yongho Ha
 
한국어 문서 추출요약 AI 경진대회- 좌충우돌 후기
한국어 문서 추출요약 AI 경진대회- 좌충우돌 후기한국어 문서 추출요약 AI 경진대회- 좌충우돌 후기
한국어 문서 추출요약 AI 경진대회- 좌충우돌 후기Hangil Kim
 
딥 러닝 자연어 처리 학습을 위한 PPT! (Deep Learning for Natural Language Processing)
딥 러닝 자연어 처리 학습을 위한 PPT! (Deep Learning for Natural Language Processing)딥 러닝 자연어 처리 학습을 위한 PPT! (Deep Learning for Natural Language Processing)
딥 러닝 자연어 처리 학습을 위한 PPT! (Deep Learning for Natural Language Processing)WON JOON YOO
 
Python Matplotlib Tutorial | Matplotlib Tutorial | Python Tutorial | Python T...
Python Matplotlib Tutorial | Matplotlib Tutorial | Python Tutorial | Python T...Python Matplotlib Tutorial | Matplotlib Tutorial | Python Tutorial | Python T...
Python Matplotlib Tutorial | Matplotlib Tutorial | Python Tutorial | Python T...Edureka!
 
Modèles de langue : Ngrammes
Modèles de langue : NgrammesModèles de langue : Ngrammes
Modèles de langue : NgrammesJaouad Dabounou
 
Python PPT
Python PPTPython PPT
Python PPTEdureka!
 
TensorFlow and Keras: An Overview
TensorFlow and Keras: An OverviewTensorFlow and Keras: An Overview
TensorFlow and Keras: An OverviewPoo Kuan Hoong
 

Was ist angesagt? (20)

Python - object oriented
Python - object orientedPython - object oriented
Python - object oriented
 
What is word2vec?
What is word2vec?What is word2vec?
What is word2vec?
 
PyTorch Python Tutorial | Deep Learning Using PyTorch | Image Classifier Usin...
PyTorch Python Tutorial | Deep Learning Using PyTorch | Image Classifier Usin...PyTorch Python Tutorial | Deep Learning Using PyTorch | Image Classifier Usin...
PyTorch Python Tutorial | Deep Learning Using PyTorch | Image Classifier Usin...
 
PyTorch under the hood
PyTorch under the hoodPyTorch under the hood
PyTorch under the hood
 
Introduction to PyTorch
Introduction to PyTorchIntroduction to PyTorch
Introduction to PyTorch
 
Efficient and effective passage search via contextualized late interaction ov...
Efficient and effective passage search via contextualized late interaction ov...Efficient and effective passage search via contextualized late interaction ov...
Efficient and effective passage search via contextualized late interaction ov...
 
Tutorial on Deep Learning
Tutorial on Deep LearningTutorial on Deep Learning
Tutorial on Deep Learning
 
Open domain dialogue Chatbot(잡담봇 삽질기)
Open domain dialogue Chatbot(잡담봇 삽질기)Open domain dialogue Chatbot(잡담봇 삽질기)
Open domain dialogue Chatbot(잡담봇 삽질기)
 
Python coding standards
Python coding standardsPython coding standards
Python coding standards
 
[222]대화 시스템 서비스 동향 및 개발 방법
[222]대화 시스템 서비스 동향 및 개발 방법[222]대화 시스템 서비스 동향 및 개발 방법
[222]대화 시스템 서비스 동향 및 개발 방법
 
Natural Language processing
Natural Language processingNatural Language processing
Natural Language processing
 
화성에서 온 개발자, 금성에서 온 기획자
화성에서 온 개발자, 금성에서 온 기획자화성에서 온 개발자, 금성에서 온 기획자
화성에서 온 개발자, 금성에서 온 기획자
 
한국어 문서 추출요약 AI 경진대회- 좌충우돌 후기
한국어 문서 추출요약 AI 경진대회- 좌충우돌 후기한국어 문서 추출요약 AI 경진대회- 좌충우돌 후기
한국어 문서 추출요약 AI 경진대회- 좌충우돌 후기
 
Python Scipy Numpy
Python Scipy NumpyPython Scipy Numpy
Python Scipy Numpy
 
딥 러닝 자연어 처리 학습을 위한 PPT! (Deep Learning for Natural Language Processing)
딥 러닝 자연어 처리 학습을 위한 PPT! (Deep Learning for Natural Language Processing)딥 러닝 자연어 처리 학습을 위한 PPT! (Deep Learning for Natural Language Processing)
딥 러닝 자연어 처리 학습을 위한 PPT! (Deep Learning for Natural Language Processing)
 
Python Matplotlib Tutorial | Matplotlib Tutorial | Python Tutorial | Python T...
Python Matplotlib Tutorial | Matplotlib Tutorial | Python Tutorial | Python T...Python Matplotlib Tutorial | Matplotlib Tutorial | Python Tutorial | Python T...
Python Matplotlib Tutorial | Matplotlib Tutorial | Python Tutorial | Python T...
 
Modèles de langue : Ngrammes
Modèles de langue : NgrammesModèles de langue : Ngrammes
Modèles de langue : Ngrammes
 
Python PPT
Python PPTPython PPT
Python PPT
 
Pytorch
PytorchPytorch
Pytorch
 
TensorFlow and Keras: An Overview
TensorFlow and Keras: An OverviewTensorFlow and Keras: An Overview
TensorFlow and Keras: An Overview
 

Ähnlich wie 1시간만에 만드는 음성인식 인공지능 챗봇

[코세나, kosena] 생성AI 프로젝트와 사례
[코세나, kosena] 생성AI 프로젝트와 사례[코세나, kosena] 생성AI 프로젝트와 사례
[코세나, kosena] 생성AI 프로젝트와 사례kosena
 
IBM Watson Assistant 기반 챗봇 제작 기초 강좌 (2019.11.18)
IBM Watson Assistant 기반 챗봇 제작 기초 강좌 (2019.11.18)IBM Watson Assistant 기반 챗봇 제작 기초 강좌 (2019.11.18)
IBM Watson Assistant 기반 챗봇 제작 기초 강좌 (2019.11.18)KYOYOON JUNG
 
챗봇, 그것이 알고싶다
챗봇, 그것이 알고싶다챗봇, 그것이 알고싶다
챗봇, 그것이 알고싶다deepseaswjh
 
Oracle Digital Assistant 소개
Oracle Digital Assistant 소개Oracle Digital Assistant 소개
Oracle Digital Assistant 소개Mee Nam Lee
 
hcik 2017 튜토리얼; 인공지능으로 사용자 리서치
hcik 2017 튜토리얼; 인공지능으로 사용자 리서치hcik 2017 튜토리얼; 인공지능으로 사용자 리서치
hcik 2017 튜토리얼; 인공지능으로 사용자 리서치Seoul National University
 
[TMS 2018] 자금확보 / Lablup 신정규 CEO, 님아 제발 그 강을 마오
[TMS 2018] 자금확보 / Lablup 신정규 CEO, 님아 제발 그 강을 마오[TMS 2018] 자금확보 / Lablup 신정규 CEO, 님아 제발 그 강을 마오
[TMS 2018] 자금확보 / Lablup 신정규 CEO, 님아 제발 그 강을 마오NAVER D2 STARTUP FACTORY
 
챗봇의 활용, 어디에서 도입하면 좋은가? - 와이즈넛 장정훈 이사
챗봇의 활용, 어디에서 도입하면 좋은가? - 와이즈넛 장정훈 이사챗봇의 활용, 어디에서 도입하면 좋은가? - 와이즈넛 장정훈 이사
챗봇의 활용, 어디에서 도입하면 좋은가? - 와이즈넛 장정훈 이사eungjin cho
 
네이버 SW교육 교사 연수자료_ 송상수
네이버 SW교육 교사 연수자료_ 송상수네이버 SW교육 교사 연수자료_ 송상수
네이버 SW교육 교사 연수자료_ 송상수Sangsu Song
 
나의 개발이야기
나의 개발이야기나의 개발이야기
나의 개발이야기석진 고
 
스타트업에서는 어떤 개발자를 만나야 할까?
스타트업에서는 어떤 개발자를 만나야 할까?스타트업에서는 어떤 개발자를 만나야 할까?
스타트업에서는 어떤 개발자를 만나야 할까?Bae Jinho
 
개발자는 원래 말을 잘 못해요?
개발자는 원래 말을 잘 못해요?개발자는 원래 말을 잘 못해요?
개발자는 원래 말을 잘 못해요?용진 조
 
소프트웨어 교육 이야기
소프트웨어 교육 이야기소프트웨어 교육 이야기
소프트웨어 교육 이야기Jaehwi Alice Kim
 
170513 4차 산업 혁명과 미래교육 컴퓨팅 교육의 동향과 해명 @송곡초
170513 4차 산업 혁명과 미래교육   컴퓨팅 교육의 동향과 해명 @송곡초170513 4차 산업 혁명과 미래교육   컴퓨팅 교육의 동향과 해명 @송곡초
170513 4차 산업 혁명과 미래교육 컴퓨팅 교육의 동향과 해명 @송곡초Choi Man Dream
 
Windows Debugging Technique #1
Windows Debugging Technique #1Windows Debugging Technique #1
Windows Debugging Technique #1Wooseok Seo
 
현시대인공지능기술의고찰
현시대인공지능기술의고찰현시대인공지능기술의고찰
현시대인공지능기술의고찰상호 이
 
여기컨_스타트업 기획자의 월화수목금_이수지
여기컨_스타트업 기획자의 월화수목금_이수지여기컨_스타트업 기획자의 월화수목금_이수지
여기컨_스타트업 기획자의 월화수목금_이수지TechFeministgroup
 
WTM2018 그것이 알고싶다 어쩌다 10년... 지그재그 손연미, 백서영
WTM2018 그것이 알고싶다 어쩌다 10년... 지그재그 손연미, 백서영WTM2018 그것이 알고싶다 어쩌다 10년... 지그재그 손연미, 백서영
WTM2018 그것이 알고싶다 어쩌다 10년... 지그재그 손연미, 백서영ZIGZAG
 
사물 인터넷과 인공지능이 만나는 세계
사물 인터넷과 인공지능이 만나는 세계사물 인터넷과 인공지능이 만나는 세계
사물 인터넷과 인공지능이 만나는 세계Jiho Lee
 
AI 유저리서치를 할 수 있을까?
AI 유저리서치를 할 수 있을까?AI 유저리서치를 할 수 있을까?
AI 유저리서치를 할 수 있을까?Myuserable
 
사이드 프로젝트로 이직하기
사이드 프로젝트로 이직하기사이드 프로젝트로 이직하기
사이드 프로젝트로 이직하기Hyun-sik Yoo
 

Ähnlich wie 1시간만에 만드는 음성인식 인공지능 챗봇 (20)

[코세나, kosena] 생성AI 프로젝트와 사례
[코세나, kosena] 생성AI 프로젝트와 사례[코세나, kosena] 생성AI 프로젝트와 사례
[코세나, kosena] 생성AI 프로젝트와 사례
 
IBM Watson Assistant 기반 챗봇 제작 기초 강좌 (2019.11.18)
IBM Watson Assistant 기반 챗봇 제작 기초 강좌 (2019.11.18)IBM Watson Assistant 기반 챗봇 제작 기초 강좌 (2019.11.18)
IBM Watson Assistant 기반 챗봇 제작 기초 강좌 (2019.11.18)
 
챗봇, 그것이 알고싶다
챗봇, 그것이 알고싶다챗봇, 그것이 알고싶다
챗봇, 그것이 알고싶다
 
Oracle Digital Assistant 소개
Oracle Digital Assistant 소개Oracle Digital Assistant 소개
Oracle Digital Assistant 소개
 
hcik 2017 튜토리얼; 인공지능으로 사용자 리서치
hcik 2017 튜토리얼; 인공지능으로 사용자 리서치hcik 2017 튜토리얼; 인공지능으로 사용자 리서치
hcik 2017 튜토리얼; 인공지능으로 사용자 리서치
 
[TMS 2018] 자금확보 / Lablup 신정규 CEO, 님아 제발 그 강을 마오
[TMS 2018] 자금확보 / Lablup 신정규 CEO, 님아 제발 그 강을 마오[TMS 2018] 자금확보 / Lablup 신정규 CEO, 님아 제발 그 강을 마오
[TMS 2018] 자금확보 / Lablup 신정규 CEO, 님아 제발 그 강을 마오
 
챗봇의 활용, 어디에서 도입하면 좋은가? - 와이즈넛 장정훈 이사
챗봇의 활용, 어디에서 도입하면 좋은가? - 와이즈넛 장정훈 이사챗봇의 활용, 어디에서 도입하면 좋은가? - 와이즈넛 장정훈 이사
챗봇의 활용, 어디에서 도입하면 좋은가? - 와이즈넛 장정훈 이사
 
네이버 SW교육 교사 연수자료_ 송상수
네이버 SW교육 교사 연수자료_ 송상수네이버 SW교육 교사 연수자료_ 송상수
네이버 SW교육 교사 연수자료_ 송상수
 
나의 개발이야기
나의 개발이야기나의 개발이야기
나의 개발이야기
 
스타트업에서는 어떤 개발자를 만나야 할까?
스타트업에서는 어떤 개발자를 만나야 할까?스타트업에서는 어떤 개발자를 만나야 할까?
스타트업에서는 어떤 개발자를 만나야 할까?
 
개발자는 원래 말을 잘 못해요?
개발자는 원래 말을 잘 못해요?개발자는 원래 말을 잘 못해요?
개발자는 원래 말을 잘 못해요?
 
소프트웨어 교육 이야기
소프트웨어 교육 이야기소프트웨어 교육 이야기
소프트웨어 교육 이야기
 
170513 4차 산업 혁명과 미래교육 컴퓨팅 교육의 동향과 해명 @송곡초
170513 4차 산업 혁명과 미래교육   컴퓨팅 교육의 동향과 해명 @송곡초170513 4차 산업 혁명과 미래교육   컴퓨팅 교육의 동향과 해명 @송곡초
170513 4차 산업 혁명과 미래교육 컴퓨팅 교육의 동향과 해명 @송곡초
 
Windows Debugging Technique #1
Windows Debugging Technique #1Windows Debugging Technique #1
Windows Debugging Technique #1
 
현시대인공지능기술의고찰
현시대인공지능기술의고찰현시대인공지능기술의고찰
현시대인공지능기술의고찰
 
여기컨_스타트업 기획자의 월화수목금_이수지
여기컨_스타트업 기획자의 월화수목금_이수지여기컨_스타트업 기획자의 월화수목금_이수지
여기컨_스타트업 기획자의 월화수목금_이수지
 
WTM2018 그것이 알고싶다 어쩌다 10년... 지그재그 손연미, 백서영
WTM2018 그것이 알고싶다 어쩌다 10년... 지그재그 손연미, 백서영WTM2018 그것이 알고싶다 어쩌다 10년... 지그재그 손연미, 백서영
WTM2018 그것이 알고싶다 어쩌다 10년... 지그재그 손연미, 백서영
 
사물 인터넷과 인공지능이 만나는 세계
사물 인터넷과 인공지능이 만나는 세계사물 인터넷과 인공지능이 만나는 세계
사물 인터넷과 인공지능이 만나는 세계
 
AI 유저리서치를 할 수 있을까?
AI 유저리서치를 할 수 있을까?AI 유저리서치를 할 수 있을까?
AI 유저리서치를 할 수 있을까?
 
사이드 프로젝트로 이직하기
사이드 프로젝트로 이직하기사이드 프로젝트로 이직하기
사이드 프로젝트로 이직하기
 

Mehr von 정명훈 Jerry Jeong

Google Cloud IAM 계정, 권한 및 조직 관리
Google Cloud IAM 계정, 권한 및 조직 관리Google Cloud IAM 계정, 권한 및 조직 관리
Google Cloud IAM 계정, 권한 및 조직 관리정명훈 Jerry Jeong
 
[오픈소스컨설팅]Jira 한글패치가이드 1
[오픈소스컨설팅]Jira 한글패치가이드 1[오픈소스컨설팅]Jira 한글패치가이드 1
[오픈소스컨설팅]Jira 한글패치가이드 1정명훈 Jerry Jeong
 
오픈소스의 이해(교육자료)
오픈소스의 이해(교육자료) 오픈소스의 이해(교육자료)
오픈소스의 이해(교육자료) 정명훈 Jerry Jeong
 
다산선생 지식경영법 - 여박총피법
다산선생 지식경영법 - 여박총피법다산선생 지식경영법 - 여박총피법
다산선생 지식경영법 - 여박총피법정명훈 Jerry Jeong
 
네트워크 가상화를 통한 효율적인 빅데이터 처리
네트워크 가상화를 통한 효율적인 빅데이터 처리네트워크 가상화를 통한 효율적인 빅데이터 처리
네트워크 가상화를 통한 효율적인 빅데이터 처리정명훈 Jerry Jeong
 
Innovation 3 3.stages of new product development
Innovation 3 3.stages of new product developmentInnovation 3 3.stages of new product development
Innovation 3 3.stages of new product development정명훈 Jerry Jeong
 
SDDC(software defined data center)에서 NFV의 역할과 관리도구 (세미나 발표 자료)
SDDC(software defined data center)에서 NFV의 역할과 관리도구 (세미나 발표 자료)SDDC(software defined data center)에서 NFV의 역할과 관리도구 (세미나 발표 자료)
SDDC(software defined data center)에서 NFV의 역할과 관리도구 (세미나 발표 자료)정명훈 Jerry Jeong
 
Python study 1강 (오픈소스컨설팅 내부 강의)
Python study 1강 (오픈소스컨설팅 내부 강의)Python study 1강 (오픈소스컨설팅 내부 강의)
Python study 1강 (오픈소스컨설팅 내부 강의)정명훈 Jerry Jeong
 
IoT 기반 융합 서비스 기술 (응용사례)
IoT 기반 융합 서비스 기술 (응용사례)IoT 기반 융합 서비스 기술 (응용사례)
IoT 기반 융합 서비스 기술 (응용사례)정명훈 Jerry Jeong
 
사물인터넷(Internet of Things) 시대의 공개SW
사물인터넷(Internet of Things) 시대의 공개SW사물인터넷(Internet of Things) 시대의 공개SW
사물인터넷(Internet of Things) 시대의 공개SW정명훈 Jerry Jeong
 
Getting started with Cloudant DBaaS(Korean)
Getting started with Cloudant DBaaS(Korean)Getting started with Cloudant DBaaS(Korean)
Getting started with Cloudant DBaaS(Korean)정명훈 Jerry Jeong
 
GoldenGate for MySQL 설치 시 필요한 사항
GoldenGate for MySQL 설치 시 필요한 사항GoldenGate for MySQL 설치 시 필요한 사항
GoldenGate for MySQL 설치 시 필요한 사항정명훈 Jerry Jeong
 

Mehr von 정명훈 Jerry Jeong (14)

Google Cloud IAM 계정, 권한 및 조직 관리
Google Cloud IAM 계정, 권한 및 조직 관리Google Cloud IAM 계정, 권한 및 조직 관리
Google Cloud IAM 계정, 권한 및 조직 관리
 
[오픈소스컨설팅]Jira 한글패치가이드 1
[오픈소스컨설팅]Jira 한글패치가이드 1[오픈소스컨설팅]Jira 한글패치가이드 1
[오픈소스컨설팅]Jira 한글패치가이드 1
 
Wso2 api manager 특징 slide share
Wso2 api manager 특징   slide shareWso2 api manager 특징   slide share
Wso2 api manager 특징 slide share
 
오픈소스의 이해(교육자료)
오픈소스의 이해(교육자료) 오픈소스의 이해(교육자료)
오픈소스의 이해(교육자료)
 
다산선생 지식경영법 - 여박총피법
다산선생 지식경영법 - 여박총피법다산선생 지식경영법 - 여박총피법
다산선생 지식경영법 - 여박총피법
 
네트워크 가상화를 통한 효율적인 빅데이터 처리
네트워크 가상화를 통한 효율적인 빅데이터 처리네트워크 가상화를 통한 효율적인 빅데이터 처리
네트워크 가상화를 통한 효율적인 빅데이터 처리
 
Innovation 3 3.stages of new product development
Innovation 3 3.stages of new product developmentInnovation 3 3.stages of new product development
Innovation 3 3.stages of new product development
 
SDDC(software defined data center)에서 NFV의 역할과 관리도구 (세미나 발표 자료)
SDDC(software defined data center)에서 NFV의 역할과 관리도구 (세미나 발표 자료)SDDC(software defined data center)에서 NFV의 역할과 관리도구 (세미나 발표 자료)
SDDC(software defined data center)에서 NFV의 역할과 관리도구 (세미나 발표 자료)
 
Python study 1강 (오픈소스컨설팅 내부 강의)
Python study 1강 (오픈소스컨설팅 내부 강의)Python study 1강 (오픈소스컨설팅 내부 강의)
Python study 1강 (오픈소스컨설팅 내부 강의)
 
IoT 기반 융합 서비스 기술 (응용사례)
IoT 기반 융합 서비스 기술 (응용사례)IoT 기반 융합 서비스 기술 (응용사례)
IoT 기반 융합 서비스 기술 (응용사례)
 
사물인터넷(Internet of Things) 시대의 공개SW
사물인터넷(Internet of Things) 시대의 공개SW사물인터넷(Internet of Things) 시대의 공개SW
사물인터넷(Internet of Things) 시대의 공개SW
 
CouchDB - Introduction - Korean
CouchDB - Introduction - KoreanCouchDB - Introduction - Korean
CouchDB - Introduction - Korean
 
Getting started with Cloudant DBaaS(Korean)
Getting started with Cloudant DBaaS(Korean)Getting started with Cloudant DBaaS(Korean)
Getting started with Cloudant DBaaS(Korean)
 
GoldenGate for MySQL 설치 시 필요한 사항
GoldenGate for MySQL 설치 시 필요한 사항GoldenGate for MySQL 설치 시 필요한 사항
GoldenGate for MySQL 설치 시 필요한 사항
 

1시간만에 만드는 음성인식 인공지능 챗봇

  • 1. 1시간만에 만드는 음성인식 인공지능 챗봇 정명훈, Google Cloud
  • 2. 2 목차 ● 챗봇의 원리 ● 어떤 챗봇을 만들까? 스케치 ● 데이터 모으기 ● 대화하는 법 가르치기 ● 똑똑하게 만들기 ● 음성 지원 및 다양한 채널
  • 4. 4 챗봇의 원리 ● 챗봇이란? ○ 채팅과 로봇의 합성어 ○ 인공지능을 기반으로 사람과 대화를 나누는 프로그램
  • 7. 7 챗봇의 원리 ● 챗봇이란? ○ 인간의 언어를 흉내 내어 인간의 질문에 답하는 형식 ○ 메신저 상에서 사람처럼 행동하며 날씨나 교통정보 제공, 제품 주문, 고객지원 등을 제공
  • 8. 8 챗봇의 원리 ● 챗봇이란? ○ 인간의 언어를 흉내 내어 인간의 질문에 답하는 형식 ○ 메신저 상에서 사람처럼 행동하며 날씨나 교통정보 제공, 제품 주문, 고객지원 등을 제공 (능동적인 대화가 아니라는 의미)
  • 9. 9 챗봇의 원리 ● 챗봇이란? ○ 인간의 언어를 흉내 내어 인간의 질문에 답하는 형식 ○ 메신저 상에서 사람처럼 행동하며 날씨나 교통정보 제공, 제품 주문, 고객지원 등을 제공 (아직은 제한된 역할)
  • 13. 13 챗봇 만들 때 알아두어야 할 것 ● 인간의 언어를 흉내 내어 인간의 질문에 답하는 형식 (인간과 유사한 대화가 편하게 느껴짐) 정말 잘못(appology) 했습니다 ????? (한대 때릴까???) 저는 사과(apple)를 좋아해요
  • 14. 14 챗봇 어린이는 어떻게 대화를 배울까? ● 인간의 언어를 흉내 내어 인간의 질문에 답하는 형식 (어떻게 하면 흉내를 잘 낼 것인가?) 저는 사과를 좋아해요 음 이번엔 신중하게 대답해야지… 사과는 정말 맛있죠
  • 15. 15 챗봇 어린이는 어떻게 대화를 배울까? ● 인간의 언어를 흉내 내어 인간의 질문에 답하는 형식 저는 사과를 좋아해요 우리 대화의 장소는 과일 가게 사과는 정말 맛있죠 대화의 범위를 제약 (아직 데리고 다녀야 할 때가 많음)
  • 16. 16 챗봇 어린이는 어떻게 대화를 배울까? ● 인간의 언어를 흉내 내어 인간의 질문에 답하는 형식 저는 사과를 좋아해요 참, 과일 얘기를 하고 있었지? 사과는 정말 맛있죠 대화의 분위기를 파악 (눈치도 좋아져야 함)
  • 17. 17 챗봇 어린이는 어떻게 대화를 배울까? ● 인간의 언어를 흉내 내어 인간의 질문에 답하는 형식 저는 사과를 좋아해요 사과(appology)를 받고 싶을 땐, 좋아한다고 말하지는 않았음 사과는 정말 맛있죠 언어적인 이해와 경험 향상 (국어 공부를 열심히)
  • 19. 19 챗봇의 대화 방법 대화의 “의도(Intent)” 대화의 “재료(Entity)” 대화의 “분위기(Context)” 대화의 경험을 쌓고 응용(Training)”
  • 20. 20 챗봇의 대화 방법 대화의 “의도(Intent)” 대화의 “재료(Entity)” 대화의 “분위기(Context)” 대화의 경험을 쌓고 응용(Training)” (사과라는 과일을 좋아한다) (사과, 배, 복숭아 등 과일 이름) (과일 이야기를 이어서 하기) (과일 이야기를 할 때는 주로 이런 표현을 사용하는 구나...)
  • 22. 22 챗봇에게 무엇을 가르칠까? 이번 과제의 핵심은? 주말에 데이트할 좋은 장소는? 오늘 발표 자료좀 만들어 주면 안될까… ㅠㅠ 흑흑… 저보고 어쩌시라고요? 가출...
  • 23. 23 챗봇에게 무엇을 가르칠까? 장소와 역할을 정의 쇼핑몰 스마트폰 판매 직원 대화의 “의도(Intent)” 대화의 “재료(Entity)” 대화의 “분위기(Context)” 대화의 경험을 쌓고 응용 (Training)” 공부!! 공부!! 공부!!
  • 24. 24 챗봇에게 무엇을 가르칠까? 대화에 대한 스케치
  • 25. 25 챗봇에게 무엇을 가르칠까? 교재는 뭘로? ● 쇼핑몰이 가지고 있는 상품 목록 (Entity - 대화의 재료) ● 쇼핑몰 상담 목록? 쇼핑몰 직원의 대화록? (Intent - 대화의 의도) ● 기존 대화에 대한 분석, 직관, 상황설정 (Context - 대화의 분위기 및 흐름) ● 학습: 대화록 입력 또는 실제 대화의 내용을 보고 교육 (연기는 설정이 중요합니다~)
  • 26. 26 만들어 볼 챗봇에 대한 정리 ● 쇼핑몰이 가지고 있는 상품 목록 (Entity - 대화의 재료) ⇒ 상품 목록 CSV 파일 ● 쇼핑몰 상담 목록? 쇼핑몰 직원의 대화록? (Intent - 대화의 의도) ⇒ 최대한 단순환 상황을 가정(시간적인 한계) ● 기존 대화에 대한 분석, 직관, 상황설정 (Context - 대화의 분위기 및 흐름) ⇒ 최대한 단순환 상황을 가정(시간적인 한계) ● 학습: 대화록 입력 또는 실제 대화의 내용을 보고 교육 ⇒ 인터넷 상에 있는 스마트폰 매장 대화 예시 및 지속적인 훈련
  • 28. 28 데이터 모으기 쇼핑몰 검색키워드 (소스) 실제 쇼핑몰이라면 자체 데이터를 가지고 있음 구글링을 통해서 데이터 수집
  • 29. 29 데이터 모으기 쇼핑몰 검색키워드 (소스) 데이터 가공 및 정제 (Google DataPrep) 키워드 분류하여 연관된 것들끼리 묶음 스마트폰 관련 키워드 추출 향후 가공/정제 작업 자동화 키워드 중에서 애매한 부분에 대한 판단 요청 (예) samsung galaxy case Google Natural Language API
  • 30. 30 데이터 모으기 쇼핑몰 검색키워드 (소스) 데이터 가공 및 정제 (Google DataPrep) Google Natural Language API 제품, 카테고리, 브랜드, 상품모델로 구분하여 Entity 등록 Dialogflow(api.ai)
  • 32. 32 챗봇 어린이 Dialogflow(api.ai) 저는 배울 준비가 되어 있습니다. 근데 뭘??? 배울 자세는 잘 되어 있는 착한 어린이군 근데 뭘???
  • 33. 33 챗봇 상담원 - 한 번에 하나씩, Entity부터 Dialogflow(api.ai) 자 일단 외우세요… (우리나라의 수도는?) 카테고리, 상품 등 (Entity) 스마트폰 모델에는 samsung, apple 등이 있슴
  • 35. 35 챗봇 상담원 - 대화의 기술 가르치기, 기본적인 인사법 Dialogflow(api.ai) 이런 대화는 어떤 경우에 할까요? (기본 인사법부터) Small Talk (Intent) 고객을 처음만나면 인사를 해야겠군 Hello!! Good morning Hello ... 보통은 기본 내장
  • 36. 36 챗봇 상담원 - 대화의 기술 가르치기, 의도(Intent) Dialogflow(api.ai) 이런 대화는 어떤 경우에 할까요? (고객이 스마트폰을 찾으면 어떻게 대답) 아 고객이 스마트폰을 찾으면 (Intent) 이렇게 대답(행동)해야 하는 구나 May I see smartphones? 라고 물으면… smartphone(s)라는 Entity Yes we have라 대답하고 원하는 모델이 있는지 추가 질문
  • 38. 38 챗봇 상담원 - 대화의 기술 가르치기, 분위기 (Context) Dialogflow(api.ai) 고객이 가격을 물으면 어떤 제품에 대한 가격을 답하는게 맞을까요? 고객이 갑자기 가격을 물을 때는 그 전까지 대화하던 브랜드라는 Context를 참고해야겠구나 현재 Context가 “brand-chosen”인지 파악 해당 Context로부터 정보 (브랜드)를 추출하여 대답
  • 41. 41 챗봇 아키텍처 백엔드 전문가 그룹 Backline Python 등
  • 43. 43 챗봇의 성장 학습 및 훈련 (상담 전문가) 재교육과 경험 기반의 학습을 통해서 전문가로 성장 교육 전 (챗봇 어린이) 교육 후 (챗봇 상담원) 기본 지식 교육 대화의 기술 교육 챗봇 교육 담당자 예외 처리
  • 44. 44 챗봇의 성장 - 재교육 학습 및 훈련 (상담 전문가) 실제 사례를 통해서 배우니 확실히 이해가 잘 된다 교육 후 (챗봇 상담원) 챗봇 교육 담당자 아까 예외 상황에서 이렇게 한 것은 “잘한 것이야” 아까 예외 상황에서는 판단이 “틀렸어" 재학습
  • 45. 45 챗봇의 성장 - 자체 ML 학습 학습 및 훈련 (상담 전문가) 이렇게 응용을 해보니 이제 조금 더 전문가가 된 느낌이다 ML 학습 더 많은 학습 데이터 (상담 경험) 기타 자료 인터넷 자료 상담록
  • 46. 46 음성 지원 및 다양한 채널
  • 47. 47 챗봇 아키텍처 - 다양한 입출력 채널 다양한 입출력 채널 (웹, 메신저, 음성)
  • 48. 48 다양한 입출력 채널 텔레그램 메신저 Google Assistant
  • 49. 49 Demo & Source Code ● github ○ https://github.com/javalove93/dialogflowdemo ○ Dialogflow Agent 및 WebHook Python Sample
  • 50. 50 감사합니다. Free credit!! 페이스북 구글 클라우드 사용자 그룹 https://www.facebook.com/groups/googlecloudkorea/