SlideShare a Scribd company logo
1 of 72
Download to read offline
TRƯỜNG ĐẠ Ọ Ộ
I H C BÁCH KHOA HÀ N I
LUẬN VĂN THẠC SĨ
Xây d ng ng d n khách hàng
ự ứ ụng Chatbot tư vấ
s d ng các k thu t h c sâu
ử ụ ỹ ậ ọ
NGUY C HI U
ỄN ĐẮ Ế
Ngành Công ngh thông tin
ệ
Giảng viên hướ ẫ
ng d n: PGS.TS. Cao Tuấn Dũng
Viện: Công ngh thông tin và truy n thông
ệ ề
HÀ N 2021
ỘI,
TRƯỜNG ĐẠ Ọ Ộ
I H C BÁCH KHOA HÀ N I
LUẬN VĂN THẠC SĨ
Xây d ng ng d n khách hàng
ự ứ ụng Chatbot tư vấ
s d ng các k thu t h c sâu
ử ụ ỹ ậ ọ
NGUY C HI U
ỄN ĐẮ Ế
Ngành Công ngh thông tin
ệ
Giảng viên hướng dẫn: PGS.TS. Cao Tuấn Dũng
Viện: Công ngh thông tin và truy n thông
ệ ề
HÀ N 2021
ỘI,
ký c a GVHD
Chữ ủ
C NG HÒA XÃ H I CH
Ộ Ộ Ủ NGHĨA VIỆT NAM
Độ ậ – ự – ạ
c l p T do H nh phúc
B N XÁC NH N CH NH S A LU
Ả Ậ Ỉ Ử ẬN VĂN THẠC SĨ
H và tên tác gi
ọ ả luận văn : Nguy c Hi u
ễn Đắ ế
Đề ận văn
tài lu : Xây d ng ng d n khách hàng s d
ự ứ ụng Chatbot tư vấ ử ụng
các k c sâu
ỹ ậ
thu t họ
Chuyên ngành: Công ngh thông tin
ệ
Mã số HV: CB190157
Tác gi ng d n khoa h c và H ng ch m lu
ả, Người hướ ẫ ọ ộ ồ
i đ ấ ận văn xác nhận
tác gi a ch a, b sung lu n h p H ng ngày
ả đã sử ữ ổ ận văn theo biên bả ọ ội đồ
30/10/2021 v i dung sau:
ới các nộ
1. S thành m t ph
ửa Chương 4: Kế ậ
t lu n ộ ần không đánh số (trang 58).
2. Giản lượ ộ
c n i dung Chương 2: Cơ sở ế
lý thuy t.
3. 17 24
Việ ừ ế ụ –
t hóa các t ti ng Anh (M c 2.3 trang - , M c 2.4 trang
ụ –
25-31).
4. B sung khái ni m h c chuy n giao (M c 2.4.2 trang 2
ổ ệ ọ ể ụ – 7)
5. B sung mô hình t ng quát quy trình ho ng c a Chatbot (M
ổ ổ ạt độ ủ ục
3.3.2 trang 40 ng kê k t qu (Hình 3.18-3.21 trang 53- )
– ), thố ế ả – 56
6. Đánh số ứ ử ỗ ề ữ ả
các công th c, s a các l i v trình bày ngôn ng , chính t
cho h p lý, ví d s
ợ ụ ửa “đào tạo mô hình” thành “huấn luyện mô hình”.
Ngày tháng năm 2021
Giáo viên hướ ẫ
ng d n Tác giả luận văn
T CH H
CHỦ Ị Ộ Ồ
I Đ NG
LỜI CAM ĐOAN
Tôi xin cam đoan: Luận văn “Xây dự ứ ụng Chatbot tư vấ
ng ng d n khách
hàng s d ng các k thu t h
ử ụ ỹ ậ ọc sâu” là công trình nghiên c u khoa h c l
ứ ọc, độ ập
c a tôi. Ki n th c trình bày trong lu t ng h p c a cá nhân, thông qua
ủ ế ứ ận văn là sự ổ ợ ủ
các ki n th c t ng d n, các tài li u tham kh o trên m ng internet và các
ế ứ ừ thầy hướ ẫ ệ ả ạ
bài báo khoa h c khác.
ọ
Đây là đề ận văn Thạ ỹ ệ ế ả
tài lu c s ngành Công ngh Thông tin. K t qu nghiên
c c trình bày trong lu c công b i b t k hình
ứu đượ ận văn này chưa từng đượ ố dướ ấ ỳ
thức nào.
Hà N i, ngày th
ộ áng năm 2021
Tác giả luận văn
Nguy c Hi u
ễn Đắ ế
L I C
Ờ ẢM ƠN
Trước tiên, tôi xin chân thành cảm ơn các thầy, các cô trong Vi n Công ngh
ệ ệ
thông tin và Truy n thông - i h c Bách Khoa Hà N n tình gi
ề Trường Đạ ọ ội đã tậ ảng
d trong su t th i gian tôi h c t hoàn thành Lu
ạy ố ờ ọ ập ở trường. Để ận văn thạc sĩ, tôi
cũng đã nhận đượ ề
c nhi u sự quan tâm, giúp đỡ ừ
t quý thầy cô, gia đình và bạn bè.
Đặ ệ ỏ ết ơn sâu sắ ớ ầ
c bi t tôi bày t lòng bi c t i th y PGS.TS. Cao Tuấn Dũng
đã tậ ỉ ảo, hướ ẫ ự ếp tôi để tìm ra hướ ứ ể
n tình ch b ng d n tr c ti ng nghiên c u và có th
hoàn thi n lu t nghi p c
ệ ận văn tố ệ ủa mình.
Cuối cùng, tôi xin cảm ơn gia đình và bạn bè và t p th l
ậ ể ớp CNTT 2019B đã
luôn ng h
ủ ộ, giúp đỡ tôi trong th i gian h c t p, nghiên c u và th c hi n lu
ờ ọ ậ ứ ự ệ ận văn
t t nghi
ố ệp.
Trong quá trình làm lu t nghi p ch c ch n không tránh kh i nh ng
ận văn tố ệ ắ ắ ỏ ữ
sai sót, tôi r t hoan nghênh và chân thành c a quý
ấ ảm ơn các ý kiến đóng góp củ
thầ ạn đọ
y cô và b c.
Tác giả luận văn
Nguy c Hi u
ễn Đắ ế
i
M C L C
Ụ Ụ
DANH M C CÁC HÌNH V
Ụ Ẽ ...................................................................iii
DANH M C B
Ụ ẢNG....................................................................................v
M U
Ở ĐẦ ......................................................................................................1
CHƯƠNG 1: TỔ Ề
NG QUAN V CHATBOT...........................................3
1.1 Khái ni m Chatbot
ệ .....................................................................................3
1.2 Các thành ph n c a Chatbot
ầ ủ .................................................................... 4
1.3 Các lo i Chatbot
ạ ......................................................................................... 5
1.3.1 Rule-based Chatbot...............................................................................5
1.3.2 AI-based Chatbot .................................................................................. 7
1.4 Các n n t ng xây d ng Chatbot
ề ả ự ............................................................... 8
1.5 M ng d ng c a Chatbot
ột số ứ ụ ủ .................................................................11
CHƯƠNG 2: CƠ SỞ Ế
LÝ THUY T ........................................................13
2.1 Cơ bả ề
n v Deep learning .........................................................................13
2.2 M -ron h i quy RNN
ạng nơ ồ .....................................................................14
2.3 Mô hình Transformer..............................................................................17
2.3.1 T ng quan mô hình Transformer
ổ ........................................................ 17
2.3.2 Thành ph n mã hóa
ầ .............................................................................18
2.3.3 Thành ph n gi i mã
ầ ả ............................................................................23
2.3.4 Ưu điể ủ
m c a mô hình Transformer so v i mô hình RNN
ớ ...................24
2.4 Mô hình DIET .......................................................................................... 25
2.4.1 Đặc trưng hóa câu đầu vào (Featurization).......................................27
2.4.2 H c chuy n giao (Transfer Learning)
ọ ể ................................................27
2.4.3 Thành ph n Transformer
ầ ....................................................................29
2.4.4 Hu n luy n mô hình
ấ ệ ............................................................................ 29
2.4.5 Đánh giá mô hình DIET...................................................................... 31
CHƯƠNG 3: XÂY DỰNG VÀ CÀI ĐẶ Ứ Ụ
T NG D NG CHATBOT ..33
3.1 Gi i thi u Rasa Framework
ớ ệ .................................................................... 33
3.2 C u trúc c a Chatbot Nh t Nam
ấ ủ ấ ............................................................35
ii
3.2.1 Thi t ng quát
ết kế ổ ............................................................................... 35
3.2.2 Sơ đồ ạt độ
quy trình ho ng củ ấ
a Chatbot Nh t Nam............................. 37
3.3 Xây d ng d u Chatbot
ự ữ liệ ....................................................................... 39
3.3.1 Xây d nh (intent)
ựng ý đị ..................................................................... 39
3.3.2 Xây d ng th (entity)
ự ực thể ................................................................... 40
3.3.3 Xây d ng câu tr l i cho Chatbot
ự ả ờ ....................................................... 41
3.3.4 C u hình các thành ph n
ấ ầ .................................................................... 44
3.4 Cài đặt chương trình ............................................................................... 46
3.5 Th nghi
ử ệm và đánh giá chương trình.................................................. 51
K T LU N
Ế Ậ ................................................................................................58
TÀI LI U THAM KH O
Ệ Ả ........................................................................59
iii
DANH M C CÁC HÌNH V
Ụ Ẽ
Hình 1.1. Minh h thành ph n c a Chatbot [3]
ọa các ầ ủ ............................................. 5
Hình 1.2. Chatbot h nút b
ỗ trợ ấm để ủa Domino’s Pizza
thao tác c ....................... 6
Hình 1.3. Giao di n n n t ng Chatbot FPT.AI Conversation
ệ ề ả ................................9
Hình 1.4. Giao di n n n t ng Chatbot Harafunnel
ệ ề ả ............................................... 10
Hình 1.5. Chatbot Messenger c a trang CNN
ủ .....................................................12
Hình 2.1. M -ron h i quy [5]
ạng nơ ồ ...................................................................... 14
Hình 2.2. Sơ đồ mô hình Transformer [8] ...........................................................18
Hình 2.3 Minh h a bi nhi t Positional Encoding
ọ ểu đồ ệ ........................................20
Hình 2.4. Minh h liên k t gi [10]
ọa mứ ộ
c đ ế ữa các từ ..........................................21
Hình 2.5. So sánh Transformer v i các mô hình khác d a trên k t qu
ớ ự ế ả đánh giá
c a bài báo [8]
ủ ......................................................................................................25
Hình 2.6. Sơ đồ mô hình DIET [13] .................................................................... 26
Hình 2.7. Minh h a so sánh s d ng và không s d ng h c chuy n giao
ọ ử ụ ử ụ ọ ể ...........28
Hình 2.8. So sánh mô hình DIET và mô hình HERMIT [13]..............................32
Hình 2.9. Đánh giá các biế ể
n th c a mô hình DIET [13]
ủ ....................................32
Hình 3.1. Sơ đồ ầ
các thành ph n trong Rasa Framework......................................33
Hình 3.2. C u trúc h ng Chatbot Nh t Nam
ấ ệ thố ấ ..................................................36
Hình 3.3. Sơ đồ ạ
quy trình ho t độ ủ ấ
ng c a Chatbot Nh t Nam..............................37
Hình 3.4. Giao di n Rasa X s
ệ ử ụ ạ ị ả
d ng t o k ch b n...............................................39
Hình 3.5. Khai báo intent trong file nlu.yml........................................................40
Hình 3.6. Khai báo entity trong file domain.yml................................................. 41
Hình 3.7. Khai báo intent có chứa entity trong file nlu.yml ................................41
Hình 3.8. Khai báo Rule policy trong file rules.yml............................................ 42
Hình 3.9. Khai báo k ch b n trong file stories.yml
ị ả .............................................. 43
Hình 3.10. Hàm x lý sau khi hoàn thành nh p Form liên h
ử ậ ệ............................. 44
Hình 3.11. Khai báo c u hình trong file config.yml
ấ ............................................46
Hình 3.12 Giao di n h nút b thao tác
ệ ỗ trợ ấm để ..................................................47
iv
Hình 3.13. Ngườ ể ấm nút để ả ờ ặ ậ
i dùng có th b tr l i (hình bên trái) ho c nh p tin
nhắ ả
n (hình bên ph i) ............................................................................................ 48
Hình 3.14 Trườ ợ ậ
ng h p nh p form liên hệ............................................................ 49
Hình 3.15. Trườ ợ ị gián đoạn (hình bên trái) Trườ ợ ừ ố
ng h p form b ng h p t ch i
nhậ ả
p form (hình bên ph i) ................................................................................... 50
Hình 3.16. Trườ ợ
ng h p Chatbot không hi i dùng
ểu ý ngườ ................................. 51
Hình 3.17. Bi ng kê m tin c y d
ểu đồ thố ứ ộ
c đ ậ ự đoán ý định (intent)................. 53
Hình 3.18. Bi ng kê m tin c y d
ểu đồ thố ứ ộ
c đ ậ ự đoán thự ể
c th (entity) .............. 53
Hình 3.19. Bi ma tr n nh m l
ểu đồ ậ ầ ẫ ữ
n (Confusion matrix) gi a các nhãn dự đoán
và nhãn đúng trong tác vụ ại ý đị
phân lo nh......................................................... 54
Hình 3.20. Bi ma tr n nh m l
ểu đồ ậ ầ ẫ ữ
n (Confusion matrix) gi a các nhãn dự đoán
v trích xu
à nhãn đúng trong tác vụ ất thực thể...................................................... 55
Hình 3.21. Thang đo so sánh điểm intent c a 3 c u hình
ủ ấ .................................... 56
Hình 3.22. Thang đo so sánh điểm entity c a 3 c u hình
ủ ấ .................................... 56
v
DANH M C B
Ụ ẢNG
B ng 3.1. Thông s
ả ố đo intent...............................................................................52
B ng 3.2. Thông s
ả ố đo entity ...............................................................................52
B ng 3.3. K t qu m intent c
ả ế ả so sánh điể ủ ấ
a 3 c u hình ........................................ 56
B ng 3.4. K t qu m entity c u hình
ả ế ả so sánh điể ủa 3 cấ ........................................57
1
M U
Ở ĐẦ
1. Đặt vấn đề
Ngày nay công ngh có m t trên m
ệ ặ ọi lĩnh vực, vi c s
ệ ố hóa giúp cho con người
giả ế ữ ệ ặp đi lặ ạ ệc đượ ạt độ
m thi u nh ng công vi c l p l i, giúp công vi c ho ng chính
xác và năng suất hơn. Chatbot cũng là một m ng quan tr ng trong công ngh thông
ả ọ ệ
tin hi nay, nó có m t trong m ch,
ện ặ ọi lĩnh vực như kinh doanh, ngân hàng, du lị
giáo d c, y t
ụ ế...
Do đặ ệ ủ ạt độ ủ ế ề ế
c thù công vi c c a tôi ho ng ch y u v chuyên ngành k toán,
nên m i ngày i n u ti p nh
ỗ độ ngũ nhân viên tư vấ đề ế ận hàng trăm, hàng nghìn tin
nhắn từ phía khách hàng liên quan đến hướng d n s d
ẫ ử ụng, tư vấn, bán hàng và hỗ
tr tr
ợ ả ấ ả ẩm. Để đả ả ận đượ ự ỗ
b o trì nâng c p s n ph m b o khách hàng luôn nh c s h ợ
t t nh t, doanh nghi p c n tuy n thêm nhân viên h và th t p hu
ố ấ ệ ầ ể ỗ trợ ời gian để ậ ấn
một người thông thường là 1 tháng. V i s h
ớ ự ỗ trợ ủ
c a Chat-bot s giúp tr l
ẽ ả ời được
nh n
ữ ỏi thườ ặ ủ ả năng hoạt độ ả
ng câu h ng g p c a khách hàng, có kh ng 24/7 và ph
h i khách hàng ngay l p t ng th i gi m t i kh ng công vi c c nhân
ồ ậ ức, đồ ờ ả ả ối lượ ệ ủa
viên h và giúp doanh nghi p ti
ỗ trợ ệ ế ệ
t ki m chi phí.
Hiểu đượ ầ ọng đó, tôi đã chọn đề
c t m quan tr tài “ ự ứ ụ
Xây d ng ng d ng
Chatbot tư vấn khách hàng s d ng các k thu t h c sâu
ử ụ ỹ ậ ọ ” b ng nh ng ki
ằ ữ ến thức
tìm hi c và v i tinh th
ểu đượ ớ ần hăng say, nghiêm túc.
2. M c tiêu nghiên c
ụ ứ ủ ận văn
u c a lu
M c tiêu c a lu
ụ ủ ận văn là tìm hiể ứ
u, nghiên c u các k thu
ỹ ậ ọ
t h c sâu vào x lý
ử
ngôn ng t i dùng, trích ch n thông
ữ ự nhiên NLU, NLP như phân loại ý định ngườ ọ
tin và qu n lý h i tho
ả ộ ại,… trong ứng d ng c là Chatbot h khách hàng.
ụ ụ thể ỗ trợ
Nghiên c u chuyên sâu mô hình Transformer và DIET, lu p trung
ứ ận văn tậ
đưa ra giả ự ứ ụ ền đóng (closed
i pháp và xây d ng mô hình Chatbot ng d ng trong mi
domain) có kh l i phù h p v i nh ng câu h ng t
ả năng trả ờ ợ ớ ữ ỏi tương ứ ừ phía người
dùng.
V i bài toán ng nghiên c cung c p d ch v n m m k
ớ đối tượ ứu là đơn vị ấ ị ụ phầ ề ế
toán, luận văn sẽ ậ
t p trung xây d ng mô h ng Chatbot h
ự ệ thố ỗ trợ người dùng trong
2
nghi p v n h s d ng ph n m m d a vào n n t Rasa và áp d ng
ệ ụ tư vấ ỗ trợ ử ụ ầ ề ự ề ảng ụ
nhữ ế ứ
ng ki n th c nề ảng để ể
n t có th làm ch và tùy ch nh trên mã ngu n m này.
ủ ỉ ồ ở
3. m vi tài
Phạ đề
- Nghiên cứu các phương pháp xử lý ngôn ng t nhiên phù h p cho Chatbot
ữ ự ợ
hướ ớ
ng t i.
- Nghiên c u mô hình h c sâu Transformer.
ứ ọ
- Nghiên cứu mô hình đa tác vụ DIET.
- Thu th p và t ng h
ậ ổ ợp các câu hỏi đáp ủa khách hàng trước đó để
c t o b d
ạ ộ ữ
liệu huấ ệ
n luy n.
- Xây d ng thành ph n x lý ngôn ng t nhiên c Chatbot b ng công c
ự ầ ử ữ ự ủa ằ ụ
Rasa.
- Xây d Chatbot thành service tích h p v i Website doanh nghi p.
ựng ợ ớ ệ
4 u trúc lu
. Cấ ận văn
CHƯƠNG 1: TỔ Ề
NG QUAN V CHATBOT: i thi
Chương này sẽ giớ ệu
nhữ ế ứ ổ ề ộ ệ ố ầ ủ
ng ki n th c t ng quan v m t h th ng Chatbot, các thành ph n c a Chatbot
và phân bi Chatbot.
ệt các loại
CHƯƠNG 2: CƠ SỞ Ế
LÝ THUY T: i thi u khái ni m v
Chương này giớ ệ ệ ề
m ng -ron n kinh nhân t o, khái ni m deeplearning, nghiên c u mô hình h
ạ nơ thầ ạ ệ ứ ọc
sâu Transformer và DIET.
CHƯƠNG 3: XÂY DỰNG VÀ CÀI ĐẶ Ứ Ụ
T NG D NG CHATBOT:
Chương này sẽ ớ ệ ả sơ đồ ấ ủ ệ ố
gi i thi u Rasa framework, mô t c u trúc c a h th ng
Chatbot t Nam, mô t
Nhấ ả các bước xây d ng bài toán trên n n t
ự ề ảng mã ngu n m
ồ ở
Rasa và đán ế ả ự
h giá k t qu th c nghiệm.
CHƯƠNG 4: K T LU N:
Ế Ậ Chương này đưa ra những k t lu n c a quá trình
ế ậ ủ
nghiên c u và hoàn thi
ứ ện s n ph
ả ẩm, đánh giá và định hướng nghiên c u ti p theo.
ứ ế
TÀI LI U THAM KH
Ệ ẢO: Liệ ệ ận văn tham khả
t kê các tài li u mà lu o trên
các ngu n khác nhau.
ồ
3
CHƯƠNG 1: TỔ Ề
NG QUAN V CHATBOT
1.1 Khái ni Chatbot
ệm
Chatbot là m t ph n m m trí tu nhân t o (AI) gi l p cu c h i tho i c a con
ộ ầ ề ệ ạ ả ậ ộ ộ ạ ủ
ngườ ằng văn bả ặ ọ ả ờ ự độ ắ ủa con ngườ
i b n ho c gi ng nói, giúp tr l i t ng tin nh n c i
thông qua các ng d ng tin nh n trên website ho n tho
ứ ụ ắ ặc trên điệ ại di động.
Chatbot i khách hàng qua tin nh n theo th i gian
có khả năng tương tác vớ ắ ờ
thự o đó, khách hàng sẽ ả
c 24/7, d không ph i chờ đợi lâu để nhận được sự ỗ ợ ừ
h tr t
doanh nghi i nhau qua các n
ệp. Ngày nay, con người có xu hướng tương tác vớ ền
t ng nh n tin. Theo th
ả ắ ống kê của Facebook Messenger đầu năm 2020, hơn 61% số
khách hàng đượ ỏ ằ ắ ậ ệ ế
c h i cho r ng, nh n tin là cách thu n ti n giúp nhanh chóng k t
n i v i các doanh nghi p h c n. T i Vi t Nam, Zalo là ng d ng trò chuy n có
ố ớ ệ ọ ầ ạ ệ ứ ụ ệ
nhiều ngườ ử ụ ấ ới hơn 100 triệ
i s d ng nh t v u tài kho c s h
ản. Do đó, việ ở ữu
m t Chatbot c tích h n thông là thi t y i v i m i doanh
ộ đượ ợp đa kênh truyề ế ếu đố ớ ọ
nghiệp.
Cũng bởi Chatbot hỗ trợ con người th c hi n t
ự ệ ự động các công vi c t n nhi
ệ ố ều
thờ ấ ệ ế ệm đượ ả ớ
i gian nh t, giúp các doanh nghi p ti t ki c kho n chi phí l n cho nhân
sự. Đội ngũ nhân viên được tối ưu nhiệm v , t p trung x
ụ ậ ử các công vi c chuyên
lý ệ
sâu m Ngày nay Chatbot là m t ch nóng và nhi u công ty
ở ức độ khó hơn. ộ ủ đề ề
đang hy vọng phát triển để có nh ng cu c trò chuy n t nhiên không th phân bi
ữ ộ ệ ự ể ệt
v i b các k thu t NLP và u này thành
ới con ngườ ằng ỹ ậ Deep Learning để biến điề
hiệ ự
n th c.
Chatbot chia thành 2 lo i [1] m (open domain) và mi g (close
ạ miền ở ền đón
domain). Mi n m là mô hình tr l i t
ề ở ả ờ ự động cho phép người dùng có th tham gia
ể
trò chuy n v i b t k nào, không nh t thi t ph i có m t m c tiêu rõ ràng
ệ ớ ấ ỳ chủ đề ấ ế ả ộ ụ
hay m nh c nào. Mi ng t p trung vào m t ch c ví
ột ý đị ụ thể ền đóng thườ ậ ộ ủ đề ụ thể
d : th i ti t, du l ch, mua s m, y t t p trung vào xây
ụ ờ ế ị ắ ế… Trong luận văn này tôi sẽ ậ
d ng Chatbot thu c lo i mi
ự ộ ạ ền đóng, cụ thể là bài toán hỗ trợ khách hàng mua hàng,
tư vấn và hướ ẫ ử ụ
ng d n s d ng.
4
1.2 Các thành ph n c Chatbot
ầ ủa
Chatbot ng c u thành t 3 thành ph n chính [2]: thành ph n hi
thông thườ ấ ừ ầ ầ ểu
ngôn ng t nhiên (NLU), thành ph n qu n lý h tho i (DM) và thành ph n sinh
ữ ự ầ ả ội ạ ầ
ngôn ng (NLG) i thành ph n x lý m t tác v riêng bi
ữ . Mỗ ầ ử ộ ụ ệt:
- NLU: là quá trình xử lý để hiểu ngôn ng t nhiên, thành ph n giúp Chatbot
ữ ự ầ
hiểu được ý định ngườ ấ ự ể
i dùng (intent) và trích xu t các th c th (entity) trong câu.
Khi ngườ ậ ỏi “ ẽ ầ ử
i dùng nh p câu h Giá s n ph m A03 bao nhiêu?
ả ẩ ” Chatbot s c n x
lý, b i vì Chatbot không hi c ngôn ng i cho NLU s chuy n nó
ở ểu đượ ữ con ngườ ẽ ể
thành d u có c u trúc, t phân tích câu h i trên v
ữ liệ ấ ừ đó có thể ỏ ới ý định là “hỏi
giá 3
”, thực thể ả ẩm “
là s n ph A0 ”.
- DM: Qu n lý h i tho i có nhi m v ng (action) ti
ả ộ ạ ệ ụ xác định được hành độ ếp
theo d a vào tr c ng c nh c a h i tho Các ng
ự ạng thái hành động trước đó hoặ ữ ả ủ ộ ại. ữ
c nh c a h i tho i s c h c qua k ch b n d ng s n (story). X lý truy xu t d
ả ủ ộ ạ ẽ đượ ọ ị ả ự ẵ ử ấ ữ
liệ ừ
u t hệ thống khác thông qua API ho c x lý logic trong h i tho
ặ ử ộ ại cũng sẽ ợ
đư c
thự ệ ầ
c hi n trong thành ph n này.
- NLG: là thành ph n bao g m nhi u m u câu tr l
ầ ồ ề ẫ ả ời đã được định nghĩa
trước (pre-defined template) và ph thu
ụ ộc vào hành động được d DM k
ự đoán ở ết
h p v i chính sách (policy) c a h l i dùng. Ví
ợ ớ ủ ệ thống để đưa ra câu trả ời cho ngườ
d câu h c m u câu
ụ ở ỏi “ ”, ta sẽ
Giá s n ph m A03 bao nhiêu?
ả ẩ định nghĩa trướ ẫ
“ ”, và ở ầ
Chào anh ch , giá s n ph m {ma_san_pham} giá {gia_tien}
ị ả ẩ ạ thành ph n
DM h ng s l c thông tin mã s n ph m thông qua NLU và g n API
ệ thố ẽ ấy đượ ả ẩ ọi đế
c a h l y giá ti n, t t qu NLG tr v s
ủ ệ thống khác để ấ ề ừ đó kế ả ả ề ẽ là “Chào anh chị,
giá s n ph
ả ẩm A03 giá 300.000đ”.
5
Hình 1.1. Minh h a các thành ph n c
ọ ầ ủa Chatbot [3]
1.3 Các lo Chatbot
ại
1.3.1 Rule-based Chatbot
Rule-based Chatbot t m d ch là Chatbot d a theo lu ra s n, hay
ạ ị ự ật được đề ẵ
còn đượ ọ ạ ộ ạ ở ổ ế
c g i là Chatbot d ng menu/button, là m t d ng Chatbot tr nên n i ti ng
sau khi Facebook cho ra m t n n t ng Messenger cho phép cá nhân ho c doanh
ắ ề ả ặ
nghi p t o ra bot h khách hàng t ng. Xây d Chatbot theo Rule-based
ệ ạ ỗ trợ ự độ ựng
là việc định nghĩa các luậ ặc đưa ra các mẫu có trướ
t ho c mà Chatbot muốn hướng
đế để
n, thao tác với Chatbot ứng d ng s
ụ ẽ ử
s d ng c nút b m, thanh menu ho c h
ụ ả ấ ặ ệ
thống điều hướng i dùng l a ch n. Gi ng v i vi c g n t
để ngườ ự ọ ố ớ ệ ọi điện đế ổng đài
h khách hàng ta c n ch n ngôn ng , ch n phòng ban ph
ỗ trợ ầ ọ ữ ọ ụ trách sau đó mới
được chuyển hướng đến hỗ trợ viên thích h p, Rule-based Chatbot
ợ cũng hoạt động
như vậ ỉ ẽ
y ch khác là s hiể ị ấ ặ
n th các nút b m ho c menu trên cử ổ
a s chat.
6
Hình 1.2. Chatbot h nút b
ỗ trợ ấm để ủa Domino’s Pizza
thao tác c
Hình phía trên là ví d c
ụ ủa Chatbot dạng menu/button, đây là ảnh của Chatbot
h c a hàng Domino Pizza trên ng d
ệ thống ử ’s ứ ụng Messenger Facebook, người
dùng có th s d t hàng c liên h h thông qua
ể ử ụng để đặ , theo dõi đơn hàng hoặ ệ ỗ trợ
điều hướ ụ ếu ngườ ấn nút “ ” cuộ
ng menu. Ví d n i dùng Customer support c trò
chuy n s c chuy n h viên tr c ti L i th c a Rule-based
ệ ẽ đượ ển hướng đế ỗ trợ ự ếp. ợ ế ủ
Chatbot so v i các lo Chatbot khác là hi n th c t t c các l a ch n, giúp
ớ ại ể ị đượ ấ ả ự ọ
người dùng đưa ra quyết định chính xác mà không cần suy nghĩ sẽ ỏi như thế
h nào
và câu h Chatbot có hi c không. Rule-based Chatbot c s d ng khi
ỏi đó ểu đượ đượ ử ụ
ngườ ố ự ệ ột hành độ ụ ể ụ đặt vé máy bay, đặ
i dùng mu n th c hi n m ng c th , ví d t vé
xem phim.
Rule-based Chat d dàng c p nh c ph
bot cũng sẽ ễ ậ ật hơn, thay vì việ ải huấn
luy n l Chatbot m i khi có d u m i, ta ch c n thêm nút ho c menu và câu
ệ ại ỗ ữ liệ ớ ỉ ầ ặ
phả ồ ủ đề ới đó, cũng không cầ ả cũng
n h i cho ch m Chatbot n ph i training. Chatbot
7
s không g
ẽ ặp trường h p không hi
ợ ểu ý định c a khách hàng, v i vi c thi t k thêm
ủ ớ ệ ế ế
nút ch d n nhân viên h
ọn “ ” sẽ
Liên h c ti p
ệ trự ế ẫn khách hàng đế ỗ trợ trong trường
h p không tìm th y l a ch n phù h giao di n chat. M t s n n t ng giúp xây
ợ ấ ự ọ ợp ở ệ ộ ố ề ả
d ng Rule-based Chatbot
ự như Manychat, Chatfuel, Botsify…
Bên c nh m nêu trên, Rule-based Chatbot p i h
ạ những ưu điể cũng gặ phả ạn
chế, mộ ữ ạ ế ể ả ờ ỏ
t trong nh ng h n ch là không th tr l i câu h i khách hàng mà Chatbot
không được định nghĩa trướ ần đi qua nhiều bướ ới đến đượ
c. Khách hàng c c m c
câu tr l i phù h p, do v y trong vài tr ng h p s n tr i nghi
ả ờ ợ ậ ườ ợ ẽ ảnh hưởng đế ả ệm
người dùng.
1.3.2 -based Chatbot
AI
Khác v i Rule-based Chatbot, AI-based Chatbot không s d ng các
ớ ử ụ
menu/ s d ng trí tu nhân t o AI
button để điều hướng người dùng, thay vào đó ử ụ ệ ạ
để ử ắ ả ồ ến ngườ
x lý tin nh n và ph n h i đ i dùng.
Kho l rí tu nhân t o phát tri n m nh m , Chatbot
ảng 5 năm trở ại đây, t ệ ạ ể ạ ẽ
cũng ợ ị ệ ệ ạ ệ ọ
đư c trang b thêm công ngh trí tu nhân t o và công ngh h c máy giúp
Chatbot có kh t h c t ng cu c trò chuy n th c t v i dùng
ả năng ự ọ ừ nhữ ộ ệ ự ế ới ngườ để
tr lý
ở nên thông minh hơn theo thờ ệ ử
i gian. Công ngh x ngôn ng t nhiên NLP
ữ ự
giúp Chatbot AI hi nh trong câu nói c ng ph
ểu ý đị ủa người dùng và đưa ra nhữ ản
h i dùng không ph i nh p nh ng câu r p k
ồi chính xác. Ngườ ả ậ ữ ậ huôn máy móc để
giao tiếp với Chatbot mà hoàn toàn có thể diễn tả ý định theo cách c a riêng mình.
ủ
Nhờ xác định các t khóa, các bi n trong câu nói c
ừ ế ủa người dùng mà Chatbot thông
minh hi i dùng.
ểu và đối đáp linh hoạt với ngườ
Bên c Chatbot AI có kh p nhi n ích b
ạnh đó, ả năng tích hợ ều tính năng tiệ ổ
sung, nh m gi i quy ng các bài toán c a doanh nghi p. Chatbot không
ằ ả ết đa dạ ủ ệ
những có thể tư vấn, cung c p thông tin v các s n ph
ấ ề ả ẩm d ch v c a doanh nghi p,
ị ụ ủ ệ
mà Chatbot còn có th c hi n nhi u tác v p thông tin khách hàng,
ể thự ệ ề ụ như thu thậ
đặt hàng, đặ ị ẹ
t l ch h n.
8
1.4 Các n n t ng xây d Chatbot
ề ả ựng
Chatbot m xa l v i dùng Internet nói chung
đã không còn là khái niệ ạ ới ngườ
và các doanh nghi p nói riêng. n nay nhi u n n t ng xây d ng Chatbot
ệ Hiệ ề ề ả ự được
ra đờ ỗ ợ ờ ệ ự ả năng đưa ra câu trả ờ
i, h tr ngư i dùng giao di n tr c quan và kh l i phù
h p v i câu h i c i dùng m t cách chính xác
ợ ớ ỏ ủa ngườ ộ như Chatfuel, FPT.AI
Conversation, Harafunnel... c doanh nghi p có th t xây d h ng
Hoặ ệ ể ự ựng ệ thố
Chatbot d a vào các framework n i ti Microsoft Bot Framework, Rasa,
ự ổ ếng như
Dialogflow...
Sau đây là mộ ố ề ả ổ ế ế ớ ấ
t s n n t ng Chatbot n i ti ng trên th gi i mà b t kì cá nhân
hoặ ệp nào cũng có thể ế ậ
c doanh nghi ti p c n:
Chatfuel
Chatfuel i m c tiêu làm cho vi c xây d
ra đời vào mùa hè năm 2015 vớ ụ ệ ựng
bot tr nên d dàng v i b t k ai. Hi n Chatfuel là n n t
ở ễ ớ ấ ỳ ệ ề ảng hàng đầu để xây dựng
bot trên Facebook Messenge t
r, ự động hóa giao ti p v
ế ới con người thông qua các
ứ ụ ắ Các tính năng cơ bả ủ ồ ạ ự
ng d ng nh n tin. n c a Chatfuel bao g m: t o Chatbot t
độ ả ờ ắ ạ ả ế ị ạ ữ
ng tr l i tin nh n khách hàng t
, o qu ng cáo Facebook ti p th l i cho nh ng
người dùng đã tương tác vớ ủ ạ ỗ ợ ọ
i Fanpage c a b n, h tr l c danh sách khách hàng
tiềm năng ị ử ệ
thông qua l ch s trò chuy n với khách hàng.
Ưu điể ủ ế ề ả ở ả ể đế ả
m c a Chatfuel khi n n n t ng này tr nên thu hút ph i k n là b n
dùng th hoàn toàn mi n phí. Vi c thi t l p Chatbot trên n n t
ử ễ ệ ế ậ ề ảng này cũng rất
đơn giả ầ ả ậ ễ ạ ờ vào các thư việ
n vì không c n ph i l p trình, mà d dàng t o bot nh n
m u. Ngoài tích h p trên Facebook, Chatfuel còn tích h
ẫ ợ ợp được v i các
ớ ứng d ng
ụ
m ng xã h
ạ ội khác như Instagram, Twitter, Youtube…
Các khách hàng c a Chatfuel, bao g m t các doanh nghi p v a và nh
ủ ồ ừ ệ ừ ỏ đến
các thương hiệ ễ ậ ế ấ ế ớ ộ ố ớ ất như
u d nh n bi t nh t trên th gi i. M t s ách hàng l
kh n nh
Adidas, T - Mobile, LEGO.
FPT.AI Conversation
N n t ng t Chat-bot FPT.AI Conversation là s n ph c bi
ề ả ạo ả ẩm được FPT đặ ệt
đầu tư ể ề ả ạ ậ ứ ụ ệ ạ ớ
phát tri n Là n
. n t ng t o l p Chatbot ng d ng trí tu nhân t o v i các
9
công ngh h c máy và x lý ngôn ng t nhiên tiên ti n nh t, FPT.AI Conversation
ệ ọ ử ữ ự ế ấ
cho phép ngườ ạ ự ị ả ệ ớ
i t o bot xây d ng các k ch b n trò chuy n khác nhau v i khách
hàng và theo dõi l ch s trò chuy Chatbot
ị ử ện để có thể hiểu và tương tác với khách
hàng m t cách t nhiên, thân thi Chatbot tích h p trên các giao di n nh n tin
ộ ự ết. ợ ệ ắ
ph bi
ổ ến như Facebook Messenger, Zalo, livechat trên website hoặ ấ ứ
c b t kì ng
d ng, giao di n trò chuy n s n có nào c a doanh nghi
ụ ệ ệ ẵ ủ ệp.
Hình 1.3. Giao di n n n t ng Chatbot FPT.AI Conversation
ệ ề ả
Harafunnel
Là m t s n ph m c a t n t ng công ngh h
ộ ả ẩ ủ ập đoàn Haravan, là nề ả ệ ỗ trợ người
dùng t t Chatbot trên n n t ng Facebook Messenger và website c a doanh
ự ạo ề ả ủ
nghi p. Chat-bot s t ng tr l i theo tình hu ng thi t l Chatbot
ệ ẽ ự độ ả ờ ố ế ập trước. được
xây d ng trên n n t ng Harafunnel s có thêm ch o ra ph u bán hàng t
ự ề ả ẽ ức năng tạ ễ ự
động, để ọc và đánh giá các khách hàng tiềm năng
l .
V i công c Chatbot này, doanh nghi p có th thu th p d u khách hàng
ớ ụ ệ ể ậ ữ liệ
đa kênh, chăm sóc khách hàng tự động 24/7 và có th thi t l p quy trình marketing
ể ế ậ
hoàn toàn t ng mi n phí. a Harafunnel là g i tin nh
ự độ ễ Các tính năng chính củ ử ắn
hàng lo t
ạ cho người dùng đã g i tin nh n cho Fanpage hoàn toàn mi n phí, t
ử ắ ễ ự động
khở ạ ảng cáo Facebok để ế ị ạ ềm năng đã tương tác vớ
i t o qu ti p th l i khách hàng ti i
Fanpage nhưng chưa mua hàng, ẩ ậ ố ạ ấ
n bình lu n thông minh ch ng tình tr ng m t
khách, t ng tr l i tin nh n, bình lu n khách hàng theo k ch b n so n s
ự độ ả ờ ắ ậ ị ả ạ ẵn và tự
độ ạ ả
ng phân lo i khách hàng, qu n lý bán hàng hi u qu trên m ng xã h
ệ ả ạ ội.
10
Hình 1.4. Giao di n n n t ng Chatbot Harafunnel
ệ ề ả
Dialogflow
Dialogflow là Chatbot s d ng AI do Google cung c p nh m giúp các l
ử ụ ấ ằ ập
trình viên dễ dàng hơn khi lập trình các s n ph m có giao ti p gi
ả ẩ ế ữa người dùng với
Chatbot thông qua các đoạn h i tho i b
ộ ạ ằng văn bản ho c gi ng nói. V i Dialogflow
ặ ọ ớ
các nhà phát tri n có th t o ra Chatbot ông minh s d ng k thu t h c máy c
ể ể ạ th ử ụ ỹ ậ ọ ủa
Google nghiên c u và th nghi ng d l c a h , hi
ứ ử ệm trên lượ ữ liệu khổng ồ ủ ọ ểu được
s c thái c a ngôn ng và s có c h i, c c i thi n theo
ắ ủ ữ ẽ khả năng họ ỏ ngày càng đượ ả ệ
thời gian.
Dialogflow có th d dàng kh i ch y trên nhi u kênh trò chuy
ể ễ ở ạ ề ện như Google
Assistant, Facebook Messenger, Telegram, Skype, Line… ể
Đi m m nh c
ạ ủa
Dialogflow là cung c p SDK cho 14 ngôn ng l p trình giúp nhà phát tri n d dàng
ấ ữ ậ ể ễ
l p trình, h trên 20 ngôn ng trên th i, có kh c thái c
ậ ỗ trợ ữ ế giớ ả năng phân tích sắ ủa
cuộ ện và đặ ệ
c trò chuy c bi t dễ hiể ọ ố ới ngườ ớ ế ậ
u và h c đ i v i m i ti p c n.
11
1.5 M ng d ng c Chatbot
ột số ứ ụ ủa
Ngày nay Chatbot có th t hi b y cho s
ể xuấ ện ở ất kì lĩnh vực nào, là bàn đẩ ự
phát tri n c a các doanh nghi p. Nó giúp nâng cao tr i nghi m khách hàng b ng
ể ủ ệ ả ệ ằ
cách hi n di
ệ ện ở các kênh khách hàng thường xuyên tiếp xúc. Dưới đây là các lĩnh
v c n i b Chatbot ng d ng:
ự ổ ật được ứ ụ
- Chăm sóc khách hàng: M i m t doanh nghi p hay c
ỗ ộ ệ ửa hàng online đều cần
có d ch v u s d n th ng, hi
ị ụ chăm sóc khách hàng. Nế ử ụng phương pháp truyề ố ệu
suấ ả năng chăm sóc khách hàng sẽ ố ấ
t và kh t n r t nhi u chi phí nhân s
ề ự và khó đạt
đượ ộ
c đ chính xác cao.
- Giả ả ự ế ố ấ ự ể
i trí: Các Chatbot gi i trí tr c tuy n t t nh t d a trên AI có th là
Mitsuku, Rose, Insomno Bot…ngườ ể ệ ớ
i dùng có th nói chuy n v i Chatbot hàng
giờ ẽ ả ờ ỏi theo cách nhân văn nhấ ểu đượ
, và Chatbot s tr l i các câu h t và hi c tâm
trạ ủ ớ ữ mà người dùng đang sử ụ
ng c a v i ngôn ng d ng.
- Thời ti Poncho là Chatbot
ết: được thi t k
ế ế để ở
tr thành m t chuyên gia th
ộ ời
tiế ự ờ ế
t, ngoài d báo th i ti t Chatbot này còn g i các c nh báo khi th i ti t x
ử ả ờ ế ấu đến
v i dùng.
ới ngườ
- Nhà hàng và các ngành bán l :
ẻ Khách hàng được Chatbot chào đón và được
cung c p các tùy ch n v c thông
ấ ọn menu như chọ ị trí chỗ ngồi, thanh toán và đượ
báo khi nào h có th b u l
ọ ể ắ ầ
t đ ấy đồ ăn củ ọ
a h .
- Khách s n và Du l ch: Chatbot có th giúp khách s n trong m t s
ạ ị ể ạ ộ ố lĩnh vực,
bao g m qu n lý th i gian, d ch v khách hàng và gi m chi phí nhân l Chatbot
ồ ả ờ ị ụ ả ực.
đượ ập trình để ệ
c l trò chuy n v i khách b ng các ngôn ng khác nhau, khách hàng
ớ ằ ữ
có th nói chuy n b ng ngôn ng
ể ệ ằ ữ địa phương củ ễ dàng hơn.
a mình d
- Y t : Chatbot này s h i v các tri u ch ng, các thông s và l ch s
ế ẽ ỏ ề ệ ứ ố cơ thể ị ử
y t n m t danh sách các nguyên nhân gây ra h u h t các tri
ế, sau đó biên soạ ộ ầ ế ệu
chứ ế ạ ứ ự ọ ể ớ ẫ
ng và x p h ng chúng theo th t nghiêm tr ng. Chatbot có th hư ng d n
b u tr các b nh có th t i mà không c
ệnh nhân điề ị ệ ể ự chữa khỏ ần đến bác sĩ.
- Hàng không: khách hàng có th n tài li u chuy n bay c a mình qua tin
ể nhậ ệ ế ủ
nhắ ặ
n, ho c email, bao g m xác nh t lên máy bay,
ồ ận đặ vé, thông báo đăng ký, thẻ
và c p nh t tr ng thái chuy n bay.
ậ ậ ạ ế
12
- Giáo d i dùng có th n yêu c u tr c tuy n vào các website,
ục: ngườ ể nhắ tin ầ ự ế
fanpage c tìm hi u v ng, gi c m
ủa nhà trường để ể ề trườ ải đáp các thắ ắc như tuyển
sinh, chương trình đào tạ ấ ợ
o, ch t lư ng giáo dục.
- Trợ lý cá nhân: s d ng Chatbot
ử ụ như một tr lý cá nhân o s
ợ ả ẽ thay đổi cuộc
s ng m t cách tri
ố ộ ệt để. Chúng có thể hoạt động để ỗ
h trợ chúng ta như một c v
ố ấn
tài chính, ki m soát chi phí, ki m tra thông tin tài kho n ngân hàng
ể ể ả … và hỗ trợ
chúng ta qu n lý tài chính hay cu ng m t cách cá nhân hóa và an toàn.
ả ộc số ộ
- Đưa ra kế ả ế ậ ậ ứ ệ
t qu tìm ki m, c p nh t tin t c: Các doanh nghi p, trang báo…
có th thi t k
ể ế ế nh ng
ữ Chatbot để cung cấp thông tin thường xuyên cho người dùng,
thông tin đượ ậ ậ thường xuyên giúp ngườ ầ ả ể
c c p nh t i dùng không c n ph i tìm hi u
trên trình duy ng th i giúp doanh nghi
ệt, đồ ờ ệp đưa thông tin mớ ủa mình đế
i c n với
khách hàng m t cách nhanh chóng và hi
ộ ệu quả nhất.
Hình 1.5. Chatbot Messenger c a trang CNN
ủ
13
CHƯƠNG 2: CƠ SỞ Ế
LÝ THUY T
2.1 Cơ bả ề
n v Deep learning
Deep learning [4] hay g i là h c sâu là t p h p con c a Machine Learning
ọ ọ ậ ợ ủ
được l y c m h ng t c u trúc và ch
ấ ả ứ ừ ấ ức năng của bộ não con người. Nó có tác dụng
h cho máy tính t n luy có th c hi tác v
ỗ trợ ự huấ ện chính nó để ể thự ện các ụ tương
t u này chính là giúp máy tính b i cách h
ự như con người. Điề ắt chước con ngườ ọc
hỏi và suy nghĩ.
Các h ng c a Deep learning có kh i thi n hi u su t c a chúng
ệ thố ủ ả năng cả ệ ệ ấ ủ
sau nhi u l n luy n (training) ho c cung c p d l n ng,
ề ần huấ ệ ặ ấ ữ liệu đủ ớ . Thông thườ
nh hu y
ững máy móc đã ợ
đư c ấ ệ đủ ự ậ
n luy n s tin c thì sẽ được mang đi phụ ụ
c v
cho nh ng công vi ái xe, phát hi
ữ ệc như: l ện c d
ỏ ại,…
Ứ ụ ủ ỗ ợ ệ ị ữ ạ
ng d ng c a Deep learning h tr cho vi c d ch ngôn ng , phân lo i các
hình ảnh, nhận dạng giọng nói. Chính vì th , nó có th
ế ể được ứng dụng để giải quyết
m i nhu c u c n nh n d ng m u mà không c n s can thi p c
ọ ầ ầ ậ ạ ẫ ần đế ự ệ ủa con người.
Deep learning có th x lý d t b não con
ể ử ữ liệu theo cách tương tự như mộ ộ
ngườ , đ ể ệ ở đây là con ngườ ẽ ả ạ ột chương
i i m khác bi t chính i s không ph i d y m
trình Deep learning biết một con mèo trông như thế ỉ ầ ấ
nào, mà ch c n cung c p cho
nó đủ hình ả ầ
nh c n thiết v loài mèo, và nó s t mình hình dung, t h
ề ẽ ự ự ọc. Các bước
cần làm như sau:
- Cung c p cho máy
ấ nhiề ộ ữ ệ ả ề
u b d li u nh v mèo và các con v t khác.
ậ
- Thu t toán s m tra m, chi ti t chung gi a các
ậ ẽ kiể ảnh để xem các đặc điể ế ữ
b nh.
ức ả
- M i b nh s c gi i mã chi ti i nhi u c , t các hình d
ỗ ức ả ẽ đượ ả ết dướ ề ấp độ ừ ạng
l n, cho n các ô nh và nh a. N u m t hình d ng ho
ớ đế ỏ ỏ hơn nữ ế ộ ạ ặc các đường được
l p l i nhi u l n, thu t toán s g
ặ ạ ề ầ ậ ẽ ắn nhãn nó như là mộ ặ ọ
t đ c tính quan tr ng.
- Sau khi phân tích đủ ả
hình nh c n thi t, thu t toán gi
ầ ế ậ ờ đây ẽ
s biết được các
m u nào cung c p b ng ch ng rõ ràng nh t v mèo và t t c
ẫ ấ ằ ứ ấ ề ấ ả những gì con người
phả ỉ ấ
i làm ch là cung c p các d u thô.
ữ liệ
14
Nói m t cách tóm t Deep learning là m t i Machine learning mà trong
ộ ắt ộ loạ
đó máy tự đào tạo chính nó. Deep learning đòi hỏi r t nhi u d
ấ ề ữ liệu đầu vào và sức
m c tri n khai b
ạnh tính toán hơn là Machine learning, nhưng nó đã bắt đầu đượ ể ởi
các công ty công ngh l , Google t trong
ệ ớn như Facebook, Amazon . Trong đó, mộ
nh ng
ữ ứ ụ
ng d ng n i ti ng nh t là AlphaGo, m t máy tính có th vây v
ổ ế ấ ộ ể chơi cờ ới
chính bản thân nó cho đến khi nó có th d
ể ự đoán những đường đi nước bước chính
xác nh i nhi ch trên th
ấ ủ
t đ để đánh bạ ều nhà vô đị ế giới.
2.2 M -ron h i quy RNN
ạng nơ ồ
M -ron h i quy (RNN) là m t mô hình h c sâu x lý d u tu n t
ạng nơ ồ ộ ọ ử ữ liệ ầ ự
đượ ử ụ ổ ế ụ ử ữ ự như dị
c s d ng ph bi n trong các tác v x lý ngôn ng t nhiên (NLU) ch
máy, tóm tắt văn bản, nh n di n gi ng nói.
ậ ệ ọ Giống với con người khi ti p nh n ngôn
ế ậ
ngữ, chúng ta s x lý chúng m t cách tu n t , t phía sau s
ẽ ử ộ ầ ự ừ ẽ phụ thu c vào các t
ộ ừ
trước đó, ý tưở ạ ế ế ộ ạng lướ ầ ả năng xử
ng t o ra RNN là thi t k m t m i th n kinh có kh
lý thông tin m t cách tu n t . C
ộ ầ ự ụ thể, đầu ra ở ời điể
th m hi n t i ph thu c vào k
ệ ạ ụ ộ ết
quả ủ ầ
tính toán c a các thành ph n ở ời điểm trướ ộ
th c. Nói cách khác, RNN là m t
mô hình có bộ nhớ, có thể nhớ thông tin được tính toán trước đó, không giống như
các m ng th n kinh truy n th
ạ ầ ề ống là thông tin đầu vào hoàn toàn độ ậ ớ
c l p v i thông
tin đầu ra.
Hình 2.1 -ron h i quy [5]
. Mạng nơ ồ
15
Các t truy n vào m c x lý gi ng nhau các tham s
ừ ề ạng RNN đượ ử ố và ố được
tính như sau:
- 
 u (input) t m
