− Tìm hiểu và hiện thực mô hình tiền xử lý xác định dấu kết thúc câu trong văn bản, áp dụng cho các văn bản lâm sàng của bệnh án điện tử dựa trên tập dữ liệu 2010 của I2B2.. − Phát triển
Trang 1TP HỒ CHÍ MINH, tháng 06 năm 2018
ĐẠI HỌC QUỐC GIA TP HCM
TRƯỜNG ĐẠI HỌC BÁCH KHOA
Trang 2TP HỒ CHÍ MINH, tháng 06 năm 2018
ĐẠI HỌC QUỐC GIA TP HCM
TRƯỜNG ĐẠI HỌC BÁCH KHOA
Trang 3Cán bộ hướng dẫn khoa học: TS Võ Thị Ngọc Châu
Cán bộ chấm nhận xét 2: PGS.TS Hồ Bảo Quốc
Luận văn thạc sĩ được bảo vệ tại Trường Đại học Bách Khoa, ĐHQG Tp HCM ngày 17 tháng 07 năm 2018
Thành phần Hội đồng đánh giá luận văn thạc sĩ gồm:
(Ghi rõ họ, tên, học hàm, học vị của Hội đồng chấm bảo vệ luận văn thạc sĩ)
1 Chủ tịch hội đồng: PGS.TS Quản Thành Thơ
2 Thư kí: TS Nguyễn Hồ Mẫn Rạng
3 GV phản biện 1: TS Lê Thanh Vân
4 GV phản biện 2: PGS.TS Hồ Bảo Quốc
5 Ủy viên: TS Nguyễn Đức Dũng
Xác nhận của Chủ tịch Hội đồng đánh giá LV và Trưởng Khoa quản lý chuyên ngành sau khi luận văn đã được sửa chữa (nếu có)
Cán bộ chấm nhận xét 1: TS Lê Thanh Vân
CÔNG TRÌNH ĐƯỢC HOÀN THÀNH TẠI TRƯỜNG ĐẠI HỌC BÁCH KHOA –ĐHQG -HCM Cán bộ hướng dẫn khoa học : TS Võ Thị Ngọc Châu
Trang 4ĐẠI HỌC QUỐC GIA TP.HCM
TRƯỜNG ĐẠI HỌC BÁCH KHOA
CỘNG HÒA XÃ HỘI CHỦ NGHĨA VIỆT NAM
Độc lập - Tự do - Hạnh phúc
NHIỆM VỤ LUẬN VĂN THẠC SĨ
Ngày, tháng, năm sinh: 10/06/1985 Nơi sinh: TP.Hồ Chí Minh
I TÊN ĐỀ TÀI:
Tên tiếng Việt: “Lọc nhiễu trong các văn bản lâm sàng của bệnh án điện tử”
Tên tiếng Anh: “Dealing with noise in clinical text of electronic medical records”
II NHIỆM VỤ VÀ NỘI DUNG:
− Tìm hiểu lý thuyết và các công trình liên quan về bài toán lọc nhiễu trong các bệnh án điện tử
− Tìm hiểu và hiện thực mô hình tiền xử lý (xác định dấu kết thúc câu) trong văn bản, áp dụng cho các văn bản lâm sàng của bệnh án điện tử dựa trên tập dữ liệu 2010 của I2B2
− Phát triển phương pháp kết hợp học máy và phương pháp học chủ động cho bài toán trích xuất thông tin bệnh như triệu chứng bệnh (problem) , các phương pháp kiểm tra (test) , các phương pháp điều trị (treatment) trong các văn bản lâm sàng của bệnh án điện tử dựa trên tập dữ liệu 2010 của I2B2
− Xác định các tên định danh chuẩn để làm tham chiếu của các triệu chứng bệnh thông qua hệ cơ sở dữ liệu y khoa UMLS của Hoa Kỳ
− Thực hiện đề xuất phương pháp đánh giá độ chính xác tương quan của các phương pháp học máy và khi áp dụng phương pháp học chủ động vào
mô hình
III NGÀY GIAO NHIỆM VỤ: 15/01/2018
IV NGÀY HOÀN THÀNH NHIỆM VỤ: 17/06/2018
Trang 5để tôi hoàn thành luận văn này
Tôi xin gửi lời cám ơn đến gia đình, đồng nghiệp, bạn bè đã tạo điều kiện giúp
đỡ tôi về thời gian và tinh thần trong thời gian tôi hoàn thành luận văn
Trong thời gian thực hiện luận văn, được sự hỗ trợ và giúp đỡ của Thầy Cô, gia đình, bạn bè và đồng nghiệp Tôi đã cố gắng hoàn thành luận văn với hết khả năng
có thể của bản thân Tuy nhiên cũng sẽ không tránh khỏi những thiếu sót Kính mong quý Thầy Cô và các bạn tận tình chỉ bảo và góp ý để luận văn được hoàn thiện hơn
Tp Hồ Chí Minh, ngày tháng năm 2018
Học viên
Trần Nam Phong
Trang 6TÓM TẮT LUẬN VĂN
Bệnh án điện tử (Electronic Medical Records - EMRs) là phiên bản kỹ thuật số của một hồ sơ giấy có chứa tất cả lịch sử y tế của bệnh nhân trong quá trình khám lâm sàng Bệnh án điện tử được sử dụng chính cho việc chẩn đoán và điều trị bệnh Trong những năm gần đây, bệnh án điện tử (BAĐT) đã trở nên phổ biến và quan trọng đối với ngành y tế và nghiên cứu y học Điều này dẫn đến nhu cầu chia sẻ các BAĐT cho các tổ chức nghiên cứu liên quan để phục vụ việc nghiên cứu và thống kê bệnh Tuy nhiên, do BAĐT được xây dựng tùy theo mỗi vùng miền và trình độ chuyên môn của người lập nên trong BAĐT có chứa nhiều loại nhiễu bao gồm nhiễu tường minh (ví dụ: dấu câu, từ viết tắt, từ địa phương) và nhiễu ẩn (ví dụ: thông tin liên quan bệnh) làm ảnh hưởng chất lượng BAĐT Vì vậy, trước khi thực hiện vấn đề chia sẻ BAĐT phục vụ nghiên cứu, chúng ta cần phương pháp chuẩn hóa và xử lí các loại nhiễu này trong BAĐT
Trong luận văn này, đề tài đề xuất một phương pháp thực hiện việc xử lý 2 loại nhiễu bao gồm nhiễu tường minh (thiếu dấu chấm kết thúc câu, dùng từ địa phương)
và nhiễu ẩn (thông tin liên quan đến bệnh) cho các BAĐT với mô hình kết hợp giữa phương pháp học máy cơ sở và phương pháp học chủ động thông qua giao diện chuyên gia
Đề tài đã thực hiện hỗ trợ chuẩn hóa về câu (bổ sung dấu chấm kết thúc câu) và
hỗ trợ giải nghĩa các từ y khoa địa phương xuất hiện trong văn bản thông qua 1 việc tham chiếu đến thông tin bệnh chuẩn từ UMLS
Đề tài đã thành công trong việc phân lớp và trích xuất thành công các thông tin y khoa như triệu chứng bệnh, các phương pháp kiểm tra, các phương pháp điều trị từ
1 văn bản lâm sàng trong BAĐT của 1 bệnh nhân với độ chính xác tương đối cao (>80%)
Với sự kết hợp giữa phương pháp học máy cơ sở (dùng mô hình phân lớp CRF) với phương pháp học máy chủ động thông qua việc xây dựng 1 công cụ hỗ trợ phân tích và gán nhãn cho BAĐT thông qua giao diện chuyên gia, từ đó làm tăng thêm nguồn tri thức cho những lần huấn luyện sau để việc dự đoán và trích xuất thông tin bệnh trở nên chính xác hơn Độ đo F được cải thiện khoảng 8% khi tăng số lượng khoảng 1/3 so với tập BAĐT huấn luyện ban đầu
Kết quả của quá trình xử lý nhiễu này sẽ tạo ra tập các bệnh án điện tử cùng với tập các file xml tương ứng chứa thông tin bệnh hỗ trợ việc tra cứu và cập nhật sau này Các BAĐT đồng thời cũng được chuẩn hóa về dấu kết thúc câu so với BAĐT gốc
Trang 7Việc chuẩn hóa và xử lý nhiễu cho BAĐT sẽ hỗ trợ tích cực cho các chuyên gia
và các cơ quan nghiên cứu đầu ngành trong việc tổng hợp , tra cứu và phân tích thông tin bệnh; hỗ trợ công tác dự báo bệnh từ xa ; công tác điều trị lâm sàng trong các bệnh viện
Trang 8ABSTRACT
Electric Medical Records (EMRs) are digital versions of paper records They contain all of patient’s medical history during a clinical examination, which contains the patient’s historry of treatment EMRs are used for diagnosis and treatment of diseases
In recent years, EMRs have become popular and important in the medical and biomedical research This leads to the need for information sharing among the research institutions for relevant research and statistics organizations However, based on each area and doctors who make EMRs, there are many types of noise including explicit (eg: punctuation of sentence, acronyms) and implicit noise (information related to the disease) So, before sharing EMRs, we need a solution to standardize and deal with these noises in the EMRs
In this thesis, we propose a method of dealing with 2 types of noise including explicit noise (Punctuation of sentence, Acronyms) and implicit noise (information related disease) contained in EMRs with a hybrid model combining supervised learning and active learning with a GUI
This thesis has supported normalization of sentences (Punctuation of sentence) and supported the appearance of local medical terms in the text by refering to a standard disease information from the UMLS to retrieve CUIs
This thesis has succeeded in classifying and extracting medical information such
as disease symptoms as problem, test methods, and treatments from a clinical text in EMRs with high rate (> 80%)
With a combination of basic machine learning (using the CRF model) and the active learning method, a built-in diagnostic and labeling tool for electronic medical records This will increase the knowledge base for the training sessions later so that prediction and extraction of disease information will be more accurate Measurement of F is improved by about 8% as the initial training set has an increase
of about 1/3 in its quantity
The result of this work can create a set of original EMRs along with corresponding set of XML files that contain information related to disease in EMRs that will support future researching and analyzing The sentences of these EMRs are also normalized
The normalization and dealing with noise in EMRs will actively support experts and research institutions for systhesis, investigating and analysis of disease information The results also support remote disease diagnosis and clinical treatment in hospitals
Trang 9LỜI CAM ĐOAN
Tôi xin cam đoan rằng ngoài các kết quả, các thông tin được tham khảo từ các công trình khác như đã ghi rõ trong luận văn, những công việc, kết quả được trình bày trong luận văn này là do chính tôi thực hiện và chưa được sử dụng để lấy bất kì chứng chỉ, bằng cấp nào khác
Tp HCM, ngày tháng năm 2018
Học viên
Trần Nam Phong
Trang 10Mục lục
NHIỆM VỤ LUẬN VĂN THẠC SĨ
I TÊN ĐỀ TÀI:
II NHIỆM VỤ VÀ NỘI DUNG:
III NGÀY GIAO NHIỆM VỤ:
LỜI CÁM ƠN
TÓM TẮT LUẬN VĂN
ABSTRACT
LỜI CAM ĐOAN
DANH MỤC BẢNG BIỂU
DANH MỤC HÌNH ẢNH
DANH MỤC VIẾT TẮT
Chương 1: GIỚI THIỆU ĐỀ TÀI 1
1.1 Giới thiệu đề tài 1
1.2 Mục tiêu đề tài 1
1.3 Ý nghĩa khoa học 2
1.4 Ý nghĩa thực tiễn 2
1.5 Giới hạn đề tài 2
1.6 Đối tượng nghiên cứu đề tài: 3
Chương 2: KIẾN THỨC NỀN TẢNG VÀ CÁC CÔNG TRÌNH LIÊN QUAN 4
2.1 Các nghiên cứu liên quan 4
2.2 Cơ sở lý thuyết 5
2.3 Phương pháp đánh giá 25
Chương 3: CÁC PHƯƠNG PHÁP XỬ LÝ NHIỄU 28
3.1 Mô tả bài toán 28
3.2 Phương pháp thực hiện đề tài 29
3.3 Kết quả của mô hình dự đoán 36
3.4 So sánh đề xuất của luận văn với các công trình liên quan 40
Chương 4: ĐÁNH GIÁ BẰNG THỰC NGHIỆM 41
4.1 Môi trường và thực nghiệm 41
4.2 Mô tả dữ liệu 41
4.3 Kết quả thực nghiệm 41
Chương 5: KẾT LUẬN 49
Trang 115.1 Kết luận 49
5.1.1 Các nội dung đã thực hiện 49
5.1.2 Mức độ đạt được của đề tài 49
5.2 Hướng phát triển 50
TÀI LIỆU THAM KHẢO 51
PHỤ LỤC – CÔNG CỤ HỖ TRỢ CHÚ GIẢI BAĐT (ACTIVE CLINICAL TEXT TOOL) (ACT TOOL) 53
Trang 12DANH MỤC BẢNG BIỂU
Bảng 1: Một số hàm nhân thường dùng [17] 18
Bảng 2: Ma trận nhầm lẫn (Confusion Matrix)[31] 26
Bảng 3: Tập dữ liệu mẫu của mô hình 34
Bảng 4: Kết quả trích xuất thông tin bệnh của các mô hình phân lớp 42
Bảng 5: Kết quả so sánh các độ đo của việc trích xuất các thành phần tổng hợp chính xác so với tập gold của các mô hình giải thuật 43
Bảng 6: Kết quả so sánh các độ đo của việc trích xuất các thành phần chi tiết chính xác so với tập gold của các mô hình giải thuật 43
Bảng 7: Kết quả so sánh các độ đo của việc trích xuất các thành phần tổng hợp chính xác so với tập gold của các lần học chủ động 46
Bảng 8: Kết quả so sánh các độ đo của việc trích xuất các thành phần chi tiết chính xác so với tập gold của các lần học chủ động 47
Trang 13DANH MỤC HÌNH ẢNH
Hi ̀nh 1: Đoạn trích một bệnh án điện tử mẫu [19] 3
Hi ̀nh 2 Đồ thị thể hiện một trường ngẫu nhiên [30] 12
Hi ̀nh 3 Đồ thị vô hướng của CRF [30] 13
Hi ̀nh 4 Đồ thị mô phỏng các hàm tiềm năng[30] 13
Hi ̀nh 5: Ví dụ siêu phẳng với lề cực đại trong R 2 [17] 17
Hi ̀nh 6: Mô hình 1 mạng RNN [25] 19
Hi ̀nh 7: Module lặp trong mạng RNN chuẩn[26] 20
Hi ̀nh 8: Module lặp trong mạng LSTM chứa 4 tầng tương tác[26] 21
Hi ̀nh 9: 1 kênh truyền trong mạng LSTM chứa 4 tầng tương tác[26] 21
Hi ̀nh 10: 1 cổng ngữ nghĩa trong mạng LSTM chứa 4 tầng tương tác[26] 21
Hi ̀nh 11: xử lý tầng sigmoid trong mạng LSTM chứa 4 tầng tương tác [26] 22
Hi ̀nh 12: xử lý tầng sigmoid trong mạng LSTM chứa 4 tầng tương tác [26] 22
Hi ̀nh 13: Đầu Output trong mạng LSTM chứa 4 tầng tương tác[26] 23
Hi ̀nh 14: Mô hình mạng RNN 2 chiều [25] 24
Hi ̀nh 15: Văn bản lâm sàng của BAĐT gốc 28
Hi ̀nh 16: Văn bản lâm sàng của BAĐT gốc 29
Hi ̀nh 17: Sơ đồ các kỹ thuật được áp dụng để xử lý nhiễu trong bệnh án điện tử 31
Hi ̀nh 18: Kiến trúc của hệ thống 32
Hi ̀nh 19: Phân tích cú pháp của 1 câu trong văn bản lâm sàng của BAĐT[5] 33
Hi ̀nh 20: Công cụ hỗ trợ phân tích ACT Tool 35
Hi ̀nh 21: Giao diện web thể hiện kết quả BAĐT đã được gán nhãn và đánh chỉ thị màu 36
Hi ̀nh 22: 1 mẫu BAĐT đã được gán nhãn trong I2B2 37
Hi ̀nh 23: Kết quả trích xuất thông tin bệnh từ văn bản lâm sàng của BAĐT dưới dạng xml 38
Hi ̀nh 24: Giao diện của ACT Tool 53
Hi ̀nh 25: Giao diện web thể hiện kết quả BAĐT đã được gán nhãn và đánh chỉ thị màu 54
Trang 14DANH MỤC VIẾT TẮT
Trang 15Chương 1: GIỚI THIỆU ĐỀ TÀI
1.1 Giới thiệu đề tài
Bệnh án điện tử (BAĐT) là những dữ liệu, thông tin được "số hóa" từ bệnh án thực của bệnh nhân mỗi lần vào viện Trong đó, các dữ liệu cập nhật từ những thông tin cơ bản của người bệnh, lời khai bệnh nhân, triệu chứng bác sỹ thấy, thuốc được chỉ định dùng, kết quả xét nghiệm, phim chụp, phương án điều trị của bác sĩ… Ngoài ra, BAĐT cũng cập nhật dữ liệu và thông tin lâm sàng, cận lâm sàng đều được ghi chép, tạo trực tiếp bởi bác sĩ và y tá hoặc chuyển từ các máy đo chụp của bệnh viện vào máy tính, được tổ chức và lưu giữ theo các chuẩn công nghệ thông tin của ngành y
Trong BAĐT, phần dữ liệu lâm sàng tức các văn bản lâm sàng, có giá trị đặc biệt Văn bản lâm sàng ở đây gồm các phiếu điều trị (ghi chép các nhận định và y lệnh hàng ngày của bác sĩ), phiếu chăm sóc (ghi chép trong ngày của y tá về tình trạng người bệnh), và hồ sơ xuất viện (ghi chép tổng hợp thông tin khám và điều trị khi người bệnh ra viện)
Các văn bản lâm sàng của bệnh án điện tử được ghi chú dưới áp lực thời gian ngắn, phụ thuộc ngữ cảnh Do đó, các văn bản này thường có nhiều nhiễu tường minh và nhiễu ẩn Điều này dẫn đến các BAĐT khó được hiểu và xử lý tự động bởi các đối tượng khác ngoài đối tượng ghi chú các văn bản này
Hai yếu tố quan trọng đầu tiên của việc tạo BAĐT là chuẩn hoá ngôn ngữ khám chữa bệnh và thói quen ghi chép hàng ngày trên máy tính của các bác sỹ và y tá Việc chuẩn hóa ngôn ngữ khám chữa bệnh có vai trò nền tảng cho BAĐT trong tương lai Sở dĩ vậy vì khi đọc từng bệnh án trên giấy các bác sĩ có thể hiểu dù các triệu chứng được mô tả bằng nhiều cách khác nhau Tuy nhiên, nếu các văn bản lâm sàng được mô tả theo một ngôn ngữ được chuẩn hóa bởi các bác sĩ và ngành y, việc khai thác sử dụng BAĐT trong tương lai sẽ hiệu quả hơn rất nhiều
Nhằm giúp tăng tính khả đọc và tạo khả năng được chia sẻ và xử lý tự động, đề tài hướng đến giải pháp lọc nhiễu tường minh trong các văn bản lâm sàng này dùng phương pháp lai kết hợp giữa phương pháp học có giám sát và học chủ động
1.2 Mục tiêu đề tài
Nhận biết các loại nhiễu tường minh và nhiễu ẩn trong văn bản lâm sàng của BAĐT bao gồm:
a Nhiễu tường minh (explicit noise):
− Bỏ sót dấu kết thúc câu (omission of sentence delimiters)
− Biến thể của các từ (Variants of terms): Từ đồng nghĩa, từ địa phương,
Trang 16b Nhiễu ẩn (implicit noise):
− Thông tin không liên quan người bệnh (non- patient information) Chuẩn hóa ngôn ngữ trong các văn bản lâm sàng của BAĐT bằng việc xử lý các nhiễu tường minh và nhiễu ẩn như sau:
− Chuẩn hóa các câu chưa hoàn thiện trong BAĐT
− Xác định, đánh dấu và phân loại các thông tin liên quan trực tiếp đến bệnh nhân (triệu chứng bệnh, phương pháp kiểm tra, phương pháp điều trị) trong BAĐT
Thực nghiệm hóa thông qua việc xây dựng một hệ thống có khả năng hoàn thiện các câu và tự động nhận diện, phân loại và đánh dấu các thông tin liên quan bệnh nhân theo màu sắc
1.3 Ý nghĩa khoa học
Đề tài sử dụng phương pháp phân tích cây cú pháp ở bước tiền xử lý để trích lọc ra các từ liên quan đến người bệnh trong câu trước khi đưa vào xử lý và phân lớp các từ y khoa dựa trên hệ thống UMLS
Đề tài định danh được các biến thể của từ hoặc cụm từ y khoa thông dụng thông qua việc phân tích và gán thuộc tính CUI cho các biến thể dựa trên dữ liệu Metatherasus của UMLS hoặc tạo CUIs mới thông qua API UMLS Terminology Service (UTS)
Đề tài kết hợp kỹ thuật học máy truyền thống và phương pháp máy học chủ động bổ sung thêm thông tin cho tập huấn luyện ban đầu từ các kết quả được phân tích và đánh nhãn trước đó nhằm làm tăng hiệu quả của việc xử lý các nhiễu trong văn bản lâm sàng của BAĐT
1.4 Ý nghĩa thực tiễn
Như ta đã biết, bệnh án điện tử rất quan trọng trong việc hỗ trợ chẩn đoán và điều trị bệnh cho bệnh nhân, cũng như là để phục vụ mục đích nghiên cứu Đề tài hướng đến việc xử lý các loại nhiễu trong bệnh án điện tử nhằm chuẩn hóa các câu
từ và đảm bảo truyền tải đầy đủ và chính xác các thông tin người bệnh đến các nhà phân tích mẫu bệnh , nhà nghiên cứu làm nguồn tài liệu vô giá để hỗ trợ phục vụ cho việc nghiên cứu, trích lọc và đánh giá thông tin sau này
Trang 171.6 Đối tượng nghiên cứu đề tài:
Đề tài dựa trên cơ sở dữ liệu là các bệnh án điện tử mẫu của I2B2 công bố năm
2010, với các thông tin bệnh đã được xác định
Hình bên dưới là một trích đoạn trong bệnh án điện tử mẫu dạng tập tin văn bản trong tập dữ liệu của I2B2 năm 2010
Trang 18Chương 2: KIẾN THỨC NỀN TẢNG VÀ CÁC CÔNG TRÌNH LIÊN QUAN
2.1 Các nghiên cứu liên quan
Hiện nay có rất nhiều hệ thống và phương pháp đa dạng thực hiện việc trích xuất thông tin y khoa từ các văn bản lâm sàng với nhiệm vụ chính là phân loại tài liệu, nhận diện tên của thực thể (NER) và phân loại quan hệ của các thực thể ( mô hình y khoa)
Để giải quyết vấn đề xác định biên của câu, từ trước tới nay đã có nhiều công trình nghiên cứu áp dụng các giải thuật máy học như Cây quyết định (Decision Tree), mạng Neuron, Entropy cực đại, hay mô hình Markov ẩn Như Palmer và Hearst vào năm 1997 đã phát triển hệ thống SATZ sử dụng cú pháp ngữ nghĩa để phân loại biên của câu [11]
Đối với vấn đề xử lý ngôn ngữ trong các văn bản y khoa, Friedman vào năm
1994 đã phát triển một hệ thống mã hóa và trích xuất ngôn ngữ y khoa (MedLEE) [12], sử dụng miền định nghĩa từ vựng và ngữ pháp để xử lý các báo cáo X-quang
Nó được dùng trong một hệ thống hỗ trợ ra quyết định tự động, và cho phép loại truy vấn ngôn ngữ tự nhiên MedLEE được mô phỏng để định nghĩa các mô hình trong tài liệu y khoa, kết nối các mô hình với các loại hoặc cấu trúc ngữ nghĩa Kết quả cuối cùng của mỗi mô hình chứa đựng thông tin về tình trạng, nơi chốn, và các trường hợp chắc chắn
Hoang Nguyen và Jon Patrick năm 2016 đã giới thiệu một mô hình phân tích chú giải tự động các khái niệm y khoa trong các báo cáo X- quang về bệnh ung thư [3]
Ưu điểm của mô hình này là có khả năng tự động phân tích và gán nhãn bằng bảng chỉ thị màu dựa trên sự phân loại các từ ngữ y khoa và lưu các thông tin đã phân loại từ các văn bản đã xử lý trước đó dưới dạng tri thức bằng phương pháp học máy chủ động kết hơp với mô hình lặp phát triển sử dụng phân lớp SVM
Haug vào năm 1995 đã giới thiệu bộ xử lý các văn bản dạng biểu tượng (SymText) [13], một hệ thống thông hiểu ngôn ngữ tự nhiên cho các báo cáo X-Quang ngực SymText xử lý mỗi câu trong tài liệu một cách độc lập với việc phân tích xác suất ngữ nghĩa và cú pháp.Mạng Bayes được dùng trong SymText để quyết định xác suất bệnh của một bệnh nhân
Mô hình phân loại kết hợp để định danh tên thực thể y sinh (NER) đề xuất mô hình hai trạng thái để nhận dạng biên và phân loại từ trong hai pha trong mỗi pha phân loại, mỗi tập đặc điểm khác nhau sẽ được lựa chọn tự động nhằm tạo tính hiệu quả cho mỗi nhiệm vụ Sự so sánh cách thức học giữa hai phương pháp máy học truyền thống là phương pháp Vùng ngẫu nhiên có điều kiện (CRFs) và máy hỗ trợ
Trang 19Vector ( SVMs) chỉ ra rằng CRFs làm tốt hơn SVMs trong các đối tượng NER y khoa
Khi trích xuất thông tin từ các văn bản tài liệu tường thuật, ngữ cảnh hoặc sự quyết định của các mô hình trích xuất đóng vai trò tối quan trọng Giải thuật NegEx [14] sử dụng các từ điển pre-UMLS và pos-UMLS để xây dựng một sự khẳng định hoặc phủ định của một quyết định.NegEx sử dụng phương pháp dựa trên thước đo kinh nghiệm và heuristic để giới hạn phạm vi của quyết định Một trong những mở rộng của thuật giải NegEx là nhận biết các liên kết thay thế để khẳng định, phủ định hoặc đưa ra sự không chắc chắn cho các quyết định Mặt khác đưa ra mô hình SVM giới thiệu một giải pháp máy học trong việc phân loại các quyết định
Các hệ thống máy học đã chứng minh hiệu quả cao trong các việc trích xuất và phân loại thông tin trong các báo cáo X-Quang Chúng được dùng tự động để tái cấu trúc các thông tin y khoa trong các văn bản X-Quang quan trọng Thomas xây dựng hàm logic các biến bool dựa trên 512 văn bản X-Quang mắt cá chân để tạo ra giải thuật tìm kiếm từ và sau đó áp dụng cho tập 750 văn bản X-Quang khác với độ nhạy cảm 87,8% và độ đặc trưng 91,3 % [15]
2.2 Cơ sở lý thuyết
2.2.1 UMLS (Hệ thống Ngôn ngữ Y khoa Thống nhất của Hoa Kỳ)
Hệ thống UMLS [20] tích hợp hơn 2 triệu tên cho khoảng 900 ngàn mô hình
bệnh từ hơn 60 nhóm từ loại y sinh và chứa 12 triệu quan hệ giữa các mô hình bệnh này
Bên cạnh các thuật ngữ y sinh nói chung , các tập nhãn thiết kế nội bộ được sử dụng trong nhiều trường hợp bởi vì nó quản lý tốt hơn và có liên quan nhiều đến các công tác chẩn đoán, hoặc để xác định các tên định danh lâm sàng cụ thể trong văn bản
2.2.2 Mô hình ngôn ngữ N-gram
N-gram [1] được hiểu đơn giản là tần suất xuất hiện của n kí tự (từ) liên tiếp xuất
hiện trong dữ liệu
Để xây dựng một mô hình n-gram, ban đầu người ta dựa trên một tập dữ liệu huấn luyện Sau khi mô hình được xây dựng, ta tiến hành kiểm tra mô hình dựa trên một tập dữ liệu test Việc kiểm tra tốt nhất là sử dụng một tập dữ kiệu không có trong tập huấn luyện Dựa vào việc kiểm tra này mà ta có thể biết được mô hình có tốt hay không
Một số mô hình n-gram phổ biến:
Trang 20• Unigram, mô hình với n=1, tức là ta sẽ tính tần suất xuất hiện của một kí
Nhiệm vụ của mô hình ngôn ngữ là cho biết xác suất của một câu
P(W1W2…Wm)= P(W1) * P(W2| W1) * P(W3| W1W2) *…* P(Wm| W1W2…Wm-1) Theo công thức này, mô hình ngôn ngữ cần phải có một lượng bộ nhớ vô cùng lớn để có thể lưu hết xác suất của tất cả các chuỗi độ dài nhỏ hơn m Rõ ràng, điều này là không thể khi m là độ dài của các văn bản ngôn ngữ tự nhiên (m có thể tiến tới vô cùng) Để có thể tính được xác suất của văn bản với lượng bộ nhớ chấp nhận được, ta sử dụng xấp xỉ Markov bậc n:
P(Wm|W1,W2,…, Wm-1) = P(Wm|Wm-n,Wn-m+1, …,Wm-1)
chỉ phụ thuộc vào n từ đứng liền trước nó (Wm-nWm-n+1…Wm-1) chứ không phải phụ
suất văn bản được tính lại theo công thức:
P(W1W2…Wm) = P(W1) * P(W2|W1) * P(W3|W1W2) *…* P(Wm-1|Wm-n-1W
m-n …Wm-2)* P(Wm|Wm-nWm-n+1…Wm-1)
Với công thức này, ta có thể xây dựng mô hình ngôn ngữ dựa trên việc thống kê các cụm có ít hơn n+1 từ Mô hình ngôn ngữ này gọi là mô hình ngôn ngữ N-gram Một cụm N-gram là 1 dãy con gồm n phần tử liên tiếp nhau của 1 dãy các phần
tử cho trước
2.2.3 TF-IDF (Term Frequency-Inverse Document Frequency)
TF-IDF [16] là 1 kĩ thuật khai phá dữ liệu từ text sử dụng để phân loại văn bản
Trọng số này sử dụng để đánh giá tầm quan trọng của một từ trong một văn bản , 1 collection hoặc một corpus Độ quan trọng tăng dần dựa vào số lần từ xuất hiện trong văn bản nhưng bù lại bởi tần suất của từ đó trong corpus Một vài biến thể của tf-idf thường xuyên được sử dụng trong các hệ thống tìm kiếm như một công cụ chính để đánh giá và sắp xếp văn bản dựa vào user query Tf-idf có thể sử dụng để lọc những từ stop-words trong một số bài toán như tóm tắt văn bản và phân loại văn bản
Trang 21TF : Term Frequency , là số lần term xuất hiện trong văn bản Vì các văn bản
có thể có độ dài ngắn khác nhau nên mọt số term có thể xuất hiện nhiều lần trong một văn bản dài hơn là một văn bản ngắn Như thế , term frequency thường được chia cho độ dài văn bản ( tổng số term trong một văn bản) như normalization
IDF: Inverse Document Frequency , đánh giá tầm quan trọng của một term
Khi tính toán TF , tất cả các terms được coi như có độ quan trọng như nhau Nhưng một số terms, như “is” , “of” và “that” thường xuất hiện rất nhiều lần nhưng
độ quan trọng là không cao Như thế chúng ta cần giảm trọng số xuống
IDF(t) = log(Tổng số văn bản/ Số văn bản chứa term t )
Ví dụ: Một văn bản chứa 100 từ mà từ “cat” xuất hiện 3 lần Term frequency
cho từ cat này là (3/100) = 0.03 Giả sử , chúng ta có 10 triệu văn bản và từ “cat” xuất hiện trong một nghìn văn bản Như thế , idf được định nghĩa
là log(10,000,000 / 1,000) = 4 Như thế , tf-idf của từ “cat” trong văn bản này sẽ là : 0.03 * 4 = 0.12
danh sách các stopword hoặc loại bỏ theo tần suất xuất hiện của từ (chỉ số TF*IDF) Trong thực nghiệm chúng tôi dùng một danh sách stopword kết hợp với việc loại bỏ các từ có chỉ số TF*IDF thấp Chỉ số TF*IDF thấp tức là từ xuất hiện hầu khắp các băn bản hoặc từ rất ít xuất hiện
Sau khi loại bỏ các stopword, văn bản có thể xem như là một tập hợp các đặc trưng, đó là tập hợp các từ “quan trọng” còn lại để biểu diễn văn bản Việc phân loại văn bản sẽ dựa trên các đặc trưng này Tuy nhiên, có thể thấy rằng, số đặc trưng của một văn bản là lớn và không gian các đặc trưng (tất cả đặc trưng) của tất
cả các văn bản đang xem xét là rất lớn, về nguyên tắc, nó bao gồm tất cả các từ trong một ngôn ngữ Chính vì vậy, phân loại dựa trên các đặc trưng này cần phải
có cách xử lí, lựa chọn đặc trưng nhằm rút ngắn số chiều của không gian đặc trưng Trên thực tế, người ta không thể xét tất cả các từ của ngôn ngữ mà là dùng tập hợp các từ được rút ra từ một tập (đủ lớn) các văn bản đang xét (gọi là tập ngữ liệu)
Kế đến, mỗi văn bản trong tập ngữ liệu đang xét sẽ được mô hình hóa như là một vector trọng số của các đặc trưng, di(wi1,…,wim) Trong bài viết này, trọng số của một từ được tính theo tần suất xuất hiện của từ trong văn bản (TF) và tần suất nghịch đảo của từ trong tập ngữ liệu (IDF)
Trang 22𝑤𝑖,𝑗 = 𝑇𝐹𝑖𝑗 ∗ log ( 𝑁
𝑇𝐹𝑖𝑗 là số lần xuất hiện của từ thứ j trong văn bản thứ i
𝐷𝐹𝑗 là tổng số văn bản có chứa từ thứ j trong tập ngữ liệu
N là tổng số văn bản trong tập ngữ liệu
2.2.4 Gán nhãn từ loại (Part-of-Speech tagging POS)
Gắn nhãn từ loại [27] là việc xác định các chức năng ngữ pháp của từ trong câu
Đây là bước cơ bản trước khi phân tích sâu văn phạm hay các vấn đề xử lý ngôn ngữ phức tạp khác Thông thường, một từ có thể có nhiều chức năng ngữ pháp, ví dụ: trong câu “con ngựa đá đá con ngựa đá”, cùng một từ “đá” nhưng từ thứ nhất và thứ ba giữ chức năng ngữ pháp là danh từ, nhưng từ thứ hai lại là động từ trong câu Một số hướng tiếp cận chính trong gắn nhãn từ loại tiếng Anh bao gồm: gắn nhãn dựa trên mô hình Markov ẩn (HMM); các mô hình dựa trên bộ nhớ (Daelemans,
1996) [21] ; mô hình dựa trên luật (Transformation Based Learning, Brill, 1995) [22]; Maximum Entropy; cây quyết định (Schmid, 1994a) [23]; mạng nơ- ron(Schmid, 1994b) [23], v.v Trong các hướng tiếp cận đó, phương pháp dựa trên
học máy được đánh giá rất tốt
Gán nhãn (sequence labeling problem, tagging problem) có các bài toán thường gặp:
▪ POS tagging (gán nhãn từ loại) Là cơ sở phục vụ cho các bài toán về ngữ nghĩa cao hơn
▪ Named-Entity recognition (gán nhãn tên thực thể) Có giá trị về mặt ngữ nghĩa ở mức trung bình, thường được dùng để phân lớp văn bản
là câu của ngôn ngữ B tương ứng Bài toán này từng rất cấp thiết trong chiến tranh thế giới thứ 2, khi mà thông tin tình báo của địch cần được dịch trong thời gian ngắn nhất, giúp cho các lãnh đạo có thể đưa ra những chiến lược cấp thiết
ra là câu dạng văn bản Ngày nay, theo thống kê của Apple, người dùng thích
sử dụng tiếng nói của mình để nhập văn bản hơn là cách nhập dữ liệu bằng bàn phím như truyền thống, đồng thời tương tác giữa người và máy theo cách này có tốc độ nhập liệu nhanh hơn
Trang 23Khi làm việc với bài toán này ta sẽ đối mặt với thách thức chính sau:
luyện (training corpus) nên khi xây dựng mô hình gán nhãn sẽ gặp nhiều khó khăn
Độ chính xác của mô hình gán nhãn phụ thuộc vào hai yếu tố:
▪ Bản thân từ đó sẽ có xu hướng (xác suất lớn) về từ loại nào
Để gán nhãn từ loại, ta sử dụng phương pháp học có giám sát (supervised learning), cụ thể là xác suất liên hợp thường gọi là mô hình sinh mẫu (Generative model)
2.2.5 Entropy cực đại
Trong nguyên lý Entropy cực đại [28], chúng ta sử dụng tập dữ liệu mẫu làm để
thiết lập ràng buộc cho phân phối điều kiện Với mỗi ràng buộc được mô tả bởi một đặc tính của tập dữ liệu học Một đặc trưng trong mô hình Entropy cực đại được biểu diễn bởi một hàm fi(d, c), trong đó d là tài liệu và c là lớp Entropy cực đại cho phép giới hạn mô hình phân phối để có thu các giá trị kỳ vọng cho mỗi đặc trưng của tập dữ liệu Vì vậy, ta có thể đặt xác suất phân phối của dữ liệu d cho lớp c là P(c|d) thỏa mãn phương trình sau:
(2)
Trong quá trình huấn luyện, phân phối tài liệu P(d) là không biết và chúng
ta không cần quan tâm tới nó Vì vậy, ta chỉ sử dụng tập dữ liệu mẫu như là một điều kiện để phân phối dữ liệu tuân theo ràng buộc sau:
(3)
Mô hình xác suất Entropy cực đại cung cấp một cách đơn giản để kết hợp các đặc trưng của tài liệu trong những ngữ cảnh khác nhau để ước lượng xác suất của một số lớp xuất hiện cùng với một số ngữ cảnh này Tư tưởng cơ bản của phương pháp Entropy cực đại là tìm ra một mô hình có phân phối xác suất thỏa mãn mọi ràng buộc quan sát được từ dữ liệu mà không đưa thêm bất kì một giả thiết nào
Trang 24khác Theo nguyên lý Entropy cực đại, phân phối cần đáp ứng dữ liệu quan sát và làm cực đại độ đo Entropy có điều kiện:
(4)
và
(5) Trong đó p* là phân xác suất tối ưu
Mô hình Entropy cực đại xây dựng các đặc trưng từ tập dữ liệu huấn luyện Mỗi đặc trưng được biểu diễn dưới một hàm nhận một trong hai giá trị đúng hoặc sai Tập các ràng buộc sẽ được thiết lập từ các đặc trưng này Một ràng buộc là một điều kiện từ dữ liệu buộc mô hình phải thỏa mãn Mỗi đặc trưng fi được gán cho một trọng số λi Khi đó, bài toán phân lớp được đưa về bài toán ước lượng xác suất
có điều kiện:
(6)
Trong đó Z(d) là biểu thức chuẩn hóa để đảm bảo điều kiện Σp(c | d ) = 1 Từ
đó đưa ra công thức sau:
(7)
Để áp dụng mô hình Entropy cực đại cho một miền cho lớp văn bản, chúng ta cần phải chọn ra một tập các đặc trung để sử dụng thiết lập các ràng buộc Đối với phân lớp văn bản với mô hình Entropy cực đại, chúng ta sử dụng số lượng từ như là các đặc trưng Trong nghiên cứu này cho với mỗi từ kết hợp, ta đưa ra một đặc tính như sau:
(8)
Trong đó, N(d, w) là số lần từ w xuất hiện trong tài liệu d, và N(d) là số lượng các từ có trong tài liệu d
Trong công thức này, nếu một từ xuất hiện thường xuyên trong một tài liệu, ta
sẽ tính trọng số cho các cặp từ này và thấy rằng trọng số đó sẽ cao hơn so với trọng
Trang 25số của các từ ghép trong tài liệu Trong hầu hết ngôn ngữ tự nhiên sử dụng Entropy cực đại thì các đặc trưng thường là đặc trưng nhị phân Trong phân lớp văn bản, chúng ta mong muốn các đặc trưng được tính bằng số lần suất hiện của một từ trong một tài liệu có thể củng cố cho phân lớp
2.2.6 Mô hình Conditional Random Fields (CRF)
CRF [29] được giới thiệu vào những năm 2001 bởi Lafferty và các đồng nghiệp
CRF là mô hình dựa trên xác suất điều kiện, thường được sử dụng trong gán nhãn
và phân tích dữ liệu tuần tự ví dụ ký tự, ngôn ngữ tự nhiên CRF là mô hình đồ thị
vô hướng và điều này cho phép CRF có thể định nghĩa phân phối xác suất của toàn
bộ chuỗi trạng thái với điều kiện biết chuỗi quan sát cho trước thay vì phân phối trên mỗi trạng thái với điều kiện biết trạng thái trước đó và quan sát hiện tại
a Việc gán nhãn cho dữ liệu tuần tự
Nhiệm vụ của gán nhãn tuần tự [13] để thiết lập chuỗi quan sát được xuất hiện trong nhiều trường Một trong những phương thức phổ biến để thực hiện gán nhãn
và phân đoạn là sử dụng quy tắc HMM hoặc mô hình máy hữu hạn trạng thái để định nghĩa chuỗi các nhãn có thể xảy ra nhất cho những từ của bất cứ câu nào Theo những nghiên cứu về mô hình Markov ẩn và mô hình cực đại hóa Entropy ở trên Thì CRF đã giải quyết được toàn bộ những vấn đề mà hai mô hình trên mắc phải như “ label alias ”[11]
Conditional random fields là một probabilistic framework (theo xác suất) cho việc gán nhãn và phân đoạn dữ liệu tuần tự Thay vì sử dụng xác suất độc lập trên
chuỗi nhãn và chuỗi quan sát, ta sử dụng xác suất có điều kiện P(Y | X) trên toàn bộ chuỗi nhãn được đưa bởi chuỗi mỗi chuỗi quan sát X CRF là một mô hình đồ thị vô
hướng định nghĩa một phân bố tuyến tính đơn trên các chuỗi nhãn (trình tự nhãn) được đưa ra bởi các chuỗi quan sát được CRFs thuận lợi hơn các mô hình Markov
và MEMM Nó làm tốt hơn cả của MEMM và HMM trên số lượng chuỗi gán nhãn lớn.Ví dụ: xét ngôn ngữ tự nhiên, việc gán nhãn cho các từ trong câu sẽ tương ứng với loại từ vựng Ở đây các câu sẽ là dữ liệu tuần tự còn nhãn cần gán chính là các
từ loại
[NP He ] [VP reckons ] [NP the current account deficit ] [VP will narrow ] [PP
to ] [NP only # 1.8 billion ] [PP in ] [NP September ]
Trong đó ý nghĩa của các nhãn là: NP: nounse phrase, VP: verb phrase…
Trang 26Trong bài toán trích chọn thông tin nhà đất của mình thì dữ liệu tuần tự ở đây chính là các bản tin nhà đất, còn các nhãn cần gán đó là các thông tin về địa chỉ (B-
DC, I-DC) hoặc diện tích (B-DT,I-DT)…
b Định nghĩa CRF
Trước khi xem định nghĩa trường ngẫu nhiên điều kiện ta xem định nghĩa thế
nào là một trường ngẫu nhiên [29][30]
Cho một đồ thị vô hướng không có chu trình G(V,E), ở đây V là tập các đỉnh của đồ thị và E là tập các cạnh vô hướng nối các đỉnh của đồ thị nếu thỏa mãn:
, ) ( | , )
|
(
i k k i j
i
j
v
P(Y 5| Yi)=P(Y 5 |Y 4 ,Y 6) Vậy Y={Y5, Y4,Y6} là trường ngẫu nhiên
Tiếp đến chúng ta định nghĩa trường ngẫu nhiên có điều kiện như sau: X là biến ngẫu nhiên nhận giá trị là chuỗi dữ liệu cần phải gán nhãn.Y là biến ngẫu nhiên nhận giá trị là chuỗi nhãn tương ứng Mỗi thành phần Y i của Y là một biến ngẫu nhiên nhận giá trị trong tập hữu hạn các trạng thái S Các đỉnh V biểu diễn các thành phần của biến ngẫu nhiên Y sao cho tồn tại ánh xạ một – một giữa các đỉnh và một thành phần Y v của Y Ta nói:
CRF được định nghĩa: (Y | X) là một trường ngẫu nhiên điều kiện
(Conditional Random Field) với điều kiện X khi ta chỉ tính được xác xuất có điệu kiện P(Y i | X i ) với Y iY và X i X và với mỗi X i ta chọn được argmaxYi P(Y i | X i)
Trang 27Trong bài toán dữ liệu dạng chuỗi, G có thể được biểu diễn như sau:
Kí hiệu X=(X 1 , X 2 …X n ), Y=(Y 1 , Y 2 ,…Y n) Ta có mô hình đồ thị vô hướng của CRF có dạng sau:
Gọi C là tập hợp tất cả các đồ thị con đầy đủ của đồ thị G (đồ thị biểu diễn cấu trúc của một CRF) Theo kết quả của Hammerly-Clifford cho các trường Markov, ta
thừa số hóa được p(y | x) – xác suất của chuỗi nhãn với điều kiện biết chuỗi dữ liệu
quan sát – thành tích các hàm tiềm năng:
Có thể mô phỏng như hình sau:
Tính chất của trường ngẫu nhiên có điệu kiện là:
Trang 28➢ Mô hình phân biệt (discriminative models)
➢ Mô hình chuỗi (sequential models)
➢ Mô hình đồ thị vô hướng (Undirected graphical models)
c Hàm tiềm năng của các mô hình CRF
Bằng cách áp dụng nguyên lý cực đại hóa Entropy, Lafferty xác định hàm tiềm năng của một CRF có dạng hàm số mũ
k
x A f
Trong đó:
y k là trọng số chỉ mức độ biểu đạt thông tin của thuộc tính f k
A là đồ thị con của đồ thị vô hướng G
d mô hình CRF
Mô hình CRFs cho phép các quan sát trên toàn bộ X, nhờ đó chúng ta có thể
sử dụng nhiều thuộc tính hơn phương pháp Hidden Markov Model Một cách hình
thức chúng ta có thể xác định được quan hệ giữa một dãy các nhãn y và một câu đầu vào x qua công thức sau
i k
x Z x y
) (
1 )
|
Ở đây x,y là chuỗi dữ liệu quan sát và chuỗi trạng thái tương ứng; tk(y i-1 ,y i ,x,i):
là thuộc tính của toàn bộ chuỗi quan sát và các trạng thái tại vị trí i-1, i trong chuỗi
trạng thái; s k (y i ,x,i): là thuộc tính của toàn bộ chuỗi quan sát và trạng thái tại vị trí i trong chuỗi trạng thái; λj, μk: là các tham số được thiết lập từ dữ liệu huấn luyện
Khi định nghĩa các thuộc tính , chúng ta xây dựng 1 chuỗi các thuộc tính b(x,i)
của chuỗi dữ liệu quan sát để diễn tả vài đặc trưng nào đó của phân phối thực nghiệm của dữ liệu huấn luyện
Trang 29Ví dụ : 1 nếu quan sát ở vị trí i và từ là = “Đình”
0 nếu khác Mỗi một hàm mô tả sẽ nhận một giá trị của một trong số các giá trị thực
b(x,i) là trạng thái hiện tại( nếu trong trường hợp hàm trạng thái ) hoặc là trạng thái
trước và trạng thái hiện tại (trong trường hợp là hàm dịch chuyển) nhận giá trị riêng
Do đó toàn bộ hàm mô tả có giá trị thực
Hàm trạng thái s k (y i ,x,i) dùng để xác định định danh của trạng thái
Trong bài toán trích chọn thông tin nhà đất thì ví dụ một hàm trạng thái như sau:
0 nếu ngược lại
Ở đó Z(x) là thừa số chuẩn hóa Và được tính theo công thức sau:
k
t k
k t y ,yi,x) s (y,x)
trị trong phần tiếp theo
Chú ý rằng đối với các công thức (11) và (12) ta có thể viết một cách đơn giản như sau:
Trang 30s k (y i ,x,i)= s k (y i-1 , y i ,x,i) và Fj(y,x)=
fi
1
1, , , )
Ở đó fj(y i-1 ,y i ,x,i) là hàm trạng thái sk(y i-1 , y i ,x,i) hoặc hàm dich chuyển t k (y i-1 ,
P(y|x,λ) =
) (
1
x
j j
j F (y,x)
2.2.7 Mô hình máy hỗ trợ vector (SVM)
Thuật toán máy vector hỗ trợ (Support Vector Machines - SVM) [17] được
Corters và Vapnik giới thiệu vào năm 1995 SVM rất hiệu quả để giải quyết các bài toán với dữ liệu có số chiều lớn như các vector biểu diễn văn bản Thuật toán SVM ban đầu chỉ được thiết kế để giải quyết bài toán phân lớp nhị phân tức là số lớp hạn chế là hai lớp Hiện nay, SVM được đánh giá là bộ phân lớp chính xác nhất cho bài toán phân lớp văn bản, bởi vì đó là bộ phân lớp tốc độ rất nhanh và hiệu quả đối với bài toán phân lớp văn bản
Phương pháp SVM được coi là phương pháp hiệu quả để giải quyết bài toán phân lớp với dữ liệu có số chiều lớn như các vector biểu diễn văn bản Về mặt lý thuyết, thuật toán phân lớp nhị phân này cũng có thể sử dụng cho bài toán phân lớp đa lớp bằng cách chuyển bài toán đa lớp thành bài toán nhị phân Tuy nhiên, đối với bài toán phân lớp văn bản sử dụng phương pháp SVM thì việc lựa chọn thuộc tính cho từng phân lớp lại là vấn đề cực kỳ quan trọng, nó quyết định đến hiệu quả của phân lớp
Máy học véctơ hỗ trợ (SVM) là một giải thuật máy học dựa trên lý thuyết học thống kê, dựa trên nguyên tắc tối thiểu rủi ro cấu trúc (Structural Risk Minimisation) SVM sẽ cố gắng tìm cách phân loại dữ liệu sao cho có lỗi xảy ra trên tập kiểm tra là nhỏ nhất (Test Error Minimisation) Đây là một phương pháp mới trong lĩnh vực trí tuệ nhân tạo Vào thời kỳ đầu khi SVM xuất hiện, khả năng tính toán của máy tính còn rất hạn chế, nên phương pháp SVM không được lưu tâm Tuy nhiên, từ năm 1995 trở lại đây, các thuật toán sử dụng cho SVM phát triển rất nhanh, cùng với khả năng tính toán mạnh mẽ của máy tính, đã có được những ứng dụng rất to lớn
Bài toán cơ bản của SVM là bài toán phân loại hai lớp: Cho trước n điểm trong không gian d chiều (mỗi điểm thuộc vào một lớp kí hiệu là +1 hoặc –1, mục đích của giải thuật SVM là tìm một siêu phẳng (hyperplane) phân hoạch tối ưu cho phép chia các điểm này thành hai phần sao cho các điểm cùng một lớp nằm về một phía với siêu phẳng này Hình 2 cho một minh họa phân lớp với SVM trong mặt phẳng
Trang 31Hi ̀nh 5: Ví dụ siêu phẳng với lề cực đại trong R 2 [17]
Xét tập dữ liệu mẫu có thể tách rời tuyến tính {(x1,y1),(x2,y2), ,(xn,yn)} với xi Rd và yi {±1} Siêu phẳng tối ưu phân tập dữ liệu này thành hai lớp là siêu phẳng có thể tách rời dữ liệu thành hai lớp riêng biệt với lề (margin) lớn nhất Tức
là, cần tìm siêu phẳng H: y = w.x + b = 0 và hai siêu phẳng H1, H2 hỗ trợ song song với H và có cùng khoảng cách đến H Với điều kiện không có phần tử nào của tập mẫu nằm giữa H1 và H2, khi đó:
w.x + b >= +1 với y = +1
w.x + b >= -1 với y = -1
Kết hợp hai điều kiện trên ta có y(w.x + b) >= 1
Khoảng cách của siêu phẳng H1 và H2 đến H là ||w||.Ta cần tìm siêu phẳng H với
lề lớn nhất, tức là giải bài toán tối ưu tìm min(w,b) ||w|| với ràng buộc y(w.x + b) >=
1 Người ta có thể chuyển bài toán sang bài toán tương đương nhưng dễ giải hơn là minw,b
1
2 ||w||2 với ràng buộc y(w.x + b) >= 1 Lời giải cho bài toán tối ưu này là cực tiểu hóa hàm Lagrange:
Trang 32Bảng 1: Một số hàm nhân thường dùng [17]
2.2.8 Mô hình mạng nơron hồi tiếp ( RNN)
Ý tưởng chính của RNN (Recurrent Neural Network) [25] là sử dụng chuỗi các
thông tin Trong các mạng nơ-ron truyền thống tất cả các đầu vào và cả đầu ra là độc lập với nhau Tức là chúng không liên kết thành chuỗi với nhau Nhưng các mô hình này không phù hợp trong rất nhiều bài toán Ví dụ, nếu muốn đoán từ tiếp theo
có thể xuất hiện trong một câu thì ta cũng cần biết các từ trước đó xuất hiện lần lượt thế nào chứ nhỉ?
RNN được gọi là hồi tiếp (Recurrent) bởi lẽ chúng thực hiện cùng một tác vụ cho tất cả các phần tử của một chuỗi với đầu ra phụ thuộc vào cả các phép tính trước đó Nói cách khác, RNN có khả năng nhớ các thông tin được tính toán trước đó Trên lý thuyết, RNN có thể sử dụng được thông tin của một văn bản rất dài, tuy nhiên thực
tế thì nó chỉ có thể nhớ được một vài bước trước đó (ta cùng bàn cụ thể vấn đề này sau) mà thôi Về cơ bản một mạng RNN có dạng như sau:
Trang 33Hi ̀nh 6: Mô hình 1 mạng RNN [25]
Mô hình trên mô tả phép triển khai nội dung của một RNN Triển khai ở đây có thể hiểu đơn giản là ta vẽ ra một mạng nơ-ron chuỗi tuần tự Ví dụ ta có một câu
gồm 5 chữ “Cuộc đời vẫn đẹp sao”, thì mạng nơ-ron được triển khai sẽ gồm 5 tầng
nơ-ron tương ứng với mỗi chữ một tầng Lúc đó việc tính toán bên trong RNN được thực hiện như sau:
• xt là đầu vào tại bước t Ví dụ, x1 là một vec-tơ one-hot tương ứng với từ thứ
2 của câu (đời)
• st là trạng thái ẩn tại bước t Nó chính là bộ nhớ của mạng st được tính toán dựa trên cả các trạng thái ẩn phía trước và đầu vào tại bước đó:
Trong lĩnh vực xử lý ngôn ngữ tự nhiên (NLP - Natural Language Processing),
đã ghi nhận được nhiều thành công của RNN cho nhiều vấn đề khác nhau Tại thời
(Long Short-Term Memory) thể hiện được sự ưu việt ở điểm có thể nhớ được nhiều bước hơn mô hình RNN truyền thống LSTM về cơ bản giống với cấu trúc của RNN truyền thống, chúng chỉ khác nhau ở cách tính toán của các nút ẩn
2.2.9 Mô hình mạng LSTM
Trang 34Mạng bộ nhớ ngắn hạn dài (Long Short Term Memory networks) [26], thường
được gọi là LSTM - là một dạng đặc biệt của RNN, nó có khả năng học được các phụ thuộc xa LSTM được giới thiệu bởi Hochreiter & Schmidhuber (1997), và sau
đó đã được cải tiến và phổ biến bởi rất nhiều người trong ngành Chúng hoạt động cực kì hiệu quả trên nhiều bài toán khác nhau nên dần đã trở nên phổ biến như hiện nay
LSTM là một mạng cải tiến của RNN nhằm giải quyết vấn đề nhớ các bước dài của RNN Về cơ bản mô hình của LSTM không khác mô hình truyền thống của RNN, nhưng chúng sử dụng hàm tính toán khác ở các trạng thái ẩn Bộ nhớ của LSTM được gọi là tế bào (Cell) và chúng là các hộp đen nhận đầu vào là trạng thái phía trước ht−1 và đầu vào hiện tại xt Bên trong hộp đen này sẽ tự quyết định cái gì
cần phải nhớ và cái gì sẽ xoá đi Sau đó, chúng sẽ kết hợp với trạng thái phía trước, nhớ hiện tại và đầu vào hiện tại Vì vậy mà ta ta có thể truy xuất được quan hệ của các từ phụ thuộc xa nhau rất hiệu quả
LSTM được thiết kế để tránh được vấn đề phụ thuộc xa (long-term dependency) Việc nhớ thông tin trong suốt thời gian dài là đặc tính mặc định của chúng, chứ ta không cần phải huấn luyện nó để có thể nhớ được Tức là ngay nội tại của nó đã có thể ghi nhớ được mà không cần bất kì can thiệp nào
Mọi mạng hồi quy đều có dạng là một chuỗi các mô-đun lặp đi lặp lại của mạng nơ-ron Với mạng RNN chuẩn, các mô-dun này có cấu trúc rất đơn giản, thường là
một tầng tanh tanh
LSTM cũng có kiến trúc dạng chuỗi như vậy, nhưng các mô-đun trong nó có cấu trúc khác với mạng RNN chuẩn Thay vì chỉ có một tầng mạng nơ-ron, chúng có tới
4 tầng tương tác với nhau một cách rất đặc biệt