Tìm hiểu phương pháp học tích cực và ứng dụng cho bài toán lọc thư rác - 2


Giai đoạn 1 – Nghiên cứu lý thuyết: Thu thập tài liệu, các bài viết liên quan đến học tích cực và phương pháp lọc mail. Nghiên cứu tài liệu, tìm hiểu phương pháp học học máy nói chung và phương pháp học tích cực nói riêng. Tìm hiểu cụ thể vào pương pháp học tích cực dựa vào perceptron và học tích cực với SVM. Tìm hiểu một số phương pháp lọc mail, tham khảo một số mô hình lọc mail đã được xây dựng. Trên cơ sở khoa học và lý thuyết đã tìm hiểu lựa chọn phương pháp và áp dụng trong thực tế.

Giai đoạn 2 – Xây dựng chương trình tiền xử lý dữ liệu để làm dữ liệu cho bài toán lọc mail. Tìm hiểu và cài đặt các công cụ có ứng dụng cho bài toán lọc mail. Thu thập dữ liệu từ thực tế, sử dụng chương trình có sẵn, xử lý dữ liệu và chạy thực nghiệm dữ liệu trên các công cụ đã cài đặt được. Phân tích đánh giá và nhận xét kết quả thực nghiệm

Giai đoạn 3 – Tổng kết: Khái quát hóa và rút ra kết luận chung cho đề tài. Viết báo cáo, công bố kết quả nghiên cứu trong đề tài.

1.2 Cấu trúc của luận văn‌


Luận văn gồm bốn chương: Chương 1 dẫn nhập và giới thiệu chung về luận văn, lý do chọn đề tài, mục tiêu của đề tài và ý nghĩa của đề tài. Chương này cũng trình bày các giai đoạn thực hiện luận văn và cấu trúc của luận văn.

Chương 2: trình bày các cơ sở lý thuyết phục vụ cho bài toán lọc mai. Cụ thể chương 2 sẽ giới thiệu về phương pháp học tích cực. Đưa ra mô hình học tích cực, so sánh giữa hai mô hình học thụ động và học tích cực. Từ đó nêu ra được ưu điểm của học tích cực và các miền ứng dụng.

Chương 3: sẽ trình bày về các mô hình học tích cực. Đầu tiên, Chương 3 trình bày cơ sở lý thuyết của phương pháp học tích cực dựa vào perceptron sử dụng cải tiến bước cập nhật. Cuối Chương 3 trình bày về học tích cực với SVM, giới thiệu ba phương pháp truy vấn trong bộ học SVM: Simple Margin, MaxMin Margin và Ratio Margin.

Chương 4: Giới thiệu bài toán lọc thư rác, phương pháp học tích cực trong bài toán lọc thư rác. Chương 4 sử dụng phương pháp học tích cực dựa vào Perceptron và SVM active vào xây dựng mô hình cho bài toán lọc thư rác.

Có thể bạn quan tâm!

Xem toàn bộ 65 trang tài liệu này.


Phần cuối chương 4: Cài đặt các tool thực nghiệm và xây dựng chương trình xử lý dữ liệu thu thập được về dạng dữ liệu đầu vào cho các tool thực nghiệm. Phân tích, đánh giá và nhận xét kết quả thực nghiệm.

Tìm hiểu phương pháp học tích cực và ứng dụng cho bài toán lọc thư rác - 2

Phần Kết luận: tổng kết lại những kết quả đã thực hiện được trong luận văn và đưa ra phương hướng phát triển luận văn trong tương lai.


CHƯƠNG II - TỔNG QUAN VỀ HỌC TÍCH CỰC‌


2.1 Gii thiu hc tích cc


Mục đích chính của học máy là thu được những mẫu chung từ một lượng dữ liệu hữu hạn [36]. Học máy được chia thành 2 loại: học có giám sát và học không giám sát.