là từ đầ vào ại thời điể t, 
có th là one-hot vector.
ể
- 
là tr ng thái
ạ ẩn t i th
ạ ời điểm t, dùng để ghi nh thông tin các t
ớ ừ phía trước
nó c tính d a trên các tr ng thái
và đượ ự ạ ẩn trước đó và từ đầ ệ ạ
u vào hi n t i.

 󰇛
  
󰇜 (2.1)
Vector o v giá tr trong ma tr n b ng 0.
 thông thường được khởi tạ ới tất cả ị ậ ằ
- 
 là k t qu u ra (output) t i th m t, d p theo d a vào
ế ả đầ ạ ời điể ự đoán từ tiế ự
xác su t trên toàn b trong t
ấ ộ các từ ừ điển.

  󰇛

󰇜 (2.2)
Mô hình RNN s d ng chung b tham s U, V, W cho t t c Mô
ử ụ ộ ố ấ ả các bước.
hình RNN không nh t thi t x lý output cho t ng input, ví d nhi m v d
ấ ế ử ừ ụ ở ệ ụ ự đoán
c m xúc c
ả ủa câu ta ch c
ỉ ần quan tâm đế ế
n k t qu i cùng cho nên ch c
ả cuố ỉ ần output
c a t
ủ ừ cuối cùng, b i vì tr ng thái
ở ạ ẩ ở
n từ cuối cùng lưu trữ ấ
t t c thông tin c a các
ả ủ
t V m t lý thuy t, RNN có th thông tin c dài b t k
ừ trước đó. ề ặ ế ể nhớ huỗi có độ ấ ỳ,
nhưng trong thự ế ỉ ể ớ ừ ột vài bước trướ
c t mô hình này ch có th nh thông tin t m c
đó, hiệ ợ ọ
n tư ng này g i là Vanishing Gradient.
Việ ử ụ ỹ ậ
c training mô hình RNN s d ng k thu t Backpropagation Through
Time (BPTT). T i th so sánh v i giá tr u ra mong mu n
ạ ời điểm t ớ ị đầ ố và giá trị
đầ ự đoán hiệ ạ
u ra d n t i 
 c hàm m t mát s d ng cross-entropy.
ta tính đượ ấ ử ụ


󰇛

 

󰇜 
 
 (2.3)
Mô hình h ng cách s d ng thu t toán Gradient descent [6]
ọc bằ ử ụ ậ để tìm được
điể ự ể ủ ố ự ị đạ ủ ấ
m c c ti u c a hàm s d a trên giá tr o hàm c a hàm m t mát



,



,



tương ứng v i b tham s U, V, W và c p nh t l i giá tr cho chúng. i v i tham
ớ ộ ố ậ ậ ạ ị Đố ớ
s U và V giá tr o hàm ch thu c vào m hi n t
ố ị đạ ỉ phụ ộ thời điể ệ ại đang xét, nhưng
v i tham s W thì l i khác, ví d
ớ ố ạ ụ xét t = 3 ta được:















󰇛󰇜
Mà t i th m t = 3,
ạ ời điể 
  󰇛
   󰇜 
thu c vào
phụ ộ  và
tương tự 
 thu c vào
phụ ộ 

. Dẫn đến ta đượ ứ
c công th c:
16


 










 














 


















 󰇛󰇜
Công th ng quát:
ức tổ



 













󰇛󰇜
Mà 
luôn có giá tr trong kho
ị ảng [-1,1] do sử d ng hàm tanh, d
ụ ẫn đến






 s n g n 0 theo hàm s u k càng l n cho nên các
ẽ tiế ần đế ố mũ nế ớ ở
vector vị trí đầu giá trị đạo hàm x p x 0
ấ ỉ khiến vi c c p nh t tham s W không
ệ ậ ậ ố
đáng kể ểu đơn giả ẽ
, hi n mô hình s không h c thêm
ọ đượ ở
c gì nhữ ừ ị
ng t v trí
đầ ền ngượ
u tiên trong quá trình truy c.
Hiện tượ ọ ả ấ ệ
ng này g i là Vanishing Gradient, x y ra khi hu n luy n các
m u l p, khi n mô hình RNN kém hi u qu và ch có th
ạng nơ ron nhiề ớ ế ệ ả ỉ ể lưu
trữ thông tin ng n h n (Short-Term Memory) [7]. Khi hu n luy n, giá tr
ắ ạ ấ ệ ị đạo
hàm là thông tin ph n h i c a quá trình lan truy c, giá tr này tr nên
ả ồ ủ ền ngượ ị ở
vô cùng nh t i các l - u tiên khi n cho vi c c p nh t tr ng s
ỏ ạ ớp nơ ron đầ ế ệ ậ ậ ọ ố
m ng không x y ra.
ạ thể ả
Các mô hình như LSTM (Long Short-Term Memory) và GRU (Gated
Recurrent Units) được ra đời để h n ch tình tr ng này x y ra b ng cách thêm
ạ ế ạ ả ằ
các tham s c c g . Nh ng c ng này giúp mô hình h
ố ổng đượ ọi là “gates” ữ ổ ọc
đượ ọ ọ
c thêm các thông tin quan tr ng và xóa các thông tin không quan tr ng
trong l n c a mô hình RNN.
ớp ẩ ủ
Nhưng v n không th
ẫ ể giải quy t tri
ế ệt để hiện tượng Vanishing Gradient,
v i nh
ớ ững câu độ dài lớn mô hình v n g p h
ẫ ặ ạn ch trong quá trình h c và d
ế ọ ự
đoán, không những thế việc thêm các tham số khiến mô hình LSTM và GRU
trở ứ
nên ph c t p, th i gian n luy n
ạ ờ huấ ệ lâu hơn rấ ề
t nhi u. Trong luận văn này
tôi s không áp d xây d
ẽ ụng mô hình RNN để ựng Chatbot, thay vào đó sẽ
nghiên cứu và áp d ng mô hình Transformer, m t mô hình h c sâu m nh m
ụ ộ ọ ạ ẽ
khắ ụ
c ph c các nhược điể ố ữ ủ
m c h u c a mô hình RNN.
17
2.3 Mô hình Transformer
Transformer [8] là môt mô hình h c gi i thi
ọc sâu đượ ớ ệu vào năm 2017, và
đã trở ậ ện đạ ất trong lĩnh vự ử ữ ự
thành thu t toán hi i nh c x lý ngôn ng t nhiên. Là
tiền đề ạ
t o ra BERT (Bidirectional Encoder Representations from Transformers)
m t k thu t h c máy ng d ng mô hình Transformer h c bi u di n c
ộ ỹ ậ ọ ứ ụ dùng để ọ ể ễ ủa
các t t t nh t hi n t c ngo t l n cho c ng
ừ ố ấ ệ ại và là bướ ặ ớ ộng đồ NLP năm 2019, và
chính Google cũng đã áp dụ ụ ế ủ ọ
ng BERT trong công c tìm ki m c a h .
Trước khi được công b , h u h t các tác v x lý ngôn ng t nhiên s d ng
ố ầ ế ụ ử ữ ự ử ụ
kiế ạng nơ ồ ể ế ủa phương pháp này xả ở
n trúc m -ron h i quy RNN, đi m y u c y ra
những câu dài không thể tìm được m i liên h
ố ệ giữa các t trong câu và t
ừ ốc độ hu n
ấ
luy n m do x u vào m t cách tu n t . Transformer c ph c
ệ chậ ử lý đầ ộ ầ ự ra đời đã khắ ụ
đượ ả 2 nhược điể
c c m này.
2.3.1 T ng quan mô hình Transformer
ổ
Giống như nhữ ị
ng mô hình d ch máy khác, Transformer bao g m 2 thành
ồ
phần mã hóa (Encoder) i mã (Decoder).
và giả
Encoder là m p g m 6 l p riêng bi t x p ch ng lên nhau, s l
ột ngăn xế ồ ớ ệ ế ồ ố ớp ở
đây có thể ỉ ụ ộ ục đích từ ỗ ớ ồ
tùy ch nh ph thu c vào m ng bài toán. M i l p bao g m 2
l u tiên là l p x u chú ý (Multi-head Attention) và l p con th
ớp con, đầ ớ ử lý đa đầ ớ ứ
hai đơn giả ộ ạ g nơ ề ẳ ế ố ần dư
n là m t m n -ron truy n th ng (F -forward). K
eed t n i ph
(Residuals Connection) bao quanh hai l p con này ti
ớ ếp theo đó là bướ ẩ
c chu n hóa
l p (Layer Normalization) giúp mô hình hu n luy n nhanh h i t
ớ ấ ệ ộ ụ hơn và tránh mất
mát thông tin trong quá trình huấn luyện.
Decoder cũng đượ ấ ừ ớ ệ ố ớ ớ
c c u thành t 6 l p riêng bi t (cùng s l p v i encoder).
M i l p bao g m 2 l p con gi ng v i encoder và thêm m t l p Multi-head
ỗ ớ ồ ớ ố ớ ộ ớ
attention n m gi a giúp Decoder t
ằ ữ ạo được mối tương quan với câu đầu vào. Gi ng
ố
v i Encoder k thu t Residual Connection và Layer N c áp
ớ ỹ ậ ormalization cũng đượ
d ng trên các l p con. Có m t s
ụ ớ ộ ự thay đổi ở l p con Multi-head A
ớ ttention đầu tiên,
thay vì truy n t t c các t trong câu vào Decoder, ta s
ề ấ ả ừ ẽ che đi các từ ở tương lai
chưa đượ ịch đế
c mô hình d n gọ cơ chế
i là sked Multi-head A ention.
Ma tt
18
Hình 2.2 mô hình Transformer [8]
. Sơ đồ
Chi ti ng c ransformer s
ết cơ chế hoạ ộ
t đ ủa T ẽ đượ ở ầ
c trình bày các ph n sau.
2.3.2 Thành ph n mã hóa
ầ
2.3.2.1 Vector hóa u vào
câu đầ
Cho đế ể
n nay máy tính không hi u đượ ữ ế ỉ đọ ợ ớ ạ
c ch vi t mà ch c đư c dư i d ng
s hóa, vì v y ta c n bi u di n các t i d ng vector. Vi c chuy n hóa các t
ố ậ ầ ể ễ ừ dướ ạ ệ ể ừ
thành d ng vector s d ng thu t toán Word2Vec [9], d
ạ ử ụ ậ ữ liệu đầu vào sẽ là các câu
c a t p d n luy n, thu t toán d a vào v trí và ng c nh các t trong câu
ủ ậ ữ liệu huấ ệ ậ ự ị ữ ả ừ
để ự tương đồ ừ có nghĩa tương đồ ặ ổ ợ ẽ
tính toán s ng, các t ng ho c b tr cho nhau s
có các vector tương đồ ừ ự ế ậ
ng nhau trong không gian t v ng. Có 2 cách ti p c n
Word2Vec là Continuous bag of words (CBOW) và Skip-gram model:
19
- CBOW: thu t toán d
ậ ự đoán từ trung tâm ở giữa câu b ng cách s d ng ng
ằ ử ụ ữ
c nh c a các t xung quanh t d
ả ủ ừ ừ ự đoán.
- Skip-gram model: ngược l i v i CBOW, thu t toán Skip-gram model s d
ạ ớ ậ ẽ ự
đoán các từ ừ ụ ộ ữ ả ủ ừ trung tâm đó
xung quanh t trung tâm ph thu c vào ng c nh c a t
trong câu.
2.3.2.2 Thành ph n mã hóa v trí (Positional Encoding)
ầ ị
Mô hình Transformer không x lý các t trong câu m t cách tu n t , cho nên
ử ừ ộ ầ ự
c n m
ầ ột phương pháp để x lý th t c a các t trong chu
ử ứ ự ủ ừ ỗi đầu vào. Để giải quyết
bài toán này Tranformer c ng m c b ng word embedding vào
ộ ột vector kích thướ ằ
m u vào, v i vi c tính toán vector v s d ng hàm sinusoid:
ỗi embedding đầ ớ ệ ị trí ử ụ

󰇛 󰇜
  





󰇛󰇜

󰇛 󰇜
  






󰇛󰇜
Trong đó ị ủ ừ ị ầ ử ứ
pos là v trí c a t trong câu, PE là giá tr ph n t th trong
i
embeddings có độ dài dmodel.
Hàm sin và cosin có d t n s và t n s này gi m d các chi
ạng đồ thị ầ ố ầ ố ả ần ở ều
l n d n. Hình
ớ ầ dưới bi u di
ể ễn được sự biến thiên c a màu s
ủ ắc ở các v trí khác nhau
ị
c a t trong câu,
ủ ừ ở chi u 0, giá tr
ề ị thay đổi liên tục tương ứng v i màu s
ớ ắc thay đổi
liên t c, và t n s i này gi m d các chi u l
ụ ầ ố thay đổ ả ần ở ề ớn hơn.
20
Hình 2.3 Minh h a bi nhi t Positional Encoding
ọ ểu đồ ệ
2.3.2.3 t chú ý (Seft-Attention)
Cơ chế ự
Cơ chế ự Attention là cơ chế giúp Transformer tìm ra đượ
t chú ý hay Self- c
s liên quan gi a các t trong câu. Ví d trong câu
ự ữ ừ ụ “The animal didn’t cross the
street because it was too tired”. T i di n cho cái gì,
ừ “it” trong câu trên đạ ệ
“animal” hay “street”, đối với con người thì không khó để trả lời, nhưng lại không
đơn giả ớ ậ ừ ừ ở
n v i các thu t toán. Seft-Attention cho phép t quan sát các t
“it” các
vị trí khác trong câu để tìm ra s liên quan gi a chúng v
ự ữ ới nhau. Đối v i các m
ớ ạng
RNN duy trì m t tr ng thái
ộ ạ ẩn cho phép nó k t h
ế ợp v i các t
ớ ừ trướ ừ đang xử
c t lý,
còn đố ớ ẽ
i v i Transformer s duy trì m i liên k các t trong câu.
ố ế ố
t đ i với tất cả ừ
21
Hình 2.4. Minh h a m liên k t gi a các t
ọ ứ ộ
c đ ế ữ ừ [10]
Khi mã hóa t t i encoder th 2, t liên k t r t m nh v i t
ừ “it” ạ ứ ừ “it” ế ấ ạ ớ ừ
“animal” “too tired”
và .
Để tính đượ ớ ỗ ừ ẽ ở ạ ọ ố
c Self-Attention, v i m i t ta s kh i t o 3 tr ng s WQ
, Wk
,
Wv
, sau đó nhân ớ
v i ma trận đầu vào được 3 ma tr n Q (query), K (key), V (value)
ậ
v i s chi u b ng nhau và nh u là 64 trong khi
ớ ố ề ằ ỏ hơn vector embedding, chiề
embedding t c ti ng ma tr n Q và K
ừ đầu vào là 512. Bướ ếp theo nhân tích vô hướ ậ
r i th c hi t Scaled Dot-Product Attention, t c ng 2
ồ ự ện kĩ thuậ ứ là chia tích vô hướ
mà trận Q và K cho  với 
 là chi u c a K, và truy n k t qu qua hàm Softmax.
ề ủ ề ế ả
Softmax chu chúng là các s c cu
ẩn hóa các điểm để ố dương có nhỏ hơn 1. Bướ ối
nhân tích vô hướ ới V, ta đượ
ng v c công th c nhau sau:
ứ

󰇛
  
󰇜 
󰇧



󰇨󰇛󰇜
22
2.3.2.4 u chú ý (Multi-Head Attention)
Cơ chế đa đầ
V i Attention mô hình h
ới mỗ ọc đượ ộ ể ệ ữ ừ
c m t ki u liên h gi a các t trong câu,
để m r ng kh
ở ộ ả năng học được nhiều m i liên h
ố ệ hơn, tập trung vào các v trí khác
ị
nhau, Transformer s d Multi- n là thêm nhi
ử ụng cơ chế Head Attention, đơn giả ều
Seft-Attention. Theo th c nghi m ra r ng t o 8 b ma tr n tr ng s W
ự ệ chỉ ằ ạ ộ ậ ọ ố Q
, Wk
,
Wv là phù h p t. M i b c kh i t u nhiên, nhân ma tr n vector
ợ nhấ ỗ ộ đượ ở ạo ngẫ ậ
embedding đầu vào v i 8 b
ớ ộ tương ứng ta được 8 ma tr n Head-
ậ Attention. Sau đó
n i các ma tr n v i nhau và nhân v i ma tr n tr ng s W
ố ậ ớ ớ ậ ọ ố o
c k t qu có
để ra đượ ế ả
kích thướ ằ ớ
c b ng v i ma trận embedding đầ . Ta đượ ứ
u vào c công th c:

󰇛
  
󰇜 
󰇛


   
󰇜
  (2.10)
V i
ớ 
 󰇛


 


 


󰇜
2.3.2.5 M ng truy n th ng xuôi theo v
ạ ề ẳ ị trí
Ma tr n k t qu c a Multi-Head Attention s c truy n vào m ng truy
ậ ế ả ủ ẽ đượ ề ạ ền
thẳng xuôi theo v trí (Position-wise Feed-Forward Networks). T t c các v trí
ị ấ ả ị
khác nhau đều s d ng chung m t m ng truy n th
ử ụ ộ ạ ề ẳng và được tính toán song song.
M ng truy n th
ạ ề ẳng này bao g m 2 l
ồ ớp và đượ ẩ
c chu n hóa v i ReLu. Các t
ớ ừ đi qua
cùng m ng truy n th ng m p.
ột mạ ề ẳ ột cách độc lậ

󰇛
󰇜 
󰇛
 

󰇜 
 (2.11)
2.3.2.6 K thu k i ph n hóa l p
ỹ ật ết nố ần dư và chuẩ ớ
Trong ki n trúc c a mô hình Transformer, k thu t k t n i ph
ế ủ ỹ ậ ế ố ần dư
(Residuals Connection) và chuẩn hóa l p ( yer Normalization)
ớ La được s d ng sau
ử ụ
m i quá trình x
ỗ ử lý, 2 k thu t giúp mô hình hu
ỹ ậ ấn luy n nhanh h i t
ệ ộ ụ hơn và tránh
m t mát thông tin trong quá trình hu luy n mô hình. Layer Normalization (11)
ấ ấn ệ
có nhi m v n hóa d u nh m c i thi n kh i t c a mô hình. V
ệ ụ chuẩ ữ liệ ằ ả ệ ả năng hộ ụ ủ ới
Residuals Connection (12) ngoài vi c giúp h i t t
ệ ộ ụ ốt hơn còn có nhiệm v giúp mô
ụ
hình Transformer giữ được thông tin v v trí các t trong câu (Position Encoding
ề ị ừ )
t i vì trong quá trình x lý d
ốt hơn, bở ử ữ ệ ề ị ừ ẽ ị ấ
li u thông tin v v trí các t s b m t mát
dần.
23
2.3.3 Thành ph n gi i mã
ầ ả
K t qu c thành ph n mã hóa (Encoder) s cho ra các b vector K và V,
ế ả ủa ầ ẽ ộ
tiếp đến thành ph n gi i mã (Decoder)
ầ ả thực hi n ch
ệ ức năng giải mã vector c a câu
ủ
đầu vào thành câu đầu ra, do đó D ẽ ậ ừ ộ ủ
ecoder s nh n thông tin t 2 b vector này c a
Encoder. Ki n trúc D oder r t gi ng v i Encoder, ngo i tr có thêm m t l p con
ế ec ấ ố ớ ạ ừ ộ ớ
Multi-Head Attention h c m i liên h a t trong
ở giữa dùng để ọ ố ệ giữ ừ đang các từ
câu đầ ớ ừ trong câu đầ
u ra v i các t u vào.
2.3.3.1 K thu Masked Multi-Head Attention
ỹ ật
K thu Masked Multi-Head Attention ho ng gi ng Multi-Head
ỹ ật ạt độ ố
Attention, nhưng thay vì việc truy n t t c các t
ề ấ ả ừ câu đầu ra, Decoder sẽ che đi các
từ ở tương lai chưa được mô hình d n và trong quá trình n luy n mô hình
ịch đế huấ ệ
s t ng d b c vi c này c Scaled Dot-
ẽ ự độ ự đoán các từ ị che đi, để làm đượ ệ ở bướ
Product ta c ng k t qu v i m t ma n mask ch a các giá tr âm vô cùng (-inf)
ộ ế ả ớ ộ trậ ứ ị
và 0. Lý do c a vi c c ng thêm ma tr
ủ ệ ộ ận mask này để khi đi qua Softmax các giá
tr tr
ị ẽ
âm vô cùng s ở ề
v 0.

󰇛
  
󰇜 
󰇧


󰇨󰇛 󰇜

