SlideShare a Scribd company logo
1 of 97
Download to read offline
ĐOÀN THANH NIÊN CỘNG SẢN HỒ CHÍ MINH
BAN CHẤP HÀNH TP. HỒ CHÍ MINH
----------------------
CÔNG TRÌNH DỰ THI
GIẢI THƯỞNG SINH VIÊN NGHIÊN CỨU KHOA HỌC EURÉKA
LẦN THỨ XX NĂM 2018
TÊN CÔNG TRÌNH: PHÂN TÍCH CẢM XÚC TRONG TIẾNG VIỆT
BẰNG PHƯƠNG PHÁP MÁY HỌC
LĨNH VỰC NGHIÊN CỨU: CÔNG NGHỆ THÔNG TIN
CHUYÊN NGÀNH: TRÍ TUỆ NHÂN TẠO
Mã số công trình: …………………………….
(Phần này do BTC Giải thưởng ghi)
..
i
MỤC LỤC
MỤC LỤC................................................................................................................ i
DANH MỤC HÌNH ẢNH................................................................................................ iii
DANH MỤC BẢNG BIỂU...............................................................................................iv
TÓM TẮT...........................................................................................................................1
ĐẶT VẤN ĐỀ.....................................................................................................................2
1. Tổng quan về vấn đề được nghiên cứu..............................................................2
2. Lý do lựa chọn đề tài...........................................................................................4
3. Các nghiên cứu liên quan ...................................................................................5
4. Mục tiêu nghiên cứu............................................................................................7
5. Cách tiếp cận và phương pháp nghiên cứu ......................................................8
6. Đối tượng và phạm vi nghiên cứu......................................................................9
7. Ý nghĩa, quy mô và phạm vi áp dụng..............................................................10
8. Cấu trúc đề tài ...................................................................................................11
PHẦN 1: TỔNG QUAN TÀI LIỆU ...............................................................................12
1.1. Giới thiệu về ngôn ngữ tiếng Việt và xử lý ngôn ngữ tiếng Việt................12
1.1.1. Ngôn ngữ tự nhiên.........................................................................................12
1.1.2. Ngôn ngữ tiếng Việt......................................................................................17
1.1.3. Xử lý ngôn ngữ tự nhiên ...............................................................................22
1.1.4. Xử lý ngôn ngữ tiếng Việt.............................................................................30
1.2. Vector hóa dữ liệu ..........................................................................................32
1.2.1. Word Vector..................................................................................................33
1.2.2. Word2Vec .....................................................................................................34
1.2.3. Doc2Vec........................................................................................................37
1.3. Các phương pháp phân lớp...........................................................................42
1.3.1. K-Nearest Neighbor ......................................................................................42
1.3.2. Support Vector Machine ...............................................................................43
1.3.3. Gaussian ........................................................................................................45
1.3.4. Decision Tree ................................................................................................46
ii
1.3.5. Random Forest ..............................................................................................47
1.3.6. Convolutional Neural Net .............................................................................48
1.3.7. Ada Boost......................................................................................................49
1.3.8. Naïve Bayes ..................................................................................................51
1.3.9. Bayesian Quadratic Discriminant Analysis ..................................................53
PHẦN 2: PHƯƠNG PHÁP TIẾP CẬN.........................................................................55
2.1. Mô hình giải quyết bài toán ..........................................................................55
2.2. Tiền xử lý văn bản..........................................................................................56
2.2.1. Tách từ...........................................................................................................57
2.2.2. Loại bỏ hư từ và các dấu câu không cần thiết...............................................59
2.3. Vector hóa dữ liệu ..........................................................................................59
2.4. Áp dụng các phương pháp phân lớp ............................................................60
PHẦN 3: KẾT QUẢ - THẢO LUẬN.............................................................................62
3.1. Dữ liệu thực nghiệm.......................................................................................62
3.2. Kết quả thực nghiệm và đánh giá.................................................................62
3.2.1. Thực nghiệm để phân lớp đánh giá chủ quan và khách quan .......................64
3.2.2. Thực nghiệm để phân tích cảm xúc tích cực và tiêu cực..............................66
PHẦN 4: KẾT LUẬN - ĐỀ NGHỊ .................................................................................72
4.1. Kết luận...........................................................................................................72
4.1.1 Những kết quả đạt được.................................................................................72
4.1.2. Tính mới của đề tài........................................................................................72
4.1.3. Những hạn chế ..............................................................................................73
4.1.4. Hướng phát triển ...........................................................................................73
4.2. Kiến nghị.........................................................................................................73
TÀI LIỆU THAM KHẢO...............................................................................................75
PHỤ LỤC A: DOWNLOAD.............................................................................................1
PHỤ LỤC B: SOURCE CODE ........................................................................................2
1. Tách từ bằng công cụ UETSegmenter...............................................................2
2. Tách hư từ và dấu câu bằng ngôn ngữ Python trên Pycharm........................6
3. Huấn luyện dữ liệu bằng ngôn ngữ Python trên Pycharm..............................9
iii
DANH MỤC HÌNH ẢNH
Hình 1.1. Information Extraction..............................................................................27
Hình 1.2. LatentSemantic Analysis...........................................................................27
Hình 1.3. Named Entity Recognition........................................................................28
Hình 1.4. Parse Tree..................................................................................................28
Hình 1.5. Pre-processing...........................................................................................29
Hình 1.6. Sentiment Analysis....................................................................................29
Hình 1.7. Cách biểu diễn từ ‘Queen’ dưới dạng One-hot Vector.............................33
Hình 1.8. Cách biểu diễn các từ trên Word2Vec ......................................................34
Hình 1.9. Mô hình Continous Bag of Words ............................................................35
Hình 1.10. Mô hình Continuous Skip-gram..............................................................36
Hình 1.11. Mô hình của Distributed Bag of Words..................................................39
Hình 1.12. Mô hình Distributed Memory .................................................................40
Hình 1.13. Mô hình K-Nearest Neighbor .................................................................43
Hình 1.14. Mô hình Support Vector Machine – Linear............................................44
Hình 1.15. Mô hình Support Vector Machine – RBF...............................................44
Hình 1.16. Hàm từ tiến trình Gaussian .....................................................................45
Hình 1.17. Mô hình Decision Tree............................................................................46
Hình 1.18. Mô hình Random Forest .........................................................................47
Hình 1.19. Mô hình Convolutional Neural Net ........................................................49
Hình 1.20. Giản đồ Ada Boost..................................................................................50
Hình 1.21. Phân lớp Naive Bayes .............................................................................52
Hình 1.22. So sánh LDA với QDA...........................................................................53
Hình 2.1. Sơ đồ phân tích cảm xúc tổng quan. .........................................................55
Hình 2.2. Các giai đoạn tiền xử lý văn bản được sử dụng........................................57
iv
DANH MỤC BẢNG BIỂU
Bảng 1.1. So sánh sự khác biệt giữa tiếng Việt và tiếng Anh...................................20
Bảng 1.2. Khoảng cách giữa các từ đến từ ‘France’.................................................41
Bảng 3.1. Bộ dữ liệu VLSP 2016..............................................................................62
Bảng 3.2. Bộ dữ liệu VLSP 2016 sau khi tiền xử lý.................................................62
Bảng 3.3. Kết hợp mô hình vector hóa dữ liệu với các phương pháp phân lớp .......63
Bảng 3.4. Độ chính xác khi phân lớp chủ quan và khách quan (%).........................64
Bảng 3.5. Độ chính xác khi phân lớp tích cực và tiêu cực (%) ................................66
Bảng 3.6. Khảo sát sự ổn định của độ chính xác khi huấn luyện (%) ......................69
Bảng 3.7. Hiệu suất của các phương pháp phân lớp cảm xúc (đo bằng F1).............70
Bảng 3.8. So sánh kết quả giữa phương pháp đề xuất với các phương pháp trước..71
1
TÓM TẮT
Phân tích cảm xúc người dùng là một trong những bài toán quan trọng và phức
tạp trong xử lí ngôn ngữ tự nhiên nhưng giá trị mà nó mang lại thì rất cần thiết trong
cuộc Cách mạng 4.0. Để tiếp cận bài toán này, chúng ta phải xây dựng một mô hình
máy học để có thể phân loại được đánh giá người dùng. Trong nghiên cứu này, chúng
tôi đề xuất sử dụng Doc2Vec cho bước biểu diễn dữ liệu và kết hợp với các phương
pháp phân lớp khác nhau để phân tích cảm xúc người dùng. Đề xuất của chúng tôi
được thử nghiệm trên dữ liệu chung VLSP 2016 và thu được kết quả khả quan.
2
ĐẶT VẤN ĐỀ
1. Tổng quan về vấn đề được nghiên cứu
Xử lý ngôn ngữ tự nhiên – XLNNTN (Natural Language Processing – NLP) là
khái niệm để chỉ các kĩ thuật, phương pháp thao tác trên ngôn ngữ tự nhiên bằng máy
tính. Chúng ta cần phân biệt ngôn ngữ tự nhiên như tiếng Việt, tiếng Anh, tiếng Nhật,
… là những ngôn ngữ trong giao tiếp thường ngày và ngôn ngữ nhân tạo như ngôn
ngữ lập trình, ngôn ngữ máy, …. Đây là một lĩnh vực kết hợp của khoa học máy tính
(Computer Science) với trí tuệ nhân tạo (Artificial Intelligence) và ngôn ngữ học tính
toán (Computational Linguistics) liên quan tới sự tương tác giữa ngôn ngữ con người
(Natural Language) với máy tính. Trong trí tuệ nhân tạo thì xử lý ngôn ngữ tự nhiên
là một trong những phần khó nhất vì nó liên quan đến việc phải hiểu được ý nghĩa
của ngôn ngữ – công cụ hoàn hảo nhất của tư duy và giao tiếp. Còn trong xử lý ngôn
ngữ tự nhiên có hai quan điểm cơ bản đó là: “Xử lý các từ ngữ bằng máy tính” và
“Làm cho máy tính hiểu được các từ ngữ”. Hiện tại, cả hai hướng này đều đang được
tích cực nghiên cứu và phát triển, nhờ đó rất nhiều các hệ thống hiệu quả đã và đang
được tạo ra.
Để máy tính có thể hiểu được ngôn ngữ tự nhiên, ngôn ngữ con người thì điều
đó không phải dễ nhưng ngày nay, những nghiên cứu về lĩnh vực xử lý ngôn ngữ tự
nhiên nhằm tạo cho máy tính khả năng hiểu giao tiếp được bằng ngôn ngữ tự nhiên
với con người đã không chỉ còn là lý thuyết nữa mà trên thế giới đã có rất nhiều ứng
dụng hiệu quả của XLNNTN vào đời sống chúng ta. Có thể kể đến rất nhiều như: các
bộ dịch tự động của Google, Lạc Việt; xử lý văn bản và ngôn ngữ; tìm kiếm thông
tin; chiết suất thông tin; trợ lý ảo Siri của Apple hay Cortana của Microsoft; tóm tắt
văn bản; phân loại văn bản; data mining và web mining; khai phá dữ liệu; …. Bên
cạnh đó, XLNNTN được xây dựng dựa trên ngôn ngữ học phức tạp, các nguyên lý
thống kê, và thuật toán mạng nơ-ron (neural network algorithms). Chương trình
XLNNTN có khả năng đọc và hiểu được văn bản với tốc độ cao. Do đó, dù có hàng
nghìn tài liệu hay thậm chí hàng tỷ văn bản, chương trình XLNNTN có thể “tiêu hoá”
3
nhanh chóng tất cả các thông tin này, từ đó có thể rút trích ra được những tri thức
(knowledge) đáng giá cho doanh nghiệp như: tri thức về các khách hàng, tri thức về
những đối thủ cạnh tranh, tri thức về các hoạt động trong doanh nghiệp như điều
hành, marketing, sales, kĩ thuật, sản phẩm, …. Còn về kinh tế, thông qua các thuật
toán tiên tiến, XLNNTN chỉ ra được ai, cái gì, khi nào, và ở đâu trong những nội dung
phi cấu trúc, từ đó có thể cung cấp các cấp độ hiểu biết cao hơn về công việc kinh
doanh [9]. Các ứng dụng của XLNNTN vào lĩnh vực kinh tế trên thế giới có thể kể
đến như:
- Marketing: Voice of the customer, social media analysis, churn analysis,
market research, survey analysis.
- Business: Competitive intelligence, document categorization, human
resources (voice of the employee), records retention, risk analysis, website
faceted navigation.
- Industry specific: Fraud detection, e-discovery, warranty analysis, medical
analytics research.
Ở Việt Nam, XLNNTN là môn bộ môn không mới nhưng chưa được phổ biến
rộng rãi và các số lượng nghiên cứu chuyên về tiếng Việt là rất ít. Nguyên nhân ngoài
việc số lượng người tìm hiểu về XLNNTN ở Việt Nam còn thấp, việc chính bản thân
tiếng Việt là một ngôn ngữ khó với rất nhiều bài toán cần giải quyết là một trong
những vấn đề chính khiến cho các nghiên cứu sinh, các lập trình viên khó có thể tiếp
cận và duy trì đam mê tìm hiểu. Có thể kể đến một số khó khăn như sự nhập nhằng
về ngữ nghĩa trong tiếng Việt, các bài toán tách từ, phân loại từ, dấu thanh hay dấu
câu, tiếng Việt thuộc ngôn ngữ đơn lập, tức là mỗi một tiếng (âm tiết) được phát âm
tách rời nhau và được thể hiện bằng một chữ viết. Đặc điểm này thể hiện rõ rệt ở tất
cả các mặt ngữ âm, từ vựng, ngữ pháp, … gây khó khăn cho việc chạy các chương
trình của XLNNTN nếu không tiền xử lý kĩ. Tuy nhiên, lợi ích của xử lý ngôn ngữ
tiếng Việt mang lại là rất lớn, nó có thể ứng dụng trong hầu hết các lĩnh vực và đặc
biệt là trong thời đại Cách mạng 4.0 đang diễn ra mạnh mẽ ở Việt Nam. Cụ thể, chúng
ta đang sống trong kỷ nguyên số, là thời đại mà thông tin được lan truyền nhanh
4
chóng thông qua các diễn đàn, các trang tin tức trực tuyến và mạng xã hội với hàng
tỷ người dùng trên thế giới. Lượng thông tin nội dung được người dùng tạo ra hằng
ngày cực kỳ lớn và đa dạng về mặt hình thức và chủ đề. Những thông tin này có
chung một đặc điểm: mang tính cá nhân nên tính đúng đắn, xác thực là tương đối
nhưng lại rất giá trị. Việc có thể khai thác và sử dụng lượng thông tin này là một trong
những thách thức lớn trong phân tích cảm xúc nói riêng và xử lý ngôn ngữ tự nhiên
nói chung.
Bên cạnh đó, việc phân tích cảm xúc trong văn bản được ứng dụng trong hàng
loạt các vấn đề như: quản trị thương hiệu doanh nghiệp, thương hiệu sản phẩm, quản
trị quan hệ khách hàng, khảo sát ý kiến xã hội học hay dễ hiểu hơn là phân tích đánh
giá của khách hàng về một sản phẩm nào đó, …. Việc dự đoán là cực kì quan trọng
vì ý kiến của người dùng ngày càng trở nên có giá trị hơn. Nói cách khác, thị hiếu, sự
quan tâm của cộng đồng là yếu tố quan trọng ảnh hưởng đến các sản phẩm như phim
ảnh, sách báo, thiết bị điện tử, hay các dịch vụ như nhà hàng, khách sạn, giao thông,
…. Do đó, vấn đề này được sự quan tâm không chỉ từ các nhà nghiên cứu mà còn từ
phía các công ty. Họ cần một hệ thống phân tích ý kiến khách hàng về sản phẩm một
cách tự động để nhanh chóng nắm bắt được cảm nhận cũng như thị hiếu của người
tiêu dùng để nâng cao khả năng cạnh tranh với đối thủ cùng lĩnh vực và thích nghi
với môi trường kinh doanh thường xuyên có biến động. Những thông tin này không
chỉ hữu dụng trong tiếp thị, xếp hạng đánh giá sản phẩm mà còn hỗ trợ trong việc
nhận biết vấn đề để xây dựng và phát triển sản phẩm.
Vậy nên, việc xây dựng một mô hình để giải quyết bài toán phân tích cảm xúc
người dùng là một yêu cầu cấp thiết và quan trọng cần được giải quyết trong công
cuộc tự động hóa hiện nay.
2. Lý do lựa chọn đề tài
Do nhu cầu phát triển của xã hội ngày càng tăng, nhất là về lĩnh vực kinh tế cũng
như công nghệ. Việc phân tích cảm xúc trong văn bản được ứng dụng trong hàng loạt
các vấn đề như: quản trị thương hiệu doanh nghiệp, thương hiệu sản phẩm, quản trị
5
quan hệ khách hàng, khảo sát ý kiến xã hội học hay dễ hiểu hơn là phân tích đánh giá
của khách hàng về một sản phẩm nào đó, …. Việc dự đoán là cực kì quan trọng vì ý
kiến của người dùng ngày càng trở nên có giá trị hơn. Thị hiếu, sự quan tâm của cộng
đồng là yếu tố ảnh hưởng chính đến các sản phẩm như phim, sách, thiết bị điện tử,
…. Do đó, vấn đề này được sự quan tâm không chỉ từ các nhà nghiên cứu mà còn từ
phía các công ty. Họ cần một hệ thống phân tích ý kiến khách hàng về sản phẩm một
cách tự động để nhanh chóng nắm bắt được cảm nhận và thị hiếu của người tiêu dùng
để nâng cao khả năng cạnh tranh với đối thủ cạnh và thích nghi với môi trường kinh
doanh thường xuyên có biến động. Những thông tin này không chỉ hữu dụng trong
tiếp thị, xếp hạng đánh giá sản phẩm mà còn hỗ trợ trong việc nhận biết vấn đề để
xây dựng và phát triển sản phẩm.
Còn trong nghiên cứu, việc xây dựng hệ thông phân tích cảm xúc người dùng là
một bước tiến lớn xong công động xử lý ngôn ngữ tự nhiên, giúp giải quyết được
nhiều vấn đề đang mắc phải. Xây dựng mô hình giải quyết bài toán phân tích cảm
xúc người dùng. Cụ thể chúng tôi chia cảm xúc người dùng ra thành các trạng thái
cảm xúc phân biệt. Từ đó, chúng tôi tiếp cận bài toán phân tích cảm xúc người dùng
bằng phương pháp phân lớp. Trong đó, mỗi bình luận diễn đạt cảm xúc từ người dùng
được biểu diễn thành một vector để đưa vào huấn luyện mô hình phân lớp.
3. Các nghiên cứu liên quan
Phân tích cảm xúc người dùng (Sentiment Analysis) là một chủ đề đầy thách
thức trong lĩnh vực máy học (Machine Learning). Nhiệm vụ của bài toán này là phát
hiện ra thái độ mang tính lâu dài, màu sắc tình cảm, khuynh hướng niềm tin vào các
đối tượng hay người nào đó. Tuy nhiên, mọi người thể hiện các cảm nhận của mình
thông qua ngôn ngữ tự nhiên vốn thường có sự nhập nhằng về ngữ nghĩa đã gây
không ít khó khăn trong việc xử lý thông tin. Bên cạnh đó, người dùng còn sử dụng
các từ viết tắt, từ lóng hay các kí hiệu biểu cảm như ‘=))’, ‘:(’, ‘>_<’, ... để thể hiện
trạng thái cảm xúc của họ.
6
Các nghiên cứu về phân tích cảm xúc đã xuất hiện từ đầu những năm 2000 [16]
của Bo Pang và Lillian Lee đã cho kết quả rất tốt, tạo tiền đề cho những bước tiến sau
này. Các chủ đề nghiên cứu trải dài từ các lĩnh vực như phân tích các đánh giá phim
[12], các nhà hàng, khách sạn, món ăn, …. Và để có thể giải quyết bài toán phân tích
cảm xúc này, các nghiên cứu đã sử dụng các phương pháp như: máy học [20], thống
kê [17] hay phương pháp dựa trên luật kết hợp với ngữ liệu [18].
Với ngôn ngữ tiếng Việt, các nghiên cứu về phân tích cảm xúc của câu văn
có thể kể tới như: Kieu và Pham [10] giới thiệu phân lớp cảm xúc dành cho tiếng Việt
dựa trên hệ thống luật và mô tả các thực nghiệm trên bộ dữ liệu là các bài đánh giá
về sản phẩm máy tính; Duyen và cộng sự [11] sử dụng các thuật toán máy học như
SVM, MEM trên các đánh giá khách sạn từ Agoda; Van và cộng sự [14] sử dụng
SVM để phân loại các bình luận trên Facebook; Tran và Phan [15] đưa ngôn ngữ bối
cảnh vào câu để cung cấp thêm thông tin phân tích cảm xúc; Trinh và cộng sự [42]
đã phân tích tình cảm các bình luận tiếng Việt trên Facebook dựa trên từ điển; Vo và
cộng sự [44] đã phân tích cảm xúc trên 5 bộ dữ liệu tiếng Việt khác nhau thông qua
mô hình kết hợp mới giữa Hierarchical Dirichlet Process (HDP) và Support Vector
Machine (SVM); Son Trinh, Luu Nguyen và Minh Vo phân tích cảm xúc người dùng
bằng cách kết hợp từ điển và máy học trêm các đánh giá sản phẩm bằng tiếng Việt
[45]; Bang và cộng sự [46] đã phân loại ý kiến cho các phản hồi đặt phòng khách sạn
dựa trên cấu trúc câu và phân tích câu chủ quan; Quan Hoang Vo và cộng sự [19]
dùng một phương pháp mới kết hợp các ưu điểm của Convolutional Neural Network
(CNN) và Long Short Term Memory (LSTM) để phân tích cảm xúc trên 2 bộ dữ liệu
VS và VLSP 2016; Phan và Cao [37] đã giới thiệu một khuôn khổ để khai thác các
văn bản không có cấu trúc dưới dạng các nhận xét tiếng Việt về địa điểm ăn uống
được đề xuất bằng Skip-Gram và SVM để phân lớp. Ngoài ra, còn có các nghiên cứu
liên quan khác về tiếng Việt như: Ha và cộng sự [35] đã nâng cấp mô hình Featured-
based Opinion Mining and Summarizing (FMOS) với VietSentiWordNet và sử dụng
trên các đánh giá về điện thoại di động; Le và cộng sự [36] đã kết hợp các gói phần
mềm mã nguồn mở có sẵn và triển khai các phần mềm mã nguồn mở mới để tạo ra
7
một giải pháp mã nguồn mở cho phép xử lý văn bản tiếng Việt; Nguyen và cộng sự
[38] đã đề xuất một cách tiếp cận để khai thác ý kiến công chúng từ văn bản tiếng
Việt bằng cách sử dụng một từ điển tình cảm miền cụ thể để cải thiện độ chính xác
trên bộ dữ liệu về sản phẩm và dịch vụ trực tuyến; Le và cộng sự [39] đã đề xuất một
cách tiếp cận để trích xuất và phân loại các thuật ngữ khía cạnh cho tiếng Việt bằng
phương pháp máy học bán giám sát GK-LDA và sử dụng phương pháp dựa trên từ
điển trong suy luận theo khía cạnh; Bach và công sự [40] đã tiến hành nghiên cứu
thực nghiệm về khai thác các câu so sánh trong tiếng Việt với mục tiêu xác định các
câu so sánh trong tài liệu và công nhận các quan hệ trong các câu so sánh được xác
định; Pham và cộng sự [41] sử dụng các từ đại diện để đánh giá các bình luận bằng
tiếng Việt với mô hình mạng nơ-ron mới gồm 3 lớp; Phu và cộng sự [43] tạo từ điển
gồm các tính từ tiếng Việt bằng nhiều quy tắc dựa vào ngữ cảnh đã được sử dụng
rộng rãi cho các nghiên cứu phân loại ngữ nghĩa, ….
Nguồn cảm hứng sâu xa giúp chúng tôi tiếp cận đến XLNNTN ngoài những lợi
ích mà nó mang lại thì không thể kể đến những bộ công cụ đắc lực cho công nghệ và
liên quan mật thiết đến ngôn ngữ của các nhà nghiên cứu nước ngoài mà ngôn ngữ
chính là tiếng Anh: Phân loại văn bản bằng SVM của Sassano [20]; Phân tích cảm
xúc người dùng bằng phương pháp “lát cắt cực tiểu” của Pang và Lee [12]; Phân loại
yêu cầu dựa trên CNN và LSTM trên các nhận xét trực tuyến của người dùng của
Guggilla và cộng sự [21]; Phân loại văn bản bằng phương pháp phân lớp Gaussian
của Stavrakas và cộng sự [22]. Ngoài ra, không thể kể đến các nghiên cứu về ngôn
ngữ tiếng Việt như: Phân tích cảm xúc người dùng bằng phương pháp SVM trên các
bình luận Facebook của Van và cộng sự [14], bài viết về Phân tích cảm xúc của Cuong
và cộng sự [13] đăng trong hội thảo VLSP 2016.
4. Mục tiêu nghiên cứu
Tìm hiểu các lí thuyết cần thiết để xây dựng được mô hình để giải quyết bài toán
phân lớp cảm xúc người dùng tiếng Việt thông qua các văn bản là các bài đánh giá,
bình luận, ... với cảm xúc mong đợi ở hai dạng định tính:
8
- Xác định tính tích cực – tiêu cực của văn bản.
- Xác định tính chủ quan – khách quan của văn bản.
Bên cạnh đó, mô hình giải quyết bài toán phải tối ưu về độ chính xác, hiệu suất
cũng
như thời gian thực hiện, giúp giải quyết các thách thức, các vấn đề mắc phải trong
phân tích cảm xúc người dùng nói riêng và xử lý ngôn ngữ tự nhiên ở Việt Nam nói
chung.
5. Cách tiếp cận và phương pháp nghiên cứu
Do sự phát triển từng ngày của XLNNTN, nhu cầu của người dùng ngày càng
tăng nên các công cụ liên quan cũng được ra đời từ đó. Những ứng dụng từ phương
pháp phân lớp như: Phân tích cảm xúc của một dòng bình luận; lọc các bình luận có
ý nghĩa đóng góp; … sẽ góp phần giúp doanh nghiệp, tổ chức dễ dàng nhìn nhận ra
được nhu cầu và ý muốn của người dùng. Từ đó công ty sẽ nâng cấp các chức năng
mà người dùng quan tâm nhiều đến hoặc cho ra đời các sản phẩm hợp với thị hiếu
người tiêu dùng hơn, góp phần phát triển công ty theo hướng tích cực hơn. Chúng ta
có thể thấy XLNNTN có vai trò cũng như tầm quan trọng khá lớn đến sự phát triển
của doanh nghiệp ở thời đại công nghệ liên tục đổi mới như thế này. Vì ảnh hưởng to
lớn nêu trên, việc tiếp tục định hướng và phát triển các sản phẩm của XLNNTN mà
cụ thể là phương pháp phân lớp, là nhu cầu thiết yếu hiện nay.
Muốn hiểu rõ hơn về XLNNTN để xây dựng các công cụ mới cũng như sử dụng
tối ưu được các công trình có sẵn, trước tiên phải hiểu rõ về ngôn ngữ mà chúng ta
sử dụng đó là tiếng Việt. Tiếng Việt là ngôn ngữ chung của 85% người Việt Nam,
thuộc họ Nam Á, đã xuất hiện cách đây 6000 năm trước. Tiếng Việt có cấu tạo khá
phức tạp (sử dụng 27 kí tự Latin, 6 thanh điệu, có các nguyên âm, phụ âm, từ đơn, từ
ghép) [1] từ đó gây ra nhiều rắc rối, các trường hợp nhập nhằng về ngữ nghĩa khiến
máy tính khó có thể hiểu được. Để giải quyết những rắc rối trên chúng ta phải trải
qua các giai đoạn tiền xử lý văn bản như: xóa thẻ tag, ghép các câu ghép lại, loại bỏ
hư từ, gán nhãn, …. Sau đó, chúng ta sử dụng các phương pháp vector hóa dữ liệu
9
như Distributed Memory (DM) hay Distributed Bag of Words (DBoW) để chuyển
hóa các câu thành vector. Đây là bước rất quan trọng, nó quy định các công việc như:
bỏ qua các từ có tần số xuất hiện thấp, số chiều vector mà mình muốn, số lần huấn
luyện dữ liệu; …. Sau cùng, các phương pháp phân lớp được sử dụng để phân lớp dữ
liệu (gán nhãn dữ liệu). Tùy vào các phương pháp khác nhau, chúng ta có thể thu
được các độ chính xác khác nhau.
Tuy nhiên, để làm được tất cả việc trên là một điều không hề dễ, chúng tôi đã
tham khảo khá nhiều tài liệu từ nhiều nguồn, đọc hiểu và phân tích một cách chi tiết.
Cuối cùng, chúng tôi hệ thống hóa các tài liệu có liên quan đến đề tài trong các sách,
báo chí, tiểu luận khoa học và trên Internet lại và tiến hành nghiên cứu, lựa chọn các
bài viết, phương pháp nghiên cứu có tính chuyên môn và thực tiễn cao để áp dụng và
kết hợp với mô hình của chúng tôi để có thể đạt được kết quả tốt nhất.
6. Đối tượng và phạm vi nghiên cứu
Nghiên cứu về ngôn ngữ tự nhiên với xử lý ngôn ngữ tự nhiên nói chung và ngôn
ngữ tiếng Việt với xử lý ngôn ngữ tiếng Việt nói riêng. Trong đó tiền xử lý tiếng Việt
là đặc biệt quan trọng, cụ thể là tách từ (Word Segmentation) và tách hư từ (Stop
Word) trong tiếng Việt và những dấu câu không liên quan.
Nghiên cứu về phương pháp Doc2Vec (Paragraph Vector) và các lý thuyết tiền
đề như Word Vector, Word2Vec, … với hai mô hình của phương pháp:
- Distributed Bag of Words (DBoW)
- Distributed Memomry (DM)
Nghiên cứu về các phương pháp phân lớp:
- K-Nearest Neighbor
- Support Vector Machine với Linear SVM và RBF SVM
- Gaussian
- Decision Tree
- Random Forest
- Neural Net
10
- Ada Boost
- Naïve Bayes
- Quadratic Discriminant Analysis
7. Ý nghĩa, quy mô và phạm vi áp dụng
- Ý nghĩa khoa học:
Hướng nghiên cứu về trí tuệ nhân tạo ở Việt Nam đang ngày càng được quan
tâm, đặc biệt là trong cuộc Cách mạng công nghệ 4.0. Đề tài này góp phần thúc đẩy
sự phát triển của trí tuệ nhân tạo nói chung và cộng đồng xử lý ngôn ngữ tự nhiên ở
Việt Nam nói riêng, là số ít trong số các đề tài phân tích cảm xúc người dùng trong
tiếng Việt với một đề xuất mới và hiệu quả là dùng Doc2Vec để vector hóa dữ liệu
và tiến hành phân lớp cảm xúc người dùng với các định tính.
- Ý nghĩa thực tiễn:
Phân tích cảm xúc không chỉ có sự quan tâm từ các nhà nghiên cứu mà còn từ
phía các công ty, doanh nghiệp. Ứng dụng của đề tài phục vụ cho các hoạt động phát
triển sản phẩm, kinh doanh và thương mại cho các công ty, doanh nghiệp ở nhiều
mục đích và lĩnh vực khác nhau. Việc dự đoán là cực kì quan trọng vì ý kiến của
người dùng ngày càng trở nên có giá trị hơn. Do đó, các công ty và doanh nghiệp cần
một hệ thống phân tích ý kiến khách hàng về sản phẩm một cách tự động để nhanh
chóng nắm bắt được cảm nhận và thị hiếu của người tiêu dùng.
Đề xuất trong nghiên cứu giúp các doanh nghiệp có thể khai thác và sử dụng
lượng thông tin mà người dùng tạo ra như các bình luận, đánh giá về các sản phẩm
doanh nghiệp nhằm nâng cao khả năng cạnh tranh với đối thủ cùng lĩnh vực và thích
nghi với môi trường kinh doanh thường xuyên có biến động. Những thông tin này
không chỉ hữu dụng trong tiếp thị, xếp hạng đánh giá sản phẩm mà còn hỗ trợ trong
việc nhận biết vấn đề để xây dựng và phát triển sản phẩm.
- Quy mô và phạm vi áp dụng:
Đóng góp của đề tài áp dụng rộng rãi cho nhiều lĩnh vực ngoài kinh doanh như
giáo dục và đào tạo (phân tích đánh giá sinh viên dành cho môn học hay giảng viên),
11
giải trí (phân tích mức độ hài lòng của khách hàng dành cho dịch vụ), chính trị (phân
tích thái độ của người dân với chính sách), … vì tất cả các lĩnh vực này đều cần đến
một mô hình để giải quyết bài toán phân lớp cảm xúc người dùng (khách hàng, học
sinh, người sử dụng dịch vụ, người dân, …) một cách hiệu quả.
8. Cấu trúc đề tài
MỞ ĐẦU
Nêu lên nhu cầu thực tế và lý do thực hiện đề tài, đồng thời giới thiệu sơ lược
tổng quan về đề tài, mục tiêu phải đạt được cũng như cách tiếp cận, phương pháp, đối
tượng, phạm vi nghiên cứu và ý nghĩa đề tài.
PHẦN 1: TỔNG QUAN TÀI LIỆU
Giới thiệu về các lí thuyết được sử dụng trong đề tài như Doc2Vec (với các lí
thuyết tiền đề liên quan) và các thuật toán phân lớp.
PHẦN 2: PHƯƠNG PHÁP TIẾP CẬN
Giới thiệu về Mô hình giải quyết bài toán và các bước áp dụng lý thuyết vào mô
hình trên.
PHẦN 3: KẾT QUẢ - THẢO LUẬN
Mô tả, tiến hành thực nghiệm kiểm tra và đánh giá kết quả hoạt động của mô
hình.
PHẦN 4: KẾT LUẬN - ĐỀ NGHỊ
Nêu lên kết quả đạt được trong quá trình nghiên cứu và thực hiện đề tài. Nhận
xét đánh giá lại ưu nhược điểm của mô hình và mô tả hướng phát triển tiếp theo của
đề tài.
12
PHẦN 1: TỔNG QUAN TÀI LIỆU
1.1. Giới thiệu về ngôn ngữ tiếng Việt và xử lý ngôn ngữ tiếng Việt
1.1.1. Ngôn ngữ tự nhiên
Trong ngôn ngữ học, một ngôn ngữ tự nhiên là bất kỳ ngôn ngữ nào phát sinh,
không suy nghĩ trước trong não bộ của con người. Điển hình là một số ngôn ngữ mà
con người được sử dụng để giao tiếp với nhau, dù là ngôn ngữ âm thanh, ngôn ngữ
ký hiệu, ký hiệu xúc giác hay chữ viết [1]. Hiểu một cách đơn giản, ngôn ngữ tự nhiên
(Natural Language) là ngôn ngữ con người dùng để giao tiếp với nhau như tiếng Việt,
tiếng Anh, tiếng Pháp, … và khác với ngôn ngữ nhân tạo (Artificial Language) như
ngôn ngữ máy tính (Pascal, C, Python, …) hay mã Morse, Braille, ….
Theo thống kê, có khoảng 5600 ngôn ngữ trên thế giới, được phân bố rất không
đồng đều và chỉ có một số ít các ngôn ngữ là có chữ viết.
1.1.1.1. Đặc điểm
Các đặc điểm của ngôn ngữ tự nhiên [1]:
- Ngôn ngữ là một hiện tượng xã hội: không là hiện tượng tự nhiên, cá nhân,
sinh vật (di truyền), và là hiện tượng xã hội đặc biệt.
- Ngôn ngữ là phương tiện giao tiếp quan trọng nhất của con người: các phương
tiện khác được diễn giải qua ngôn ngữ.
- Ngôn ngữ là một hệ thống tín hiệu đặc biệt.
1.1.1.2. Phân loại
Các ngôn ngữ được phân loại dựa trên nhiều tiêu chí khác nhau [1]:
- Phân loại ngôn ngữ theo nguồn gốc lịch sử:
o Ấn Âu: dòng Ấn Độ, Iran, Bantic, Slave, Roman, Hy Lạp, German
(gồm: Đức, Anh, Hà Lan, ...).
o Sê-mít: dòng Sê mít, Ai cập, Kusit, Becbe, …
o Thổ: ngôn ngữ Thổ Nhĩ Kỳ, …
o Hán – Tạng: dòng Hán, Tạng – Miến, …
13
o Nam Phương: dòng Nam – Thái, Nam Á. Trong dòng Nam Á có các
ngành: Nahali, Munda, Nicoba và Môn-Khmer. Trong ngành Môn –
Khmer có nhóm Việt – Mường, và trong nhóm này có ngôn ngữ tiếng
Việt.
- Phân loại ngôn ngữ theo trật tự từ:
Ví dụ: Tôi (S) đi (V) học (O)
o SVO: chiếm 32.4 - 41.8%, như: tiếng Anh, Pháp, Việt, …
o SOV: chiếm 41 - 51.8%, như: tiếng Nhật, ….
o VOS: chiếm 9 - 18%
o VSO: chiếm 2 - 3%
o OSV: chiếm cỡ 1%
o OVS: chiếm cỡ 1%
- Phân loại ngôn ngữ theo loại hình: được nhiều người sử dụng nhất.
Phân loại các ngôn ngữ theo quan hệ loại hình là cách phân loại ngôn ngữ theo
cấu trúc và chức năng của chúng. Kết quả phân loại cho ta những loại hình ngôn
ngữ. Loại hình ngôn ngữ không phải là một ngôn ngữ cụ thể nào, cũng không phải là
một tổng hoặc một tập các ngôn ngữ. Loại hình ngôn ngữ là tổng thể của những đặc
điểm hoặc thuộc tính về cấu trúc và chức năng vốn có của các ngôn ngữ thuộc nhóm
đó, phân biệt nhóm đó với các nhóm ngôn ngữ khác. Trong mỗi ngôn ngữ có thể thấy
ba nhóm thuộc tính: thuộc tính phổ quát, tức là thuộc tính chung, vốn có đối với tất
cả các ngôn ngữ thế giới; thuộc tính riêng biệt là thuộc tính chỉ có ở ngôn ngữ đó;
thuộc tính loại hình là thuộc tính đặc trưng cho từng nhóm ngôn ngữ nhất định. Thuộc
tính loại hình được dùng làm tiêu chuẩn để quy định vị trí của một ngôn ngữ nào đó
trong khi phân loại [2].
Nếu phương pháp so sánh – lịch sử hướng vào sự phát triển lịch sử của các
ngôn ngữ thân thuộc thì phương pháp so sánh – loại hình lại hướng vào hiện tại, vào
hoạt động của kết cấu ngôn ngữ. Nhiệm vụ trung tâm của phương pháp so sánh này
là tìm hiểu những cái giống nhau và khác nhau trong kết cấu của hai hoặc nhiều ngôn
ngữ. Khi so sánh, người ta có thể xuất phát từ các mặt khác nhau của ngôn ngữ như
14
ngữ âm, từ vựng và ngữ pháp. Nhưng sự so sánh các cấu trúc ngữ pháp có ý nghĩa to
lớn nhất, bởi vì cấu trúc ngữ pháp và vốn từ cơ bản là cơ sở của các ngôn ngữ, tạo
nên tính riêng biệt của chúng. Ngữ pháp lại bao gồm từ pháp và cú pháp. Những đặc
điểm về cú pháp không bao giờ biểu hiện một cách độc lập với những đặc điểm về từ
pháp. Cho nên trong so sánh loại hình, cấu trúc từ pháp có tầm quan trọng đặc biệt.
Bằng cách so sánh như vậy, người ta có thể rút ra đâu là những thuộc tính phổ quát
(còn được gọi là những phổ niệm ngôn ngữ), đâu là những thuộc tính riêng biệt và
đâu là những thuộc tính loại hình. Căn cứ vào những thuộc tính loại hình người ta
chia các ngôn ngữ thế giới thành các nhóm loại hình khác nhau [3]:
Ngôn ngữ hòa kết (flexional):
- Loại hình này còn được gọi là ngôn ngữ hoà kết, ngôn ngữ hình thức, ngôn
ngữ hữu cơ. Đặc điểm của loại hình này là: quan hệ ngữ pháp được diễn đạt
ở ngay trong bản thân từ nhờ từ có biến hình ở trong câu nói. Trong từ – một
trong những đơn vị cơ bản nhất của ngôn ngữ loại hình này – có sự đối lập
giữa căn tố với phụ tố: căn tố và phụ tố (nói chung là các hình vị trong từ) kết
hợp chặt chẽ với nhau, hoà làm một khối: giữa phụ tố và các ý nghĩa mà
chúng diễn đạt không có một sự tương ứng đơn giản kiểu một đối một (một
phụ tố – một ý nghĩa).
- Loại hình này bao gồm các ngôn ngữ: Đức, Latin, Hi Lạp, Anh, Nga, …
Ngôn ngữ chắp dính (agglutinate):
- Đặc điểm của loại hình này là quan hệ ngữ pháp cũng diễn đạt bên trong từ,
trong từ cũng có sự đối lập rõ rệt giữa căn tố và phụ tố; nhưng căn tố ít biến
đổi và có thể tách ra dùng độc lập thành từ; còn phụ tố thì kết hợp một cách
cơ giới với căn tố, mỗi phụ tố thường diễn đạt một ý nghĩa nhất định (quan
hệ 1 - 1).
- Loại hình khuất chiết và loại hình chắp dính là hai loại hình đã được xác định
từ lâu, ngay từ khi hướng loại hình học mới bắt đầu được hình thành. Hiện
nay cũng không có ai nghi ngờ về sự tồn tại của hai loại hình này và cũng
không có ai phản bác gì về những ngôn ngữ đã được quy vào hai loại hình
15
này. Từ trước đến nay ai ai cùng đều nhất trí rằng các ngôn ngữ Ấn – Âu (như
tiếng Phạn, tiếng Hi Lạp cổ, tiếng Latin, các tiếng Xlavơ (Slavic languages),
các tiếng Giecmanh (Germanic languages), các ngôn ngữ tiếng Semitic (như
tiếng Do Thái cổ, tiếng Ả – Rập) đều thuộc loại hình khuất chiết. Hầu hết các
dòng trên đây đều thuộc kiểu ngôn ngữ tổng hợp. Thuộc kiểu phân tích,
thường người ta chỉ dẫn tiếng Anh hiện đại làm ví dụ. Riêng một đôi nhà
nghiên cứu thì cũng nhập luôn cả tiếng Pháp vào kiểu phân tích ở trong nội
hạt loại hình khuất chiết.
- Còn đối với loại hình chắp dính thì người ta thường nhất trí cho rằng ví dụ
điển hình nhất là các ngôn ngữ Thổ Nhĩ Kì, các ngôn ngữ Uran – Antai và
một số ngôn ngữ châu Phi kiểu như ngôn ngữ Băngtu, Mông Cổ, Nhật Bản,
Triều Tiên.
Ngôn ngữ đơn lập (isolate):
- Những ngôn ngữ thuộc loại hình này còn được gọi là các ngôn ngữ không có
hình thái, ngôn ngữ không biến hình, ngôn ngữ đơn lập hai ngôn ngữ phân
tiết.
- Ở loại hình này, quan hệ ngữ pháp chỉ được diễn đạt bằng trật tự trước sau
của từ và/hoặc bằng các hư từ. Ở loại hình này, từ không có hiện tượng biến
hình. Trong một số ngôn ngữ thuộc loại hình này, đơn vị cơ bản là hình tiết:
đây là một đơn vị có nghĩa, có vỏ ngữ âm thường trùng với âm tiết, có khả
năng vừa dùng như từ vừa dùng như hình vị. Ở loại hình này, người ta thường
hay nói đến vấn đề khó xác định ranh giới từ, vấn đề khó phân biệt các yếu
tố hư với yếu tố thực cũng như vấn đề mặt cấu tạo từ ít phát triển.
- Loại hình đơn lập được xác định ở sau hai loại hình khuất chiết và chắp dính.
Người ta biết đến loại hình này sau khi tiếp xúc với văn ngôn Trung Quốc.
Trong cách định nghĩa loại hình hiện nay đang còn có chỗ khác nhau, nhưng
trong việc quy ngôn ngữ nào vào loại hình này thì người ta lại tương đối thống
nhất. Từ trước đến nay bao giờ tiếng Hán cũng được quy vào loại hình này,
đặc biệt là Hán cổ đại. Ngoài tiếng Hán, người ta còn kể đến các ngôn ngữ
16
thuộc khu vực Đông Nam Á như tiếng Việt, ngôn ngữ Aranta ở châu Úc và
các ngôn ngữ Eve, Ioruba ở châu Phi.
- Điểm thường gây tranh luận nhiều nhất ở loại hình này là việc quy các ngôn
ngữ vào các kiểu nhỏ: chẳng hạn, đứng trước tiếng Việt hiện đại, có người
đem nó xếp cùng tiếng Hán cổ đại và coi là ngôn ngữ căn tố; có người lại coi
nó là ngôn ngữ có thân từ.
Ngôn ngữ đa tổng hợp (polysynthetic):
- Đặc điểm của các ngôn ngữ hỗn nhập là một từ có thể tương ứng với một câu
trong các ngôn ngữ khác. Nghĩa là đối tượng hành động, trạng thái hành động
không được thể hiện bằng các thành phần câu đặc biệt (tân ngữ, trạng ngữ,
định ngữ, ...) như ở các ngôn ngữ khác, mà được thể hiện bằng các phụ tố
khác nhau trong hình thái động từ. Đôi khi chủ ngữ cũng nằm trong vị ngữ
động từ. Thí dụ: trong tiếng Tschinuk ở Bắc Mĩ, tương ứng với câu "Tôi đã
đến để cho cô cái này" là từ i-n-i-a-l-u-d-am, trong đó, gốc của động từ "cho"
chỉ đại diện bằng một phụ âm -d-, tiền tố -i- (ở đầu) biểu hiện thời quá khứ, -
n- biểu hiện ngôi thứ nhất, số ít; -i- thứ hai biểu hiện tân ngữ giới từ (cái
này), -a- biểu hiện tân ngữ giới từ (cô), -l- cho biết tân ngữ giới từ trên (cô)
không phải là trực tiếp mà là gián tiếp, -u- chỉ ra rằng hành động xảy ra từ
người nói (tức là người nói cho ai cái gì đó chứ không phải là nhận cái gì đó
của ai), phụ tố -am cuối cùng biểu hiện khái niệm về sự chuyển động có mục
đích, tức là chỉ ra rằng người nói không cho ai cái gì đó một cách đơn giản
mà đã đến với mục đích nhất định.
- Trong ví dụ trên, hình thái động từ chỉ chứa đựng tân ngữ là đại từ. Nhưng,
ở một số ngôn ngữ, hình thái động từ bao gồm cả danh từ. Trong trường hợp
này, danh từ bị rút gọn. Thí dụ: trong tiếng Louravetlan, từ t-y-k, aa-nmy-
rkyn có nghĩa là "Tôi giết con thú chạy". Ở đây, nmy là gốc của động từ
"giết"; rkyn là phụ tố chỉ thời hiện tại: t- là tiền tố chỉ ngôi thứ nhất số ít; -
kaa là hình thức rút gọn của danh từ k, oran (g) y "con thú chạy"; và -y- là
nguyên âm được phát triển về mặt ngữ âm, liên hệ các phần ý nghĩa khác
17
nhau của từ. Chính đặc điểm các bộ phận tương ứng với các thành phần câu
khác nhau được chứa đựng trong một từ mà người ta gọi là các ngôn ngữ trên
là "hỗn nhập" hay "đa tổng hợp".
- Cần nhớ rằng, trong các ngôn ngữ hỗn nhập, bên cạnh các hình thái hỗn nhập
còn có cả các hình thái độc lập. Cùng một mối quan hệ có thể vừa được diễn
đạt bằng một hình thái động từ trọn vẹn (hỗn nhập) vừa được diễn đạt bằng
những thành phần câu độc lập. Chính vì vậy những ý kiến cho rằng trong các
ngôn ngữ hỗn nhập không có các từ tách rời mà chỉ có từ – câu là không đúng.
- Một số nhà ngôn ngữ học cho rằng, việc tách ra các ngôn ngữ hỗn nhập là
dựa vào những đặc điểm về cú pháp, cho nên phải đặt nó dưới sự phân chia
theo nguyên tắc cú pháp cùng với các ngôn ngữ phân tích và tổng hợp. Tuy
nhiên, về mặt hình thái học, các ngôn ngữ hỗn nhập cũng thể hiện những cấu
trúc hình thái riêng. Ở các ngôn ngữ này, các hình vị liên kết với nhau theo
nguyên tắc dính. Nhưng trong các ngôn ngữ hỗn nhập có cả hiện tượng
chuyển dạng nội bộ nữa. Do đó, xét về mặt cấu trúc của các hình vị và mối
liên hệ của chúng thì các ngôn ngữ hỗn nhập vừa có những đặc điểm của các
ngôn ngữ chắp dính vừa có đặc điểm của các ngôn ngữ chuyển dạng.
- Các ngôn ngữ Ấn ở Nam Mĩ và đông nam Xibêri, ... là các ngôn ngữ hỗn
nhập.
1.1.2. Ngôn ngữ tiếng Việt
Tiếng Việt thuộc ngôn ngữ đơn lập, tức là mỗi một tiếng (âm tiết) được phát âm
tách rời nhau và được thể hiện bằng một chữ viết. Đặc điểm này thể hiện rõ rệt ở tất
cả các mặt ngữ âm, từ vựng, ngữ pháp.
1.1.2.1. Đặc điểm ngữ âm
Trong tiếng Việt có một loại đơn vị đặc biệt gọi là ‘tiếng’. Về mặt ngữ âm, mỗi
tiếng là một âm tiết. Hệ thống âm vị tiếng Việt phong phú và có tính cân đối, tạo ra
tiềm năng của ngữ âm tiếng Việt trong việc thể hiện các đơn vị có nghĩa. Nhiều từ
18
tượng hình, tượng thanh có giá trị gợi tả đặc sắc. Khi tạo câu, tạo lời, người Việt rất
chú ý đến sự hài hoà về ngữ âm, đến nhạc điệu của câu văn [3].
1.1.2.2. Đặc điểm từ vựng
Mỗi tiếng, nói chung, là một yếu tố có nghĩa. Tiếng là đơn vị cơ sở của hệ thống
các đơn vị có nghĩa của tiếng Việt. Từ tiếng, người ta tạo ra các đơn vị từ vựng khác
để định danh sự vật, hiện tượng, … chủ yếu nhờ phương thức ghép và phương thức
láy.
Việc tạo ra các đơn vị từ vựng ở phương thức ghép luôn chịu sự chi phối của quy
luật kết hợp ngữ nghĩa, ví dụ: đất nước, máy bay, nhà lầu xe hơi, nhà tan cửa nát,
… Hiện nay, đây là phương thức chủ yếu để sản sinh ra các đơn vị từ vựng. Theo
phương thức này, tiếng Việt triệt để sử dụng các yếu tố cấu tạo từ thuần Việt hay vay
mượn từ các ngôn ngữ khác để tạo ra các từ, ngữ mới, ví dụ: tiếp thị, karaoke, thư
điện tử (e-mail), thư thoại (voice mail), phiên bản (version), xa lộ thông tin, siêu liên
kết văn bản, truy cập ngẫu nhiên, ....
Việc tạo ra các đơn vị từ vựng ở phương thức láy thì quy luật phối hợp ngữ âm
chi phối chủ yếu việc tạo ra các đơn vị từ vựng, chẳng hạn: chôm chỉa, chỏng
chơ, đỏng đa đỏng đảnh, thơ thẩn, lúng lá lúng liếng, ....
Vốn từ vựng tối thiểu của tiếng Việt phần lớn là các từ đơn tiết (một âm tiết, một
tiếng). Sự linh hoạt trong sử dụng, việc tạo ra các từ ngữ mới một cách dễ dàng đã
tạo điều kiện thuận lợi cho sự phát triển vốn từ, vừa phong phú về số lượng, vừa đa
dạng trong hoạt động. Cùng một sự vật, hiện tượng, một hoạt động hay một đặc trưng,
có thể có nhiều từ ngữ khác nhau biểu thị. Tiềm năng của vốn từ ngữ tiếng Việt được
phát huy cao độ trong các phong cách chức năng ngôn ngữ, đặc biệt là trong phong
cách ngôn ngữ nghệ thuật. Hiện nay, do sự phát triển vượt bậc của khoa học – kĩ
thuật, đặc biệt là công nghệ thông tin, thì tiềm năng đó còn được phát huy mạnh mẽ
hơn [3].
19
1.1.2.3. Đặc điểm ngữ pháp
Từ của tiếng Việt không biến đổi hình thái. Đặc điểm này sẽ chi phối các đặc
điểm ngữ pháp khác. Khi từ kết hợp từ thành các kết cấu như ngữ, câu, tiếng Việt rất
coi trọng phương thức trật tự từ và hư từ [3].
Việc sắp xếp các từ theo một trật tự nhất định là cách chủ yếu để biểu thị các
quan hệ cú pháp. Trong tiếng Việt khi nói “Anh ta lại đến” là khác với “Lại đến anh
ta“. Khi các từ cùng loại kết hợp với nhau theo quan hệ chính phụ thì từ đứng trước
giữ vai trò chính, từ đứng sau giữ vai trò phụ. Nhờ trật tự kết hợp của từ mà “củ cải”
khác với “cải củ“, “tình cảm” khác với “cảm tình“. Trật tự chủ ngữ đứng trước, vị
ngữ đứng sau là trật tự phổ biến của kết cấu câu tiếng Việt.
Phương thức hư từ cũng là phương thức ngữ pháp chủ yếu của tiếng Việt. Nhờ
hư từ mà tổ hợp “anh của em” khác với tổ hợp “anh và em“, “anh vì em“. Hư từ cùng
với trật tự từ cho phép tiếng Việt tạo ra nhiều câu cùng có nội dung thông báo cơ bản
như nhau nhưng khác nhau về sắc thái biểu cảm. Ví dụ, so sánh các câu sau đây:
– Ông ấy không hút thuốc.
– Thuốc, ông ấy không hút.
– Thuốc, ông ấy cũng không hút.
Ngoài trật tự từ và hư từ, tiếng Việt còn sử dụng phương thức ngữ điệu. Ngữ điệu
giữ vai trò trong việc biểu hiện quan hệ cú pháp của các yếu tố trong câu, nhờ đó
nhằm đưa ra nội dung muốn thông báo. Trên văn bản, ngữ điệu thường được biểu
hiện bằng dấu câu. Chúng ta thử so sánh 2 câu sau để thấy sự khác nhau trong nội
dung thông báo:
– Đêm hôm qua, cầu gãy.
– Đêm hôm, qua cầu gãy.
1.1.2.4. So sánh với tiếng Anh
Tiếng Anh là ngôn ngữ phổ biến nhất thế giới với trên một phần tư dân số thế
giới sử dụng ngôn ngữ này (khoảng 400 triệu người bản ngữ và 1 – 1,6 triệu người
khác từ khắp nơi). Tiếng Anh là ngôn ngữ được hơn 60% các chương trình radio sử
20
dụng. Hơn 70% thư tín quốc tế được viết bằng tiếng Anh, và 80% các tài liệu và văn
bản về vi tính được lưu trữ bằng tiếng Anh. Tiếng Anh cũng là ngôn ngữ có nhiều từ
vựng nhất trên thế giới, với khoảng 2 triệu từ và cũng là một trong những nền văn
học vĩ đại nhất trong biên niên sử của loài người. Nên cũng không có gì lạ nếu các
nghiên cứu khoa cũng như các tài liệu đa phần là dùng tiếng Anh. Để hiểu rõ hơn về
những thuận lợi và khó khăn khi sử dụng 2 loại ngôn ngữ này, phía dưới là bảng so
sánh sự khác nhau giữa tiếng Việt và tiếng Anh.
Bảng 1.1. So sánh sự khác biệt giữa tiếng Việt và tiếng Anh
Tiếng Việt Tiếng Anh
Dấu thanh Có thanh, có dấu.
Khi thay đổi dấu sẽ thành từ
khác.
Không có dấu thanh.
Khi nói thì các từ tiếng Anh có
trọng âm.
Vần câu Không có từ nhiều vần,
thường chỉ có 1 vần.
Một từ có nhiều vần hoặc 1 vần.
Nguyên âm Gồm 12 nguyên âm đơn: a, ă,
â, e, ê, i, o, ô, ơ, u, ư, y.
Bao gồm 5 nguyên âm đơn: a, o, i,
e, u.
Phụ âm Các âm còn lại: b, c, d, đ, g, h,
k, l, m, n, p, q, r, s, t, v, x.
Các âm còn lại: b, c, d, f, g, h, j, k,
l, m, n, p, q, r, s, t, v, w, x, y, z.
Cách đọc Một chữ cái chỉ có một cách
đọc.
Cùng một chữ cái nhưng có nhiều
cách đọc trong một từ.
Cách đánh vần
Có thể đánh vần từng ký tự
phát âm thành từ.
Không thể (viết một đàng, phát âm
một nẽo), nếu gặp từ mới, phải đọc
theo người dạy hoặc tra từ điển
(tuyệt đối không tự đánh vần như
tiếng Việt).
Cách phát âm Không phát âm phụ âm cuối. Phát âm phụ âm cuối.
So sánh cách
đọc và cách viết
Viết (Tiếng Việt) = Đọc
(Tiếng Việt)
Viết (English) # Đọc (’ ɪŋɡlɪʃ)
21
Ngữ pháp
Chủ yếu là dùng thì hiện tại
còn quá khứ và tương lai chỉ
cần thêm “đã” hoặc “sẽ” và
tiếp diễn thì thêm “đang” là
xong.
Có 12 thì 3 thì đơn, 3 thì kép, 3 thì
tiếp diễn đơn, 3 thì tiếp diễn kép,
qui tắc rất là nhiêu khê, khó nhớ.
Do ảnh hưởng tiếng mẹ đẻ, người
Việt có khuynh hướng chỉ dùng
toàn thì hiện tại trong tiếng Anh.
Cách chia động
từ
Không chia động từ theo ngôi
và số, danh từ ít nhiều gì cũng
chỉ một dạng ,VD: anh “đi”,
tôi “đi”, hắn cũng “đi”; một
“chai”, hai cũng “chai”
Thì động từ biến dạng theo ngôi,
danh từ biến theo số.
VD: I “go”, you “go”, but he “goes”;
one “bottle”, but two “bottles”
Nhịp điệu
Có cao độ cao hơn, đọc/nói
theo từng từ, nhịp điệu lên
xuống theo thanh điệu (dấu
thanh).
Cao độ thấp hơn, đọc/nói theo cụm
từ, có nhịp điệu lên xuống theo
ngữ cảnh.
Khẩu hình
miệng
Là ngôn ngữ đơn âm; khi nói,
không đưa hơi lên mũi.
Khi phát âm, đầu lưỡi thường
ở khoảng giữa khoang miệng.
Sau khi phát âm, luồng hơi từ
phổi bị giữ lại trong khoang
miệng và thoát ra ngoài rất ít.
Đóng khẩu hình miệng khi kết
thúc một từ.
Là ngôn ngữ đa âm; khi nói, đưa
hơi lên mũi.
Khi phát âm, đầu lưỡi chuyển
động và chạm vào nhiều nơi trong
khoang miệng.
Sau khi phát âm, luồng hơi từ phổi
di chuyển đến khoang miệng và
thoát ra ngoài khá nhiều.
Thường không đóng khẩu hình
miệng mà đọc nối tiếp với từ tiếp
theo (Điều này khiến khó nghe và
đọc).
22
Qua một số đặc điểm nổi bật vừa nêu trên đây, chúng ta có thể hình dung được
phần nào bản sắc và tiềm năng của tiếng Việt. Tuy nhiên, điều đó cũng đồng nghĩa
với việc tiếng Việt là một ngôn ngữ rất khó xử lý. Để máy tính có thể hiểu được,
chúng ta cần phải thực hiện rất nhiều công đoạn. Cụ thể chúng tôi sẽ nêu rõ ở phần
sau.
1.1.3. Xử lý ngôn ngữ tự nhiên
1.1.3.1. Khái niệm
Xử lý ngôn ngữ là một phạm trù trong xử lý thông tin với đầu vào là dữ liệu ngôn
ngữ, hay nói cách khác, đó là văn bản hoặc tiếng nói, Các dữ liệu này đang trở thành
kiểu dữ liệu chính của con người, và lưu dưới dạng điện tử. Đặc điểm chung của
chúng là không có cấu trúc (non-structured ), hoặc nửa câu trúc (semi-structured) và
không thể lưu lại dưới dạng bảng biểu. Vì vậy chúng ta cần phải xử lý chúng để có
thể chuyển từ dạng chưa hiểu thành dạng có thể hiểu.
Xử lý ngôn ngữ tự nhiên – XLNNTN (Natural Language Processing – NLP) là
lĩnh vực Khoa học máy tính kết hợp giữa Trí tuệ nhân tạo & Ngôn ngữ học tính toán
nhằm tập trung xử lý tương tác giữa con người và máy tính sao cho máy tính có thể
hiểu hay bắt chước được ngôn ngữ của con người.
Xử lý ngôn ngữ tự nhiên là hướng dẫn máy tính thực hiện và giúp đỡ con người
các công việc về ngôn ngữ như: dịch thuật, phân tích dữ liệu văn bản, nhận dạng tiếng
nói, tìm kiếm thông tin, tóm tắt văn bản [1].
1.1.3.2. Các bài toán thường gặp
Một số bài toán về xử lý ngôn ngữ tiêu biểu như [33]:
- Nhận dạng tiếng nói (Speech recognization): phổ biến trong các hệ thống trợ
lý ảo như Siri của Apple, Cortana của Microsoft, Google Assistant của
Google, Alexa của Amazon, ….
- Tổng hợp tiếng nói (Speech Synthesis): từ dữ liệu văn bản, phân tích và
chuyển thành tiếng nói. Hiện tại các hãng công nghệ lớn như IBM và Amazon
23
đều có dịch vụ Text to Speech (TTS) chất lượng tốt, có API để dùng trong
production, nhưng không hỗ trợ tiếng Việt. Ở Việt Nam cũng có một số
trường đại học, nhóm nghiên cứu đưa ra dịch vụ TTS như VAIS
(https://app.vais.vn/), AILAB (http://ailab.hcmus.edu.vn/vosdemo) và nổi
bật nhất là FPT Speech Systhesis (FSS) với nhiều tính năng, nhiều giọng đọc
và API mở cho cộng đồng.
- Nhận dạng ký tự quang học (Optical Character Recognition): từ một văn bản
in trên giấy hoặc các banner có thể chuyển thành một tệp văn bản lưu trên
máy tính. Với tiếng Việt, phần mềm nhận dạng chữ Việt in VnDOCR 4.0 có
khả năng nhận dạng trực tiếp các loại tài liệu được quét qua máy quét, không
cần lưu trữ dưới dạng tệp ảnh trung gian, phục vụ rất tốt cho nhu cầu số hóa
dữ liệu. Vào tháng 4 năm 2009, ABBYY – một hãng công nghệ hàng đầu
trên thế giới về lĩnh vực OCR đã tiến hành nghiên cứu và triển khai công
nghệ nhận dạng tiếng Việt. Với công nghệ này độ chính xác trong việc nhận
dạng tài liệu chữ in tiếng Việt lên tới hơn 99%.
- Dịch tự động (Machine Translation): Một công cụ phổ biến hiện nay là
Google Translate, ngoài ra còn có thể kể đến các công cụ thuần Việt khác
như Lạc Việt, Vdict, Baamboo, Evtran, ….
- Tóm tắt văn bản (Text Summarization): từ một văn bản dài, máy tóm tắt thành
một văn bản ngắn hơn với các nội dung chính cơ bản. Đây là một hướng đi
đang phát triển rất nhiều ở Việt Nam.
- Tìm kiếm và truy xuất thông tin (Information Retrieval): từ một nguồn có rất
nhiều tệp thông tin, tìm ra những tệp có liên quan đến câu hỏi cần tìm. Tiêu
biểu như Google Search, Yahoo Search, Bing, … hay một công cụ thuần Việt
là Tìm kiếm Cốc Cốc.
- Rút trích thông tin văn bản (Information Extraction): tìm ra những đoạn bên
trong của một tệp thông tin chứa nội dung ta cần biết.
- Khai phá dữ liệu (Data Mining): là quá trình tìm kiếm các mẫu từ tập dữ liệu
lớn (Data Set) và phân tích dữ liệu từ những quan điểm khác nhau. Nó cho
24
phép người dùng trong doanh nghiệp dùng để phân tích dữ liệu từ nhiều góc
độ khác nhau và tóm tắt các mối quan hệ xác định (relationship). Data Mining
rất hữu ích trong việc tăng doanh thu và cắt giảm chi phí. Đây là một hướng
đi rất tiềm năng ở Việt Nam.
Các bài toán trên có thể phân thành 3 loại sau:
- Xử lý tiếng nói và xử lý ảnh.
- Xử lý văn bản.
- Khai phá văn bản Web.
Đối với các bài toán về xử lý văn bản, chúng ta cần xử lý theo các tầng cơ bản
sau:
- Tầng ngữ âm (Phonetic and Phonological Layer): nghiên cứu về ngữ âm, mô
hình hóa các từ, cách phát âm, thanh điệu, ngữ điệu, trường độ âm tiết, độ
nhấn, biến thanh, ....
- Tầng hình thái (Morphological Layer): nghiên cứu về thành phần có nghĩa
của từ, cấu tạo của từ, hay nó được tách ra trong một câu như thế nào. VD
đối với bài toán Word Segmentation trong tiếng Việt, bạn có thể thấy một ví
dụ quen thuộc "Ông già đi nhanh quá", và bạn có thể hiểu theo 2 nghĩa: (Ông
già) (đi) (nhanh quá) hoặc (Ông) (già đi) (nhanh quá). Điều này có thể dẫn
đến nhập nhằng ngữ nghĩa, và làm ảnh hưởng rất lớn đến quá trình dạy máy
hiểu được ngôn ngữ con người.
- Tầng ngữ pháp (Syntactic Layer): nghiên cứu về các quan hệ cấu trúc giữa
các từ trong câu để tạo ra câu đúng. Các bài toán giải quyết tầng này như:
o Part Of Speach tagging: Xác định loại từ trong câu như danh từ, động
từ, giới từ, trợ từ, ….
o Chungking: Xác định cụm từ như cụm danh từ, cụm động từ, cụm
trạng từ, …. VD "học sinh" là cụm danh từ, "học" là cụm động từ,
"sinh học" là cụm trạng từ.
o Parsing: Phân tích cú pháp. VD (Học sinh) (học) (sinh học) là quan hệ
chủ ngữ – vị ngữ. Một số loại parsing bạn có thể tham khảo như: phân
25
tích cú pháp từ trên xuống (Top - Down Parsing), phân tích cú pháp
dự đoán (Predictive Parsing), ….
- Tầng ngữ nghĩa (Semantic Layer): nghiên cứu xác định nghĩa của từ và tổ
hợp của chúng. VD với từ "đi" người ta có hiểu "đi" là động tác "bước đi"
hoặc "đi" cũng có thể là "qua đời". Do đó để hiểu được ý nghĩa của từ, chúng
ta cần đặt nó trong ngữ cảnh của câu văn.
- Tầng ngữ dụng (Pragmatic layer): nghiên cứu mối quan hệ giữa ngôn ngữ và
ngữ cảnh sử dụng ngôn ngữ.
Trong một bài toán về xử lý ngôn ngữ, khi phân tích ở các tầng ngữ âm (1) đến
các tầng ngữ pháp (3) chúng ta gọi là phân tích sơ bộ (shallow parsing), thường được
áp dụng trong các bài toán như tìm kiếm thông tin, phân tích văn bản cho tổng hợp
tiếng nói, …. Tuy nhiên với một số bài toán đi sâu vào ngữ nghĩa như dịch tự động,
thì việc phân tích sơ bộ là chưa đủ, Khi đó, ít nhất chúng ta phải thực hiện đến tầng
ngữ nghĩa (4) ta sẽ có phân tích đầy đủ (fully parsing).
1.1.3.3. Các bước xử lý
Tương ứng với các tầng cơ bản trên, chúng ta cũng có các bước xử lý dựa trên
các tầng cơ bản đó.
Phân tích hình thái: Trong bước này từng từ sẽ được phân tích và các ký tự không
phải chữ (như các dấu câu) sẽ được tách ra khỏi các từ. Trong tiếng Anh và nhiều
ngôn ngữ khác, các từ được phân tách với nhau bằng dấu cách. Tuy nhiên trong Tiếng
Việt, dấu cách được dùng để phân tách các tiếng (âm tiết) chứ không phải từ. Cùng
với các ngôn ngữ như tiếng Trung, tiếng Hàn, tiếng Nhật, phân tách từ trong tiếng
Việt là một công việc không hề đơn giản.
Phân tích cú pháp: Dãy các từ sẽ được biến đổi thành các cấu trúc thể hiện sự
liên kết giữa các từ này. Sẽ có những dãy từ bị loại do vi phạm các luật văn phạm.
Phân tích ngữ nghĩa: Thêm ngữ nghĩa vào các cấu trúc được tạo ra bởi bộ phân
tích cú pháp.
26
Tích hợp văn bản: Ngữ nghĩa của một câu riêng biệt có thể phụ thuộc vào những
câu đứng trước, đồng thời nó cũng có thể ảnh hưởng đến các câu phía sau.
Phân tích thực nghĩa: Cấu trúc thể hiện điều được phát ngôn sẽ được thông dịch
lại để xác định nó thật sự có nghĩa là gì.
Tuy nhiên, ranh giới giữa 5 bước xử lý này cũng rất mong manh. Chúng có thể
được tiến hành từng bước một, hoặc tiến hành cùng lúc - tùy thuộc vào giải thuật và
ngữ cảnh cụ thể [1].
1.1.3.4. Thuật ngữ
Ambiguity – nhập nhằng (ở nhiều cấp độ: lexical – từ vựng, morphological –
hình vị, syntactic – cú pháp, semantic – ngữ nghĩa, domain – lĩnh vực). Ví dụ nhập
nhằng từ “đậu” đại diện cho một hành động hay “đậu” đại diện cho một loài thực
vật trong câu “Con ruồi đậu mâm xôi đậu”.
Anaphora – khử nhập nhằng thế đại từ. Ví dụ “The monkey ate the banana
because it was hungry”. Đại từ “it” thay thế cho monkey hay banana.
Bag of Words – mô hình thường dùng trong các tác vụ phân lớp văn bản (Text
Classification). Thông tin sẽ được biểu diễn thành tập các từ đi kèm với tần suất xuất
hiện của mỗi từ này trong văn bản. Bag of Words được dùng như feature để huấn
luyện cho classifier.
Corpus/Corpora – “ngữ liệu” là những “dữ liệu, cứ liệu của ngôn ngữ”, tức là
những chứng cứ thực tế sử dụng ngôn ngữ, được dùng để kiểm chứng các quy luật
của ngôn ngữ trong quá trình phân tích thống kê hay kiểm định giả thuyết thống kê
của các mô hình dự đoán. Có nhiều loại Corpora như bilingual parallel corpora (ngữ
liệu song ngữ) hay parallel corpora (ngữ liệu song song), ….
Explicit Semantic Analysis (ESA) - là tiến trình giúp máy hiểu được ý nghĩa của
văn bản, được sử dụng trong Information Retrieval, Document Classification,
Semantic Relatedness calculation (độ tương tự về nghĩa giữa các từ hay văn bản).
27
Information Extraction – là tiến trình rút trích ra các thông tin có cấu trúc một
cách tự động từ các nguồn dữ liệu không cấu trúc hay bán cấu trúc (unstructured/semi-
structure) ví dụ như các tài liệu văn bản hay các trang web.
Hình 1.1. Information Extraction
Latent Dirichlet Allocation (LDA) – kĩ thuật Topic Modeling thường dùng, ý
tưởng của LDA dựa trên nguyên lý mỗi topic là phân bố của các từ, mỗi văn bản là
sự trộn lẫn giữa nhiều topic, và mỗi từ phân bố vào một trong những topic này.
Latent Semantic Analysis (LSA) - tiến trình phân tích quan hệ giữa các văn bản
và các từ. Đầu ra là mối liên quan giữa các khái niệm, văn bản, và các từ. LSA giả sử
các từ gần nhau về mặt ý nghĩa sẽ xuất hiện trong các văn bản tương tự.
Hình 1.2. Latent Semantic Analysis
Morphological analysis (Phân tích hình thái):
- Phân tích phụ tố (affix): ví dụ anti-comput-er-iza-tion.
- Xử lý từ ghép (compound word): ví dụ carry out, out of sight, out of mind.
- Xử lý các trường hợp tỉnh lược (ellipsis): I’m, o’clock, Dr.
28
- Nhận diện tên riêng như John, Bush, IBM.
- Nhân diện ranh giới từ (word boundary): Tiếng Việt một từ có nhiều tiếng.
Ví dụ: chúm chím, tuổi tác, giáo viên, hiện đại hóa, …
Named Entity Recognition (NER) – là tiến trình xác định và phân loại các phần
tử trong văn bản vào các danh mục được định nghĩa trước như tên người, tên tổ chức,
địa điểm, giá trị tiền tệ, tỷ lệ phần trăm, ….
Hình 1.2. Named Entity Recognition
Parser (Phân tích ngữ pháp)
- Gán nhãn từ loại (Part Of Speech – POS tagging): một từ có nhiều từ loại như
Danh từ, Động từ, Tính từ, …
- Gán nhãn ranh giới ngữ: đâu là bắt đầu, kết thúc của các ngữ (phrase).
- Gán nhãn quan hệ ngữ pháp (grammatical relation).
- Gán nhãn cây cú pháp (parse tree).
Hình 1.3. Parse Tree
29
Pragmatics – phân tích ngữ dụng: từ “sentence” trong phân tích văn phạm có
nghĩa là câu, trong luật pháp có nghĩa là án tù. Do vậy, ta cần xem xét toàn bộ văn
bản để đưa ra ý nghĩa chính xác.
Pre-processing – tiền xử lý dữ liệu, xử lý sơ bộ văn bản: xóa bỏ những kí tự,
những mã điều khiển, những vùng không cần thiết cho hệ thống gồm: tách
đoạn/câu/từ (paragraph/sentence/word segmentation), làm sạch (cleaning), tích hợp
(integreation), chuyển đổi (transformation).
Hình 1.4. Pre-processing
Sentiment Analysis: sử dụng các kĩ thuật XLNNTN để rút trích thông tin chủ
quan của người dùng từ một câu nói hay một văn bản. Đây cũng là kĩ thuật khai thác
ý kiến người dùng xem họ đang có thái độ tích cực hay thái độ tiêu cực về sản phẩm
của công ty.
Hình 1.5. Sentiment Analysis
30
1.1.4. Xử lý ngôn ngữ tiếng Việt
1.1.4.1. Tình hình
Ở Việt Nam cũng đã có một số nhóm bắt đầu nghiên cứu về xử lý ngôn ngữ,
bước đầu đã có những kết quả nhất định như: các nhóm nghiên cứu đến từ các trường
đại học, đại học Bách Khoa, đại học Công Nghệ, đại học Khoa Học Tự Nhiên, Viện
Nghiên Cứu Công Nghệ Thông Tin, .... Nhóm Nghiên Cứu VLNP, bên ngoài Việt
Nam cũng có các nghiên cứu đến từ các nghiên cứu sinh Việt Nam tại JAIST. Phần
lớn các sản phẩm hiện nay đang tập trung vào lĩnh vực dịch máy, một sản phẩm khó,
và yêu cầu làm dài hạn. Ngoài ra còn có các bài toán phân loại chia nhóm văn bản,
.... Và đa phần chỉ dừng lại ở đề tài tiến sĩ, thạc sĩ, các bài báo nghiên cứu khoa học
mang tính chất tìm hiểu, chưa hệ thống và định hướng rõ ràng.
1.1.4.2. Khó khăn
Xử lý ngôn ngữ cũng đóng một vai trò quan trọng trong việc đẩy mạnh sự phát
triển của CNTT Việt Nam đến với thế giới. Tuy nhiên, ông ta ta xưa nay vẫn
nói: “Phong ba bão táp không bằng ngữ pháp Việt Nam”. Người Việt Nam đôi khi
còn gặp khó khăn khi sử dụng tiếng Việt, ấy thế mà, giờ chúng ta cần phải dạy cho
máy có thể dùng tiếng Việt như con người. Điều này quả thật rất khó khăn. Ngoài
những đặc điểm về ngôn ngữ tiếng Việt đã nêu ở phần 1.1.2, bản thân tiếng Việt cũng
đã là một ngôn ngữ phức tạp khiến cho việc xử lý gặp nhiều khó khăn với nhiều hiện
tượng:
- Tách từ
Ví dụ: “Ông già đi nhanh quá” có hai cách hiểu:
(1): Ông già/ đi/ nhanh quá.
(2): Ông/ già đi/ nhanh quá.
- Chơi chữ bằng các biện pháp như:
o Từ đồng âm:
Ví dụ: “Hổ mang bò lên núi” có hai cách hiểu:
(1) Con rắn hổ mang bò (trườn) lên núi.
31
(2) Con hổ (cọp) mang con bò lên núi.
o Đảo trật tự từ:
Ví dụ 1: “Đại học để học đại.”
Ví dụ 2: “Học trò là học trò con, tóc đỏ như son là con học trò
Tri huyện là tri huyện Thằng, ăn nói lăng nhăng là thằng tri huyện”
o Tách các thành tố của từ phức thành các tiếng, mỗi tiếng là một từ đơn
với ý nghĩa đã chuyển:
Ví dụ: “Hành chính thì hành là chính.”
o Nói lái:
Ví dụ 1: “Con cá đối nằm trên cối đá.”
Ví dụ 2: “Bí mật bị mất mới được bật mí.”
o …
- Teencode: Là một thuật ngữ chỉ kiểu chữ viết tắt của giới trẻ. Teencode xuất
hiện từ những những năm 2000, thời đại mà Internet bắt đầu phát triển cực
đại ở Việt Nam. Dạng ngôn ngữ này chủ yếu là dùng những từ viết tắt, chữ
cái thay thế và không có một trật tự hay quy luật nhất định, tất cả đều tùy
thuộc vào người viết.
Ví dụ 1: “c0n ch0’, m3o` v4` g4` ” có thể hiểu là “con chó, mèo và gà”
Ví dụ 2: “ wá wen thc” có thể hiểu là “quá quen thuộc”
Có thể thấy, sự nhập nhằng về ngữ nghĩa là một vấn đề cực kì nan giải trong
tiếng Việt. Vì thế, công đoạn tiền xử lý là cực kì quan trọng. Điều này sẽ được chúng
tôi nói rõ ở mục 2.2 Tiền xử lý văn bản.
Ngoài yếu tố khách quan do bản thân tiếng Việt, bên cạnh những thành quả ban
đầu thì các công trình nghiên cứu xử lý ngôn ngữ ở Việt Nam vẫn đang gặp rất nhiều
những khó khăn khác:
- Thường tập trung vào làm các sản phẩm cho người dùng cuối với nhiều kỳ
vọng vào các sản phẩm dịch máy, một loại sản phẩm khó làm và cần làm dài
hạn với những phương pháp hợp lý.
32
- Ít các nghiên cứu nền tảng, thiếu phát triển “hạ tầng cơ sở” cho xử lý ngôn
ngữ như công cụ và tài nguyên: từ điển (dùng cho máy), kho ngữ liệu, …
những thứ đã được cả cộng đồng quốc tế xác định là không thể thiếu trong
xử lý ngôn ngữ. Các bộ dữ liệu chưa hoàn chỉnh, không được công bố rộng
rãi hay thương mại hóa. Dữ liệu thường hay bị spam, sai chính tả, ngữ pháp
không rõ ràng.
- Phần đông là các nghiên cứu ngắn hạn và đơn lẻ ở mức đề tài thạc sỹ, tiến sỹ
với nhiều hạn chế về thời hạn và điều kiện. Đa số mới xây dựng được mô
hình, thử và kiểm tra trên những tập ngữ liệu nhỏ. Những kết quả đạt được ở
đây còn xa với mức sử dụng được trong thực tế.
- Rất có thể nhiều nhóm đã bắt đầu với sự khảo sát chưa đầy đủ, hoặc tiến hành
công việc khi có thể còn thiếu kiến thức. Do vấn đề mới và phức tạp, các hội
đồng đánh giá thẩm định các đề tài về xử lý ngôn ngữ còn chưa có chuyên
gia, chưa thật rõ hết cái có thể và cái chưa thể làm được, người làm đi đường
ngắn hay đường vòng, ….
- Đáng băn khoăn hơn cả là các nỗ lực của chúng ta chưa được liên kết, thiếu
chia sẻ, phân công, hợp tác theo một lộ trình có kế hoạch, thiếu “kim chỉ nam”
về xử lý tiếng Việt, và không có tính kế thừa về kết quả giữa các tầng của xử
lý ngôn ngữ tự nhiên. Nếu hình dung công việc trong các tầng của xử lý ngôn
ngữ được đánh số từ A đến Z, thì hầu hết các việc làm ra cho người dùng cuối
đều ở quãng từ R, S, … trở đi, mà muốn làm mấy việc này thì đều cần kết
quả của tất cả các bước từ A đến tận P, Q. Hiềm nỗi mỗi việc từ A, B, … đến
P, Q muốn làm tốt đều đòi hỏi một nhóm người làm trong một vài năm. Vì
vậy, nếu ai cũng phải làm từ A đến gì đấy tận P, Q, có lẽ sẽ không ai có thể
làm ra các sản phẩm R, S, ... Z đủ tốt.
1.2. Vector hóa dữ liệu
Để máy tính có thể hiểu được ngôn ngữ tự nhiên nói chung và ngôn ngữ tiếng
Việt nói riêng, sau khi tiến hành tiền xử lý dữ liệu thì chúng ta cần phải vector hóa
33
dữ liệu (Vectorization hay Vector Representation) để máy tính có thể hiểu được. Hiểu
một cách đơn giản, vector hóa dữ liệu là chuyển đổi dữ liệu từ các kí tự chữ cái thành
các vector trọng số. Hiện nay, có khá nhiều cách để ta vector hóa dữ liệu nhưng trong
nghiên cứu này, chúng tôi chọn phương pháp Doc2Vec. Lý do là, chúng tôi khảo sát
thấy rằng chưa có nghiên cứu nào khảo sát hiệu suất hoạt động của việc biểu diễn văn
bản thành vector thông qua Doc2Vec trong bài toán phân tích cảm xúc người dùng
trong ngôn ngữ tiếng Việt. Và để có thể hiểu hơn về Doc2Vec hơn, ta phải làm rõ các
khái niệm cơ bản hơn trong vector hóa dữ liệu.
1.2.1. Word Vector
Word Vector hay One-hot Vector (1-of-N) [7] là một vector có trọng số, biểu
diễn cho một từ với số chiều cụ thể và có toàn bộ giá trị là ‘0’ trừ tại một vị trí đặc
biệt nào đó thì giá trị sẽ là ‘1’. Giả sử từ điển của chúng ta chỉ có 5 từ: ‘King’, ‘Queen’,
‘Man’, ‘Woman’ và ‘Child’. Ta có thể biểu diễn từ ‘Queen’ như bên dưới.
Hình 1.6. Cách biểu diễn từ ‘Queen’ dưới dạng One-hot Vector
Số chiều của One-hot Vector sẽ phụ thuộc vào số lượng phần tử có trong tập hợp
mà chúng ta cần biểu diễn. Trong ví dụ trên vì tập hợp chúng ta chỉ có 5 phần tử
(‘King’, ‘Queen’, ‘Man’, ‘Woman’, ‘Child’) nên vector của chúng ta có số chiều là
5. Giả sử cần biểu diễn cho toàn bộ 102 ký tự trên bàn phím thì chúng ta sẽ cần vector
102 chiều [7]. Nhược điểm của cách biểu diễn này là ta không thu được nhiều ý nghĩa
34
trong việc so sánh các từ với nhau ngoại trừ so sánh bằng, các từ có ý nghĩa hơn
không được nhấn mạnh.
1.2.2. Word2Vec
1.2.2.1. Khái niệm
Word2Vec là biểu diễn các từ (word) dưới dạng một phân bố quan hệ với các từ
còn lại (distributed representation) [8]. Mỗi từ được biểu diễn bằng một vector có các
phần tử mang giá trị là phân bố quan hệ của từ này đối với các từ khác trong từ điển.
Như thế thay vì kết nối one-to-one giữa các phần từ trong vector và một từ, biểu diễn
từ sẽ là dàn trải tất cả các thành phần của vector, và mỗi phần tử trong vector sẽ góp
phần định nghĩa nhiều từ khác.
Hình 1.7. Cách biểu diễn các từ trên Word2Vec
Với cách biểu diễn như vậy, người ta khám phá ra rằng các vector mang lại cho
ta cả cú pháp và ngữ nghĩa ở mức độ nào đó để máy tính hiểu.
1.2.2.2. Phương thức hoạt động
Công cụ Word2Vec sẽ lấy các bộ ngữ liệu văn bản (Corpus) như là một input
đầu vào và từ đó tạo ra các output đầu ra là Word Vector [7]. Đầu tiên, nó sẽ xây
dựng một bộ từ vựng (Vocabulary) từ các văn bản dữ liệu sau khi đã được train, sau
35
đó nó sẽ học cách biểu diễn từ của Vector. Kết quả ta thu được là một file Word
Vector có thể được sử dụng trong các ứng dụng của XLNNTN và các ứng dụng học
máy.
Có hai mô hình chính trong Word2Vec: Continuous Bag of Words với
Continuous Skip-Gram và hai thuật toán chính được sử dụng trong Word2Vec là
Hierarchical Softmax và Negative Sampling [7].
Về mô hình:
- Continuous Bag of Words: Ý tưởng của mô hình CBOW là mô hình dự đoán
từ hiện tại dựa trên các từ xung quanh hay các từ trong cùng ngữ cảnh. Ngữ
cảnh ở đây có thể là một câu hay một tập các từ đứng cạnh nhau [3]. Đầu vào
của CBOW sẽ là tập các ngữ cảnh và đầu ra là từ hiện tại cần dự đoán. CBOW
sử dụng tầng Chiếu chung cho tất cả các từ, do vậy tất cả các từ sẽ được chiếu
vào vị trí giống nhau. Ngoài việc sử dụng các từ đứng trước từ hiện tại, CBOW
còn sử dụng các từ đứng sau từ hiện tại để phân loại chính xác từ hiện tại dựa
trên việc xây dựng bộ phân loại Log-Linear cho các từ đứng trước và từ đứng
sau. Trong mô hình này, thứ tự của các từ trong lịch sử không ảnh hưởng đến
việc dự đoán.
Hình 1.8. Mô hình Continous Bag of Words
36
- Continuous Skip-gram: Kiến trúc của Continuous Skip-gram giống với
Continuos Bag of Word, tuy nhiên thay vì dự đoán từ hiện tại dựa trên ngữ
cảnh, mô hình này tập trung vào việc tối ưu phân loại của một từ dựa trên từ
khác trong cùng một câu. Cụ thể, phương pháp này sử dụng đầu vào là từ hiện
tại cho bộ phân loại Log-Linear với tầng Chiếu liên tục và dự đoán các từ theo
một dải nào đó phía trước và sau từ hiện tại. Việc tăng kích thước dải sẽ cải
thiện chất lượng của Vector từ đầu ra, tuy nhiên nó cũng làm tăng độ phức tạp
tính toán. Vì những từ càng xa thì thường ít liên quan đến từ hiện tại hơn là
những từ gần nó, do vậy chúng ta có thể đánh trọng số cho những từ ở xa nhỏ
đi để khắc phục vấn đề này. Không giống với các kiến trúc mạng nơ-ron được
sử dụng trước đó để học Vector từ, việc đào tạo mô hình Skip-gram không sử
dụng đến các phép nhân ma trận dày đặc. Điều này khiến cho việc đào tạo trở
nên cực kỳ hiệu quả: một máy đơn đã được tối ưu có thể đào tạo hơn 100 tỉ từ
một ngày. Một mở rộng đáng ngạc nhiên của phương pháp này đó là việc áp
dụng các phép cộng/trừ đại số cho các Vector có thể thu được các kết quả bất
ngờ về ngữ nghĩa [3].
Hình 1.9. Mô hình Continuous Skip-gram
Về thuật toán:
37
- Hierarchical Softmax sử dụng cây nhị phân để biểu diễn tất cả các từ trong
vocabulary. Mỗi từ là một lá trong cây. Với mỗi lá , tồn tại duy nhất một đường
từ gốc tới lá này , như thế đường này sẽ được sử dụng để ước lượng xác suất
mỗi từ biểu diễn bởi lá .
- Negative Sampling chỉ đơn giản là chúng ta chỉ cập nhật sample của output
word mỗi vòng lặp . Target output word sẽ được giữ trong sample và được cập
nhật và chúng ta sẽ thêm một vài (non-target) từ như negative samples.
Mikolov cũng sử dụng một cách tiếp cận subsampling đơn giản để chống lại
sự mất cân bằng giữa các từ hiếm và thường xuyên trong tập huấn luyện (ví
dụ như “in”, “the”, and “a” cung cấp ít giá trị thông tin hơn các từ hiếm). Mỗi
từ trong tập huấn luyện được loại bỏ với một xác suất P(wi).
1.2.3. Doc2Vec
1.2.3.1. Khái niệm
Doc2Vec được giới thiệu bởi Quoc Le và Mikolov có tên đầy đủ là Paragraph
Vector [6]. Doc2Vec là một thuật toán không giám sát và nó là một sự cải tiến so với
Word2Vec, ngoài từ (word), ta còn có thể biểu diễn các câu (sentences) thậm chí một
đoạn văn bản (document) có độ dài thay đổi. Thuật toán không yêu cầu điều chỉnh
công việc cụ thể cho hàm trọng số cũng như không dựa vào các cây phân tích cú
pháp. Chúng ta có thể dễ dàng vector hóa cả một đoạn văn bản thành một vector có
số chiều cố định và nhỏ, từ đó có thể chạy bất cứ thuật toán phân lớp (classification)
cơ bản nào trên các vector đó. Việc xây dựng thuật toán này có các tiềm năng để khắc
phục những điểm yếu của mô hình của Word2Vec như Bag of Words. Các kết quả
thực nghiệm cho thấy Doc2Vec vượt trội hơn hẳn các kỹ thuật biểu diễn văn bản
khác. Có hai mô hình cơ bản của Doc2Vec là Distributed Bag of Words (DBoW) và
Distributed Memomry (DM).
38
1.2.3.2. Phương thức hoạt động
Các thuật toán phân loại hay phân cụm thường xuyên đòi hỏi tập văn bản đầu
vào biểu diễn dưới dạng một vector có độ dài cố định (fixed length vector). Các mô
hình phổ biến đó là bag-of-words và bag-of-n-grams. Bag-of-words đương nhiên là
làm mất đi ngữ nghĩa có thể tới từ thứ tự của các từ. Bag-of-n-grams chỉ xem xét
short context và không được tốt lắm nếu dữ liệu thưa thớt và số chiều lớn. Các nhà
nghiên cứu trước đây đã cố gắng kết hợp các distributed word vectors, ví dụ bằng
cách sử dụng một trọng số trung bình của tất cả các từ trong một tài liệu, hoặc kết
hợp các word vectors theo một thứ tự nhất định của cây phân tích cú pháp của một
câu. Các phương pháp này cũng chịu việc mất mát thông tin về thứ tự từ, và sau này
không dễ dàng để mở rộng câu.
Công việc xây dựng Doc2Vec của Quoc Le và Mikolov được lấy cảm hứng từ
các phương pháp học của Word Vector và Word2Vec. Ý tưởng là cần các Word
Vector để đóng góp cho nhiệm vụ dự đoán từ tiếp theo trong câu. Vì vậy, mặc dù các
vector được khởi tạo ngẫu nhiên nhưng chúng cũng có thể nắm bắt ngữ nghĩa và cho
ra một kết quả gián tiếp của nhiệm vụ dự đoán từ ngữ. Họ đã sử dụng ý tưởng này
tương tự cho các vector văn bản. Ưu điểm của phương pháp này là chúng được huấn
luyện từ dữ liệu không có nhãn và qua đó có thể hoạt động tốt trên các tác vụ không
có đủ dữ liệu có gán nhãn.
Mô hình Distributed Bag of Words:
- Distributed Bag of Words là một mô hình đơn giản. Hiểu một cách đơn giản,
DBoW không quan tâm thứ tự xuất hiện của các từ, huấn luyện nhanh hơn,
không sử dụng Local-Context/Neighboring. Mô hình DBoW chèn thêm một
"word" là ParagraphID, ParagraphID này đại diện cho văn bản được huấn
luyện [6]. Sau khi huấn luyện xong có thể hiểu các vector ParagraphID này là
vector embedded của các văn bản. Hình ảnh được mô tả trong bài báo:
39
Hình 1.10. Mô hình của Distributed Bag of Words
- Chi tiết hơn, phương thức ở trên dựa vào việc ghép nối các vector văn bản với
các vector từ ngữ để dự đoán từ tiếp theo trong kho văn bản, một cách khác là
bỏ qua từ ngữ cảnh ở đầu vào, nhưng bắt buộc mô hình dự đoán các từ được
lấy ngẫu nhiên ở đầu ra. Trong thực tế, điều này có nghĩa là mỗi lần lặp lại
ngẫu nhiên, chúng ta lấy được từ mẫu ở kho văn bản, sau đó lấy một từ ngẫu
nhiên ở kho văn bản và tạo thành một chương trình phân loại cho Doc2Vec.
Kỹ thuật này được thể hiện rõ trong hình 1.11.
- Ngoài việc đơn giản về mặt khái niệm, mô hình này yêu cầu lưu trữ ít dữ liệu
hơn. Chúng ta chỉ cần lưu trữ các trọng số softmax cũng như các trọng số trái
ngược với softmax và vector từ ngữ trong mô hình trước đó. Mô hình này cũng
tương tự như mô hình Skip-gram trong Word2Vec (Mikolov và cộng sự,
2013c)
Mô hình Distributed Memory:
- Distributed Memomry còn được gọi là mô hình bộ nhớ phân tán của vector
văn bản. Mô hình này xem một đoạn paragraph là một từ, sau đó nối từ này
vào tập các từ trong câu [6]. Đoạn mã biểu diễn cho đoạn văn có thể được coi
là một từ khác. Nó hoạt động như một bộ ghi nhớ những gì còn thiếu trong bối
xi+3
xi+2
D
xi
Văn bản được huấn luyện
Bộ
phân
lớp
Ma trận
văn bản
xi+1
40
cảnh hiện tại hoặc chủ đề của đoạn văn. Trong quá trình huấn luyện, vector
của paragraph và vector từ đều được cập nhật liên tục:
Hình 1.11. Mô hình Distributed Memory
- Mô hình gồm 2 giai đoạn chính:
o Huấn luyện để lấy các vector từ W, các trọng số softmax U, b và các
vector văn bản D trên các đoạn đã huấn luyện.
o “Giai đoạn suy luận” để lấy các vector văn bản D cho các đoạn văn mới
(chưa từng thấy trước đây) bằng cách thêm nhiều cột trong D và giảm
dần trên D trong khi giữ W, U , b cố định. Chúng tôi sử dụng D để đưa
ra dự đoán về số nhãn cụ thể bằng cách sử dụng các phương pháp phân
loại chuẩn như Logistic Regression, SVM, ....
- Các vector đoạn văn cũng giải quyết được một số điểm yếu chính của mô hình
bag-of-words. Đầu tiên, họ kế thừa một thuộc tính quan trọng của vector từ
ngữ, đó là ngữ nghĩa của từ. Trong trường hợp này, “mạnh mẽ” gần gũi với
“khỏe” hơn là “Paris”. Ưu điểm thứ hai là của vector văn bản là chúng xem
xét thứ tự từ ngữ, ít nhất là trong một đoạn văn nhỏ, trong cùng một cách mà
mô hình n-gram với mô hình lớn hơn làm. Điều này khá quan trọng, vì mô
hình n-gram bảo tồn rất nhiều thông tin của văn bản, bao gồm cả thứ tự từ ngữ.
Điều đó nói lên một điều, mô hình của chúng tôi có lẽ tốt hơn mô hình bag-of-
xi+3
D W
W
W
Văn bản được
huấn luyện
Bộ phân lớp
Trung bình cộng/
Kết hợp
Ma trận
văn bản
xi+2
xi+1
xi
41
n-gram vì mô hình bag-of-n-gram sẽ tạo ra một từ đại diện có xu hướng khái
quát hóa kém.
Một cách đơn giản để kiểm chứng phương thức vector hóa dữ liệu có hoạt động
hay không chính là tìm những từ gần nhất (closest words) với từ mà người dùng nhập
vào. Và điều này được thể hiện qua công cụ tính khoảng cách. Ví dụ: Nếu chúng ta
gõ từ ‘France’, công cụ sẽ hiển thị những từ tương đồng và khoảng cách giữa những
từ đó với từ ‘France’, chi tiết như bảng sau:
Bảng 1.2. Khoảng cách giữa các từ đến từ ‘France’
Từ Khoảng cách
Spain 0.678515
Belgium 0.665923
Netherlands 0.652428
Italy 0.633130
Switzerland 0.622323
Luxembourg 0.610033
Portugal 0.577154
Russia 0.571507
Germany 0.563291
Trong các thí nghiệm của Quoc Le và Mikolov. mỗi vector văn bản là một sự kết
hợp của hai vector: một được huấn luyện bởi vector đạt tiêu chuẩn với mô hình bộ
nhớ phân tán (Distributed Memory) và một được huấn luyện bằng vector văn bản với
sự phân tán từ ngữ (Distributed Bag of Words). Nếu chạy độc lập thì, DM thường
hoạt động tốt hơn, nhưng sự kết hợp của nó với DBoW thường phù hợp hơn trong
nhiều tác vụ khác nhau [6].
Trong bài báo này, chúng tôi sẽ chạy độc lập từng mô hình và kết hợp với các
phương pháp phân lớp. Qua quá trình huấn luyện, chúng tôi nhận thấy mô hình DBoW
cho độ chính xác cao hơn DM nhưng không đáng kể và phụ thuộc vào khối lượng
cũng như số vòng lặp khi huấn luyện, cụ thể sẽ được nêu rõ hơn ở phần thực nghiệm.
Phân tích cảm xúc trong tiếng việt bằng phương pháp máy học.pdf
Phân tích cảm xúc trong tiếng việt bằng phương pháp máy học.pdf
Phân tích cảm xúc trong tiếng việt bằng phương pháp máy học.pdf
Phân tích cảm xúc trong tiếng việt bằng phương pháp máy học.pdf
Phân tích cảm xúc trong tiếng việt bằng phương pháp máy học.pdf
Phân tích cảm xúc trong tiếng việt bằng phương pháp máy học.pdf
Phân tích cảm xúc trong tiếng việt bằng phương pháp máy học.pdf
Phân tích cảm xúc trong tiếng việt bằng phương pháp máy học.pdf
Phân tích cảm xúc trong tiếng việt bằng phương pháp máy học.pdf
Phân tích cảm xúc trong tiếng việt bằng phương pháp máy học.pdf
Phân tích cảm xúc trong tiếng việt bằng phương pháp máy học.pdf
Phân tích cảm xúc trong tiếng việt bằng phương pháp máy học.pdf
Phân tích cảm xúc trong tiếng việt bằng phương pháp máy học.pdf
Phân tích cảm xúc trong tiếng việt bằng phương pháp máy học.pdf
Phân tích cảm xúc trong tiếng việt bằng phương pháp máy học.pdf
Phân tích cảm xúc trong tiếng việt bằng phương pháp máy học.pdf
Phân tích cảm xúc trong tiếng việt bằng phương pháp máy học.pdf
Phân tích cảm xúc trong tiếng việt bằng phương pháp máy học.pdf
Phân tích cảm xúc trong tiếng việt bằng phương pháp máy học.pdf
Phân tích cảm xúc trong tiếng việt bằng phương pháp máy học.pdf
Phân tích cảm xúc trong tiếng việt bằng phương pháp máy học.pdf
Phân tích cảm xúc trong tiếng việt bằng phương pháp máy học.pdf
Phân tích cảm xúc trong tiếng việt bằng phương pháp máy học.pdf
Phân tích cảm xúc trong tiếng việt bằng phương pháp máy học.pdf
Phân tích cảm xúc trong tiếng việt bằng phương pháp máy học.pdf
Phân tích cảm xúc trong tiếng việt bằng phương pháp máy học.pdf
Phân tích cảm xúc trong tiếng việt bằng phương pháp máy học.pdf
Phân tích cảm xúc trong tiếng việt bằng phương pháp máy học.pdf
Phân tích cảm xúc trong tiếng việt bằng phương pháp máy học.pdf
Phân tích cảm xúc trong tiếng việt bằng phương pháp máy học.pdf
Phân tích cảm xúc trong tiếng việt bằng phương pháp máy học.pdf
Phân tích cảm xúc trong tiếng việt bằng phương pháp máy học.pdf
Phân tích cảm xúc trong tiếng việt bằng phương pháp máy học.pdf
Phân tích cảm xúc trong tiếng việt bằng phương pháp máy học.pdf
Phân tích cảm xúc trong tiếng việt bằng phương pháp máy học.pdf
Phân tích cảm xúc trong tiếng việt bằng phương pháp máy học.pdf
Phân tích cảm xúc trong tiếng việt bằng phương pháp máy học.pdf
Phân tích cảm xúc trong tiếng việt bằng phương pháp máy học.pdf
Phân tích cảm xúc trong tiếng việt bằng phương pháp máy học.pdf
Phân tích cảm xúc trong tiếng việt bằng phương pháp máy học.pdf
Phân tích cảm xúc trong tiếng việt bằng phương pháp máy học.pdf
Phân tích cảm xúc trong tiếng việt bằng phương pháp máy học.pdf
Phân tích cảm xúc trong tiếng việt bằng phương pháp máy học.pdf
Phân tích cảm xúc trong tiếng việt bằng phương pháp máy học.pdf
Phân tích cảm xúc trong tiếng việt bằng phương pháp máy học.pdf
Phân tích cảm xúc trong tiếng việt bằng phương pháp máy học.pdf
Phân tích cảm xúc trong tiếng việt bằng phương pháp máy học.pdf
Phân tích cảm xúc trong tiếng việt bằng phương pháp máy học.pdf
Phân tích cảm xúc trong tiếng việt bằng phương pháp máy học.pdf
Phân tích cảm xúc trong tiếng việt bằng phương pháp máy học.pdf
Phân tích cảm xúc trong tiếng việt bằng phương pháp máy học.pdf

More Related Content

Similar to Phân tích cảm xúc trong tiếng việt bằng phương pháp máy học.pdf

Thực trạng và giải pháp đẩy mạnh xuất khẩu sang thị trường Châu Phi
Thực trạng và giải pháp đẩy mạnh xuất khẩu sang thị trường Châu PhiThực trạng và giải pháp đẩy mạnh xuất khẩu sang thị trường Châu Phi
Thực trạng và giải pháp đẩy mạnh xuất khẩu sang thị trường Châu PhiT.H. Y.P
 
[CTU.VN]-[Luan van 010437]-Phan tich tinh hinh xuat nhap khau cua cong ty TNH...
[CTU.VN]-[Luan van 010437]-Phan tich tinh hinh xuat nhap khau cua cong ty TNH...[CTU.VN]-[Luan van 010437]-Phan tich tinh hinh xuat nhap khau cua cong ty TNH...
[CTU.VN]-[Luan van 010437]-Phan tich tinh hinh xuat nhap khau cua cong ty TNH...QUOCDATTRAN5
 
Đề tài: Phát triển hoạt động kinh doanh dịch vụ thẻ thanh toán của Ngân hàng ...
Đề tài: Phát triển hoạt động kinh doanh dịch vụ thẻ thanh toán của Ngân hàng ...Đề tài: Phát triển hoạt động kinh doanh dịch vụ thẻ thanh toán của Ngân hàng ...
Đề tài: Phát triển hoạt động kinh doanh dịch vụ thẻ thanh toán của Ngân hàng ...Viết thuê trọn gói ZALO 0934573149
 
Lập trình sáng tạo creative computing textbook mastercode.vn
Lập trình sáng tạo creative computing textbook mastercode.vnLập trình sáng tạo creative computing textbook mastercode.vn
Lập trình sáng tạo creative computing textbook mastercode.vnMasterCode.vn
 
Lập trình sáng tạo với Scratch – Nguyễn Hữu Hưng & Dương Lực
Lập trình sáng tạo với Scratch – Nguyễn Hữu Hưng & Dương LựcLập trình sáng tạo với Scratch – Nguyễn Hữu Hưng & Dương Lực
Lập trình sáng tạo với Scratch – Nguyễn Hữu Hưng & Dương LựcPixwaresVitNam
 
Xây dựng Robot tự hành dạng Nonholonomic và tổng hợp bộ điều khiển bám quỹ đạo
Xây dựng Robot tự hành dạng Nonholonomic và tổng hợp bộ điều khiển bám quỹ đạoXây dựng Robot tự hành dạng Nonholonomic và tổng hợp bộ điều khiển bám quỹ đạo
Xây dựng Robot tự hành dạng Nonholonomic và tổng hợp bộ điều khiển bám quỹ đạoMan_Ebook
 
Biện pháp đẩy mạnh chăm sóc khách hàng tại Bưu điện Trung tâm 1 – Bưu điện th...
Biện pháp đẩy mạnh chăm sóc khách hàng tại Bưu điện Trung tâm 1 – Bưu điện th...Biện pháp đẩy mạnh chăm sóc khách hàng tại Bưu điện Trung tâm 1 – Bưu điện th...
Biện pháp đẩy mạnh chăm sóc khách hàng tại Bưu điện Trung tâm 1 – Bưu điện th...nataliej4
 
Qtkdqttiuluanthamkhao
QtkdqttiuluanthamkhaoQtkdqttiuluanthamkhao
QtkdqttiuluanthamkhaoNguyen Nhung
 
Mẫu báo cáo thực tập lễ tân tại khách sạn, điểm cao
Mẫu báo cáo thực tập lễ tân tại khách sạn, điểm caoMẫu báo cáo thực tập lễ tân tại khách sạn, điểm cao
Mẫu báo cáo thực tập lễ tân tại khách sạn, điểm caoOnTimeVitThu
 
THIẾT KẾ KỸ THUẬT CÔNG TRÌNH ĐÊ CHẮN SÓNG CẢNG NEO ĐẬU VÀ CỬA BIỂN MỸ Á – GIA...
THIẾT KẾ KỸ THUẬT CÔNG TRÌNH ĐÊ CHẮN SÓNG CẢNG NEO ĐẬU VÀ CỬA BIỂN MỸ Á – GIA...THIẾT KẾ KỸ THUẬT CÔNG TRÌNH ĐÊ CHẮN SÓNG CẢNG NEO ĐẬU VÀ CỬA BIỂN MỸ Á – GIA...
THIẾT KẾ KỸ THUẬT CÔNG TRÌNH ĐÊ CHẮN SÓNG CẢNG NEO ĐẬU VÀ CỬA BIỂN MỸ Á – GIA...luuguxd
 
tieu chuan Eurocode
tieu chuan Eurocode   tieu chuan Eurocode
tieu chuan Eurocode Vo Anh
 
Nghiên cứu ảnh hưởng của một số thông số ĐLH tới độ bền trục các đăng xe tải ...
Nghiên cứu ảnh hưởng của một số thông số ĐLH tới độ bền trục các đăng xe tải ...Nghiên cứu ảnh hưởng của một số thông số ĐLH tới độ bền trục các đăng xe tải ...
Nghiên cứu ảnh hưởng của một số thông số ĐLH tới độ bền trục các đăng xe tải ...KhoTi1
 
Xây dựng chương trình kế toán bán hàng và công nợ phải thu cho Công ty CP đầu...
Xây dựng chương trình kế toán bán hàng và công nợ phải thu cho Công ty CP đầu...Xây dựng chương trình kế toán bán hàng và công nợ phải thu cho Công ty CP đầu...
Xây dựng chương trình kế toán bán hàng và công nợ phải thu cho Công ty CP đầu...
 
Báo cáo nghiên cứu khả thi dự án Khu xử lý chất thải rắn Nam Quảng Nam - Hạng...
Báo cáo nghiên cứu khả thi dự án Khu xử lý chất thải rắn Nam Quảng Nam - Hạng...Báo cáo nghiên cứu khả thi dự án Khu xử lý chất thải rắn Nam Quảng Nam - Hạng...
Báo cáo nghiên cứu khả thi dự án Khu xử lý chất thải rắn Nam Quảng Nam - Hạng...https://www.facebook.com/garmentspace
 

Similar to Phân tích cảm xúc trong tiếng việt bằng phương pháp máy học.pdf (20)

Thực trạng và giải pháp đẩy mạnh xuất khẩu sang thị trường Châu Phi
Thực trạng và giải pháp đẩy mạnh xuất khẩu sang thị trường Châu PhiThực trạng và giải pháp đẩy mạnh xuất khẩu sang thị trường Châu Phi
Thực trạng và giải pháp đẩy mạnh xuất khẩu sang thị trường Châu Phi
 
[CTU.VN]-[Luan van 010437]-Phan tich tinh hinh xuat nhap khau cua cong ty TNH...
[CTU.VN]-[Luan van 010437]-Phan tich tinh hinh xuat nhap khau cua cong ty TNH...[CTU.VN]-[Luan van 010437]-Phan tich tinh hinh xuat nhap khau cua cong ty TNH...
[CTU.VN]-[Luan van 010437]-Phan tich tinh hinh xuat nhap khau cua cong ty TNH...
 
Đề tài: Phát triển hoạt động kinh doanh dịch vụ thẻ thanh toán của Ngân hàng ...
Đề tài: Phát triển hoạt động kinh doanh dịch vụ thẻ thanh toán của Ngân hàng ...Đề tài: Phát triển hoạt động kinh doanh dịch vụ thẻ thanh toán của Ngân hàng ...
Đề tài: Phát triển hoạt động kinh doanh dịch vụ thẻ thanh toán của Ngân hàng ...
 
Đồ án môn học thiết kế trạm xử lý nước thải KCN Hiệp Phước
Đồ án môn học thiết kế trạm xử lý nước thải KCN Hiệp PhướcĐồ án môn học thiết kế trạm xử lý nước thải KCN Hiệp Phước
Đồ án môn học thiết kế trạm xử lý nước thải KCN Hiệp Phước
 
Creative computing textbook
Creative computing textbookCreative computing textbook
Creative computing textbook
 
Lập trình sáng tạo creative computing textbook mastercode.vn
Lập trình sáng tạo creative computing textbook mastercode.vnLập trình sáng tạo creative computing textbook mastercode.vn
Lập trình sáng tạo creative computing textbook mastercode.vn
 
Lập trình sáng tạo với Scratch – Nguyễn Hữu Hưng & Dương Lực
Lập trình sáng tạo với Scratch – Nguyễn Hữu Hưng & Dương LựcLập trình sáng tạo với Scratch – Nguyễn Hữu Hưng & Dương Lực
Lập trình sáng tạo với Scratch – Nguyễn Hữu Hưng & Dương Lực
 
Xây dựng Robot tự hành dạng Nonholonomic và tổng hợp bộ điều khiển bám quỹ đạo
Xây dựng Robot tự hành dạng Nonholonomic và tổng hợp bộ điều khiển bám quỹ đạoXây dựng Robot tự hành dạng Nonholonomic và tổng hợp bộ điều khiển bám quỹ đạo
Xây dựng Robot tự hành dạng Nonholonomic và tổng hợp bộ điều khiển bám quỹ đạo
 
Luận văn: Nghiên cứu một số bài men cho xương gốm của làng gốm Phước Tích
Luận văn: Nghiên cứu một số bài men cho xương gốm của làng gốm Phước TíchLuận văn: Nghiên cứu một số bài men cho xương gốm của làng gốm Phước Tích
Luận văn: Nghiên cứu một số bài men cho xương gốm của làng gốm Phước Tích
 
Luận văn: Nghiên cứu một số bài men cho xương gốm của làng gốm
Luận văn: Nghiên cứu một số bài men cho xương gốm của làng gốmLuận văn: Nghiên cứu một số bài men cho xương gốm của làng gốm
Luận văn: Nghiên cứu một số bài men cho xương gốm của làng gốm
 
Đề tài: Nâng cao hiệu quả huy động vốn tại Agribank Ngô Quyền
Đề tài: Nâng cao hiệu quả huy động vốn tại Agribank Ngô QuyềnĐề tài: Nâng cao hiệu quả huy động vốn tại Agribank Ngô Quyền
Đề tài: Nâng cao hiệu quả huy động vốn tại Agribank Ngô Quyền
 
Biện pháp đẩy mạnh chăm sóc khách hàng tại Bưu điện Trung tâm 1 – Bưu điện th...
Biện pháp đẩy mạnh chăm sóc khách hàng tại Bưu điện Trung tâm 1 – Bưu điện th...Biện pháp đẩy mạnh chăm sóc khách hàng tại Bưu điện Trung tâm 1 – Bưu điện th...
Biện pháp đẩy mạnh chăm sóc khách hàng tại Bưu điện Trung tâm 1 – Bưu điện th...
 
Qtkdqttiuluanthamkhao
QtkdqttiuluanthamkhaoQtkdqttiuluanthamkhao
Qtkdqttiuluanthamkhao
 
Mẫu báo cáo thực tập lễ tân tại khách sạn, điểm cao
Mẫu báo cáo thực tập lễ tân tại khách sạn, điểm caoMẫu báo cáo thực tập lễ tân tại khách sạn, điểm cao
Mẫu báo cáo thực tập lễ tân tại khách sạn, điểm cao
 
THIẾT KẾ KỸ THUẬT CÔNG TRÌNH ĐÊ CHẮN SÓNG CẢNG NEO ĐẬU VÀ CỬA BIỂN MỸ Á – GIA...
THIẾT KẾ KỸ THUẬT CÔNG TRÌNH ĐÊ CHẮN SÓNG CẢNG NEO ĐẬU VÀ CỬA BIỂN MỸ Á – GIA...THIẾT KẾ KỸ THUẬT CÔNG TRÌNH ĐÊ CHẮN SÓNG CẢNG NEO ĐẬU VÀ CỬA BIỂN MỸ Á – GIA...
THIẾT KẾ KỸ THUẬT CÔNG TRÌNH ĐÊ CHẮN SÓNG CẢNG NEO ĐẬU VÀ CỬA BIỂN MỸ Á – GIA...
 
Luận văn: Nghiên cứu phát triển công tác xuất khẩu cao su của Tập đoàn Công n...
Luận văn: Nghiên cứu phát triển công tác xuất khẩu cao su của Tập đoàn Công n...Luận văn: Nghiên cứu phát triển công tác xuất khẩu cao su của Tập đoàn Công n...
Luận văn: Nghiên cứu phát triển công tác xuất khẩu cao su của Tập đoàn Công n...
 
tieu chuan Eurocode
tieu chuan Eurocode   tieu chuan Eurocode
tieu chuan Eurocode
 
Nghiên cứu ảnh hưởng của một số thông số ĐLH tới độ bền trục các đăng xe tải ...
Nghiên cứu ảnh hưởng của một số thông số ĐLH tới độ bền trục các đăng xe tải ...Nghiên cứu ảnh hưởng của một số thông số ĐLH tới độ bền trục các đăng xe tải ...
Nghiên cứu ảnh hưởng của một số thông số ĐLH tới độ bền trục các đăng xe tải ...
 
Xây dựng chương trình kế toán bán hàng và công nợ phải thu cho Công ty CP đầu...
Xây dựng chương trình kế toán bán hàng và công nợ phải thu cho Công ty CP đầu...Xây dựng chương trình kế toán bán hàng và công nợ phải thu cho Công ty CP đầu...
Xây dựng chương trình kế toán bán hàng và công nợ phải thu cho Công ty CP đầu...
 
Báo cáo nghiên cứu khả thi dự án Khu xử lý chất thải rắn Nam Quảng Nam - Hạng...
Báo cáo nghiên cứu khả thi dự án Khu xử lý chất thải rắn Nam Quảng Nam - Hạng...Báo cáo nghiên cứu khả thi dự án Khu xử lý chất thải rắn Nam Quảng Nam - Hạng...
Báo cáo nghiên cứu khả thi dự án Khu xử lý chất thải rắn Nam Quảng Nam - Hạng...
 

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

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
 
GNHH và KBHQ - giao nhận hàng hoá và khai báo hải quan
GNHH và KBHQ - giao nhận hàng hoá và khai báo hải quanGNHH và KBHQ - giao nhận hàng hoá và khai báo hải quan
GNHH và KBHQ - giao nhận hàng hoá và khai báo hải quanmyvh40253
 
Giới thiệu Dự án Sản Phụ Khoa - Y Học Cộng Đồng
Giới thiệu Dự án Sản Phụ Khoa - Y Học Cộng ĐồngGiới thiệu Dự án Sản Phụ Khoa - Y Học Cộng Đồng
Giới thiệu Dự án Sản Phụ Khoa - Y Học Cộng ĐồngYhoccongdong.com
 
PHƯƠNG THỨC VẬN TẢI ĐƯỜNG SẮT TRONG VẬN TẢI
PHƯƠNG THỨC VẬN TẢI ĐƯỜNG SẮT TRONG VẬN TẢIPHƯƠNG THỨC VẬN TẢI ĐƯỜNG SẮT TRONG VẬN TẢI
PHƯƠNG THỨC VẬN TẢI ĐƯỜNG SẮT TRONG VẬN TẢImyvh40253
 
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
 
TÀI LIỆU BỒI DƯỠNG HỌC SINH GIỎI LÝ LUẬN VĂN HỌC NĂM HỌC 2023-2024 - MÔN NGỮ ...
TÀI LIỆU BỒI DƯỠNG HỌC SINH GIỎI LÝ LUẬN VĂN HỌC NĂM HỌC 2023-2024 - MÔN NGỮ ...TÀI LIỆU BỒI DƯỠNG HỌC SINH GIỎI LÝ LUẬN VĂN HỌC NĂM HỌC 2023-2024 - MÔN NGỮ ...
TÀI LIỆU BỒI DƯỠNG HỌC SINH GIỎI LÝ LUẬN VĂN HỌC NĂM HỌC 2023-2024 - MÔN NGỮ ...Nguyen Thanh Tu Collection
 
ĐỀ CHÍNH THỨC KỲ THI TUYỂN SINH VÀO LỚP 10 THPT CÁC TỈNH THÀNH NĂM HỌC 2020 –...
ĐỀ CHÍNH THỨC KỲ THI TUYỂN SINH VÀO LỚP 10 THPT CÁC TỈNH THÀNH NĂM HỌC 2020 –...ĐỀ CHÍNH THỨC KỲ THI TUYỂN SINH VÀO LỚP 10 THPT CÁC TỈNH THÀNH NĂM HỌC 2020 –...
ĐỀ CHÍNH THỨC KỲ THI TUYỂN SINH VÀO LỚP 10 THPT CÁC TỈNH THÀNH NĂM HỌC 2020 –...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
 
Danh sách sinh viên tốt nghiệp Đại học - Cao đẳng Trường Đại học Phú Yên năm ...
Danh sách sinh viên tốt nghiệp Đại học - Cao đẳng Trường Đại học Phú Yên năm ...Danh sách sinh viên tốt nghiệp Đại học - Cao đẳng Trường Đại học Phú Yên năm ...
Danh sách sinh viên tốt nghiệp Đại học - Cao đẳng Trường Đại học Phú Yên năm ...hoangtuansinh1
 
3-BẢNG MÃ LỖI CỦA CÁC HÃNG ĐIỀU HÒA .pdf - ĐIỆN LẠNH BÁCH KHOA HÀ NỘI
3-BẢNG MÃ LỖI CỦA CÁC HÃNG ĐIỀU HÒA .pdf - ĐIỆN LẠNH BÁCH KHOA HÀ NỘI3-BẢNG MÃ LỖI CỦA CÁC HÃNG ĐIỀU HÒA .pdf - ĐIỆN LẠNH BÁCH KHOA HÀ NỘI
3-BẢNG MÃ LỖI CỦA CÁC HÃNG ĐIỀU HÒA .pdf - ĐIỆN LẠNH BÁCH KHOA HÀ NỘIĐiện Lạnh Bách Khoa Hà Nội
 
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
 
1.DOANNGOCPHUONGTHAO-APDUNGSTEMTHIETKEBTHHHGIUPHSHOCHIEUQUA (1).docx
1.DOANNGOCPHUONGTHAO-APDUNGSTEMTHIETKEBTHHHGIUPHSHOCHIEUQUA (1).docx1.DOANNGOCPHUONGTHAO-APDUNGSTEMTHIETKEBTHHHGIUPHSHOCHIEUQUA (1).docx
1.DOANNGOCPHUONGTHAO-APDUNGSTEMTHIETKEBTHHHGIUPHSHOCHIEUQUA (1).docxTHAO316680
 
GIÁO TRÌNH KHỐI NGUỒN CÁC LOẠI - ĐIỆN LẠNH BÁCH KHOA HÀ NỘI
GIÁO TRÌNH  KHỐI NGUỒN CÁC LOẠI - ĐIỆN LẠNH BÁCH KHOA HÀ NỘIGIÁO TRÌNH  KHỐI NGUỒN CÁC LOẠI - ĐIỆN LẠNH BÁCH KHOA HÀ NỘI
GIÁO TRÌNH KHỐI NGUỒN CÁC LOẠI - ĐIỆN LẠNH BÁCH KHOA HÀ NỘIĐiện Lạnh Bách Khoa Hà Nội
 
SÁNG KIẾN ÁP DỤNG CLT (COMMUNICATIVE LANGUAGE TEACHING) VÀO QUÁ TRÌNH DẠY - H...
SÁNG KIẾN ÁP DỤNG CLT (COMMUNICATIVE LANGUAGE TEACHING) VÀO QUÁ TRÌNH DẠY - H...SÁNG KIẾN ÁP DỤNG CLT (COMMUNICATIVE LANGUAGE TEACHING) VÀO QUÁ TRÌNH DẠY - H...
SÁNG KIẾN ÁP DỤNG CLT (COMMUNICATIVE LANGUAGE TEACHING) VÀO QUÁ TRÌNH DẠY - H...Nguyen Thanh Tu Collection
 
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
 
BỘ LUYỆN NGHE VÀO 10 TIẾNG ANH DẠNG TRẮC NGHIỆM 4 CÂU TRẢ LỜI - CÓ FILE NGHE.pdf
BỘ LUYỆN NGHE VÀO 10 TIẾNG ANH DẠNG TRẮC NGHIỆM 4 CÂU TRẢ LỜI - CÓ FILE NGHE.pdfBỘ LUYỆN NGHE VÀO 10 TIẾNG ANH DẠNG TRẮC NGHIỆM 4 CÂU TRẢ LỜI - CÓ FILE NGHE.pdf
BỘ LUYỆN NGHE VÀO 10 TIẾNG ANH DẠNG TRẮC NGHIỆM 4 CÂU TRẢ LỜI - CÓ FILE NGHE.pdfNguyen 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
 
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
 
SLIDE - Tu van, huong dan cong tac tuyen sinh-2024 (đầy đủ chi tiết).pdf
SLIDE - Tu van, huong dan cong tac tuyen sinh-2024 (đầy đủ chi tiết).pdfSLIDE - Tu van, huong dan cong tac tuyen sinh-2024 (đầy đủ chi tiết).pdf
SLIDE - Tu van, huong dan cong tac tuyen sinh-2024 (đầy đủ chi tiết).pdfhoangtuansinh1
 

Recently uploaded (20)

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...
 
GNHH và KBHQ - giao nhận hàng hoá và khai báo hải quan
GNHH và KBHQ - giao nhận hàng hoá và khai báo hải quanGNHH và KBHQ - giao nhận hàng hoá và khai báo hải quan
GNHH và KBHQ - giao nhận hàng hoá và khai báo hải quan
 
Giới thiệu Dự án Sản Phụ Khoa - Y Học Cộng Đồng
Giới thiệu Dự án Sản Phụ Khoa - Y Học Cộng ĐồngGiới thiệu Dự án Sản Phụ Khoa - Y Học Cộng Đồng
Giới thiệu Dự án Sản Phụ Khoa - Y Học Cộng Đồng
 
PHƯƠNG THỨC VẬN TẢI ĐƯỜNG SẮT TRONG VẬN TẢI
PHƯƠNG THỨC VẬN TẢI ĐƯỜNG SẮT TRONG VẬN TẢIPHƯƠNG THỨC VẬN TẢI ĐƯỜNG SẮT TRONG VẬN TẢI
PHƯƠNG THỨC VẬN TẢI ĐƯỜNG SẮT TRONG VẬN TẢI
 
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
 
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...
 
TÀI LIỆU BỒI DƯỠNG HỌC SINH GIỎI LÝ LUẬN VĂN HỌC NĂM HỌC 2023-2024 - MÔN NGỮ ...
TÀI LIỆU BỒI DƯỠNG HỌC SINH GIỎI LÝ LUẬN VĂN HỌC NĂM HỌC 2023-2024 - MÔN NGỮ ...TÀI LIỆU BỒI DƯỠNG HỌC SINH GIỎI LÝ LUẬN VĂN HỌC NĂM HỌC 2023-2024 - MÔN NGỮ ...
TÀI LIỆU BỒI DƯỠNG HỌC SINH GIỎI LÝ LUẬN VĂN HỌC NĂM HỌC 2023-2024 - MÔN NGỮ ...
 
ĐỀ CHÍNH THỨC KỲ THI TUYỂN SINH VÀO LỚP 10 THPT CÁC TỈNH THÀNH NĂM HỌC 2020 –...
ĐỀ CHÍNH THỨC KỲ THI TUYỂN SINH VÀO LỚP 10 THPT CÁC TỈNH THÀNH NĂM HỌC 2020 –...ĐỀ CHÍNH THỨC KỲ THI TUYỂN SINH VÀO LỚP 10 THPT CÁC TỈNH THÀNH NĂM HỌC 2020 –...
ĐỀ CHÍNH THỨC KỲ THI TUYỂN SINH VÀO LỚP 10 THPT CÁC TỈNH THÀNH NĂM HỌC 2020 –...
 
Đề 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......................
 
Danh sách sinh viên tốt nghiệp Đại học - Cao đẳng Trường Đại học Phú Yên năm ...
Danh sách sinh viên tốt nghiệp Đại học - Cao đẳng Trường Đại học Phú Yên năm ...Danh sách sinh viên tốt nghiệp Đại học - Cao đẳng Trường Đại học Phú Yên năm ...
Danh sách sinh viên tốt nghiệp Đại học - Cao đẳng Trường Đại học Phú Yên năm ...
 
3-BẢNG MÃ LỖI CỦA CÁC HÃNG ĐIỀU HÒA .pdf - ĐIỆN LẠNH BÁCH KHOA HÀ NỘI
3-BẢNG MÃ LỖI CỦA CÁC HÃNG ĐIỀU HÒA .pdf - ĐIỆN LẠNH BÁCH KHOA HÀ NỘI3-BẢNG MÃ LỖI CỦA CÁC HÃNG ĐIỀU HÒA .pdf - ĐIỆN LẠNH BÁCH KHOA HÀ NỘI
3-BẢNG MÃ LỖI CỦA CÁC HÃNG ĐIỀU HÒA .pdf - ĐIỆN LẠNH BÁCH KHOA HÀ NỘI
 
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Ộ...
 
1.DOANNGOCPHUONGTHAO-APDUNGSTEMTHIETKEBTHHHGIUPHSHOCHIEUQUA (1).docx
1.DOANNGOCPHUONGTHAO-APDUNGSTEMTHIETKEBTHHHGIUPHSHOCHIEUQUA (1).docx1.DOANNGOCPHUONGTHAO-APDUNGSTEMTHIETKEBTHHHGIUPHSHOCHIEUQUA (1).docx
1.DOANNGOCPHUONGTHAO-APDUNGSTEMTHIETKEBTHHHGIUPHSHOCHIEUQUA (1).docx
 
GIÁO TRÌNH KHỐI NGUỒN CÁC LOẠI - ĐIỆN LẠNH BÁCH KHOA HÀ NỘI
GIÁO TRÌNH  KHỐI NGUỒN CÁC LOẠI - ĐIỆN LẠNH BÁCH KHOA HÀ NỘIGIÁO TRÌNH  KHỐI NGUỒN CÁC LOẠI - ĐIỆN LẠNH BÁCH KHOA HÀ NỘI
GIÁO TRÌNH KHỐI NGUỒN CÁC LOẠI - ĐIỆN LẠNH BÁCH KHOA HÀ NỘI
 
SÁNG KIẾN ÁP DỤNG CLT (COMMUNICATIVE LANGUAGE TEACHING) VÀO QUÁ TRÌNH DẠY - H...
SÁNG KIẾN ÁP DỤNG CLT (COMMUNICATIVE LANGUAGE TEACHING) VÀO QUÁ TRÌNH DẠY - H...SÁNG KIẾN ÁP DỤNG CLT (COMMUNICATIVE LANGUAGE TEACHING) VÀO QUÁ TRÌNH DẠY - H...
SÁNG KIẾN ÁP DỤNG CLT (COMMUNICATIVE LANGUAGE TEACHING) VÀO QUÁ TRÌNH DẠY - H...
 
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
 
BỘ LUYỆN NGHE VÀO 10 TIẾNG ANH DẠNG TRẮC NGHIỆM 4 CÂU TRẢ LỜI - CÓ FILE NGHE.pdf
BỘ LUYỆN NGHE VÀO 10 TIẾNG ANH DẠNG TRẮC NGHIỆM 4 CÂU TRẢ LỜI - CÓ FILE NGHE.pdfBỘ LUYỆN NGHE VÀO 10 TIẾNG ANH DẠNG TRẮC NGHIỆM 4 CÂU TRẢ LỜI - CÓ FILE NGHE.pdf
BỘ LUYỆN NGHE VÀO 10 TIẾNG ANH DẠNG TRẮC NGHIỆM 4 CÂU TRẢ LỜI - CÓ FILE NGHE.pdf
 
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á
 
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
 
SLIDE - Tu van, huong dan cong tac tuyen sinh-2024 (đầy đủ chi tiết).pdf
SLIDE - Tu van, huong dan cong tac tuyen sinh-2024 (đầy đủ chi tiết).pdfSLIDE - Tu van, huong dan cong tac tuyen sinh-2024 (đầy đủ chi tiết).pdf
SLIDE - Tu van, huong dan cong tac tuyen sinh-2024 (đầy đủ chi tiết).pdf
 

Phân tích cảm xúc trong tiếng việt bằng phương pháp máy học.pdf

  • 1. ĐOÀN THANH NIÊN CỘNG SẢN HỒ CHÍ MINH BAN CHẤP HÀNH TP. HỒ CHÍ MINH ---------------------- CÔNG TRÌNH DỰ THI GIẢI THƯỞNG SINH VIÊN NGHIÊN CỨU KHOA HỌC EURÉKA LẦN THỨ XX NĂM 2018 TÊN CÔNG TRÌNH: PHÂN TÍCH CẢM XÚC TRONG TIẾNG VIỆT BẰNG PHƯƠNG PHÁP MÁY HỌC LĨNH VỰC NGHIÊN CỨU: CÔNG NGHỆ THÔNG TIN CHUYÊN NGÀNH: TRÍ TUỆ NHÂN TẠO Mã số công trình: ……………………………. (Phần này do BTC Giải thưởng ghi) ..
  • 2. i MỤC LỤC MỤC LỤC................................................................................................................ i DANH MỤC HÌNH ẢNH................................................................................................ iii DANH MỤC BẢNG BIỂU...............................................................................................iv TÓM TẮT...........................................................................................................................1 ĐẶT VẤN ĐỀ.....................................................................................................................2 1. Tổng quan về vấn đề được nghiên cứu..............................................................2 2. Lý do lựa chọn đề tài...........................................................................................4 3. Các nghiên cứu liên quan ...................................................................................5 4. Mục tiêu nghiên cứu............................................................................................7 5. Cách tiếp cận và phương pháp nghiên cứu ......................................................8 6. Đối tượng và phạm vi nghiên cứu......................................................................9 7. Ý nghĩa, quy mô và phạm vi áp dụng..............................................................10 8. Cấu trúc đề tài ...................................................................................................11 PHẦN 1: TỔNG QUAN TÀI LIỆU ...............................................................................12 1.1. Giới thiệu về ngôn ngữ tiếng Việt và xử lý ngôn ngữ tiếng Việt................12 1.1.1. Ngôn ngữ tự nhiên.........................................................................................12 1.1.2. Ngôn ngữ tiếng Việt......................................................................................17 1.1.3. Xử lý ngôn ngữ tự nhiên ...............................................................................22 1.1.4. Xử lý ngôn ngữ tiếng Việt.............................................................................30 1.2. Vector hóa dữ liệu ..........................................................................................32 1.2.1. Word Vector..................................................................................................33 1.2.2. Word2Vec .....................................................................................................34 1.2.3. Doc2Vec........................................................................................................37 1.3. Các phương pháp phân lớp...........................................................................42 1.3.1. K-Nearest Neighbor ......................................................................................42 1.3.2. Support Vector Machine ...............................................................................43 1.3.3. Gaussian ........................................................................................................45 1.3.4. Decision Tree ................................................................................................46
  • 3. ii 1.3.5. Random Forest ..............................................................................................47 1.3.6. Convolutional Neural Net .............................................................................48 1.3.7. Ada Boost......................................................................................................49 1.3.8. Naïve Bayes ..................................................................................................51 1.3.9. Bayesian Quadratic Discriminant Analysis ..................................................53 PHẦN 2: PHƯƠNG PHÁP TIẾP CẬN.........................................................................55 2.1. Mô hình giải quyết bài toán ..........................................................................55 2.2. Tiền xử lý văn bản..........................................................................................56 2.2.1. Tách từ...........................................................................................................57 2.2.2. Loại bỏ hư từ và các dấu câu không cần thiết...............................................59 2.3. Vector hóa dữ liệu ..........................................................................................59 2.4. Áp dụng các phương pháp phân lớp ............................................................60 PHẦN 3: KẾT QUẢ - THẢO LUẬN.............................................................................62 3.1. Dữ liệu thực nghiệm.......................................................................................62 3.2. Kết quả thực nghiệm và đánh giá.................................................................62 3.2.1. Thực nghiệm để phân lớp đánh giá chủ quan và khách quan .......................64 3.2.2. Thực nghiệm để phân tích cảm xúc tích cực và tiêu cực..............................66 PHẦN 4: KẾT LUẬN - ĐỀ NGHỊ .................................................................................72 4.1. Kết luận...........................................................................................................72 4.1.1 Những kết quả đạt được.................................................................................72 4.1.2. Tính mới của đề tài........................................................................................72 4.1.3. Những hạn chế ..............................................................................................73 4.1.4. Hướng phát triển ...........................................................................................73 4.2. Kiến nghị.........................................................................................................73 TÀI LIỆU THAM KHẢO...............................................................................................75 PHỤ LỤC A: DOWNLOAD.............................................................................................1 PHỤ LỤC B: SOURCE CODE ........................................................................................2 1. Tách từ bằng công cụ UETSegmenter...............................................................2 2. Tách hư từ và dấu câu bằng ngôn ngữ Python trên Pycharm........................6 3. Huấn luyện dữ liệu bằng ngôn ngữ Python trên Pycharm..............................9
  • 4. iii DANH MỤC HÌNH ẢNH Hình 1.1. Information Extraction..............................................................................27 Hình 1.2. LatentSemantic Analysis...........................................................................27 Hình 1.3. Named Entity Recognition........................................................................28 Hình 1.4. Parse Tree..................................................................................................28 Hình 1.5. Pre-processing...........................................................................................29 Hình 1.6. Sentiment Analysis....................................................................................29 Hình 1.7. Cách biểu diễn từ ‘Queen’ dưới dạng One-hot Vector.............................33 Hình 1.8. Cách biểu diễn các từ trên Word2Vec ......................................................34 Hình 1.9. Mô hình Continous Bag of Words ............................................................35 Hình 1.10. Mô hình Continuous Skip-gram..............................................................36 Hình 1.11. Mô hình của Distributed Bag of Words..................................................39 Hình 1.12. Mô hình Distributed Memory .................................................................40 Hình 1.13. Mô hình K-Nearest Neighbor .................................................................43 Hình 1.14. Mô hình Support Vector Machine – Linear............................................44 Hình 1.15. Mô hình Support Vector Machine – RBF...............................................44 Hình 1.16. Hàm từ tiến trình Gaussian .....................................................................45 Hình 1.17. Mô hình Decision Tree............................................................................46 Hình 1.18. Mô hình Random Forest .........................................................................47 Hình 1.19. Mô hình Convolutional Neural Net ........................................................49 Hình 1.20. Giản đồ Ada Boost..................................................................................50 Hình 1.21. Phân lớp Naive Bayes .............................................................................52 Hình 1.22. So sánh LDA với QDA...........................................................................53 Hình 2.1. Sơ đồ phân tích cảm xúc tổng quan. .........................................................55 Hình 2.2. Các giai đoạn tiền xử lý văn bản được sử dụng........................................57
  • 5. iv DANH MỤC BẢNG BIỂU Bảng 1.1. So sánh sự khác biệt giữa tiếng Việt và tiếng Anh...................................20 Bảng 1.2. Khoảng cách giữa các từ đến từ ‘France’.................................................41 Bảng 3.1. Bộ dữ liệu VLSP 2016..............................................................................62 Bảng 3.2. Bộ dữ liệu VLSP 2016 sau khi tiền xử lý.................................................62 Bảng 3.3. Kết hợp mô hình vector hóa dữ liệu với các phương pháp phân lớp .......63 Bảng 3.4. Độ chính xác khi phân lớp chủ quan và khách quan (%).........................64 Bảng 3.5. Độ chính xác khi phân lớp tích cực và tiêu cực (%) ................................66 Bảng 3.6. Khảo sát sự ổn định của độ chính xác khi huấn luyện (%) ......................69 Bảng 3.7. Hiệu suất của các phương pháp phân lớp cảm xúc (đo bằng F1).............70 Bảng 3.8. So sánh kết quả giữa phương pháp đề xuất với các phương pháp trước..71
  • 6. 1 TÓM TẮT Phân tích cảm xúc người dùng là một trong những bài toán quan trọng và phức tạp trong xử lí ngôn ngữ tự nhiên nhưng giá trị mà nó mang lại thì rất cần thiết trong cuộc Cách mạng 4.0. Để tiếp cận bài toán này, chúng ta phải xây dựng một mô hình máy học để có thể phân loại được đánh giá người dùng. Trong nghiên cứu này, chúng tôi đề xuất sử dụng Doc2Vec cho bước biểu diễn dữ liệu và kết hợp với các phương pháp phân lớp khác nhau để phân tích cảm xúc người dùng. Đề xuất của chúng tôi được thử nghiệm trên dữ liệu chung VLSP 2016 và thu được kết quả khả quan.
  • 7. 2 ĐẶT VẤN ĐỀ 1. Tổng quan về vấn đề được nghiên cứu Xử lý ngôn ngữ tự nhiên – XLNNTN (Natural Language Processing – NLP) là khái niệm để chỉ các kĩ thuật, phương pháp thao tác trên ngôn ngữ tự nhiên bằng máy tính. Chúng ta cần phân biệt ngôn ngữ tự nhiên như tiếng Việt, tiếng Anh, tiếng Nhật, … là những ngôn ngữ trong giao tiếp thường ngày và ngôn ngữ nhân tạo như ngôn ngữ lập trình, ngôn ngữ máy, …. Đây là một lĩnh vực kết hợp của khoa học máy tính (Computer Science) với trí tuệ nhân tạo (Artificial Intelligence) và ngôn ngữ học tính toán (Computational Linguistics) liên quan tới sự tương tác giữa ngôn ngữ con người (Natural Language) với máy tính. Trong trí tuệ nhân tạo thì xử lý ngôn ngữ tự nhiên là một trong những phần khó nhất vì nó liên quan đến việc phải hiểu được ý nghĩa của ngôn ngữ – công cụ hoàn hảo nhất của tư duy và giao tiếp. Còn trong xử lý ngôn ngữ tự nhiên có hai quan điểm cơ bản đó là: “Xử lý các từ ngữ bằng máy tính” và “Làm cho máy tính hiểu được các từ ngữ”. Hiện tại, cả hai hướng này đều đang được tích cực nghiên cứu và phát triển, nhờ đó rất nhiều các hệ thống hiệu quả đã và đang được tạo ra. Để máy tính có thể hiểu được ngôn ngữ tự nhiên, ngôn ngữ con người thì điều đó không phải dễ nhưng ngày nay, những nghiên cứu về lĩnh vực xử lý ngôn ngữ tự nhiên nhằm tạo cho máy tính khả năng hiểu giao tiếp được bằng ngôn ngữ tự nhiên với con người đã không chỉ còn là lý thuyết nữa mà trên thế giới đã có rất nhiều ứng dụng hiệu quả của XLNNTN vào đời sống chúng ta. Có thể kể đến rất nhiều như: các bộ dịch tự động của Google, Lạc Việt; xử lý văn bản và ngôn ngữ; tìm kiếm thông tin; chiết suất thông tin; trợ lý ảo Siri của Apple hay Cortana của Microsoft; tóm tắt văn bản; phân loại văn bản; data mining và web mining; khai phá dữ liệu; …. Bên cạnh đó, XLNNTN được xây dựng dựa trên ngôn ngữ học phức tạp, các nguyên lý thống kê, và thuật toán mạng nơ-ron (neural network algorithms). Chương trình XLNNTN có khả năng đọc và hiểu được văn bản với tốc độ cao. Do đó, dù có hàng nghìn tài liệu hay thậm chí hàng tỷ văn bản, chương trình XLNNTN có thể “tiêu hoá”
  • 8. 3 nhanh chóng tất cả các thông tin này, từ đó có thể rút trích ra được những tri thức (knowledge) đáng giá cho doanh nghiệp như: tri thức về các khách hàng, tri thức về những đối thủ cạnh tranh, tri thức về các hoạt động trong doanh nghiệp như điều hành, marketing, sales, kĩ thuật, sản phẩm, …. Còn về kinh tế, thông qua các thuật toán tiên tiến, XLNNTN chỉ ra được ai, cái gì, khi nào, và ở đâu trong những nội dung phi cấu trúc, từ đó có thể cung cấp các cấp độ hiểu biết cao hơn về công việc kinh doanh [9]. Các ứng dụng của XLNNTN vào lĩnh vực kinh tế trên thế giới có thể kể đến như: - Marketing: Voice of the customer, social media analysis, churn analysis, market research, survey analysis. - Business: Competitive intelligence, document categorization, human resources (voice of the employee), records retention, risk analysis, website faceted navigation. - Industry specific: Fraud detection, e-discovery, warranty analysis, medical analytics research. Ở Việt Nam, XLNNTN là môn bộ môn không mới nhưng chưa được phổ biến rộng rãi và các số lượng nghiên cứu chuyên về tiếng Việt là rất ít. Nguyên nhân ngoài việc số lượng người tìm hiểu về XLNNTN ở Việt Nam còn thấp, việc chính bản thân tiếng Việt là một ngôn ngữ khó với rất nhiều bài toán cần giải quyết là một trong những vấn đề chính khiến cho các nghiên cứu sinh, các lập trình viên khó có thể tiếp cận và duy trì đam mê tìm hiểu. Có thể kể đến một số khó khăn như sự nhập nhằng về ngữ nghĩa trong tiếng Việt, các bài toán tách từ, phân loại từ, dấu thanh hay dấu câu, tiếng Việt thuộc ngôn ngữ đơn lập, tức là mỗi một tiếng (âm tiết) được phát âm tách rời nhau và được thể hiện bằng một chữ viết. Đặc điểm này thể hiện rõ rệt ở tất cả các mặt ngữ âm, từ vựng, ngữ pháp, … gây khó khăn cho việc chạy các chương trình của XLNNTN nếu không tiền xử lý kĩ. Tuy nhiên, lợi ích của xử lý ngôn ngữ tiếng Việt mang lại là rất lớn, nó có thể ứng dụng trong hầu hết các lĩnh vực và đặc biệt là trong thời đại Cách mạng 4.0 đang diễn ra mạnh mẽ ở Việt Nam. Cụ thể, chúng ta đang sống trong kỷ nguyên số, là thời đại mà thông tin được lan truyền nhanh
  • 9. 4 chóng thông qua các diễn đàn, các trang tin tức trực tuyến và mạng xã hội với hàng tỷ người dùng trên thế giới. Lượng thông tin nội dung được người dùng tạo ra hằng ngày cực kỳ lớn và đa dạng về mặt hình thức và chủ đề. Những thông tin này có chung một đặc điểm: mang tính cá nhân nên tính đúng đắn, xác thực là tương đối nhưng lại rất giá trị. Việc có thể khai thác và sử dụng lượng thông tin này là một trong những thách thức lớn trong phân tích cảm xúc nói riêng và xử lý ngôn ngữ tự nhiên nói chung. Bên cạnh đó, việc phân tích cảm xúc trong văn bản được ứng dụng trong hàng loạt các vấn đề như: quản trị thương hiệu doanh nghiệp, thương hiệu sản phẩm, quản trị quan hệ khách hàng, khảo sát ý kiến xã hội học hay dễ hiểu hơn là phân tích đánh giá của khách hàng về một sản phẩm nào đó, …. Việc dự đoán là cực kì quan trọng vì ý kiến của người dùng ngày càng trở nên có giá trị hơn. Nói cách khác, thị hiếu, sự quan tâm của cộng đồng là yếu tố quan trọng ảnh hưởng đến các sản phẩm như phim ảnh, sách báo, thiết bị điện tử, hay các dịch vụ như nhà hàng, khách sạn, giao thông, …. Do đó, vấn đề này được sự quan tâm không chỉ từ các nhà nghiên cứu mà còn từ phía các công ty. Họ cần một hệ thống phân tích ý kiến khách hàng về sản phẩm một cách tự động để nhanh chóng nắm bắt được cảm nhận cũng như thị hiếu của người tiêu dùng để nâng cao khả năng cạnh tranh với đối thủ cùng lĩnh vực và thích nghi với môi trường kinh doanh thường xuyên có biến động. Những thông tin này không chỉ hữu dụng trong tiếp thị, xếp hạng đánh giá sản phẩm mà còn hỗ trợ trong việc nhận biết vấn đề để xây dựng và phát triển sản phẩm. Vậy nên, việc xây dựng một mô hình để giải quyết bài toán phân tích cảm xúc người dùng là một yêu cầu cấp thiết và quan trọng cần được giải quyết trong công cuộc tự động hóa hiện nay. 2. Lý do lựa chọn đề tài Do nhu cầu phát triển của xã hội ngày càng tăng, nhất là về lĩnh vực kinh tế cũng như công nghệ. Việc phân tích cảm xúc trong văn bản được ứng dụng trong hàng loạt các vấn đề như: quản trị thương hiệu doanh nghiệp, thương hiệu sản phẩm, quản trị
  • 10. 5 quan hệ khách hàng, khảo sát ý kiến xã hội học hay dễ hiểu hơn là phân tích đánh giá của khách hàng về một sản phẩm nào đó, …. Việc dự đoán là cực kì quan trọng vì ý kiến của người dùng ngày càng trở nên có giá trị hơn. Thị hiếu, sự quan tâm của cộng đồng là yếu tố ảnh hưởng chính đến các sản phẩm như phim, sách, thiết bị điện tử, …. Do đó, vấn đề này được sự quan tâm không chỉ từ các nhà nghiên cứu mà còn từ phía các công ty. Họ cần một hệ thống phân tích ý kiến khách hàng về sản phẩm một cách tự động để nhanh chóng nắm bắt được cảm nhận và thị hiếu của người tiêu dùng để nâng cao khả năng cạnh tranh với đối thủ cạnh và thích nghi với môi trường kinh doanh thường xuyên có biến động. Những thông tin này không chỉ hữu dụng trong tiếp thị, xếp hạng đánh giá sản phẩm mà còn hỗ trợ trong việc nhận biết vấn đề để xây dựng và phát triển sản phẩm. Còn trong nghiên cứu, việc xây dựng hệ thông phân tích cảm xúc người dùng là một bước tiến lớn xong công động xử lý ngôn ngữ tự nhiên, giúp giải quyết được nhiều vấn đề đang mắc phải. Xây dựng mô hình giải quyết bài toán phân tích cảm xúc người dùng. Cụ thể chúng tôi chia cảm xúc người dùng ra thành các trạng thái cảm xúc phân biệt. Từ đó, chúng tôi tiếp cận bài toán phân tích cảm xúc người dùng bằng phương pháp phân lớp. Trong đó, mỗi bình luận diễn đạt cảm xúc từ người dùng được biểu diễn thành một vector để đưa vào huấn luyện mô hình phân lớp. 3. Các nghiên cứu liên quan Phân tích cảm xúc người dùng (Sentiment Analysis) là một chủ đề đầy thách thức trong lĩnh vực máy học (Machine Learning). Nhiệm vụ của bài toán này là phát hiện ra thái độ mang tính lâu dài, màu sắc tình cảm, khuynh hướng niềm tin vào các đối tượng hay người nào đó. Tuy nhiên, mọi người thể hiện các cảm nhận của mình thông qua ngôn ngữ tự nhiên vốn thường có sự nhập nhằng về ngữ nghĩa đã gây không ít khó khăn trong việc xử lý thông tin. Bên cạnh đó, người dùng còn sử dụng các từ viết tắt, từ lóng hay các kí hiệu biểu cảm như ‘=))’, ‘:(’, ‘>_<’, ... để thể hiện trạng thái cảm xúc của họ.
  • 11. 6 Các nghiên cứu về phân tích cảm xúc đã xuất hiện từ đầu những năm 2000 [16] của Bo Pang và Lillian Lee đã cho kết quả rất tốt, tạo tiền đề cho những bước tiến sau này. Các chủ đề nghiên cứu trải dài từ các lĩnh vực như phân tích các đánh giá phim [12], các nhà hàng, khách sạn, món ăn, …. Và để có thể giải quyết bài toán phân tích cảm xúc này, các nghiên cứu đã sử dụng các phương pháp như: máy học [20], thống kê [17] hay phương pháp dựa trên luật kết hợp với ngữ liệu [18]. Với ngôn ngữ tiếng Việt, các nghiên cứu về phân tích cảm xúc của câu văn có thể kể tới như: Kieu và Pham [10] giới thiệu phân lớp cảm xúc dành cho tiếng Việt dựa trên hệ thống luật và mô tả các thực nghiệm trên bộ dữ liệu là các bài đánh giá về sản phẩm máy tính; Duyen và cộng sự [11] sử dụng các thuật toán máy học như SVM, MEM trên các đánh giá khách sạn từ Agoda; Van và cộng sự [14] sử dụng SVM để phân loại các bình luận trên Facebook; Tran và Phan [15] đưa ngôn ngữ bối cảnh vào câu để cung cấp thêm thông tin phân tích cảm xúc; Trinh và cộng sự [42] đã phân tích tình cảm các bình luận tiếng Việt trên Facebook dựa trên từ điển; Vo và cộng sự [44] đã phân tích cảm xúc trên 5 bộ dữ liệu tiếng Việt khác nhau thông qua mô hình kết hợp mới giữa Hierarchical Dirichlet Process (HDP) và Support Vector Machine (SVM); Son Trinh, Luu Nguyen và Minh Vo phân tích cảm xúc người dùng bằng cách kết hợp từ điển và máy học trêm các đánh giá sản phẩm bằng tiếng Việt [45]; Bang và cộng sự [46] đã phân loại ý kiến cho các phản hồi đặt phòng khách sạn dựa trên cấu trúc câu và phân tích câu chủ quan; Quan Hoang Vo và cộng sự [19] dùng một phương pháp mới kết hợp các ưu điểm của Convolutional Neural Network (CNN) và Long Short Term Memory (LSTM) để phân tích cảm xúc trên 2 bộ dữ liệu VS và VLSP 2016; Phan và Cao [37] đã giới thiệu một khuôn khổ để khai thác các văn bản không có cấu trúc dưới dạng các nhận xét tiếng Việt về địa điểm ăn uống được đề xuất bằng Skip-Gram và SVM để phân lớp. Ngoài ra, còn có các nghiên cứu liên quan khác về tiếng Việt như: Ha và cộng sự [35] đã nâng cấp mô hình Featured- based Opinion Mining and Summarizing (FMOS) với VietSentiWordNet và sử dụng trên các đánh giá về điện thoại di động; Le và cộng sự [36] đã kết hợp các gói phần mềm mã nguồn mở có sẵn và triển khai các phần mềm mã nguồn mở mới để tạo ra
  • 12. 7 một giải pháp mã nguồn mở cho phép xử lý văn bản tiếng Việt; Nguyen và cộng sự [38] đã đề xuất một cách tiếp cận để khai thác ý kiến công chúng từ văn bản tiếng Việt bằng cách sử dụng một từ điển tình cảm miền cụ thể để cải thiện độ chính xác trên bộ dữ liệu về sản phẩm và dịch vụ trực tuyến; Le và cộng sự [39] đã đề xuất một cách tiếp cận để trích xuất và phân loại các thuật ngữ khía cạnh cho tiếng Việt bằng phương pháp máy học bán giám sát GK-LDA và sử dụng phương pháp dựa trên từ điển trong suy luận theo khía cạnh; Bach và công sự [40] đã tiến hành nghiên cứu thực nghiệm về khai thác các câu so sánh trong tiếng Việt với mục tiêu xác định các câu so sánh trong tài liệu và công nhận các quan hệ trong các câu so sánh được xác định; Pham và cộng sự [41] sử dụng các từ đại diện để đánh giá các bình luận bằng tiếng Việt với mô hình mạng nơ-ron mới gồm 3 lớp; Phu và cộng sự [43] tạo từ điển gồm các tính từ tiếng Việt bằng nhiều quy tắc dựa vào ngữ cảnh đã được sử dụng rộng rãi cho các nghiên cứu phân loại ngữ nghĩa, …. Nguồn cảm hứng sâu xa giúp chúng tôi tiếp cận đến XLNNTN ngoài những lợi ích mà nó mang lại thì không thể kể đến những bộ công cụ đắc lực cho công nghệ và liên quan mật thiết đến ngôn ngữ của các nhà nghiên cứu nước ngoài mà ngôn ngữ chính là tiếng Anh: Phân loại văn bản bằng SVM của Sassano [20]; Phân tích cảm xúc người dùng bằng phương pháp “lát cắt cực tiểu” của Pang và Lee [12]; Phân loại yêu cầu dựa trên CNN và LSTM trên các nhận xét trực tuyến của người dùng của Guggilla và cộng sự [21]; Phân loại văn bản bằng phương pháp phân lớp Gaussian của Stavrakas và cộng sự [22]. Ngoài ra, không thể kể đến các nghiên cứu về ngôn ngữ tiếng Việt như: Phân tích cảm xúc người dùng bằng phương pháp SVM trên các bình luận Facebook của Van và cộng sự [14], bài viết về Phân tích cảm xúc của Cuong và cộng sự [13] đăng trong hội thảo VLSP 2016. 4. Mục tiêu nghiên cứu Tìm hiểu các lí thuyết cần thiết để xây dựng được mô hình để giải quyết bài toán phân lớp cảm xúc người dùng tiếng Việt thông qua các văn bản là các bài đánh giá, bình luận, ... với cảm xúc mong đợi ở hai dạng định tính:
  • 13. 8 - Xác định tính tích cực – tiêu cực của văn bản. - Xác định tính chủ quan – khách quan của văn bản. Bên cạnh đó, mô hình giải quyết bài toán phải tối ưu về độ chính xác, hiệu suất cũng như thời gian thực hiện, giúp giải quyết các thách thức, các vấn đề mắc phải trong phân tích cảm xúc người dùng nói riêng và xử lý ngôn ngữ tự nhiên ở Việt Nam nói chung. 5. Cách tiếp cận và phương pháp nghiên cứu Do sự phát triển từng ngày của XLNNTN, nhu cầu của người dùng ngày càng tăng nên các công cụ liên quan cũng được ra đời từ đó. Những ứng dụng từ phương pháp phân lớp như: Phân tích cảm xúc của một dòng bình luận; lọc các bình luận có ý nghĩa đóng góp; … sẽ góp phần giúp doanh nghiệp, tổ chức dễ dàng nhìn nhận ra được nhu cầu và ý muốn của người dùng. Từ đó công ty sẽ nâng cấp các chức năng mà người dùng quan tâm nhiều đến hoặc cho ra đời các sản phẩm hợp với thị hiếu người tiêu dùng hơn, góp phần phát triển công ty theo hướng tích cực hơn. Chúng ta có thể thấy XLNNTN có vai trò cũng như tầm quan trọng khá lớn đến sự phát triển của doanh nghiệp ở thời đại công nghệ liên tục đổi mới như thế này. Vì ảnh hưởng to lớn nêu trên, việc tiếp tục định hướng và phát triển các sản phẩm của XLNNTN mà cụ thể là phương pháp phân lớp, là nhu cầu thiết yếu hiện nay. Muốn hiểu rõ hơn về XLNNTN để xây dựng các công cụ mới cũng như sử dụng tối ưu được các công trình có sẵn, trước tiên phải hiểu rõ về ngôn ngữ mà chúng ta sử dụng đó là tiếng Việt. Tiếng Việt là ngôn ngữ chung của 85% người Việt Nam, thuộc họ Nam Á, đã xuất hiện cách đây 6000 năm trước. Tiếng Việt có cấu tạo khá phức tạp (sử dụng 27 kí tự Latin, 6 thanh điệu, có các nguyên âm, phụ âm, từ đơn, từ ghép) [1] từ đó gây ra nhiều rắc rối, các trường hợp nhập nhằng về ngữ nghĩa khiến máy tính khó có thể hiểu được. Để giải quyết những rắc rối trên chúng ta phải trải qua các giai đoạn tiền xử lý văn bản như: xóa thẻ tag, ghép các câu ghép lại, loại bỏ hư từ, gán nhãn, …. Sau đó, chúng ta sử dụng các phương pháp vector hóa dữ liệu
  • 14. 9 như Distributed Memory (DM) hay Distributed Bag of Words (DBoW) để chuyển hóa các câu thành vector. Đây là bước rất quan trọng, nó quy định các công việc như: bỏ qua các từ có tần số xuất hiện thấp, số chiều vector mà mình muốn, số lần huấn luyện dữ liệu; …. Sau cùng, các phương pháp phân lớp được sử dụng để phân lớp dữ liệu (gán nhãn dữ liệu). Tùy vào các phương pháp khác nhau, chúng ta có thể thu được các độ chính xác khác nhau. Tuy nhiên, để làm được tất cả việc trên là một điều không hề dễ, chúng tôi đã tham khảo khá nhiều tài liệu từ nhiều nguồn, đọc hiểu và phân tích một cách chi tiết. Cuối cùng, chúng tôi hệ thống hóa các tài liệu có liên quan đến đề tài trong các sách, báo chí, tiểu luận khoa học và trên Internet lại và tiến hành nghiên cứu, lựa chọn các bài viết, phương pháp nghiên cứu có tính chuyên môn và thực tiễn cao để áp dụng và kết hợp với mô hình của chúng tôi để có thể đạt được kết quả tốt nhất. 6. Đối tượng và phạm vi nghiên cứu Nghiên cứu về ngôn ngữ tự nhiên với xử lý ngôn ngữ tự nhiên nói chung và ngôn ngữ tiếng Việt với xử lý ngôn ngữ tiếng Việt nói riêng. Trong đó tiền xử lý tiếng Việt là đặc biệt quan trọng, cụ thể là tách từ (Word Segmentation) và tách hư từ (Stop Word) trong tiếng Việt và những dấu câu không liên quan. Nghiên cứu về phương pháp Doc2Vec (Paragraph Vector) và các lý thuyết tiền đề như Word Vector, Word2Vec, … với hai mô hình của phương pháp: - Distributed Bag of Words (DBoW) - Distributed Memomry (DM) Nghiên cứu về các phương pháp phân lớp: - K-Nearest Neighbor - Support Vector Machine với Linear SVM và RBF SVM - Gaussian - Decision Tree - Random Forest - Neural Net
  • 15. 10 - Ada Boost - Naïve Bayes - Quadratic Discriminant Analysis 7. Ý nghĩa, quy mô và phạm vi áp dụng - Ý nghĩa khoa học: Hướng nghiên cứu về trí tuệ nhân tạo ở Việt Nam đang ngày càng được quan tâm, đặc biệt là trong cuộc Cách mạng công nghệ 4.0. Đề tài này góp phần thúc đẩy sự phát triển của trí tuệ nhân tạo nói chung và cộng đồng xử lý ngôn ngữ tự nhiên ở Việt Nam nói riêng, là số ít trong số các đề tài phân tích cảm xúc người dùng trong tiếng Việt với một đề xuất mới và hiệu quả là dùng Doc2Vec để vector hóa dữ liệu và tiến hành phân lớp cảm xúc người dùng với các định tính. - Ý nghĩa thực tiễn: Phân tích cảm xúc không chỉ có sự quan tâm từ các nhà nghiên cứu mà còn từ phía các công ty, doanh nghiệp. Ứng dụng của đề tài phục vụ cho các hoạt động phát triển sản phẩm, kinh doanh và thương mại cho các công ty, doanh nghiệp ở nhiều mục đích và lĩnh vực khác nhau. Việc dự đoán là cực kì quan trọng vì ý kiến của người dùng ngày càng trở nên có giá trị hơn. Do đó, các công ty và doanh nghiệp cần một hệ thống phân tích ý kiến khách hàng về sản phẩm một cách tự động để nhanh chóng nắm bắt được cảm nhận và thị hiếu của người tiêu dùng. Đề xuất trong nghiên cứu giúp các doanh nghiệp có thể khai thác và sử dụng lượng thông tin mà người dùng tạo ra như các bình luận, đánh giá về các sản phẩm doanh nghiệp nhằm nâng cao khả năng cạnh tranh với đối thủ cùng lĩnh vực và thích nghi với môi trường kinh doanh thường xuyên có biến động. Những thông tin này không chỉ hữu dụng trong tiếp thị, xếp hạng đánh giá sản phẩm mà còn hỗ trợ trong việc nhận biết vấn đề để xây dựng và phát triển sản phẩm. - Quy mô và phạm vi áp dụng: Đóng góp của đề tài áp dụng rộng rãi cho nhiều lĩnh vực ngoài kinh doanh như giáo dục và đào tạo (phân tích đánh giá sinh viên dành cho môn học hay giảng viên),
  • 16. 11 giải trí (phân tích mức độ hài lòng của khách hàng dành cho dịch vụ), chính trị (phân tích thái độ của người dân với chính sách), … vì tất cả các lĩnh vực này đều cần đến một mô hình để giải quyết bài toán phân lớp cảm xúc người dùng (khách hàng, học sinh, người sử dụng dịch vụ, người dân, …) một cách hiệu quả. 8. Cấu trúc đề tài MỞ ĐẦU Nêu lên nhu cầu thực tế và lý do thực hiện đề tài, đồng thời giới thiệu sơ lược tổng quan về đề tài, mục tiêu phải đạt được cũng như cách tiếp cận, phương pháp, đối tượng, phạm vi nghiên cứu và ý nghĩa đề tài. PHẦN 1: TỔNG QUAN TÀI LIỆU Giới thiệu về các lí thuyết được sử dụng trong đề tài như Doc2Vec (với các lí thuyết tiền đề liên quan) và các thuật toán phân lớp. PHẦN 2: PHƯƠNG PHÁP TIẾP CẬN Giới thiệu về Mô hình giải quyết bài toán và các bước áp dụng lý thuyết vào mô hình trên. PHẦN 3: KẾT QUẢ - THẢO LUẬN Mô tả, tiến hành thực nghiệm kiểm tra và đánh giá kết quả hoạt động của mô hình. PHẦN 4: KẾT LUẬN - ĐỀ NGHỊ Nêu lên kết quả đạt được trong quá trình nghiên cứu và thực hiện đề tài. Nhận xét đánh giá lại ưu nhược điểm của mô hình và mô tả hướng phát triển tiếp theo của đề tài.
  • 17. 12 PHẦN 1: TỔNG QUAN TÀI LIỆU 1.1. Giới thiệu về ngôn ngữ tiếng Việt và xử lý ngôn ngữ tiếng Việt 1.1.1. Ngôn ngữ tự nhiên Trong ngôn ngữ học, một ngôn ngữ tự nhiên là bất kỳ ngôn ngữ nào phát sinh, không suy nghĩ trước trong não bộ của con người. Điển hình là một số ngôn ngữ mà con người được sử dụng để giao tiếp với nhau, dù là ngôn ngữ âm thanh, ngôn ngữ ký hiệu, ký hiệu xúc giác hay chữ viết [1]. Hiểu một cách đơn giản, ngôn ngữ tự nhiên (Natural Language) là ngôn ngữ con người dùng để giao tiếp với nhau như tiếng Việt, tiếng Anh, tiếng Pháp, … và khác với ngôn ngữ nhân tạo (Artificial Language) như ngôn ngữ máy tính (Pascal, C, Python, …) hay mã Morse, Braille, …. Theo thống kê, có khoảng 5600 ngôn ngữ trên thế giới, được phân bố rất không đồng đều và chỉ có một số ít các ngôn ngữ là có chữ viết. 1.1.1.1. Đặc điểm Các đặc điểm của ngôn ngữ tự nhiên [1]: - Ngôn ngữ là một hiện tượng xã hội: không là hiện tượng tự nhiên, cá nhân, sinh vật (di truyền), và là hiện tượng xã hội đặc biệt. - Ngôn ngữ là phương tiện giao tiếp quan trọng nhất của con người: các phương tiện khác được diễn giải qua ngôn ngữ. - Ngôn ngữ là một hệ thống tín hiệu đặc biệt. 1.1.1.2. Phân loại Các ngôn ngữ được phân loại dựa trên nhiều tiêu chí khác nhau [1]: - Phân loại ngôn ngữ theo nguồn gốc lịch sử: o Ấn Âu: dòng Ấn Độ, Iran, Bantic, Slave, Roman, Hy Lạp, German (gồm: Đức, Anh, Hà Lan, ...). o Sê-mít: dòng Sê mít, Ai cập, Kusit, Becbe, … o Thổ: ngôn ngữ Thổ Nhĩ Kỳ, … o Hán – Tạng: dòng Hán, Tạng – Miến, …
  • 18. 13 o Nam Phương: dòng Nam – Thái, Nam Á. Trong dòng Nam Á có các ngành: Nahali, Munda, Nicoba và Môn-Khmer. Trong ngành Môn – Khmer có nhóm Việt – Mường, và trong nhóm này có ngôn ngữ tiếng Việt. - Phân loại ngôn ngữ theo trật tự từ: Ví dụ: Tôi (S) đi (V) học (O) o SVO: chiếm 32.4 - 41.8%, như: tiếng Anh, Pháp, Việt, … o SOV: chiếm 41 - 51.8%, như: tiếng Nhật, …. o VOS: chiếm 9 - 18% o VSO: chiếm 2 - 3% o OSV: chiếm cỡ 1% o OVS: chiếm cỡ 1% - Phân loại ngôn ngữ theo loại hình: được nhiều người sử dụng nhất. Phân loại các ngôn ngữ theo quan hệ loại hình là cách phân loại ngôn ngữ theo cấu trúc và chức năng của chúng. Kết quả phân loại cho ta những loại hình ngôn ngữ. Loại hình ngôn ngữ không phải là một ngôn ngữ cụ thể nào, cũng không phải là một tổng hoặc một tập các ngôn ngữ. Loại hình ngôn ngữ là tổng thể của những đặc điểm hoặc thuộc tính về cấu trúc và chức năng vốn có của các ngôn ngữ thuộc nhóm đó, phân biệt nhóm đó với các nhóm ngôn ngữ khác. Trong mỗi ngôn ngữ có thể thấy ba nhóm thuộc tính: thuộc tính phổ quát, tức là thuộc tính chung, vốn có đối với tất cả các ngôn ngữ thế giới; thuộc tính riêng biệt là thuộc tính chỉ có ở ngôn ngữ đó; thuộc tính loại hình là thuộc tính đặc trưng cho từng nhóm ngôn ngữ nhất định. Thuộc tính loại hình được dùng làm tiêu chuẩn để quy định vị trí của một ngôn ngữ nào đó trong khi phân loại [2]. Nếu phương pháp so sánh – lịch sử hướng vào sự phát triển lịch sử của các ngôn ngữ thân thuộc thì phương pháp so sánh – loại hình lại hướng vào hiện tại, vào hoạt động của kết cấu ngôn ngữ. Nhiệm vụ trung tâm của phương pháp so sánh này là tìm hiểu những cái giống nhau và khác nhau trong kết cấu của hai hoặc nhiều ngôn ngữ. Khi so sánh, người ta có thể xuất phát từ các mặt khác nhau của ngôn ngữ như
  • 19. 14 ngữ âm, từ vựng và ngữ pháp. Nhưng sự so sánh các cấu trúc ngữ pháp có ý nghĩa to lớn nhất, bởi vì cấu trúc ngữ pháp và vốn từ cơ bản là cơ sở của các ngôn ngữ, tạo nên tính riêng biệt của chúng. Ngữ pháp lại bao gồm từ pháp và cú pháp. Những đặc điểm về cú pháp không bao giờ biểu hiện một cách độc lập với những đặc điểm về từ pháp. Cho nên trong so sánh loại hình, cấu trúc từ pháp có tầm quan trọng đặc biệt. Bằng cách so sánh như vậy, người ta có thể rút ra đâu là những thuộc tính phổ quát (còn được gọi là những phổ niệm ngôn ngữ), đâu là những thuộc tính riêng biệt và đâu là những thuộc tính loại hình. Căn cứ vào những thuộc tính loại hình người ta chia các ngôn ngữ thế giới thành các nhóm loại hình khác nhau [3]: Ngôn ngữ hòa kết (flexional): - Loại hình này còn được gọi là ngôn ngữ hoà kết, ngôn ngữ hình thức, ngôn ngữ hữu cơ. Đặc điểm của loại hình này là: quan hệ ngữ pháp được diễn đạt ở ngay trong bản thân từ nhờ từ có biến hình ở trong câu nói. Trong từ – một trong những đơn vị cơ bản nhất của ngôn ngữ loại hình này – có sự đối lập giữa căn tố với phụ tố: căn tố và phụ tố (nói chung là các hình vị trong từ) kết hợp chặt chẽ với nhau, hoà làm một khối: giữa phụ tố và các ý nghĩa mà chúng diễn đạt không có một sự tương ứng đơn giản kiểu một đối một (một phụ tố – một ý nghĩa). - Loại hình này bao gồm các ngôn ngữ: Đức, Latin, Hi Lạp, Anh, Nga, … Ngôn ngữ chắp dính (agglutinate): - Đặc điểm của loại hình này là quan hệ ngữ pháp cũng diễn đạt bên trong từ, trong từ cũng có sự đối lập rõ rệt giữa căn tố và phụ tố; nhưng căn tố ít biến đổi và có thể tách ra dùng độc lập thành từ; còn phụ tố thì kết hợp một cách cơ giới với căn tố, mỗi phụ tố thường diễn đạt một ý nghĩa nhất định (quan hệ 1 - 1). - Loại hình khuất chiết và loại hình chắp dính là hai loại hình đã được xác định từ lâu, ngay từ khi hướng loại hình học mới bắt đầu được hình thành. Hiện nay cũng không có ai nghi ngờ về sự tồn tại của hai loại hình này và cũng không có ai phản bác gì về những ngôn ngữ đã được quy vào hai loại hình
  • 20. 15 này. Từ trước đến nay ai ai cùng đều nhất trí rằng các ngôn ngữ Ấn – Âu (như tiếng Phạn, tiếng Hi Lạp cổ, tiếng Latin, các tiếng Xlavơ (Slavic languages), các tiếng Giecmanh (Germanic languages), các ngôn ngữ tiếng Semitic (như tiếng Do Thái cổ, tiếng Ả – Rập) đều thuộc loại hình khuất chiết. Hầu hết các dòng trên đây đều thuộc kiểu ngôn ngữ tổng hợp. Thuộc kiểu phân tích, thường người ta chỉ dẫn tiếng Anh hiện đại làm ví dụ. Riêng một đôi nhà nghiên cứu thì cũng nhập luôn cả tiếng Pháp vào kiểu phân tích ở trong nội hạt loại hình khuất chiết. - Còn đối với loại hình chắp dính thì người ta thường nhất trí cho rằng ví dụ điển hình nhất là các ngôn ngữ Thổ Nhĩ Kì, các ngôn ngữ Uran – Antai và một số ngôn ngữ châu Phi kiểu như ngôn ngữ Băngtu, Mông Cổ, Nhật Bản, Triều Tiên. Ngôn ngữ đơn lập (isolate): - Những ngôn ngữ thuộc loại hình này còn được gọi là các ngôn ngữ không có hình thái, ngôn ngữ không biến hình, ngôn ngữ đơn lập hai ngôn ngữ phân tiết. - Ở loại hình này, quan hệ ngữ pháp chỉ được diễn đạt bằng trật tự trước sau của từ và/hoặc bằng các hư từ. Ở loại hình này, từ không có hiện tượng biến hình. Trong một số ngôn ngữ thuộc loại hình này, đơn vị cơ bản là hình tiết: đây là một đơn vị có nghĩa, có vỏ ngữ âm thường trùng với âm tiết, có khả năng vừa dùng như từ vừa dùng như hình vị. Ở loại hình này, người ta thường hay nói đến vấn đề khó xác định ranh giới từ, vấn đề khó phân biệt các yếu tố hư với yếu tố thực cũng như vấn đề mặt cấu tạo từ ít phát triển. - Loại hình đơn lập được xác định ở sau hai loại hình khuất chiết và chắp dính. Người ta biết đến loại hình này sau khi tiếp xúc với văn ngôn Trung Quốc. Trong cách định nghĩa loại hình hiện nay đang còn có chỗ khác nhau, nhưng trong việc quy ngôn ngữ nào vào loại hình này thì người ta lại tương đối thống nhất. Từ trước đến nay bao giờ tiếng Hán cũng được quy vào loại hình này, đặc biệt là Hán cổ đại. Ngoài tiếng Hán, người ta còn kể đến các ngôn ngữ
  • 21. 16 thuộc khu vực Đông Nam Á như tiếng Việt, ngôn ngữ Aranta ở châu Úc và các ngôn ngữ Eve, Ioruba ở châu Phi. - Điểm thường gây tranh luận nhiều nhất ở loại hình này là việc quy các ngôn ngữ vào các kiểu nhỏ: chẳng hạn, đứng trước tiếng Việt hiện đại, có người đem nó xếp cùng tiếng Hán cổ đại và coi là ngôn ngữ căn tố; có người lại coi nó là ngôn ngữ có thân từ. Ngôn ngữ đa tổng hợp (polysynthetic): - Đặc điểm của các ngôn ngữ hỗn nhập là một từ có thể tương ứng với một câu trong các ngôn ngữ khác. Nghĩa là đối tượng hành động, trạng thái hành động không được thể hiện bằng các thành phần câu đặc biệt (tân ngữ, trạng ngữ, định ngữ, ...) như ở các ngôn ngữ khác, mà được thể hiện bằng các phụ tố khác nhau trong hình thái động từ. Đôi khi chủ ngữ cũng nằm trong vị ngữ động từ. Thí dụ: trong tiếng Tschinuk ở Bắc Mĩ, tương ứng với câu "Tôi đã đến để cho cô cái này" là từ i-n-i-a-l-u-d-am, trong đó, gốc của động từ "cho" chỉ đại diện bằng một phụ âm -d-, tiền tố -i- (ở đầu) biểu hiện thời quá khứ, - n- biểu hiện ngôi thứ nhất, số ít; -i- thứ hai biểu hiện tân ngữ giới từ (cái này), -a- biểu hiện tân ngữ giới từ (cô), -l- cho biết tân ngữ giới từ trên (cô) không phải là trực tiếp mà là gián tiếp, -u- chỉ ra rằng hành động xảy ra từ người nói (tức là người nói cho ai cái gì đó chứ không phải là nhận cái gì đó của ai), phụ tố -am cuối cùng biểu hiện khái niệm về sự chuyển động có mục đích, tức là chỉ ra rằng người nói không cho ai cái gì đó một cách đơn giản mà đã đến với mục đích nhất định. - Trong ví dụ trên, hình thái động từ chỉ chứa đựng tân ngữ là đại từ. Nhưng, ở một số ngôn ngữ, hình thái động từ bao gồm cả danh từ. Trong trường hợp này, danh từ bị rút gọn. Thí dụ: trong tiếng Louravetlan, từ t-y-k, aa-nmy- rkyn có nghĩa là "Tôi giết con thú chạy". Ở đây, nmy là gốc của động từ "giết"; rkyn là phụ tố chỉ thời hiện tại: t- là tiền tố chỉ ngôi thứ nhất số ít; - kaa là hình thức rút gọn của danh từ k, oran (g) y "con thú chạy"; và -y- là nguyên âm được phát triển về mặt ngữ âm, liên hệ các phần ý nghĩa khác
  • 22. 17 nhau của từ. Chính đặc điểm các bộ phận tương ứng với các thành phần câu khác nhau được chứa đựng trong một từ mà người ta gọi là các ngôn ngữ trên là "hỗn nhập" hay "đa tổng hợp". - Cần nhớ rằng, trong các ngôn ngữ hỗn nhập, bên cạnh các hình thái hỗn nhập còn có cả các hình thái độc lập. Cùng một mối quan hệ có thể vừa được diễn đạt bằng một hình thái động từ trọn vẹn (hỗn nhập) vừa được diễn đạt bằng những thành phần câu độc lập. Chính vì vậy những ý kiến cho rằng trong các ngôn ngữ hỗn nhập không có các từ tách rời mà chỉ có từ – câu là không đúng. - Một số nhà ngôn ngữ học cho rằng, việc tách ra các ngôn ngữ hỗn nhập là dựa vào những đặc điểm về cú pháp, cho nên phải đặt nó dưới sự phân chia theo nguyên tắc cú pháp cùng với các ngôn ngữ phân tích và tổng hợp. Tuy nhiên, về mặt hình thái học, các ngôn ngữ hỗn nhập cũng thể hiện những cấu trúc hình thái riêng. Ở các ngôn ngữ này, các hình vị liên kết với nhau theo nguyên tắc dính. Nhưng trong các ngôn ngữ hỗn nhập có cả hiện tượng chuyển dạng nội bộ nữa. Do đó, xét về mặt cấu trúc của các hình vị và mối liên hệ của chúng thì các ngôn ngữ hỗn nhập vừa có những đặc điểm của các ngôn ngữ chắp dính vừa có đặc điểm của các ngôn ngữ chuyển dạng. - Các ngôn ngữ Ấn ở Nam Mĩ và đông nam Xibêri, ... là các ngôn ngữ hỗn nhập. 1.1.2. Ngôn ngữ tiếng Việt Tiếng Việt thuộc ngôn ngữ đơn lập, tức là mỗi một tiếng (âm tiết) được phát âm tách rời nhau và được thể hiện bằng một chữ viết. Đặc điểm này thể hiện rõ rệt ở tất cả các mặt ngữ âm, từ vựng, ngữ pháp. 1.1.2.1. Đặc điểm ngữ âm Trong tiếng Việt có một loại đơn vị đặc biệt gọi là ‘tiếng’. Về mặt ngữ âm, mỗi tiếng là một âm tiết. Hệ thống âm vị tiếng Việt phong phú và có tính cân đối, tạo ra tiềm năng của ngữ âm tiếng Việt trong việc thể hiện các đơn vị có nghĩa. Nhiều từ
  • 23. 18 tượng hình, tượng thanh có giá trị gợi tả đặc sắc. Khi tạo câu, tạo lời, người Việt rất chú ý đến sự hài hoà về ngữ âm, đến nhạc điệu của câu văn [3]. 1.1.2.2. Đặc điểm từ vựng Mỗi tiếng, nói chung, là một yếu tố có nghĩa. Tiếng là đơn vị cơ sở của hệ thống các đơn vị có nghĩa của tiếng Việt. Từ tiếng, người ta tạo ra các đơn vị từ vựng khác để định danh sự vật, hiện tượng, … chủ yếu nhờ phương thức ghép và phương thức láy. Việc tạo ra các đơn vị từ vựng ở phương thức ghép luôn chịu sự chi phối của quy luật kết hợp ngữ nghĩa, ví dụ: đất nước, máy bay, nhà lầu xe hơi, nhà tan cửa nát, … Hiện nay, đây là phương thức chủ yếu để sản sinh ra các đơn vị từ vựng. Theo phương thức này, tiếng Việt triệt để sử dụng các yếu tố cấu tạo từ thuần Việt hay vay mượn từ các ngôn ngữ khác để tạo ra các từ, ngữ mới, ví dụ: tiếp thị, karaoke, thư điện tử (e-mail), thư thoại (voice mail), phiên bản (version), xa lộ thông tin, siêu liên kết văn bản, truy cập ngẫu nhiên, .... Việc tạo ra các đơn vị từ vựng ở phương thức láy thì quy luật phối hợp ngữ âm chi phối chủ yếu việc tạo ra các đơn vị từ vựng, chẳng hạn: chôm chỉa, chỏng chơ, đỏng đa đỏng đảnh, thơ thẩn, lúng lá lúng liếng, .... Vốn từ vựng tối thiểu của tiếng Việt phần lớn là các từ đơn tiết (một âm tiết, một tiếng). Sự linh hoạt trong sử dụng, việc tạo ra các từ ngữ mới một cách dễ dàng đã tạo điều kiện thuận lợi cho sự phát triển vốn từ, vừa phong phú về số lượng, vừa đa dạng trong hoạt động. Cùng một sự vật, hiện tượng, một hoạt động hay một đặc trưng, có thể có nhiều từ ngữ khác nhau biểu thị. Tiềm năng của vốn từ ngữ tiếng Việt được phát huy cao độ trong các phong cách chức năng ngôn ngữ, đặc biệt là trong phong cách ngôn ngữ nghệ thuật. Hiện nay, do sự phát triển vượt bậc của khoa học – kĩ thuật, đặc biệt là công nghệ thông tin, thì tiềm năng đó còn được phát huy mạnh mẽ hơn [3].
  • 24. 19 1.1.2.3. Đặc điểm ngữ pháp Từ của tiếng Việt không biến đổi hình thái. Đặc điểm này sẽ chi phối các đặc điểm ngữ pháp khác. Khi từ kết hợp từ thành các kết cấu như ngữ, câu, tiếng Việt rất coi trọng phương thức trật tự từ và hư từ [3]. Việc sắp xếp các từ theo một trật tự nhất định là cách chủ yếu để biểu thị các quan hệ cú pháp. Trong tiếng Việt khi nói “Anh ta lại đến” là khác với “Lại đến anh ta“. Khi các từ cùng loại kết hợp với nhau theo quan hệ chính phụ thì từ đứng trước giữ vai trò chính, từ đứng sau giữ vai trò phụ. Nhờ trật tự kết hợp của từ mà “củ cải” khác với “cải củ“, “tình cảm” khác với “cảm tình“. Trật tự chủ ngữ đứng trước, vị ngữ đứng sau là trật tự phổ biến của kết cấu câu tiếng Việt. Phương thức hư từ cũng là phương thức ngữ pháp chủ yếu của tiếng Việt. Nhờ hư từ mà tổ hợp “anh của em” khác với tổ hợp “anh và em“, “anh vì em“. Hư từ cùng với trật tự từ cho phép tiếng Việt tạo ra nhiều câu cùng có nội dung thông báo cơ bản như nhau nhưng khác nhau về sắc thái biểu cảm. Ví dụ, so sánh các câu sau đây: – Ông ấy không hút thuốc. – Thuốc, ông ấy không hút. – Thuốc, ông ấy cũng không hút. Ngoài trật tự từ và hư từ, tiếng Việt còn sử dụng phương thức ngữ điệu. Ngữ điệu giữ vai trò trong việc biểu hiện quan hệ cú pháp của các yếu tố trong câu, nhờ đó nhằm đưa ra nội dung muốn thông báo. Trên văn bản, ngữ điệu thường được biểu hiện bằng dấu câu. Chúng ta thử so sánh 2 câu sau để thấy sự khác nhau trong nội dung thông báo: – Đêm hôm qua, cầu gãy. – Đêm hôm, qua cầu gãy. 1.1.2.4. So sánh với tiếng Anh Tiếng Anh là ngôn ngữ phổ biến nhất thế giới với trên một phần tư dân số thế giới sử dụng ngôn ngữ này (khoảng 400 triệu người bản ngữ và 1 – 1,6 triệu người khác từ khắp nơi). Tiếng Anh là ngôn ngữ được hơn 60% các chương trình radio sử
  • 25. 20 dụng. Hơn 70% thư tín quốc tế được viết bằng tiếng Anh, và 80% các tài liệu và văn bản về vi tính được lưu trữ bằng tiếng Anh. Tiếng Anh cũng là ngôn ngữ có nhiều từ vựng nhất trên thế giới, với khoảng 2 triệu từ và cũng là một trong những nền văn học vĩ đại nhất trong biên niên sử của loài người. Nên cũng không có gì lạ nếu các nghiên cứu khoa cũng như các tài liệu đa phần là dùng tiếng Anh. Để hiểu rõ hơn về những thuận lợi và khó khăn khi sử dụng 2 loại ngôn ngữ này, phía dưới là bảng so sánh sự khác nhau giữa tiếng Việt và tiếng Anh. Bảng 1.1. So sánh sự khác biệt giữa tiếng Việt và tiếng Anh Tiếng Việt Tiếng Anh Dấu thanh Có thanh, có dấu. Khi thay đổi dấu sẽ thành từ khác. Không có dấu thanh. Khi nói thì các từ tiếng Anh có trọng âm. Vần câu Không có từ nhiều vần, thường chỉ có 1 vần. Một từ có nhiều vần hoặc 1 vần. Nguyên âm Gồm 12 nguyên âm đơn: a, ă, â, e, ê, i, o, ô, ơ, u, ư, y. Bao gồm 5 nguyên âm đơn: a, o, i, e, u. Phụ âm Các âm còn lại: b, c, d, đ, g, h, k, l, m, n, p, q, r, s, t, v, x. Các âm còn lại: b, c, d, f, g, h, j, k, l, m, n, p, q, r, s, t, v, w, x, y, z. Cách đọc Một chữ cái chỉ có một cách đọc. Cùng một chữ cái nhưng có nhiều cách đọc trong một từ. Cách đánh vần Có thể đánh vần từng ký tự phát âm thành từ. Không thể (viết một đàng, phát âm một nẽo), nếu gặp từ mới, phải đọc theo người dạy hoặc tra từ điển (tuyệt đối không tự đánh vần như tiếng Việt). Cách phát âm Không phát âm phụ âm cuối. Phát âm phụ âm cuối. So sánh cách đọc và cách viết Viết (Tiếng Việt) = Đọc (Tiếng Việt) Viết (English) # Đọc (’ ɪŋɡlɪʃ)
  • 26. 21 Ngữ pháp Chủ yếu là dùng thì hiện tại còn quá khứ và tương lai chỉ cần thêm “đã” hoặc “sẽ” và tiếp diễn thì thêm “đang” là xong. Có 12 thì 3 thì đơn, 3 thì kép, 3 thì tiếp diễn đơn, 3 thì tiếp diễn kép, qui tắc rất là nhiêu khê, khó nhớ. Do ảnh hưởng tiếng mẹ đẻ, người Việt có khuynh hướng chỉ dùng toàn thì hiện tại trong tiếng Anh. Cách chia động từ Không chia động từ theo ngôi và số, danh từ ít nhiều gì cũng chỉ một dạng ,VD: anh “đi”, tôi “đi”, hắn cũng “đi”; một “chai”, hai cũng “chai” Thì động từ biến dạng theo ngôi, danh từ biến theo số. VD: I “go”, you “go”, but he “goes”; one “bottle”, but two “bottles” Nhịp điệu Có cao độ cao hơn, đọc/nói theo từng từ, nhịp điệu lên xuống theo thanh điệu (dấu thanh). Cao độ thấp hơn, đọc/nói theo cụm từ, có nhịp điệu lên xuống theo ngữ cảnh. Khẩu hình miệng Là ngôn ngữ đơn âm; khi nói, không đưa hơi lên mũi. Khi phát âm, đầu lưỡi thường ở khoảng giữa khoang miệng. Sau khi phát âm, luồng hơi từ phổi bị giữ lại trong khoang miệng và thoát ra ngoài rất ít. Đóng khẩu hình miệng khi kết thúc một từ. Là ngôn ngữ đa âm; khi nói, đưa hơi lên mũi. Khi phát âm, đầu lưỡi chuyển động và chạm vào nhiều nơi trong khoang miệng. Sau khi phát âm, luồng hơi từ phổi di chuyển đến khoang miệng và thoát ra ngoài khá nhiều. Thường không đóng khẩu hình miệng mà đọc nối tiếp với từ tiếp theo (Điều này khiến khó nghe và đọc).
  • 27. 22 Qua một số đặc điểm nổi bật vừa nêu trên đây, chúng ta có thể hình dung được phần nào bản sắc và tiềm năng của tiếng Việt. Tuy nhiên, điều đó cũng đồng nghĩa với việc tiếng Việt là một ngôn ngữ rất khó xử lý. Để máy tính có thể hiểu được, chúng ta cần phải thực hiện rất nhiều công đoạn. Cụ thể chúng tôi sẽ nêu rõ ở phần sau. 1.1.3. Xử lý ngôn ngữ tự nhiên 1.1.3.1. Khái niệm Xử lý ngôn ngữ là một phạm trù trong xử lý thông tin với đầu vào là dữ liệu ngôn ngữ, hay nói cách khác, đó là văn bản hoặc tiếng nói, Các dữ liệu này đang trở thành kiểu dữ liệu chính của con người, và lưu dưới dạng điện tử. Đặc điểm chung của chúng là không có cấu trúc (non-structured ), hoặc nửa câu trúc (semi-structured) và không thể lưu lại dưới dạng bảng biểu. Vì vậy chúng ta cần phải xử lý chúng để có thể chuyển từ dạng chưa hiểu thành dạng có thể hiểu. Xử lý ngôn ngữ tự nhiên – XLNNTN (Natural Language Processing – NLP) là lĩnh vực Khoa học máy tính kết hợp giữa Trí tuệ nhân tạo & Ngôn ngữ học tính toán nhằm tập trung xử lý tương tác giữa con người và máy tính sao cho máy tính có thể hiểu hay bắt chước được ngôn ngữ của con người. Xử lý ngôn ngữ tự nhiên là hướng dẫn máy tính thực hiện và giúp đỡ con người các công việc về ngôn ngữ như: dịch thuật, phân tích dữ liệu văn bản, nhận dạng tiếng nói, tìm kiếm thông tin, tóm tắt văn bản [1]. 1.1.3.2. Các bài toán thường gặp Một số bài toán về xử lý ngôn ngữ tiêu biểu như [33]: - Nhận dạng tiếng nói (Speech recognization): phổ biến trong các hệ thống trợ lý ảo như Siri của Apple, Cortana của Microsoft, Google Assistant của Google, Alexa của Amazon, …. - Tổng hợp tiếng nói (Speech Synthesis): từ dữ liệu văn bản, phân tích và chuyển thành tiếng nói. Hiện tại các hãng công nghệ lớn như IBM và Amazon
  • 28. 23 đều có dịch vụ Text to Speech (TTS) chất lượng tốt, có API để dùng trong production, nhưng không hỗ trợ tiếng Việt. Ở Việt Nam cũng có một số trường đại học, nhóm nghiên cứu đưa ra dịch vụ TTS như VAIS (https://app.vais.vn/), AILAB (http://ailab.hcmus.edu.vn/vosdemo) và nổi bật nhất là FPT Speech Systhesis (FSS) với nhiều tính năng, nhiều giọng đọc và API mở cho cộng đồng. - Nhận dạng ký tự quang học (Optical Character Recognition): từ một văn bản in trên giấy hoặc các banner có thể chuyển thành một tệp văn bản lưu trên máy tính. Với tiếng Việt, phần mềm nhận dạng chữ Việt in VnDOCR 4.0 có khả năng nhận dạng trực tiếp các loại tài liệu được quét qua máy quét, không cần lưu trữ dưới dạng tệp ảnh trung gian, phục vụ rất tốt cho nhu cầu số hóa dữ liệu. Vào tháng 4 năm 2009, ABBYY – một hãng công nghệ hàng đầu trên thế giới về lĩnh vực OCR đã tiến hành nghiên cứu và triển khai công nghệ nhận dạng tiếng Việt. Với công nghệ này độ chính xác trong việc nhận dạng tài liệu chữ in tiếng Việt lên tới hơn 99%. - Dịch tự động (Machine Translation): Một công cụ phổ biến hiện nay là Google Translate, ngoài ra còn có thể kể đến các công cụ thuần Việt khác như Lạc Việt, Vdict, Baamboo, Evtran, …. - Tóm tắt văn bản (Text Summarization): từ một văn bản dài, máy tóm tắt thành một văn bản ngắn hơn với các nội dung chính cơ bản. Đây là một hướng đi đang phát triển rất nhiều ở Việt Nam. - Tìm kiếm và truy xuất thông tin (Information Retrieval): từ một nguồn có rất nhiều tệp thông tin, tìm ra những tệp có liên quan đến câu hỏi cần tìm. Tiêu biểu như Google Search, Yahoo Search, Bing, … hay một công cụ thuần Việt là Tìm kiếm Cốc Cốc. - Rút trích thông tin văn bản (Information Extraction): tìm ra những đoạn bên trong của một tệp thông tin chứa nội dung ta cần biết. - Khai phá dữ liệu (Data Mining): là quá trình tìm kiếm các mẫu từ tập dữ liệu lớn (Data Set) và phân tích dữ liệu từ những quan điểm khác nhau. Nó cho
  • 29. 24 phép người dùng trong doanh nghiệp dùng để phân tích dữ liệu từ nhiều góc độ khác nhau và tóm tắt các mối quan hệ xác định (relationship). Data Mining rất hữu ích trong việc tăng doanh thu và cắt giảm chi phí. Đây là một hướng đi rất tiềm năng ở Việt Nam. Các bài toán trên có thể phân thành 3 loại sau: - Xử lý tiếng nói và xử lý ảnh. - Xử lý văn bản. - Khai phá văn bản Web. Đối với các bài toán về xử lý văn bản, chúng ta cần xử lý theo các tầng cơ bản sau: - Tầng ngữ âm (Phonetic and Phonological Layer): nghiên cứu về ngữ âm, mô hình hóa các từ, cách phát âm, thanh điệu, ngữ điệu, trường độ âm tiết, độ nhấn, biến thanh, .... - Tầng hình thái (Morphological Layer): nghiên cứu về thành phần có nghĩa của từ, cấu tạo của từ, hay nó được tách ra trong một câu như thế nào. VD đối với bài toán Word Segmentation trong tiếng Việt, bạn có thể thấy một ví dụ quen thuộc "Ông già đi nhanh quá", và bạn có thể hiểu theo 2 nghĩa: (Ông già) (đi) (nhanh quá) hoặc (Ông) (già đi) (nhanh quá). Điều này có thể dẫn đến nhập nhằng ngữ nghĩa, và làm ảnh hưởng rất lớn đến quá trình dạy máy hiểu được ngôn ngữ con người. - Tầng ngữ pháp (Syntactic Layer): nghiên cứu về các quan hệ cấu trúc giữa các từ trong câu để tạo ra câu đúng. Các bài toán giải quyết tầng này như: o Part Of Speach tagging: Xác định loại từ trong câu như danh từ, động từ, giới từ, trợ từ, …. o Chungking: Xác định cụm từ như cụm danh từ, cụm động từ, cụm trạng từ, …. VD "học sinh" là cụm danh từ, "học" là cụm động từ, "sinh học" là cụm trạng từ. o Parsing: Phân tích cú pháp. VD (Học sinh) (học) (sinh học) là quan hệ chủ ngữ – vị ngữ. Một số loại parsing bạn có thể tham khảo như: phân
  • 30. 25 tích cú pháp từ trên xuống (Top - Down Parsing), phân tích cú pháp dự đoán (Predictive Parsing), …. - Tầng ngữ nghĩa (Semantic Layer): nghiên cứu xác định nghĩa của từ và tổ hợp của chúng. VD với từ "đi" người ta có hiểu "đi" là động tác "bước đi" hoặc "đi" cũng có thể là "qua đời". Do đó để hiểu được ý nghĩa của từ, chúng ta cần đặt nó trong ngữ cảnh của câu văn. - Tầng ngữ dụng (Pragmatic layer): nghiên cứu mối quan hệ giữa ngôn ngữ và ngữ cảnh sử dụng ngôn ngữ. Trong một bài toán về xử lý ngôn ngữ, khi phân tích ở các tầng ngữ âm (1) đến các tầng ngữ pháp (3) chúng ta gọi là phân tích sơ bộ (shallow parsing), thường được áp dụng trong các bài toán như tìm kiếm thông tin, phân tích văn bản cho tổng hợp tiếng nói, …. Tuy nhiên với một số bài toán đi sâu vào ngữ nghĩa như dịch tự động, thì việc phân tích sơ bộ là chưa đủ, Khi đó, ít nhất chúng ta phải thực hiện đến tầng ngữ nghĩa (4) ta sẽ có phân tích đầy đủ (fully parsing). 1.1.3.3. Các bước xử lý Tương ứng với các tầng cơ bản trên, chúng ta cũng có các bước xử lý dựa trên các tầng cơ bản đó. Phân tích hình thái: Trong bước này từng từ sẽ được phân tích và các ký tự không phải chữ (như các dấu câu) sẽ được tách ra khỏi các từ. Trong tiếng Anh và nhiều ngôn ngữ khác, các từ được phân tách với nhau bằng dấu cách. Tuy nhiên trong Tiếng Việt, dấu cách được dùng để phân tách các tiếng (âm tiết) chứ không phải từ. Cùng với các ngôn ngữ như tiếng Trung, tiếng Hàn, tiếng Nhật, phân tách từ trong tiếng Việt là một công việc không hề đơn giản. Phân tích cú pháp: Dãy các từ sẽ được biến đổi thành các cấu trúc thể hiện sự liên kết giữa các từ này. Sẽ có những dãy từ bị loại do vi phạm các luật văn phạm. Phân tích ngữ nghĩa: Thêm ngữ nghĩa vào các cấu trúc được tạo ra bởi bộ phân tích cú pháp.
  • 31. 26 Tích hợp văn bản: Ngữ nghĩa của một câu riêng biệt có thể phụ thuộc vào những câu đứng trước, đồng thời nó cũng có thể ảnh hưởng đến các câu phía sau. Phân tích thực nghĩa: Cấu trúc thể hiện điều được phát ngôn sẽ được thông dịch lại để xác định nó thật sự có nghĩa là gì. Tuy nhiên, ranh giới giữa 5 bước xử lý này cũng rất mong manh. Chúng có thể được tiến hành từng bước một, hoặc tiến hành cùng lúc - tùy thuộc vào giải thuật và ngữ cảnh cụ thể [1]. 1.1.3.4. Thuật ngữ Ambiguity – nhập nhằng (ở nhiều cấp độ: lexical – từ vựng, morphological – hình vị, syntactic – cú pháp, semantic – ngữ nghĩa, domain – lĩnh vực). Ví dụ nhập nhằng từ “đậu” đại diện cho một hành động hay “đậu” đại diện cho một loài thực vật trong câu “Con ruồi đậu mâm xôi đậu”. Anaphora – khử nhập nhằng thế đại từ. Ví dụ “The monkey ate the banana because it was hungry”. Đại từ “it” thay thế cho monkey hay banana. Bag of Words – mô hình thường dùng trong các tác vụ phân lớp văn bản (Text Classification). Thông tin sẽ được biểu diễn thành tập các từ đi kèm với tần suất xuất hiện của mỗi từ này trong văn bản. Bag of Words được dùng như feature để huấn luyện cho classifier. Corpus/Corpora – “ngữ liệu” là những “dữ liệu, cứ liệu của ngôn ngữ”, tức là những chứng cứ thực tế sử dụng ngôn ngữ, được dùng để kiểm chứng các quy luật của ngôn ngữ trong quá trình phân tích thống kê hay kiểm định giả thuyết thống kê của các mô hình dự đoán. Có nhiều loại Corpora như bilingual parallel corpora (ngữ liệu song ngữ) hay parallel corpora (ngữ liệu song song), …. Explicit Semantic Analysis (ESA) - là tiến trình giúp máy hiểu được ý nghĩa của văn bản, được sử dụng trong Information Retrieval, Document Classification, Semantic Relatedness calculation (độ tương tự về nghĩa giữa các từ hay văn bản).
  • 32. 27 Information Extraction – là tiến trình rút trích ra các thông tin có cấu trúc một cách tự động từ các nguồn dữ liệu không cấu trúc hay bán cấu trúc (unstructured/semi- structure) ví dụ như các tài liệu văn bản hay các trang web. Hình 1.1. Information Extraction Latent Dirichlet Allocation (LDA) – kĩ thuật Topic Modeling thường dùng, ý tưởng của LDA dựa trên nguyên lý mỗi topic là phân bố của các từ, mỗi văn bản là sự trộn lẫn giữa nhiều topic, và mỗi từ phân bố vào một trong những topic này. Latent Semantic Analysis (LSA) - tiến trình phân tích quan hệ giữa các văn bản và các từ. Đầu ra là mối liên quan giữa các khái niệm, văn bản, và các từ. LSA giả sử các từ gần nhau về mặt ý nghĩa sẽ xuất hiện trong các văn bản tương tự. Hình 1.2. Latent Semantic Analysis Morphological analysis (Phân tích hình thái): - Phân tích phụ tố (affix): ví dụ anti-comput-er-iza-tion. - Xử lý từ ghép (compound word): ví dụ carry out, out of sight, out of mind. - Xử lý các trường hợp tỉnh lược (ellipsis): I’m, o’clock, Dr.
  • 33. 28 - Nhận diện tên riêng như John, Bush, IBM. - Nhân diện ranh giới từ (word boundary): Tiếng Việt một từ có nhiều tiếng. Ví dụ: chúm chím, tuổi tác, giáo viên, hiện đại hóa, … Named Entity Recognition (NER) – là tiến trình xác định và phân loại các phần tử trong văn bản vào các danh mục được định nghĩa trước như tên người, tên tổ chức, địa điểm, giá trị tiền tệ, tỷ lệ phần trăm, …. Hình 1.2. Named Entity Recognition Parser (Phân tích ngữ pháp) - Gán nhãn từ loại (Part Of Speech – POS tagging): một từ có nhiều từ loại như Danh từ, Động từ, Tính từ, … - Gán nhãn ranh giới ngữ: đâu là bắt đầu, kết thúc của các ngữ (phrase). - Gán nhãn quan hệ ngữ pháp (grammatical relation). - Gán nhãn cây cú pháp (parse tree). Hình 1.3. Parse Tree
  • 34. 29 Pragmatics – phân tích ngữ dụng: từ “sentence” trong phân tích văn phạm có nghĩa là câu, trong luật pháp có nghĩa là án tù. Do vậy, ta cần xem xét toàn bộ văn bản để đưa ra ý nghĩa chính xác. Pre-processing – tiền xử lý dữ liệu, xử lý sơ bộ văn bản: xóa bỏ những kí tự, những mã điều khiển, những vùng không cần thiết cho hệ thống gồm: tách đoạn/câu/từ (paragraph/sentence/word segmentation), làm sạch (cleaning), tích hợp (integreation), chuyển đổi (transformation). Hình 1.4. Pre-processing Sentiment Analysis: sử dụng các kĩ thuật XLNNTN để rút trích thông tin chủ quan của người dùng từ một câu nói hay một văn bản. Đây cũng là kĩ thuật khai thác ý kiến người dùng xem họ đang có thái độ tích cực hay thái độ tiêu cực về sản phẩm của công ty. Hình 1.5. Sentiment Analysis
  • 35. 30 1.1.4. Xử lý ngôn ngữ tiếng Việt 1.1.4.1. Tình hình Ở Việt Nam cũng đã có một số nhóm bắt đầu nghiên cứu về xử lý ngôn ngữ, bước đầu đã có những kết quả nhất định như: các nhóm nghiên cứu đến từ các trường đại học, đại học Bách Khoa, đại học Công Nghệ, đại học Khoa Học Tự Nhiên, Viện Nghiên Cứu Công Nghệ Thông Tin, .... Nhóm Nghiên Cứu VLNP, bên ngoài Việt Nam cũng có các nghiên cứu đến từ các nghiên cứu sinh Việt Nam tại JAIST. Phần lớn các sản phẩm hiện nay đang tập trung vào lĩnh vực dịch máy, một sản phẩm khó, và yêu cầu làm dài hạn. Ngoài ra còn có các bài toán phân loại chia nhóm văn bản, .... Và đa phần chỉ dừng lại ở đề tài tiến sĩ, thạc sĩ, các bài báo nghiên cứu khoa học mang tính chất tìm hiểu, chưa hệ thống và định hướng rõ ràng. 1.1.4.2. Khó khăn Xử lý ngôn ngữ cũng đóng một vai trò quan trọng trong việc đẩy mạnh sự phát triển của CNTT Việt Nam đến với thế giới. Tuy nhiên, ông ta ta xưa nay vẫn nói: “Phong ba bão táp không bằng ngữ pháp Việt Nam”. Người Việt Nam đôi khi còn gặp khó khăn khi sử dụng tiếng Việt, ấy thế mà, giờ chúng ta cần phải dạy cho máy có thể dùng tiếng Việt như con người. Điều này quả thật rất khó khăn. Ngoài những đặc điểm về ngôn ngữ tiếng Việt đã nêu ở phần 1.1.2, bản thân tiếng Việt cũng đã là một ngôn ngữ phức tạp khiến cho việc xử lý gặp nhiều khó khăn với nhiều hiện tượng: - Tách từ Ví dụ: “Ông già đi nhanh quá” có hai cách hiểu: (1): Ông già/ đi/ nhanh quá. (2): Ông/ già đi/ nhanh quá. - Chơi chữ bằng các biện pháp như: o Từ đồng âm: Ví dụ: “Hổ mang bò lên núi” có hai cách hiểu: (1) Con rắn hổ mang bò (trườn) lên núi.
  • 36. 31 (2) Con hổ (cọp) mang con bò lên núi. o Đảo trật tự từ: Ví dụ 1: “Đại học để học đại.” Ví dụ 2: “Học trò là học trò con, tóc đỏ như son là con học trò Tri huyện là tri huyện Thằng, ăn nói lăng nhăng là thằng tri huyện” o Tách các thành tố của từ phức thành các tiếng, mỗi tiếng là một từ đơn với ý nghĩa đã chuyển: Ví dụ: “Hành chính thì hành là chính.” o Nói lái: Ví dụ 1: “Con cá đối nằm trên cối đá.” Ví dụ 2: “Bí mật bị mất mới được bật mí.” o … - Teencode: Là một thuật ngữ chỉ kiểu chữ viết tắt của giới trẻ. Teencode xuất hiện từ những những năm 2000, thời đại mà Internet bắt đầu phát triển cực đại ở Việt Nam. Dạng ngôn ngữ này chủ yếu là dùng những từ viết tắt, chữ cái thay thế và không có một trật tự hay quy luật nhất định, tất cả đều tùy thuộc vào người viết. Ví dụ 1: “c0n ch0’, m3o` v4` g4` ” có thể hiểu là “con chó, mèo và gà” Ví dụ 2: “ wá wen thc” có thể hiểu là “quá quen thuộc” Có thể thấy, sự nhập nhằng về ngữ nghĩa là một vấn đề cực kì nan giải trong tiếng Việt. Vì thế, công đoạn tiền xử lý là cực kì quan trọng. Điều này sẽ được chúng tôi nói rõ ở mục 2.2 Tiền xử lý văn bản. Ngoài yếu tố khách quan do bản thân tiếng Việt, bên cạnh những thành quả ban đầu thì các công trình nghiên cứu xử lý ngôn ngữ ở Việt Nam vẫn đang gặp rất nhiều những khó khăn khác: - Thường tập trung vào làm các sản phẩm cho người dùng cuối với nhiều kỳ vọng vào các sản phẩm dịch máy, một loại sản phẩm khó làm và cần làm dài hạn với những phương pháp hợp lý.
  • 37. 32 - Ít các nghiên cứu nền tảng, thiếu phát triển “hạ tầng cơ sở” cho xử lý ngôn ngữ như công cụ và tài nguyên: từ điển (dùng cho máy), kho ngữ liệu, … những thứ đã được cả cộng đồng quốc tế xác định là không thể thiếu trong xử lý ngôn ngữ. Các bộ dữ liệu chưa hoàn chỉnh, không được công bố rộng rãi hay thương mại hóa. Dữ liệu thường hay bị spam, sai chính tả, ngữ pháp không rõ ràng. - Phần đông là các nghiên cứu ngắn hạn và đơn lẻ ở mức đề tài thạc sỹ, tiến sỹ với nhiều hạn chế về thời hạn và điều kiện. Đa số mới xây dựng được mô hình, thử và kiểm tra trên những tập ngữ liệu nhỏ. Những kết quả đạt được ở đây còn xa với mức sử dụng được trong thực tế. - Rất có thể nhiều nhóm đã bắt đầu với sự khảo sát chưa đầy đủ, hoặc tiến hành công việc khi có thể còn thiếu kiến thức. Do vấn đề mới và phức tạp, các hội đồng đánh giá thẩm định các đề tài về xử lý ngôn ngữ còn chưa có chuyên gia, chưa thật rõ hết cái có thể và cái chưa thể làm được, người làm đi đường ngắn hay đường vòng, …. - Đáng băn khoăn hơn cả là các nỗ lực của chúng ta chưa được liên kết, thiếu chia sẻ, phân công, hợp tác theo một lộ trình có kế hoạch, thiếu “kim chỉ nam” về xử lý tiếng Việt, và không có tính kế thừa về kết quả giữa các tầng của xử lý ngôn ngữ tự nhiên. Nếu hình dung công việc trong các tầng của xử lý ngôn ngữ được đánh số từ A đến Z, thì hầu hết các việc làm ra cho người dùng cuối đều ở quãng từ R, S, … trở đi, mà muốn làm mấy việc này thì đều cần kết quả của tất cả các bước từ A đến tận P, Q. Hiềm nỗi mỗi việc từ A, B, … đến P, Q muốn làm tốt đều đòi hỏi một nhóm người làm trong một vài năm. Vì vậy, nếu ai cũng phải làm từ A đến gì đấy tận P, Q, có lẽ sẽ không ai có thể làm ra các sản phẩm R, S, ... Z đủ tốt. 1.2. Vector hóa dữ liệu Để máy tính có thể hiểu được ngôn ngữ tự nhiên nói chung và ngôn ngữ tiếng Việt nói riêng, sau khi tiến hành tiền xử lý dữ liệu thì chúng ta cần phải vector hóa
  • 38. 33 dữ liệu (Vectorization hay Vector Representation) để máy tính có thể hiểu được. Hiểu một cách đơn giản, vector hóa dữ liệu là chuyển đổi dữ liệu từ các kí tự chữ cái thành các vector trọng số. Hiện nay, có khá nhiều cách để ta vector hóa dữ liệu nhưng trong nghiên cứu này, chúng tôi chọn phương pháp Doc2Vec. Lý do là, chúng tôi khảo sát thấy rằng chưa có nghiên cứu nào khảo sát hiệu suất hoạt động của việc biểu diễn văn bản thành vector thông qua Doc2Vec trong bài toán phân tích cảm xúc người dùng trong ngôn ngữ tiếng Việt. Và để có thể hiểu hơn về Doc2Vec hơn, ta phải làm rõ các khái niệm cơ bản hơn trong vector hóa dữ liệu. 1.2.1. Word Vector Word Vector hay One-hot Vector (1-of-N) [7] là một vector có trọng số, biểu diễn cho một từ với số chiều cụ thể và có toàn bộ giá trị là ‘0’ trừ tại một vị trí đặc biệt nào đó thì giá trị sẽ là ‘1’. Giả sử từ điển của chúng ta chỉ có 5 từ: ‘King’, ‘Queen’, ‘Man’, ‘Woman’ và ‘Child’. Ta có thể biểu diễn từ ‘Queen’ như bên dưới. Hình 1.6. Cách biểu diễn từ ‘Queen’ dưới dạng One-hot Vector Số chiều của One-hot Vector sẽ phụ thuộc vào số lượng phần tử có trong tập hợp mà chúng ta cần biểu diễn. Trong ví dụ trên vì tập hợp chúng ta chỉ có 5 phần tử (‘King’, ‘Queen’, ‘Man’, ‘Woman’, ‘Child’) nên vector của chúng ta có số chiều là 5. Giả sử cần biểu diễn cho toàn bộ 102 ký tự trên bàn phím thì chúng ta sẽ cần vector 102 chiều [7]. Nhược điểm của cách biểu diễn này là ta không thu được nhiều ý nghĩa
  • 39. 34 trong việc so sánh các từ với nhau ngoại trừ so sánh bằng, các từ có ý nghĩa hơn không được nhấn mạnh. 1.2.2. Word2Vec 1.2.2.1. Khái niệm Word2Vec là biểu diễn các từ (word) dưới dạng một phân bố quan hệ với các từ còn lại (distributed representation) [8]. Mỗi từ được biểu diễn bằng một vector có các phần tử mang giá trị là phân bố quan hệ của từ này đối với các từ khác trong từ điển. Như thế thay vì kết nối one-to-one giữa các phần từ trong vector và một từ, biểu diễn từ sẽ là dàn trải tất cả các thành phần của vector, và mỗi phần tử trong vector sẽ góp phần định nghĩa nhiều từ khác. Hình 1.7. Cách biểu diễn các từ trên Word2Vec Với cách biểu diễn như vậy, người ta khám phá ra rằng các vector mang lại cho ta cả cú pháp và ngữ nghĩa ở mức độ nào đó để máy tính hiểu. 1.2.2.2. Phương thức hoạt động Công cụ Word2Vec sẽ lấy các bộ ngữ liệu văn bản (Corpus) như là một input đầu vào và từ đó tạo ra các output đầu ra là Word Vector [7]. Đầu tiên, nó sẽ xây dựng một bộ từ vựng (Vocabulary) từ các văn bản dữ liệu sau khi đã được train, sau
  • 40. 35 đó nó sẽ học cách biểu diễn từ của Vector. Kết quả ta thu được là một file Word Vector có thể được sử dụng trong các ứng dụng của XLNNTN và các ứng dụng học máy. Có hai mô hình chính trong Word2Vec: Continuous Bag of Words với Continuous Skip-Gram và hai thuật toán chính được sử dụng trong Word2Vec là Hierarchical Softmax và Negative Sampling [7]. Về mô hình: - Continuous Bag of Words: Ý tưởng của mô hình CBOW là mô hình dự đoán từ hiện tại dựa trên các từ xung quanh hay các từ trong cùng ngữ cảnh. Ngữ cảnh ở đây có thể là một câu hay một tập các từ đứng cạnh nhau [3]. Đầu vào của CBOW sẽ là tập các ngữ cảnh và đầu ra là từ hiện tại cần dự đoán. CBOW sử dụng tầng Chiếu chung cho tất cả các từ, do vậy tất cả các từ sẽ được chiếu vào vị trí giống nhau. Ngoài việc sử dụng các từ đứng trước từ hiện tại, CBOW còn sử dụng các từ đứng sau từ hiện tại để phân loại chính xác từ hiện tại dựa trên việc xây dựng bộ phân loại Log-Linear cho các từ đứng trước và từ đứng sau. Trong mô hình này, thứ tự của các từ trong lịch sử không ảnh hưởng đến việc dự đoán. Hình 1.8. Mô hình Continous Bag of Words
  • 41. 36 - Continuous Skip-gram: Kiến trúc của Continuous Skip-gram giống với Continuos Bag of Word, tuy nhiên thay vì dự đoán từ hiện tại dựa trên ngữ cảnh, mô hình này tập trung vào việc tối ưu phân loại của một từ dựa trên từ khác trong cùng một câu. Cụ thể, phương pháp này sử dụng đầu vào là từ hiện tại cho bộ phân loại Log-Linear với tầng Chiếu liên tục và dự đoán các từ theo một dải nào đó phía trước và sau từ hiện tại. Việc tăng kích thước dải sẽ cải thiện chất lượng của Vector từ đầu ra, tuy nhiên nó cũng làm tăng độ phức tạp tính toán. Vì những từ càng xa thì thường ít liên quan đến từ hiện tại hơn là những từ gần nó, do vậy chúng ta có thể đánh trọng số cho những từ ở xa nhỏ đi để khắc phục vấn đề này. Không giống với các kiến trúc mạng nơ-ron được sử dụng trước đó để học Vector từ, việc đào tạo mô hình Skip-gram không sử dụng đến các phép nhân ma trận dày đặc. Điều này khiến cho việc đào tạo trở nên cực kỳ hiệu quả: một máy đơn đã được tối ưu có thể đào tạo hơn 100 tỉ từ một ngày. Một mở rộng đáng ngạc nhiên của phương pháp này đó là việc áp dụng các phép cộng/trừ đại số cho các Vector có thể thu được các kết quả bất ngờ về ngữ nghĩa [3]. Hình 1.9. Mô hình Continuous Skip-gram Về thuật toán:
  • 42. 37 - Hierarchical Softmax sử dụng cây nhị phân để biểu diễn tất cả các từ trong vocabulary. Mỗi từ là một lá trong cây. Với mỗi lá , tồn tại duy nhất một đường từ gốc tới lá này , như thế đường này sẽ được sử dụng để ước lượng xác suất mỗi từ biểu diễn bởi lá . - Negative Sampling chỉ đơn giản là chúng ta chỉ cập nhật sample của output word mỗi vòng lặp . Target output word sẽ được giữ trong sample và được cập nhật và chúng ta sẽ thêm một vài (non-target) từ như negative samples. Mikolov cũng sử dụng một cách tiếp cận subsampling đơn giản để chống lại sự mất cân bằng giữa các từ hiếm và thường xuyên trong tập huấn luyện (ví dụ như “in”, “the”, and “a” cung cấp ít giá trị thông tin hơn các từ hiếm). Mỗi từ trong tập huấn luyện được loại bỏ với một xác suất P(wi). 1.2.3. Doc2Vec 1.2.3.1. Khái niệm Doc2Vec được giới thiệu bởi Quoc Le và Mikolov có tên đầy đủ là Paragraph Vector [6]. Doc2Vec là một thuật toán không giám sát và nó là một sự cải tiến so với Word2Vec, ngoài từ (word), ta còn có thể biểu diễn các câu (sentences) thậm chí một đoạn văn bản (document) có độ dài thay đổi. Thuật toán không yêu cầu điều chỉnh công việc cụ thể cho hàm trọng số cũng như không dựa vào các cây phân tích cú pháp. Chúng ta có thể dễ dàng vector hóa cả một đoạn văn bản thành một vector có số chiều cố định và nhỏ, từ đó có thể chạy bất cứ thuật toán phân lớp (classification) cơ bản nào trên các vector đó. Việc xây dựng thuật toán này có các tiềm năng để khắc phục những điểm yếu của mô hình của Word2Vec như Bag of Words. Các kết quả thực nghiệm cho thấy Doc2Vec vượt trội hơn hẳn các kỹ thuật biểu diễn văn bản khác. Có hai mô hình cơ bản của Doc2Vec là Distributed Bag of Words (DBoW) và Distributed Memomry (DM).
  • 43. 38 1.2.3.2. Phương thức hoạt động Các thuật toán phân loại hay phân cụm thường xuyên đòi hỏi tập văn bản đầu vào biểu diễn dưới dạng một vector có độ dài cố định (fixed length vector). Các mô hình phổ biến đó là bag-of-words và bag-of-n-grams. Bag-of-words đương nhiên là làm mất đi ngữ nghĩa có thể tới từ thứ tự của các từ. Bag-of-n-grams chỉ xem xét short context và không được tốt lắm nếu dữ liệu thưa thớt và số chiều lớn. Các nhà nghiên cứu trước đây đã cố gắng kết hợp các distributed word vectors, ví dụ bằng cách sử dụng một trọng số trung bình của tất cả các từ trong một tài liệu, hoặc kết hợp các word vectors theo một thứ tự nhất định của cây phân tích cú pháp của một câu. Các phương pháp này cũng chịu việc mất mát thông tin về thứ tự từ, và sau này không dễ dàng để mở rộng câu. Công việc xây dựng Doc2Vec của Quoc Le và Mikolov được lấy cảm hứng từ các phương pháp học của Word Vector và Word2Vec. Ý tưởng là cần các Word Vector để đóng góp cho nhiệm vụ dự đoán từ tiếp theo trong câu. Vì vậy, mặc dù các vector được khởi tạo ngẫu nhiên nhưng chúng cũng có thể nắm bắt ngữ nghĩa và cho ra một kết quả gián tiếp của nhiệm vụ dự đoán từ ngữ. Họ đã sử dụng ý tưởng này tương tự cho các vector văn bản. Ưu điểm của phương pháp này là chúng được huấn luyện từ dữ liệu không có nhãn và qua đó có thể hoạt động tốt trên các tác vụ không có đủ dữ liệu có gán nhãn. Mô hình Distributed Bag of Words: - Distributed Bag of Words là một mô hình đơn giản. Hiểu một cách đơn giản, DBoW không quan tâm thứ tự xuất hiện của các từ, huấn luyện nhanh hơn, không sử dụng Local-Context/Neighboring. Mô hình DBoW chèn thêm một "word" là ParagraphID, ParagraphID này đại diện cho văn bản được huấn luyện [6]. Sau khi huấn luyện xong có thể hiểu các vector ParagraphID này là vector embedded của các văn bản. Hình ảnh được mô tả trong bài báo:
  • 44. 39 Hình 1.10. Mô hình của Distributed Bag of Words - Chi tiết hơn, phương thức ở trên dựa vào việc ghép nối các vector văn bản với các vector từ ngữ để dự đoán từ tiếp theo trong kho văn bản, một cách khác là bỏ qua từ ngữ cảnh ở đầu vào, nhưng bắt buộc mô hình dự đoán các từ được lấy ngẫu nhiên ở đầu ra. Trong thực tế, điều này có nghĩa là mỗi lần lặp lại ngẫu nhiên, chúng ta lấy được từ mẫu ở kho văn bản, sau đó lấy một từ ngẫu nhiên ở kho văn bản và tạo thành một chương trình phân loại cho Doc2Vec. Kỹ thuật này được thể hiện rõ trong hình 1.11. - Ngoài việc đơn giản về mặt khái niệm, mô hình này yêu cầu lưu trữ ít dữ liệu hơn. Chúng ta chỉ cần lưu trữ các trọng số softmax cũng như các trọng số trái ngược với softmax và vector từ ngữ trong mô hình trước đó. Mô hình này cũng tương tự như mô hình Skip-gram trong Word2Vec (Mikolov và cộng sự, 2013c) Mô hình Distributed Memory: - Distributed Memomry còn được gọi là mô hình bộ nhớ phân tán của vector văn bản. Mô hình này xem một đoạn paragraph là một từ, sau đó nối từ này vào tập các từ trong câu [6]. Đoạn mã biểu diễn cho đoạn văn có thể được coi là một từ khác. Nó hoạt động như một bộ ghi nhớ những gì còn thiếu trong bối xi+3 xi+2 D xi Văn bản được huấn luyện Bộ phân lớp Ma trận văn bản xi+1
  • 45. 40 cảnh hiện tại hoặc chủ đề của đoạn văn. Trong quá trình huấn luyện, vector của paragraph và vector từ đều được cập nhật liên tục: Hình 1.11. Mô hình Distributed Memory - Mô hình gồm 2 giai đoạn chính: o Huấn luyện để lấy các vector từ W, các trọng số softmax U, b và các vector văn bản D trên các đoạn đã huấn luyện. o “Giai đoạn suy luận” để lấy các vector văn bản D cho các đoạn văn mới (chưa từng thấy trước đây) bằng cách thêm nhiều cột trong D và giảm dần trên D trong khi giữ W, U , b cố định. Chúng tôi sử dụng D để đưa ra dự đoán về số nhãn cụ thể bằng cách sử dụng các phương pháp phân loại chuẩn như Logistic Regression, SVM, .... - Các vector đoạn văn cũng giải quyết được một số điểm yếu chính của mô hình bag-of-words. Đầu tiên, họ kế thừa một thuộc tính quan trọng của vector từ ngữ, đó là ngữ nghĩa của từ. Trong trường hợp này, “mạnh mẽ” gần gũi với “khỏe” hơn là “Paris”. Ưu điểm thứ hai là của vector văn bản là chúng xem xét thứ tự từ ngữ, ít nhất là trong một đoạn văn nhỏ, trong cùng một cách mà mô hình n-gram với mô hình lớn hơn làm. Điều này khá quan trọng, vì mô hình n-gram bảo tồn rất nhiều thông tin của văn bản, bao gồm cả thứ tự từ ngữ. Điều đó nói lên một điều, mô hình của chúng tôi có lẽ tốt hơn mô hình bag-of- xi+3 D W W W Văn bản được huấn luyện Bộ phân lớp Trung bình cộng/ Kết hợp Ma trận văn bản xi+2 xi+1 xi
  • 46. 41 n-gram vì mô hình bag-of-n-gram sẽ tạo ra một từ đại diện có xu hướng khái quát hóa kém. Một cách đơn giản để kiểm chứng phương thức vector hóa dữ liệu có hoạt động hay không chính là tìm những từ gần nhất (closest words) với từ mà người dùng nhập vào. Và điều này được thể hiện qua công cụ tính khoảng cách. Ví dụ: Nếu chúng ta gõ từ ‘France’, công cụ sẽ hiển thị những từ tương đồng và khoảng cách giữa những từ đó với từ ‘France’, chi tiết như bảng sau: Bảng 1.2. Khoảng cách giữa các từ đến từ ‘France’ Từ Khoảng cách Spain 0.678515 Belgium 0.665923 Netherlands 0.652428 Italy 0.633130 Switzerland 0.622323 Luxembourg 0.610033 Portugal 0.577154 Russia 0.571507 Germany 0.563291 Trong các thí nghiệm của Quoc Le và Mikolov. mỗi vector văn bản là một sự kết hợp của hai vector: một được huấn luyện bởi vector đạt tiêu chuẩn với mô hình bộ nhớ phân tán (Distributed Memory) và một được huấn luyện bằng vector văn bản với sự phân tán từ ngữ (Distributed Bag of Words). Nếu chạy độc lập thì, DM thường hoạt động tốt hơn, nhưng sự kết hợp của nó với DBoW thường phù hợp hơn trong nhiều tác vụ khác nhau [6]. Trong bài báo này, chúng tôi sẽ chạy độc lập từng mô hình và kết hợp với các phương pháp phân lớp. Qua quá trình huấn luyện, chúng tôi nhận thấy mô hình DBoW cho độ chính xác cao hơn DM nhưng không đáng kể và phụ thuộc vào khối lượng cũng như số vòng lặp khi huấn luyện, cụ thể sẽ được nêu rõ hơn ở phần thực nghiệm.