Nhiệm vụ của học giám sát là dự đoán thêm những các đặc trưng của một đối tượng đầu vào [36]. Ví dụ: đơn giản là bài toán dự doán cân nặng của một người khi biết chiều cao của họ, còn những bài toán phức tạp hơn có thể là dự đoán chủ đề của hình ảnh khi biết các giá trị của điểm ảnh. Một lĩnh vực trọng tâm của học giám sát là bài toán phân lớp. Phân lớp là bài toán học có giám sát mà ở đó đặc trưng nữa của một đối tượng mà chúng ta mong muốn dự đoán là các giá trị rời rạc. Ta gọi đặc trưng này là nhãn. Mục đích của phân lớp là tạo ra một ánh xạ các đối tượng đầu vào tới các nhãn.Ví dụ, phân loại các tài liệu trong đó chúng ta mong muốn gán nhãn tự động cho một tài liệu mới với một vài chủ để đã xác định trước (ví dụ thể thao, chính trị, kinh doanh…). Hướng tiếp cận của học máy để giải quyết được vấn đề này là chúng ta phải thu thập được tập huấn luyện (trainning set) bằng cách gán nhãn tự động một số các tài liệu. Tiếp theo chúng sử dụng một bộ học (learner) thực hiện trên tập huấn luyện đã được gán nhãn để sinh ra một ánh xạ từ các tài liệu đến chủ đề. Chúng ta gọi ánh xạ này là bộ phân lớp (classifier). Chúng ta có thể dùng bộ phân lớp (classifier) để gán nhãn cho các tài liệu mới.

Một lĩnh vực lớn nữa của học máy là học không giám sát. Khoảng cách giữa học giám sát và học không giám sát cũng không hoàn toàn rõ ràng. Tuy nhiên bản chất của học không giám sát là chúng ta sẽ không nhận được thông tin cụ thể về cách thức thực hiện như thế nào. Nói cách khác, trong bài toán phân lớp chúng ta nhận được tập dữ liệu huấn luyện đã được gán nhãn tự động. Học không giám sát bao gồm bài toán phân cụm (Ở đây chúng ta sẽ cố tìm nhóm dữ liệu tương tự nhau) và xây dựng mô hình (chúng ta cố gắng xây dựng một mô hình miền từ một tập dữ liệu).

Tất cả các bài toán học giám sát và không giám sát, đầu tiên là thu thập


đầy đủ lượng dữ liệu sao cho được đánh mẫu tự động từ sự phân bố mật độ cơ bản và sau đó chúng ta quy vào một lớp hay một mô hình. Phương pháp này được gọi là học thụ động. Bộ học thụ động nhận dữ liệu một cách ngẫu nhiên từ thế giới (hình 2.1) và sau đó đưa ra mô hình để phân lớp.

Thông thường những bài toán mất nhiều thời gian và chi phí trong các ứng dụng là thu thập dữ liệu. Trong một số trường hợp, chúng ta có giới hạn các tài nguyên cho việc thu thập dữ liệu. Do đó, rất là quan trọng khi xác định cách để chúng ta có thể sử dụng những tài nguyên này càng nhiều càng tốt. Hầu như trong tất cả các trường hợp chúng ta đều cho rằng thu thập các thể hiện dữ liệu một cách ngẫu nhiên là độc lập và phân bố tương tự nhau. Tuy nhiên, trong một số trường hợp chúng ta có thể có cách hướng dẫn quá trình lấy mẫu. Ví dụ, trong bài toán phân lớp tài liệu, thường rất dễ thu thập một lượng lớn các tài liệu chưa gán nhãn. Thay vì lựa chọn tài liệu một cách ngẫu nhiên để gán nhãn cho tập huấn luyện, chúng ta có quyền lựa chọn (yêu cầu) cẩn thận một số tài liệu để gán nhãn. Trong bài toán ước lượng tham số và phát hiện cấu trúc, giả sử chúng ta nghiên cứu bệnh ung thư phổi trong ngành y:

Chúng ta có một danh sách sơ bộ ban đầu về tuổi và sở thích hút thuốc của những người có khả năng mắc bệnh để chúng ta có quyền lựa chọn hướng kiểm tra thêm.

Chúng ta có khả năng đưa ra chỉ với một số người bản kiểm tra chi tiết. Thay vì chọn ngẫu nhiên một số người để kiểm tra thì ta đặt ra yêu cầu với những người phù hợp với các đặc điểm nào đó. Ví dụ Chúng ta muốn kiểm tra những người hút thuốc và trên 50 tuổi.

Hơn nữa, chúng ta không cần phải đưa ra các danh sách câu hỏi trước. Chúng ta có thể chọn câu hỏi tiếp theo dựa trên các câu trả lời của các câu hỏi trước. Quá trình hướng dẫn các bước lấy mẫu bằng câu hỏi cho một số trường hợp nào đó căn cứ vào dữ liệu mà chúng ta đã được cung cấp gọi là học tích cực.