2.3.3.2 chú ý c a thành ph n mã hóa và gi i mã
Cơ chế ủ ầ ả
Encoder-Decoder Attention hay t m d chú ý c a thành ph n mã
ạ ịch là cơ chế ủ ầ
hóa và gi i mã, ho ng gi ng v u chú ý, ngo i tr t o ra
ả ạt độ ố ới cơ chế đa đầ ạ ừ việc nó ạ
các ma tr n Q t l i và l y các ma tr n K và V t u ra c a Encoder
ậ ừ ớp phía dướ ấ ậ ừ đầ ủ
để ự ệ ệ ụ ủ ớ ạo đượ ố ế ữ
th c hi n tính toán. Nhi m v c a l p này giúp t c m i liên k t gi a các
từ ở câu đầu ra v i các t
ớ ừ ở câu đầu vào. Đầu ra c a l
ủ ớp Encoder-Decoder Attention
s ng truy n th ng gi ng v
ẽ đi qua mạ ề ẳ ố ới Encoder.
2.3.3.3 Phân lo i tuy n tính và n hóa d u
ạ ế chuẩ ữ liệ
Đầ ủ ớ ố ẽ đi qua lớ ạ ế
u ra c a l p Decoder cu i cùng s p phân lo i tuy n tính (Linear
Classifier) là m t m ng truy n th ng giúp chuy
ộ ạ ề ẳ ển đổi thành ma tr n có chi
ậ ều bằng
s t v d ng. Gi s mô hình s d ng 10,000 t v ng, ta s
ố ừ ựng mô hình đang sử ụ ả ử ử ụ ừ ự ẽ
đượ ều dài tương ứ ớ ố ừ ựng. Đầ ủ ớ ẽ
c 1 vector có chi ng v i s t v u ra c a l p Linear s
24
đượ ề ớp Softmax để ra đượ ế ả ấ ả ừ 0 đế
c truy n vào l c k t qu xác xu t trong kho ng t n
1.
K t qu
ế ả đi qua Softmax sẽ dùng để tính xác su t c a t t hi n ti
ấ ủ ừ xuấ ệ ếp theo là
bao nhiêu, so sánh v i k t qu ta mong mu n s c giá tr hàm m t mát (Loss
ớ ế ả ố ẽ đượ ị ấ
function) và th c hi c truy quá trình
ự ện bướ ền ngược (backpropagation) để huấn
luy n c di n ra.
ệ đượ ễ
2.3 m c a mô hình Transformer v i mô hình RNN
.4 Ưu điể ủ so ớ
Trước khi Transformer được giớ ệ
i thi u thì trong x lý ngôn ng t nhiên mô
ử ữ ự
hình RNN đượ ện đạ ấ Mô hình Transformer ra đời đã giả ế
c coi là hi i nh t. i quy t
đượ ện tượ ấn đề ố ữ ặ ả
c hi ng Vanishing Gradient, v c h u mà RNN g p ph i,
Transformer x lý các t m ng th i ch không ph i t ng t m t nên t
ử ừ ột cách đồ ờ ứ ả ừ ừ ộ ốc
độ ử lý nhanh hơn rấ ề ằng kĩ thuậ
x t nhi u, và b t Self Attention và Positional
Encoding s không gây m dài l c bi t có th
ẽ ất mát thông tin trên câu có độ ớn, đặ ệ ể
x lý câu có dài vô h
ử độ ạn.
Trong bài báo (8), tác gi m trên t p d u tiêu chu n WMT
ả đã thử nghiệ ậ ữ liệ ẩ
2014 English-German bao g m 4.5 tri u c p câu v i 37000 t v ng và t p d
ồ ệ ặ ớ ừ ự ậ ữ ệ
li u
l n WMT 2014 English-French bao g m 36 tri u câu. Ph n c ng th nghi m là
ớ ồ ệ ầ ứ ử ệ
m t máy tính v i 8 card GPU NVIDIA P100. Mô hình th nghi m trên 2 b d
ộ ớ ử ệ ộ ữ
liệ ớ ồ ớ ỗ ộ
u là base và big model, v i base model bao g m 6 l p m i b encoder và
decoder, embedding có chi u 512, l n c a m ng truy n th ng có chi u 2048,
ề ớp ẩ ủ ạ ề ẳ ề
v i 8 Head- p cho m i b encoder và
ớ Attention và trên big model cũng có 6 lớ ỗ ộ
decoder v i embedding 512 chi u, l
ớ ề ớp ẩn c a m ng truy
ủ ạ ền th ng có chi u 4096 và
ẳ ề
8 Head-Attention. c nghi
Thự ệm c k t qu
thu đượ ế ả như sau:
25
Hình 5. So sánh Transformer v i các mô hình khác d a trên k
2. ớ ự ết quả
đánh giá của bài báo [8]
Ở ầ ị ậ ữ ệ
ph n d ch t p d li u WMT 2014 English-German, mô hình Transformer
v c k t qu t t nh t v i cá
ới big model cho đượ ế ả ố ấ ớ c mô hình được báo cáo trước đó
v m BLEU, là mô hình tiên ti n nh t v m BLEU là 28.4, không
ới hơn 2.0 điể ế ấ ới điể
nhữ ế
ng th chi phí n luy
huấ ện (training cost) theo điểm FLOPs ch b ng 1/3 so v
ỉ ằ ới
mô hình ConvS2S (là mô hình có m FLOPs th p nh t trên t p EN-DE).
điể ấ ấ ậ
Trên t p d u l
ậ ữ liệ ớn hơn là WMT 2014 English French, điể
- m BLUE c a big
ủ
model đạt được là 41.0 và là cao nh t so v
ấ ới các mô hình trước đó, v i
ớ điểm FLOPs
chỉ ằ ớ ấ ấ
b ng 1/4 so v i mô hình Deep-Att + PosUnk (là mô hình có FLOPs th p nh t
trên t p EN-FR).
ậ
Từ đó có th k t lu
ể ế ận mô hình Transformer đang cho kết qu t t nh t v i th
ả ố ấ ớ ời
gian n luy n so v i các mô hình hi i nh t hi n nay.
huấ ệ nhanh hơn đáng kể ớ ện đạ ấ ệ
2.4 Mô hình DIET
DIET là vi t t t c a Dual Intent and Entity Transformer [13]
ế ắ ủ , là m t mô hình
ộ
Transformer đa tác vụ ử ả ại ý đị ấ ự ể
, x lý c phân lo nh và trích xu t th c th cùng lúc.
Đượ ạ ở ề ần cho phép chúng ta thay đổ ầ ộ
c t o b i nhi u thành ph i các thành ph n m t
cách d dàng.
ễ
26
Hình 2.6 mô hình DIET [13]
. Sơ đồ
27
2.4.1 u vào (Featurization)
Đặc trưng hóa câu đầ
Câu đầu vào đượ ể ừ ặ ụ
c tách thành các token, token có th là các t ho c các c m
t thu c vào thu t toán, và thêm m t token __CLS__ (special classification
ừ phụ ộ ậ ộ
token) i câu là t c a các vector token trong câu có nhi m v tóm t t ý
ở cuố ổng ủ ệ ụ ắ
đị ủ ả ỗi token đượ ặc trưng hóa với kĩ thuậ
nh c a c . M
câu c đ t sparse features, dense
feature. Dense features có th là b n luy n s n
ể ất kì word embeddings được huấ ệ ẵ
(Pretrained Embedding). Spare features bao g m one-hot encoding và n-grams (n
ồ
<= 5).
Việ ử ụ ẽ ố ấ ệ , nhưng
c s d ng Pretrain Embedding s t t cho quá trình hu n luy n
chưa đủ để ử ề ứ ụ ụ ể ụ ừ “chín” có thể
x lý thông tin trong mi n ng d ng c th , ví d t là
s ng, ho c tính ch t c a th i tùy vào ng c nh c
ố lượ ặ ấ ủ ức ăn, thậm chí tên ngườ ữ ả ụ thể,
do v y s ng truy n th n luy n
ậ ẽ phải đi qua mạ ề ẳng để huấ ệ mô hình chính xác hơn
cũng như chuẩ ữ ệu đầ
n hóa d li u ra truy n vào l p ti p theo.
ề ớ ế
Điểm đặ ệ ạ ề ẳ ố ở ấ ả ị ạ
c bi t là m ng truy n th ng gi ng nhau t t c các v trí. M ng
truy n th ng cá -ron trong l c liên k n t t c
ề ẳng thông thườ c nơ ớp trước đượ ế ế
t đ ấ ả các
nơ-ron c a l p sau, vi c này khi n quá trình huy n luy n mô
ủ ớ ệ ế ế ệ diễn ra lâu hơn. Ở
hình DIET s i b u nhiên 80% liên k t gi a các l p giúp th i gian hu
ẽ loạ ỏ ngẫ ế ữ ớ ờ ấn
luy .
ện nhanh hơn đáng kể
2.4.2 H c chuy n giao (Transfer Learning)
ọ ể
H c ph c nh ng thành t u nh
ọc sâu đang ngày càng đượ ổ biến và đạt đượ ữ ự ất
định, nhưng để ạ ộ ọ ệ ả ầ ộ ợ ữ ệ ổ
t o ra m t mô hình h c sâu hi u qu c n m t lư ng d li u kh ng
l xây d ng t p d u hu n luy n t u không ph i m t vi c d dàng,
ồ. Để ự ậ ữ liệ ấ ệ ừ ban đầ ả ộ ệ ễ
do v y
ậ Transfer Learning đã được ra đời nh m c i thi
ằ ả ệ ạ
n h n ch này c a quá trình
ế ủ
h c sâu.
ọ
H c chuy n giao (Transfer Learning) là quá trình áp d ng tri th
ọ ể ụ ức đã được
h c t d i quy t m t bài toán m
ọ ừ mô hình trước đó, khai thác và tái sử ụng để giả ế ộ ới
mà không c n xây d ng m t mô hình hu n luy n t
ầ ự ộ ấ ệ ừ ban đầu.
28
Ví d trong bài toán phân lo i chó và mèo. N u hu n luy n t
ụ ạ ế ấ ệ ừ u, ta c n r
đầ ầ ất
nhi n
ề ữ ệ ẫu cũng như ấ ề ờ ấ ệ
u d li u m m t nhi u th i gian hu n luy để đạt được độ chính
xác cao. Tuy nhiên n u t n d ng l i các t p d n luy n s n
ế ậ ụ ạ ậ ữ liệu đã được huấ ệ ẵ
(pretrained-model) thì s c n ít
ẽ ầ thời gian huấn luyện hơn để đạt được m chính
ột độ
xác mong đợ ậm chí độ ể ớn hơn so vớ ụ
i. Th chính xác có th l i khi không áp d ng
Transfer learning.
Hình 2.7. Minh h a so sánh s d ng và không s d ng h c chuy n giao
ọ ử ụ ử ụ ọ ể
Trong x lý ngôn ng t nhiên, nh
ử ữ ự ững mô hình được huấn luy n s n n i ti
ệ ẵ ổ ếng
như Word2Vec, ConveRT, BERT hay spaCy ệ ấ ệ ở
, giúp vi c hu n luy n Chatbot tr
nên đơn giản hơn rất nhi u, thay vì vi c ph i thu th
ề ệ ả ập hàng trăm nghìn ữ
d liệu câu
tho i, ta ch c t n d ng l i nh ng mô hình hu n luy n s t h p d
ạ ỉ việ ậ ụ ạ ữ ấ ệ ẵn đó kế ợ ữ liệu
trong mi ng d thu th c s c k t qu t t và gi
ền ứ ụng ập đượ ẽ đạt đượ ế ả ố ảm đáng kể thời
gian hu n luy n so v i vi n luy n l i d u t u. Các mô hình hu
ấ ệ ớ ệc huấ ệ ạ ữ liệ ừ ban đầ ấn
luy n s n n ng h cho Ti ng Vi
ệ ẵ ổi tiế ỗ trợ ế ệt:
- [14]: t p d c hu n luy n trên 7.1GB d u bao
word2vecVN ậ ữ liệu đượ ấ ệ ữ liệ
g m 1,675,819 t và t ng h p t 97,440 tài li u, s d ng k thu t Word2Vec.
ồ ừ ổ ợ ừ ệ ử ụ ỹ ậ
- vi_spacy [15]: mô hình s d
ử ụng thư viện x lý ngôn ng t
ử ữ ự nhiên spaCy để
đào tạo 18GB d u thu th p t các bài báo, h c tác v phân tách t và phân
ữ liệ ậ ừ ỗ trợ ả ụ ừ
tích cú pháp.
- [16]: là mô hình hu n luy n s n hi i nh t dành cho ng
PhoBERT ấ ệ ẵ ện đạ ấ Tiế
Việt, đượ ể ở ứ ủ ấ ệ ự
c phát tri n b i nhóm nghiên c u c a VinAI, hu n luy n d a trên mô
hình RoBERTa [17] v i 20GB d c thu th u ngu n khác nhau.
ớ ữ liệu đượ ập ở nhiề ồ
Cung c p 2 phiên b n phobert-base hu n luy n v i 135 tri u tham s và phobert-
ấ ả ấ ệ ớ ệ ố
large hu n luy n v i 370 tri u tham s
ấ ệ ớ ệ ố.
29
2.4 Thành ph Transformer
.3 ần
Transformer có nhi m v tìm ra s liên k token trong câu, t
ệ ụ ự ết của các từ ừ đó
có th c chính xác nh c a câu DIET s d ng kh i Encoder v
ể xác định đượ ý đị ủ . ử ụ ố ới
mặc định 2 l p, mu n mô hình d
ớ ố ự đoán chính xác hơn có thể tăng số lớp lên nhưng
cũng đồ ời tăng thờ ử ủ ệ ống. Đầ ủ
ng th i gian x lý c a h th u vào c a mô hình
Transformer là vector có s chi u là 256 u ra s là các vector riêng bi ng
ố ề , và đầ ẽ ệt ứ
với mỗi từ các token sau đó sẽ đượ ề ớ ặ
c truy n vào l p CRF ho c Embeding Layer.
2.4 n luy n mô hình
.4 Huấ ệ
DIET là mô hình xử lý đa tác vụ bao g m trích ch n th c th (Extract entity),
ồ ọ ự ể
phân lo nh (Intent classification) và d b n (Masked language
ại ý đị ự đoán từ ị ẩ
modeling). Việc huấn luyện mô hình là nhi m v
ệ ụ giảm thi u t
ể ối đa giá trị c a hàm
ủ
m t mát 3 tác v i là giá tr
ấ ụ trên được gọ ị ấ ổ
m t mát t ng 
.
Hàm m t mát quá trình trích ch n th (Entity loss):
ấ ọ ực thể
D u sau khi x lý xong Transformer s p Conditional
ữ liệ ử ở ẽ được đi vào lớ
Random Field (CRF). C [18] là m
RF ột phương pháp sử d ng xác su
ụ ất có điều kiện
thường đượ ụ ậ ạ ẫ ọ ự đoán dữ ệ ấ
c áp d ng trong nh n d ng m u, h c máy và d li u có c u
trúc. Rasa NLU s d
ử ụng thư viện sklearn-crfsuite [19] để thự ệ
c hi n trích ch n th
ọ ực
th ti
ể. Bên trong CRF các t s m t m truy n th (FFNN)
ừ ẽ đi qua ộ ạng ề ẳng ế ẽ
p theo s
phân lo i entity.
ạ Ở giữa các FFNN có m t ma tr
ộ ậ ể
n chuy n ti p (transition matrix),
ế
ý tưở ủ ận này để ổ ấ ế ộ ả năng
ng c a ma tr phân b xác xu t n u token là m t entity thì kh
cao token bên cạnh nó cũng là entity.
Đầ ủ ớp CRF thu đượ ộ ỗ ế ợ ớ ữ ệ
u ra c a l c m t chu i entity và k




 t h p v i d li u
traning nhãn entity yentity c giá tr hàm m t mát trong quá trình trích ch
ta đượ ị ấ ọn
thực th c:
ể ứ
(Entity Loss) theo công th

  

󰇛  




 
󰇜 (2.13)
V󰉵i L
CRF (.) l negative log-like hood cho m t CRF. Entity Loss
à li 󰉳 
 c ng
à
nh󰉮 󰊁 
m h nh d
thì ô ì o n entity c ng ch nh x
á à í ác.
30
Hàm m t mát quá trình phân lo nh (Intent loss):
ấ ại ý đị
Token __CLS__ là token tóm t t c câu ph c v cho m i ý
ắ ả ụ ụ ục đích phân loạ
định. __CLS__ đi qua Transformer thu được 
, song song với nó là nhãn ý định


là intent s t Embedding Layer. K thu t Embedding
ẽ đi qua mộ ỹ ậ ở đây sử
d mô hình StarSpace [20]
ụng được công bố vào cuối năm 2017 phát triển b i nhóm
ở
nghiên c u AI Facebook.
ứ
Đầ ủa Embedding Layer ta thu đượ
u ra c c 2 vector 
 󰇛

󰇜 và


 󰇛

󰇜 
với R
20
, 2 vector này sau đó sử d ng dot-product loss
ụ để
t v (positive intent)
ối đa sự tương đồng ới nhãn ý định đúng 

 và gi m thi u s
ả ể ự
tương đồ ới nhãn ý định khác nhãn ý định đúng
ng v (negative intent) 

, ta được
công thức:








 (2.14)








 (2.15)
Intent Loss được tính theo công thức:

  



  󰇭



   




󰇮
󰇛 󰇜

Với 

là t ng s m u negative intent, m t intent có m t ho c nhi u ví d
ổ ố ẫ ộ ộ ặ ề ụ


là trung bình c a các ví d trong 1 intent. Intent Loss
ủ ụ 
càng nh thì mô hình
ỏ
d intent càng chính xác.
ự đoán
Hàm m t mát quá trình d
ấ ự đoán token bị che đi (Masking loss):
Trong quá trình huấn luy n mô hình DIET s
ệ ẽ che đi ngẫu nhiên m t s token
ộ ố
đầ ẽ ự đoán từ ợc che đi và đượ ọ ỹ ậ
u vào, mô hình s d đư c g i là k thu t Masked
language modeling. __MASK__ c truy n qua Transformer thu
token cũng đượ ề
được  n vào Embedding Layer, song song v
tiếp theo đó truyề ới đó masked
to lý
ken (trong là t c x
Error! Reference source not found. ừ pong) cũng đượ ử , k
ế ả
t qu sau khi qua Transformer là 

và truy n Embedding Layer.
ền đế
31
Cũng ố ới Intent classification, đầ ủa Embedding Layer ta đượ
gi ng v u ra c c 2
vector 
  󰇛
󰇜 
và 
 󰇛

󰇜 
với R
20
,  và 

dot-product ta thu được:








 (2.17)








 (2.18)
Mask l c tính theo công th
oss đượ ức:

   



  󰇭


   




󰇮
󰇛 󰇜

Với 

là t ng s m u negative mask. c áp d ng k thu t Masked
ổ ố ẫ Việ ụ ỹ ậ
language modeling c s d giúp mô hình không ch phân lo i mà
đượ ử ụng ỉ dùng để ạ
còn học được các đặc điểm chung trong t v ng giúp d
ừ ự ự đoán chính xác hơn. Mass
loss 
 càng nh thì mô hình d
ỏ ự đoán mask token càng chính xác
Giá tr hàm m t mát t ng h p:
ị ấ ổ ợ
Giá tr hàm m t mát t ng h p (Total loss) b ng t ng c a Entity loss, Intent
ị ấ ổ ợ ằ ổ ủ
loss và Mask loss. DIET s n luy n mô hình b ng cách
ẽ huấ ệ ằ đưa Total loss 
về
giá tr t có th và th c hi n quá trình truy
ị nhỏ nhấ ể ự ệ ền ngược (Backpropagation) để
c p nh t tr ng s các thành ph n. Mô hình có th c i b m t trong
ậ ậ ọ ố ầ ể ấu hình để loạ ỏ ộ
nhữ ụ ầ ế ả ử ầ ọ ự ể
ng tác v không c n thi t, gi s mô hình không c n trích ch n th c th ta có
th lo i b
ể ạ ỏ 
 ra khỏi 

.


 

 
 (2.20)
