SlideShare a Scribd company logo
Các bài toán x lý ngôn ng t nhiên
trong phát tri n h th ng chatbot
Ph m Quang Nh t Minh
Vi n nghiên c u công ngh FPT (FTRI)
minhpqn2@fe.edu.vn
Ngày 30 tháng 3 năm 2017
M t s h th ng giao ti p t đ ng
Hình: Chatbot Symptomate1
cho ch n đoán b nh và tr lý o Cortana
1
https://www.facebook.com/Symptomate
Ph m Quang Nh t Minh Các v n đ NLP trong chatbot 2/37
Vì sao nhu c u s d ng chatbot ngày càng tăng?
Chatbot h u ích trong các h th ng tr c tuy n v i s lư ng
l n ngư i dùng:
H tr ho c thay th ngư i trong m t s tác v : chăm sóc
khách hàng, h tr đ t hàng, tr l i câu h i, giáo d c,. . .
R t nhi u các n n t ng h tr trò chuy n tr c tuy n:
Facebook messenger, Slack, Skype, Telegram,...
S lư ng ngư i dùng đi n tho i thông minh ngày càng nhi u
Nh ng bư c ti n m i trong ngành AI:
X lý ngôn ng t nhiên
X lý ti ng nói
H c máy
Ngày càng nhi u platform h tr t o chatbot
Ph m Quang Nh t Minh Các v n đ NLP trong chatbot 3/37
N n t ng h tr phát tri n chatbot
M t s n n t ng h tr phát tri n chatbot:
Watson Conversation Service
Microsoft’s LUIS
Google Natural Language API
Wit.ai
Api.ai
Amazon Lex
Ph m Quang Nh t Minh Các v n đ NLP trong chatbot 4/37
Ki n trúc cơ b n c a m t h th ng tr l i t đ ng
Hình: Ki n trúc cơ b n c a m t h th ng tr l i t đ ng2
2
nh l y t cu n sách c a Daniel Jurafsky và James Martin
Ph m Quang Nh t Minh Các v n đ NLP trong chatbot 5/37
Hình: Ví d v c u trúc h i tho i c a chatbot. (Ngu n: stanfy.com:
http://tinyurl.com/mdfsa6h)
Ph m Quang Nh t Minh Các v n đ NLP trong chatbot 6/37
N i dung trình bày
1 Bài toán xác đ nh ý đ nh ngư i dùng (intent detection)
2 Bài toán trích xu t thông tin (named entity extraction)
3 Qu n lý h i tho i (dialogue management)
4 Mô hình sinh h i tho i cho chatbot
Ph m Quang Nh t Minh Các v n đ NLP trong chatbot 7/37
N i dung trình bày
1 Bài toán xác đ nh ý đ nh ngư i dùng (intent detection)
2 Bài toán trích xu t thông tin (named entity extraction)
3 Qu n lý h i tho i (dialogue management)
4 Mô hình sinh h i tho i cho chatbot
Ph m Quang Nh t Minh Các v n đ NLP trong chatbot 8/37
Ý đ nh (intent) là gì?
Intent: Đi u ngư i dùng mong mu n chatbot th c hi n (h
tr ) khi đưa ra câu h i tho i
Ví d , khi ngư i dùng mu n chatbot đưa ra thông tin v th i
ti t hôm nay
Th i ti t hôm nay th nào ad?
Hà N i hôm nay có mưa không v y?
Tr i hôm nay th nào b n?
Ph m Quang Nh t Minh Các v n đ NLP trong chatbot 9/37
T i sao xác đ nh intent quan tr ng?
Intent đư c xác đ nh s quy t đ nh c u trúc (frame) và k ch
b n (script) c a đo n h i tho i ti p theo.
N u chatbot xác đ nh sai intent:
Ph n h i không thích h p → Ngư i dùng không hài lòng →
R i b h th ng
Ph m Quang Nh t Minh Các v n đ NLP trong chatbot 10/37
Các v n đ trong bài toán xác đ nh intent (1)
Làm sao đ nh n bi t nh ng cách di n đ t khác nhau cho cùng
m t intent?
Ví d , t “lag“ và “ch m“ trong 2 câu sau mang cùng ng
nghĩa
Ad ơi, sao m ng nhà em d o này ch m th ?
M ng lag l m, dùng r t c ch .
Ngư i dùng có th dùng câu h i, câu c u khi n hay câu than
phi n khi đưa ra yêu c u h tr
Ph m Quang Nh t Minh Các v n đ NLP trong chatbot 11/37
Các v n đ trong bài toán xác đ nh intent (2)
X lý v n đ sai chính t
Ví d : “Ad ơi, m ng chaamj l m“
Trong ti ng Vi t, chúng ta có th ph i x lý v n đ ti ng Vi t
không d u và mix gi a có d u và không d u.
X lý các t vi t t t, ngôn ng chat
Ph m Quang Nh t Minh Các v n đ NLP trong chatbot 12/37
Cách ti p c n h c máy cho bài toán xác đ nh intent
Trong nh ng nh ng mi n ng d ng đóng (closed domain)
S lư ng intent là h u h n
Mô hình phân l p văn b n (text classification)
Hu n luy n mô hình phân l p intent t m t t p d li u hu n
luy n
intent text
order.pizza i want a small pizza with tomatos
order.pizza i want a pizza with bbq souce
order.pizza pizza delivery
greeting Hi
greeting Hello
...
B ng: Ví d v d li u hu n luy n cho chatbot ph c v order pizza
(Api.ai)
Ph m Quang Nh t Minh Các v n đ NLP trong chatbot 13/37
Mô hình phân l p intent
Hình: Ki n trúc h th ng phân l p intent
Ph m Quang Nh t Minh Các v n đ NLP trong chatbot 14/37
Ti n x lý d li u
Tách t (word segmentation)
X lý t gõ sai chính t (ví d m ng chaamj)
X lý t vi t t t (ví d : gõ ip thay vì iphone)
POS Tagging
Ph m Quang Nh t Minh Các v n đ NLP trong chatbot 15/37
Trích xu t đ c trưng
Bag-of-words
Hi n t i intent detection t i FPT.AI đang s d ng bag-of-word
features
tf-idf features
...
Ph m Quang Nh t Minh Các v n đ NLP trong chatbot 16/37
Thu t toán hu n luy n mô hình phân l p
Thu t toán phân l p ph bi n:
Support Vector Machines (SVM)
Random Forest
Quora đang s d ng đ phát hi n câu h i trùng l p
Neural Networks
FPT.AI s d ng mô hình m ng Neural Feed Forward v i m t
t ng n
S d ng thư vi n keras v i Theano backed end.
Ph m Quang Nh t Minh Các v n đ NLP trong chatbot 17/37
Đánh giá đ chính xác c a h th ng phân l p intent
Mô hình đánh giá 5-fold cross validation
Phân chia t p d li u thành 5 t p con
M i l n s d ng 4 t p con cho hu n luy n mô hình và test
trên t p còn l i
Đ đo: accuracy trên t p test
Tính trung bình cho 5 l n ch y
Engine Đ chính xác
Fpt.ai 0.85424
Wit.ai 0.83419
B ng: Đ chính xác trên t p d li u FTel
Ph m Quang Nh t Minh Các v n đ NLP trong chatbot 18/37
N i dung trình bày
1 Bài toán xác đ nh ý đ nh ngư i dùng (intent detection)
2 Bài toán trích xu t thông tin (named entity extraction)
3 Qu n lý h i tho i (dialogue management)
4 Mô hình sinh h i tho i cho chatbot
Ph m Quang Nh t Minh Các v n đ NLP trong chatbot 19/37
Hình: Ví d v c u trúc h i tho i c a chatbot. (Ngu n: stanfy.com:
http://tinyurl.com/mdfsa6h)
Ph m Quang Nh t Minh Các v n đ NLP trong chatbot 20/37
Các lo i th c th mà NLU thư ng h tr
V trí (Location)
Th i gian (Datetime)
S (Number)
Đ a ch liên l c (Contact)
Kho ng cách (Distance)
Kho ng th i gian (Duration)
Ph m Quang Nh t Minh Các v n đ NLP trong chatbot 21/37
Ví d đ u vào & đ u ra c a module trích xu t thông tin
Tôi mu n đ t vé máy bay đi Phú Qu c t sân bay N i Bài lúc 8
gi t i ngày mai.
Tôi mu n đ t vé máy bay đi <ENTITY TYPE="LOCATION">
Phú Qu c </ENTITY> t sân bay <ENTITY
TYPE="LOCATION"> N i Bài </ENTITY> lúc <ENTITY
TYPE="TIME"> 8 gi t i ngày mai </ENTITY>.
Ph m Quang Nh t Minh Các v n đ NLP trong chatbot 22/37
Mô hình gán nhãn chu i - sequence labeling
Sequence labeling là mô hình hay đư c s d ng cho bài toán
trích xu t thông tin.
Chúng ta có m t t p d li u bao g m các câu đư c gán nhãn
cho t ng t trong câu
Tôi/O mu n/O đ t/O vé/O máy/O bay/O đi/O
Phú_Qu c/B-LOCATION t /NA sân/NA bay/NA
N i_Bài/B-LOCATION lúc/NA 8/B-TIME gi /I-TIME
t i/I-TIME ngày/I-TIME mai/I-TIME.
Mô hình gán nhãn B-I-O
B: Beginning, I: Inside, O: Outside
Bài toán: Hu n luy n m t mô hình gán nhãn cho m t câu m i
Ph m Quang Nh t Minh Các v n đ NLP trong chatbot 23/37
Mô hình Conditional Random Fields (CRF)
Ý tư ng chính: Mô hình hoá xác su t đi u ki n c a m t chu i các
nhãn v i m t dãy các t cho trư c.
Mô hình hoá P(Y |X) t d li u.
V i m t câu X cho trư c, dãy các nhãn đư c ch n sao cho giá tr
P(Y |X) đ t giá tr c c đ i.
Công c : CRFsuite3, CRF++4, Mallet5,etc
3
http://www.chokkan.org/software/crfsuite/
4
https://taku910.github.io/crfpp/
5
http://mallet.cs.umass.edu/
Ph m Quang Nh t Minh Các v n đ NLP trong chatbot 24/37
N i dung trình bày
1 Bài toán xác đ nh ý đ nh ngư i dùng (intent detection)
2 Bài toán trích xu t thông tin (named entity extraction)
3 Qu n lý h i tho i (dialogue management)
4 Mô hình sinh h i tho i cho chatbot
Ph m Quang Nh t Minh Các v n đ NLP trong chatbot 25/37
Vai trò c a qu n lý h i tho i (Dialogue Manager)
Nh n đ u vào t thành ph n NLU
Qu n lý các tr ng thái h i tho i (dialogue state)
Qu n lý ng c nh h i tho i (dialogue context)
Truy n đ u ra cho thành ph n sinh ngôn ng
Ph m Quang Nh t Minh Các v n đ NLP trong chatbot 26/37
Các mô hình qu n lý h i tho i ph bi n
Mô hình d a trên máy tr ng thái h u h n (Finite State
Automata - FSA)
Mô hình d a trên frame (frame-based hay form-based)
K t h p gi a hai mô hình trên
Ph m Quang Nh t Minh Các v n đ NLP trong chatbot 27/37
Mô hình FSA
Ph m Quang Nh t Minh Các v n đ NLP trong chatbot 28/37
Mô hình qu n lý dialogue d a trên Frame
Gi i quy t như c đi m c a FSA khi ngư i dùng đưa cùng lúc
nhi u thông tin
T i m i tr ng thái, FSA ch nh n 1 câu tr l i cho 1 câu h i
D a trên các frame đ nh s n đ đ nh hư ng cu c h i tho i
M i Frame s bao g m các thông tin (slot) c n đi n và các
câu h i tương ng
Dialogue Manager s h i cho đ n khi các slot đư c đi n h t
Slot Câu h i
H tên Xin quý khách cho bi t h tên
S đi n tho i S đi n tho i c a quý khách là gì ?
Tên gói Internet Gói Internet mà quý khách đang dùng là
gì ?
T c đ Internet th c t T c đ vào Internet c a quý khách
hi n th i là bao nhiêu ?
Ph m Quang Nh t Minh Các v n đ NLP trong chatbot 29/37
Mô hình qu n lý dialogue d a trên Frame
Trong m t h i tho i có th có nhi u hơn 1 frame
Ví d : khách hàng có th v a h i v v n đ m ng ch m, v a
mu n đ i gói Internet
Dialogue manager c n bi t khi nào thì c n chuy n sang frame
khác
Đ nh nghĩa các lu t (production rule) đ chuy n gi a các frame
Ph m Quang Nh t Minh Các v n đ NLP trong chatbot 30/37
N i dung trình bày
1 Bài toán xác đ nh ý đ nh ngư i dùng (intent detection)
2 Bài toán trích xu t thông tin (named entity extraction)
3 Qu n lý h i tho i (dialogue management)
4 Mô hình sinh h i tho i cho chatbot
Ph m Quang Nh t Minh Các v n đ NLP trong chatbot 31/37
Ý tư ng chính c a mô hình sinh h i tho i (1)
Như c đi m c a mô hình truy xu t thông tin (phát hi n
intent và tr l i d a trên các m u có s n)
T n công xây d ng d li u hu n luy n và các m u tr l i
Không t n d ng đư c các h i tho i đã có
Ví d : gi a các nhân viên chăm sóc khách hàng và ngư i dùng
Ý tư ng: T n d ng các h i tho i đã có đ t đ ng sinh h i
tho i
Chatbot h c theo cách tr l i c a con ngư i trong các đo n
h i tho i trong quá kh
Ph m Quang Nh t Minh Các v n đ NLP trong chatbot 32/37
Ý tư ng chính c a mô hình sinh h i tho i (2)
Ví d v đo n h i tho i trong d li u IT Helpdesk [Vinyals
and Le 2015]6
Describe your problem: i am having issues accessing vpn
Machine: could you please let me know what are the operating
systems you are using ?
Human: i am using linux
Machine: ok it was in the ssl vpn on which you stated it was
broken
Machine: please check if you are logged in to corp network
Machine: what is the error that you are running please
Human: i am seeing an error related to vpn
Machine: what is the error message that you are getting when
connecting to vpn using network connect ?
Human: connection refused or something like that
Machine: may i know the version of network connect you
connect ?
6
https://arxiv.org/abs/1506.05869
Ph m Quang Nh t Minh Các v n đ NLP trong chatbot 33/37
Ý tư ng chính c a mô hình sinh h i tho i (3)
Chatbot theo mô hình sinh b t chư c các t ng trong câu
h i tho i c a nhân viên h tr
....
Machine: try this
Machine: goto <URL> page and enter your name and
password
Human: done
Machine: try logging in with <NAME> and check if its
working fine now
Human: yes , now it works !
Machine: great
(The <URL> indeed contains information about vpn access.)
Ph m Quang Nh t Minh Các v n đ NLP trong chatbot 34/37
Mô hình sinh h i tho i s d ng Deep Learning
Mô hình "sequence to sequence"
Gi i thi u trong bài báo "Sequence to Sequence Learning with
Neural Networks"7
Hình: Minh ho mô hình sequence-to-sequence8
7
http://tinyurl.com/kr57pde
8
https://github.com/farizrahman4u/seq2seq
Ph m Quang Nh t Minh Các v n đ NLP trong chatbot 35/37
Đ c đi m c a mô hình sinh h i tho i (neural chatbot)
Không c n d li u gán nhãn ho c c n lư ng d li u gán nhãn
ít hơn r t nhi u so v i mô hình chatbot truy n th ng
M t mô hình duy nh t h c tr c ti p t d li u h i tho i
C n d li u h i tho i l n
Mô hình không th c s ph n nh b n ch t c a h i tho i gi a
ngư i v i ngư i
Ch t lư ng h i tho i sinh ra ph thu c l n vào d li u h i
tho i
Chatbot Tay AI c a Microsoft phân bi t ch ng t c do b ngư i
dùng "hu n luy n"
Ph m Quang Nh t Minh Các v n đ NLP trong chatbot 36/37
Tóm t t n i dung đã trình bày
Các bài toán NLP cơ b n trong cách ti p c n truy n th ng
trong phát tri n chatbot
Xác đ nh intent
Trích xu t thông tin
Qu n lý h i tho i
Cách ti p c n truy n th ng
Là mô hình chatbot ph bi n trong các s n ph m chatbot
th c t
Theo mô hình truy xu t thông tin
C n nhi u d li u hu n luy n và lu t chu n b b ng tay
Thích h p cho mi n ng d ng đóng
Neural chatbot: cách ti p c n m i trong phát tri n chatbot
H c t d li u h i tho i theo mô hình “sequence to sequence“
trong Deep learning.
Ph m Quang Nh t Minh Các v n đ NLP trong chatbot 37/37

More Related Content

What's hot

Báo cáo đồ án đề tài xây dựng trợ lý ảo bằng python
Báo cáo đồ án đề tài xây dựng trợ lý ảo bằng pythonBáo cáo đồ án đề tài xây dựng trợ lý ảo bằng python
Báo cáo đồ án đề tài xây dựng trợ lý ảo bằng python
jackjohn45
 
Ứng dụng NLP vào việc xác định ý muốn người dùng (Intent Detection) và sửa lỗ...
Ứng dụng NLP vào việc xác định ý muốn người dùng (Intent Detection) và sửa lỗ...Ứng dụng NLP vào việc xác định ý muốn người dùng (Intent Detection) và sửa lỗ...
Ứng dụng NLP vào việc xác định ý muốn người dùng (Intent Detection) và sửa lỗ...
GMO-Z.com Vietnam Lab Center
 
BÀI TẬP PHÂN TÍCH THIẾT KẾ HỆ THỐNG -Bộ môn Hệ thống thông tin
BÀI TẬP PHÂN TÍCH THIẾT KẾ HỆ THỐNG -Bộ môn Hệ thống thông tin BÀI TẬP PHÂN TÍCH THIẾT KẾ HỆ THỐNG -Bộ môn Hệ thống thông tin
BÀI TẬP PHÂN TÍCH THIẾT KẾ HỆ THỐNG -Bộ môn Hệ thống thông tin
nataliej4
 
Đề tài: Quản lý cửa hàng vật liệu xây dựng, HAY, 9đ
Đề tài: Quản lý cửa hàng vật liệu xây dựng, HAY, 9đĐề tài: Quản lý cửa hàng vật liệu xây dựng, HAY, 9đ
Đề tài: Quản lý cửa hàng vật liệu xây dựng, HAY, 9đ
Dịch vụ viết bài trọn gói ZALO 0917193864
 
Slide đồ án tốt nghiệp
Slide đồ án tốt nghiệpSlide đồ án tốt nghiệp
Slide đồ án tốt nghiệp
Toan Pham
 
Bìa báo cáo
Bìa báo cáoBìa báo cáo
Bìa báo cáo
Thế Anh Nguyễn
 
Tài liệu Matlab kỹ thuật
Tài liệu Matlab kỹ thuậtTài liệu Matlab kỹ thuật
Tài liệu Matlab kỹ thuật
Pham Hoang
 
Mot so ham do hoa trong c c++
Mot so ham do hoa trong c c++Mot so ham do hoa trong c c++
Mot so ham do hoa trong c c++ANHMATTROI
 
Luận văn: Kỹ thuật đối sánh hình dạng sử dụng đặc trưng, HOT
Luận văn: Kỹ thuật đối sánh hình dạng sử dụng đặc trưng, HOTLuận văn: Kỹ thuật đối sánh hình dạng sử dụng đặc trưng, HOT
Luận văn: Kỹ thuật đối sánh hình dạng sử dụng đặc trưng, HOT
Dịch vụ viết bài trọn gói ZALO 0917193864
 
Đề tài: Xây dựng hệ thống tìm kiếm âm thanh theo nội dung, HOT
Đề tài: Xây dựng hệ thống tìm kiếm âm thanh theo nội dung, HOTĐề tài: Xây dựng hệ thống tìm kiếm âm thanh theo nội dung, HOT
Đề tài: Xây dựng hệ thống tìm kiếm âm thanh theo nội dung, HOT
Dịch vụ viết bài trọn gói ZALO 0917193864
 
đề thi java ptit
đề thi java ptitđề thi java ptit
đề thi java ptit
NguynMinh294
 
Thuật toán mã hóa rsa
Thuật toán mã hóa rsaThuật toán mã hóa rsa
Thuật toán mã hóa rsa
Bảo Điệp
 
Khóa luận nghiên cứu bài toán phân tích cảm xúc của người hùng 9166421
Khóa luận nghiên cứu bài toán phân tích cảm xúc của người hùng 9166421Khóa luận nghiên cứu bài toán phân tích cảm xúc của người hùng 9166421
Khóa luận nghiên cứu bài toán phân tích cảm xúc của người hùng 9166421
jackjohn45
 
Toán rời rạc-Dành cho sinh viên,người thi cao học
Toán rời rạc-Dành cho sinh viên,người thi cao họcToán rời rạc-Dành cho sinh viên,người thi cao học
Toán rời rạc-Dành cho sinh viên,người thi cao học
ducmanhkthd
 
Báo Cáo Đồ Án 2 : Thiết Kế Web Bán Đồng Hồ
Báo Cáo Đồ Án 2 : Thiết Kế Web Bán Đồng HồBáo Cáo Đồ Án 2 : Thiết Kế Web Bán Đồng Hồ
Báo Cáo Đồ Án 2 : Thiết Kế Web Bán Đồng HồzDollz Lovez
 
Xử lý ảnh PTIT
Xử lý ảnh PTITXử lý ảnh PTIT
Xử lý ảnh PTITTran Tien
 
Bài giảng Trí Tuệ Nhân Tạo
Bài giảng Trí Tuệ Nhân TạoBài giảng Trí Tuệ Nhân Tạo
Bài giảng Trí Tuệ Nhân TạoDự Nguyễn Quang
 

What's hot (20)

Báo cáo đồ án đề tài xây dựng trợ lý ảo bằng python
Báo cáo đồ án đề tài xây dựng trợ lý ảo bằng pythonBáo cáo đồ án đề tài xây dựng trợ lý ảo bằng python
Báo cáo đồ án đề tài xây dựng trợ lý ảo bằng python
 
Ứng dụng NLP vào việc xác định ý muốn người dùng (Intent Detection) và sửa lỗ...
Ứng dụng NLP vào việc xác định ý muốn người dùng (Intent Detection) và sửa lỗ...Ứng dụng NLP vào việc xác định ý muốn người dùng (Intent Detection) và sửa lỗ...
Ứng dụng NLP vào việc xác định ý muốn người dùng (Intent Detection) và sửa lỗ...
 
MATMA - Chuong2
MATMA - Chuong2MATMA - Chuong2
MATMA - Chuong2
 
BÀI TẬP PHÂN TÍCH THIẾT KẾ HỆ THỐNG -Bộ môn Hệ thống thông tin
BÀI TẬP PHÂN TÍCH THIẾT KẾ HỆ THỐNG -Bộ môn Hệ thống thông tin BÀI TẬP PHÂN TÍCH THIẾT KẾ HỆ THỐNG -Bộ môn Hệ thống thông tin
BÀI TẬP PHÂN TÍCH THIẾT KẾ HỆ THỐNG -Bộ môn Hệ thống thông tin
 
Đề tài: Quản lý cửa hàng vật liệu xây dựng, HAY, 9đ
Đề tài: Quản lý cửa hàng vật liệu xây dựng, HAY, 9đĐề tài: Quản lý cửa hàng vật liệu xây dựng, HAY, 9đ
Đề tài: Quản lý cửa hàng vật liệu xây dựng, HAY, 9đ
 
Slide đồ án tốt nghiệp
Slide đồ án tốt nghiệpSlide đồ án tốt nghiệp
Slide đồ án tốt nghiệp
 
Chapter1234
Chapter1234Chapter1234
Chapter1234
 
Bìa báo cáo
Bìa báo cáoBìa báo cáo
Bìa báo cáo
 
Tài liệu Matlab kỹ thuật
Tài liệu Matlab kỹ thuậtTài liệu Matlab kỹ thuật
Tài liệu Matlab kỹ thuật
 
Mot so ham do hoa trong c c++
Mot so ham do hoa trong c c++Mot so ham do hoa trong c c++
Mot so ham do hoa trong c c++
 
Luận văn: Kỹ thuật đối sánh hình dạng sử dụng đặc trưng, HOT
Luận văn: Kỹ thuật đối sánh hình dạng sử dụng đặc trưng, HOTLuận văn: Kỹ thuật đối sánh hình dạng sử dụng đặc trưng, HOT
Luận văn: Kỹ thuật đối sánh hình dạng sử dụng đặc trưng, HOT
 
Chuong04
Chuong04Chuong04
Chuong04
 
Đề tài: Xây dựng hệ thống tìm kiếm âm thanh theo nội dung, HOT
Đề tài: Xây dựng hệ thống tìm kiếm âm thanh theo nội dung, HOTĐề tài: Xây dựng hệ thống tìm kiếm âm thanh theo nội dung, HOT
Đề tài: Xây dựng hệ thống tìm kiếm âm thanh theo nội dung, HOT
 
đề thi java ptit
đề thi java ptitđề thi java ptit
đề thi java ptit
 
Thuật toán mã hóa rsa
Thuật toán mã hóa rsaThuật toán mã hóa rsa
Thuật toán mã hóa rsa
 
Khóa luận nghiên cứu bài toán phân tích cảm xúc của người hùng 9166421
Khóa luận nghiên cứu bài toán phân tích cảm xúc của người hùng 9166421Khóa luận nghiên cứu bài toán phân tích cảm xúc của người hùng 9166421
Khóa luận nghiên cứu bài toán phân tích cảm xúc của người hùng 9166421
 
Toán rời rạc-Dành cho sinh viên,người thi cao học
Toán rời rạc-Dành cho sinh viên,người thi cao họcToán rời rạc-Dành cho sinh viên,người thi cao học
Toán rời rạc-Dành cho sinh viên,người thi cao học
 
Báo Cáo Đồ Án 2 : Thiết Kế Web Bán Đồng Hồ
Báo Cáo Đồ Án 2 : Thiết Kế Web Bán Đồng HồBáo Cáo Đồ Án 2 : Thiết Kế Web Bán Đồng Hồ
Báo Cáo Đồ Án 2 : Thiết Kế Web Bán Đồng Hồ
 
Xử lý ảnh PTIT
Xử lý ảnh PTITXử lý ảnh PTIT
Xử lý ảnh PTIT
 
Bài giảng Trí Tuệ Nhân Tạo
Bài giảng Trí Tuệ Nhân TạoBài giảng Trí Tuệ Nhân Tạo
Bài giảng Trí Tuệ Nhân Tạo
 

Viewers also liked

Introduction to natural language processing
Introduction to natural language processingIntroduction to natural language processing
Introduction to natural language processing
Minh Pham
 
How to Become a Thought Leader in Your Niche
How to Become a Thought Leader in Your NicheHow to Become a Thought Leader in Your Niche
How to Become a Thought Leader in Your Niche
Leslie Samuel
 
Natural language processing
Natural language processingNatural language processing
Natural language processing
Hansi Thenuwara
 
Hype vs. Reality: The AI Explainer
Hype vs. Reality: The AI ExplainerHype vs. Reality: The AI Explainer
Hype vs. Reality: The AI Explainer
Luminary Labs
 
Visual Design with Data
Visual Design with DataVisual Design with Data
Visual Design with Data
Seth Familian
 
3 Things Every Sales Team Needs to Be Thinking About in 2017
3 Things Every Sales Team Needs to Be Thinking About in 20173 Things Every Sales Team Needs to Be Thinking About in 2017
3 Things Every Sales Team Needs to Be Thinking About in 2017
Drift
 
Manual de serviço cg125 titan ks es cg125 cargo rodatras
Manual de serviço cg125 titan ks es cg125 cargo rodatrasManual de serviço cg125 titan ks es cg125 cargo rodatras
Manual de serviço cg125 titan ks es cg125 cargo rodatras
Thiago Huari
 
Thực tập GameLoft SAI1
Thực tập GameLoft SAI1Thực tập GameLoft SAI1
Thực tập GameLoft SAI1
Trung Hiếu Trần
 
Nivea "Gesti d'Amore"
Nivea "Gesti d'Amore"Nivea "Gesti d'Amore"
Nivea "Gesti d'Amore"
Enzo Bartalotta
 
Laravel 5 framework
Laravel 5 frameworkLaravel 5 framework
Laravel 5 framework
Trung Hiếu Trần
 
Our roots
Our rootsOur roots
Our roots
comeniusipb
 
Data Mining on Twitter
Data Mining on TwitterData Mining on Twitter
Data Mining on Twitter
Pulkit Goyal
 
Event-Driven Architecture (EDA)
Event-Driven Architecture (EDA)Event-Driven Architecture (EDA)
Event-Driven Architecture (EDA)
WSO2
 
Bí Quyết nhắm đối tượng khi Quảng cáo Bất Động Sản - by Phạm Phước Nguyên.
Bí Quyết nhắm đối tượng khi Quảng cáo Bất Động Sản - by Phạm Phước Nguyên.Bí Quyết nhắm đối tượng khi Quảng cáo Bất Động Sản - by Phạm Phước Nguyên.
Bí Quyết nhắm đối tượng khi Quảng cáo Bất Động Sản - by Phạm Phước Nguyên.
Pham Phuoc Nguyen
 
The Butterfly Effect
The Butterfly EffectThe Butterfly Effect
The Butterfly Effect
julieadamen
 
Kaggle presentation
Kaggle presentationKaggle presentation
Kaggle presentation
HJ van Veen
 
Butterfly effect
Butterfly effectButterfly effect
Butterfly effect
Punit Goswami
 
A Secure Model of IoT Using Blockchain
A Secure Model of IoT Using BlockchainA Secure Model of IoT Using Blockchain
A Secure Model of IoT Using Blockchain
Altoros
 
Chaos Theory And Strategy: Theory Application And Managerial Implications
Chaos Theory And Strategy: Theory Application And Managerial ImplicationsChaos Theory And Strategy: Theory Application And Managerial Implications
Chaos Theory And Strategy: Theory Application And Managerial Implications
Taimur Khan
 
Chaos theory the butterfly effect
Chaos theory the butterfly effectChaos theory the butterfly effect
Chaos theory the butterfly effectAssaad Moawad
 

Viewers also liked (20)

Introduction to natural language processing
Introduction to natural language processingIntroduction to natural language processing
Introduction to natural language processing
 
How to Become a Thought Leader in Your Niche
How to Become a Thought Leader in Your NicheHow to Become a Thought Leader in Your Niche
How to Become a Thought Leader in Your Niche
 
Natural language processing
Natural language processingNatural language processing
Natural language processing
 
Hype vs. Reality: The AI Explainer
Hype vs. Reality: The AI ExplainerHype vs. Reality: The AI Explainer
Hype vs. Reality: The AI Explainer
 
Visual Design with Data
Visual Design with DataVisual Design with Data
Visual Design with Data
 
3 Things Every Sales Team Needs to Be Thinking About in 2017
3 Things Every Sales Team Needs to Be Thinking About in 20173 Things Every Sales Team Needs to Be Thinking About in 2017
3 Things Every Sales Team Needs to Be Thinking About in 2017
 
Manual de serviço cg125 titan ks es cg125 cargo rodatras
Manual de serviço cg125 titan ks es cg125 cargo rodatrasManual de serviço cg125 titan ks es cg125 cargo rodatras
Manual de serviço cg125 titan ks es cg125 cargo rodatras
 
Thực tập GameLoft SAI1
Thực tập GameLoft SAI1Thực tập GameLoft SAI1
Thực tập GameLoft SAI1
 
Nivea "Gesti d'Amore"
Nivea "Gesti d'Amore"Nivea "Gesti d'Amore"
Nivea "Gesti d'Amore"
 
Laravel 5 framework
Laravel 5 frameworkLaravel 5 framework
Laravel 5 framework
 
Our roots
Our rootsOur roots
Our roots
 
Data Mining on Twitter
Data Mining on TwitterData Mining on Twitter
Data Mining on Twitter
 
Event-Driven Architecture (EDA)
Event-Driven Architecture (EDA)Event-Driven Architecture (EDA)
Event-Driven Architecture (EDA)
 
Bí Quyết nhắm đối tượng khi Quảng cáo Bất Động Sản - by Phạm Phước Nguyên.
Bí Quyết nhắm đối tượng khi Quảng cáo Bất Động Sản - by Phạm Phước Nguyên.Bí Quyết nhắm đối tượng khi Quảng cáo Bất Động Sản - by Phạm Phước Nguyên.
Bí Quyết nhắm đối tượng khi Quảng cáo Bất Động Sản - by Phạm Phước Nguyên.
 
The Butterfly Effect
The Butterfly EffectThe Butterfly Effect
The Butterfly Effect
 
Kaggle presentation
Kaggle presentationKaggle presentation
Kaggle presentation
 
Butterfly effect
Butterfly effectButterfly effect
Butterfly effect
 
A Secure Model of IoT Using Blockchain
A Secure Model of IoT Using BlockchainA Secure Model of IoT Using Blockchain
A Secure Model of IoT Using Blockchain
 
Chaos Theory And Strategy: Theory Application And Managerial Implications
Chaos Theory And Strategy: Theory Application And Managerial ImplicationsChaos Theory And Strategy: Theory Application And Managerial Implications
Chaos Theory And Strategy: Theory Application And Managerial Implications
 
Chaos theory the butterfly effect
Chaos theory the butterfly effectChaos theory the butterfly effect
Chaos theory the butterfly effect
 

Similar to Các bài toán xử lý ngôn ngữ tự nhiên trong phát triển hệ thống chatbot

trí tuệ nhân tạo AI.pdf
trí tuệ nhân tạo AI.pdftrí tuệ nhân tạo AI.pdf
trí tuệ nhân tạo AI.pdf
QucHiNguynT
 
Prompt Engineering Tutorial: Cách viết prompt hiệu quả với ChatGPT
Prompt Engineering Tutorial: Cách viết prompt hiệu quả với ChatGPTPrompt Engineering Tutorial: Cách viết prompt hiệu quả với ChatGPT
Prompt Engineering Tutorial: Cách viết prompt hiệu quả với ChatGPT
Minh Pham
 
[1]he thong thong tin quan ly th s_nguyenanhhao
[1]he thong thong tin quan ly th s_nguyenanhhao[1]he thong thong tin quan ly th s_nguyenanhhao
[1]he thong thong tin quan ly th s_nguyenanhhaoBichtram Nguyen
 
01. Giới thiệu chatbot.pdf
01. Giới thiệu chatbot.pdf01. Giới thiệu chatbot.pdf
01. Giới thiệu chatbot.pdf
tungdinhthanh3
 
Presentation skill Rèn luyện kỹ năng thuyết trình và nói trước đám đông
Presentation skill Rèn luyện kỹ năng thuyết trình và nói trước đám đôngPresentation skill Rèn luyện kỹ năng thuyết trình và nói trước đám đông
Presentation skill Rèn luyện kỹ năng thuyết trình và nói trước đám đông
thanhnguyendinh
 
69 câu hỏi phỏng vấn kỹ sư Công nghệ Thông tin
69 câu hỏi phỏng vấn kỹ  sư Công nghệ Thông tin69 câu hỏi phỏng vấn kỹ  sư Công nghệ Thông tin
69 câu hỏi phỏng vấn kỹ sư Công nghệ Thông tin
Vu Hung Nguyen
 
Chuong 2 phan tich cong viec
Chuong 2 phan tich cong viecChuong 2 phan tich cong viec
Chuong 2 phan tich cong viec
Tuan Vu Thanh Phong
 
Báo Cáo Cuối Kỳ Cá Nhân.pptx
Báo Cáo Cuối Kỳ Cá Nhân.pptxBáo Cáo Cuối Kỳ Cá Nhân.pptx
Báo Cáo Cuối Kỳ Cá Nhân.pptx
cAnhTrn53
 
Một số vấn đề về giao diện
Một số vấn đề về giao diệnMột số vấn đề về giao diện
Một số vấn đề về giao diệnNguyen Tran
 

Similar to Các bài toán xử lý ngôn ngữ tự nhiên trong phát triển hệ thống chatbot (11)

trí tuệ nhân tạo AI.pdf
trí tuệ nhân tạo AI.pdftrí tuệ nhân tạo AI.pdf
trí tuệ nhân tạo AI.pdf
 
Prompt Engineering Tutorial: Cách viết prompt hiệu quả với ChatGPT
Prompt Engineering Tutorial: Cách viết prompt hiệu quả với ChatGPTPrompt Engineering Tutorial: Cách viết prompt hiệu quả với ChatGPT
Prompt Engineering Tutorial: Cách viết prompt hiệu quả với ChatGPT
 
[1]he thong thong tin quan ly th s_nguyenanhhao
[1]he thong thong tin quan ly th s_nguyenanhhao[1]he thong thong tin quan ly th s_nguyenanhhao
[1]he thong thong tin quan ly th s_nguyenanhhao
 
01. Giới thiệu chatbot.pdf
01. Giới thiệu chatbot.pdf01. Giới thiệu chatbot.pdf
01. Giới thiệu chatbot.pdf
 
Presentation skill Rèn luyện kỹ năng thuyết trình và nói trước đám đông
Presentation skill Rèn luyện kỹ năng thuyết trình và nói trước đám đôngPresentation skill Rèn luyện kỹ năng thuyết trình và nói trước đám đông
Presentation skill Rèn luyện kỹ năng thuyết trình và nói trước đám đông
 
10 bai tap
10 bai tap10 bai tap
10 bai tap
 
69 câu hỏi phỏng vấn kỹ sư Công nghệ Thông tin
69 câu hỏi phỏng vấn kỹ  sư Công nghệ Thông tin69 câu hỏi phỏng vấn kỹ  sư Công nghệ Thông tin
69 câu hỏi phỏng vấn kỹ sư Công nghệ Thông tin
 
DetaiBTL
DetaiBTLDetaiBTL
DetaiBTL
 
Chuong 2 phan tich cong viec
Chuong 2 phan tich cong viecChuong 2 phan tich cong viec
Chuong 2 phan tich cong viec
 
Báo Cáo Cuối Kỳ Cá Nhân.pptx
Báo Cáo Cuối Kỳ Cá Nhân.pptxBáo Cáo Cuối Kỳ Cá Nhân.pptx
Báo Cáo Cuối Kỳ Cá Nhân.pptx
 
Một số vấn đề về giao diện
Một số vấn đề về giao diệnMột số vấn đề về giao diện
Một số vấn đề về giao diện
 

More from Minh Pham

AimeLaw at ALQAC 2021: Enriching Neural Network Models with Legal-Domain Know...
AimeLaw at ALQAC 2021: Enriching Neural Network Models with Legal-Domain Know...AimeLaw at ALQAC 2021: Enriching Neural Network Models with Legal-Domain Know...
AimeLaw at ALQAC 2021: Enriching Neural Network Models with Legal-Domain Know...
Minh Pham
 
A Multimodal Ensemble Model for Detecting Unreliable Information on Vietnames...
A Multimodal Ensemble Model for Detecting Unreliable Information on Vietnames...A Multimodal Ensemble Model for Detecting Unreliable Information on Vietnames...
A Multimodal Ensemble Model for Detecting Unreliable Information on Vietnames...
Minh Pham
 
Research methods for engineering students (v.2020)
Research methods for engineering students (v.2020)Research methods for engineering students (v.2020)
Research methods for engineering students (v.2020)
Minh Pham
 
Giới thiệu về AIML
Giới thiệu về AIMLGiới thiệu về AIML
Giới thiệu về AIML
Minh Pham
 
Mạng neural nhân tạo và ứng dụng trong xử lý ngôn ngữ tự nhiên
Mạng neural nhân tạo và ứng dụng trong xử lý ngôn ngữ tự nhiênMạng neural nhân tạo và ứng dụng trong xử lý ngôn ngữ tự nhiên
Mạng neural nhân tạo và ứng dụng trong xử lý ngôn ngữ tự nhiên
Minh Pham
 
BERT: Pre-training of Deep Bidirectional Transformers for Language Understanding
BERT: Pre-training of Deep Bidirectional Transformers for Language UnderstandingBERT: Pre-training of Deep Bidirectional Transformers for Language Understanding
BERT: Pre-training of Deep Bidirectional Transformers for Language Understanding
Minh Pham
 
Deep Contexualized Representation
Deep Contexualized RepresentationDeep Contexualized Representation
Deep Contexualized Representation
Minh Pham
 
Research Methods in Natural Language Processing (2018 version)
Research Methods in Natural Language Processing (2018 version)Research Methods in Natural Language Processing (2018 version)
Research Methods in Natural Language Processing (2018 version)
Minh Pham
 
A Feature-Based Model for Nested Named-Entity Recognition at VLSP-2018 NER Ev...
A Feature-Based Model for Nested Named-Entity Recognition at VLSP-2018 NER Ev...A Feature-Based Model for Nested Named-Entity Recognition at VLSP-2018 NER Ev...
A Feature-Based Model for Nested Named-Entity Recognition at VLSP-2018 NER Ev...
Minh Pham
 
Research Methods in Natural Language Processing
Research Methods in Natural Language ProcessingResearch Methods in Natural Language Processing
Research Methods in Natural Language Processing
Minh Pham
 

More from Minh Pham (10)

AimeLaw at ALQAC 2021: Enriching Neural Network Models with Legal-Domain Know...
AimeLaw at ALQAC 2021: Enriching Neural Network Models with Legal-Domain Know...AimeLaw at ALQAC 2021: Enriching Neural Network Models with Legal-Domain Know...
AimeLaw at ALQAC 2021: Enriching Neural Network Models with Legal-Domain Know...
 
A Multimodal Ensemble Model for Detecting Unreliable Information on Vietnames...
A Multimodal Ensemble Model for Detecting Unreliable Information on Vietnames...A Multimodal Ensemble Model for Detecting Unreliable Information on Vietnames...
A Multimodal Ensemble Model for Detecting Unreliable Information on Vietnames...
 
Research methods for engineering students (v.2020)
Research methods for engineering students (v.2020)Research methods for engineering students (v.2020)
Research methods for engineering students (v.2020)
 
Giới thiệu về AIML
Giới thiệu về AIMLGiới thiệu về AIML
Giới thiệu về AIML
 
Mạng neural nhân tạo và ứng dụng trong xử lý ngôn ngữ tự nhiên
Mạng neural nhân tạo và ứng dụng trong xử lý ngôn ngữ tự nhiênMạng neural nhân tạo và ứng dụng trong xử lý ngôn ngữ tự nhiên
Mạng neural nhân tạo và ứng dụng trong xử lý ngôn ngữ tự nhiên
 
BERT: Pre-training of Deep Bidirectional Transformers for Language Understanding
BERT: Pre-training of Deep Bidirectional Transformers for Language UnderstandingBERT: Pre-training of Deep Bidirectional Transformers for Language Understanding
BERT: Pre-training of Deep Bidirectional Transformers for Language Understanding
 
Deep Contexualized Representation
Deep Contexualized RepresentationDeep Contexualized Representation
Deep Contexualized Representation
 
Research Methods in Natural Language Processing (2018 version)
Research Methods in Natural Language Processing (2018 version)Research Methods in Natural Language Processing (2018 version)
Research Methods in Natural Language Processing (2018 version)
 
A Feature-Based Model for Nested Named-Entity Recognition at VLSP-2018 NER Ev...
A Feature-Based Model for Nested Named-Entity Recognition at VLSP-2018 NER Ev...A Feature-Based Model for Nested Named-Entity Recognition at VLSP-2018 NER Ev...
A Feature-Based Model for Nested Named-Entity Recognition at VLSP-2018 NER Ev...
 
Research Methods in Natural Language Processing
Research Methods in Natural Language ProcessingResearch Methods in Natural Language Processing
Research Methods in Natural Language Processing
 

Các bài toán xử lý ngôn ngữ tự nhiên trong phát triển hệ thống chatbot

  • 1. Các bài toán x lý ngôn ng t nhiên trong phát tri n h th ng chatbot Ph m Quang Nh t Minh Vi n nghiên c u công ngh FPT (FTRI) minhpqn2@fe.edu.vn Ngày 30 tháng 3 năm 2017
  • 2. M t s h th ng giao ti p t đ ng Hình: Chatbot Symptomate1 cho ch n đoán b nh và tr lý o Cortana 1 https://www.facebook.com/Symptomate Ph m Quang Nh t Minh Các v n đ NLP trong chatbot 2/37
  • 3. Vì sao nhu c u s d ng chatbot ngày càng tăng? Chatbot h u ích trong các h th ng tr c tuy n v i s lư ng l n ngư i dùng: H tr ho c thay th ngư i trong m t s tác v : chăm sóc khách hàng, h tr đ t hàng, tr l i câu h i, giáo d c,. . . R t nhi u các n n t ng h tr trò chuy n tr c tuy n: Facebook messenger, Slack, Skype, Telegram,... S lư ng ngư i dùng đi n tho i thông minh ngày càng nhi u Nh ng bư c ti n m i trong ngành AI: X lý ngôn ng t nhiên X lý ti ng nói H c máy Ngày càng nhi u platform h tr t o chatbot Ph m Quang Nh t Minh Các v n đ NLP trong chatbot 3/37
  • 4. N n t ng h tr phát tri n chatbot M t s n n t ng h tr phát tri n chatbot: Watson Conversation Service Microsoft’s LUIS Google Natural Language API Wit.ai Api.ai Amazon Lex Ph m Quang Nh t Minh Các v n đ NLP trong chatbot 4/37
  • 5. Ki n trúc cơ b n c a m t h th ng tr l i t đ ng Hình: Ki n trúc cơ b n c a m t h th ng tr l i t đ ng2 2 nh l y t cu n sách c a Daniel Jurafsky và James Martin Ph m Quang Nh t Minh Các v n đ NLP trong chatbot 5/37
  • 6. Hình: Ví d v c u trúc h i tho i c a chatbot. (Ngu n: stanfy.com: http://tinyurl.com/mdfsa6h) Ph m Quang Nh t Minh Các v n đ NLP trong chatbot 6/37
  • 7. N i dung trình bày 1 Bài toán xác đ nh ý đ nh ngư i dùng (intent detection) 2 Bài toán trích xu t thông tin (named entity extraction) 3 Qu n lý h i tho i (dialogue management) 4 Mô hình sinh h i tho i cho chatbot Ph m Quang Nh t Minh Các v n đ NLP trong chatbot 7/37
  • 8. N i dung trình bày 1 Bài toán xác đ nh ý đ nh ngư i dùng (intent detection) 2 Bài toán trích xu t thông tin (named entity extraction) 3 Qu n lý h i tho i (dialogue management) 4 Mô hình sinh h i tho i cho chatbot Ph m Quang Nh t Minh Các v n đ NLP trong chatbot 8/37
  • 9. Ý đ nh (intent) là gì? Intent: Đi u ngư i dùng mong mu n chatbot th c hi n (h tr ) khi đưa ra câu h i tho i Ví d , khi ngư i dùng mu n chatbot đưa ra thông tin v th i ti t hôm nay Th i ti t hôm nay th nào ad? Hà N i hôm nay có mưa không v y? Tr i hôm nay th nào b n? Ph m Quang Nh t Minh Các v n đ NLP trong chatbot 9/37
  • 10. T i sao xác đ nh intent quan tr ng? Intent đư c xác đ nh s quy t đ nh c u trúc (frame) và k ch b n (script) c a đo n h i tho i ti p theo. N u chatbot xác đ nh sai intent: Ph n h i không thích h p → Ngư i dùng không hài lòng → R i b h th ng Ph m Quang Nh t Minh Các v n đ NLP trong chatbot 10/37
  • 11. Các v n đ trong bài toán xác đ nh intent (1) Làm sao đ nh n bi t nh ng cách di n đ t khác nhau cho cùng m t intent? Ví d , t “lag“ và “ch m“ trong 2 câu sau mang cùng ng nghĩa Ad ơi, sao m ng nhà em d o này ch m th ? M ng lag l m, dùng r t c ch . Ngư i dùng có th dùng câu h i, câu c u khi n hay câu than phi n khi đưa ra yêu c u h tr Ph m Quang Nh t Minh Các v n đ NLP trong chatbot 11/37
  • 12. Các v n đ trong bài toán xác đ nh intent (2) X lý v n đ sai chính t Ví d : “Ad ơi, m ng chaamj l m“ Trong ti ng Vi t, chúng ta có th ph i x lý v n đ ti ng Vi t không d u và mix gi a có d u và không d u. X lý các t vi t t t, ngôn ng chat Ph m Quang Nh t Minh Các v n đ NLP trong chatbot 12/37
  • 13. Cách ti p c n h c máy cho bài toán xác đ nh intent Trong nh ng nh ng mi n ng d ng đóng (closed domain) S lư ng intent là h u h n Mô hình phân l p văn b n (text classification) Hu n luy n mô hình phân l p intent t m t t p d li u hu n luy n intent text order.pizza i want a small pizza with tomatos order.pizza i want a pizza with bbq souce order.pizza pizza delivery greeting Hi greeting Hello ... B ng: Ví d v d li u hu n luy n cho chatbot ph c v order pizza (Api.ai) Ph m Quang Nh t Minh Các v n đ NLP trong chatbot 13/37
  • 14. Mô hình phân l p intent Hình: Ki n trúc h th ng phân l p intent Ph m Quang Nh t Minh Các v n đ NLP trong chatbot 14/37
  • 15. Ti n x lý d li u Tách t (word segmentation) X lý t gõ sai chính t (ví d m ng chaamj) X lý t vi t t t (ví d : gõ ip thay vì iphone) POS Tagging Ph m Quang Nh t Minh Các v n đ NLP trong chatbot 15/37
  • 16. Trích xu t đ c trưng Bag-of-words Hi n t i intent detection t i FPT.AI đang s d ng bag-of-word features tf-idf features ... Ph m Quang Nh t Minh Các v n đ NLP trong chatbot 16/37
  • 17. Thu t toán hu n luy n mô hình phân l p Thu t toán phân l p ph bi n: Support Vector Machines (SVM) Random Forest Quora đang s d ng đ phát hi n câu h i trùng l p Neural Networks FPT.AI s d ng mô hình m ng Neural Feed Forward v i m t t ng n S d ng thư vi n keras v i Theano backed end. Ph m Quang Nh t Minh Các v n đ NLP trong chatbot 17/37
  • 18. Đánh giá đ chính xác c a h th ng phân l p intent Mô hình đánh giá 5-fold cross validation Phân chia t p d li u thành 5 t p con M i l n s d ng 4 t p con cho hu n luy n mô hình và test trên t p còn l i Đ đo: accuracy trên t p test Tính trung bình cho 5 l n ch y Engine Đ chính xác Fpt.ai 0.85424 Wit.ai 0.83419 B ng: Đ chính xác trên t p d li u FTel Ph m Quang Nh t Minh Các v n đ NLP trong chatbot 18/37
  • 19. N i dung trình bày 1 Bài toán xác đ nh ý đ nh ngư i dùng (intent detection) 2 Bài toán trích xu t thông tin (named entity extraction) 3 Qu n lý h i tho i (dialogue management) 4 Mô hình sinh h i tho i cho chatbot Ph m Quang Nh t Minh Các v n đ NLP trong chatbot 19/37
  • 20. Hình: Ví d v c u trúc h i tho i c a chatbot. (Ngu n: stanfy.com: http://tinyurl.com/mdfsa6h) Ph m Quang Nh t Minh Các v n đ NLP trong chatbot 20/37
  • 21. Các lo i th c th mà NLU thư ng h tr V trí (Location) Th i gian (Datetime) S (Number) Đ a ch liên l c (Contact) Kho ng cách (Distance) Kho ng th i gian (Duration) Ph m Quang Nh t Minh Các v n đ NLP trong chatbot 21/37
  • 22. Ví d đ u vào & đ u ra c a module trích xu t thông tin Tôi mu n đ t vé máy bay đi Phú Qu c t sân bay N i Bài lúc 8 gi t i ngày mai. Tôi mu n đ t vé máy bay đi <ENTITY TYPE="LOCATION"> Phú Qu c </ENTITY> t sân bay <ENTITY TYPE="LOCATION"> N i Bài </ENTITY> lúc <ENTITY TYPE="TIME"> 8 gi t i ngày mai </ENTITY>. Ph m Quang Nh t Minh Các v n đ NLP trong chatbot 22/37
  • 23. Mô hình gán nhãn chu i - sequence labeling Sequence labeling là mô hình hay đư c s d ng cho bài toán trích xu t thông tin. Chúng ta có m t t p d li u bao g m các câu đư c gán nhãn cho t ng t trong câu Tôi/O mu n/O đ t/O vé/O máy/O bay/O đi/O Phú_Qu c/B-LOCATION t /NA sân/NA bay/NA N i_Bài/B-LOCATION lúc/NA 8/B-TIME gi /I-TIME t i/I-TIME ngày/I-TIME mai/I-TIME. Mô hình gán nhãn B-I-O B: Beginning, I: Inside, O: Outside Bài toán: Hu n luy n m t mô hình gán nhãn cho m t câu m i Ph m Quang Nh t Minh Các v n đ NLP trong chatbot 23/37
  • 24. Mô hình Conditional Random Fields (CRF) Ý tư ng chính: Mô hình hoá xác su t đi u ki n c a m t chu i các nhãn v i m t dãy các t cho trư c. Mô hình hoá P(Y |X) t d li u. V i m t câu X cho trư c, dãy các nhãn đư c ch n sao cho giá tr P(Y |X) đ t giá tr c c đ i. Công c : CRFsuite3, CRF++4, Mallet5,etc 3 http://www.chokkan.org/software/crfsuite/ 4 https://taku910.github.io/crfpp/ 5 http://mallet.cs.umass.edu/ Ph m Quang Nh t Minh Các v n đ NLP trong chatbot 24/37
  • 25. N i dung trình bày 1 Bài toán xác đ nh ý đ nh ngư i dùng (intent detection) 2 Bài toán trích xu t thông tin (named entity extraction) 3 Qu n lý h i tho i (dialogue management) 4 Mô hình sinh h i tho i cho chatbot Ph m Quang Nh t Minh Các v n đ NLP trong chatbot 25/37
  • 26. Vai trò c a qu n lý h i tho i (Dialogue Manager) Nh n đ u vào t thành ph n NLU Qu n lý các tr ng thái h i tho i (dialogue state) Qu n lý ng c nh h i tho i (dialogue context) Truy n đ u ra cho thành ph n sinh ngôn ng Ph m Quang Nh t Minh Các v n đ NLP trong chatbot 26/37
  • 27. Các mô hình qu n lý h i tho i ph bi n Mô hình d a trên máy tr ng thái h u h n (Finite State Automata - FSA) Mô hình d a trên frame (frame-based hay form-based) K t h p gi a hai mô hình trên Ph m Quang Nh t Minh Các v n đ NLP trong chatbot 27/37
  • 28. Mô hình FSA Ph m Quang Nh t Minh Các v n đ NLP trong chatbot 28/37
  • 29. Mô hình qu n lý dialogue d a trên Frame Gi i quy t như c đi m c a FSA khi ngư i dùng đưa cùng lúc nhi u thông tin T i m i tr ng thái, FSA ch nh n 1 câu tr l i cho 1 câu h i D a trên các frame đ nh s n đ đ nh hư ng cu c h i tho i M i Frame s bao g m các thông tin (slot) c n đi n và các câu h i tương ng Dialogue Manager s h i cho đ n khi các slot đư c đi n h t Slot Câu h i H tên Xin quý khách cho bi t h tên S đi n tho i S đi n tho i c a quý khách là gì ? Tên gói Internet Gói Internet mà quý khách đang dùng là gì ? T c đ Internet th c t T c đ vào Internet c a quý khách hi n th i là bao nhiêu ? Ph m Quang Nh t Minh Các v n đ NLP trong chatbot 29/37
  • 30. Mô hình qu n lý dialogue d a trên Frame Trong m t h i tho i có th có nhi u hơn 1 frame Ví d : khách hàng có th v a h i v v n đ m ng ch m, v a mu n đ i gói Internet Dialogue manager c n bi t khi nào thì c n chuy n sang frame khác Đ nh nghĩa các lu t (production rule) đ chuy n gi a các frame Ph m Quang Nh t Minh Các v n đ NLP trong chatbot 30/37
  • 31. N i dung trình bày 1 Bài toán xác đ nh ý đ nh ngư i dùng (intent detection) 2 Bài toán trích xu t thông tin (named entity extraction) 3 Qu n lý h i tho i (dialogue management) 4 Mô hình sinh h i tho i cho chatbot Ph m Quang Nh t Minh Các v n đ NLP trong chatbot 31/37
  • 32. Ý tư ng chính c a mô hình sinh h i tho i (1) Như c đi m c a mô hình truy xu t thông tin (phát hi n intent và tr l i d a trên các m u có s n) T n công xây d ng d li u hu n luy n và các m u tr l i Không t n d ng đư c các h i tho i đã có Ví d : gi a các nhân viên chăm sóc khách hàng và ngư i dùng Ý tư ng: T n d ng các h i tho i đã có đ t đ ng sinh h i tho i Chatbot h c theo cách tr l i c a con ngư i trong các đo n h i tho i trong quá kh Ph m Quang Nh t Minh Các v n đ NLP trong chatbot 32/37
  • 33. Ý tư ng chính c a mô hình sinh h i tho i (2) Ví d v đo n h i tho i trong d li u IT Helpdesk [Vinyals and Le 2015]6 Describe your problem: i am having issues accessing vpn Machine: could you please let me know what are the operating systems you are using ? Human: i am using linux Machine: ok it was in the ssl vpn on which you stated it was broken Machine: please check if you are logged in to corp network Machine: what is the error that you are running please Human: i am seeing an error related to vpn Machine: what is the error message that you are getting when connecting to vpn using network connect ? Human: connection refused or something like that Machine: may i know the version of network connect you connect ? 6 https://arxiv.org/abs/1506.05869 Ph m Quang Nh t Minh Các v n đ NLP trong chatbot 33/37
  • 34. Ý tư ng chính c a mô hình sinh h i tho i (3) Chatbot theo mô hình sinh b t chư c các t ng trong câu h i tho i c a nhân viên h tr .... Machine: try this Machine: goto <URL> page and enter your name and password Human: done Machine: try logging in with <NAME> and check if its working fine now Human: yes , now it works ! Machine: great (The <URL> indeed contains information about vpn access.) Ph m Quang Nh t Minh Các v n đ NLP trong chatbot 34/37
  • 35. Mô hình sinh h i tho i s d ng Deep Learning Mô hình "sequence to sequence" Gi i thi u trong bài báo "Sequence to Sequence Learning with Neural Networks"7 Hình: Minh ho mô hình sequence-to-sequence8 7 http://tinyurl.com/kr57pde 8 https://github.com/farizrahman4u/seq2seq Ph m Quang Nh t Minh Các v n đ NLP trong chatbot 35/37
  • 36. Đ c đi m c a mô hình sinh h i tho i (neural chatbot) Không c n d li u gán nhãn ho c c n lư ng d li u gán nhãn ít hơn r t nhi u so v i mô hình chatbot truy n th ng M t mô hình duy nh t h c tr c ti p t d li u h i tho i C n d li u h i tho i l n Mô hình không th c s ph n nh b n ch t c a h i tho i gi a ngư i v i ngư i Ch t lư ng h i tho i sinh ra ph thu c l n vào d li u h i tho i Chatbot Tay AI c a Microsoft phân bi t ch ng t c do b ngư i dùng "hu n luy n" Ph m Quang Nh t Minh Các v n đ NLP trong chatbot 36/37
  • 37. Tóm t t n i dung đã trình bày Các bài toán NLP cơ b n trong cách ti p c n truy n th ng trong phát tri n chatbot Xác đ nh intent Trích xu t thông tin Qu n lý h i tho i Cách ti p c n truy n th ng Là mô hình chatbot ph bi n trong các s n ph m chatbot th c t Theo mô hình truy xu t thông tin C n nhi u d li u hu n luy n và lu t chu n b b ng tay Thích h p cho mi n ng d ng đóng Neural chatbot: cách ti p c n m i trong phát tri n chatbot H c t d li u h i tho i theo mô hình “sequence to sequence“ trong Deep learning. Ph m Quang Nh t Minh Các v n đ NLP trong chatbot 37/37