Thế giới

Dữ liệu

Bộ học thụ

động

Dữ liệu ra

Mô hình hoặc

bộ phân lớp

Hình 2.1 Lược đồ chung cho bộ học thụ động


Dữ liệu đã gán nhãn/chưa gán nhãn



Thế giới


Truy vấn Phản hồi


Bộ học tích cực


Dữ liệu ra


Mô hình /Bộ phân lớp


Hình 2.2: Lược đồ chung cho bộ học tích cực.


Học tích cực (đôi khi còn được gọi là học truy vấn hay thiết kế thực nghiệm tối ưu trong các bài toán thống kê) là một lĩnh vực nhỏ của học máy nói riêng và trong trí tuệ nhân tạo nói chung. Giả thiết chính là nếu thuật toán học được phép chọn dữ liệu từ những gì nó học thì nó sẽ thực hiện tốt hơn ngay cả khi được huấn luyện ít hơn.

Hệ thống học tích cực cố gắng vượt qua những hạn chế trong việc gán nhãn bằng cách đưa ra các truy vấn để các dữ liệu chưa gán nhãn sẽ được người sử dụng hay chuyên gia gán nhãn. Bằng cách này, bộ học tích cực hướng đến việc đạt được độ chính xác cao trong việc sử dụng dữ liệu gán nhãn càng ít càng tốt, do đó sẽ giảm thiểu được chí phí trong việc thu thập dữ liệu có nhãn. Học tích cực được coi là một hướng tiếp cận có mục đích tốt trong các bài toán học máy hiện đại mà dữ liệu có thể bị dư thừa nhưng các nhãn thì khan hiếm hoặc là tốn chi phí mới có được.

Học tích cực là một trong những phương pháp học giám sát [7] tạo ra những dữ liệu được gán nhãn với sự giúp đỡ của con người trong những vòng lặp có phản hồi [5]. Bộ học tập trung vào việc huấn luyện sử dụng một lượng nhỏ dữ liệu đã gán nhãn và làm giảm số các nhãn mà người sử dụng có để


phân lớp bằng cách chọn các dữ liệu có nhiều thông tin nhất. Điều này chỉ ra rằng ta chỉ cần một phần nhỏ dữ liệu trong tập dữ liệu lớn phải gán nhãn để huấn luyện một bộ học sao cho đạt được bộ phân lớp tốt.

Vì trong học giám sát dữ liệu cần thiết phải sử dụng dữ liệu đã gán nhãn, nên bài toán gán nhãn thường rất tốn thời gian và chi phí. Động lực đằng sau học tích cực là tối đa hóa hiệu suất bằng cách giảm thiểu công sức của con người trong việc gán nhãn dữ liệu càng nhiều càng tốt [9]. Một đặc điểm nữa của học tích cực là nó là một quá trình lặp đi lặp lại [5]. Trong mỗi lần lặp, đầu tiên bộ học được huấn luyện với dữ liệu huấn luyện, sau đó một tập nhỏ dữ liệu chưa có nhãn được lựa chọn và đưa cho người sử dụng (hoặc chuyên gia) gán nhãn cho chúng, và cuối cùng dữ liệu vừa được gán nhãn sẽ được thêm vào tập huấn luyện ban đầu và bộ học sẽ lại được huấn luyện lại. Quá trình này được lặp đi lặp lại cho đến khi chấm dứt.

2.2 Phương pháp học tích cực‌


Bước chính trong phương pháp học tích cực là định nghĩa khái niệm mô hình M và chất lượng mô hình (mô hình tổn thất, Loss(M)). Định nghĩa mô hình và chất lượng mô hình tương ứng sẽ được thay đổi phù hợp đối với từng bài toán riêng.

Với khái niệm tổn thất của mô hình đã đưa ra, chúng ta lựa chọn câu truy vấn tiếp theo sao cho nó sẽ đưa đến một mô hình mới với độ tổn thất của mô hình là thấp nhất.