2.4.5 Đánh giá mô hình DIET
D a trên c nghi m c a tác gi mô hình DIET [13] v i b d u NLU-
ự thự ệ ủ ả ớ ộ ữ liệ
Benchmark [21] bao g m 25,716 câu tho i v i 64 intent và 54 entity t k t qu
ồ ạ ớ đạ ế ả
t khi so sánh v i mô hình HERMIT [22] c ch ng
ốt hơn đáng kể ớ , mô hình đã đượ ứ
minh đạ ế ả ốt hơn các công cụ như Rasa, Dialogflow, LUIS và Watson.
t k t qu t
32
Hình 2.8. So sánh mô hình DIET và mô hình HERMIT [13]
Mô hình DIET s d ng ki n trúc linh ho t có th d i các
ử ụ ế ạ ể ễ dàng thay đổ
thành phần bên trong, do đó ế
k t quả đánh giá mô hình đượ ể ệ
c th hi n qua các
bi n ng n
ế thể ằ
b s trong thành ph
ự thay đổi ầ Sparse feature, Dense feature,
Mask loss, k t qu
và ế ả được so sánh thông qua điểm F1-score:
Hình 2.9 n th c
. Đánh giá các biế ể ủa mô hình DIET [13]
Qua b ng trên có th
ả ể nhận th y DIET
ấ có s d ng Spare feature và Dense
ử ụ
feature v i D c k t qu t t nh c bi
ớ ense feature là ConveRT cho đượ ế ả ố ất và đặ ệt
th i s
ờ ấ ệ ít hơn 6 lầ ớ
i gian hu n luy n n so v ử ụ
d ng mô hình BERT.
33
CHƯƠNG 3: XÂY DỰNG VÀ CÀI ĐẶ Ứ Ụ
T NG D NG
CHATBOT
3.1 Gi i thi Rasa Framework
ớ ệu
Rasa Framework (23) là m t mã ngu n m giúp xây d ng Chatbot s d
ộ ồ ở ự ử ụng
trí tu nhân t o c vi t b ng ngôn ng l p trình
ệ ạ . Được ra đời vào năm 2016 và đượ ế ằ ữ ậ
Python, v i s h c a c c c p nh liên t c Rasa
ớ ự ỗ trợ ủ ộng đồng người dùng và đượ ậ ật ụ
đang ngày càng phát triển và tr thành m t trong nh ng n
ở ộ ữ ền t ng xây d ng Chatbot
ả ự
l n nh và hoàn toàn mi n phí.
ớ ất ễ
Rasa bao g m
ồ nhiều thành phần trong đó có 2 thành ph n chính là thành ph
ầ ần
x lý ngôn ng t nhiên (NLU) và thành ph n qu n lý h i tho i (DM).
ử ữ ự ầ ả ộ ạ
Hình 3.1 các thành ph n trong Rasa Framework
. Sơ đồ ầ
- NLU: là ph n x lý phân lo nh và trích xu t th c th c th
ầ ử ại ý đị ấ ự ể. Đượ ể hiện
ở ố ắ ủa người dùng đượ ử ộ ồ
kh i NLU Pipeline, tin nh n c c x lý qua m t quy trình g m
nhi u
ề bướ ọ
c g i là pipeline.
34
- Dialogue management: là thành ph n quy nh s n ti p theo trong
ầ ết đị ự kiệ ế
cuộ ộ ạ ự ữ ả ệ ại. DM đượ ể ệ ở ố
c h i tho i d a vào ng c nh hi n t c th hi n b i kh i Dialogue
Policies.
Bên c m các thành ph n khác:
ạnh đó Rasa bao gồ ầ
- Rasa Action Server: th
là thành ph n tùy ch n, n u h
ầ ọ ế ệ ố ầ ử
ng c n x lý các
tác v n x c khi tr l i dùng ho c g n server khác
ụ logic như tiề ử lý trướ ả ời ngườ ặ ọi đế
thông qua API để ấ ữ ệ ử ụ ế ằ
l y d li u. Rasa Action Server s d ng Rasa SDK vi t b ng
Python để ự
xây d ng.
- Tracker stores: thành ph l ch s tin nh n, slot trong database
ần lưu trữ ị ử ắ
hoặc bộ nhớ t m, cung c
ạ ấp thông tin để Rasa action server xử lý như trích xuất liên
k t các tin nh l i dùng m t cách chính xác nh t, ho c phân
ế ắn trước để trả ời ngườ ộ ấ ặ
tích cu i tho
ộc hộ ại.
Hiện nay có r t nhi
ấ ều phương pháp làm Chatbot do bên th ba cung c
ứ ấp như
Chatfuel, tài lu s d
Sparrow, ManyChat…nhưng trong đề ận văn này, tôi sẽ ử ụng
Rasa framework để ựng chương trình và dưới đây là nhữ ử ụ
xây d ng lý do s d ng
Rasa xây d ng Chatbot:
để ự
- D dàng tích h p, ch nh s a
ễ ợ ỉ ử : ta có th t c u hình b t kì pipeline nào trong
ể ự ấ ấ
phần NLU pipeline để phù h p v i ngôn ng t ng qu c gia ho c m
ợ ớ ữ ừ ố ặ ục đích cụ ể
th ,
Rasa cung cấp các tính năng có sẵn thêm vào đó người dùng có th t t
ể ự ạo tính năng
riêng, chính vì Rasa là mã ngu n m cho nên s d dàng ch nh s a framework, có
ồ ở ẽ ễ ỉ ử
thể ợp các tính năng bên ngoài và hàm xử lý nào đó.
tùy ý tích h
- Tích h p v i các h ng có s n
ợ ớ ệ thố ẵ : Rasa cung c p Rasa Action giúp
ấ
Chatbot có th k t n n các h ng khác thông qua API ho c truy c p vào
ể ế ối đế ệ thố ặ ậ
database, gi s Chatbot bán hàng có th l y giá m i nh t trên h ng qu n lý
ả ử ể ấ ớ ấ ệ thố ả
bán hàng c a doanh nghi
ủ ệp.
- Khả năng học qua tương tác: thay vì vi c li t kê t t c nh và câu tr
ệ ệ ấ ả ý đị ả
lời tương ứng, trong quá trình hu n luy
ấ ện người dùng có th giao ti p tr c ti p v
ể ế ự ế ới
Chatbot p câu tr l i phù h p v nh c
đánh giá và cung cấ ả ờ ợ ới ý đị ủa người dùng.
- K t n i d dàng v i các ng d ng chat khác
ế ố ễ ớ ứ ụ : Rasa cho phép ng d ng
ứ ụ
liên k t v i các n n t chat n i ti
ế ớ ề ảng ổ ếng như Facebook Messenger, Slack, Telegram,
Twilio …
35
- Hiệ ấ
u su t cao: v i vi tích h p nhi u ki n trúc hi i nh
ớ ệc ợ ề ế ện đạ ất như DIET,
TED s d ng mô hình Transformer giúp cho Chatbot c a Rasa tr nên thông minh
ử ụ ủ ở
hơn và tối ưu hóa được th i gian n luy n m
ờ huấ ệ ột cách đáng kể khi so sánh v i các
ớ
n n t ng khác.
ề ả
- Miễ ộ
n phí và c ng ng l n
đồ ớ : Rasa là mã ngu n m cho nên s không m
ồ ở ẽ ất
phí để xây d ng ng d
ự ứ ụng, cũng chính vì lý do đó nhiều người d dàng ti
ễ ế ậ
p c n và
xây d c các c ng chia s n th c, thu t toán t m chí d
ựng đượ ộng đồ ẻ kiế ứ ậ ối ưu và thậ ữ
liệ ẫ ẵ ể
u m u có s n, giúp Rasa ngày phát tri n và ổn định.
3.2 C u trúc c Chatbot
ấ ủa Nhất Nam
3.2.1 Thi t k t ng quát
ế ế ổ
Ứng d ng Chatbot
ụ Nhất Nam hướng đến người dùng chưa dùng sản ph m k
ẩ ế
toán Nh t Nam c n tham kh o thông tin s n ph n doanh
ấ ầ ả ả ẩm, thông tin liên quan đế
nghi d ng c n h cách dùng s n ph
ệp, và hướng đến người dùng đã sử ụ ầ ỏi đáp về ả ẩm
và truy xu t thông tin b o trì, b o hành c a h . Bài toán mà tôi xây d ng s t
ấ ả ả ủ ọ ự ẽ ập
trung vào các ch n, h ng d n s d ng và truy xu
ức năng tư vấ ỗ trợ bán hàng, hướ ẫ ử ụ ất
thông tin liên quan đến doanh nghi p. Các ch
ệ ức năng chính bao gồm:
- Thông tin các lo n ph m k toán
ại sả ẩ ế
- H i giá s n ph m
ỏ ả ẩ
- Tư vấn bán hàng
- Thông tin doanh nghi p
ệ
- T o liên h n t
ạ ệ đế ổng đài viên
- Thông tin b o trì, b o hành
ả ả
- H n th c
ỏi đáp kiế ứ
C u trúc h Chatbot cho ng d ng s c thi
ấ ệ thống ứ ụ ẽ đượ ết kế như sau:
36
Hình 3.2 u trúc h ng Chatbot Nh t Nam
. Cấ ệ thố ấ
website Nh t Nam s
Ở ấ ẽ thi t k giao di n dành cho Chatbot
ế ế ệ , người dùng có
thể ậ ắ ẵ ẽ ợ ửi đế ầ
nh p tin nh n, tin nh n s đư c g n Rasa thông qua Api. Các thành ph n
bên trong Chatbot Rasa sẽ đượ ả ệm như sau:
c đ m nhi
- Agent: là thành ph n trung gian giao ti p, truy n t n các
ầ ế ề ải thông điệp đế
thành ph n khác, các tin nh u vào s Agent s chuy
ầ ắn đầ ẽ đi qua Agent sau đó từ ẽ ển
đế ần NLU, Dialog management, Rasa action server để ử
n các thành ph x lý tin
nh n.
ắ
- NLU: có nhi m v vector hóa d máy có th u ngôn ng con
ệ ụ ữ liệu để ể hiể ữ
ngườ ừ đó có thể ại ý đị ấ ụ câu đầ
i t phân lo nh và trích xu t ra các thông tin. Ví d u
vào ngườ ỏ ệ
i dùng h i “Giá phầ ề ế ệp bao nhiêu?”
n m m k toán doanh nghi thì h
th li
ố ẽ ồi đố ế ớ ậ ự
ng s vector hóa nó r i chi u v i t p d ệu training đã được gán nhãn để
đưa ra ý đị (ý đị ỏ ề ả ẩ ế ếu câu đầ
nh “bao_gia” nh h i v giá s n ph m). Ti p theo n u vào
chứ ệ
a entity h thố ẽ
ng s trích xu t ra, ví d câu trên có entity là s n ph
ấ ụ ả ẩm “kế toán
doanh nghiệp”.
- Dialog management (DM): d a vào các lu
ự ật quy định trong h ng ho
ệ thố ặc
so sánh ng c nh h i tho i các ng c
ữ ả ộ ại vớ ữ ảnh dùng để ấ ệ ớc đó, ẽ
hu n luy n trư DM s
quyết định hành độ ế
ng ti p theo là gì. Ví d v i intent d a vào các cu
ụ ớ “bao_gia” ự ộc
37
h i tho c khai báo trong story h ng s d
ộ ại đượ ệ thố ẽ ự đoán được hành độ ế
ng ti p theo
là “utter_bao_gia” l i giá s n ph m cho khách hàng).
(trả ờ ả ẩ
- Rasa action server: là thành ph n quan tr ng trong x x lý
ầ ọ ử lý logic, để ử
các nghi p v p mà DM không th x
ệ ụ phức tạ ể ử lý như lấy giá s n ph m t h
ả ẩ ừ ệ thống
khác, x lý tính toán ph c t p khi hoàn thành form nh p li u. Trong
ử ứ ạ ậ ệ ứng d ng này,
ụ
Rasa action server s có nhi m v trích xu t d u t h ng qu n lý bán hàng
ẽ ệ ụ ấ ữ liệ ừ ệ thố ả
và điều hướ ệ đế ỗ ợ viên ngay khi có người dùng đăng kí
ng thông tin liên h n h tr
thông tin.
3.2.2 Sơ đồ ạt độ ủ ấ
quy trình ho ng c a Chatbot Nh t Nam
Hình 3.3 quy trình ho
. Sơ đồ ạt độ ủ ấ
ng c a Chatbot Nh t Nam
Mô t chi ti
ả ết các thành phần:
a. Input: là câu đầu vào, đây là câu hỏi c i dùng trên h
ủa ngườ ệ thống. Trong
hình minh h i dùng h i câu
ọa ngườ ỏ “Giá kế ệ ”
toán doanh nghi p bao nhiêu? .
38
b. Tiề ử
n x lý: thành ph n này Rasa s x lý câu u vào c i dùng
Ở ầ ẽ ử đầ ủa ngườ
qua thành ph n
ầ Tokenizer để tách câu đầu vào thành các token như sau “Giá”,
“kế_toán”, “doanh_nghiệp”, “bao_nhiêu”. Bướ ế ể
c ti p theo chuy n các token
thành d ng vector qua thành ph Chatbot có th
ạ ần đặc trưng hóa (Featurizer) để ể
phân lo nh và trích xu c th .
ại ý đị ất thự ể
c. Phân loại ý định: phân tích và dự đoán ý định d a trên t
ự ập ý định đã được
định nghĩa trướ ụ ỏ
c. Ví d câu h i “Giá kế ệ ”
toán doanh nghi p bao nhiêu? Chatbot
d nh v t
ự đoán ý đị “bao_gia” ớ ộ
i đ ự tin (confidence) là 98%.
d. Trích xu t th c th :
ấ ự ể Chatbot sẽ nhận d ng các th c th trong câu h i nh
ạ ự ể ỏ ờ
vào t p các th c th c. Ví d trong câu h i trên, Chatbot
ậ ự ể đã được định nghĩa trướ ụ ỏ
s trích xu
ẽ ất được “kế toán doanh nghiệ “san_pham”
p” c
là một thực thể ủa .
e. Chính sách (Policy): Chatbot s d
ẽ ựa vào ý định và th c th
ự ể để quyết định
hành độ ế
ng ti p theo các chính sách, có 3 chính sách là chính sách d a vào quy t
ự ắc
(Rule-based policy), chính sách ghi nh (Memorization policy) và chính sách TED
ớ
(TED policy), trong đó Rule-based policy sẽ được ưu tiên nhấ ếp đó
t ti là Memory
policy và TED policy
- Rule-based policy: là chính sách quy ng ti p theo d a vào
ết định hành độ ế ự
các quy tắc được khai báo s n, gi s
ẵ ả ử người dùng g i tin nh
ử ắn ý định chào h i, bot
ỏ
s luôn chào l c nh nào.
ẽ ại bất kể ở ngữ ả
- Memorization policy: n u h th ng không phát hi n h i tho i trùng kh
ế ệ ố ệ ộ ạ ớp
v i b t kì quy t
ớ ấ ắc được định nghĩa sẵn nào Chatbot s d a vào các k
ẽ ự ịch b n có s
ả ẵn
đã đượ khai báo để ự đoán hành độ ế
c d ng ti p theo.
- TED policy: n ng ti p theo không tìm th y trong Rule policy
ếu hành độ ế ấ
hoặ ệ ố ẽ ử ụ ỹ ậ
c Memorization policy, h th ng s s d ng k thu t có tên Transformer
Embedding Dialogue (TED) (24) d t d a theo ng
để ự đoán hành động đúng nhấ ự ữ
c ch b
ảnh trước đó và các kị ản được khai báo
f. Hành động (Action): Là quá trình Chatbot t ng h p k t qu c a các thành
ổ ợ ế ả ủ
phầ ự để ả ề ế ả cho người dùng. Đố ớ
n trên d a theo các chính sách tr v k t qu i v i câu
h Chatbot s l i phù h
ỏi “Giá kế ệp bao nhiêu”
toán doanh nghi ẽ đưa ra câu trả ờ ợp
nhất là “utter_bao_gia_phan_mem_ke_toan_doanh_nghiep”, k t h p v i vi
ế ợ ớ ệc
truy xu u t h ng doanh nghi có th l
ất dữ liệ ừ ệ thố ệp để ể ấy đượ ả ẩ
c giá s n ph m chính
39
xác nh t, Chatbot s v i dùng câu tr l ng
ấ ẽ trả ề cho ngườ ả ời tương ứ “Phầ ề ế
n m m k
toán doanh nghiệp giá 6.000.000 đồng”.
3.3 Xây d ng d Chatbot
ự ữ liệu
Do ng d ng Chatbot t Nam ch c v cho m t doanh nghi p c
ứ ụ Nhấ ỉ phụ ụ ộ ệ ụ thể
nên s s d ng mi n d
ẽ ử ụ ề ữ liệu đóng được thu th p t
ậ ừ những cu c h i tho i c a khách
ộ ộ ạ ủ
hàng trước đó và câu trả l i s
ờ ẽ được chuyên viên tư vấn t o ra. Trong quá trình xây
ạ
d ng Chatbot k ch b s c vi t b ng tay ho c thông qua h
ự ị ản ẽ đượ ế ằ ặ ọc tương tác
(Interactive Learning) s d ng công c Rasa X h
ử ụ ụ ỗ trợ giao di n tr c quan giúp các
ệ ự
chuyên viên t c k ch b
ạo đượ ị ản m t cách nhanh nh
ộ ất.
Hình 3.4. Giao di n Rasa X s d ng t
ệ ử ụ ạ ị ả
o k ch b n
Quy trình xây d ng h Chatbot s bao g
ự ệ thống ẽ ồm các bước chính sau đây:
3.3.1 Xây d nh (intent)
ựng ý đị
B các câu h i m u c
ộ ỏ ẫ ủa người dùng sẽ đượ ậ
c t p h p l i t các cu c h i tho
ợ ạ ừ ộ ộ ại
c i v i nhân viên h , giúp b d chính xác nh t v
ủa người dùng trao đổ ớ ỗ trợ ộ ữ liệu ấ ới
th tr
ự ế ờ ỏi. Kèm theo đó hỗ
c t ngư i dùng h ợ ẽ ấ ữ ẫ ỏ
viên s cung c p nh ng m u câu h i
m m b o t
ớ ể
i đ đả ả ập ý định phong phú và đầy đủ ấ
nh t.
40
Chatbot Nhất Nam bao g m t ng c ng
ồ ổ ộ 36 intent v i 1024 câu m
ớ ẫu, được khai
báo trong file nlu.yml, dưới đây là ví dụ mẫu c a 2 intent
ủ bao_tri_phan_mem (hỏi
v b o trì ph n m m) và
ề ả ầ ề hoa_don_dien_tu n t )
(hỏi về hóa đơn điệ ử
Hình 3.5. Khai báo intent trong file nlu.yml
Có th y là trong ti ng Vi t khách hàng s d ng nhi u t t t
ể thấ ế ệ ử ụ ề ừ viế ắt như
“không” “k” “bao nhiêu” “bn”
viế ắ
t t t thành , t t t thành
viế ắ … do vậ ệ ậ
y vi c t n
d ng nh ng cu c h i tho i trong th c t vào quá trình training s giúp Chatbot
ụ ữ ộ ộ ạ ự ế ẽ
hiểu ý định ngườ ố
i dùng t t hơn.
3.3.2 Xây d ng th c th (entity)
ự ự ể
Entity là các th c th
ự ể thông tin đặc trưng quan trọng được trích xu t theo các
ấ
ý đị ủa người dùng, các thông tin đượ ọ ắ ủa ngườ
nh c c trích ch n trong tin nh n c i
dùng đượ ệ ống lưu lạ ừ đó giúp hệ ố ết đị h độ ế
c h th i t th ng quy nh hàn ng ti p theo
phụ ộ
thu c vào entity trích chọ ữ ảnh đang diễ
n và ng c n ra.
Trong Chatbot t Nam s bao g c khai báo trong
Nhấ ẽ ồm các entity đượ
domain.yml như trong hình dưới đây:
41
Hình 3.6. Khai báo entity trong file domain.yml
Entity s c trích ch n tr c ti p trong các ví d m u c nh
ẽ đượ ọ ự ế ụ ẫ ủa intent theo đị
d ng, ví d
ạ ụ trong câu “Phần m m k toán doanh nghi p giá th nào nh
ề ế ệ ế ỉ?” có thực
thể ộ ả ẩm, khi đó câu trên đổ
là m
“kế ệ
toán doanh nghi p” t s n ph i thành “Phần
m giá th nào nh
ềm [kế ệ
toán doanh nghi p](san_pham) ế ỉ”. Dưới đây là ví dụ
entity trong chương trình:
Hình 3.7. Khai báo intent có ch a entity trong file nlu.yml
ứ
3.3.3 Xây d ng câu tr l i cho Chatbot
ự ả ờ
Khi người dùng đưa ra câu hỏ ẽ ử ạ ỏ ả
i, Chatbot s x lý phân lo i câu h i và ph n
h i câu tr l i phù h p v i câu h i và yêu c Rasa có th xây d ng ph n h
ồ ả ờ ợ ớ ỏ ầu đó. ể ự ả ồi
cho Chatbot ng (action). Action này có th cung c p thông
thông qua các hành độ ể ấ
tin mong muốn cho người dùng dựa vào các ý định, slot và d u l
ữ liệ ấ ừ cơ sở
y t dữ
42
liệu thông qua k t n i API. Có 2 lo
ế ố ại hành động để ử
x lý câu tr l i trong Chatbot
ả ờ
Nhấ ại hành độ ặc định (default actions) và hành độ ế
t Nam, lo ng m ng tùy bi n
(custom actions).
3.3.3.1 ng m
Hành độ ặ ị
c đ nh
Là ng d l i d a vào nh và th c th
các hành độ ự đoán và đưa ra câu trả ờ ự ý đị ự ể
đượ ọ ủa người dùng, đượ ử ở ầ đã
c trích ch n c c x lý thành ph n Dialog management
đượ ấ . Hành độ ếp theo đượ ết đị ở các chính sách đó
c Rasa cung c p ng ti c quy nh b i
là chính sách d a vào quy t c (Rule policy), chính sách ghi nh (Memorization
ự ắ ớ
policy) và chính sách TED (TED policy).
- Khai báo chính sách d a vào các quy t c (Rule-based policy)
ự ắ : Rule-
based polici c khai báo trong file rules.yml. Ví d m i dùng nh
es đượ ụ ỗi khi ngườ ập
câu có ý đị Chatbot luôn đưa ra câu trả ờ
nh “chao_hoi” l i “Kính chào quý khách!
R c h
ất vui lòng đượ ỗ trợ quý khách”.
Hình 3.8. Khai báo Rule policy trong file rules.yml
- Khai báo k ch b n cu c h i tho
ị ả ộ ộ ại: B ng cách thu th p các cu c h i tho
ằ ậ ộ ộ ại
thực t c a h
ế ủ ỗ trợ viên và người dùng, ta s d c nh ng k ch b n thông d
ẽ ựng đượ ữ ị ả ụng
nhất. Ví d c khi h i giá s n ph i dùng s chào h i h
ụ trướ ỏ ả ẩm, ngườ ẽ ỏ ỗ ợ
tr viên, h i v
ỏ ề
thông tin các s n ph m doanh nghi p cung c m n câu h i giá. Các
ả ẩ ệ ấp, sau đó ới đế ỏ
k ch b n s c khai báo trong file . K ch b n có th c vi t b ng
ị ả ẽ đượ stories.yml ị ả ể đượ ế ằ
tay ho c thông qua h
ặ ọc tương tác (interactive learning) khi đó ta có thể đánh giá
và d Chatbot cách tr l nh c i dùng thông qua giao n l
ạy ả ời các ý đị ủa ngườ diệ ệnh
CLI hoặc chương trình Rasa X. Hệ thống s so sánh h i tho
ẽ ộ ại đang diễn ra v i k
ớ ịch
43
b n có s n, n u trùng kh p s n h i theo s n ti p theo trong k
ả ẵ ế ớ ẽ đưa ra phả ồ ự kiệ ế ịch
b n.
ả
Hình 3.9. Khai báo k ch b n trong file stories.yml
ị ả
3.3.3.2 ng tùy bi n
Hành độ ế
Khi yêu c i dùng c n th c hi n truy xu n d u bên ngoài ho
ầu ngườ ầ ự ệ ất đế ữ liệ ặc
x lý tính toán ph c t p c n s d ng thu
ử ứ ạ ầ ử ụ ật toán mà các phương pháp Default action
không thể thực hiện được thì có th s d
ể ử ụng Custom action để tùy bi n hà
ế nh động.
M ng tùy bi c g i nó s n m t hàm trong file actions.py.
ỗi khi hành độ ến đượ ọ ẽ trỏ đế ộ
Custom action vi t b ng ngôn ng python do v y có th d dàng x lý logic ph
ế ằ ữ ậ ể ễ ử ức
t t thông tin t h ng ngoài, ví d truy xu t giá s
ạp như tính toán, truy xuấ ừ ệ thố ụ ấ ản
phẩm, i h n b o trì b o hành c n doanh
thờ ạ ả ả ủa khách hàng, thông tin liên quan đế
nghiệp…
Giả ử
s sau khi người dùng nh p tên và s
ậ ố điệ ạ ở
n tho i form liên h , h
ệ ệ thống
s nhân viên h liên l l
ẽ lưu lại thông tin vào Google Drive để ỗ trợ ạc và sau đó trả ại
người dùng ph n h
ả ồi. Để ả
gi i quy t bài toán này không th s d ng Default action
ế ể ử ụ
do đó ta sẽ ạ ộ ới tên hàm ActionSubmitSalesForm như hình
t o m t Custom action v
ở ớ
dư i
44
Hình 3. . Hàm x lý sau khi hoàn thành nh p Form liên h
10 ử ậ ệ
3.3.4 C u hình các thành ph n
ấ ầ
Quá trình x lý ngôn ng t nhiên ng d c x lý
ử ữ ự là hành độ ữ liệu đầu vào đượ ử
qua m t lo t các thành ph n (component) theo th t g i là pipeline, ta có th thêm
ộ ạ ầ ứ ự ọ ể
hoặ ỏ ấ ần nào trong pipeline đó. Ví dụ ệ ố ầ
c b b t kì thành ph h th ng không c n trích
chọ ự ể ể ạ ỏ ầ ặ ệ ố
n th c th ta có th lo i b thành ph n Entity extraction, ho c h th ng không
dùng thành ph n luy n s n (pre-
ần mô hình được huấ ệ ẵ trained model) như BERT,
spaCy ta có th không c n khai báo trong c u hình.
ể ầ ấ
Tokenizer là quá trình chia nh u vào thành các t c c m t . Rasa
ỏ câu đầ ừ hoặ ụ ừ
có hỗ trợ WhitespaceTokenizer t o các t cách nhau b ng d u cách ví d
ạ ừ ằ ấ ụ câu “Tôi
là sinh viên trường đạ ọ
i h c Bách Khoa” đi qua thành phần WhitespaceTokenizer
Xây dựng ứng dụng Chatbot tư vấn khách hàng sử dụng các kỹ thuật học sâu.pdf
Xây dựng ứng dụng Chatbot tư vấn khách hàng sử dụng các kỹ thuật học sâu.pdf
Xây dựng ứng dụng Chatbot tư vấn khách hàng sử dụng các kỹ thuật học sâu.pdf
Xây dựng ứng dụng Chatbot tư vấn khách hàng sử dụng các kỹ thuật học sâu.pdf
Xây dựng ứng dụng Chatbot tư vấn khách hàng sử dụng các kỹ thuật học sâu.pdf
Xây dựng ứng dụng Chatbot tư vấn khách hàng sử dụng các kỹ thuật học sâu.pdf
Xây dựng ứng dụng Chatbot tư vấn khách hàng sử dụng các kỹ thuật học sâu.pdf
Xây dựng ứng dụng Chatbot tư vấn khách hàng sử dụng các kỹ thuật học sâu.pdf
Xây dựng ứng dụng Chatbot tư vấn khách hàng sử dụng các kỹ thuật học sâu.pdf
Xây dựng ứng dụng Chatbot tư vấn khách hàng sử dụng các kỹ thuật học sâu.pdf
Xây dựng ứng dụng Chatbot tư vấn khách hàng sử dụng các kỹ thuật học sâu.pdf
Xây dựng ứng dụng Chatbot tư vấn khách hàng sử dụng các kỹ thuật học sâu.pdf
Xây dựng ứng dụng Chatbot tư vấn khách hàng sử dụng các kỹ thuật học sâu.pdf
Xây dựng ứng dụng Chatbot tư vấn khách hàng sử dụng các kỹ thuật học sâu.pdf
Xây dựng ứng dụng Chatbot tư vấn khách hàng sử dụng các kỹ thuật học sâu.pdf
Xây dựng ứng dụng Chatbot tư vấn khách hàng sử dụng các kỹ thuật học sâu.pdf
Xây dựng ứng dụng Chatbot tư vấn khách hàng sử dụng các kỹ thuật học sâu.pdf

More Related Content

What's hot

Báo cáo thực tập tốt nghiệp xây dựng website bằng laravel
Báo cáo thực tập tốt nghiệp xây dựng website bằng laravelBáo cáo thực tập tốt nghiệp xây dựng website bằng laravel
Báo cáo thực tập tốt nghiệp xây dựng website bằng laraveljackjohn45
 
ĐIều khiển trượt thích nghi hệ thống động phi tuyến
ĐIều khiển trượt thích nghi hệ thống động phi tuyếnĐIều khiển trượt thích nghi hệ thống động phi tuyến
ĐIều khiển trượt thích nghi hệ thống động phi tuyếnMan_Ebook
 
Ứng dụng mạng nơ-ron trong nhận dạng và điều khiển.pdf
Ứng dụng mạng nơ-ron trong nhận dạng và điều khiển.pdfỨng dụng mạng nơ-ron trong nhận dạng và điều khiển.pdf
Ứng dụng mạng nơ-ron trong nhận dạng và điều khiển.pdfMan_Ebook
 
Đề tài: Xây dựng phần mềm thi, đánh giá câu hỏi, đề thi trắc nghiệm khách quan
Đề tài: Xây dựng phần mềm thi, đánh giá câu hỏi, đề thi trắc nghiệm khách quanĐề tài: Xây dựng phần mềm thi, đánh giá câu hỏi, đề thi trắc nghiệm khách quan
Đề tài: Xây dựng phần mềm thi, đánh giá câu hỏi, đề thi trắc nghiệm khách quanViết thuê trọn gói ZALO 0934573149
 
Slide đồ án tốt nghiệp
Slide đồ án tốt nghiệpSlide đồ án tốt nghiệp
Slide đồ án tốt nghiệpToan Pham
 
Nghiên cứu xây dựng hệ điều khiển mờ cho động cơ điện một chiều _08315512092019
Nghiên cứu xây dựng hệ điều khiển mờ cho động cơ điện một chiều _08315512092019Nghiên cứu xây dựng hệ điều khiển mờ cho động cơ điện một chiều _08315512092019
Nghiên cứu xây dựng hệ điều khiển mờ cho động cơ điện một chiều _08315512092019PinkHandmade
 
Xây dựng hệ thống thông tin quản lý khách hàng bằng PHP và MySQL
Xây dựng hệ thống thông tin quản lý khách hàng bằng PHP và MySQLXây dựng hệ thống thông tin quản lý khách hàng bằng PHP và MySQL
Xây dựng hệ thống thông tin quản lý khách hàng bằng PHP và MySQLAskSock Ngô Quang Đạo
 
ĐỀ TÀI : ĐIỂM DANH BẰNG NHẬN DIỆN KHUÔN MẶT. Giảng viên : PGS.TS. HUỲNH CÔNG ...
ĐỀ TÀI : ĐIỂM DANH BẰNG NHẬN DIỆN KHUÔN MẶT. Giảng viên : PGS.TS. HUỲNH CÔNG ...ĐỀ TÀI : ĐIỂM DANH BẰNG NHẬN DIỆN KHUÔN MẶT. Giảng viên : PGS.TS. HUỲNH CÔNG ...
ĐỀ TÀI : ĐIỂM DANH BẰNG NHẬN DIỆN KHUÔN MẶT. Giảng viên : PGS.TS. HUỲNH CÔNG ...nataliej4
 
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 9166421jackjohn45
 
đồ áN tốt nghiệp điều khiển và tự động hóa robot tránh vật cản
đồ áN tốt nghiệp điều khiển và tự động hóa robot tránh vật cảnđồ áN tốt nghiệp điều khiển và tự động hóa robot tránh vật cản
đồ áN tốt nghiệp điều khiển và tự động hóa robot tránh vật cảnhttps://www.facebook.com/garmentspace
 

What's hot (20)

Luận văn: Học máy cho bài toán trích xuất thông tin quan điểm, 9đ
Luận văn: Học máy cho bài toán trích xuất thông tin quan điểm, 9đLuận văn: Học máy cho bài toán trích xuất thông tin quan điểm, 9đ
Luận văn: Học máy cho bài toán trích xuất thông tin quan điểm, 9đ
 
Báo cáo thực tập tốt nghiệp xây dựng website bằng laravel
Báo cáo thực tập tốt nghiệp xây dựng website bằng laravelBáo cáo thực tập tốt nghiệp xây dựng website bằng laravel
Báo cáo thực tập tốt nghiệp xây dựng website bằng laravel
 
ĐIều khiển trượt thích nghi hệ thống động phi tuyến
ĐIều khiển trượt thích nghi hệ thống động phi tuyếnĐIều khiển trượt thích nghi hệ thống động phi tuyến
ĐIều khiển trượt thích nghi hệ thống động phi tuyến
 
Ứng dụng mạng nơ-ron trong nhận dạng và điều khiển.pdf
Ứng dụng mạng nơ-ron trong nhận dạng và điều khiển.pdfỨng dụng mạng nơ-ron trong nhận dạng và điều khiển.pdf
Ứng dụng mạng nơ-ron trong nhận dạng và điều khiển.pdf
 
Đề tài: Xây dựng phần mềm thi, đánh giá câu hỏi, đề thi trắc nghiệm khách quan
Đề tài: Xây dựng phần mềm thi, đánh giá câu hỏi, đề thi trắc nghiệm khách quanĐề tài: Xây dựng phần mềm thi, đánh giá câu hỏi, đề thi trắc nghiệm khách quan
Đề tài: Xây dựng phần mềm thi, đánh giá câu hỏi, đề thi trắc nghiệm khách quan
 
Đề tài: Xây dựng phần mềm quản lý nhà hàng ăn uống
Đề tài: Xây dựng phần mềm quản lý nhà hàng ăn uốngĐề tài: Xây dựng phần mềm quản lý nhà hàng ăn uống
Đề tài: Xây dựng phần mềm quản lý nhà hàng ăn uống
 
Đề tài: Hệ thống giúp tư vấn nghề nghiệp cho học sinh THPT, HAY
Đề tài: Hệ thống giúp tư vấn nghề nghiệp cho học sinh THPT, HAYĐề tài: Hệ thống giúp tư vấn nghề nghiệp cho học sinh THPT, HAY
Đề tài: Hệ thống giúp tư vấn nghề nghiệp cho học sinh THPT, HAY
 
Đề tài: Nghiên cứu thuật toán K-nearest neighbor, HAY, 9đ
Đề tài: Nghiên cứu thuật toán K-nearest neighbor, HAY, 9đĐề tài: Nghiên cứu thuật toán K-nearest neighbor, HAY, 9đ
Đề tài: Nghiên cứu thuật toán K-nearest neighbor, HAY, 9đ
 
Đề tài: Xây dựng Website quản lý điểm trường Phổ thông, 9đ
Đề tài: Xây dựng Website quản lý điểm trường Phổ thông, 9đĐề tài: Xây dựng Website quản lý điểm trường Phổ thông, 9đ
Đề tài: Xây dựng Website quản lý điểm trường Phổ thông, 9đ
 
Luận văn: Xây dựng hệ điều khiển mờ cho động cơ điện một chiều
Luận văn: Xây dựng hệ điều khiển mờ cho động cơ điện một chiềuLuận văn: Xây dựng hệ điều khiển mờ cho động cơ điện một chiều
Luận văn: Xây dựng hệ điều khiển mờ cho động cơ điện một chiều
 
Slide đồ án tốt nghiệp
Slide đồ án tốt nghiệpSlide đồ án tốt nghiệp
Slide đồ án tốt nghiệp
 
Luận văn: Bài toán nhận dạng biển số xe, HAY
Luận văn: Bài toán nhận dạng biển số xe, HAYLuận văn: Bài toán nhận dạng biển số xe, HAY
Luận văn: Bài toán nhận dạng biển số xe, HAY
 
Luận văn: Chất lượng dịch vụ cho truyền thông đa phương tiện, 9đ
Luận văn: Chất lượng dịch vụ cho truyền thông đa phương tiện, 9đLuận văn: Chất lượng dịch vụ cho truyền thông đa phương tiện, 9đ
Luận văn: Chất lượng dịch vụ cho truyền thông đa phương tiện, 9đ
 
Nghiên cứu xây dựng hệ điều khiển mờ cho động cơ điện một chiều _08315512092019
Nghiên cứu xây dựng hệ điều khiển mờ cho động cơ điện một chiều _08315512092019Nghiên cứu xây dựng hệ điều khiển mờ cho động cơ điện một chiều _08315512092019
Nghiên cứu xây dựng hệ điều khiển mờ cho động cơ điện một chiều _08315512092019
 
Đề tài: Phần mềm quản lý thư viện và website tra cứu sách, HOT
Đề tài: Phần mềm quản lý thư viện và website tra cứu sách, HOTĐề tài: Phần mềm quản lý thư viện và website tra cứu sách, HOT
Đề tài: Phần mềm quản lý thư viện và website tra cứu sách, HOT
 
Đề tài: Thuật toán khai phá dữ liệu trong quản lý địa chỉ Internet
Đề tài: Thuật toán khai phá dữ liệu trong quản lý địa chỉ InternetĐề tài: Thuật toán khai phá dữ liệu trong quản lý địa chỉ Internet
Đề tài: Thuật toán khai phá dữ liệu trong quản lý địa chỉ Internet
 
Xây dựng hệ thống thông tin quản lý khách hàng bằng PHP và MySQL
Xây dựng hệ thống thông tin quản lý khách hàng bằng PHP và MySQLXây dựng hệ thống thông tin quản lý khách hàng bằng PHP và MySQL
Xây dựng hệ thống thông tin quản lý khách hàng bằng PHP và MySQL
 
ĐỀ TÀI : ĐIỂM DANH BẰNG NHẬN DIỆN KHUÔN MẶT. Giảng viên : PGS.TS. HUỲNH CÔNG ...
ĐỀ TÀI : ĐIỂM DANH BẰNG NHẬN DIỆN KHUÔN MẶT. Giảng viên : PGS.TS. HUỲNH CÔNG ...ĐỀ TÀI : ĐIỂM DANH BẰNG NHẬN DIỆN KHUÔN MẶT. Giảng viên : PGS.TS. HUỲNH CÔNG ...
ĐỀ TÀI : ĐIỂM DANH BẰNG NHẬN DIỆN KHUÔN MẶT. Giảng viên : PGS.TS. HUỲNH CÔNG ...
 
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
 
đồ áN tốt nghiệp điều khiển và tự động hóa robot tránh vật cản
đồ áN tốt nghiệp điều khiển và tự động hóa robot tránh vật cảnđồ áN tốt nghiệp điều khiển và tự động hóa robot tránh vật cản
đồ áN tốt nghiệp điều khiển và tự động hóa robot tránh vật cản
 

Similar to Xây dựng ứng dụng Chatbot tư vấn khách hàng sử dụng các kỹ thuật học sâu.pdf

Nghiên cứu điều khiển hệ thống vận chuyển vật liệu dạng băng.pdf
Nghiên cứu điều khiển hệ thống vận chuyển vật liệu dạng băng.pdfNghiên cứu điều khiển hệ thống vận chuyển vật liệu dạng băng.pdf
Nghiên cứu điều khiển hệ thống vận chuyển vật liệu dạng băng.pdfMan_Ebook
 
Luận án: Các yếu tố ảnh hưởng đến mức độ chấp nhận mô hình thẻ điểm cân bằng ...
Luận án: Các yếu tố ảnh hưởng đến mức độ chấp nhận mô hình thẻ điểm cân bằng ...Luận án: Các yếu tố ảnh hưởng đến mức độ chấp nhận mô hình thẻ điểm cân bằng ...
Luận án: Các yếu tố ảnh hưởng đến mức độ chấp nhận mô hình thẻ điểm cân bằng ...Viết thuê trọn gói ZALO 0934573149
 
Luận án: Nghiên cứu các hình thức tổ chức lãnh thổ sản xuất chè ở vùng Đông ...
Luận án: Nghiên cứu các hình thức tổ chức lãnh thổ sản xuất chè ở vùng Đông  ...Luận án: Nghiên cứu các hình thức tổ chức lãnh thổ sản xuất chè ở vùng Đông  ...
Luận án: Nghiên cứu các hình thức tổ chức lãnh thổ sản xuất chè ở vùng Đông ...Dịch vụ viết thuê Khóa Luận - ZALO 0932091562
 
Phân tích, đánh giá và tính toán hiệu quả kinh tế của hệ thống điện mặt trời ...
Phân tích, đánh giá và tính toán hiệu quả kinh tế của hệ thống điện mặt trời ...Phân tích, đánh giá và tính toán hiệu quả kinh tế của hệ thống điện mặt trời ...
Phân tích, đánh giá và tính toán hiệu quả kinh tế của hệ thống điện mặt trời ...Man_Ebook
 
Nghiên cứu thiết kế nút cảm biến không dây sử dụng công nghệ Zigbee, Đặng Văn...
Nghiên cứu thiết kế nút cảm biến không dây sử dụng công nghệ Zigbee, Đặng Văn...Nghiên cứu thiết kế nút cảm biến không dây sử dụng công nghệ Zigbee, Đặng Văn...
Nghiên cứu thiết kế nút cảm biến không dây sử dụng công nghệ Zigbee, Đặng Văn...Man_Ebook
 
Nghiên cứu thiết kế nút cảm biến không dây sử dụng công nghệ Zigbee, Đặng Văn...
Nghiên cứu thiết kế nút cảm biến không dây sử dụng công nghệ Zigbee, Đặng Văn...Nghiên cứu thiết kế nút cảm biến không dây sử dụng công nghệ Zigbee, Đặng Văn...
Nghiên cứu thiết kế nút cảm biến không dây sử dụng công nghệ Zigbee, Đặng Văn...Man_Ebook
 
Nghiên cứu thiết kế nút cảm biến không dây sử dụng công nghệ Zigbee, Đặng Văn...
Nghiên cứu thiết kế nút cảm biến không dây sử dụng công nghệ Zigbee, Đặng Văn...Nghiên cứu thiết kế nút cảm biến không dây sử dụng công nghệ Zigbee, Đặng Văn...
Nghiên cứu thiết kế nút cảm biến không dây sử dụng công nghệ Zigbee, Đặng Văn...Man_Ebook
 
Nghiên cứu giải pháp tối ưu hóa hiệu quả sử dụng năng lượng trong mạng cảm bi...
Nghiên cứu giải pháp tối ưu hóa hiệu quả sử dụng năng lượng trong mạng cảm bi...Nghiên cứu giải pháp tối ưu hóa hiệu quả sử dụng năng lượng trong mạng cảm bi...
Nghiên cứu giải pháp tối ưu hóa hiệu quả sử dụng năng lượng trong mạng cảm bi...Man_Ebook
 
Nghiên cứu giải pháp tối ưu hóa hiệu quả sử dụng năng lượng trong mạng cảm bi...
Nghiên cứu giải pháp tối ưu hóa hiệu quả sử dụng năng lượng trong mạng cảm bi...Nghiên cứu giải pháp tối ưu hóa hiệu quả sử dụng năng lượng trong mạng cảm bi...
Nghiên cứu giải pháp tối ưu hóa hiệu quả sử dụng năng lượng trong mạng cảm bi...Man_Ebook
 
Nghiên cứu giải pháp tối ưu hóa hiệu quả sử dụng năng lượng trong mạng cảm bi...
Nghiên cứu giải pháp tối ưu hóa hiệu quả sử dụng năng lượng trong mạng cảm bi...Nghiên cứu giải pháp tối ưu hóa hiệu quả sử dụng năng lượng trong mạng cảm bi...
Nghiên cứu giải pháp tối ưu hóa hiệu quả sử dụng năng lượng trong mạng cảm bi...Man_Ebook
 
Điều khiển nghịch lưu ba pha bốn nhánh cho bộ điều áp liên tục.pdf
Điều khiển nghịch lưu ba pha bốn nhánh cho bộ điều áp liên tục.pdfĐiều khiển nghịch lưu ba pha bốn nhánh cho bộ điều áp liên tục.pdf
Điều khiển nghịch lưu ba pha bốn nhánh cho bộ điều áp liên tục.pdfMan_Ebook
 
Điều khiển và quản lý hệ năng lượng lai trên xe điện.pdf
Điều khiển và quản lý hệ năng lượng lai trên xe điện.pdfĐiều khiển và quản lý hệ năng lượng lai trên xe điện.pdf
Điều khiển và quản lý hệ năng lượng lai trên xe điện.pdfMan_Ebook
 
Nghiên cứu ứng dụng trí tuệ nhân tạo vào bài toán nhận dạng lòng bàn tay ngườ...
Nghiên cứu ứng dụng trí tuệ nhân tạo vào bài toán nhận dạng lòng bàn tay ngườ...Nghiên cứu ứng dụng trí tuệ nhân tạo vào bài toán nhận dạng lòng bàn tay ngườ...
Nghiên cứu ứng dụng trí tuệ nhân tạo vào bài toán nhận dạng lòng bàn tay ngườ...Man_Ebook
 
Nghiên cứu ứng dụng trí tuệ nhân tạo vào bài toán nhận dạng lòng bàn tay ngườ...
Nghiên cứu ứng dụng trí tuệ nhân tạo vào bài toán nhận dạng lòng bàn tay ngườ...Nghiên cứu ứng dụng trí tuệ nhân tạo vào bài toán nhận dạng lòng bàn tay ngườ...
Nghiên cứu ứng dụng trí tuệ nhân tạo vào bài toán nhận dạng lòng bàn tay ngườ...Man_Ebook
 
Nghiên cứu cải thiện chất lượng mô men động cơ BLDC rotor ngoài trong truyền ...
Nghiên cứu cải thiện chất lượng mô men động cơ BLDC rotor ngoài trong truyền ...Nghiên cứu cải thiện chất lượng mô men động cơ BLDC rotor ngoài trong truyền ...
Nghiên cứu cải thiện chất lượng mô men động cơ BLDC rotor ngoài trong truyền ...Man_Ebook
 
Nghiên cứu khảo sát các nhân tố chủ yếu tác động đến kết quả đào tạo tiến sĩ ...
Nghiên cứu khảo sát các nhân tố chủ yếu tác động đến kết quả đào tạo tiến sĩ ...Nghiên cứu khảo sát các nhân tố chủ yếu tác động đến kết quả đào tạo tiến sĩ ...
Nghiên cứu khảo sát các nhân tố chủ yếu tác động đến kết quả đào tạo tiến sĩ ...Man_Ebook
 
Tailieu.vncty.com danh gia-chat_luong_dich_vu_tren_mang_wireless_lan.
Tailieu.vncty.com   danh gia-chat_luong_dich_vu_tren_mang_wireless_lan.Tailieu.vncty.com   danh gia-chat_luong_dich_vu_tren_mang_wireless_lan.
Tailieu.vncty.com danh gia-chat_luong_dich_vu_tren_mang_wireless_lan.Trần Đức Anh
 

Similar to Xây dựng ứng dụng Chatbot tư vấn khách hàng sử dụng các kỹ thuật học sâu.pdf (20)

Nghiên cứu điều khiển hệ thống vận chuyển vật liệu dạng băng.pdf
Nghiên cứu điều khiển hệ thống vận chuyển vật liệu dạng băng.pdfNghiên cứu điều khiển hệ thống vận chuyển vật liệu dạng băng.pdf
Nghiên cứu điều khiển hệ thống vận chuyển vật liệu dạng băng.pdf
 
Luận án: Các yếu tố ảnh hưởng đến mức độ chấp nhận mô hình thẻ điểm cân bằng ...
Luận án: Các yếu tố ảnh hưởng đến mức độ chấp nhận mô hình thẻ điểm cân bằng ...Luận án: Các yếu tố ảnh hưởng đến mức độ chấp nhận mô hình thẻ điểm cân bằng ...
Luận án: Các yếu tố ảnh hưởng đến mức độ chấp nhận mô hình thẻ điểm cân bằng ...
 
Luận án: Nghiên cứu các hình thức tổ chức lãnh thổ sản xuất chè ở vùng Đông ...
Luận án: Nghiên cứu các hình thức tổ chức lãnh thổ sản xuất chè ở vùng Đông  ...Luận án: Nghiên cứu các hình thức tổ chức lãnh thổ sản xuất chè ở vùng Đông  ...
Luận án: Nghiên cứu các hình thức tổ chức lãnh thổ sản xuất chè ở vùng Đông ...
 
Phân tích, đánh giá và tính toán hiệu quả kinh tế của hệ thống điện mặt trời ...
Phân tích, đánh giá và tính toán hiệu quả kinh tế của hệ thống điện mặt trời ...Phân tích, đánh giá và tính toán hiệu quả kinh tế của hệ thống điện mặt trời ...
Phân tích, đánh giá và tính toán hiệu quả kinh tế của hệ thống điện mặt trời ...
 
Nghiên cứu thiết kế nút cảm biến không dây sử dụng công nghệ Zigbee, Đặng Văn...
Nghiên cứu thiết kế nút cảm biến không dây sử dụng công nghệ Zigbee, Đặng Văn...Nghiên cứu thiết kế nút cảm biến không dây sử dụng công nghệ Zigbee, Đặng Văn...
Nghiên cứu thiết kế nút cảm biến không dây sử dụng công nghệ Zigbee, Đặng Văn...
 
Nghiên cứu thiết kế nút cảm biến không dây sử dụng công nghệ Zigbee, Đặng Văn...
Nghiên cứu thiết kế nút cảm biến không dây sử dụng công nghệ Zigbee, Đặng Văn...Nghiên cứu thiết kế nút cảm biến không dây sử dụng công nghệ Zigbee, Đặng Văn...
Nghiên cứu thiết kế nút cảm biến không dây sử dụng công nghệ Zigbee, Đặng Văn...
 
Nghiên cứu thiết kế nút cảm biến không dây sử dụng công nghệ Zigbee, Đặng Văn...
Nghiên cứu thiết kế nút cảm biến không dây sử dụng công nghệ Zigbee, Đặng Văn...Nghiên cứu thiết kế nút cảm biến không dây sử dụng công nghệ Zigbee, Đặng Văn...
Nghiên cứu thiết kế nút cảm biến không dây sử dụng công nghệ Zigbee, Đặng Văn...
 
Nghiên cứu giải pháp tối ưu hóa hiệu quả sử dụng năng lượng trong mạng cảm bi...
Nghiên cứu giải pháp tối ưu hóa hiệu quả sử dụng năng lượng trong mạng cảm bi...Nghiên cứu giải pháp tối ưu hóa hiệu quả sử dụng năng lượng trong mạng cảm bi...
Nghiên cứu giải pháp tối ưu hóa hiệu quả sử dụng năng lượng trong mạng cảm bi...
 
Nghiên cứu giải pháp tối ưu hóa hiệu quả sử dụng năng lượng trong mạng cảm bi...
Nghiên cứu giải pháp tối ưu hóa hiệu quả sử dụng năng lượng trong mạng cảm bi...Nghiên cứu giải pháp tối ưu hóa hiệu quả sử dụng năng lượng trong mạng cảm bi...
Nghiên cứu giải pháp tối ưu hóa hiệu quả sử dụng năng lượng trong mạng cảm bi...
 
Nghiên cứu giải pháp tối ưu hóa hiệu quả sử dụng năng lượng trong mạng cảm bi...
Nghiên cứu giải pháp tối ưu hóa hiệu quả sử dụng năng lượng trong mạng cảm bi...Nghiên cứu giải pháp tối ưu hóa hiệu quả sử dụng năng lượng trong mạng cảm bi...
Nghiên cứu giải pháp tối ưu hóa hiệu quả sử dụng năng lượng trong mạng cảm bi...
 
Điều khiển nghịch lưu ba pha bốn nhánh cho bộ điều áp liên tục.pdf
Điều khiển nghịch lưu ba pha bốn nhánh cho bộ điều áp liên tục.pdfĐiều khiển nghịch lưu ba pha bốn nhánh cho bộ điều áp liên tục.pdf
Điều khiển nghịch lưu ba pha bốn nhánh cho bộ điều áp liên tục.pdf
 
Điều khiển và quản lý hệ năng lượng lai trên xe điện.pdf
Điều khiển và quản lý hệ năng lượng lai trên xe điện.pdfĐiều khiển và quản lý hệ năng lượng lai trên xe điện.pdf
Điều khiển và quản lý hệ năng lượng lai trên xe điện.pdf
 
Nghiên cứu ứng dụng trí tuệ nhân tạo vào bài toán nhận dạng lòng bàn tay ngườ...
Nghiên cứu ứng dụng trí tuệ nhân tạo vào bài toán nhận dạng lòng bàn tay ngườ...Nghiên cứu ứng dụng trí tuệ nhân tạo vào bài toán nhận dạng lòng bàn tay ngườ...
Nghiên cứu ứng dụng trí tuệ nhân tạo vào bài toán nhận dạng lòng bàn tay ngườ...
 
Nghiên cứu ứng dụng trí tuệ nhân tạo vào bài toán nhận dạng lòng bàn tay ngườ...
Nghiên cứu ứng dụng trí tuệ nhân tạo vào bài toán nhận dạng lòng bàn tay ngườ...Nghiên cứu ứng dụng trí tuệ nhân tạo vào bài toán nhận dạng lòng bàn tay ngườ...
Nghiên cứu ứng dụng trí tuệ nhân tạo vào bài toán nhận dạng lòng bàn tay ngườ...
 
Quan điểm của chủ nghĩa mác Lênin về vấn đề dân tộc
Quan điểm của chủ nghĩa mác Lênin về vấn đề dân tộcQuan điểm của chủ nghĩa mác Lênin về vấn đề dân tộc
Quan điểm của chủ nghĩa mác Lênin về vấn đề dân tộc
 
Nghiên cứu cải thiện chất lượng mô men động cơ BLDC rotor ngoài trong truyền ...
Nghiên cứu cải thiện chất lượng mô men động cơ BLDC rotor ngoài trong truyền ...Nghiên cứu cải thiện chất lượng mô men động cơ BLDC rotor ngoài trong truyền ...
Nghiên cứu cải thiện chất lượng mô men động cơ BLDC rotor ngoài trong truyền ...
 
La01.028 tiếp cận và phân tích động thái giá cả lạm phát của việt nam trong...
La01.028 tiếp cận và phân tích động thái giá cả   lạm phát của việt nam trong...La01.028 tiếp cận và phân tích động thái giá cả   lạm phát của việt nam trong...
La01.028 tiếp cận và phân tích động thái giá cả lạm phát của việt nam trong...
 
LA01.028_Tiếp cận và phân tích động thái giá cả - lạm phát của Việt Nam trong...
LA01.028_Tiếp cận và phân tích động thái giá cả - lạm phát của Việt Nam trong...LA01.028_Tiếp cận và phân tích động thái giá cả - lạm phát của Việt Nam trong...
LA01.028_Tiếp cận và phân tích động thái giá cả - lạm phát của Việt Nam trong...
 
Nghiên cứu khảo sát các nhân tố chủ yếu tác động đến kết quả đào tạo tiến sĩ ...
Nghiên cứu khảo sát các nhân tố chủ yếu tác động đến kết quả đào tạo tiến sĩ ...Nghiên cứu khảo sát các nhân tố chủ yếu tác động đến kết quả đào tạo tiến sĩ ...
Nghiên cứu khảo sát các nhân tố chủ yếu tác động đến kết quả đào tạo tiến sĩ ...
 
Tailieu.vncty.com danh gia-chat_luong_dich_vu_tren_mang_wireless_lan.
Tailieu.vncty.com   danh gia-chat_luong_dich_vu_tren_mang_wireless_lan.Tailieu.vncty.com   danh gia-chat_luong_dich_vu_tren_mang_wireless_lan.
Tailieu.vncty.com danh gia-chat_luong_dich_vu_tren_mang_wireless_lan.
 

More from Man_Ebook

BÀI GIẢNG MÔN HỌC CƠ SỞ NGÔN NGỮ, Dùng cho hệ Cao đẳng chuyên nghiệp.pdf
BÀI GIẢNG MÔN HỌC CƠ SỞ NGÔN NGỮ, Dùng cho hệ Cao đẳng chuyên nghiệp.pdfBÀI GIẢNG MÔN HỌC CƠ SỞ NGÔN NGỮ, Dùng cho hệ Cao đẳng chuyên nghiệp.pdf
BÀI GIẢNG MÔN HỌC CƠ SỞ NGÔN NGỮ, Dùng cho hệ Cao đẳng chuyên nghiệp.pdfMan_Ebook
 
TL Báo cáo Thực tập tại Nissan Đà Nẵng.doc
TL Báo cáo Thực tập tại Nissan Đà Nẵng.docTL Báo cáo Thực tập tại Nissan Đà Nẵng.doc
TL Báo cáo Thực tập tại Nissan Đà Nẵng.docMan_Ebook
 
Giáo trình thực vật học 2 - Trường ĐH Cần Thơ.pdf
Giáo trình thực vật học 2 - Trường ĐH Cần Thơ.pdfGiáo trình thực vật học 2 - Trường ĐH Cần Thơ.pdf
Giáo trình thực vật học 2 - Trường ĐH Cần Thơ.pdfMan_Ebook
 
Giáo trình mô động vật - Trường ĐH Cần Thơ.pdf
Giáo trình mô động vật - Trường ĐH Cần Thơ.pdfGiáo trình mô động vật - Trường ĐH Cần Thơ.pdf
Giáo trình mô động vật - Trường ĐH Cần Thơ.pdfMan_Ebook
 
Giáo trình ngôn ngữ hệ thống A - Trường ĐH Cần Thơ.pdf
Giáo trình ngôn ngữ hệ thống A - Trường ĐH Cần Thơ.pdfGiáo trình ngôn ngữ hệ thống A - Trường ĐH Cần Thơ.pdf
Giáo trình ngôn ngữ hệ thống A - Trường ĐH Cần Thơ.pdfMan_Ebook
 
Giáo trình ngôn ngữ mô hình hóa UML - Trường ĐH Cần Thơ.pdf
Giáo trình ngôn ngữ mô hình hóa UML - Trường ĐH Cần Thơ.pdfGiáo trình ngôn ngữ mô hình hóa UML - Trường ĐH Cần Thơ.pdf
Giáo trình ngôn ngữ mô hình hóa UML - Trường ĐH Cần Thơ.pdfMan_Ebook
 
Giáo trình nguyên lý máy học - Trường ĐH Cần Thơ.pdf
Giáo trình nguyên lý máy học - Trường ĐH Cần Thơ.pdfGiáo trình nguyên lý máy học - Trường ĐH Cần Thơ.pdf
Giáo trình nguyên lý máy học - Trường ĐH Cần Thơ.pdfMan_Ebook
 
Giáo trình mô hình hóa quyết định - Trường ĐH Cần Thơ.pdf
Giáo trình mô hình hóa quyết định - Trường ĐH Cần Thơ.pdfGiáo trình mô hình hóa quyết định - Trường ĐH Cần Thơ.pdf
Giáo trình mô hình hóa quyết định - Trường ĐH Cần Thơ.pdfMan_Ebook
 
Giáo trình Linux và phần mềm nguồn mở.pdf
Giáo trình Linux và phần mềm nguồn mở.pdfGiáo trình Linux và phần mềm nguồn mở.pdf
Giáo trình Linux và phần mềm nguồn mở.pdfMan_Ebook
 
Giáo trình logic học đại cương - Trường ĐH Cần Thơ.pdf
Giáo trình logic học đại cương - Trường ĐH Cần Thơ.pdfGiáo trình logic học đại cương - Trường ĐH Cần Thơ.pdf
Giáo trình logic học đại cương - Trường ĐH Cần Thơ.pdfMan_Ebook
 
Giáo trình lý thuyết điều khiển tự động.pdf
Giáo trình lý thuyết điều khiển tự động.pdfGiáo trình lý thuyết điều khiển tự động.pdf
Giáo trình lý thuyết điều khiển tự động.pdfMan_Ebook
 
Giáo trình mạng máy tính - Trường ĐH Cần Thơ.pdf
Giáo trình mạng máy tính - Trường ĐH Cần Thơ.pdfGiáo trình mạng máy tính - Trường ĐH Cần Thơ.pdf
Giáo trình mạng máy tính - Trường ĐH Cần Thơ.pdfMan_Ebook
 
Giáo trình lý thuyết xếp hàng và ứng dụng đánh giá hệ thống.pdf
Giáo trình lý thuyết xếp hàng và ứng dụng đánh giá hệ thống.pdfGiáo trình lý thuyết xếp hàng và ứng dụng đánh giá hệ thống.pdf
Giáo trình lý thuyết xếp hàng và ứng dụng đánh giá hệ thống.pdfMan_Ebook
 
Giáo trình lập trình cho thiết bị di động.pdf
Giáo trình lập trình cho thiết bị di động.pdfGiáo trình lập trình cho thiết bị di động.pdf
Giáo trình lập trình cho thiết bị di động.pdfMan_Ebook
 
Giáo trình lập trình web - Trường ĐH Cần Thơ.pdf
Giáo trình lập trình web  - Trường ĐH Cần Thơ.pdfGiáo trình lập trình web  - Trường ĐH Cần Thơ.pdf
Giáo trình lập trình web - Trường ĐH Cần Thơ.pdfMan_Ebook
 
Giáo trình lập trình .Net - Trường ĐH Cần Thơ.pdf
Giáo trình lập trình .Net  - Trường ĐH Cần Thơ.pdfGiáo trình lập trình .Net  - Trường ĐH Cần Thơ.pdf
Giáo trình lập trình .Net - Trường ĐH Cần Thơ.pdfMan_Ebook
 
Giáo trình lập trình song song - Trường ĐH Cần Thơ.pdf
Giáo trình lập trình song song  - Trường ĐH Cần Thơ.pdfGiáo trình lập trình song song  - Trường ĐH Cần Thơ.pdf
Giáo trình lập trình song song - Trường ĐH Cần Thơ.pdfMan_Ebook
 
Giáo trình lập trình hướng đối tượng.pdf
Giáo trình lập trình hướng đối tượng.pdfGiáo trình lập trình hướng đối tượng.pdf
Giáo trình lập trình hướng đối tượng.pdfMan_Ebook
 
Giáo trình lập trình hướng đối tượng Java.pdf
Giáo trình lập trình hướng đối tượng Java.pdfGiáo trình lập trình hướng đối tượng Java.pdf
Giáo trình lập trình hướng đối tượng Java.pdfMan_Ebook
 
Giáo trình kỹ thuật phản ứng - Trường ĐH Cần Thơ.pdf
Giáo trình kỹ thuật phản ứng  - Trường ĐH Cần Thơ.pdfGiáo trình kỹ thuật phản ứng  - Trường ĐH Cần Thơ.pdf
Giáo trình kỹ thuật phản ứng - Trường ĐH Cần Thơ.pdfMan_Ebook
 

More from Man_Ebook (20)

BÀI GIẢNG MÔN HỌC CƠ SỞ NGÔN NGỮ, Dùng cho hệ Cao đẳng chuyên nghiệp.pdf
BÀI GIẢNG MÔN HỌC CƠ SỞ NGÔN NGỮ, Dùng cho hệ Cao đẳng chuyên nghiệp.pdfBÀI GIẢNG MÔN HỌC CƠ SỞ NGÔN NGỮ, Dùng cho hệ Cao đẳng chuyên nghiệp.pdf
BÀI GIẢNG MÔN HỌC CƠ SỞ NGÔN NGỮ, Dùng cho hệ Cao đẳng chuyên nghiệp.pdf
 
TL Báo cáo Thực tập tại Nissan Đà Nẵng.doc
TL Báo cáo Thực tập tại Nissan Đà Nẵng.docTL Báo cáo Thực tập tại Nissan Đà Nẵng.doc
TL Báo cáo Thực tập tại Nissan Đà Nẵng.doc
 
Giáo trình thực vật học 2 - Trường ĐH Cần Thơ.pdf
Giáo trình thực vật học 2 - Trường ĐH Cần Thơ.pdfGiáo trình thực vật học 2 - Trường ĐH Cần Thơ.pdf
Giáo trình thực vật học 2 - Trường ĐH Cần Thơ.pdf
 
Giáo trình mô động vật - Trường ĐH Cần Thơ.pdf
Giáo trình mô động vật - Trường ĐH Cần Thơ.pdfGiáo trình mô động vật - Trường ĐH Cần Thơ.pdf
Giáo trình mô động vật - Trường ĐH Cần Thơ.pdf
 
Giáo trình ngôn ngữ hệ thống A - Trường ĐH Cần Thơ.pdf
Giáo trình ngôn ngữ hệ thống A - Trường ĐH Cần Thơ.pdfGiáo trình ngôn ngữ hệ thống A - Trường ĐH Cần Thơ.pdf
Giáo trình ngôn ngữ hệ thống A - Trường ĐH Cần Thơ.pdf
 
Giáo trình ngôn ngữ mô hình hóa UML - Trường ĐH Cần Thơ.pdf
Giáo trình ngôn ngữ mô hình hóa UML - Trường ĐH Cần Thơ.pdfGiáo trình ngôn ngữ mô hình hóa UML - Trường ĐH Cần Thơ.pdf
Giáo trình ngôn ngữ mô hình hóa UML - Trường ĐH Cần Thơ.pdf
 
Giáo trình nguyên lý máy học - Trường ĐH Cần Thơ.pdf
Giáo trình nguyên lý máy học - Trường ĐH Cần Thơ.pdfGiáo trình nguyên lý máy học - Trường ĐH Cần Thơ.pdf
Giáo trình nguyên lý máy học - Trường ĐH Cần Thơ.pdf
 
Giáo trình mô hình hóa quyết định - Trường ĐH Cần Thơ.pdf
Giáo trình mô hình hóa quyết định - Trường ĐH Cần Thơ.pdfGiáo trình mô hình hóa quyết định - Trường ĐH Cần Thơ.pdf
Giáo trình mô hình hóa quyết định - Trường ĐH Cần Thơ.pdf
 
Giáo trình Linux và phần mềm nguồn mở.pdf
Giáo trình Linux và phần mềm nguồn mở.pdfGiáo trình Linux và phần mềm nguồn mở.pdf
Giáo trình Linux và phần mềm nguồn mở.pdf
 
Giáo trình logic học đại cương - Trường ĐH Cần Thơ.pdf
Giáo trình logic học đại cương - Trường ĐH Cần Thơ.pdfGiáo trình logic học đại cương - Trường ĐH Cần Thơ.pdf
Giáo trình logic học đại cương - Trường ĐH Cần Thơ.pdf
 
Giáo trình lý thuyết điều khiển tự động.pdf
Giáo trình lý thuyết điều khiển tự động.pdfGiáo trình lý thuyết điều khiển tự động.pdf
Giáo trình lý thuyết điều khiển tự động.pdf
 
Giáo trình mạng máy tính - Trường ĐH Cần Thơ.pdf
Giáo trình mạng máy tính - Trường ĐH Cần Thơ.pdfGiáo trình mạng máy tính - Trường ĐH Cần Thơ.pdf
Giáo trình mạng máy tính - Trường ĐH Cần Thơ.pdf
 
Giáo trình lý thuyết xếp hàng và ứng dụng đánh giá hệ thống.pdf
Giáo trình lý thuyết xếp hàng và ứng dụng đánh giá hệ thống.pdfGiáo trình lý thuyết xếp hàng và ứng dụng đánh giá hệ thống.pdf
Giáo trình lý thuyết xếp hàng và ứng dụng đánh giá hệ thống.pdf
 
Giáo trình lập trình cho thiết bị di động.pdf
Giáo trình lập trình cho thiết bị di động.pdfGiáo trình lập trình cho thiết bị di động.pdf
Giáo trình lập trình cho thiết bị di động.pdf
 
Giáo trình lập trình web - Trường ĐH Cần Thơ.pdf
Giáo trình lập trình web  - Trường ĐH Cần Thơ.pdfGiáo trình lập trình web  - Trường ĐH Cần Thơ.pdf
Giáo trình lập trình web - Trường ĐH Cần Thơ.pdf
 
Giáo trình lập trình .Net - Trường ĐH Cần Thơ.pdf
Giáo trình lập trình .Net  - Trường ĐH Cần Thơ.pdfGiáo trình lập trình .Net  - Trường ĐH Cần Thơ.pdf
Giáo trình lập trình .Net - Trường ĐH Cần Thơ.pdf
 
Giáo trình lập trình song song - Trường ĐH Cần Thơ.pdf
Giáo trình lập trình song song  - Trường ĐH Cần Thơ.pdfGiáo trình lập trình song song  - Trường ĐH Cần Thơ.pdf
Giáo trình lập trình song song - Trường ĐH Cần Thơ.pdf
 
Giáo trình lập trình hướng đối tượng.pdf
Giáo trình lập trình hướng đối tượng.pdfGiáo trình lập trình hướng đối tượng.pdf
Giáo trình lập trình hướng đối tượng.pdf
 
Giáo trình lập trình hướng đối tượng Java.pdf
Giáo trình lập trình hướng đối tượng Java.pdfGiáo trình lập trình hướng đối tượng Java.pdf
Giáo trình lập trình hướng đối tượng Java.pdf
 
Giáo trình kỹ thuật phản ứng - Trường ĐH Cần Thơ.pdf
Giáo trình kỹ thuật phản ứng  - Trường ĐH Cần Thơ.pdfGiáo trình kỹ thuật phản ứng  - Trường ĐH Cần Thơ.pdf
Giáo trình kỹ thuật phản ứng - Trường ĐH Cần Thơ.pdf
 

Recently uploaded

Sáng kiến Dạy học theo định hướng STEM một số chủ đề phần “vật sống”, Khoa họ...
Sáng kiến Dạy học theo định hướng STEM một số chủ đề phần “vật sống”, Khoa họ...Sáng kiến Dạy học theo định hướng STEM một số chủ đề phần “vật sống”, Khoa họ...
Sáng kiến Dạy học theo định hướng STEM một số chủ đề phần “vật sống”, Khoa họ...Nguyen Thanh Tu Collection
 
GIÁO ÁN DẠY THÊM (KẾ HOẠCH BÀI DẠY BUỔI 2) - TIẾNG ANH 7 GLOBAL SUCCESS (2 CỘ...
GIÁO ÁN DẠY THÊM (KẾ HOẠCH BÀI DẠY BUỔI 2) - TIẾNG ANH 7 GLOBAL SUCCESS (2 CỘ...GIÁO ÁN DẠY THÊM (KẾ HOẠCH BÀI DẠY BUỔI 2) - TIẾNG ANH 7 GLOBAL SUCCESS (2 CỘ...
GIÁO ÁN DẠY THÊM (KẾ HOẠCH BÀI DẠY BUỔI 2) - TIẾNG ANH 7 GLOBAL SUCCESS (2 CỘ...Nguyen Thanh Tu Collection
 
QUẢN LÝ HOẠT ĐỘNG GIÁO DỤC KỸ NĂNG SỐNG CHO HỌC SINH CÁC TRƯỜNG TRUNG HỌC CƠ ...
QUẢN LÝ HOẠT ĐỘNG GIÁO DỤC KỸ NĂNG SỐNG CHO HỌC SINH CÁC TRƯỜNG TRUNG HỌC CƠ ...QUẢN LÝ HOẠT ĐỘNG GIÁO DỤC KỸ NĂNG SỐNG CHO HỌC SINH CÁC TRƯỜNG TRUNG HỌC CƠ ...
QUẢN LÝ HOẠT ĐỘNG GIÁO DỤC KỸ NĂNG SỐNG CHO HỌC SINH CÁC TRƯỜNG TRUNG HỌC CƠ ...ThunTrn734461
 
30 ĐỀ PHÁT TRIỂN THEO CẤU TRÚC ĐỀ MINH HỌA BGD NGÀY 22-3-2024 KỲ THI TỐT NGHI...
30 ĐỀ PHÁT TRIỂN THEO CẤU TRÚC ĐỀ MINH HỌA BGD NGÀY 22-3-2024 KỲ THI TỐT NGHI...30 ĐỀ PHÁT TRIỂN THEO CẤU TRÚC ĐỀ MINH HỌA BGD NGÀY 22-3-2024 KỲ THI TỐT NGHI...
30 ĐỀ PHÁT TRIỂN THEO CẤU TRÚC ĐỀ MINH HỌA BGD NGÀY 22-3-2024 KỲ THI TỐT NGHI...Nguyen Thanh Tu Collection
 
Thong bao 337-DHPY (24.4.2024) thi sat hach Ngoai ngu dap ung Chuan dau ra do...
Thong bao 337-DHPY (24.4.2024) thi sat hach Ngoai ngu dap ung Chuan dau ra do...Thong bao 337-DHPY (24.4.2024) thi sat hach Ngoai ngu dap ung Chuan dau ra do...
Thong bao 337-DHPY (24.4.2024) thi sat hach Ngoai ngu dap ung Chuan dau ra do...hoangtuansinh1
 
powerpoint lịch sử đảng cộng sản việt nam.pptx
powerpoint lịch sử đảng cộng sản việt nam.pptxpowerpoint lịch sử đảng cộng sản việt nam.pptx
powerpoint lịch sử đảng cộng sản việt nam.pptxAnAn97022
 
TỔNG HỢP ĐỀ THI CHÍNH THỨC KỲ THI TUYỂN SINH VÀO LỚP 10 THPT MÔN NGỮ VĂN NĂM ...
TỔNG HỢP ĐỀ THI CHÍNH THỨC KỲ THI TUYỂN SINH VÀO LỚP 10 THPT MÔN NGỮ VĂN NĂM ...TỔNG HỢP ĐỀ THI CHÍNH THỨC KỲ THI TUYỂN SINH VÀO LỚP 10 THPT MÔN NGỮ VĂN NĂM ...
TỔNG HỢP ĐỀ THI CHÍNH THỨC KỲ THI TUYỂN SINH VÀO LỚP 10 THPT MÔN NGỮ VĂN NĂM ...Nguyen Thanh Tu Collection
 
BỘ ĐỀ PHÁT TRIỂN THEO CẤU TRÚC ĐỀ MINH HỌA BGD NGÀY 22-3-2024 KỲ THI TỐT NGHI...
BỘ ĐỀ PHÁT TRIỂN THEO CẤU TRÚC ĐỀ MINH HỌA BGD NGÀY 22-3-2024 KỲ THI TỐT NGHI...BỘ ĐỀ PHÁT TRIỂN THEO CẤU TRÚC ĐỀ MINH HỌA BGD NGÀY 22-3-2024 KỲ THI TỐT NGHI...
BỘ ĐỀ PHÁT TRIỂN THEO CẤU TRÚC ĐỀ MINH HỌA BGD NGÀY 22-3-2024 KỲ THI TỐT NGHI...Nguyen Thanh Tu Collection
 
sách sinh học đại cương - Textbook.pdf
sách sinh học đại cương   -   Textbook.pdfsách sinh học đại cương   -   Textbook.pdf
sách sinh học đại cương - Textbook.pdfTrnHoa46
 
Kiểm tra chạy trạm lí thuyết giữa kì giải phẫu sinh lí
Kiểm tra chạy trạm lí thuyết giữa kì giải phẫu sinh líKiểm tra chạy trạm lí thuyết giữa kì giải phẫu sinh lí
Kiểm tra chạy trạm lí thuyết giữa kì giải phẫu sinh líDr K-OGN
 
Campbell _2011_ - Sinh học - Tế bào - Ref.pdf
Campbell _2011_ - Sinh học - Tế bào - Ref.pdfCampbell _2011_ - Sinh học - Tế bào - Ref.pdf
Campbell _2011_ - Sinh học - Tế bào - Ref.pdfTrnHoa46
 
30 ĐỀ PHÁT TRIỂN THEO CẤU TRÚC ĐỀ MINH HỌA BGD NGÀY 22-3-2024 KỲ THI TỐT NGHI...
30 ĐỀ PHÁT TRIỂN THEO CẤU TRÚC ĐỀ MINH HỌA BGD NGÀY 22-3-2024 KỲ THI TỐT NGHI...30 ĐỀ PHÁT TRIỂN THEO CẤU TRÚC ĐỀ MINH HỌA BGD NGÀY 22-3-2024 KỲ THI TỐT NGHI...
30 ĐỀ PHÁT TRIỂN THEO CẤU TRÚC ĐỀ MINH HỌA BGD NGÀY 22-3-2024 KỲ THI TỐT NGHI...Nguyen Thanh Tu Collection
 
ôn tập lịch sử hhhhhhhhhhhhhhhhhhhhhhhhhh
ôn tập lịch sử hhhhhhhhhhhhhhhhhhhhhhhhhhôn tập lịch sử hhhhhhhhhhhhhhhhhhhhhhhhhh
ôn tập lịch sử hhhhhhhhhhhhhhhhhhhhhhhhhhvanhathvc
 
Sáng kiến “Sử dụng ứng dụng Quizizz nhằm nâng cao chất lượng ôn thi tốt nghiệ...
Sáng kiến “Sử dụng ứng dụng Quizizz nhằm nâng cao chất lượng ôn thi tốt nghiệ...Sáng kiến “Sử dụng ứng dụng Quizizz nhằm nâng cao chất lượng ôn thi tốt nghiệ...
Sáng kiến “Sử dụng ứng dụng Quizizz nhằm nâng cao chất lượng ôn thi tốt nghiệ...Nguyen Thanh Tu Collection
 
30 ĐỀ PHÁT TRIỂN THEO CẤU TRÚC ĐỀ MINH HỌA BGD NGÀY 22-3-2024 KỲ THI TỐT NGHI...
30 ĐỀ PHÁT TRIỂN THEO CẤU TRÚC ĐỀ MINH HỌA BGD NGÀY 22-3-2024 KỲ THI TỐT NGHI...30 ĐỀ PHÁT TRIỂN THEO CẤU TRÚC ĐỀ MINH HỌA BGD NGÀY 22-3-2024 KỲ THI TỐT NGHI...
30 ĐỀ PHÁT TRIỂN THEO CẤU TRÚC ĐỀ MINH HỌA BGD NGÀY 22-3-2024 KỲ THI TỐT NGHI...Nguyen Thanh Tu Collection
 
Các điều kiện bảo hiểm trong bảo hiểm hàng hoá
Các điều kiện bảo hiểm trong bảo hiểm hàng hoáCác điều kiện bảo hiểm trong bảo hiểm hàng hoá
Các điều kiện bảo hiểm trong bảo hiểm hàng hoámyvh40253
 
Chuong trinh dao tao Su pham Khoa hoc tu nhien, ma nganh - 7140247.pdf
Chuong trinh dao tao Su pham Khoa hoc tu nhien, ma nganh - 7140247.pdfChuong trinh dao tao Su pham Khoa hoc tu nhien, ma nganh - 7140247.pdf
Chuong trinh dao tao Su pham Khoa hoc tu nhien, ma nganh - 7140247.pdfhoangtuansinh1
 
30 ĐỀ PHÁT TRIỂN THEO CẤU TRÚC ĐỀ MINH HỌA BGD NGÀY 22-3-2024 KỲ THI TỐT NGHI...
30 ĐỀ PHÁT TRIỂN THEO CẤU TRÚC ĐỀ MINH HỌA BGD NGÀY 22-3-2024 KỲ THI TỐT NGHI...30 ĐỀ PHÁT TRIỂN THEO CẤU TRÚC ĐỀ MINH HỌA BGD NGÀY 22-3-2024 KỲ THI TỐT NGHI...
30 ĐỀ PHÁT TRIỂN THEO CẤU TRÚC ĐỀ MINH HỌA BGD NGÀY 22-3-2024 KỲ THI TỐT NGHI...Nguyen Thanh Tu Collection
 
Đề cương môn giải phẫu......................
Đề cương môn giải phẫu......................Đề cương môn giải phẫu......................
Đề cương môn giải phẫu......................TrnHoa46
 

Recently uploaded (20)

Sáng kiến Dạy học theo định hướng STEM một số chủ đề phần “vật sống”, Khoa họ...
Sáng kiến Dạy học theo định hướng STEM một số chủ đề phần “vật sống”, Khoa họ...Sáng kiến Dạy học theo định hướng STEM một số chủ đề phần “vật sống”, Khoa họ...
Sáng kiến Dạy học theo định hướng STEM một số chủ đề phần “vật sống”, Khoa họ...
 
GIÁO ÁN DẠY THÊM (KẾ HOẠCH BÀI DẠY BUỔI 2) - TIẾNG ANH 7 GLOBAL SUCCESS (2 CỘ...
GIÁO ÁN DẠY THÊM (KẾ HOẠCH BÀI DẠY BUỔI 2) - TIẾNG ANH 7 GLOBAL SUCCESS (2 CỘ...GIÁO ÁN DẠY THÊM (KẾ HOẠCH BÀI DẠY BUỔI 2) - TIẾNG ANH 7 GLOBAL SUCCESS (2 CỘ...
GIÁO ÁN DẠY THÊM (KẾ HOẠCH BÀI DẠY BUỔI 2) - TIẾNG ANH 7 GLOBAL SUCCESS (2 CỘ...
 
QUẢN LÝ HOẠT ĐỘNG GIÁO DỤC KỸ NĂNG SỐNG CHO HỌC SINH CÁC TRƯỜNG TRUNG HỌC CƠ ...
QUẢN LÝ HOẠT ĐỘNG GIÁO DỤC KỸ NĂNG SỐNG CHO HỌC SINH CÁC TRƯỜNG TRUNG HỌC CƠ ...QUẢN LÝ HOẠT ĐỘNG GIÁO DỤC KỸ NĂNG SỐNG CHO HỌC SINH CÁC TRƯỜNG TRUNG HỌC CƠ ...
QUẢN LÝ HOẠT ĐỘNG GIÁO DỤC KỸ NĂNG SỐNG CHO HỌC SINH CÁC TRƯỜNG TRUNG HỌC CƠ ...
 
30 ĐỀ PHÁT TRIỂN THEO CẤU TRÚC ĐỀ MINH HỌA BGD NGÀY 22-3-2024 KỲ THI TỐT NGHI...
30 ĐỀ PHÁT TRIỂN THEO CẤU TRÚC ĐỀ MINH HỌA BGD NGÀY 22-3-2024 KỲ THI TỐT NGHI...30 ĐỀ PHÁT TRIỂN THEO CẤU TRÚC ĐỀ MINH HỌA BGD NGÀY 22-3-2024 KỲ THI TỐT NGHI...
30 ĐỀ PHÁT TRIỂN THEO CẤU TRÚC ĐỀ MINH HỌA BGD NGÀY 22-3-2024 KỲ THI TỐT NGHI...
 
Thong bao 337-DHPY (24.4.2024) thi sat hach Ngoai ngu dap ung Chuan dau ra do...
Thong bao 337-DHPY (24.4.2024) thi sat hach Ngoai ngu dap ung Chuan dau ra do...Thong bao 337-DHPY (24.4.2024) thi sat hach Ngoai ngu dap ung Chuan dau ra do...
Thong bao 337-DHPY (24.4.2024) thi sat hach Ngoai ngu dap ung Chuan dau ra do...
 
powerpoint lịch sử đảng cộng sản việt nam.pptx
powerpoint lịch sử đảng cộng sản việt nam.pptxpowerpoint lịch sử đảng cộng sản việt nam.pptx
powerpoint lịch sử đảng cộng sản việt nam.pptx
 
TỔNG HỢP ĐỀ THI CHÍNH THỨC KỲ THI TUYỂN SINH VÀO LỚP 10 THPT MÔN NGỮ VĂN NĂM ...
TỔNG HỢP ĐỀ THI CHÍNH THỨC KỲ THI TUYỂN SINH VÀO LỚP 10 THPT MÔN NGỮ VĂN NĂM ...TỔNG HỢP ĐỀ THI CHÍNH THỨC KỲ THI TUYỂN SINH VÀO LỚP 10 THPT MÔN NGỮ VĂN NĂM ...
TỔNG HỢP ĐỀ THI CHÍNH THỨC KỲ THI TUYỂN SINH VÀO LỚP 10 THPT MÔN NGỮ VĂN NĂM ...
 
BỘ ĐỀ PHÁT TRIỂN THEO CẤU TRÚC ĐỀ MINH HỌA BGD NGÀY 22-3-2024 KỲ THI TỐT NGHI...
BỘ ĐỀ PHÁT TRIỂN THEO CẤU TRÚC ĐỀ MINH HỌA BGD NGÀY 22-3-2024 KỲ THI TỐT NGHI...BỘ ĐỀ PHÁT TRIỂN THEO CẤU TRÚC ĐỀ MINH HỌA BGD NGÀY 22-3-2024 KỲ THI TỐT NGHI...
BỘ ĐỀ PHÁT TRIỂN THEO CẤU TRÚC ĐỀ MINH HỌA BGD NGÀY 22-3-2024 KỲ THI TỐT NGHI...
 
sách sinh học đại cương - Textbook.pdf
sách sinh học đại cương   -   Textbook.pdfsách sinh học đại cương   -   Textbook.pdf
sách sinh học đại cương - Textbook.pdf
 
Kiểm tra chạy trạm lí thuyết giữa kì giải phẫu sinh lí
Kiểm tra chạy trạm lí thuyết giữa kì giải phẫu sinh líKiểm tra chạy trạm lí thuyết giữa kì giải phẫu sinh lí
Kiểm tra chạy trạm lí thuyết giữa kì giải phẫu sinh lí
 
1 - MÃ LỖI SỬA CHỮA BOARD MẠCH BẾP TỪ.pdf
1 - MÃ LỖI SỬA CHỮA BOARD MẠCH BẾP TỪ.pdf1 - MÃ LỖI SỬA CHỮA BOARD MẠCH BẾP TỪ.pdf
1 - MÃ LỖI SỬA CHỮA BOARD MẠCH BẾP TỪ.pdf
 
Campbell _2011_ - Sinh học - Tế bào - Ref.pdf
Campbell _2011_ - Sinh học - Tế bào - Ref.pdfCampbell _2011_ - Sinh học - Tế bào - Ref.pdf
Campbell _2011_ - Sinh học - Tế bào - Ref.pdf
 
30 ĐỀ PHÁT TRIỂN THEO CẤU TRÚC ĐỀ MINH HỌA BGD NGÀY 22-3-2024 KỲ THI TỐT NGHI...
30 ĐỀ PHÁT TRIỂN THEO CẤU TRÚC ĐỀ MINH HỌA BGD NGÀY 22-3-2024 KỲ THI TỐT NGHI...30 ĐỀ PHÁT TRIỂN THEO CẤU TRÚC ĐỀ MINH HỌA BGD NGÀY 22-3-2024 KỲ THI TỐT NGHI...
30 ĐỀ PHÁT TRIỂN THEO CẤU TRÚC ĐỀ MINH HỌA BGD NGÀY 22-3-2024 KỲ THI TỐT NGHI...
 
ôn tập lịch sử hhhhhhhhhhhhhhhhhhhhhhhhhh
ôn tập lịch sử hhhhhhhhhhhhhhhhhhhhhhhhhhôn tập lịch sử hhhhhhhhhhhhhhhhhhhhhhhhhh
ôn tập lịch sử hhhhhhhhhhhhhhhhhhhhhhhhhh
 
Sáng kiến “Sử dụng ứng dụng Quizizz nhằm nâng cao chất lượng ôn thi tốt nghiệ...
Sáng kiến “Sử dụng ứng dụng Quizizz nhằm nâng cao chất lượng ôn thi tốt nghiệ...Sáng kiến “Sử dụng ứng dụng Quizizz nhằm nâng cao chất lượng ôn thi tốt nghiệ...
Sáng kiến “Sử dụng ứng dụng Quizizz nhằm nâng cao chất lượng ôn thi tốt nghiệ...
 
30 ĐỀ PHÁT TRIỂN THEO CẤU TRÚC ĐỀ MINH HỌA BGD NGÀY 22-3-2024 KỲ THI TỐT NGHI...
30 ĐỀ PHÁT TRIỂN THEO CẤU TRÚC ĐỀ MINH HỌA BGD NGÀY 22-3-2024 KỲ THI TỐT NGHI...30 ĐỀ PHÁT TRIỂN THEO CẤU TRÚC ĐỀ MINH HỌA BGD NGÀY 22-3-2024 KỲ THI TỐT NGHI...
30 ĐỀ PHÁT TRIỂN THEO CẤU TRÚC ĐỀ MINH HỌA BGD NGÀY 22-3-2024 KỲ THI TỐT NGHI...
 
Các điều kiện bảo hiểm trong bảo hiểm hàng hoá
Các điều kiện bảo hiểm trong bảo hiểm hàng hoáCác điều kiện bảo hiểm trong bảo hiểm hàng hoá
Các điều kiện bảo hiểm trong bảo hiểm hàng hoá
 
Chuong trinh dao tao Su pham Khoa hoc tu nhien, ma nganh - 7140247.pdf
Chuong trinh dao tao Su pham Khoa hoc tu nhien, ma nganh - 7140247.pdfChuong trinh dao tao Su pham Khoa hoc tu nhien, ma nganh - 7140247.pdf
Chuong trinh dao tao Su pham Khoa hoc tu nhien, ma nganh - 7140247.pdf
 
30 ĐỀ PHÁT TRIỂN THEO CẤU TRÚC ĐỀ MINH HỌA BGD NGÀY 22-3-2024 KỲ THI TỐT NGHI...
30 ĐỀ PHÁT TRIỂN THEO CẤU TRÚC ĐỀ MINH HỌA BGD NGÀY 22-3-2024 KỲ THI TỐT NGHI...30 ĐỀ PHÁT TRIỂN THEO CẤU TRÚC ĐỀ MINH HỌA BGD NGÀY 22-3-2024 KỲ THI TỐT NGHI...
30 ĐỀ PHÁT TRIỂN THEO CẤU TRÚC ĐỀ MINH HỌA BGD NGÀY 22-3-2024 KỲ THI TỐT NGHI...
 
Đề cương môn giải phẫu......................
Đề cương môn giải phẫu......................Đề cương môn giải phẫu......................
Đề cương môn giải phẫu......................
 

Xây dựng ứng dụng Chatbot tư vấn khách hàng sử dụng các kỹ thuật học sâu.pdf

  • 1. TRƯỜNG ĐẠ Ọ Ộ I H C BÁCH KHOA HÀ N I LUẬN VĂN THẠC SĨ Xây d ng ng d n khách hàng ự ứ ụng Chatbot tư vấ s d ng các k thu t h c sâu ử ụ ỹ ậ ọ NGUY C HI U ỄN ĐẮ Ế Ngành Công ngh thông tin ệ Giảng viên hướ ẫ ng d n: PGS.TS. Cao Tuấn Dũng Viện: Công ngh thông tin và truy n thông ệ ề HÀ N 2021 ỘI,
  • 2. TRƯỜNG ĐẠ Ọ Ộ I H C BÁCH KHOA HÀ N I LUẬN VĂN THẠC SĨ Xây d ng ng d n khách hàng ự ứ ụng Chatbot tư vấ s d ng các k thu t h c sâu ử ụ ỹ ậ ọ NGUY C HI U ỄN ĐẮ Ế Ngành Công ngh thông tin ệ Giảng viên hướng dẫn: PGS.TS. Cao Tuấn Dũng Viện: Công ngh thông tin và truy n thông ệ ề HÀ N 2021 ỘI, ký c a GVHD Chữ ủ
  • 3. C NG HÒA XÃ H I CH Ộ Ộ Ủ NGHĨA VIỆT NAM Độ ậ – ự – ạ c l p T do H nh phúc B N XÁC NH N CH NH S A LU Ả Ậ Ỉ Ử ẬN VĂN THẠC SĨ H và tên tác gi ọ ả luận văn : Nguy c Hi u ễn Đắ ế Đề ận văn tài lu : Xây d ng ng d n khách hàng s d ự ứ ụng Chatbot tư vấ ử ụng các k c sâu ỹ ậ thu t họ Chuyên ngành: Công ngh thông tin ệ Mã số HV: CB190157 Tác gi ng d n khoa h c và H ng ch m lu ả, Người hướ ẫ ọ ộ ồ i đ ấ ận văn xác nhận tác gi a ch a, b sung lu n h p H ng ngày ả đã sử ữ ổ ận văn theo biên bả ọ ội đồ 30/10/2021 v i dung sau: ới các nộ 1. S thành m t ph ửa Chương 4: Kế ậ t lu n ộ ần không đánh số (trang 58). 2. Giản lượ ộ c n i dung Chương 2: Cơ sở ế lý thuy t. 3. 17 24 Việ ừ ế ụ – t hóa các t ti ng Anh (M c 2.3 trang - , M c 2.4 trang ụ – 25-31). 4. B sung khái ni m h c chuy n giao (M c 2.4.2 trang 2 ổ ệ ọ ể ụ – 7) 5. B sung mô hình t ng quát quy trình ho ng c a Chatbot (M ổ ổ ạt độ ủ ục 3.3.2 trang 40 ng kê k t qu (Hình 3.18-3.21 trang 53- ) – ), thố ế ả – 56 6. Đánh số ứ ử ỗ ề ữ ả các công th c, s a các l i v trình bày ngôn ng , chính t cho h p lý, ví d s ợ ụ ửa “đào tạo mô hình” thành “huấn luyện mô hình”. Ngày tháng năm 2021 Giáo viên hướ ẫ ng d n Tác giả luận văn T CH H CHỦ Ị Ộ Ồ I Đ NG
  • 4. LỜI CAM ĐOAN Tôi xin cam đoan: Luận văn “Xây dự ứ ụng Chatbot tư vấ ng ng d n khách hàng s d ng các k thu t h ử ụ ỹ ậ ọc sâu” là công trình nghiên c u khoa h c l ứ ọc, độ ập c a tôi. Ki n th c trình bày trong lu t ng h p c a cá nhân, thông qua ủ ế ứ ận văn là sự ổ ợ ủ các ki n th c t ng d n, các tài li u tham kh o trên m ng internet và các ế ứ ừ thầy hướ ẫ ệ ả ạ bài báo khoa h c khác. ọ Đây là đề ận văn Thạ ỹ ệ ế ả tài lu c s ngành Công ngh Thông tin. K t qu nghiên c c trình bày trong lu c công b i b t k hình ứu đượ ận văn này chưa từng đượ ố dướ ấ ỳ thức nào. Hà N i, ngày th ộ áng năm 2021 Tác giả luận văn Nguy c Hi u ễn Đắ ế
  • 5. L I C Ờ ẢM ƠN Trước tiên, tôi xin chân thành cảm ơn các thầy, các cô trong Vi n Công ngh ệ ệ thông tin và Truy n thông - i h c Bách Khoa Hà N n tình gi ề Trường Đạ ọ ội đã tậ ảng d trong su t th i gian tôi h c t hoàn thành Lu ạy ố ờ ọ ập ở trường. Để ận văn thạc sĩ, tôi cũng đã nhận đượ ề c nhi u sự quan tâm, giúp đỡ ừ t quý thầy cô, gia đình và bạn bè. Đặ ệ ỏ ết ơn sâu sắ ớ ầ c bi t tôi bày t lòng bi c t i th y PGS.TS. Cao Tuấn Dũng đã tậ ỉ ảo, hướ ẫ ự ếp tôi để tìm ra hướ ứ ể n tình ch b ng d n tr c ti ng nghiên c u và có th hoàn thi n lu t nghi p c ệ ận văn tố ệ ủa mình. Cuối cùng, tôi xin cảm ơn gia đình và bạn bè và t p th l ậ ể ớp CNTT 2019B đã luôn ng h ủ ộ, giúp đỡ tôi trong th i gian h c t p, nghiên c u và th c hi n lu ờ ọ ậ ứ ự ệ ận văn t t nghi ố ệp. Trong quá trình làm lu t nghi p ch c ch n không tránh kh i nh ng ận văn tố ệ ắ ắ ỏ ữ sai sót, tôi r t hoan nghênh và chân thành c a quý ấ ảm ơn các ý kiến đóng góp củ thầ ạn đọ y cô và b c. Tác giả luận văn Nguy c Hi u ễn Đắ ế
  • 6. i M C L C Ụ Ụ DANH M C CÁC HÌNH V Ụ Ẽ ...................................................................iii DANH M C B Ụ ẢNG....................................................................................v M U Ở ĐẦ ......................................................................................................1 CHƯƠNG 1: TỔ Ề NG QUAN V CHATBOT...........................................3 1.1 Khái ni m Chatbot ệ .....................................................................................3 1.2 Các thành ph n c a Chatbot ầ ủ .................................................................... 4 1.3 Các lo i Chatbot ạ ......................................................................................... 5 1.3.1 Rule-based Chatbot...............................................................................5 1.3.2 AI-based Chatbot .................................................................................. 7 1.4 Các n n t ng xây d ng Chatbot ề ả ự ............................................................... 8 1.5 M ng d ng c a Chatbot ột số ứ ụ ủ .................................................................11 CHƯƠNG 2: CƠ SỞ Ế LÝ THUY T ........................................................13 2.1 Cơ bả ề n v Deep learning .........................................................................13 2.2 M -ron h i quy RNN ạng nơ ồ .....................................................................14 2.3 Mô hình Transformer..............................................................................17 2.3.1 T ng quan mô hình Transformer ổ ........................................................ 17 2.3.2 Thành ph n mã hóa ầ .............................................................................18 2.3.3 Thành ph n gi i mã ầ ả ............................................................................23 2.3.4 Ưu điể ủ m c a mô hình Transformer so v i mô hình RNN ớ ...................24 2.4 Mô hình DIET .......................................................................................... 25 2.4.1 Đặc trưng hóa câu đầu vào (Featurization).......................................27 2.4.2 H c chuy n giao (Transfer Learning) ọ ể ................................................27 2.4.3 Thành ph n Transformer ầ ....................................................................29 2.4.4 Hu n luy n mô hình ấ ệ ............................................................................ 29 2.4.5 Đánh giá mô hình DIET...................................................................... 31 CHƯƠNG 3: XÂY DỰNG VÀ CÀI ĐẶ Ứ Ụ T NG D NG CHATBOT ..33 3.1 Gi i thi u Rasa Framework ớ ệ .................................................................... 33 3.2 C u trúc c a Chatbot Nh t Nam ấ ủ ấ ............................................................35
  • 7. ii 3.2.1 Thi t ng quát ết kế ổ ............................................................................... 35 3.2.2 Sơ đồ ạt độ quy trình ho ng củ ấ a Chatbot Nh t Nam............................. 37 3.3 Xây d ng d u Chatbot ự ữ liệ ....................................................................... 39 3.3.1 Xây d nh (intent) ựng ý đị ..................................................................... 39 3.3.2 Xây d ng th (entity) ự ực thể ................................................................... 40 3.3.3 Xây d ng câu tr l i cho Chatbot ự ả ờ ....................................................... 41 3.3.4 C u hình các thành ph n ấ ầ .................................................................... 44 3.4 Cài đặt chương trình ............................................................................... 46 3.5 Th nghi ử ệm và đánh giá chương trình.................................................. 51 K T LU N Ế Ậ ................................................................................................58 TÀI LI U THAM KH O Ệ Ả ........................................................................59
  • 8. iii DANH M C CÁC HÌNH V Ụ Ẽ Hình 1.1. Minh h thành ph n c a Chatbot [3] ọa các ầ ủ ............................................. 5 Hình 1.2. Chatbot h nút b ỗ trợ ấm để ủa Domino’s Pizza thao tác c ....................... 6 Hình 1.3. Giao di n n n t ng Chatbot FPT.AI Conversation ệ ề ả ................................9 Hình 1.4. Giao di n n n t ng Chatbot Harafunnel ệ ề ả ............................................... 10 Hình 1.5. Chatbot Messenger c a trang CNN ủ .....................................................12 Hình 2.1. M -ron h i quy [5] ạng nơ ồ ...................................................................... 14 Hình 2.2. Sơ đồ mô hình Transformer [8] ...........................................................18 Hình 2.3 Minh h a bi nhi t Positional Encoding ọ ểu đồ ệ ........................................20 Hình 2.4. Minh h liên k t gi [10] ọa mứ ộ c đ ế ữa các từ ..........................................21 Hình 2.5. So sánh Transformer v i các mô hình khác d a trên k t qu ớ ự ế ả đánh giá c a bài báo [8] ủ ......................................................................................................25 Hình 2.6. Sơ đồ mô hình DIET [13] .................................................................... 26 Hình 2.7. Minh h a so sánh s d ng và không s d ng h c chuy n giao ọ ử ụ ử ụ ọ ể ...........28 Hình 2.8. So sánh mô hình DIET và mô hình HERMIT [13]..............................32 Hình 2.9. Đánh giá các biế ể n th c a mô hình DIET [13] ủ ....................................32 Hình 3.1. Sơ đồ ầ các thành ph n trong Rasa Framework......................................33 Hình 3.2. C u trúc h ng Chatbot Nh t Nam ấ ệ thố ấ ..................................................36 Hình 3.3. Sơ đồ ạ quy trình ho t độ ủ ấ ng c a Chatbot Nh t Nam..............................37 Hình 3.4. Giao di n Rasa X s ệ ử ụ ạ ị ả d ng t o k ch b n...............................................39 Hình 3.5. Khai báo intent trong file nlu.yml........................................................40 Hình 3.6. Khai báo entity trong file domain.yml................................................. 41 Hình 3.7. Khai báo intent có chứa entity trong file nlu.yml ................................41 Hình 3.8. Khai báo Rule policy trong file rules.yml............................................ 42 Hình 3.9. Khai báo k ch b n trong file stories.yml ị ả .............................................. 43 Hình 3.10. Hàm x lý sau khi hoàn thành nh p Form liên h ử ậ ệ............................. 44 Hình 3.11. Khai báo c u hình trong file config.yml ấ ............................................46 Hình 3.12 Giao di n h nút b thao tác ệ ỗ trợ ấm để ..................................................47
  • 9. iv Hình 3.13. Ngườ ể ấm nút để ả ờ ặ ậ i dùng có th b tr l i (hình bên trái) ho c nh p tin nhắ ả n (hình bên ph i) ............................................................................................ 48 Hình 3.14 Trườ ợ ậ ng h p nh p form liên hệ............................................................ 49 Hình 3.15. Trườ ợ ị gián đoạn (hình bên trái) Trườ ợ ừ ố ng h p form b ng h p t ch i nhậ ả p form (hình bên ph i) ................................................................................... 50 Hình 3.16. Trườ ợ ng h p Chatbot không hi i dùng ểu ý ngườ ................................. 51 Hình 3.17. Bi ng kê m tin c y d ểu đồ thố ứ ộ c đ ậ ự đoán ý định (intent)................. 53 Hình 3.18. Bi ng kê m tin c y d ểu đồ thố ứ ộ c đ ậ ự đoán thự ể c th (entity) .............. 53 Hình 3.19. Bi ma tr n nh m l ểu đồ ậ ầ ẫ ữ n (Confusion matrix) gi a các nhãn dự đoán và nhãn đúng trong tác vụ ại ý đị phân lo nh......................................................... 54 Hình 3.20. Bi ma tr n nh m l ểu đồ ậ ầ ẫ ữ n (Confusion matrix) gi a các nhãn dự đoán v trích xu à nhãn đúng trong tác vụ ất thực thể...................................................... 55 Hình 3.21. Thang đo so sánh điểm intent c a 3 c u hình ủ ấ .................................... 56 Hình 3.22. Thang đo so sánh điểm entity c a 3 c u hình ủ ấ .................................... 56
  • 10. v DANH M C B Ụ ẢNG B ng 3.1. Thông s ả ố đo intent...............................................................................52 B ng 3.2. Thông s ả ố đo entity ...............................................................................52 B ng 3.3. K t qu m intent c ả ế ả so sánh điể ủ ấ a 3 c u hình ........................................ 56 B ng 3.4. K t qu m entity c u hình ả ế ả so sánh điể ủa 3 cấ ........................................57
  • 11.
  • 12. 1 M U Ở ĐẦ 1. Đặt vấn đề Ngày nay công ngh có m t trên m ệ ặ ọi lĩnh vực, vi c s ệ ố hóa giúp cho con người giả ế ữ ệ ặp đi lặ ạ ệc đượ ạt độ m thi u nh ng công vi c l p l i, giúp công vi c ho ng chính xác và năng suất hơn. Chatbot cũng là một m ng quan tr ng trong công ngh thông ả ọ ệ tin hi nay, nó có m t trong m ch, ện ặ ọi lĩnh vực như kinh doanh, ngân hàng, du lị giáo d c, y t ụ ế... Do đặ ệ ủ ạt độ ủ ế ề ế c thù công vi c c a tôi ho ng ch y u v chuyên ngành k toán, nên m i ngày i n u ti p nh ỗ độ ngũ nhân viên tư vấ đề ế ận hàng trăm, hàng nghìn tin nhắn từ phía khách hàng liên quan đến hướng d n s d ẫ ử ụng, tư vấn, bán hàng và hỗ tr tr ợ ả ấ ả ẩm. Để đả ả ận đượ ự ỗ b o trì nâng c p s n ph m b o khách hàng luôn nh c s h ợ t t nh t, doanh nghi p c n tuy n thêm nhân viên h và th t p hu ố ấ ệ ầ ể ỗ trợ ời gian để ậ ấn một người thông thường là 1 tháng. V i s h ớ ự ỗ trợ ủ c a Chat-bot s giúp tr l ẽ ả ời được nh n ữ ỏi thườ ặ ủ ả năng hoạt độ ả ng câu h ng g p c a khách hàng, có kh ng 24/7 và ph h i khách hàng ngay l p t ng th i gi m t i kh ng công vi c c nhân ồ ậ ức, đồ ờ ả ả ối lượ ệ ủa viên h và giúp doanh nghi p ti ỗ trợ ệ ế ệ t ki m chi phí. Hiểu đượ ầ ọng đó, tôi đã chọn đề c t m quan tr tài “ ự ứ ụ Xây d ng ng d ng Chatbot tư vấn khách hàng s d ng các k thu t h c sâu ử ụ ỹ ậ ọ ” b ng nh ng ki ằ ữ ến thức tìm hi c và v i tinh th ểu đượ ớ ần hăng say, nghiêm túc. 2. M c tiêu nghiên c ụ ứ ủ ận văn u c a lu M c tiêu c a lu ụ ủ ận văn là tìm hiể ứ u, nghiên c u các k thu ỹ ậ ọ t h c sâu vào x lý ử ngôn ng t i dùng, trích ch n thông ữ ự nhiên NLU, NLP như phân loại ý định ngườ ọ tin và qu n lý h i tho ả ộ ại,… trong ứng d ng c là Chatbot h khách hàng. ụ ụ thể ỗ trợ Nghiên c u chuyên sâu mô hình Transformer và DIET, lu p trung ứ ận văn tậ đưa ra giả ự ứ ụ ền đóng (closed i pháp và xây d ng mô hình Chatbot ng d ng trong mi domain) có kh l i phù h p v i nh ng câu h ng t ả năng trả ờ ợ ớ ữ ỏi tương ứ ừ phía người dùng. V i bài toán ng nghiên c cung c p d ch v n m m k ớ đối tượ ứu là đơn vị ấ ị ụ phầ ề ế toán, luận văn sẽ ậ t p trung xây d ng mô h ng Chatbot h ự ệ thố ỗ trợ người dùng trong
  • 13. 2 nghi p v n h s d ng ph n m m d a vào n n t Rasa và áp d ng ệ ụ tư vấ ỗ trợ ử ụ ầ ề ự ề ảng ụ nhữ ế ứ ng ki n th c nề ảng để ể n t có th làm ch và tùy ch nh trên mã ngu n m này. ủ ỉ ồ ở 3. m vi tài Phạ đề - Nghiên cứu các phương pháp xử lý ngôn ng t nhiên phù h p cho Chatbot ữ ự ợ hướ ớ ng t i. - Nghiên c u mô hình h c sâu Transformer. ứ ọ - Nghiên cứu mô hình đa tác vụ DIET. - Thu th p và t ng h ậ ổ ợp các câu hỏi đáp ủa khách hàng trước đó để c t o b d ạ ộ ữ liệu huấ ệ n luy n. - Xây d ng thành ph n x lý ngôn ng t nhiên c Chatbot b ng công c ự ầ ử ữ ự ủa ằ ụ Rasa. - Xây d Chatbot thành service tích h p v i Website doanh nghi p. ựng ợ ớ ệ 4 u trúc lu . Cấ ận văn CHƯƠNG 1: TỔ Ề NG QUAN V CHATBOT: i thi Chương này sẽ giớ ệu nhữ ế ứ ổ ề ộ ệ ố ầ ủ ng ki n th c t ng quan v m t h th ng Chatbot, các thành ph n c a Chatbot và phân bi Chatbot. ệt các loại CHƯƠNG 2: CƠ SỞ Ế LÝ THUY T: i thi u khái ni m v Chương này giớ ệ ệ ề m ng -ron n kinh nhân t o, khái ni m deeplearning, nghiên c u mô hình h ạ nơ thầ ạ ệ ứ ọc sâu Transformer và DIET. CHƯƠNG 3: XÂY DỰNG VÀ CÀI ĐẶ Ứ Ụ T NG D NG CHATBOT: Chương này sẽ ớ ệ ả sơ đồ ấ ủ ệ ố gi i thi u Rasa framework, mô t c u trúc c a h th ng Chatbot t Nam, mô t Nhấ ả các bước xây d ng bài toán trên n n t ự ề ảng mã ngu n m ồ ở Rasa và đán ế ả ự h giá k t qu th c nghiệm. CHƯƠNG 4: K T LU N: Ế Ậ Chương này đưa ra những k t lu n c a quá trình ế ậ ủ nghiên c u và hoàn thi ứ ện s n ph ả ẩm, đánh giá và định hướng nghiên c u ti p theo. ứ ế TÀI LI U THAM KH Ệ ẢO: Liệ ệ ận văn tham khả t kê các tài li u mà lu o trên các ngu n khác nhau. ồ
  • 14. 3 CHƯƠNG 1: TỔ Ề NG QUAN V CHATBOT 1.1 Khái ni Chatbot ệm Chatbot là m t ph n m m trí tu nhân t o (AI) gi l p cu c h i tho i c a con ộ ầ ề ệ ạ ả ậ ộ ộ ạ ủ ngườ ằng văn bả ặ ọ ả ờ ự độ ắ ủa con ngườ i b n ho c gi ng nói, giúp tr l i t ng tin nh n c i thông qua các ng d ng tin nh n trên website ho n tho ứ ụ ắ ặc trên điệ ại di động. Chatbot i khách hàng qua tin nh n theo th i gian có khả năng tương tác vớ ắ ờ thự o đó, khách hàng sẽ ả c 24/7, d không ph i chờ đợi lâu để nhận được sự ỗ ợ ừ h tr t doanh nghi i nhau qua các n ệp. Ngày nay, con người có xu hướng tương tác vớ ền t ng nh n tin. Theo th ả ắ ống kê của Facebook Messenger đầu năm 2020, hơn 61% số khách hàng đượ ỏ ằ ắ ậ ệ ế c h i cho r ng, nh n tin là cách thu n ti n giúp nhanh chóng k t n i v i các doanh nghi p h c n. T i Vi t Nam, Zalo là ng d ng trò chuy n có ố ớ ệ ọ ầ ạ ệ ứ ụ ệ nhiều ngườ ử ụ ấ ới hơn 100 triệ i s d ng nh t v u tài kho c s h ản. Do đó, việ ở ữu m t Chatbot c tích h n thông là thi t y i v i m i doanh ộ đượ ợp đa kênh truyề ế ếu đố ớ ọ nghiệp. Cũng bởi Chatbot hỗ trợ con người th c hi n t ự ệ ự động các công vi c t n nhi ệ ố ều thờ ấ ệ ế ệm đượ ả ớ i gian nh t, giúp các doanh nghi p ti t ki c kho n chi phí l n cho nhân sự. Đội ngũ nhân viên được tối ưu nhiệm v , t p trung x ụ ậ ử các công vi c chuyên lý ệ sâu m Ngày nay Chatbot là m t ch nóng và nhi u công ty ở ức độ khó hơn. ộ ủ đề ề đang hy vọng phát triển để có nh ng cu c trò chuy n t nhiên không th phân bi ữ ộ ệ ự ể ệt v i b các k thu t NLP và u này thành ới con ngườ ằng ỹ ậ Deep Learning để biến điề hiệ ự n th c. Chatbot chia thành 2 lo i [1] m (open domain) và mi g (close ạ miền ở ền đón domain). Mi n m là mô hình tr l i t ề ở ả ờ ự động cho phép người dùng có th tham gia ể trò chuy n v i b t k nào, không nh t thi t ph i có m t m c tiêu rõ ràng ệ ớ ấ ỳ chủ đề ấ ế ả ộ ụ hay m nh c nào. Mi ng t p trung vào m t ch c ví ột ý đị ụ thể ền đóng thườ ậ ộ ủ đề ụ thể d : th i ti t, du l ch, mua s m, y t t p trung vào xây ụ ờ ế ị ắ ế… Trong luận văn này tôi sẽ ậ d ng Chatbot thu c lo i mi ự ộ ạ ền đóng, cụ thể là bài toán hỗ trợ khách hàng mua hàng, tư vấn và hướ ẫ ử ụ ng d n s d ng.
  • 15. 4 1.2 Các thành ph n c Chatbot ầ ủa Chatbot ng c u thành t 3 thành ph n chính [2]: thành ph n hi thông thườ ấ ừ ầ ầ ểu ngôn ng t nhiên (NLU), thành ph n qu n lý h tho i (DM) và thành ph n sinh ữ ự ầ ả ội ạ ầ ngôn ng (NLG) i thành ph n x lý m t tác v riêng bi ữ . Mỗ ầ ử ộ ụ ệt: - NLU: là quá trình xử lý để hiểu ngôn ng t nhiên, thành ph n giúp Chatbot ữ ự ầ hiểu được ý định ngườ ấ ự ể i dùng (intent) và trích xu t các th c th (entity) trong câu. Khi ngườ ậ ỏi “ ẽ ầ ử i dùng nh p câu h Giá s n ph m A03 bao nhiêu? ả ẩ ” Chatbot s c n x lý, b i vì Chatbot không hi c ngôn ng i cho NLU s chuy n nó ở ểu đượ ữ con ngườ ẽ ể thành d u có c u trúc, t phân tích câu h i trên v ữ liệ ấ ừ đó có thể ỏ ới ý định là “hỏi giá 3 ”, thực thể ả ẩm “ là s n ph A0 ”. - DM: Qu n lý h i tho i có nhi m v ng (action) ti ả ộ ạ ệ ụ xác định được hành độ ếp theo d a vào tr c ng c nh c a h i tho Các ng ự ạng thái hành động trước đó hoặ ữ ả ủ ộ ại. ữ c nh c a h i tho i s c h c qua k ch b n d ng s n (story). X lý truy xu t d ả ủ ộ ạ ẽ đượ ọ ị ả ự ẵ ử ấ ữ liệ ừ u t hệ thống khác thông qua API ho c x lý logic trong h i tho ặ ử ộ ại cũng sẽ ợ đư c thự ệ ầ c hi n trong thành ph n này. - NLG: là thành ph n bao g m nhi u m u câu tr l ầ ồ ề ẫ ả ời đã được định nghĩa trước (pre-defined template) và ph thu ụ ộc vào hành động được d DM k ự đoán ở ết h p v i chính sách (policy) c a h l i dùng. Ví ợ ớ ủ ệ thống để đưa ra câu trả ời cho ngườ d câu h c m u câu ụ ở ỏi “ ”, ta sẽ Giá s n ph m A03 bao nhiêu? ả ẩ định nghĩa trướ ẫ “ ”, và ở ầ Chào anh ch , giá s n ph m {ma_san_pham} giá {gia_tien} ị ả ẩ ạ thành ph n DM h ng s l c thông tin mã s n ph m thông qua NLU và g n API ệ thố ẽ ấy đượ ả ẩ ọi đế c a h l y giá ti n, t t qu NLG tr v s ủ ệ thống khác để ấ ề ừ đó kế ả ả ề ẽ là “Chào anh chị, giá s n ph ả ẩm A03 giá 300.000đ”.
  • 16. 5 Hình 1.1. Minh h a các thành ph n c ọ ầ ủa Chatbot [3] 1.3 Các lo Chatbot ại 1.3.1 Rule-based Chatbot Rule-based Chatbot t m d ch là Chatbot d a theo lu ra s n, hay ạ ị ự ật được đề ẵ còn đượ ọ ạ ộ ạ ở ổ ế c g i là Chatbot d ng menu/button, là m t d ng Chatbot tr nên n i ti ng sau khi Facebook cho ra m t n n t ng Messenger cho phép cá nhân ho c doanh ắ ề ả ặ nghi p t o ra bot h khách hàng t ng. Xây d Chatbot theo Rule-based ệ ạ ỗ trợ ự độ ựng là việc định nghĩa các luậ ặc đưa ra các mẫu có trướ t ho c mà Chatbot muốn hướng đế để n, thao tác với Chatbot ứng d ng s ụ ẽ ử s d ng c nút b m, thanh menu ho c h ụ ả ấ ặ ệ thống điều hướng i dùng l a ch n. Gi ng v i vi c g n t để ngườ ự ọ ố ớ ệ ọi điện đế ổng đài h khách hàng ta c n ch n ngôn ng , ch n phòng ban ph ỗ trợ ầ ọ ữ ọ ụ trách sau đó mới được chuyển hướng đến hỗ trợ viên thích h p, Rule-based Chatbot ợ cũng hoạt động như vậ ỉ ẽ y ch khác là s hiể ị ấ ặ n th các nút b m ho c menu trên cử ổ a s chat.
  • 17. 6 Hình 1.2. Chatbot h nút b ỗ trợ ấm để ủa Domino’s Pizza thao tác c Hình phía trên là ví d c ụ ủa Chatbot dạng menu/button, đây là ảnh của Chatbot h c a hàng Domino Pizza trên ng d ệ thống ử ’s ứ ụng Messenger Facebook, người dùng có th s d t hàng c liên h h thông qua ể ử ụng để đặ , theo dõi đơn hàng hoặ ệ ỗ trợ điều hướ ụ ếu ngườ ấn nút “ ” cuộ ng menu. Ví d n i dùng Customer support c trò chuy n s c chuy n h viên tr c ti L i th c a Rule-based ệ ẽ đượ ển hướng đế ỗ trợ ự ếp. ợ ế ủ Chatbot so v i các lo Chatbot khác là hi n th c t t c các l a ch n, giúp ớ ại ể ị đượ ấ ả ự ọ người dùng đưa ra quyết định chính xác mà không cần suy nghĩ sẽ ỏi như thế h nào và câu h Chatbot có hi c không. Rule-based Chatbot c s d ng khi ỏi đó ểu đượ đượ ử ụ ngườ ố ự ệ ột hành độ ụ ể ụ đặt vé máy bay, đặ i dùng mu n th c hi n m ng c th , ví d t vé xem phim. Rule-based Chat d dàng c p nh c ph bot cũng sẽ ễ ậ ật hơn, thay vì việ ải huấn luy n l Chatbot m i khi có d u m i, ta ch c n thêm nút ho c menu và câu ệ ại ỗ ữ liệ ớ ỉ ầ ặ phả ồ ủ đề ới đó, cũng không cầ ả cũng n h i cho ch m Chatbot n ph i training. Chatbot
  • 18. 7 s không g ẽ ặp trường h p không hi ợ ểu ý định c a khách hàng, v i vi c thi t k thêm ủ ớ ệ ế ế nút ch d n nhân viên h ọn “ ” sẽ Liên h c ti p ệ trự ế ẫn khách hàng đế ỗ trợ trong trường h p không tìm th y l a ch n phù h giao di n chat. M t s n n t ng giúp xây ợ ấ ự ọ ợp ở ệ ộ ố ề ả d ng Rule-based Chatbot ự như Manychat, Chatfuel, Botsify… Bên c nh m nêu trên, Rule-based Chatbot p i h ạ những ưu điể cũng gặ phả ạn chế, mộ ữ ạ ế ể ả ờ ỏ t trong nh ng h n ch là không th tr l i câu h i khách hàng mà Chatbot không được định nghĩa trướ ần đi qua nhiều bướ ới đến đượ c. Khách hàng c c m c câu tr l i phù h p, do v y trong vài tr ng h p s n tr i nghi ả ờ ợ ậ ườ ợ ẽ ảnh hưởng đế ả ệm người dùng. 1.3.2 -based Chatbot AI Khác v i Rule-based Chatbot, AI-based Chatbot không s d ng các ớ ử ụ menu/ s d ng trí tu nhân t o AI button để điều hướng người dùng, thay vào đó ử ụ ệ ạ để ử ắ ả ồ ến ngườ x lý tin nh n và ph n h i đ i dùng. Kho l rí tu nhân t o phát tri n m nh m , Chatbot ảng 5 năm trở ại đây, t ệ ạ ể ạ ẽ cũng ợ ị ệ ệ ạ ệ ọ đư c trang b thêm công ngh trí tu nhân t o và công ngh h c máy giúp Chatbot có kh t h c t ng cu c trò chuy n th c t v i dùng ả năng ự ọ ừ nhữ ộ ệ ự ế ới ngườ để tr lý ở nên thông minh hơn theo thờ ệ ử i gian. Công ngh x ngôn ng t nhiên NLP ữ ự giúp Chatbot AI hi nh trong câu nói c ng ph ểu ý đị ủa người dùng và đưa ra nhữ ản h i dùng không ph i nh p nh ng câu r p k ồi chính xác. Ngườ ả ậ ữ ậ huôn máy móc để giao tiếp với Chatbot mà hoàn toàn có thể diễn tả ý định theo cách c a riêng mình. ủ Nhờ xác định các t khóa, các bi n trong câu nói c ừ ế ủa người dùng mà Chatbot thông minh hi i dùng. ểu và đối đáp linh hoạt với ngườ Bên c Chatbot AI có kh p nhi n ích b ạnh đó, ả năng tích hợ ều tính năng tiệ ổ sung, nh m gi i quy ng các bài toán c a doanh nghi p. Chatbot không ằ ả ết đa dạ ủ ệ những có thể tư vấn, cung c p thông tin v các s n ph ấ ề ả ẩm d ch v c a doanh nghi p, ị ụ ủ ệ mà Chatbot còn có th c hi n nhi u tác v p thông tin khách hàng, ể thự ệ ề ụ như thu thậ đặt hàng, đặ ị ẹ t l ch h n.
  • 19. 8 1.4 Các n n t ng xây d Chatbot ề ả ựng Chatbot m xa l v i dùng Internet nói chung đã không còn là khái niệ ạ ới ngườ và các doanh nghi p nói riêng. n nay nhi u n n t ng xây d ng Chatbot ệ Hiệ ề ề ả ự được ra đờ ỗ ợ ờ ệ ự ả năng đưa ra câu trả ờ i, h tr ngư i dùng giao di n tr c quan và kh l i phù h p v i câu h i c i dùng m t cách chính xác ợ ớ ỏ ủa ngườ ộ như Chatfuel, FPT.AI Conversation, Harafunnel... c doanh nghi p có th t xây d h ng Hoặ ệ ể ự ựng ệ thố Chatbot d a vào các framework n i ti Microsoft Bot Framework, Rasa, ự ổ ếng như Dialogflow... Sau đây là mộ ố ề ả ổ ế ế ớ ấ t s n n t ng Chatbot n i ti ng trên th gi i mà b t kì cá nhân hoặ ệp nào cũng có thể ế ậ c doanh nghi ti p c n: Chatfuel Chatfuel i m c tiêu làm cho vi c xây d ra đời vào mùa hè năm 2015 vớ ụ ệ ựng bot tr nên d dàng v i b t k ai. Hi n Chatfuel là n n t ở ễ ớ ấ ỳ ệ ề ảng hàng đầu để xây dựng bot trên Facebook Messenge t r, ự động hóa giao ti p v ế ới con người thông qua các ứ ụ ắ Các tính năng cơ bả ủ ồ ạ ự ng d ng nh n tin. n c a Chatfuel bao g m: t o Chatbot t độ ả ờ ắ ạ ả ế ị ạ ữ ng tr l i tin nh n khách hàng t , o qu ng cáo Facebook ti p th l i cho nh ng người dùng đã tương tác vớ ủ ạ ỗ ợ ọ i Fanpage c a b n, h tr l c danh sách khách hàng tiềm năng ị ử ệ thông qua l ch s trò chuy n với khách hàng. Ưu điể ủ ế ề ả ở ả ể đế ả m c a Chatfuel khi n n n t ng này tr nên thu hút ph i k n là b n dùng th hoàn toàn mi n phí. Vi c thi t l p Chatbot trên n n t ử ễ ệ ế ậ ề ảng này cũng rất đơn giả ầ ả ậ ễ ạ ờ vào các thư việ n vì không c n ph i l p trình, mà d dàng t o bot nh n m u. Ngoài tích h p trên Facebook, Chatfuel còn tích h ẫ ợ ợp được v i các ớ ứng d ng ụ m ng xã h ạ ội khác như Instagram, Twitter, Youtube… Các khách hàng c a Chatfuel, bao g m t các doanh nghi p v a và nh ủ ồ ừ ệ ừ ỏ đến các thương hiệ ễ ậ ế ấ ế ớ ộ ố ớ ất như u d nh n bi t nh t trên th gi i. M t s ách hàng l kh n nh Adidas, T - Mobile, LEGO. FPT.AI Conversation N n t ng t Chat-bot FPT.AI Conversation là s n ph c bi ề ả ạo ả ẩm được FPT đặ ệt đầu tư ể ề ả ạ ậ ứ ụ ệ ạ ớ phát tri n Là n . n t ng t o l p Chatbot ng d ng trí tu nhân t o v i các
  • 20. 9 công ngh h c máy và x lý ngôn ng t nhiên tiên ti n nh t, FPT.AI Conversation ệ ọ ử ữ ự ế ấ cho phép ngườ ạ ự ị ả ệ ớ i t o bot xây d ng các k ch b n trò chuy n khác nhau v i khách hàng và theo dõi l ch s trò chuy Chatbot ị ử ện để có thể hiểu và tương tác với khách hàng m t cách t nhiên, thân thi Chatbot tích h p trên các giao di n nh n tin ộ ự ết. ợ ệ ắ ph bi ổ ến như Facebook Messenger, Zalo, livechat trên website hoặ ấ ứ c b t kì ng d ng, giao di n trò chuy n s n có nào c a doanh nghi ụ ệ ệ ẵ ủ ệp. Hình 1.3. Giao di n n n t ng Chatbot FPT.AI Conversation ệ ề ả Harafunnel Là m t s n ph m c a t n t ng công ngh h ộ ả ẩ ủ ập đoàn Haravan, là nề ả ệ ỗ trợ người dùng t t Chatbot trên n n t ng Facebook Messenger và website c a doanh ự ạo ề ả ủ nghi p. Chat-bot s t ng tr l i theo tình hu ng thi t l Chatbot ệ ẽ ự độ ả ờ ố ế ập trước. được xây d ng trên n n t ng Harafunnel s có thêm ch o ra ph u bán hàng t ự ề ả ẽ ức năng tạ ễ ự động, để ọc và đánh giá các khách hàng tiềm năng l . V i công c Chatbot này, doanh nghi p có th thu th p d u khách hàng ớ ụ ệ ể ậ ữ liệ đa kênh, chăm sóc khách hàng tự động 24/7 và có th thi t l p quy trình marketing ể ế ậ hoàn toàn t ng mi n phí. a Harafunnel là g i tin nh ự độ ễ Các tính năng chính củ ử ắn hàng lo t ạ cho người dùng đã g i tin nh n cho Fanpage hoàn toàn mi n phí, t ử ắ ễ ự động khở ạ ảng cáo Facebok để ế ị ạ ềm năng đã tương tác vớ i t o qu ti p th l i khách hàng ti i Fanpage nhưng chưa mua hàng, ẩ ậ ố ạ ấ n bình lu n thông minh ch ng tình tr ng m t khách, t ng tr l i tin nh n, bình lu n khách hàng theo k ch b n so n s ự độ ả ờ ắ ậ ị ả ạ ẵn và tự độ ạ ả ng phân lo i khách hàng, qu n lý bán hàng hi u qu trên m ng xã h ệ ả ạ ội.
  • 21. 10 Hình 1.4. Giao di n n n t ng Chatbot Harafunnel ệ ề ả Dialogflow Dialogflow là Chatbot s d ng AI do Google cung c p nh m giúp các l ử ụ ấ ằ ập trình viên dễ dàng hơn khi lập trình các s n ph m có giao ti p gi ả ẩ ế ữa người dùng với Chatbot thông qua các đoạn h i tho i b ộ ạ ằng văn bản ho c gi ng nói. V i Dialogflow ặ ọ ớ các nhà phát tri n có th t o ra Chatbot ông minh s d ng k thu t h c máy c ể ể ạ th ử ụ ỹ ậ ọ ủa Google nghiên c u và th nghi ng d l c a h , hi ứ ử ệm trên lượ ữ liệu khổng ồ ủ ọ ểu được s c thái c a ngôn ng và s có c h i, c c i thi n theo ắ ủ ữ ẽ khả năng họ ỏ ngày càng đượ ả ệ thời gian. Dialogflow có th d dàng kh i ch y trên nhi u kênh trò chuy ể ễ ở ạ ề ện như Google Assistant, Facebook Messenger, Telegram, Skype, Line… ể Đi m m nh c ạ ủa Dialogflow là cung c p SDK cho 14 ngôn ng l p trình giúp nhà phát tri n d dàng ấ ữ ậ ể ễ l p trình, h trên 20 ngôn ng trên th i, có kh c thái c ậ ỗ trợ ữ ế giớ ả năng phân tích sắ ủa cuộ ện và đặ ệ c trò chuy c bi t dễ hiể ọ ố ới ngườ ớ ế ậ u và h c đ i v i m i ti p c n.
  • 22. 11 1.5 M ng d ng c Chatbot ột số ứ ụ ủa Ngày nay Chatbot có th t hi b y cho s ể xuấ ện ở ất kì lĩnh vực nào, là bàn đẩ ự phát tri n c a các doanh nghi p. Nó giúp nâng cao tr i nghi m khách hàng b ng ể ủ ệ ả ệ ằ cách hi n di ệ ện ở các kênh khách hàng thường xuyên tiếp xúc. Dưới đây là các lĩnh v c n i b Chatbot ng d ng: ự ổ ật được ứ ụ - Chăm sóc khách hàng: M i m t doanh nghi p hay c ỗ ộ ệ ửa hàng online đều cần có d ch v u s d n th ng, hi ị ụ chăm sóc khách hàng. Nế ử ụng phương pháp truyề ố ệu suấ ả năng chăm sóc khách hàng sẽ ố ấ t và kh t n r t nhi u chi phí nhân s ề ự và khó đạt đượ ộ c đ chính xác cao. - Giả ả ự ế ố ấ ự ể i trí: Các Chatbot gi i trí tr c tuy n t t nh t d a trên AI có th là Mitsuku, Rose, Insomno Bot…ngườ ể ệ ớ i dùng có th nói chuy n v i Chatbot hàng giờ ẽ ả ờ ỏi theo cách nhân văn nhấ ểu đượ , và Chatbot s tr l i các câu h t và hi c tâm trạ ủ ớ ữ mà người dùng đang sử ụ ng c a v i ngôn ng d ng. - Thời ti Poncho là Chatbot ết: được thi t k ế ế để ở tr thành m t chuyên gia th ộ ời tiế ự ờ ế t, ngoài d báo th i ti t Chatbot này còn g i các c nh báo khi th i ti t x ử ả ờ ế ấu đến v i dùng. ới ngườ - Nhà hàng và các ngành bán l : ẻ Khách hàng được Chatbot chào đón và được cung c p các tùy ch n v c thông ấ ọn menu như chọ ị trí chỗ ngồi, thanh toán và đượ báo khi nào h có th b u l ọ ể ắ ầ t đ ấy đồ ăn củ ọ a h . - Khách s n và Du l ch: Chatbot có th giúp khách s n trong m t s ạ ị ể ạ ộ ố lĩnh vực, bao g m qu n lý th i gian, d ch v khách hàng và gi m chi phí nhân l Chatbot ồ ả ờ ị ụ ả ực. đượ ập trình để ệ c l trò chuy n v i khách b ng các ngôn ng khác nhau, khách hàng ớ ằ ữ có th nói chuy n b ng ngôn ng ể ệ ằ ữ địa phương củ ễ dàng hơn. a mình d - Y t : Chatbot này s h i v các tri u ch ng, các thông s và l ch s ế ẽ ỏ ề ệ ứ ố cơ thể ị ử y t n m t danh sách các nguyên nhân gây ra h u h t các tri ế, sau đó biên soạ ộ ầ ế ệu chứ ế ạ ứ ự ọ ể ớ ẫ ng và x p h ng chúng theo th t nghiêm tr ng. Chatbot có th hư ng d n b u tr các b nh có th t i mà không c ệnh nhân điề ị ệ ể ự chữa khỏ ần đến bác sĩ. - Hàng không: khách hàng có th n tài li u chuy n bay c a mình qua tin ể nhậ ệ ế ủ nhắ ặ n, ho c email, bao g m xác nh t lên máy bay, ồ ận đặ vé, thông báo đăng ký, thẻ và c p nh t tr ng thái chuy n bay. ậ ậ ạ ế
  • 23. 12 - Giáo d i dùng có th n yêu c u tr c tuy n vào các website, ục: ngườ ể nhắ tin ầ ự ế fanpage c tìm hi u v ng, gi c m ủa nhà trường để ể ề trườ ải đáp các thắ ắc như tuyển sinh, chương trình đào tạ ấ ợ o, ch t lư ng giáo dục. - Trợ lý cá nhân: s d ng Chatbot ử ụ như một tr lý cá nhân o s ợ ả ẽ thay đổi cuộc s ng m t cách tri ố ộ ệt để. Chúng có thể hoạt động để ỗ h trợ chúng ta như một c v ố ấn tài chính, ki m soát chi phí, ki m tra thông tin tài kho n ngân hàng ể ể ả … và hỗ trợ chúng ta qu n lý tài chính hay cu ng m t cách cá nhân hóa và an toàn. ả ộc số ộ - Đưa ra kế ả ế ậ ậ ứ ệ t qu tìm ki m, c p nh t tin t c: Các doanh nghi p, trang báo… có th thi t k ể ế ế nh ng ữ Chatbot để cung cấp thông tin thường xuyên cho người dùng, thông tin đượ ậ ậ thường xuyên giúp ngườ ầ ả ể c c p nh t i dùng không c n ph i tìm hi u trên trình duy ng th i giúp doanh nghi ệt, đồ ờ ệp đưa thông tin mớ ủa mình đế i c n với khách hàng m t cách nhanh chóng và hi ộ ệu quả nhất. Hình 1.5. Chatbot Messenger c a trang CNN ủ
  • 24. 13 CHƯƠNG 2: CƠ SỞ Ế LÝ THUY T 2.1 Cơ bả ề n v Deep learning Deep learning [4] hay g i là h c sâu là t p h p con c a Machine Learning ọ ọ ậ ợ ủ được l y c m h ng t c u trúc và ch ấ ả ứ ừ ấ ức năng của bộ não con người. Nó có tác dụng h cho máy tính t n luy có th c hi tác v ỗ trợ ự huấ ện chính nó để ể thự ện các ụ tương t u này chính là giúp máy tính b i cách h ự như con người. Điề ắt chước con ngườ ọc hỏi và suy nghĩ. Các h ng c a Deep learning có kh i thi n hi u su t c a chúng ệ thố ủ ả năng cả ệ ệ ấ ủ sau nhi u l n luy n (training) ho c cung c p d l n ng, ề ần huấ ệ ặ ấ ữ liệu đủ ớ . Thông thườ nh hu y ững máy móc đã ợ đư c ấ ệ đủ ự ậ n luy n s tin c thì sẽ được mang đi phụ ụ c v cho nh ng công vi ái xe, phát hi ữ ệc như: l ện c d ỏ ại,… Ứ ụ ủ ỗ ợ ệ ị ữ ạ ng d ng c a Deep learning h tr cho vi c d ch ngôn ng , phân lo i các hình ảnh, nhận dạng giọng nói. Chính vì th , nó có th ế ể được ứng dụng để giải quyết m i nhu c u c n nh n d ng m u mà không c n s can thi p c ọ ầ ầ ậ ạ ẫ ần đế ự ệ ủa con người. Deep learning có th x lý d t b não con ể ử ữ liệu theo cách tương tự như mộ ộ ngườ , đ ể ệ ở đây là con ngườ ẽ ả ạ ột chương i i m khác bi t chính i s không ph i d y m trình Deep learning biết một con mèo trông như thế ỉ ầ ấ nào, mà ch c n cung c p cho nó đủ hình ả ầ nh c n thiết v loài mèo, và nó s t mình hình dung, t h ề ẽ ự ự ọc. Các bước cần làm như sau: - Cung c p cho máy ấ nhiề ộ ữ ệ ả ề u b d li u nh v mèo và các con v t khác. ậ - Thu t toán s m tra m, chi ti t chung gi a các ậ ẽ kiể ảnh để xem các đặc điể ế ữ b nh. ức ả - M i b nh s c gi i mã chi ti i nhi u c , t các hình d ỗ ức ả ẽ đượ ả ết dướ ề ấp độ ừ ạng l n, cho n các ô nh và nh a. N u m t hình d ng ho ớ đế ỏ ỏ hơn nữ ế ộ ạ ặc các đường được l p l i nhi u l n, thu t toán s g ặ ạ ề ầ ậ ẽ ắn nhãn nó như là mộ ặ ọ t đ c tính quan tr ng. - Sau khi phân tích đủ ả hình nh c n thi t, thu t toán gi ầ ế ậ ờ đây ẽ s biết được các m u nào cung c p b ng ch ng rõ ràng nh t v mèo và t t c ẫ ấ ằ ứ ấ ề ấ ả những gì con người phả ỉ ấ i làm ch là cung c p các d u thô. ữ liệ
  • 25. 14 Nói m t cách tóm t Deep learning là m t i Machine learning mà trong ộ ắt ộ loạ đó máy tự đào tạo chính nó. Deep learning đòi hỏi r t nhi u d ấ ề ữ liệu đầu vào và sức m c tri n khai b ạnh tính toán hơn là Machine learning, nhưng nó đã bắt đầu đượ ể ởi các công ty công ngh l , Google t trong ệ ớn như Facebook, Amazon . Trong đó, mộ nh ng ữ ứ ụ ng d ng n i ti ng nh t là AlphaGo, m t máy tính có th vây v ổ ế ấ ộ ể chơi cờ ới chính bản thân nó cho đến khi nó có th d ể ự đoán những đường đi nước bước chính xác nh i nhi ch trên th ấ ủ t đ để đánh bạ ều nhà vô đị ế giới. 2.2 M -ron h i quy RNN ạng nơ ồ M -ron h i quy (RNN) là m t mô hình h c sâu x lý d u tu n t ạng nơ ồ ộ ọ ử ữ liệ ầ ự đượ ử ụ ổ ế ụ ử ữ ự như dị c s d ng ph bi n trong các tác v x lý ngôn ng t nhiên (NLU) ch máy, tóm tắt văn bản, nh n di n gi ng nói. ậ ệ ọ Giống với con người khi ti p nh n ngôn ế ậ ngữ, chúng ta s x lý chúng m t cách tu n t , t phía sau s ẽ ử ộ ầ ự ừ ẽ phụ thu c vào các t ộ ừ trước đó, ý tưở ạ ế ế ộ ạng lướ ầ ả năng xử ng t o ra RNN là thi t k m t m i th n kinh có kh lý thông tin m t cách tu n t . C ộ ầ ự ụ thể, đầu ra ở ời điể th m hi n t i ph thu c vào k ệ ạ ụ ộ ết quả ủ ầ tính toán c a các thành ph n ở ời điểm trướ ộ th c. Nói cách khác, RNN là m t mô hình có bộ nhớ, có thể nhớ thông tin được tính toán trước đó, không giống như các m ng th n kinh truy n th ạ ầ ề ống là thông tin đầu vào hoàn toàn độ ậ ớ c l p v i thông tin đầu ra. Hình 2.1 -ron h i quy [5] . Mạng nơ ồ
  • 26. 15 Các t truy n vào m c x lý gi ng nhau các tham s ừ ề ạng RNN đượ ử ố và ố được tính như sau: -   u (input) t m là từ đầ vào ại thời điể t,  có th là one-hot vector. ể -  là tr ng thái ạ ẩn t i th ạ ời điểm t, dùng để ghi nh thông tin các t ớ ừ phía trước nó c tính d a trên các tr ng thái và đượ ự ạ ẩn trước đó và từ đầ ệ ạ u vào hi n t i.   󰇛    󰇜 (2.1) Vector o v giá tr trong ma tr n b ng 0.  thông thường được khởi tạ ới tất cả ị ậ ằ -   là k t qu u ra (output) t i th m t, d p theo d a vào ế ả đầ ạ ời điể ự đoán từ tiế ự xác su t trên toàn b trong t ấ ộ các từ ừ điển.    󰇛  󰇜 (2.2) Mô hình RNN s d ng chung b tham s U, V, W cho t t c Mô ử ụ ộ ố ấ ả các bước. hình RNN không nh t thi t x lý output cho t ng input, ví d nhi m v d ấ ế ử ừ ụ ở ệ ụ ự đoán c m xúc c ả ủa câu ta ch c ỉ ần quan tâm đế ế n k t qu i cùng cho nên ch c ả cuố ỉ ần output c a t ủ ừ cuối cùng, b i vì tr ng thái ở ạ ẩ ở n từ cuối cùng lưu trữ ấ t t c thông tin c a các ả ủ t V m t lý thuy t, RNN có th thông tin c dài b t k ừ trước đó. ề ặ ế ể nhớ huỗi có độ ấ ỳ, nhưng trong thự ế ỉ ể ớ ừ ột vài bước trướ c t mô hình này ch có th nh thông tin t m c đó, hiệ ợ ọ n tư ng này g i là Vanishing Gradient. Việ ử ụ ỹ ậ c training mô hình RNN s d ng k thu t Backpropagation Through Time (BPTT). T i th so sánh v i giá tr u ra mong mu n ạ ời điểm t ớ ị đầ ố và giá trị đầ ự đoán hiệ ạ u ra d n t i   c hàm m t mát s d ng cross-entropy. ta tính đượ ấ ử ụ   󰇛     󰇜     (2.3) Mô hình h ng cách s d ng thu t toán Gradient descent [6] ọc bằ ử ụ ậ để tìm được điể ự ể ủ ố ự ị đạ ủ ấ m c c ti u c a hàm s d a trên giá tr o hàm c a hàm m t mát    ,    ,    tương ứng v i b tham s U, V, W và c p nh t l i giá tr cho chúng. i v i tham ớ ộ ố ậ ậ ạ ị Đố ớ s U và V giá tr o hàm ch thu c vào m hi n t ố ị đạ ỉ phụ ộ thời điể ệ ại đang xét, nhưng v i tham s W thì l i khác, ví d ớ ố ạ ụ xét t = 3 ta được:                󰇛󰇜 Mà t i th m t = 3, ạ ời điể    󰇛    󰇜  thu c vào phụ ộ  và tương tự   thu c vào phụ ộ   . Dẫn đến ta đượ ứ c công th c:
  • 27. 16                                                    󰇛󰇜 Công th ng quát: ức tổ                   󰇛󰇜 Mà  luôn có giá tr trong kho ị ảng [-1,1] do sử d ng hàm tanh, d ụ ẫn đến        s n g n 0 theo hàm s u k càng l n cho nên các ẽ tiế ần đế ố mũ nế ớ ở vector vị trí đầu giá trị đạo hàm x p x 0 ấ ỉ khiến vi c c p nh t tham s W không ệ ậ ậ ố đáng kể ểu đơn giả ẽ , hi n mô hình s không h c thêm ọ đượ ở c gì nhữ ừ ị ng t v trí đầ ền ngượ u tiên trong quá trình truy c. Hiện tượ ọ ả ấ ệ ng này g i là Vanishing Gradient, x y ra khi hu n luy n các m u l p, khi n mô hình RNN kém hi u qu và ch có th ạng nơ ron nhiề ớ ế ệ ả ỉ ể lưu trữ thông tin ng n h n (Short-Term Memory) [7]. Khi hu n luy n, giá tr ắ ạ ấ ệ ị đạo hàm là thông tin ph n h i c a quá trình lan truy c, giá tr này tr nên ả ồ ủ ền ngượ ị ở vô cùng nh t i các l - u tiên khi n cho vi c c p nh t tr ng s ỏ ạ ớp nơ ron đầ ế ệ ậ ậ ọ ố m ng không x y ra. ạ thể ả Các mô hình như LSTM (Long Short-Term Memory) và GRU (Gated Recurrent Units) được ra đời để h n ch tình tr ng này x y ra b ng cách thêm ạ ế ạ ả ằ các tham s c c g . Nh ng c ng này giúp mô hình h ố ổng đượ ọi là “gates” ữ ổ ọc đượ ọ ọ c thêm các thông tin quan tr ng và xóa các thông tin không quan tr ng trong l n c a mô hình RNN. ớp ẩ ủ Nhưng v n không th ẫ ể giải quy t tri ế ệt để hiện tượng Vanishing Gradient, v i nh ớ ững câu độ dài lớn mô hình v n g p h ẫ ặ ạn ch trong quá trình h c và d ế ọ ự đoán, không những thế việc thêm các tham số khiến mô hình LSTM và GRU trở ứ nên ph c t p, th i gian n luy n ạ ờ huấ ệ lâu hơn rấ ề t nhi u. Trong luận văn này tôi s không áp d xây d ẽ ụng mô hình RNN để ựng Chatbot, thay vào đó sẽ nghiên cứu và áp d ng mô hình Transformer, m t mô hình h c sâu m nh m ụ ộ ọ ạ ẽ khắ ụ c ph c các nhược điể ố ữ ủ m c h u c a mô hình RNN.
  • 28. 17 2.3 Mô hình Transformer Transformer [8] là môt mô hình h c gi i thi ọc sâu đượ ớ ệu vào năm 2017, và đã trở ậ ện đạ ất trong lĩnh vự ử ữ ự thành thu t toán hi i nh c x lý ngôn ng t nhiên. Là tiền đề ạ t o ra BERT (Bidirectional Encoder Representations from Transformers) m t k thu t h c máy ng d ng mô hình Transformer h c bi u di n c ộ ỹ ậ ọ ứ ụ dùng để ọ ể ễ ủa các t t t nh t hi n t c ngo t l n cho c ng ừ ố ấ ệ ại và là bướ ặ ớ ộng đồ NLP năm 2019, và chính Google cũng đã áp dụ ụ ế ủ ọ ng BERT trong công c tìm ki m c a h . Trước khi được công b , h u h t các tác v x lý ngôn ng t nhiên s d ng ố ầ ế ụ ử ữ ự ử ụ kiế ạng nơ ồ ể ế ủa phương pháp này xả ở n trúc m -ron h i quy RNN, đi m y u c y ra những câu dài không thể tìm được m i liên h ố ệ giữa các t trong câu và t ừ ốc độ hu n ấ luy n m do x u vào m t cách tu n t . Transformer c ph c ệ chậ ử lý đầ ộ ầ ự ra đời đã khắ ụ đượ ả 2 nhược điể c c m này. 2.3.1 T ng quan mô hình Transformer ổ Giống như nhữ ị ng mô hình d ch máy khác, Transformer bao g m 2 thành ồ phần mã hóa (Encoder) i mã (Decoder). và giả Encoder là m p g m 6 l p riêng bi t x p ch ng lên nhau, s l ột ngăn xế ồ ớ ệ ế ồ ố ớp ở đây có thể ỉ ụ ộ ục đích từ ỗ ớ ồ tùy ch nh ph thu c vào m ng bài toán. M i l p bao g m 2 l u tiên là l p x u chú ý (Multi-head Attention) và l p con th ớp con, đầ ớ ử lý đa đầ ớ ứ hai đơn giả ộ ạ g nơ ề ẳ ế ố ần dư n là m t m n -ron truy n th ng (F -forward). K eed t n i ph (Residuals Connection) bao quanh hai l p con này ti ớ ếp theo đó là bướ ẩ c chu n hóa l p (Layer Normalization) giúp mô hình hu n luy n nhanh h i t ớ ấ ệ ộ ụ hơn và tránh mất mát thông tin trong quá trình huấn luyện. Decoder cũng đượ ấ ừ ớ ệ ố ớ ớ c c u thành t 6 l p riêng bi t (cùng s l p v i encoder). M i l p bao g m 2 l p con gi ng v i encoder và thêm m t l p Multi-head ỗ ớ ồ ớ ố ớ ộ ớ attention n m gi a giúp Decoder t ằ ữ ạo được mối tương quan với câu đầu vào. Gi ng ố v i Encoder k thu t Residual Connection và Layer N c áp ớ ỹ ậ ormalization cũng đượ d ng trên các l p con. Có m t s ụ ớ ộ ự thay đổi ở l p con Multi-head A ớ ttention đầu tiên, thay vì truy n t t c các t trong câu vào Decoder, ta s ề ấ ả ừ ẽ che đi các từ ở tương lai chưa đượ ịch đế c mô hình d n gọ cơ chế i là sked Multi-head A ention. Ma tt
  • 29. 18 Hình 2.2 mô hình Transformer [8] . Sơ đồ Chi ti ng c ransformer s ết cơ chế hoạ ộ t đ ủa T ẽ đượ ở ầ c trình bày các ph n sau. 2.3.2 Thành ph n mã hóa ầ 2.3.2.1 Vector hóa u vào câu đầ Cho đế ể n nay máy tính không hi u đượ ữ ế ỉ đọ ợ ớ ạ c ch vi t mà ch c đư c dư i d ng s hóa, vì v y ta c n bi u di n các t i d ng vector. Vi c chuy n hóa các t ố ậ ầ ể ễ ừ dướ ạ ệ ể ừ thành d ng vector s d ng thu t toán Word2Vec [9], d ạ ử ụ ậ ữ liệu đầu vào sẽ là các câu c a t p d n luy n, thu t toán d a vào v trí và ng c nh các t trong câu ủ ậ ữ liệu huấ ệ ậ ự ị ữ ả ừ để ự tương đồ ừ có nghĩa tương đồ ặ ổ ợ ẽ tính toán s ng, các t ng ho c b tr cho nhau s có các vector tương đồ ừ ự ế ậ ng nhau trong không gian t v ng. Có 2 cách ti p c n Word2Vec là Continuous bag of words (CBOW) và Skip-gram model:
  • 30. 19 - CBOW: thu t toán d ậ ự đoán từ trung tâm ở giữa câu b ng cách s d ng ng ằ ử ụ ữ c nh c a các t xung quanh t d ả ủ ừ ừ ự đoán. - Skip-gram model: ngược l i v i CBOW, thu t toán Skip-gram model s d ạ ớ ậ ẽ ự đoán các từ ừ ụ ộ ữ ả ủ ừ trung tâm đó xung quanh t trung tâm ph thu c vào ng c nh c a t trong câu. 2.3.2.2 Thành ph n mã hóa v trí (Positional Encoding) ầ ị Mô hình Transformer không x lý các t trong câu m t cách tu n t , cho nên ử ừ ộ ầ ự c n m ầ ột phương pháp để x lý th t c a các t trong chu ử ứ ự ủ ừ ỗi đầu vào. Để giải quyết bài toán này Tranformer c ng m c b ng word embedding vào ộ ột vector kích thướ ằ m u vào, v i vi c tính toán vector v s d ng hàm sinusoid: ỗi embedding đầ ớ ệ ị trí ử ụ  󰇛 󰇜         󰇛󰇜  󰇛 󰇜          󰇛󰇜 Trong đó ị ủ ừ ị ầ ử ứ pos là v trí c a t trong câu, PE là giá tr ph n t th trong i embeddings có độ dài dmodel. Hàm sin và cosin có d t n s và t n s này gi m d các chi ạng đồ thị ầ ố ầ ố ả ần ở ều l n d n. Hình ớ ầ dưới bi u di ể ễn được sự biến thiên c a màu s ủ ắc ở các v trí khác nhau ị c a t trong câu, ủ ừ ở chi u 0, giá tr ề ị thay đổi liên tục tương ứng v i màu s ớ ắc thay đổi liên t c, và t n s i này gi m d các chi u l ụ ầ ố thay đổ ả ần ở ề ớn hơn.
  • 31. 20 Hình 2.3 Minh h a bi nhi t Positional Encoding ọ ểu đồ ệ 2.3.2.3 t chú ý (Seft-Attention) Cơ chế ự Cơ chế ự Attention là cơ chế giúp Transformer tìm ra đượ t chú ý hay Self- c s liên quan gi a các t trong câu. Ví d trong câu ự ữ ừ ụ “The animal didn’t cross the street because it was too tired”. T i di n cho cái gì, ừ “it” trong câu trên đạ ệ “animal” hay “street”, đối với con người thì không khó để trả lời, nhưng lại không đơn giả ớ ậ ừ ừ ở n v i các thu t toán. Seft-Attention cho phép t quan sát các t “it” các vị trí khác trong câu để tìm ra s liên quan gi a chúng v ự ữ ới nhau. Đối v i các m ớ ạng RNN duy trì m t tr ng thái ộ ạ ẩn cho phép nó k t h ế ợp v i các t ớ ừ trướ ừ đang xử c t lý, còn đố ớ ẽ i v i Transformer s duy trì m i liên k các t trong câu. ố ế ố t đ i với tất cả ừ
  • 32. 21 Hình 2.4. Minh h a m liên k t gi a các t ọ ứ ộ c đ ế ữ ừ [10] Khi mã hóa t t i encoder th 2, t liên k t r t m nh v i t ừ “it” ạ ứ ừ “it” ế ấ ạ ớ ừ “animal” “too tired” và . Để tính đượ ớ ỗ ừ ẽ ở ạ ọ ố c Self-Attention, v i m i t ta s kh i t o 3 tr ng s WQ , Wk , Wv , sau đó nhân ớ v i ma trận đầu vào được 3 ma tr n Q (query), K (key), V (value) ậ v i s chi u b ng nhau và nh u là 64 trong khi ớ ố ề ằ ỏ hơn vector embedding, chiề embedding t c ti ng ma tr n Q và K ừ đầu vào là 512. Bướ ếp theo nhân tích vô hướ ậ r i th c hi t Scaled Dot-Product Attention, t c ng 2 ồ ự ện kĩ thuậ ứ là chia tích vô hướ mà trận Q và K cho  với   là chi u c a K, và truy n k t qu qua hàm Softmax. ề ủ ề ế ả Softmax chu chúng là các s c cu ẩn hóa các điểm để ố dương có nhỏ hơn 1. Bướ ối nhân tích vô hướ ới V, ta đượ ng v c công th c nhau sau: ứ  󰇛    󰇜  󰇧    󰇨󰇛󰇜
  • 33. 22 2.3.2.4 u chú ý (Multi-Head Attention) Cơ chế đa đầ V i Attention mô hình h ới mỗ ọc đượ ộ ể ệ ữ ừ c m t ki u liên h gi a các t trong câu, để m r ng kh ở ộ ả năng học được nhiều m i liên h ố ệ hơn, tập trung vào các v trí khác ị nhau, Transformer s d Multi- n là thêm nhi ử ụng cơ chế Head Attention, đơn giả ều Seft-Attention. Theo th c nghi m ra r ng t o 8 b ma tr n tr ng s W ự ệ chỉ ằ ạ ộ ậ ọ ố Q , Wk , Wv là phù h p t. M i b c kh i t u nhiên, nhân ma tr n vector ợ nhấ ỗ ộ đượ ở ạo ngẫ ậ embedding đầu vào v i 8 b ớ ộ tương ứng ta được 8 ma tr n Head- ậ Attention. Sau đó n i các ma tr n v i nhau và nhân v i ma tr n tr ng s W ố ậ ớ ớ ậ ọ ố o c k t qu có để ra đượ ế ả kích thướ ằ ớ c b ng v i ma trận embedding đầ . Ta đượ ứ u vào c công th c:  󰇛    󰇜  󰇛       󰇜   (2.10) V i ớ   󰇛           󰇜 2.3.2.5 M ng truy n th ng xuôi theo v ạ ề ẳ ị trí Ma tr n k t qu c a Multi-Head Attention s c truy n vào m ng truy ậ ế ả ủ ẽ đượ ề ạ ền thẳng xuôi theo v trí (Position-wise Feed-Forward Networks). T t c các v trí ị ấ ả ị khác nhau đều s d ng chung m t m ng truy n th ử ụ ộ ạ ề ẳng và được tính toán song song. M ng truy n th ạ ề ẳng này bao g m 2 l ồ ớp và đượ ẩ c chu n hóa v i ReLu. Các t ớ ừ đi qua cùng m ng truy n th ng m p. ột mạ ề ẳ ột cách độc lậ  󰇛 󰇜  󰇛    󰇜   (2.11) 2.3.2.6 K thu k i ph n hóa l p ỹ ật ết nố ần dư và chuẩ ớ Trong ki n trúc c a mô hình Transformer, k thu t k t n i ph ế ủ ỹ ậ ế ố ần dư (Residuals Connection) và chuẩn hóa l p ( yer Normalization) ớ La được s d ng sau ử ụ m i quá trình x ỗ ử lý, 2 k thu t giúp mô hình hu ỹ ậ ấn luy n nhanh h i t ệ ộ ụ hơn và tránh m t mát thông tin trong quá trình hu luy n mô hình. Layer Normalization (11) ấ ấn ệ có nhi m v n hóa d u nh m c i thi n kh i t c a mô hình. V ệ ụ chuẩ ữ liệ ằ ả ệ ả năng hộ ụ ủ ới Residuals Connection (12) ngoài vi c giúp h i t t ệ ộ ụ ốt hơn còn có nhiệm v giúp mô ụ hình Transformer giữ được thông tin v v trí các t trong câu (Position Encoding ề ị ừ ) t i vì trong quá trình x lý d ốt hơn, bở ử ữ ệ ề ị ừ ẽ ị ấ li u thông tin v v trí các t s b m t mát dần.
  • 34. 23 2.3.3 Thành ph n gi i mã ầ ả K t qu c thành ph n mã hóa (Encoder) s cho ra các b vector K và V, ế ả ủa ầ ẽ ộ tiếp đến thành ph n gi i mã (Decoder) ầ ả thực hi n ch ệ ức năng giải mã vector c a câu ủ đầu vào thành câu đầu ra, do đó D ẽ ậ ừ ộ ủ ecoder s nh n thông tin t 2 b vector này c a Encoder. Ki n trúc D oder r t gi ng v i Encoder, ngo i tr có thêm m t l p con ế ec ấ ố ớ ạ ừ ộ ớ Multi-Head Attention h c m i liên h a t trong ở giữa dùng để ọ ố ệ giữ ừ đang các từ câu đầ ớ ừ trong câu đầ u ra v i các t u vào. 2.3.3.1 K thu Masked Multi-Head Attention ỹ ật K thu Masked Multi-Head Attention ho ng gi ng Multi-Head ỹ ật ạt độ ố Attention, nhưng thay vì việc truy n t t c các t ề ấ ả ừ câu đầu ra, Decoder sẽ che đi các từ ở tương lai chưa được mô hình d n và trong quá trình n luy n mô hình ịch đế huấ ệ s t ng d b c vi c này c Scaled Dot- ẽ ự độ ự đoán các từ ị che đi, để làm đượ ệ ở bướ Product ta c ng k t qu v i m t ma n mask ch a các giá tr âm vô cùng (-inf) ộ ế ả ớ ộ trậ ứ ị và 0. Lý do c a vi c c ng thêm ma tr ủ ệ ộ ận mask này để khi đi qua Softmax các giá tr tr ị ẽ âm vô cùng s ở ề v 0.  󰇛    󰇜  󰇧   󰇨󰇛 󰇜  2.3.3.2 chú ý c a thành ph n mã hóa và gi i mã Cơ chế ủ ầ ả Encoder-Decoder Attention hay t m d chú ý c a thành ph n mã ạ ịch là cơ chế ủ ầ hóa và gi i mã, ho ng gi ng v u chú ý, ngo i tr t o ra ả ạt độ ố ới cơ chế đa đầ ạ ừ việc nó ạ các ma tr n Q t l i và l y các ma tr n K và V t u ra c a Encoder ậ ừ ớp phía dướ ấ ậ ừ đầ ủ để ự ệ ệ ụ ủ ớ ạo đượ ố ế ữ th c hi n tính toán. Nhi m v c a l p này giúp t c m i liên k t gi a các từ ở câu đầu ra v i các t ớ ừ ở câu đầu vào. Đầu ra c a l ủ ớp Encoder-Decoder Attention s ng truy n th ng gi ng v ẽ đi qua mạ ề ẳ ố ới Encoder. 2.3.3.3 Phân lo i tuy n tính và n hóa d u ạ ế chuẩ ữ liệ Đầ ủ ớ ố ẽ đi qua lớ ạ ế u ra c a l p Decoder cu i cùng s p phân lo i tuy n tính (Linear Classifier) là m t m ng truy n th ng giúp chuy ộ ạ ề ẳ ển đổi thành ma tr n có chi ậ ều bằng s t v d ng. Gi s mô hình s d ng 10,000 t v ng, ta s ố ừ ựng mô hình đang sử ụ ả ử ử ụ ừ ự ẽ đượ ều dài tương ứ ớ ố ừ ựng. Đầ ủ ớ ẽ c 1 vector có chi ng v i s t v u ra c a l p Linear s
  • 35. 24 đượ ề ớp Softmax để ra đượ ế ả ấ ả ừ 0 đế c truy n vào l c k t qu xác xu t trong kho ng t n 1. K t qu ế ả đi qua Softmax sẽ dùng để tính xác su t c a t t hi n ti ấ ủ ừ xuấ ệ ếp theo là bao nhiêu, so sánh v i k t qu ta mong mu n s c giá tr hàm m t mát (Loss ớ ế ả ố ẽ đượ ị ấ function) và th c hi c truy quá trình ự ện bướ ền ngược (backpropagation) để huấn luy n c di n ra. ệ đượ ễ 2.3 m c a mô hình Transformer v i mô hình RNN .4 Ưu điể ủ so ớ Trước khi Transformer được giớ ệ i thi u thì trong x lý ngôn ng t nhiên mô ử ữ ự hình RNN đượ ện đạ ấ Mô hình Transformer ra đời đã giả ế c coi là hi i nh t. i quy t đượ ện tượ ấn đề ố ữ ặ ả c hi ng Vanishing Gradient, v c h u mà RNN g p ph i, Transformer x lý các t m ng th i ch không ph i t ng t m t nên t ử ừ ột cách đồ ờ ứ ả ừ ừ ộ ốc độ ử lý nhanh hơn rấ ề ằng kĩ thuậ x t nhi u, và b t Self Attention và Positional Encoding s không gây m dài l c bi t có th ẽ ất mát thông tin trên câu có độ ớn, đặ ệ ể x lý câu có dài vô h ử độ ạn. Trong bài báo (8), tác gi m trên t p d u tiêu chu n WMT ả đã thử nghiệ ậ ữ liệ ẩ 2014 English-German bao g m 4.5 tri u c p câu v i 37000 t v ng và t p d ồ ệ ặ ớ ừ ự ậ ữ ệ li u l n WMT 2014 English-French bao g m 36 tri u câu. Ph n c ng th nghi m là ớ ồ ệ ầ ứ ử ệ m t máy tính v i 8 card GPU NVIDIA P100. Mô hình th nghi m trên 2 b d ộ ớ ử ệ ộ ữ liệ ớ ồ ớ ỗ ộ u là base và big model, v i base model bao g m 6 l p m i b encoder và decoder, embedding có chi u 512, l n c a m ng truy n th ng có chi u 2048, ề ớp ẩ ủ ạ ề ẳ ề v i 8 Head- p cho m i b encoder và ớ Attention và trên big model cũng có 6 lớ ỗ ộ decoder v i embedding 512 chi u, l ớ ề ớp ẩn c a m ng truy ủ ạ ền th ng có chi u 4096 và ẳ ề 8 Head-Attention. c nghi Thự ệm c k t qu thu đượ ế ả như sau:
  • 36. 25 Hình 5. So sánh Transformer v i các mô hình khác d a trên k 2. ớ ự ết quả đánh giá của bài báo [8] Ở ầ ị ậ ữ ệ ph n d ch t p d li u WMT 2014 English-German, mô hình Transformer v c k t qu t t nh t v i cá ới big model cho đượ ế ả ố ấ ớ c mô hình được báo cáo trước đó v m BLEU, là mô hình tiên ti n nh t v m BLEU là 28.4, không ới hơn 2.0 điể ế ấ ới điể nhữ ế ng th chi phí n luy huấ ện (training cost) theo điểm FLOPs ch b ng 1/3 so v ỉ ằ ới mô hình ConvS2S (là mô hình có m FLOPs th p nh t trên t p EN-DE). điể ấ ấ ậ Trên t p d u l ậ ữ liệ ớn hơn là WMT 2014 English French, điể - m BLUE c a big ủ model đạt được là 41.0 và là cao nh t so v ấ ới các mô hình trước đó, v i ớ điểm FLOPs chỉ ằ ớ ấ ấ b ng 1/4 so v i mô hình Deep-Att + PosUnk (là mô hình có FLOPs th p nh t trên t p EN-FR). ậ Từ đó có th k t lu ể ế ận mô hình Transformer đang cho kết qu t t nh t v i th ả ố ấ ớ ời gian n luy n so v i các mô hình hi i nh t hi n nay. huấ ệ nhanh hơn đáng kể ớ ện đạ ấ ệ 2.4 Mô hình DIET DIET là vi t t t c a Dual Intent and Entity Transformer [13] ế ắ ủ , là m t mô hình ộ Transformer đa tác vụ ử ả ại ý đị ấ ự ể , x lý c phân lo nh và trích xu t th c th cùng lúc. Đượ ạ ở ề ần cho phép chúng ta thay đổ ầ ộ c t o b i nhi u thành ph i các thành ph n m t cách d dàng. ễ
  • 37. 26 Hình 2.6 mô hình DIET [13] . Sơ đồ
  • 38. 27 2.4.1 u vào (Featurization) Đặc trưng hóa câu đầ Câu đầu vào đượ ể ừ ặ ụ c tách thành các token, token có th là các t ho c các c m t thu c vào thu t toán, và thêm m t token __CLS__ (special classification ừ phụ ộ ậ ộ token) i câu là t c a các vector token trong câu có nhi m v tóm t t ý ở cuố ổng ủ ệ ụ ắ đị ủ ả ỗi token đượ ặc trưng hóa với kĩ thuậ nh c a c . M câu c đ t sparse features, dense feature. Dense features có th là b n luy n s n ể ất kì word embeddings được huấ ệ ẵ (Pretrained Embedding). Spare features bao g m one-hot encoding và n-grams (n ồ <= 5). Việ ử ụ ẽ ố ấ ệ , nhưng c s d ng Pretrain Embedding s t t cho quá trình hu n luy n chưa đủ để ử ề ứ ụ ụ ể ụ ừ “chín” có thể x lý thông tin trong mi n ng d ng c th , ví d t là s ng, ho c tính ch t c a th i tùy vào ng c nh c ố lượ ặ ấ ủ ức ăn, thậm chí tên ngườ ữ ả ụ thể, do v y s ng truy n th n luy n ậ ẽ phải đi qua mạ ề ẳng để huấ ệ mô hình chính xác hơn cũng như chuẩ ữ ệu đầ n hóa d li u ra truy n vào l p ti p theo. ề ớ ế Điểm đặ ệ ạ ề ẳ ố ở ấ ả ị ạ c bi t là m ng truy n th ng gi ng nhau t t c các v trí. M ng truy n th ng cá -ron trong l c liên k n t t c ề ẳng thông thườ c nơ ớp trước đượ ế ế t đ ấ ả các nơ-ron c a l p sau, vi c này khi n quá trình huy n luy n mô ủ ớ ệ ế ế ệ diễn ra lâu hơn. Ở hình DIET s i b u nhiên 80% liên k t gi a các l p giúp th i gian hu ẽ loạ ỏ ngẫ ế ữ ớ ờ ấn luy . ện nhanh hơn đáng kể 2.4.2 H c chuy n giao (Transfer Learning) ọ ể H c ph c nh ng thành t u nh ọc sâu đang ngày càng đượ ổ biến và đạt đượ ữ ự ất định, nhưng để ạ ộ ọ ệ ả ầ ộ ợ ữ ệ ổ t o ra m t mô hình h c sâu hi u qu c n m t lư ng d li u kh ng l xây d ng t p d u hu n luy n t u không ph i m t vi c d dàng, ồ. Để ự ậ ữ liệ ấ ệ ừ ban đầ ả ộ ệ ễ do v y ậ Transfer Learning đã được ra đời nh m c i thi ằ ả ệ ạ n h n ch này c a quá trình ế ủ h c sâu. ọ H c chuy n giao (Transfer Learning) là quá trình áp d ng tri th ọ ể ụ ức đã được h c t d i quy t m t bài toán m ọ ừ mô hình trước đó, khai thác và tái sử ụng để giả ế ộ ới mà không c n xây d ng m t mô hình hu n luy n t ầ ự ộ ấ ệ ừ ban đầu.
  • 39. 28 Ví d trong bài toán phân lo i chó và mèo. N u hu n luy n t ụ ạ ế ấ ệ ừ u, ta c n r đầ ầ ất nhi n ề ữ ệ ẫu cũng như ấ ề ờ ấ ệ u d li u m m t nhi u th i gian hu n luy để đạt được độ chính xác cao. Tuy nhiên n u t n d ng l i các t p d n luy n s n ế ậ ụ ạ ậ ữ liệu đã được huấ ệ ẵ (pretrained-model) thì s c n ít ẽ ầ thời gian huấn luyện hơn để đạt được m chính ột độ xác mong đợ ậm chí độ ể ớn hơn so vớ ụ i. Th chính xác có th l i khi không áp d ng Transfer learning. Hình 2.7. Minh h a so sánh s d ng và không s d ng h c chuy n giao ọ ử ụ ử ụ ọ ể Trong x lý ngôn ng t nhiên, nh ử ữ ự ững mô hình được huấn luy n s n n i ti ệ ẵ ổ ếng như Word2Vec, ConveRT, BERT hay spaCy ệ ấ ệ ở , giúp vi c hu n luy n Chatbot tr nên đơn giản hơn rất nhi u, thay vì vi c ph i thu th ề ệ ả ập hàng trăm nghìn ữ d liệu câu tho i, ta ch c t n d ng l i nh ng mô hình hu n luy n s t h p d ạ ỉ việ ậ ụ ạ ữ ấ ệ ẵn đó kế ợ ữ liệu trong mi ng d thu th c s c k t qu t t và gi ền ứ ụng ập đượ ẽ đạt đượ ế ả ố ảm đáng kể thời gian hu n luy n so v i vi n luy n l i d u t u. Các mô hình hu ấ ệ ớ ệc huấ ệ ạ ữ liệ ừ ban đầ ấn luy n s n n ng h cho Ti ng Vi ệ ẵ ổi tiế ỗ trợ ế ệt: - [14]: t p d c hu n luy n trên 7.1GB d u bao word2vecVN ậ ữ liệu đượ ấ ệ ữ liệ g m 1,675,819 t và t ng h p t 97,440 tài li u, s d ng k thu t Word2Vec. ồ ừ ổ ợ ừ ệ ử ụ ỹ ậ - vi_spacy [15]: mô hình s d ử ụng thư viện x lý ngôn ng t ử ữ ự nhiên spaCy để đào tạo 18GB d u thu th p t các bài báo, h c tác v phân tách t và phân ữ liệ ậ ừ ỗ trợ ả ụ ừ tích cú pháp. - [16]: là mô hình hu n luy n s n hi i nh t dành cho ng PhoBERT ấ ệ ẵ ện đạ ấ Tiế Việt, đượ ể ở ứ ủ ấ ệ ự c phát tri n b i nhóm nghiên c u c a VinAI, hu n luy n d a trên mô hình RoBERTa [17] v i 20GB d c thu th u ngu n khác nhau. ớ ữ liệu đượ ập ở nhiề ồ Cung c p 2 phiên b n phobert-base hu n luy n v i 135 tri u tham s và phobert- ấ ả ấ ệ ớ ệ ố large hu n luy n v i 370 tri u tham s ấ ệ ớ ệ ố.
  • 40. 29 2.4 Thành ph Transformer .3 ần Transformer có nhi m v tìm ra s liên k token trong câu, t ệ ụ ự ết của các từ ừ đó có th c chính xác nh c a câu DIET s d ng kh i Encoder v ể xác định đượ ý đị ủ . ử ụ ố ới mặc định 2 l p, mu n mô hình d ớ ố ự đoán chính xác hơn có thể tăng số lớp lên nhưng cũng đồ ời tăng thờ ử ủ ệ ống. Đầ ủ ng th i gian x lý c a h th u vào c a mô hình Transformer là vector có s chi u là 256 u ra s là các vector riêng bi ng ố ề , và đầ ẽ ệt ứ với mỗi từ các token sau đó sẽ đượ ề ớ ặ c truy n vào l p CRF ho c Embeding Layer. 2.4 n luy n mô hình .4 Huấ ệ DIET là mô hình xử lý đa tác vụ bao g m trích ch n th c th (Extract entity), ồ ọ ự ể phân lo nh (Intent classification) và d b n (Masked language ại ý đị ự đoán từ ị ẩ modeling). Việc huấn luyện mô hình là nhi m v ệ ụ giảm thi u t ể ối đa giá trị c a hàm ủ m t mát 3 tác v i là giá tr ấ ụ trên được gọ ị ấ ổ m t mát t ng  . Hàm m t mát quá trình trích ch n th (Entity loss): ấ ọ ực thể D u sau khi x lý xong Transformer s p Conditional ữ liệ ử ở ẽ được đi vào lớ Random Field (CRF). C [18] là m RF ột phương pháp sử d ng xác su ụ ất có điều kiện thường đượ ụ ậ ạ ẫ ọ ự đoán dữ ệ ấ c áp d ng trong nh n d ng m u, h c máy và d li u có c u trúc. Rasa NLU s d ử ụng thư viện sklearn-crfsuite [19] để thự ệ c hi n trích ch n th ọ ực th ti ể. Bên trong CRF các t s m t m truy n th (FFNN) ừ ẽ đi qua ộ ạng ề ẳng ế ẽ p theo s phân lo i entity. ạ Ở giữa các FFNN có m t ma tr ộ ậ ể n chuy n ti p (transition matrix), ế ý tưở ủ ận này để ổ ấ ế ộ ả năng ng c a ma tr phân b xác xu t n u token là m t entity thì kh cao token bên cạnh nó cũng là entity. Đầ ủ ớp CRF thu đượ ộ ỗ ế ợ ớ ữ ệ u ra c a l c m t chu i entity và k      t h p v i d li u traning nhãn entity yentity c giá tr hàm m t mát trong quá trình trích ch ta đượ ị ấ ọn thực th c: ể ứ (Entity Loss) theo công th      󰇛         󰇜 (2.13) V󰉵i L CRF (.) l negative log-like hood cho m t CRF. Entity Loss à li 󰉳   c ng à nh󰉮 󰊁  m h nh d thì ô ì o n entity c ng ch nh x á à í ác.
  • 41. 30 Hàm m t mát quá trình phân lo nh (Intent loss): ấ ại ý đị Token __CLS__ là token tóm t t c câu ph c v cho m i ý ắ ả ụ ụ ục đích phân loạ định. __CLS__ đi qua Transformer thu được  , song song với nó là nhãn ý định   là intent s t Embedding Layer. K thu t Embedding ẽ đi qua mộ ỹ ậ ở đây sử d mô hình StarSpace [20] ụng được công bố vào cuối năm 2017 phát triển b i nhóm ở nghiên c u AI Facebook. ứ Đầ ủa Embedding Layer ta thu đượ u ra c c 2 vector   󰇛  󰇜 và    󰇛  󰇜  với R 20 , 2 vector này sau đó sử d ng dot-product loss ụ để t v (positive intent) ối đa sự tương đồng ới nhãn ý định đúng    và gi m thi u s ả ể ự tương đồ ới nhãn ý định khác nhãn ý định đúng ng v (negative intent)   , ta được công thức:          (2.14)          (2.15) Intent Loss được tính theo công thức:          󰇭            󰇮 󰇛 󰇜  Với   là t ng s m u negative intent, m t intent có m t ho c nhi u ví d ổ ố ẫ ộ ộ ặ ề ụ   là trung bình c a các ví d trong 1 intent. Intent Loss ủ ụ  càng nh thì mô hình ỏ d intent càng chính xác. ự đoán Hàm m t mát quá trình d ấ ự đoán token bị che đi (Masking loss): Trong quá trình huấn luy n mô hình DIET s ệ ẽ che đi ngẫu nhiên m t s token ộ ố đầ ẽ ự đoán từ ợc che đi và đượ ọ ỹ ậ u vào, mô hình s d đư c g i là k thu t Masked language modeling. __MASK__ c truy n qua Transformer thu token cũng đượ ề được  n vào Embedding Layer, song song v tiếp theo đó truyề ới đó masked to lý ken (trong là t c x Error! Reference source not found. ừ pong) cũng đượ ử , k ế ả t qu sau khi qua Transformer là   và truy n Embedding Layer. ền đế
  • 42. 31 Cũng ố ới Intent classification, đầ ủa Embedding Layer ta đượ gi ng v u ra c c 2 vector    󰇛 󰇜  và   󰇛  󰇜  với R 20 ,  và   dot-product ta thu được:          (2.17)          (2.18) Mask l c tính theo công th oss đượ ức:           󰇭           󰇮 󰇛 󰇜  Với   là t ng s m u negative mask. c áp d ng k thu t Masked ổ ố ẫ Việ ụ ỹ ậ language modeling c s d giúp mô hình không ch phân lo i mà đượ ử ụng ỉ dùng để ạ còn học được các đặc điểm chung trong t v ng giúp d ừ ự ự đoán chính xác hơn. Mass loss   càng nh thì mô hình d ỏ ự đoán mask token càng chính xác Giá tr hàm m t mát t ng h p: ị ấ ổ ợ Giá tr hàm m t mát t ng h p (Total loss) b ng t ng c a Entity loss, Intent ị ấ ổ ợ ằ ổ ủ loss và Mask loss. DIET s n luy n mô hình b ng cách ẽ huấ ệ ằ đưa Total loss  về giá tr t có th và th c hi n quá trình truy ị nhỏ nhấ ể ự ệ ền ngược (Backpropagation) để c p nh t tr ng s các thành ph n. Mô hình có th c i b m t trong ậ ậ ọ ố ầ ể ấu hình để loạ ỏ ộ nhữ ụ ầ ế ả ử ầ ọ ự ể ng tác v không c n thi t, gi s mô hình không c n trích ch n th c th ta có th lo i b ể ạ ỏ   ra khỏi   .         (2.20) 2.4.5 Đánh giá mô hình DIET D a trên c nghi m c a tác gi mô hình DIET [13] v i b d u NLU- ự thự ệ ủ ả ớ ộ ữ liệ Benchmark [21] bao g m 25,716 câu tho i v i 64 intent và 54 entity t k t qu ồ ạ ớ đạ ế ả t khi so sánh v i mô hình HERMIT [22] c ch ng ốt hơn đáng kể ớ , mô hình đã đượ ứ minh đạ ế ả ốt hơn các công cụ như Rasa, Dialogflow, LUIS và Watson. t k t qu t
  • 43. 32 Hình 2.8. So sánh mô hình DIET và mô hình HERMIT [13] Mô hình DIET s d ng ki n trúc linh ho t có th d i các ử ụ ế ạ ể ễ dàng thay đổ thành phần bên trong, do đó ế k t quả đánh giá mô hình đượ ể ệ c th hi n qua các bi n ng n ế thể ằ b s trong thành ph ự thay đổi ầ Sparse feature, Dense feature, Mask loss, k t qu và ế ả được so sánh thông qua điểm F1-score: Hình 2.9 n th c . Đánh giá các biế ể ủa mô hình DIET [13] Qua b ng trên có th ả ể nhận th y DIET ấ có s d ng Spare feature và Dense ử ụ feature v i D c k t qu t t nh c bi ớ ense feature là ConveRT cho đượ ế ả ố ất và đặ ệt th i s ờ ấ ệ ít hơn 6 lầ ớ i gian hu n luy n n so v ử ụ d ng mô hình BERT.
  • 44. 33 CHƯƠNG 3: XÂY DỰNG VÀ CÀI ĐẶ Ứ Ụ T NG D NG CHATBOT 3.1 Gi i thi Rasa Framework ớ ệu Rasa Framework (23) là m t mã ngu n m giúp xây d ng Chatbot s d ộ ồ ở ự ử ụng trí tu nhân t o c vi t b ng ngôn ng l p trình ệ ạ . Được ra đời vào năm 2016 và đượ ế ằ ữ ậ Python, v i s h c a c c c p nh liên t c Rasa ớ ự ỗ trợ ủ ộng đồng người dùng và đượ ậ ật ụ đang ngày càng phát triển và tr thành m t trong nh ng n ở ộ ữ ền t ng xây d ng Chatbot ả ự l n nh và hoàn toàn mi n phí. ớ ất ễ Rasa bao g m ồ nhiều thành phần trong đó có 2 thành ph n chính là thành ph ầ ần x lý ngôn ng t nhiên (NLU) và thành ph n qu n lý h i tho i (DM). ử ữ ự ầ ả ộ ạ Hình 3.1 các thành ph n trong Rasa Framework . Sơ đồ ầ - NLU: là ph n x lý phân lo nh và trích xu t th c th c th ầ ử ại ý đị ấ ự ể. Đượ ể hiện ở ố ắ ủa người dùng đượ ử ộ ồ kh i NLU Pipeline, tin nh n c c x lý qua m t quy trình g m nhi u ề bướ ọ c g i là pipeline.
  • 45. 34 - Dialogue management: là thành ph n quy nh s n ti p theo trong ầ ết đị ự kiệ ế cuộ ộ ạ ự ữ ả ệ ại. DM đượ ể ệ ở ố c h i tho i d a vào ng c nh hi n t c th hi n b i kh i Dialogue Policies. Bên c m các thành ph n khác: ạnh đó Rasa bao gồ ầ - Rasa Action Server: th là thành ph n tùy ch n, n u h ầ ọ ế ệ ố ầ ử ng c n x lý các tác v n x c khi tr l i dùng ho c g n server khác ụ logic như tiề ử lý trướ ả ời ngườ ặ ọi đế thông qua API để ấ ữ ệ ử ụ ế ằ l y d li u. Rasa Action Server s d ng Rasa SDK vi t b ng Python để ự xây d ng. - Tracker stores: thành ph l ch s tin nh n, slot trong database ần lưu trữ ị ử ắ hoặc bộ nhớ t m, cung c ạ ấp thông tin để Rasa action server xử lý như trích xuất liên k t các tin nh l i dùng m t cách chính xác nh t, ho c phân ế ắn trước để trả ời ngườ ộ ấ ặ tích cu i tho ộc hộ ại. Hiện nay có r t nhi ấ ều phương pháp làm Chatbot do bên th ba cung c ứ ấp như Chatfuel, tài lu s d Sparrow, ManyChat…nhưng trong đề ận văn này, tôi sẽ ử ụng Rasa framework để ựng chương trình và dưới đây là nhữ ử ụ xây d ng lý do s d ng Rasa xây d ng Chatbot: để ự - D dàng tích h p, ch nh s a ễ ợ ỉ ử : ta có th t c u hình b t kì pipeline nào trong ể ự ấ ấ phần NLU pipeline để phù h p v i ngôn ng t ng qu c gia ho c m ợ ớ ữ ừ ố ặ ục đích cụ ể th , Rasa cung cấp các tính năng có sẵn thêm vào đó người dùng có th t t ể ự ạo tính năng riêng, chính vì Rasa là mã ngu n m cho nên s d dàng ch nh s a framework, có ồ ở ẽ ễ ỉ ử thể ợp các tính năng bên ngoài và hàm xử lý nào đó. tùy ý tích h - Tích h p v i các h ng có s n ợ ớ ệ thố ẵ : Rasa cung c p Rasa Action giúp ấ Chatbot có th k t n n các h ng khác thông qua API ho c truy c p vào ể ế ối đế ệ thố ặ ậ database, gi s Chatbot bán hàng có th l y giá m i nh t trên h ng qu n lý ả ử ể ấ ớ ấ ệ thố ả bán hàng c a doanh nghi ủ ệp. - Khả năng học qua tương tác: thay vì vi c li t kê t t c nh và câu tr ệ ệ ấ ả ý đị ả lời tương ứng, trong quá trình hu n luy ấ ện người dùng có th giao ti p tr c ti p v ể ế ự ế ới Chatbot p câu tr l i phù h p v nh c đánh giá và cung cấ ả ờ ợ ới ý đị ủa người dùng. - K t n i d dàng v i các ng d ng chat khác ế ố ễ ớ ứ ụ : Rasa cho phép ng d ng ứ ụ liên k t v i các n n t chat n i ti ế ớ ề ảng ổ ếng như Facebook Messenger, Slack, Telegram, Twilio …
  • 46. 35 - Hiệ ấ u su t cao: v i vi tích h p nhi u ki n trúc hi i nh ớ ệc ợ ề ế ện đạ ất như DIET, TED s d ng mô hình Transformer giúp cho Chatbot c a Rasa tr nên thông minh ử ụ ủ ở hơn và tối ưu hóa được th i gian n luy n m ờ huấ ệ ột cách đáng kể khi so sánh v i các ớ n n t ng khác. ề ả - Miễ ộ n phí và c ng ng l n đồ ớ : Rasa là mã ngu n m cho nên s không m ồ ở ẽ ất phí để xây d ng ng d ự ứ ụng, cũng chính vì lý do đó nhiều người d dàng ti ễ ế ậ p c n và xây d c các c ng chia s n th c, thu t toán t m chí d ựng đượ ộng đồ ẻ kiế ứ ậ ối ưu và thậ ữ liệ ẫ ẵ ể u m u có s n, giúp Rasa ngày phát tri n và ổn định. 3.2 C u trúc c Chatbot ấ ủa Nhất Nam 3.2.1 Thi t k t ng quát ế ế ổ Ứng d ng Chatbot ụ Nhất Nam hướng đến người dùng chưa dùng sản ph m k ẩ ế toán Nh t Nam c n tham kh o thông tin s n ph n doanh ấ ầ ả ả ẩm, thông tin liên quan đế nghi d ng c n h cách dùng s n ph ệp, và hướng đến người dùng đã sử ụ ầ ỏi đáp về ả ẩm và truy xu t thông tin b o trì, b o hành c a h . Bài toán mà tôi xây d ng s t ấ ả ả ủ ọ ự ẽ ập trung vào các ch n, h ng d n s d ng và truy xu ức năng tư vấ ỗ trợ bán hàng, hướ ẫ ử ụ ất thông tin liên quan đến doanh nghi p. Các ch ệ ức năng chính bao gồm: - Thông tin các lo n ph m k toán ại sả ẩ ế - H i giá s n ph m ỏ ả ẩ - Tư vấn bán hàng - Thông tin doanh nghi p ệ - T o liên h n t ạ ệ đế ổng đài viên - Thông tin b o trì, b o hành ả ả - H n th c ỏi đáp kiế ứ C u trúc h Chatbot cho ng d ng s c thi ấ ệ thống ứ ụ ẽ đượ ết kế như sau:
  • 47. 36 Hình 3.2 u trúc h ng Chatbot Nh t Nam . Cấ ệ thố ấ website Nh t Nam s Ở ấ ẽ thi t k giao di n dành cho Chatbot ế ế ệ , người dùng có thể ậ ắ ẵ ẽ ợ ửi đế ầ nh p tin nh n, tin nh n s đư c g n Rasa thông qua Api. Các thành ph n bên trong Chatbot Rasa sẽ đượ ả ệm như sau: c đ m nhi - Agent: là thành ph n trung gian giao ti p, truy n t n các ầ ế ề ải thông điệp đế thành ph n khác, các tin nh u vào s Agent s chuy ầ ắn đầ ẽ đi qua Agent sau đó từ ẽ ển đế ần NLU, Dialog management, Rasa action server để ử n các thành ph x lý tin nh n. ắ - NLU: có nhi m v vector hóa d máy có th u ngôn ng con ệ ụ ữ liệu để ể hiể ữ ngườ ừ đó có thể ại ý đị ấ ụ câu đầ i t phân lo nh và trích xu t ra các thông tin. Ví d u vào ngườ ỏ ệ i dùng h i “Giá phầ ề ế ệp bao nhiêu?” n m m k toán doanh nghi thì h th li ố ẽ ồi đố ế ớ ậ ự ng s vector hóa nó r i chi u v i t p d ệu training đã được gán nhãn để đưa ra ý đị (ý đị ỏ ề ả ẩ ế ếu câu đầ nh “bao_gia” nh h i v giá s n ph m). Ti p theo n u vào chứ ệ a entity h thố ẽ ng s trích xu t ra, ví d câu trên có entity là s n ph ấ ụ ả ẩm “kế toán doanh nghiệp”. - Dialog management (DM): d a vào các lu ự ật quy định trong h ng ho ệ thố ặc so sánh ng c nh h i tho i các ng c ữ ả ộ ại vớ ữ ảnh dùng để ấ ệ ớc đó, ẽ hu n luy n trư DM s quyết định hành độ ế ng ti p theo là gì. Ví d v i intent d a vào các cu ụ ớ “bao_gia” ự ộc
  • 48. 37 h i tho c khai báo trong story h ng s d ộ ại đượ ệ thố ẽ ự đoán được hành độ ế ng ti p theo là “utter_bao_gia” l i giá s n ph m cho khách hàng). (trả ờ ả ẩ - Rasa action server: là thành ph n quan tr ng trong x x lý ầ ọ ử lý logic, để ử các nghi p v p mà DM không th x ệ ụ phức tạ ể ử lý như lấy giá s n ph m t h ả ẩ ừ ệ thống khác, x lý tính toán ph c t p khi hoàn thành form nh p li u. Trong ử ứ ạ ậ ệ ứng d ng này, ụ Rasa action server s có nhi m v trích xu t d u t h ng qu n lý bán hàng ẽ ệ ụ ấ ữ liệ ừ ệ thố ả và điều hướ ệ đế ỗ ợ viên ngay khi có người dùng đăng kí ng thông tin liên h n h tr thông tin. 3.2.2 Sơ đồ ạt độ ủ ấ quy trình ho ng c a Chatbot Nh t Nam Hình 3.3 quy trình ho . Sơ đồ ạt độ ủ ấ ng c a Chatbot Nh t Nam Mô t chi ti ả ết các thành phần: a. Input: là câu đầu vào, đây là câu hỏi c i dùng trên h ủa ngườ ệ thống. Trong hình minh h i dùng h i câu ọa ngườ ỏ “Giá kế ệ ” toán doanh nghi p bao nhiêu? .
  • 49. 38 b. Tiề ử n x lý: thành ph n này Rasa s x lý câu u vào c i dùng Ở ầ ẽ ử đầ ủa ngườ qua thành ph n ầ Tokenizer để tách câu đầu vào thành các token như sau “Giá”, “kế_toán”, “doanh_nghiệp”, “bao_nhiêu”. Bướ ế ể c ti p theo chuy n các token thành d ng vector qua thành ph Chatbot có th ạ ần đặc trưng hóa (Featurizer) để ể phân lo nh và trích xu c th . ại ý đị ất thự ể c. Phân loại ý định: phân tích và dự đoán ý định d a trên t ự ập ý định đã được định nghĩa trướ ụ ỏ c. Ví d câu h i “Giá kế ệ ” toán doanh nghi p bao nhiêu? Chatbot d nh v t ự đoán ý đị “bao_gia” ớ ộ i đ ự tin (confidence) là 98%. d. Trích xu t th c th : ấ ự ể Chatbot sẽ nhận d ng các th c th trong câu h i nh ạ ự ể ỏ ờ vào t p các th c th c. Ví d trong câu h i trên, Chatbot ậ ự ể đã được định nghĩa trướ ụ ỏ s trích xu ẽ ất được “kế toán doanh nghiệ “san_pham” p” c là một thực thể ủa . e. Chính sách (Policy): Chatbot s d ẽ ựa vào ý định và th c th ự ể để quyết định hành độ ế ng ti p theo các chính sách, có 3 chính sách là chính sách d a vào quy t ự ắc (Rule-based policy), chính sách ghi nh (Memorization policy) và chính sách TED ớ (TED policy), trong đó Rule-based policy sẽ được ưu tiên nhấ ếp đó t ti là Memory policy và TED policy - Rule-based policy: là chính sách quy ng ti p theo d a vào ết định hành độ ế ự các quy tắc được khai báo s n, gi s ẵ ả ử người dùng g i tin nh ử ắn ý định chào h i, bot ỏ s luôn chào l c nh nào. ẽ ại bất kể ở ngữ ả - Memorization policy: n u h th ng không phát hi n h i tho i trùng kh ế ệ ố ệ ộ ạ ớp v i b t kì quy t ớ ấ ắc được định nghĩa sẵn nào Chatbot s d a vào các k ẽ ự ịch b n có s ả ẵn đã đượ khai báo để ự đoán hành độ ế c d ng ti p theo. - TED policy: n ng ti p theo không tìm th y trong Rule policy ếu hành độ ế ấ hoặ ệ ố ẽ ử ụ ỹ ậ c Memorization policy, h th ng s s d ng k thu t có tên Transformer Embedding Dialogue (TED) (24) d t d a theo ng để ự đoán hành động đúng nhấ ự ữ c ch b ảnh trước đó và các kị ản được khai báo f. Hành động (Action): Là quá trình Chatbot t ng h p k t qu c a các thành ổ ợ ế ả ủ phầ ự để ả ề ế ả cho người dùng. Đố ớ n trên d a theo các chính sách tr v k t qu i v i câu h Chatbot s l i phù h ỏi “Giá kế ệp bao nhiêu” toán doanh nghi ẽ đưa ra câu trả ờ ợp nhất là “utter_bao_gia_phan_mem_ke_toan_doanh_nghiep”, k t h p v i vi ế ợ ớ ệc truy xu u t h ng doanh nghi có th l ất dữ liệ ừ ệ thố ệp để ể ấy đượ ả ẩ c giá s n ph m chính
  • 50. 39 xác nh t, Chatbot s v i dùng câu tr l ng ấ ẽ trả ề cho ngườ ả ời tương ứ “Phầ ề ế n m m k toán doanh nghiệp giá 6.000.000 đồng”. 3.3 Xây d ng d Chatbot ự ữ liệu Do ng d ng Chatbot t Nam ch c v cho m t doanh nghi p c ứ ụ Nhấ ỉ phụ ụ ộ ệ ụ thể nên s s d ng mi n d ẽ ử ụ ề ữ liệu đóng được thu th p t ậ ừ những cu c h i tho i c a khách ộ ộ ạ ủ hàng trước đó và câu trả l i s ờ ẽ được chuyên viên tư vấn t o ra. Trong quá trình xây ạ d ng Chatbot k ch b s c vi t b ng tay ho c thông qua h ự ị ản ẽ đượ ế ằ ặ ọc tương tác (Interactive Learning) s d ng công c Rasa X h ử ụ ụ ỗ trợ giao di n tr c quan giúp các ệ ự chuyên viên t c k ch b ạo đượ ị ản m t cách nhanh nh ộ ất. Hình 3.4. Giao di n Rasa X s d ng t ệ ử ụ ạ ị ả o k ch b n Quy trình xây d ng h Chatbot s bao g ự ệ thống ẽ ồm các bước chính sau đây: 3.3.1 Xây d nh (intent) ựng ý đị B các câu h i m u c ộ ỏ ẫ ủa người dùng sẽ đượ ậ c t p h p l i t các cu c h i tho ợ ạ ừ ộ ộ ại c i v i nhân viên h , giúp b d chính xác nh t v ủa người dùng trao đổ ớ ỗ trợ ộ ữ liệu ấ ới th tr ự ế ờ ỏi. Kèm theo đó hỗ c t ngư i dùng h ợ ẽ ấ ữ ẫ ỏ viên s cung c p nh ng m u câu h i m m b o t ớ ể i đ đả ả ập ý định phong phú và đầy đủ ấ nh t.
  • 51. 40 Chatbot Nhất Nam bao g m t ng c ng ồ ổ ộ 36 intent v i 1024 câu m ớ ẫu, được khai báo trong file nlu.yml, dưới đây là ví dụ mẫu c a 2 intent ủ bao_tri_phan_mem (hỏi v b o trì ph n m m) và ề ả ầ ề hoa_don_dien_tu n t ) (hỏi về hóa đơn điệ ử Hình 3.5. Khai báo intent trong file nlu.yml Có th y là trong ti ng Vi t khách hàng s d ng nhi u t t t ể thấ ế ệ ử ụ ề ừ viế ắt như “không” “k” “bao nhiêu” “bn” viế ắ t t t thành , t t t thành viế ắ … do vậ ệ ậ y vi c t n d ng nh ng cu c h i tho i trong th c t vào quá trình training s giúp Chatbot ụ ữ ộ ộ ạ ự ế ẽ hiểu ý định ngườ ố i dùng t t hơn. 3.3.2 Xây d ng th c th (entity) ự ự ể Entity là các th c th ự ể thông tin đặc trưng quan trọng được trích xu t theo các ấ ý đị ủa người dùng, các thông tin đượ ọ ắ ủa ngườ nh c c trích ch n trong tin nh n c i dùng đượ ệ ống lưu lạ ừ đó giúp hệ ố ết đị h độ ế c h th i t th ng quy nh hàn ng ti p theo phụ ộ thu c vào entity trích chọ ữ ảnh đang diễ n và ng c n ra. Trong Chatbot t Nam s bao g c khai báo trong Nhấ ẽ ồm các entity đượ domain.yml như trong hình dưới đây:
  • 52. 41 Hình 3.6. Khai báo entity trong file domain.yml Entity s c trích ch n tr c ti p trong các ví d m u c nh ẽ đượ ọ ự ế ụ ẫ ủa intent theo đị d ng, ví d ạ ụ trong câu “Phần m m k toán doanh nghi p giá th nào nh ề ế ệ ế ỉ?” có thực thể ộ ả ẩm, khi đó câu trên đổ là m “kế ệ toán doanh nghi p” t s n ph i thành “Phần m giá th nào nh ềm [kế ệ toán doanh nghi p](san_pham) ế ỉ”. Dưới đây là ví dụ entity trong chương trình: Hình 3.7. Khai báo intent có ch a entity trong file nlu.yml ứ 3.3.3 Xây d ng câu tr l i cho Chatbot ự ả ờ Khi người dùng đưa ra câu hỏ ẽ ử ạ ỏ ả i, Chatbot s x lý phân lo i câu h i và ph n h i câu tr l i phù h p v i câu h i và yêu c Rasa có th xây d ng ph n h ồ ả ờ ợ ớ ỏ ầu đó. ể ự ả ồi cho Chatbot ng (action). Action này có th cung c p thông thông qua các hành độ ể ấ tin mong muốn cho người dùng dựa vào các ý định, slot và d u l ữ liệ ấ ừ cơ sở y t dữ
  • 53. 42 liệu thông qua k t n i API. Có 2 lo ế ố ại hành động để ử x lý câu tr l i trong Chatbot ả ờ Nhấ ại hành độ ặc định (default actions) và hành độ ế t Nam, lo ng m ng tùy bi n (custom actions). 3.3.3.1 ng m Hành độ ặ ị c đ nh Là ng d l i d a vào nh và th c th các hành độ ự đoán và đưa ra câu trả ờ ự ý đị ự ể đượ ọ ủa người dùng, đượ ử ở ầ đã c trích ch n c c x lý thành ph n Dialog management đượ ấ . Hành độ ếp theo đượ ết đị ở các chính sách đó c Rasa cung c p ng ti c quy nh b i là chính sách d a vào quy t c (Rule policy), chính sách ghi nh (Memorization ự ắ ớ policy) và chính sách TED (TED policy). - Khai báo chính sách d a vào các quy t c (Rule-based policy) ự ắ : Rule- based polici c khai báo trong file rules.yml. Ví d m i dùng nh es đượ ụ ỗi khi ngườ ập câu có ý đị Chatbot luôn đưa ra câu trả ờ nh “chao_hoi” l i “Kính chào quý khách! R c h ất vui lòng đượ ỗ trợ quý khách”. Hình 3.8. Khai báo Rule policy trong file rules.yml - Khai báo k ch b n cu c h i tho ị ả ộ ộ ại: B ng cách thu th p các cu c h i tho ằ ậ ộ ộ ại thực t c a h ế ủ ỗ trợ viên và người dùng, ta s d c nh ng k ch b n thông d ẽ ựng đượ ữ ị ả ụng nhất. Ví d c khi h i giá s n ph i dùng s chào h i h ụ trướ ỏ ả ẩm, ngườ ẽ ỏ ỗ ợ tr viên, h i v ỏ ề thông tin các s n ph m doanh nghi p cung c m n câu h i giá. Các ả ẩ ệ ấp, sau đó ới đế ỏ k ch b n s c khai báo trong file . K ch b n có th c vi t b ng ị ả ẽ đượ stories.yml ị ả ể đượ ế ằ tay ho c thông qua h ặ ọc tương tác (interactive learning) khi đó ta có thể đánh giá và d Chatbot cách tr l nh c i dùng thông qua giao n l ạy ả ời các ý đị ủa ngườ diệ ệnh CLI hoặc chương trình Rasa X. Hệ thống s so sánh h i tho ẽ ộ ại đang diễn ra v i k ớ ịch
  • 54. 43 b n có s n, n u trùng kh p s n h i theo s n ti p theo trong k ả ẵ ế ớ ẽ đưa ra phả ồ ự kiệ ế ịch b n. ả Hình 3.9. Khai báo k ch b n trong file stories.yml ị ả 3.3.3.2 ng tùy bi n Hành độ ế Khi yêu c i dùng c n th c hi n truy xu n d u bên ngoài ho ầu ngườ ầ ự ệ ất đế ữ liệ ặc x lý tính toán ph c t p c n s d ng thu ử ứ ạ ầ ử ụ ật toán mà các phương pháp Default action không thể thực hiện được thì có th s d ể ử ụng Custom action để tùy bi n hà ế nh động. M ng tùy bi c g i nó s n m t hàm trong file actions.py. ỗi khi hành độ ến đượ ọ ẽ trỏ đế ộ Custom action vi t b ng ngôn ng python do v y có th d dàng x lý logic ph ế ằ ữ ậ ể ễ ử ức t t thông tin t h ng ngoài, ví d truy xu t giá s ạp như tính toán, truy xuấ ừ ệ thố ụ ấ ản phẩm, i h n b o trì b o hành c n doanh thờ ạ ả ả ủa khách hàng, thông tin liên quan đế nghiệp… Giả ử s sau khi người dùng nh p tên và s ậ ố điệ ạ ở n tho i form liên h , h ệ ệ thống s nhân viên h liên l l ẽ lưu lại thông tin vào Google Drive để ỗ trợ ạc và sau đó trả ại người dùng ph n h ả ồi. Để ả gi i quy t bài toán này không th s d ng Default action ế ể ử ụ do đó ta sẽ ạ ộ ới tên hàm ActionSubmitSalesForm như hình t o m t Custom action v ở ớ dư i
  • 55. 44 Hình 3. . Hàm x lý sau khi hoàn thành nh p Form liên h 10 ử ậ ệ 3.3.4 C u hình các thành ph n ấ ầ Quá trình x lý ngôn ng t nhiên ng d c x lý ử ữ ự là hành độ ữ liệu đầu vào đượ ử qua m t lo t các thành ph n (component) theo th t g i là pipeline, ta có th thêm ộ ạ ầ ứ ự ọ ể hoặ ỏ ấ ần nào trong pipeline đó. Ví dụ ệ ố ầ c b b t kì thành ph h th ng không c n trích chọ ự ể ể ạ ỏ ầ ặ ệ ố n th c th ta có th lo i b thành ph n Entity extraction, ho c h th ng không dùng thành ph n luy n s n (pre- ần mô hình được huấ ệ ẵ trained model) như BERT, spaCy ta có th không c n khai báo trong c u hình. ể ầ ấ Tokenizer là quá trình chia nh u vào thành các t c c m t . Rasa ỏ câu đầ ừ hoặ ụ ừ có hỗ trợ WhitespaceTokenizer t o các t cách nhau b ng d u cách ví d ạ ừ ằ ấ ụ câu “Tôi là sinh viên trường đạ ọ i h c Bách Khoa” đi qua thành phần WhitespaceTokenizer