intTypePromotion=1
zunia.vn Tuyển sinh 2024 dành cho Gen-Z zunia.vn zunia.vn
ADSENSE

Luận văn thạc sĩ ngành Máy tính: Phân tích câu hỏi tiếng Việt trong hệ thống đón tiếp và phân loại bệnh nhân

Chia sẻ: _ _ | Ngày: | Loại File: PDF | Số trang:75

29
lượt xem
4
download
 
  Download Vui lòng tải xuống để xem tài liệu đầy đủ

Kết quả nghiên cứu của đề tài là một mô hình phân loại văn để xác định ý định và nhu cầu khám chữa bệnh của người dân, đối với nhóm đối tượng điều trị bệnh mãn tính, nhóm đối tượng tư vấn tổng quát. Mời các bạn cùng tham khảo.

Chủ đề:
Lưu

Nội dung Text: Luận văn thạc sĩ ngành Máy tính: Phân tích câu hỏi tiếng Việt trong hệ thống đón tiếp và phân loại bệnh nhân

  1. VIỆN HÀN LÂM KHOA HỌC VÀ CÔNG NGHỆ VIỆT NAM HỌC VIỆN KHOA HỌC VÀ CÔNG NGHỆ VIỆT NAM  Lƣu Thị Vân PHÂN TÍCH CÂU HỎI TIẾNG VIỆT TRONG HỆ THỐNG ĐÓN TIẾP VÀ PHÂN LOẠI BỆNH NHÂN LUẬN VĂN THẠC SĨ NGÀNH MÁY TÍNH HÀ NỘI - 2020
  2. VIỆN HÀN LÂM KHOA HỌC VÀ CÔNG NGHỆ VIỆT NAM HỌC VIỆN KHOA HỌC VÀ CÔNG NGHỆ VIỆT NAM  Lƣu Thị Vân PHÂN TÍCH CÂU HỎI TIẾNG VIỆT TRONG HỆ THỐNG ĐÓN TIẾP VÀ PHÂN LOẠI BỆNH NHÂN Chuyên ngành: Hệ thống thông tin Mã số: 8 48 01 04 LUẬN VĂN THẠC SĨ NGÀNH MÁY TÍNH CÁN BỘ HƢỚNG DẪN KHOA HỌC: TS.Nguyễn Nhƣ Sơn Nguyễn Nhƣ Sơn HÀ NỘI – 2020
  3. LỜI CAM ĐOAN Tôi là Lƣu Thị Vân, học viên khóa I, ngành Công nghệ thông tin, chuyên ngành Hệ Thống Thông Tin. Tôi xin cam đoan luận văn “Phân tích câu hỏi Tiếng Việt trong hệ thống đón tiếp và phân loại bệnh nhân” là do tôi nghiên cứu, tìm hiểu và phát triển dƣới sự hƣớng dẫn của TS. Nguyễn Nhƣ Sơn. Luận văn không phải sự sao chép từ các tài liệu, công trình nghiên cứu của ngƣời khác mà không ghi rõ trong tài liệu tham khảo. Tôi xin chịu trách nhiệm về lời cam đoan này. Hà Nội, tháng 10 năm 2020 Học viên Lƣu Thị Vân
  4. LỜI CẢM ƠN Đầu tiên tôi xin gửi lời cảm ơn tới các thầy cô Học viện Khoa học và Công nghệ nghệ Việt nam, Viện Hàn lâm Khoa học và Công nghệ Việt Nam đã tận tình giảng dạy và truyền đạt kiến thức cho tôi trong suốt khóa học cao học vừa qua.Tôi cũng xin đƣợc gửi lời cảm ơn đến các thầy cô trong Bộ môn Hệ thống thông tin cũng nhƣ Khoa công nghệ thông tin đã mang lại cho tôi những kiến thức vô cùng quý giá và bổ ích trong quá trình học tập tại trƣờng. Đặc biệt xin chân thành cảm ơn thầy giáo, TS. Nguyễn Nhƣ Sơn, ngƣời đã định hƣớng, giúp đỡ, trực tiếp hƣớng dẫn và tận tình chỉ bảo tôi trong suốt quá trình nghiên cứu, xây dựng và hoàn thiện luận văn này. Tôi cũng xin đƣợc cảm ơn tới gia đình, những ngƣời thân, các đồng nghiệp và bạn bè đã thƣờng xuyên quan tâm, động viên, chia sẻ kinh nghiệm, cung cấp các tài liệu hữu ích trong thời gian học tập, nghiên cứu cũng nhƣ trong suốt quá trình thực hiện luận văn tốt nghiệp. Hà Nội, tháng 10 năm 2020 Học viên Lƣu Thị Vân
  5. MỤC LỤC LỜI CAM ĐOAN.................................................................................................. 2 LỜI CẢM ƠN ....................................................................................................... 3 MỤC LỤC ............................................................................................................. 4 DANH MỤC THUẬT NGỮ VÀ CÁC KÝ HIỆU VIẾT TẮT ............................ 6 DANH MỤC HÌNH VẼ VÀ ĐỒ THỊ................................................................... 7 DANH MỤC CÁC BẢNG BIỂU ......................................................................... 7 TÓM TẮT ............................................................................................................. 8 MỞ ĐẦU ............................................................................................................. 10 CHƢƠNG 1: GIỚI THIỆU TỔNG QUAN ........................................................ 13 1 Tổng quan về hệ thống trả lời tự động....................................................... 13 1.1 Hệ thống hƣớng nhiệm vụ và hƣớng hội thoại ....................................... 14 1.2 Tình hình nghiên cứu trong và ngoài nƣớc ............................................ 15 2 Xử lý ngôn ngữ tự nhiên và ứng dụng ....................................................... 17 2.1 Sơ lƣợc về ngôn ngữ tự nhiên................................................................. 17 2.2 Các ứng dụng xử lý ngôn ngữ tự nhiên .................................................. 18 2.3 Tiền xử lý văn bản .................................................................................. 18 2.3.1 Chuẩn hóa và biến đổi văn bản ........................................................... 18 2.3.2 Biểu diễn văn bản dƣới dạng vector .................................................... 19 3 Bài toán phân loại văn bản......................................................................... 19 3.1 Bài toán phân loại văn bản ..................................................................... 19 3.2 Một số thuật toán phân loại văn bản ...................................................... 20 3.2.1 Thuật toán Naive Bayes ....................................................................... 20 3.2.2 Thuật toán SVM ................................................................................... 23 3.2.3 Mạng nơ-ron nhân tạo......................................................................... 31 3.3 Các phƣơng pháp đánh giá một hệ thống phân lớp ................................ 36 3.3.1 Đánh giá theo độ chính xác Accuracy ................................................. 37 3.3.2 Ma trận nhầm lẫn ................................................................................. 37
  6. 3.3.3 True/False Positive/Negative .............................................................. 39 3.3.4 Precision và Recall .............................................................................. 40 3.3.5 F1-Score............................................................................................... 42 CHƢƠNG 2: PHÂN TÍCH CÂU HỎI TRONG HỆ THỐNG TRẢ LỜI TỰ ĐỘNG ................................................................................................................. 44 1 Vấn đề cơ bản của một hệ thống trả lời tự động........................................ 44 2 Bài toán phân loại câu hỏi ......................................................................... 46 2.1 Phát biểu bài toán.................................................................................... 46 2.2 Các phƣơng pháp phân loại câu hỏi ....................................................... 46 2.2.1 Phân loại câu hỏi dựa trên luật ............................................................ 47 2.2.2 Phƣơng pháp sử dụng mô hình ngôn ngữ............................................ 48 2.2.3 Phân loại câu hỏi dựa vào học máy ..................................................... 48 2.3 Trích chọn đặc trƣng cho phân tích câu hỏi ........................................... 51 2.3.1 Đặc trƣng về từ vựng ........................................................................... 51 2.3.2 Đặc trƣng về cú pháp ........................................................................... 53 2.3.3 Đặc trƣng về ngữ nghĩa ....................................................................... 54 3 Sự phân loại câu hỏi Taxonomy ................................................................ 55 3.1 Khái niệm Taxonomy ............................................................................. 55 3.2 Taxonomy câu hỏi .................................................................................. 55 3.3 Mô hình phân lớp đa cấp ........................................................................ 59 4 Một số kết quả nghiên cứu......................................................................... 60 CHƢƠNG 3: XÂY DỰNG MÔ HÌNH VÀ ĐÁNH GIÁ THỰC NGHIỆM...... 62 1 Kiến trúc ứng dụng .................................................................................... 62 2 Xây dựng và cài đặt mô hình ..................................................................... 63 2.1 Tập dữ liệu thực nghiệm ......................................................................... 63 2.2 Công cụ thực nghiệm .............................................................................. 65 2.3 Lựa chọn đặc trƣng ................................................................................. 66 3 Đánh giá kết quả thực nghiệm ................................................................... 67 KẾT LUẬN ......................................................................................................... 69 TÀI LIỆU THAM KHẢO ................................................................................... 70
  7. DANH MỤC THUẬT NGỮ VÀ CÁC KÝ HIỆU VIẾT TẮT Từ viết tắt Từ chuẩn Diễn giải AI Artificial Intelligence Trí tuệ nhân tạo ML Machine Learning Máy học, máy móc có khả năng học tập ANN Artificial Nerual Network Mạng nơ ron nhân tạo NLP Natural Languague Xử lý ngôn ngữ tự nhiên Processing VNTK Vietnamese NLP Toolkit Bộ công cụ xử lý ngôn ngữ tiếng Việt for Node NLTK Natural Language Toolkit Bộ công cụ xử lý ngôn ngữ tự nhiên bằng Python Python Python Ngôn ngữ lập trình python, nền tảng lập trình phía máy chủ SDK Support Development Kit Bộ công cụ hỗ trợ phát triển CPU Central Processing Unit Bộ xử lý trung tâm GPU Graphics Processing Unit Bộ vi xử lý chuyên dụng nhận nhiệm vụ tăng tốc, xử lý đồ họa cho bộ vi xử lý trung tâm CPU API Application Programming Giao diện lập trình ứng dụng Interface QA Question Answering Các cặp câu hỏi đáp Agent Agent hay Software Agent Tác tử hay Tác tử phần mềm, là một chƣơng trình máy tính tồn tại trong một môi trƣờng nhất định, tự động hành động phản ứng lại sự thay đổi của môi trƣờng nhằm đáp ứng mục tiêu đã đƣợc thiết kế trƣớc Conversational Conversational agents Các tác tử đàm thoại là tác tử có khả agents năng giao tiếp thông qua văn bản hoặc lời nói NBC Naive Bayes Classifier Bộ phân lớp Naïve Bayes TREC Text REtrieval Conference Hội nghị về truy hồi thông tin SVM Support Vector Machine Một thuật toán học máy có giám sát đƣợc sử dụng rất phổ biến ngày nay trong các bài toán phân lớp (classification) hay hồi qui (Regression)
  8. DANH MỤC HÌNH VẼ VÀ ĐỒ THỊ Hình 1: Mặt phân cách dữ liệu ............................................................................ 24 Hình 2. Lề siêu phẳng ......................................................................................... 24 Hình 3. Dữ liệu phi tuyến .................................................................................... 27 Hình 4. Không gian dữ liệu phi tuyến ................................................................. 29 Hình 5. Kiến trúc mạng nơ-ron nhân tạo ............................................................ 32 Hình 6. Quá trình xử lý thông tin của một mạng nơ-ron nhân tạo...................... 33 Hình 7. Minh hoạ unnormalized confusion và normalized confusion matrix .... 39 Hình 8. Cách tính Precision và Recall ................................................................ 41 Hình 9. Các bƣớc cơ bản trong hệ thống trả lời tự động .................................... 44 Hình 10. Mô hình giai đoạn huấn luyện.............................................................. 49 Hình 11. Các bƣớc thực hiện giai đoạn huấn luyện ............................................ 50 Hình 12. Mô hình giai đoạn phân lớp ................................................................. 51 Hình 13. Bộ phân lớp đa cấp của Li và Roth ...................................................... 60 Hình 14. Kiến trúc tổng quan của hệ thống phân loại câu hỏi ............................ 63 Hình 15. Tập dữ liệu huấn luyện ......................................................................... 64 Hình 16. Tập dữ liệu kiểm tra ............................................................................. 64 DANH MỤC CÁC BẢNG BIỂU Bảng 1. Một vài so sánh các cách sắp xếp trật tự câu ......................................... 18 Bảng 2. Dữ liệu tập mẫu tính xác suất theo phƣơng pháp Naive Bayes ............. 21 Bảng 3. Biểu diễn các đặc trƣng của một câu hỏi ............................................... 52 Bảng 4. Taxonomy câu hỏi ................................................................................. 56 Bảng 5. Độ chính xác phân loại câu hỏi với các thuật toán học máy khác nhau 61 Bảng 6. Thông tin phần cứng thực nghiệm ......................................................... 65 Bảng 7. Các công cụ, thƣ viện sử dụng............................................................... 65 Bảng 8. Độ chính xác kết quả thực nghiệm SVM với các đặc trƣng khác nhau 67
  9. TÓM TẮT Sự phát triển mạnh mẽ của Công nghệ thông tin trong những năm gần đây, đặc biệt trong bối cảnh cuộc cách mạng công nghiệp lần thứ tƣ đang tác động tới nhiều ngành nghề, nhiều lĩnh vực, trong đó có ngành y tế, đòi hỏi các bệnh viện và các cơ sở y tế phải không ngừng đổi mới để nâng cao chất lƣợng dịch vụ khám chữa bệnh, nâng cao hiệu suất làm việc của bác sĩ, giảm chi phí khám chữa bệnh, giảm thời gian chờ đợi của bệnh nhân. Ứng dụng những công nghệ mới nhƣ : Trí tuệ nhân tạo (AI), Dữ liệu lớn (Big Data), Điện toán đám mây (Cloud Computing), Kết nối vạn vật (IOT), Di động (Mobility), … sẽ giúp các lãnh đạo của bệnh viện và các cơ sở y tế có thể quản lý toàn bộ hoạt động với các số liệu chính xác, trung thực và trực tuyến. Việc ứng dụng công nghệ thông tin (CNTT) trong công tác bảo vệ, chăm sóc, nâng cao sức khỏe ở Việt Nam đã có những bƣớc phát triển quan trọng, đặt nền móng xây dựng, triển khai và vận hành nền y tế thông minh. Trí tuệ nhân tạo (AI – Artificial Intelligent) là một ngành của Khoa học máy tính liên quan đến việc mô phỏng các quá trình suy nghĩ và học tập của con ngƣời cho máy móc, đặc biệt là cho các hệ thống máy tính. Các quá trình này bao gồm việc học tập (thu thập thông tin và thiết lập các quy tắc sử dụng thông tin), lập luận (sử dụng các quy tắc để đạt đƣợc kết luận gần đúng hoặc xác định), và tự sửa lỗi. AI gần đây trở nên bùng nổ, nhận đƣợc nhiều sự quan tâm là nhờ Dữ liệu lớn (Big data) phát triển, cho phép xử lý công nghệ AI với tốc độ nhanh hơn bao giờ hết. Một số ứng dụng điển hình của AI trong lĩnh vực y tế có thể kể đến nhƣ : (1) Phẫu thuật với sự hỗ trợ của Robot cho phép bác sĩ thực hiện nhiều quy trình phức tạp cùng với sự kiểm soát tốt hơn ; (2) Trợ lý y tá ảo hƣớng dẫn và tƣơng tác với bệnh nhân, thực hiện các biện pháp chăm sóc tránh việc thăm khám không cần thiết ; (3) Hỗ trợ chẩn đoán lâm sàng nhƣ phát hiện ung thƣ, hay việc hỗ trợ đƣa ra phác đồ điều trị ; (4)Tự động hóa các tác vụ quản trị giúp tiết kiệm thời gian, giúp giảm bớt khối lƣợng công việc và nhiệm vụ quản trị ; (5) Phân tích hình ảnh giúp bác sĩ đƣa ra đƣợc kết luận chính xác về các tổn thƣơng trên các hình ảnh X-Quang, CT, MRI, .... Đón tiếp và phân loại bệnh nhân là một bài toán quan trọng trong việc
  10. đón tiếp bệnh nhân đến thăm khám và điều trị chữa bệnh tại các cơ sở y tế và các bệnh viện. Việc đón tiếp liên tục, tự động hóa và nhanh chóng giúp phân luồng và giảm tải cho cơ sở khám chữa bệnh (KCB) để có thể cứu chữa và thăm khám đƣợc nhiều bệnh nhân hơn, đồng nghĩa cứu đƣợc nhiều mạng ngƣời hơn. Từ các yêu cầu thực tế để xây dựng và triển khai một hệ thống có thể tự động đón tiếp khám bệnh, đón tiếp làm cận lâm sàng, hƣớng dẫn tìm đƣờng, hƣớng dẫn thủ tục, phân loại khám bệnh cho bệnh nhân dựa vào tập câu hỏi cho trƣớc thay cho cán bộ đón tiếp. Để xây dựng đƣợc một hệ thống đón tiếp nhƣ vậy, tôi thực hiện nghiên cứu các phƣơng pháp phân tích câu hỏi tiếng Việt để tiền xử lý tập lệnh cho hệ thống đón tiếp và phân loại bệnh nhân một cách tự động. Phân loại văn bản là quá trình gán nhãn hoặc phân nhóm cho văn bản theo nội dung của nó. Đây là một trong những nhiệm vụ cơ bản của Xử lý ngôn ngữ tự nhiên với các ứng dụng rộng rãi nhƣ : Phân tích cảm xúc (Sentiment analysis), gán nhãn chủ đề (Topic labeling), phát hiện thƣ rác (Spam detection), và phát hiện ý định (Intent detection). Trong khuôn khổ của đề tài này, nghiên cứu các phƣơng pháp Phân tích câu hỏi tiếng Việt và đƣa ra một kiến trúc để xây dựng một hệ thống đón tiếp và phân loại bệnh nhân đƣợc ứng dụng tại các bệnh viện và cơ sở khám chữa bệnh. Kết quả chính của mà tôi đạt đƣợc là một mô hình phân loại văn để xác định ý định và nhu cầu khám chữa bệnh của ngƣời dân, đối với nhóm đối tƣợng điều trị bệnh mãn tính, nhóm đối tƣợng tƣ vấn tổng quát. Mô hình ban đầu đã cho kết quả rất tính cực, có thể giải quyết đƣợc những vấn đề cơ bản về ngữ nghĩa, ngữ cảnh và tiến tới giải quyết đƣợc những yêu cầu cao hơn về việc phân loại và hỗ trợ tự động.
  11. MỞ ĐẦU 1. Động lực nghiên cứu và tính cấp thiết của bài toán thực tế Trong bối cảnh mạng Internet đã trở lên rất phổ biến nhƣ hiện nay, con ngƣời kết nối với con ngƣời thông qua mạng xã hội, bất cứ thời gian nào và ở bất cứ nơi đâu. Sẽ thật tốt hơn nếu có một hệ thống tự động thông minh hỗ trợ con ngƣời bằng cách trò chuyện, có khả năng nhắc nhở, làm trợ lý công việc và có thể theo dõi tình trạng sức khỏe cá nhân mọi lúc, mọi nơi. Hệ thống trả lời tự động hay trợ lý ảo đang là chủ đề rất nóng từ đầu năm 2016, khi chính thức các công ty lớn nhƣ Microsoft, Google, Facebook, Apple, Samsung, WeChat, Slack đã giới thiệu các trợ lý ảo của mình, là các hệ thống trả lời tự động. Chính thức đặt cƣợc lớn vào cuộc chơi tạo những những thế hệ trợ lý ảo, với mong muốn tạo ra một trợ lý ảo thực sự thông minh tồn tại trong hệ sinh thái các sản phẩm của mình. Trong nƣớc, một số công ty nhƣ ERM và Vietcare đã phát triển tạo ra hệ thống trả lời tự động về kiến thức y khoa, hỏi đáp về sức khỏe thông tin y tế, hay Subiz, Messnow, Harafunnel, Chatbot Vietnam, … cũng đang cố gắng tạo ra cho mình một hệ thống hỗ trợ, chăm sóc khách hàng và bán hàng tự động. Trong lĩnh vực y tế, một số công ty cũng đã ứng dụng Robot Đón tiếp nhƣ một sản phẩm của Trí tuệ nhân tạo, Robot là một sản phẩm của quá trình chuyển đổi số y tế, là nhân tố không thể thiếu trong một bệnh viện thông minh. Hỗ trợ hƣớng dẫn toàn bộ các quy trình từ khám chữa bệnh đến chỉ dẫn, có thể kết nối với hệ thống thông tin y tế khác. Nhiều nhà nghiên cứu đang có hi vọng phát triển các trợ lý ảo có thể hiểu đƣợc ngôn ngữ tự nhiên của con ngƣời, có thể đối thoại và tƣơng tác đƣợc với con ngƣời một cách tự nhiên. Nhiều ngƣời cho rằng việc sử dụng kỹ thuật xử lý ngôn ngữ tự nhiên NLP và các kỹ thuật học sâu Deep Learning để làm tăng đƣợc chất lƣợng và hiệu quả của hệ thống. Nhƣng từ lý thuyết đến thực tế là cả một chặng đƣờng dài và nhiều thách thức, bằng cách nào đó, con ngƣời có thể tích hợp Trí tuệ nhân tạo vào các sản phẩm công nghiệp của mình.
  12. Có thể thấy, hệ thống trả lời tự động có những nhiệm vụ và vai trò quan trọng, có thể trợ giúp đƣợc con ngƣời rất nhiều trong rất nhiều lĩnh vực: y tế, giáo dục, thƣơng mại điện tử, …, là động lực to lớn để nghiên cứu và đƣa ra các sản phẩm phù hợp ứng dụng vào thực tế. 2. Mục tiêu của luận văn Với cơ sở thực tiễn trên, luận văn này đặt ra mục tiêu nghiên cứu một số phƣơng pháp xử lý ngôn ngữ tự nhiên để phân tích câu hỏi, câu mệnh lệnh, cho phép phân loại các văn bản đầu vào là các câu nói tiếng Việt có tính chất sai khiến, yêu cầu ra lệnh. Nhằm giải quyết một phần nhỏ trong một hệ thống Hỏi đáp và Đón tiếp bệnh nhân tại các cơ sở y tế. Từ đó, xây dựng một mô hình phân loại văn bản để dự đoán đƣợc ý định của văn bản đầu vào. Từ kết quả thu đƣợc, sẽ đƣợc sử dụng để ứng dụng vào bài toán Đón tiếp và phân loại bệnh nhân đến phòng khám phù hợp tại các cơ sở khám chữa bệnh. 3. Cấu trúc của luận văn Các nghiên cứu và kết quả đƣợc mô tả trong luận văn đƣợc chia thành bố cục với các nội dung nhƣ sau: CHƢƠNG 1: Giới thiệu tổng quan; Giới thiệu tổng quan về hệ thống trả lời tự động, tình hình nghiên cứu trong và ngoài nƣớc; Nghiên cứu về cơ sở xử lý ngôn ngữ tự nhiên và các ứng dụng;tìm hiểu bài toán phân loại văn bản và Các phƣơng pháp phân loại văn bản. CHƢƠNG2: Phân tích câu hỏi trong hệ thống trả lời tự dộng; Nghiên cứu các vấn đề cơ bản của hệ thống trả lời tự động, tìm hiểu các phƣơng pháp xác định ý định ngƣời dùng bằng phƣơng pháp học máy; Nghiên cứu phƣơng pháp đánh giá một hệ thống thống phân lớp ý định. CHƢƠNG3: Xây dựng mô hình và đánh giá thực nghiệm; Đề xuất mô hình học máy và kiến trúc của ứng dụng, trình bày các kỹ thuật tiền xử lý dữ liệu đầu vào là các câu nói Tiếng Việt có tính chất sai khiến, yêu cầu ra lệnh.Liệt kê các vấn đề và giải pháp khắc phục khi huấn luyện mô hìnhdữ liệu.
  13. KẾT LUẬN VÀ KIẾN NGHỊ: Phần này đƣa ra các kết luận và đánh giá kết quả đạt đƣợc của luận văn, một số đề xuất để cải tiến mô hình, cũng nhƣ khả năng ứng dụng vào bài toán thực tế. TÀI LIỆU THAM KHẢO: Đƣa ra danh sách các bài báo đƣợc sử dụng làm tham khảo, tham chiếu cho luận văn.
  14. 13 CHƢƠNG 1: GIỚI THIỆU TỔNG QUAN Xây dựng hệ thống trả lời tự động là một bài toán khó thuộc lĩnh vực xử lý ngôn ngữ tự nhiên. Bởi vì tính nhập nhằng, đa nghĩa, đa ngữ cảnh của ngôn ngữ tự nhiên. Bài toán đặt ra nhiều thách thức để phát hiện ra đƣợc câu trả lời phù hợp nhất, thông tin hữu ích nhất. Chƣơng này sẽ giới thiệu tổng quan về hệ thống đối thoại ngƣời máy, các nghiên cứu ở trong và ngoài nƣớc để thấy đƣợc các phƣơng pháp tiếp cận là rất phong phú, sau đó tổng quan và phân loại các mô hình trả lời tự động. Tìm hiểu và giới thiệu bài toán phân loại văn bản, các lý thuyết về học máy, các phƣơng pháp đánh giá một hệ thống phân lớp. 1 Tổng quan về hệ thống trả lời tự động Hệ thống hộp thoại (Dialogue systems), còn đƣợc gọi là trợ lý tƣơng tác hội thoại, trợ lý ảo và đôi khi đƣợc gọi với thuật ngữ là chatbot, đƣợc sử dụng rộng rãi trong các ứng dụng khác nhau, từ các dịch vụ kỹ thuật cho đến các công cụ có thể học ngôn ngữ và giải trí [22]. Các hệ thống đối thoại có thể đƣợc chia thành các hệ thống hướng mục tiêu, ví dụ nhƣ các dịch vụ hỗ trợ kỹ thuật, và các hệ thống không có định hướng mục tiêu, ví dụ nhƣ các công cụ học ngôn ngữ hoặc các nhân vật trò chơi máy tính [23]. Trong luận văn này tập trung vào trƣờng hợp thứ nhất, thiết kế một hệ thống hƣớng tới các nhiệm vụ có mục tiêu, tức là đi xây dựng một mô hình phân tích ý định của ngƣời dùng cho tiếng Việt trên tập dữ liệu đƣợc xây dựng theo kịch bản. Một trong những thách thức chính trong phát triển của hệ thống đối thoại ngƣời máy hƣớng nhiệm vụ, và trong việc mở rộng chúng trong nhiều miền ứng dụng, đƣợc nhắc đến trong [24], là sự sẵn có của dữ liệu trên một miền hội thoại cụ thể. Hệ thống đối thoại cần kết hợp và khai thác nhiều thành phần, ví dụ nhƣ nhận dạng giọng nói, hiểu ngôn ngữ tự nhiên, giám sát hội thoại, phát sinh ngôn ngữ tự nhiên, và mỗi thành phần này yêu cầu sẵn có nguồn dữ liệu trên miền cụ thể, tài nguyên và các mô hình. Bao gồm các mô hình ngôn ngữ, mô hình ngữ âm, mô hình hiểu ngôn ngữ, các miền bản thể Ontology, các kịch bản tƣơng tác, các mô hình sinh ngôn ngữ, … Mặc dù, nhiều vấn đề AI đã đƣợc hƣởng lợi ích từ các nguồn dữ liệu ngày càng lớn, thu thập dữ liệu end-to-end cho các hệ thống đối thoại hƣớng nhiệm
  15. 14 vụ vẫn còn là một vấn đề khó khăn. Phƣơng pháp tiếp cận hiện tại để thu thập dữ liệu thoại dẫn đến chi phí phát triển cao và tiêu tốn thời gian cho các nhà phát triển hệ thống. Trừ khi các nguồn lực bên ngoài đã có sẵn trong miền tập dữ liệu yêu cầu phải có một hệ thống triển khai có khả năng duy trì một cuộc đối thoại với ngƣời dùng. Điều này dẫn đến một vấn đề khởi đầu: do thiếu dữ liệu để huấn luyện hệ thống ban đầu, các nhà phát triển hệ thống mang gánh nặng về việc phát triển văn phạm và các mô hình ngôn ngữ, hoặc là thủ công [24]. Thu thập dữ liệu hội thoại với phiên bản đầu tiên của một hệ thống đƣợc triển khai thƣờng có thiếu sót: chất lƣợng dữ liệu thu thập có thể phải chịu những bất cập của hệ thống chính nó, và ngƣời dùng có thể chịu ảnh hƣởng ngôn ngữ của chúng để điều chỉnh cho những khuyết điểm của hệ thống trong việc theo hết một cuộc đối thoại. Kết quả là, tốc độ của tập dữ liệu có thể chậm hơn so với mong muốn. Cuối cùng, quá trình phát triển tốn kém này phải đƣợc lặp đi lặp lại trên một lần nữa cho mỗi miền hoặc hệ thống mới, hoặc ngay cả khi chức năng mới đƣợc thêm vào. 1.1 Hệ thống hƣớng nhiệm vụ và hƣớng hội thoại Các hệ thống trả lời tự động giao tiếp với ngƣời dùng bằng ngôn ngữ tự nhiên (văn bản, giọng nói, hoặc cả hai) thƣờng đƣợc chia vào hai nhóm chính: Hƣớng nhiệm vụ hoặc hƣớng hội thoại: Các hệ thống hƣớng nhiệm vụ đƣợc thiết kế cho một tác vụ cụ thể và đƣợc thiết lập để có các cuộc hội thoại ngắn (từ một tƣơng tác đơn lẻ đến các hàng loạt các tƣơng tác liên tiếp) để lấy thông tin từ ngƣời dùng để giúp hoàn thành tác vụ. Ngày nay mà chúng ta có thể thấy sự hiện diện của chúng trên các thiết bị di động hoặc trên bộ điều khiển gia đình (Siri, Cortana, Alexa, Google Home, v.v.) mà các hệ thốnghội thoại có thể đƣa ra chỉ dẫn tìm đƣờng, điều khiển thiết bị gia đình, tìm nhà hàng hoặc giúp gọi điện thoại hoặc gửi văn bản. Các công ty triển khai các tác tử đàm thoại trên trang web của họ để giúp khách hàng trả lời các câu hỏi hoặc giải quyết các vấn đề một cách tự động. Tác tử đàm thoại đóng một vai trò quan trọng nhƣ một giao diệncho robot để có thể giao tiếp. Hệ thống hƣớng hội thoại là các hệ thống đƣợc thiết kế cho các cuộc hội thoại mở rộng, đƣợc cài đặt để mô phỏng các cuộc hội thoại không có cấu trúc
  16. 15 hoặc mô phỏng lại đặc trƣng của sự tƣơng tác giữa ngƣời và ngƣời, thay vì tập trung vào một nhiệm vụ cụ thể nhƣ đặt vé máy bay. Các hệ thống này thƣờng có giá trị giải trí, chẳng hạn nhƣ hệ thống Microsoft Xiao XiaoIce (Little Bing) (Microsoft, 2014), trò chuyện với mọi ngƣời trên nền tảng nhắn tin văn bản. Trên phƣơng tiện truyền thông và trong công nghiệp, các tác tử đàm thoại ngƣời-máy thƣờng đƣợc gọi bằng thuật ngữ Chatbots, và các chƣơng trình này, cũng thƣờng cố gắng vƣợt qua các bài kiểm tra thử nghiệm Turing khác nhau. Tuy nhiên, một hệ thống đầu tiên rất sớm, ELIZA (Weizenbaum, 1966), những Chatbots cũng đã đƣợc sử dụng cho các mục đích thực tế, chẳng hạn nhƣ kiểm tra các lý thuyết về tƣ vấn tâm lý. 1.2 Tình hình nghiên cứu trong và ngoài nƣớc Việc nghiên cứu vềhệ thống trả lời tự động có ý nghĩa trong khoa học và thực tế. Đã có rất nhiều các hội nghị thƣờng niên về xử lý ngôn ngữ tự nhiên, khai phá dữ liệu, xử lý dữ liệu lớn, tƣơng tác ngƣời máy, … nhƣ TREC, CLEF, tại Việt Nam có KSE, RIVF, ATC, … Theo ý tƣởng của Russellvà cộng sự [25], thì một hệ thống AI phải đƣợc kiểm tra (hành động dƣới sự ràng buộc hình thức và phù hợp với các điều kiện kỹ thuật); phải đƣợc xác nhận (không theo đuổi các hành vi không mong muốn dƣới sự ràng buộc trƣớc); phải an toàn (ngăn chặn các thao tác có chủ ý của các bên thứ ba, hoặc bên ngoài hoặc bên trong); và phải đƣợc kiểm soát (con ngƣời cần phải có cách để thiết lập lại kiểm soát nếu cần thiết). Thiết kế hệ thống đối thoại là một nhiệm vụ đầy thách thức và là một trong những mục tiêu ban đầu của trí tuệ nhân tạo (Turing, 1950) [26]. Trong nhiều thập kỷ, việc thiết kế tác nhân đối thoại đã giúp các hệ thống dựa trên cơ sở tri thức và cơ chế dựa trên luật Rule-based để hiểu các thông điệp đầu vào của con ngƣời và tạo ra các phản hồi đáp ứng hợp lý [27,28,29]. Phƣơng pháp tiếp cận hƣớng dữ liệu nhấn mạnh vào việc học trực tiếp từ các tập ngữ liệu của các cuộc đối thoại tiếng nói hoặc văn bản chữ viết. Gần đây, phƣơng pháp này đã đạt đƣợc hiệu quả vì lợi thế dữ liệu phong phú [23], sức mạnh tính toán, và các thuật toán học tốt hơn [30,31].
  17. 16 Ritter và cộng sự (2010) [32] đã đề xuất phƣơng pháp tiếp cận hƣớng dữ liệu cho việc xây dựng hệ thống đối thoại, và họ đã trích xuất ra 1,3 triệu cuộc hội thoại từ Twitter với mục đích là phát hiện ra các hành động trong cuộc hội thoại. Bằng việc xây dựng dựa trên sự tƣơng đồng về phân phối trong khuôn khổ mô hình không gian vector, Banchs và Li (2012) [33] đã xây dựng một công cụ tìm kiếm để lấy câu trả lời thích hợp cho bất kỳ một thông điệp đầu vào. Phƣơng pháp tiếp cận khác tập trung vào nhiệm vụ trên một lĩnh vực cụ thể nhƣ các trò chơi [34], và các nhà hàng ăn uống (2016) [35,36]. Việc xây dựng các chƣơng trình Trả lời tự động và Tác tử đàm thoại (conversational agents) đã đƣợc theo đuổi bởi nhiều nhà nghiên cứu trong nhiều thập kỷ qua, và rất nhiều nghiên cứu khác không đƣợc đề cập trong danh mục tham khảo. Tuy nhiên, hầu hết các hệ thống hội thoại này đòi hỏi một quy trình xử lý khá phức tạp qua nhiều giai đoạn [37, 38].
  18. 17 2 Xử lý ngôn ngữ tự nhiên và ứng dụng 2.1 Sơ lƣợc về ngôn ngữ tự nhiên Xử lý ngôn ngữ tự nhiên (Natural Language Processing - NLP), là một lĩnh vực khoa học máy tính, kỹ thuật thông tin và trí tuệ nhân tạo tập trung vào nghiên cứu các tƣơng tác về mặt ngôn ngữ giữa máy tính và con ngƣời, cụ thể hơn là làm thế nào để lập trình cho máy tính xử lý và phân tích một lƣợng lớn dữ liệu ngôn ngữ tự nhiên. Theo cách hiểu khác, NLP quan tâm đến việc làm thế nào để máy tính hiểu và tận dụng đƣợc các tập dữ liệu sẵn có dƣới dạng ngôn ngữ tự nhiên. NLP đã đƣợc ứng dụng rộng rãi trong thực tế nhằm: tiết kiệm sức lao động, thúc đẩy các ngành nghề kinh doanh mới, và giúp các nhà hoạch định chiến lƣợc trong việc đƣa ra quyết định, … Ngôn ngữ tự nhiên không giống với ngôn ngữ nhân tạo nhƣ ngôn ngữ máy tính (C, PHP, …). Trên thế giới hiện nay có khoảng 7000 loại ngôn ngữ. Có nhiều cách để phân loại, một số cách phân loại ngôn ngữ phổ biến nhƣ dựa vào: nguồn gốc, đặc điểm, … Phân loại ngôn ngữ theo nguồn gốc: 1. Ấn – Âu : Dòng Ấn độ, Hy lạp, German, … 2. Xê-mít (Semite): Dòng Semite, Do Thái, Ả Rập, Ai cập, Kusit, … 3. Thổ: Thổ Nhĩ Kỳ 4. Hán Tạng (Tạng-Miến): Dòng Hán, Tạng-Miến, … 5. Nam Phƣơng: Dòng Nam-Thái, Nam Á (Tiếng Việt). Phân loại ngôn ngữ theo đặc điểm: 1. Hòa kết (Flexional): Đức, Anh, Nga… 2. Chắp dính (Agglutinate): Thổ Nhĩ Kỳ, Nhật Bản, Triều Tiên, … 3. Đơn lập (Isolate): Tiếng Việt, Hán, … 4. Tổng hợp (Polysynthetic): Chukchi, Aniu… Do đó tiếng Việt đƣợc xếp vào loại đơn lập – tức phi hình thái, không biến hình. Cùng với đó, tiếng Việt đƣợc viết theo trật tự S – V – O. (subject (S), verb (V) and object (O)).
  19. 18 Bảng 1. Một vài so sánh các cách sắp xếp trật tự câu Ngôn ngữ Câu ví dụ Trật tự Tiếng Việt Tôi đọc sách SVO Tiếng Anh I read a book SVO Tiếng Nhật 私は本を読みます SOV 2.2 Các ứng dụng xử lý ngôn ngữ tự nhiên Các ứng dụng phổ biến của NLP bao gồm: ứng dụng giám sát mạng xã hội, chatbot, và tổng đài trả lời tự động. 2.3 Tiền xử lý văn bản Văn bản trƣớc khi đƣợc vector hoá, tức là trƣớc khi sử dụng văn bản cần phải đƣợc tiền xử lý, để loại bỏ nhiễu và làm sạch dữ liệu. Quá trình tiền xử lý sẽ giúp nâng cao hiệu suất phân loại và giảm độ phức tạp của thuật toán huấn luyện. Tuỳ vào mục đích bộ phân loại mà chúng ta sẽ có những phƣơng pháp tiền xử lý văn bản khác nhau, nhƣ : 1. Chuyển vẳn bản về chữ thƣờng. 2. Loại bỏ dấu câu (nếu không thực hiện tách câu). 3. Loại bỏ các kí tự đặc biệt biệt, các chữ số, phép tính toán số học. 4. Loại bỏ các từ dừng stopword (những từ xuất hiện hầu hết trong các văn bản) không có ý nghĩa khi tham gia vào phân loại văn bản 5. Các kỹ thuật tinh chỉnh khác dựa trên kinh nghiệm 2.3.1 Chuẩn hóa và biến đổi văn bản Một trong những nhiệm vụ đầu tiên trong việc xử lý phân loại văn bản là chọn đƣợc một mô hình biểu diễn văn bản thích hợp. Một văn bản ở dạng thô (dạng chuỗi) cần đƣợc chuyển sang một mô hình khác để tạo thuận lợi cho việc biểu diễn và tính toán. Tuỳ thuộc vào từng thuật toán phân loại khác nhau mà chúng ta có mô hình biểu diễn riêng. Một trong những mô hình đơn giản và thƣờng đƣợc sử dụng trong nhiệm vụ này là mô hình không gian vector. Một văn bản trong
  20. 19 nhiệm vụ này đƣợc biểu diễn theo dạng , với là một vector n chiều để đo lƣờng giá trị của phần tử văn bản. 2.3.2 Biểu diễn văn bản dƣới dạng vector Mô hình không gian vector là một trong những mô hình đƣợc sử dụng rộng rãi nhất cho việc tìm kiếm (truy hồi) thông tin. Nguyên nhân chính là bởi vì sự đơn giản của nó. Trong mô hình này, các văn bản đƣợc thể hiện trong một không gian có số chiều lớn, trong đó mỗi chiều của không gian tƣơng ứng với một từ trong văn bản. Phƣơng pháp này có thể biểu diễn một cách hình tƣợng nhƣ sau : mỗi văn bản D đƣợc biểu diễn dƣới dạng ⃗ (vector đặc trƣng cho văn bản D). Trong đó, ⃗ , và n là số lƣợng đặc trƣng hay số chiều của vector văn bản, là trọng số của đặc trƣng thứ i (với 1≤ i ≤n). Nhƣ vậy, nếu trong kho ngữ liệu của quá trình huấn luyện nhiều văn bản, ta kí hiệu Dj, là văn bản thứ j trong tập ngữ liệu, và vector là vector đặc trƣng cho văn bản Dj, và là trọng số thứ i của vector văn bản j. 3 Bài toán phân loại văn bản 3.1 Bài toán phân loại văn bản Trong lĩnh vực xử lý ngôn ngữ tự nhiên, phân loại văn bản là một bài toán xử lý văn bản cổ điển, có nhiệm vụ là ánh xạ một văn bản vào một chủ đề đã biết trong một tập hữu hạn các chủ đề dựa trên ngữ nghĩa của văn bản. Theo Yang & Xiu (1999)[1] “Phân loại văn bản tự động là việc gán các nhãn phân loại lên một văn bản mới dựa trên mức độ tương tự của văn bản đó so với các văn bản đã được gán nhãn trong tập huấn luyện”. Ví dụ một bài viết trong một tờ báo có thể thuộc một (hoặc một vài) chủ đề nào đó (nhƣ thể thao, sức khỏe, công nghệ thông tin,…). Việc tự động phân loại văn bản vào một chủ đề nào đó giúp cho việc sắp xếp, lƣu trữ và truy vấn tài liệu dễ dàng hơn về sau. Bài toán phân loại văn bản, thực chất, có thể xem là bài toán phân lớp. Phân loại văn bản tự động là việc gán các nhãn phân loại lên một văn bản mới dựa trên mức độ tƣơng tự của văn bản đó so với các văn bản đã đƣợc gán nhãn trong tập huấn luyện. Các ứng dụng của phân lớp văn bản thƣờng rất đa dạng
ADSENSE

CÓ THỂ BẠN MUỐN DOWNLOAD

 

Đồng bộ tài khoản
2=>2