ĐẠI HỌC QUỐC GIA HÀ NỘI TRƯỜNG ĐẠI HỌC CÔNG NGHỆ Phạm Thị Quỳnh Trang Phân tích dữ liệu văn bản dựa trên học máy thế giới mở và ứng dụng LUẬN VĂN TỐT NGHIỆP THẠC SĨ HỆ CHÍNH QUY Ngàn
Trang 1ĐẠI HỌC QUỐC GIA HÀ NỘI
TRƯỜNG ĐẠI HỌC CÔNG NGHỆ
Phạm Thị Quỳnh Trang
Phân tích dữ liệu văn bản dựa trên học máy thế giới mở
và ứng dụng LUẬN VĂN TỐT NGHIỆP THẠC SĨ HỆ CHÍNH QUY
Ngành: Hệ thống thông tin
Trang 2ĐẠI HỌC QUỐC GIA HÀ NỘI
TRƯỜNG ĐẠI HỌC CÔNG NGHỆ
Trang 3LỜI CẢM ƠN
Đầu tiên, em xin gửi lời biết ơn chân thành và sâu sắc nhất đến thầy giáo PGS TS
Hà Quang Thụy, người đã luôn động viên, nhiệt tình hướng dẫn và tạo mọi điều kiện tốt
nhất cho em hoàn thành được luận văn
Em xin chân thành cảm ơn các thầy cô, các anh chị em trong phòng thí nghiệm Công
nghệ và tri thức đã luôn giúp đỡ và động viên tinh thần trong thời gian em học tập và
công tác
Em chân thành cảm ơn quý Thầy, Cô trong Khoa Công Nghệ Thông Tin nói riêng và
trường đại học Công Nghệ - Đại học Quốc Gia Hà Nội nói chung đã tận tình truyền đạt
những kiến thức quý báu trong quá trình học tập tại Trường
Cuối cùng, em xin cảm ơn những người thân yêu của em, đặc biệt là chồng em đã
luôn động viên, tạo điều kiện tốt nhất cho em trong quá trình học tập và hoàn thành luận
văn
Em xin chân thành cảm ơn!
Luận văn này được thực hiện trong khuôn khổ đề tài Nafostef mã số:
102.05-2016.14 “Nghiên cứu và phát triển các mô hình học máy tiên tiến phát hiện và trích xuất
mối quan hệ tác dụng phụ của thuốc/hóa chất và bệnh từ văn bản y-sinh”, năm 2016
Trang 4LỜI CAM ĐOAN
Tôi xin cam đoan rằng luận văn thạc sĩ công nghệ thông tin “Phân tích dữ liệu văn bản dựa trên học máy thế giới mở và ứng dụng” là công trình nghiên cứu của riêng tôi, không sao chép lại của người khác Trong toàn bộ nội dung của luận văn, những điều đã được trình bày hoặc là của chính cá nhân tôi hoặc là được tổng hợp từ nhiều nguồn tài liệu Tất cả các nguồn tài liệu tham khảo đều có xuất xứ rõ ràng và hợp pháp
Tôi xin hoàn toàn chịu trách nhiệm và chịu mọi hình thức kỷ luật theo quy định cho lời cam đoan này
Hà Nội, ngày 15 tháng 12 năm 2019 Học viên
Phạm Thị Quỳnh Trang
Trang 5Mục Lục
LỜI CẢM ƠN i
LỜI CAM ĐOAN ii
TÓM TẮT iv
DANH SÁCH THUẬT NGỮ VÀ TỪ VIẾT TẮT v
DANH SÁCH BẢNG vi
DANH SÁCH HÌNH ẢNH vii
Mở đầu 1
Chương 1 Học máy thế giới mở và bài toán chuẩn hóa tên thực thể bệnh 3
1.1 Học máy truyền thống 3
1.2 Học máy suốt đời 5
1.2.1 Định nghĩa học máy suốt đời 7
1.2.2 Các hướng nghiên cứu LL 12
1.3 Học máy thế giới mở 12
1.4 Mục tiêu của luận văn 15
Kết luận Chương 1 17
Chương 2 Học sâu thế giới mở cho văn bản 18
2.1 Học thế giới mở không gian đơn giản trung tâm 18
2.1.1 Tăng cường cập nhật mô hình học CBS 18
2.1.2 Kiểm tra mô hình học CBS 20
2.1.3 Học CBS cho phát hiện lớp chưa thấy 20
2.2 Học sâu thế giới mở phân lớp văn bản 21
2.2.1 CNN và các lớp chuyển tiếp của DOC 22
2.2.2 Tầng 1- với-phần còn lại 23
2.2.2 Giảm rủi ro không gian mở 23
Kết luận Chương 2 24
Trang 6Chương 3: Ứng dụng mô hình DOC vào chuẩn hóa tên bệnh 25
3.1 Ứng dụng chuẩn hóa tên thực thể bệnh 25
3.2.1 Mô hình đề xuất 27
Bộ phân giải viết tắt 28
Mạng nơ ron học sâu thế giới mở 28
Kết luận Chương 3 30
Chương 4: Thực nghiệm và đánh giá 31
4.1 Dữ liệu thực nghiệm chuẩn hoá tên bệnh 31
4.2 Môi trường và các công cụ thực nghiệm 32
4.3 Kết quả và đánh giá 32
Kết luận 36
Tài liệu tham khảo 37
Trang 7TÓM TẮT
Phân tích dữ liệu văn bản dựa trên học máy thế giới mở và ứng dụng
Phạm Thị Quỳnh Trang
Khóa học: QH-2013- I/CQ Ngành: Hệ thống thông tin
Tóm tắt: Học máy suốt đời (Lifelong Machine Learning: LML) là một tiếp cận học máy liên tục,
trích chọn và lưu giữ tri thức từ quá khứ để sử dụng khi giải quyết các bài toán học mới Học thế giới mở, một dạng của học máy suốt đời, có năng lực phát hiện các trường hợp chưa từng thấy để hình thành các bài toán mới Phân lớp thế giới mở thực hiện ba bài toán thành phần là (i) Phát hiện những thực thể mới, không thể thuộc vào các lớp hiện có, (ii) Xây dựng mô hình phân lớp cho các lớp mới, và (iii) hiệu chỉnh các mô hình phân lớp vốn có để nâng cao hiệu năng bộ phân lớp khi có thêm các lớp mới
Dựa trên mô hình phân lớp học sâu thế giới mở DOC (Deep Open Classification) của L Shu và cộng sự, luận văn đề nghị mô hình ứng dụng phân lớp học sâu thế giới mở cho bài toán chuẩn hoá thực thể tên và phân lớp quan hệ trong văn bản y sinh Việc trích xuất tự động tri thức
từ văn bản đóng vai trò quan trọng trong học suốt đời Nó bao gồm ba bước chính: nhận dạng các thực thể tên, chuẩn hoá thực thể tên và phân loại quan hệ giữa chúng Hai bước sau thường hay xuất hiện các đối tượng mới, đặc biệt là trong lĩnh vực y sinh
Các kết quả thực nghiệm trên bộ dữ liệu chuẩn đã chỉ ra tính hiệu quả của mô hình đề xuất trong vấn đề nhận dạng được các đối tượng mới chưa xuất hiện khi huấn luyện mô hình và trong vấn đề chuẩn hoá tên Đặc biệt, mô hình chuẩn hoá thực thể tên có thể đạt giá trị độ đo F1 = 80%, tốt hơn của các phương pháp cùng thể loại tính đến thời điểm hiện tại
Từ khóa: Học máy suốt đời, học thế giới mở, học sâu, chuẩn hoá tên thực thể bệnh
Trang 8DANH SÁCH THUẬT NGỮ VÀ TỪ VIẾT TẮT
SVM Support Vector Machines/Máy vector hỗ trợ
CNN Convolutional neural network/Mạng nơ ron tích chập
LL Life long learning/Học suốt đời
ML Machine learning/Học máy DOC Deep Open Classification/Phân lớp mở sâu CBS Center Based Similarity/Độ tương tự dựa trên trung tâm NNO Nearest Non-Outlier/Không ngoại lai gần nhất
Trang 9DANH SÁCH BẢNG
Bảng 1.1: Bảng 1.1 - Một ví dụ về bài toán chuẩn hoá tên bệnh 17
Bảng 3.1 - Một ví dụ về bài toán chuẩn hoá tên thực thể thuốc ……….27
Bảng 4.1: Thống kê dữ liệu thực nghiệm chuẩn hóa tên bệnh 33
Bảng 4.2: Các công cụ thực nghiệm 34
Bảng 4.3: So sánh kết quả sử dụng dữ liệu cả câu và dữ liệu SDP trên số lớp đã biết khác nhau của tập dữ liệu SemEval-2010 Task 8 37
Bảng 4.4: Tổng hợp kết quả mô hình DOC chuẩn hóa thực thể tên bệnh 38
Bảng 4.5: Kết quả thực nghiệm và so sánh 38
Trang 10
DANH SÁCH HÌNH ẢNH
Hình 1.1: Kiến trúc mô hình học máy cổ điển. 4
Hình 2.1: Kiến trúc tổng quan của hệ thống học suốt đời 10
Hình 2.1: Mô hình tổng quan DOC 22
Hình 2.2: Mô hình tổng quan DOC 23
Hình 3.1: Định danh, tên chính hay dùng và các tên đồng nghĩa của một bệnh trong MEDIC. 27
Hình 3.1: Mô hình đường ống chuẩn hoá thực thể tên bệnh. 28
Hình 3.2: Kiến trúc hệ thống chuẩn hoá tên thực thể y sinh dựa trên mạng nơ ron tích chập do Cho và cộng sự đề xuất [9] 28
Trang 11
Mở đầu
Trong cuộc sống, con người học hỏi suốt đời để tích lũy tri thức, vận dụng tri thức và kỹ năng tích lũy được để giải quyết các vấn đề/tác vụ mới gặp phải, từ đó giúp cho việc học nhanh hơn và hiệu quả hơn Trong quá trình tiến hóa hàng triệu năm của loài người, khả năng học suốt đời đã giúp con người thích nghi, tồn tại và phát triển được trong nhiều môi trường sống khắc nghiệt khác nhau
Học máy suốt đời, là một hướng nghiên cứu học máy mới nhằm mục đích bắt chước quá trình và khả năng học tập suốt đời của con người trong các môi trường mở, đầy biến động Kiểu học này khá tự nhiên vì mọi thứ xung quanh chúng ta có liên quan chặt chẽ và liên kết với nhau Con người chúng ta luôn giữ lại kiến thức đã học trong quá khứ và sử dụng nó để giúp học tập và giải quyết vấn đề trong tương lai Học máy suốt đời là bước tiến hoá hợp lý tiếp theo của học máy cổ điển; nó là hướng nghiên cứu mới nổi và đầy hứa hẹn để khắc phục những thiếu sót đó của học máy cổ điển, với mục tiêu cuối cùng là xây dựng những cỗ máy học hỏi như con người
Học thế giới mở, là một hình thức của học máy suốt đời, không yêu cầu giả định thế giới đóng, có khả năng phát hiện các trường hợp của các lớp chưa thấy trong quá trình hoạt động của hệ thống học Nó có khả năng xây dựng mô hình phân lớp cho các lớp mới và cập nhật mô hình phân lớp cho các lớp đã có mà không học lại toàn bộ các mô hình từ đầu
Việc trích xuất tự động tri thức từ văn bản đóng vai trò quan trọng trong học suốt đời
Nó bao gồm ba bước chính: nhận dạng các thực thể tên, chuẩn hoá thực thể tên và phân loại quan hệ giữa chúng Hai bước sau thường hay xuất hiện các đối tượng mới, đặc biệt là trong lĩnh vực y sinh, với rất nhiều thách thức, khi cần phải xác định một biểu hiện tên bệnh mới xuất hiện có thuộc về một thực thể tên bệnh đã có hay là biểu hiện của một tên bệnh mới Trong trường hợp này, mô hình phân lớp thế giới mở là phù hợp để giải quyết bài toán
Nội dung của luận văn được tổ chức thành các chương như sau:
Trang 12Chương 1 trình bày một giới thiệu tổng quan về học máy suốt đời và học máy thế
giới mở Tiếp đó, bài toán chuẩn hoá thực thể tên bệnh trong văn bản y sinh được giới thiệu
Chương 2 trình bày mô hình phân lớp văn bản thế giới mở dựa trên kỹ thuật học sâu Chương 3 trình bày mô hình ứng dụng phân lớp thế giới mở dựa trên kỹ thuật học
sâu cho chuẩn hoá thực thể tên bệnh, là bước tiền đề cho việc trích xuất các quan hệ giữa các thực thể y sinh Các quan hệ được biểu diễn trong văn bản là các tri thức tồn tại dưới định dạng chỉ con người mới “đọc hiểu” được Việc trích xuất quan hệ từ văn bản sẽ tạo
ra cơ sở dữ liệu tri thức, là thành phần quan trọng của học máy suốt đời
Chương 4 trình bày các kết quả thực nghiệm của mô hình ứng dụng được đề xuất trong Chương 3, cũng như các phân tích các kết quả thực nghiệm này
Phần Kết luận tóm lược kết quả đạt được của khóa luận và định hướng phát triển
tương lai
Trang 13Chương 1 Học máy thế giới mở
và bài toán chuẩn hóa tên thực thể bệnh
Học máy (Machine Learning: ML) đã là công cụ cho sự tiến bộ của cả phân tích dữ liệu và trí tuệ nhân tạo (Artificial Intelligence: AI) Thành công gần đây của học sâu đã đưa ML lên một tầm cao mới Các thuật toán ML đã được áp dụng trong hầu hết các lĩnh vực khoa học máy tính, khoa học tự nhiên, kỹ thuật, khoa học xã hội và hơn thế nữa Nếu không có thuật toán ML hiệu quả, nhiều ngành sẽ không tồn tại hoặc phát triển, ví dụ: thương mại điện tử và tìm kiếm trên web Tuy nhiên, mô hình ML hiện tại không phải không có điểm yếu Trước tiên luận văn sẽ giới thiệu về mô hình ML cổ điển và những thiếu sót của nó, sau đó giới thiệu Lifelong ML (Học suốt đời (LL) và học thế giới mở (OpenWorld ML, một dạng học máy suốt đời) như một hướng đi mới nổi và đầy hứa hẹn
để khắc phục những thiếu sót đó với mục tiêu cuối cùng là xây dựng những cỗ máy học hỏi như con người [2] Bài toán chuẩn hóa tên thực thể bệnh trong văn bản y sinh dưới dạng một bài toán học thế giới mở sẽ được giới thiệu ở cuối chương
1.1 Học máy truyền thống
Mô hình ML phổ biến hiện nay là chạy thuật toán ML trên tập dữ liệu đã cho để tạo
mô hình Mô hình này sau đó được áp dụng trong các nhiệm vụ thực tế Mô hình học này được gọi là mô hình cô lập bởi vì nó không xem xét bất kỳ thông tin liên quan nào khác hoặc tri thức đã học, tích luỹ được trước đó (xem Hình 1) [2] Vấn đề cơ bản của mô hình học tập cô lập này là nó không lưu giữ và tích lũy kiến thức đã học trong quá khứ và sử dụng nó trong tương lai Điều này trái ngược hoàn toàn với việc học của con người Con người chúng ta luôn tích luỹ lại kiến thức đã học trong quá khứ và sử dụng nó để giúp học tập và giải quyết vấn đề mới trong tương lai Không có khả năng tích lũy và sử dụng kiến thức trong quá khứ, thuật toán ML thường cần một số lượng lớn các ví dụ huấn luyện để học hiệu quả Các môi trường học thường là tĩnh và đóng Đối với việc học có giám sát, việc gán nhãn dữ liệu huấn luyện thường được thực hiện thủ công, rất tốn công sức và thời gian Vì thế giới quá phức tạp với nhiều nhiệm vụ khác hẳn nhau, nên gần như không thể gán nhãn một số lượng lớn các ví dụ cho mọi nhiệm vụ để thuật toán ML có thể học hiệu quả Tệ hơn nữa, mọi thứ xung quanh chúng ta luôn thay đổi liên tục, do đó việc gán nhãn cần phải được thực hiện liên tục; đó là một việc hết sức khó khăn đối với con người
Trang 14Ngay cả đối với học không giám sát, việc thu thập một khối lượng dữ liệu lớn có thể không thực hiện được trong nhiều trường hợp
Hình 1.1 Kiến trúc mô hình học máy cổ điển [2]
Mô hình học cô lập cổ điển không thể thực hiện được việc học suốt đời Như đã đề cập trước đó, nó chỉ phù hợp cho các nhiệm vụ hẹp và hạn chế trong môi trường kín Nó cũng có thể không đủ để xây dựng một hệ thống thông minh có thể học liên tục để đạt được mức độ thông minh như con người LL nhằm mục đích đạt được tiến bộ theo hướng này Với sự phổ biến của robot, trợ lý ảo thông minh, LL ngày càng trở nên quan trọng vì các hệ thống này phải tương tác với con người và/hoặc các hệ thống khác, liên tục học hỏi trong quá trình hoạt động và duy trì kiến thức đã học trong các tương tác của chúng trong các môi trường khác nhau, qua đó có thể hoạt động tốt hơn theo thời gian
Trong 25 năm qua, đã có những tiến bộ đáng kể trong lý thuyết học máy và thuật toán Tuy nhiên, hiện vẫn có rất ít thuật toán có khả năng học nhiều nhiệm vụ khác nhau trong một thời gian dài
Học có giám sát cổ điển đưa ra giả định thế giới khép kín, có nghĩa là tất cả các lớp
dữ liệu lúc kiểm tra đều đã xuất hiện trong lúc học [1, 5, 6] Mặc dù giả định này đúng trong nhiều ứng dụng, nhưng nó bị vi phạm ở nhiều ứng dụng khác, đặc biệt là trong môi trường động và mở; trong đó các dữ liệu của các lớp không mong muốn có thể xuất hiện trong lúc kiểm tra hoặc hệ thống đi vào hoạt động Ví dụ, khi đọc, hệ thống có thể thấy một từ mới mà nó không biết, khi đó hệ thống phải học nó bằng cách tra từ trong từ điển Trong cuộc trò chuyện giữa người và máy, trợ lý ảo có thể không hiểu một số điều được nói bởi người dùng và sau đó nó cần yêu cầu người dùng giải thích thêm để tìm hiểu Để
Trang 15học trong một môi trường mở như vậy, chúng ta cần học thế giới mở (phân loại thế giới
mở hoặc đơn giản là phân loại mở), trong đó phải phát hiện được các lớp chưa xuất hiện trong quá trình huấn luyện mô hình, và sau đó thêm dần các lớp mới này vào mô hình mà không phải huấn luyện lại toàn bộ mô hình từ đầu Hình thức học này còn được gọi là học tích lũy trong [5] Luận văn này sẽ tập trung vào mô hình học có giám sát thế giới mở.Học có giám sát truyền thống dựa trên giả định thế giới đóng với các lớp trong tập
dữ liệu kiểm tra (test) đều đã xuất hiện trong dữ liệu huấn luyện D khi huấn luyện mô hình
D = {(x1, y1), (x2, y2), , (xn, yn)}
-xi là dữ liệu thứ i, yi ∈ {l1, l2, , lm} = Y là lớp/nhãn của xi
Khi đó cần xây mô hình f(x) có khả năng phân loại dữ liệu x trong tập test vào một trong m lớp đã biết trong Y
Giả thiết thế giới đóng không đúng với nhiều ứng dụng trong thực tế, đặc biệt trong môi trường mở, biến động Ví dụ, đối với dữ liệu truyền thông mạng xã hội luôn có thêm những chủ đề mới được bàn luận, hay với ứng dụng xe tự lái thường có các lớp đối tượng mới xuất hiện, hay các tên bệnh mới có thể chưa có số định danh trong CSDL
1.2 Học máy suốt đời
Trong cuộc sống, con người luôn phải học hỏi suốt đời, thông qua việc tích lũy, vận dụng tri thức và kỹ năng có sẵn để giải quyết các vấn đề/tác vụ mới gặp phải, từ đó giúp cho việc học nhanh hơn và hiệu quả hơn Trong quá trình tiến hóa hàng triệu năm của loài người, khả năng học suốt đời đã giúp con người thích nghi, sống sót và phát triển được trong nhiều môi trường sống khắc nghiệt khác nhau
Lấy ví dụ về năng lực giao tiếp, học suốt đời giúp chúng ta có khả năng sử dụng ngôn ngữ để giao tiếp với nhau thông qua các công cụ, các khái niệm (tri thức) hữu dụng học được từ cha mẹ và giáo viên Đầu tiên, các từ và cụm từ có ý nghĩa gần như giống nhau trong tất cả các lĩnh vực và tất cả các nhiệm vụ Thứ hai, các câu trong mỗi ngữ cảnh sử dụng đều tuân theo cùng một cú pháp Thứ ba, gần như tất cả các vấn đề về ngôn ngữ
tự nhiên có liên quan chặt chẽ với nhau, điều đó có nghĩa là chúng có liên kết với nhau và ảnh hưởng lẫn nhau theo một số cách
Trang 16Hai lý do đầu tiên ở trên đảm bảo rằng kiến thức đã học có thể được sử dụng trong các tác vụ khác nhau (của các lĩnh vực khác nhau) Đó là lý do tại sao con người chúng ta không cần phải học lại ngôn ngữ (hoặc học một ngôn ngữ mới) mỗi khi chúng ta bắt gặp một miền ứng dụng mới Ví dụ, giả sử chúng ta chưa bao giờ nghiên cứu tâm lý học, và bây giờ muốn nghiên cứu nó Chúng ta không cần phải học lại ngôn ngữ được sử dụng trong văn bản tâm lý học, ngoại trừ một số khái niệm mới trong lĩnh vực tâm lý học Lý
do thứ ba ở trên đảm bảo rằng kiến thức về ngôn ngữ của chúng ta có thể được sử dụng trên các loại nhiệm vụ khác nhau Ví dụ, giả sử chúng ta đã tích luỹ được tri thức rằng:
“iPhone là sản phẩm và mọi sản phẩm đều có giá của nó” và tính từ “đắt” mô tả thuộc tính giá của một sản phẩm Sau đó, từ câu nhận xét: “Chất lượng hình ảnh của iPhone
rất tuyệt, nhưng nó khá đắt”, thông qua việc sử dụng các kiến thức được tích luỹ từ trước,
chúng ta có thể dễ dàng nhận ra rằng “chất lượng hình ảnh” là một tính năng hoặc thuộc tính của iPhone và “nó/it” là để chỉ “iPhone” chứ không phải là thuộc tính “chất lượng
hình ảnh” của iPhone Hai vấn đề này có liên quan chặt chẽ với nhau và có thể giúp đỡ
lẫn nhau vì kết quả từ một vấn đề có thể hữu ích cho những người khác, trong việc xử lý nhiệm vụ khác
Hiện tượng trên không chỉ đúng cho khả năng học ngôn ngữ của con người mà còn đúng cho bất kỳ lĩnh vực nào khác bởi vì mọi thứ trên thế giới có liên quan và liên kết với nhau Do đó, kiến thức học được trong quá khứ trong một số lĩnh vực có thể được áp dụng trong một số lĩnh vực khác có bối cảnh tương tự
Học máy suốt đời được phát triển nhằm mục đích bắt chước quá trình và khả năng học tập suốt đời của con người Kiểu học này khá tự nhiên vì mọi thứ xung quanh chúng
ta có liên quan chặt chẽ và liên kết với nhau Kiến thức đã học về một số môn học có thể giúp chúng ta hiểu và học một số môn học khác Ví dụ, con người chúng ta không cần 1.000 đánh giá tích cực và 1.000 đánh giá tiêu cực về phim trực tuyến như thuật toán ML cần để xây dựng bộ phân loại đánh giá tích cực và tiêu cực về các bộ phim Trong thực tế, đối với nhiệm vụ này, không cần có một ví dụ huấn luyện, con người chúng ta cũng đã có thể thực hiện nhiệm vụ phân loại này Lý do rất đơn giản Đó là bởi vì con người chúng ta đã tích lũy rất nhiều kiến thức trong quá khứ về các cách mà mọi người sử dụng để khen hoặc chỉ trích mọi thứ, mặc dù có thể rất ít trong số những lời khen hoặc phê bình đó là về các bộ phim trực tuyến
Trang 17Nếu chúng ta không có kiến thức tích luỹ được từ quá khứ như vậy, con người chúng
ta có thể không thể tự xây dựng một bộ phân loại tốt ngay cả khi có tập huấn luyện gồm 1.000 đánh giá tích cực và 1.000 đánh giá tiêu cực Ví dụ: nếu bạn không có kiến thức về tiếng Ả Rập và ai đó cung cấp cho bạn 2.000 đánh giá được dán nhãn bằng tiếng Ả Rập và yêu cầu bạn xây dựng một bộ phân loại theo cách thủ công, rất có thể bạn sẽ không thể làm điều đó nếu không sử dụng trình dịch
Mặc dù LL đã được đề xuất hơn 20 năm trước, nhưng nghiên cứu trong lĩnh vực này vẫn chưa phát triển mạnh Một số lý do có thể như sau [2]:
- Đầu tiên, cộng đồng nghiên cứu ML trong 20 năm qua đã tập trung vào các phương pháp thống kê và thuật toán LL thường cần một cách tiếp cận hệ thống kết hợp nhiều thành phần và thuật toán học
- Thứ hai, phần lớn các nghiên cứu và ứng dụng ML trước đây tập trung vào việc học
có giám sát bằng cách sử dụng dữ liệu có cấu trúc, điều này không dễ dàng đối với
LL vì có rất ít điểm giống nhau giữa các nhiệm vụ hoặc lĩnh vực Ví dụ, kiến thức học được từ hệ thống học có giám sát trong đơn xin vay vốn khó được sử dụng trong ứng dụng y tế hoặc giáo dục vì chúng không có nhiều điểm chung Ngoài ra, hầu hết các thuật toán học có giám sát không tạo ra tri thức nào ngoài mô hình phân lớp cuối cùng
Mô hình được tạo ra rất khó được sử dụng làm tri thức tiền nghiệm cho một nhiệm vụ phân lớp khác, ngay cả trong một lĩnh vực tương tự
- Thứ ba, nhiều phương pháp ML hiệu quả như SVM và học sâu không thể dễ dàng sử dụng tri thức tiền nghiệm Các bộ phân lớp này là hộp đen với cơ chế hoạt động rất khó để giải thích Chúng thường hoạt động chính xác hơn trên dữ liệu huấn luyện; càng nhiều dữ liệu hoạt động càng tốt
1.2.1 Định nghĩa học máy suốt đời
Năm 1996, Thrun đã đưa ra một định nghĩa về học máy suốt đời như sau:
“Tại bất kỳ thời điểm nào, hệ thống đã học cách thực hiện N nhiệm vụ Khi đối mặt với nhiệm vụ N + 1, nó sử dụng kiến thức thu được từ N nhiệm vụ trước để giúp giải quyết nhiệm vụ thứ N + 1.” [2]
Năm 2018, Z Chen và B Liu [2] đã mở rộng định nghĩa này bằng cách cung cấp cho nó thêm các chi tiết và các tính năng bổ sung, bao gồm: (i) một hệ cơ sở tri thức
Trang 18tường minh (Knowlegde Base) được thêm vào để lưu lại tri thức đã học được từ các nhiệm vụ trước; (ii) khả năng khám phá các nhiệm vụ học mới; (iii) khả năng học trong khi làm (hoặc học trong công việc) Định nghĩa của Chen và Liu được phát biểu như sau:
“Học máy suốt đời (LL) là một quá trình học liên tục Tại bất kỳ thời điểm nào, bộ học đã thực hiện một chuỗi N nhiệm vụ học T 1 , T 2 , , T N Các nhiệm vụ này, còn được gọi là các nhiệm vụ trước, có N bộ dữ liệu tương ứng D 1 , D 2 , ., D N Các nhiệm vụ có thể thuộc các loại khác nhau và từ các miền khác nhau Khi phải đối mặt với nhiệm vụ mới N + 1 là T N+1 (được gọi là nhiệm vụ mới hoặc hiện tại) với dữ liệu D N+1 , bộ học có thể tận dụng kiến thức trong quá khứ được lưu trong hệ cơ
sở tri thức (KB) để giải quyết T N+1 Nhiệm vụ có thể được đưa ra hoặc được phát hiện bởi chính hệ thống (xem bên dưới) Mục tiêu của LL thường là tối ưu hóa hiệu suất của nhiệm vụ mới T N+1 , nhưng nó có thể tối ưu hóa bất kỳ nhiệm vụ nào bằng cách coi các nhiệm vụ còn lại là các nhiệm vụ trước KB duy trì tri thức đã học và tích lũy từ việc học các nhiệm vụ trước đó Sau khi hoàn thành việc học T N+1 , KB được cập nhật tri thức mới có được từ việc học T N+1 Việc cập nhật có thể liên quan đến việc kiểm tra tính nhất quán, lập luận và khai phá siêu tri thức cấp cao hơn” [2]
Có hai loại nhiệm vụ trong hệ thống học suốt đời:
- Nhiệm vụ độc lập: Mỗi nhiệm vụ Ti độc lập với các nhiệm vụ khác Điều này có nghĩa là mỗi nhiệm vụ có thể được học độc lập, mặc dù do sự tương đồng và chia sẻ một số cấu trúc hoặc kiến thức tiềm ẩn, việc học Ti có thể tận dụng kiến thức thu được từ việc học các nhiệm vụ trước đó
- Nhiệm vụ phụ thuộc: Mỗi nhiệm vụ Ti có một số phụ thuộc vào một số nhiệm vụ khác Ví dụ, trong học tập thế giới mở, mỗi nhiệm vụ học có giám sát mới sẽ thêm một lớp mới vào bài toán phân lớp trước đó và cần xây dựng một trình phân lớp nhiều lớp mới có khả năng phân loại dữ liệu từ tất cả các lớp trước và hiện tại
Việc chuyển sang nhiệm vụ mới có thể xảy ra đột ngột hoặc dần dần, và các nhiệm vụ và
dữ liệu của chúng không phải được cung cấp bởi một số hệ thống bên ngoài hoặc người dùng Một bộ học suốt đời lý tưởng có thể tự phát hiện ra các nhiệm vụ học và dữ liệu đào tạo của riêng mình khi tương tác với con người và môi trường hoặc sử dụng kiến thức đã học trước đó để thực hiện học trong thế giới mở và tự giám sát
Trang 19Từ định nghĩa trên, có thể thấy LL có năm đặc điểm chính sau [2]:
1 Học liên tục
2 Tri thức được tích luỹ và lưu giữ trong KB
3 Sử dụng tri thức tích lũy trong quá khứ để học trong tương lai
4 Có khả năng khám phá ra các nhiệm vụ mới
5 Có khả năng học trong khi làm việc hoặc học trong công việc
Không có những khả năng này, một hệ thống ML sẽ không thể tự học trong môi trường mở, luôn biến động; hệ quả là sẽ không bao giờ thực sự thông minh
Vì kiến thức được tích lũy và sử dụng trong LL, do đó, LL có liên quan đến nhiều khía cạnh khác của trí tuệ nhân tạo cho ML, ví dụ: biểu diễn tri thức, thu nhận, lập luận và duy trì tri thức Tri thức tích luỹ được không chỉ có thể giúp cải thiện việc học trong tương lai, mà còn có thể giúp thu thập và gán nhãn dữ liệu huấn (tự giám sát) và khám phá các nhiệm vụ mới có khả năng sẽ được học Con người có khả năng tích hợp của cả học dựa trên dữ liệu và học dựa trên tri thức ML hiện tại tập trung gần như hoàn toàn vào việc học tối ưu dựa trên dữ liệu, điều mà con người chúng ta không giỏi Thay vào đó, chúng ta rất giỏi học dựa trên tri thức trước đây của chúng ta Chúng ta càng biết nhiều thì chúng ta học càng dễ hơn
LL có thể yêu cầu một cách tiếp cận có hệ thống kết hợp nhiều thuật toán học và các
sơ đồ biểu diễn tri thức khác nhau Một thuật toán học duy nhất có thể không đạt được mục tiêu của LL Trên thực tế, LL đại diện cho một không gian vấn đề rất lớn và phong phú Kiến trúc hệ thống LL được thể hiện trong Hình 1.2 Không phải tất cả các hệ thống
LL hiện có đều sử dụng tất cả các thành phần như trong hình Trong thực tế, hầu hết các hệ thống hiện tại đơn giản hơn nhiều Hơn nữa, vẫn chưa có một hệ thống LL chung có thể thực hiện LL trong tất cả các miền có thể, cho tất cả các loại nhiệm vụ có thể Trong thực tế, chúng ta vẫn còn ở rất xa điều đó
Trang 20Hình 1.2 Kiến trúc tổng quan của hệ thống học suốt đời [2]
Một hệ thống LL điển hình sẽ có các thành phần cơ bản sau [2]:
- Hệ cơ sở tri thức (KB): Chủ yếu để lưu trữ tri thức đã học trước đó Nó có một vài
thành phần phụ:
Kho thông tin quá khứ (PIS): lưu trữ thông tin kết quả từ quá trình học trước
đây, bao gồm các mô hình kết quả, mô hình hoặc các dạng kết quả khác PIS
có thể chứa các thông tin liên quan như: (1) dữ liệu gốc được sử dụng trong mỗi nhiệm vụ trước, (2) kết quả trung gian từ mỗi nhiệm vụ trước và (3) mô hình cuối cùng hoặc các mẫu được học từ mỗi nhiệm vụ trước
Công cụ khai thác kiến thức tổng hợp (MKM): thực hiện khai thác siêu kiến
thức trong PIS và trong kho siêu tri thức (xem bên dưới)
Kho siêu kiến thức (MKS): lưu trữ kiến thức được khai thác hoặc tích hợp từ
PIS và cũng như từ chính MKS
Bộ lập luận trên tri thức (KR): suy luận dựa trên tri thức trong MKB và PIS để
tạo thêm tri thức mới Hầu hết các hệ thống hiện tại không có thành phần phụ này Tuy nhiên, với sự tiến bộ của LL, thành phần này sẽ ngày càng trở nên quan trọng
Trang 21- Bộ học dựa trên tri thức (KBL): Đối với LL, bộ học cần có khả năng sử dụng tri
thức tích luỹ được khi học Một bộ học như vậy là bộ học dựa trên tri thức, có thể tận dụng tri thức trong KB để học nhiệm vụ mới Thành phần này có thể có hai thành phần phụ:
Công cụ khai phá tri thức nhiệm vụ (TKM), sử dụng thông tin hoặc thông tin thô trong KB để khai thác hoặc xác định kiến thức phù hợp với nhiệm vụ hiện tại Điều này là cần thiết bởi vì trong một số trường hợp, KBL không thể sử dụng trực tiếp kiến thức thô trong KB mà cần một số kiến thức cụ thể và cụ thể hơn được khai thác từ KB
Bộ học có thể tận dụng kiến thức khai thác trong quá trình học
- Công cụ khai thác kiến thức dựa trên nhiệm vụ (TKM): Mô-đun này khai thác
kiến thức từ KB đặc biệt cho nhiệm vụ mới
- Mô hình: Đây là các mô hình đã học, có thể là mô hình dự đoán hoặc phân loại
trong học tập được giám sát, các cụm hoặc chủ đề trong học tập không giám sát, một chính sách trong học tập củng cố, v.v
- Ứng dụng: Đây là ứng dụng của mô hình trong thế giới thực Điều quan trọng cần
lưu ý là trong quá trình áp dụng mô hình, hệ thống vẫn có thể học kiến thức mới (tức là, kiến thức về các kết quả, và có thể khám phá các nhiệm vụ mới sẽ được học Ứng dụng cũng có thể cung cấp phản hồi cho người học dựa trên kiến thức để cải tiến mô hình
- Trình quản lý tác vụ (TM): Nó nhận và quản lý các tác vụ đến trong hệ thống, xử
lý sự thay đổi nhiệm vụ và trình bày nhiệm vụ học tập mới cho KBL theo cách trọn đời
- Quy trình học tập suốt đời: Một quy trình LL điển hình bắt đầu bằng Trình quản lý
tác vụ gán một nhiệm vụ mới cho KBL (nhiệm vụ có thể được đưa ra hoặc tự động phát hiện) KBL sau đó hoạt động với sự trợ giúp của kiến thức trong quá khứ được lưu trữ trong KB để tạo ra một mô hình đầu ra cho người dùng và cũng gửi thông tin hoặc kiến thức cần được giữ lại để sử dụng trong tương lai cho KB Trong quá trình ứng dụng, hệ thống cũng có thể khám phá các nhiệm vụ mới và học trong khi làm việc (học trong công việc) Một số kiến thức thu được trong các ứng dụng cũng có thể được giữ lại để giúp học tập trong tương lai
Trang 221.2.2 Các hướng nghiên cứu LL
Học cĩ giám sát suốt đời: Mợt sớ kỹ thuật LL đã được đề xuất dựa trên mạng nơ
ron, Nạve Bayesian, mơ hình trường ngẫu nhiên cĩ điều kiện (CRF)
Học liên tục sử dụng các mạng nơ ron sâu: Trong vài năm qua, do sự phổ biến của
học sâu, nhiều nhà nghiên cứu đã nghiên cứu vấn đề liên tục học mợt chuỗi các nhiệm vụ sử dụng kỹ thuật học sâu Trong cợng đờng nghiên cứu học sâu thì LL cũng được gọi là học liên tục Mục tiêu của nĩ xây dựng mạng nơ ron sâu cĩ khả năng học thêm từng nhiệm vụ mới mà khơng quên đi các mơ hình đã học cho các nhiệm vụ trước
Học thế giới mở: Học cĩ giám sát truyền thớng đòi hỏi giả định thế giới đĩng phải
đúng: các lớp của các dữ liệu mới phải được nhìn thấy trong quá trình học/huấn luyện [6] Điều này khơng phù hợp để học trong các mơi trường mở và biến đợng với những lớp mới luơn xuất hiện
Học khơng giám sát suốt đời: Các nghiên cứu trong hướng này chủ yếu là về mơ
hình hố chủ đề suớt đời và trích chọn thơng tin suớt đời Các kỹ thuật này đều dựa trên khai thác cấp đợ meta, tức là khai thác kiến thức được chia sẻ qua các tác vụ
Học bán giám sát suốt đời: Nghiên cứu điển hình trong hướng này là hệ thớng hệ
thớng NELL (Bợ học ngơn ngữ khơng ngừng) Nĩ đã đọc nợi dung trên Internet liên tục
từ tháng 1 năm 2010 để khai thác thơng tin, và đã tích lũy được hàng triệu thực thể và quan hệ giữa chúng
Học tăng cường suốt đời: Hướng nghiên cứu này tập trung xây dựng các tác nhân
(agent) học liên tục cĩ khả năng giải quyết dần các nhiệm vụ phức tạp bằng cách học giải quyết các nhiệm vụ dễ dàng trước tiên
1.3 Học máy thế giới mở
Do thế giới thực cĩ tính chất mở, luơn cĩ biến đợng chúng ta cần xây dựng mơ hình
cĩ thể nhận ra các lớp mới Học máy cĩ giám sát thế giới mở nhằm xây dựng các bợ phân lớp cĩ khả năng nhận ra các lớp đã biết và các lớp chưa từng thấy Điều này trái ngược với học máy cĩ giám sát thế giới đĩng
Hiện nay cơng nghệ đang phát triển theo hướng trợ lý ảo cá nhân hĩa mợt cách thơng minh, xe tự lái, các robot làm việc trong mơi trường mở và tương tác với con người,
Trang 23v.v Việc xây dựng bộ phân lớp trong thế giới mở đang trở nên rất quan trọng Lấy ví dụ: ứng dụng đầu tiên về trợ lý cá nhân hóa thông minh (như Amazon Alexa, Google Assistant và Microsoft Cortana, v.v.) sử dụng những bài viết của người dùng để phân lớp
ý định người dùng và miền ứng dụng (ví dụ: Alexa’s skills, Google’s actions và Cortana’s skills), từ đó cũng phát hiện ra các bài viết không thuộc vào một trong những lớp ý định và miền đã biết Hầu hết các giải pháp hiện có cho học thế giới mở được xây dựng dựa trên các mô hình phân lớp thế giới đóng Thêm nữa, các mô hình này rất khó có thể phát hiện các lớp mới (chưa thấy) vào tập các lớp đã thấy mà không cần học lại hoặc học tăng cường Ví dụ: Alexa cho phép các nhà phát triển bên thứ 3 thêm các kỹ năng mới (ứng dụng mới), tức là các miền mới hoặc các lớp mục đích mới Điều này đặt ra một thách thức lớn đối với việc duy trì triển khai mô hình và dữ liệu đào tạo cho các lớp mới
Xây dựng một mô hình có khả năng phân loại dữ liệu trong tập test vào một trong những lớp đã biết hoặc bác bỏ nó (dữ liệu đó không thuộc về bất kỳ lớp nào trong tập
huấn luyện, hay thuộc lớp chưa được thấy) Nói cách khác, xây dựng 1 bộ phân lớp f(x) cho (m + 1) lớp thuộc tập C = {l 1 , l 2 , …, l m , rejection} Học máy thế giới mở được định
nghĩa như sau [1, 5]
1 Tại một thời điểm nào đó, bộ học đã xây dựng được một mô hình phân lớp F N dựa
trên N lớp từ tập dữ liệu huấn luyện trước đây: D p = {D 1 , D 2 , …, D N } với các lớp tương ứng Y N = {l 1 , l 2 , …, l N } F N có khả năng phân loại một đối tượng dữ liệu vào
một trong các lớp l i thuộc Y N hoặc bác bỏ nó và để nó vào tập bị bác bỏ R
2 Bộ phân loại hoặc người dùng sẽ xác định tập các lớp chưa xuất hiện C trong R và
thu thập dữ liệu huấn luyện cho các lớp chưa xuất hiện này
3 Giả sử rằng có k lớp mới trong C có đủ dữ liệu huấn luyện Bộ học sẽ học tăng dần cho k lớp này dựa trên dữ liệu học của chúng Mô hình F N hiện có được cập nhật để
tạo thành mô hình F N+k mới
Học thế giới mở là một hình thức học suốt đời (LL) vì nó phù hợp với định nghĩa
của LL Cụ thể, nhiệm vụ học mới T N+1 là để xây dựng một bộ phân lớp mở đa lớp dựa trên tất cả dữ liệu quá khứ và hiện tại các lớp đã được học Hệ cơ sở tri thức (KB) chứa
mô hình quá khứ F N và tất cả tập dữ liệu huấn luyện trong quá khứ [2]
Lưu ý rằng nhiệm vụ thứ ba của việc học tăng dần các lớp mới ở đây khác với việc học lớp tăng dần truyền thống (ICL) được nghiên cứu ở các miền khác nhau vì ICL truyền
Trang 24thống vẫn học trong thế giới khép kín (nghĩa là nó không thực hiện việc bác bỏ lớp chưa xuất hiện) mặc dù nó có thể thêm các lớp mới tăng dần vào hệ thống phân loại mà không cần học lại từ đầu toàn bộ mô hình
Ví dụ, chúng ta muốn xây dựng một robot chào mừng cho một khách sạn Tại bất kỳ thời điểm nào, robot đã học cách nhận ra tất cả khách hiện tại của khách sạn Khi thấy một vị khách cũ nó có thể gọi tên và trò chuyện với anh ấy/cô ấy Đồng thời, nó cũng phải phát hiện bất kỳ vị khách mới nào mà nó chưa từng thấy trước đây Khi nhìn thấy một vị khách mới, nó có thể nói xin chào, hỏi tên của khách, chụp một số ảnh và học cách nhận
ra vị khách đó Lần sau khi gặp lại người đó, nó có thể gọi tên của anh ấy/cô ấy và trò chuyện như một người bạn cũ Kịch bản trong xe tự lái cũng tương tự vì rất khó, nếu không muốn nói là không thể huấn luyện một hệ thống có khả năng nhận ra mọi vật thể
có thể xuất hiện trên đường Hệ thống phải nhận ra các vật thể mà nó chưa học trước đó và học chúng trong khi lái xe (có thể thông qua tương tác với hành khách của con người)
để khi nhìn thấy các vật thể lần sau, nó sẽ không gặp vấn đề gì khi nhận ra chúng
Fei và cộng sự [5] đã đưa ra một ví dụ khác trong phân loại văn bản Cuộc bầu cử tổng thống năm 2016 tại Hoa Kỳ là một chủ đề nóng trên phương tiện truyền thông xã hội và nhiều nhà nghiên cứu khoa học xã hội đã dựa vào các cuộc thảo luận được thu thập để thực hiện nghiên cứu của họ Trong chiến dịch, mọi đề xuất mới của một ứng cử viên sẽ được thảo luận sôi nổi trên phương tiện truyền thông xã hội Bộ phân loại được xây dựng ban đầu chắc chắn sẽ gặp các chủ đề mới (ví dụ, kế hoạch cải cách nhập cư của Donald Trump, hoặc đề xuất tăng thuế của Hillary Clinton), những chủ đề đã không xuất hiện trong quá trình huấn luyện mô hình trước đó Trong trường hợp này, trước tiên bộ phân loại nên nhận ra các chủ đề mới này thay vì phân loại chúng vào một số chủ đề hiện có Thứ hai, sau khi thu thập đủ các ví dụ huấn luyện cho các chủ đề mới, bộ phân loại hiện
có nên kết hợp các chủ đề mới một cách tăng dần mà không cần phải huấn luyện lại toàn bộ hệ thống phân loại từ đầu
Bendale và Boult [1] đã cố gắng giải quyết vấn đề học thế giới mở để phân loại ảnh
Phương pháp của nó được gọi là Phương pháp không ngoại lai gần nhất (Nearest
Non-Outlier, NNO), được phát triển từ phương pháp Trung bình lớp gần nhất (Nearest Class Mean) do Mensink và cộng sự đề xuất Trong NNO, mỗi ảnh được biểu diễn dưới dạng
một vectơ đặc trưng và mỗi lớp được biểu diễn bằng vector trung bình của các vectơ đặc