Khi đang xem xét việc đưa ra câu truy vấn tiềm năng q, ta cần ước định độ tổn thất của mô hình tiếp theo M’. Mô hình M’ là mô hình M được cập nhật với câu truy vấn q và câu trả lời x. Vì không biết câu trả lời x có đúng với câu truy vấn tiếp theo không, nên ta phải thực hiện một số phép tổng hợp và phép tính trung bình. Một phương pháp tự nhiên là duy trì bộ phân phối các câu trả lời hợp với mỗi câu truy vấn. Ta có thể tính được độ tổn thất kỳ vọng của mô hình sau khi đưa ra câu truy vấn mà chúng ta đạt được độ kỳ vọng ở câu trả lời cho câu truy vấn đó:


Loss(q) = EsLoss(Mr) (2.1)

Nếu sử dụng định nghĩa này trong thuật toán học tích cực thì có thể chọn các câu truy vấn sao cho độ tổn thất kỳ vọng của mô hình là thấp nhất. Dựa vào nhưng phân tích ở trên Tong [36] đã đưa ra lược đồ tổng thể của học tích cực như trong hình 2.3


For i:=1 to totalQueries


ForEach q in potentialQueries


Evaluate Loss(q)


EndForEach


Ask truy vấn q sao cho Loss(q) là thất nhất


Update cập nhật mô hình M với truy vấn q và phản hồi x


EndFor


Return mô hình



Hình 2.3 Lược đồ tổng thể của học tích cực [36]


Trong thống kê, sự lựa chọn chuẩn để tối thiểu độ tổn thất kỳ vọng chínhlà tối thiểu được độ tổn thất cực đại [3]. Nói các khác, nếu giả sử các trường hợp đều là xấu nhất: điều này có nghĩa là câu trả lời x sẽ luôn là câu trả lời cho độ tổn thất của mô hình là cao nhất.

Loss(q) = argmaxs Loss(M) (2.2)

Nếu chúng ta sử dụng định nghĩa độ tổn thất này cho câu truy vấn trong thuật toán học tích cực thì chúng ta nên lựa chọn câu truy vấn cho kết quả đạt độ tổn thất mô hình lớn nhất.


2.3 Kịch bản học tích cực‌


Có một vài kịch bản học trong một số bài toán khác nhau, trong đó bộ học có thể đưa ra câu truy vấn. Tuy nhiên có hai kịch bản chính, khá phổ biến trong các nghiên cứu và thường xuyên được sử dụng trong các bài toán áp dụng phương pháp học tích cực. Hai kịch bản học đó là stream-based sampling và pool-based sampling.

2.3.1 Stream-based sampling


Trong kịch bản ‘stream-based sampling’, bộ học lấy một mẫu tại một thời điểm nào đó từ các dữ liệu phân tán và cố gắng đưa ra một quyết định trên mẫu này là có lựa chọn và đem nó ra để hỏi người dùng ghi nhãn cho nó hoặc sẽ bỏ qua nó.

2.3.2 Pool-based sampling


Trong kịch bản ‘pool-based sampling’, đầu tiên bộ học lấy tất cả các mẫu và xếp hạng chúng tăng dần dựa trên dự đoán của bộ phân lớp. Sau đó, bộ học sẽ chọn k mẫu đầu tiên của danh sách xếp hạng trong mỗi lần lặp và đưa chúng cho từng người sử dụng một để ghi nhãn.

Trong kịch bản ‘pool-based sampling’, dữ liệu chưa gán nhãn là cố định và không thay đổi; trong khi kịch bản ‘stream-based scenario’ là một phiên bản trực tuyến của kịch bản ‘pool-based sampling’ vì ngay lập tức nó yêu cầu người sử dụng gán nhãn sau khi nó được phân lớp [44]. Chúng ta có thể kết luận rằng kịch bản ‘stream-based scenario’ khác biệt với kịch bản ‘pool-based sampling’ về việc liệu trong mô hình các mẫu được chọn có được hỏi người sử dụng nhãn ngay lập tức không hoặc lúc đầu tất cả các mẫu được xếp hạng và từ dữ liệu đã xếp hạng này có được lựa chọn để được gán nhãn.

2.4 Các chiến lược truy vấn trong học tích cực‌


Các mẫu được chọn phải có rất nhiều thông tin có hiệu quả cho bài

Xem toàn bộ nội dung bài viết ᛨ

..... Xem trang tiếp theo?
⇦ Trang trước - Trang tiếp theo ⇨

Ngày đăng: 15/05/2022