1. Trang chủ
  2. » Luận Văn - Báo Cáo

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

65 1,1K 0
Tài liệu đã được kiểm tra trùng lặp

Đang tải... (xem toàn văn)

Tài liệu hạn chế xem trước, để xem đầy đủ mời bạn chọn Tải xuống

THÔNG TIN TÀI LIỆU

Thông tin cơ bản

Tiêu đề 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
Tác giả Nguyễn Thị Hồng Hậu
Người hướng dẫn TS. Nguyễn Trí Thành
Trường học Đại học Quốc gia Hà Nội - Trường Đại học Công nghệ
Chuyên ngành Hệ thống Thông tin
Thể loại Luận văn Thạc sĩ
Năm xuất bản 2011
Thành phố Hà Nội
Định dạng
Số trang 65
Dung lượng 1,21 MB

Các công cụ chuyển đổi và chỉnh sửa cho tài liệu này

Nội dung

Hình 4.1 Bộ lọc thư rác áp dụng phương pháp học tích cực Hình 4.2 Bộ lọc thư rác tích cực dựa trên Perceptron/SVM active Hình 4.3 Giao diện chính của chương trình Hình 4.4 Giao diện lựa

Trang 1

TRƯỜNG ĐẠI HỌC CÔNG NGHỆ

NGUYỄN THỊ HỒNG HẬU

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

LUẬN VĂN THẠC SĨ

Hà Nội - 2011

Trang 2

TRƯỜNG ĐẠI HỌC CÔNG NGHỆ

NGUYỄN THỊ HỒNG HẬU

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

Ngành: Công nghệ thông tin Chuyên ngành: Hệ thống thông tin

Mã số: 60 48 05

LUẬN VĂN THẠC SĨ

NGƯỜI HƯỚNG DẪN KHOA HỌC: TS NGUYỄN TRÍ THÀNH

Hà Nội - 2011

Trang 3

MỤC LỤC

DANH SÁCH HÌNH VẼ 3

DANH SÁCH CÁC BẢNG BIỂU 4

CHƯƠNG I: GIỚI THIỆU 5

1.1 Giới thiệu đề tài 5

1.1.1 Lý do chọn đề tài 5

1.1.2 Mục tiêu của đề tài 6

1.1.3 Các giai đoạn thực hiện đề tài 7

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

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

2.1 Giới thiệu học tích cực 10

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

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

2.3.1 Stream_based Sampling 15

2.3.2 Pool-based Sampling 15

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

2.4.1 Lấy mẫu không chắc chắn 16

2.4.2 Truy vấn dựa vào hội đồng 17

2.5 So sánh học tích cực học thụ động 17

2.6 Miền ứng dụng của học tích cực 18

2.7 Kết luận 19

CHƯƠNG III - MỘT SỐ THUẬT TOÁN HỌC TÍCH CỰC 20

3.1 Học tích cực dựa trên perceptron 20

3.1.1 Giới thiệu 20

3.1.2 Thuật toán perceptron 20

3.1.3 Cải tiến bước cập nhật perceptron 23

3.1.4 Perceptron chỉnh sửa tích cực 25

3.2 Học tích cực với SVM 27

Trang 4

3.2.1 Giới thiệu 27

3.2.2 Máy hỗ trợ vector 27

3.2.3 Version space 30

3.2.4 Học tích cực với SVM 33

3.3 Kết luận 39

CHƯƠNG 4 ỨNG DỤNG HỌC TÍCH CỰC CHO BÀI TOÁN LỌC THƯ RÁC 40

4.1 Giới thiệu 40

4.2 Học tích cực trong bài toán lọc thư rác 41

4.3 Thử nghiệm và kết quả 43

4.3.1 Cài đặt chương trình thử nghiệm 43

4.3.2 Thu thập và biểu diễn dữ liệu 45

4.3.3 Xây dựng chương trình biểu diễn và tiền xừ lý dữ liệu 48

4.3.4 Kết quả thử nghiệm 51

4.4 Kết luận 57

KẾT LUẬN 58

TÀI LIỆU THAM KHẢO 60

Trang 5

DANH SÁCH HÌNH VẼ

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

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

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

Hình 3.1 Thuật toán perceptron chuẩn

Hình 3.2 Thuật toán cải tiến percepron chuẩn

Hình 3.3 Quy tắc học tích cực là truy vấn các nhãn cho các điểm x trong L

Hình 3.4 Phiên bản tích cực của Perceptron đã chỉnh sửa

Hình 3.5 (a) Máy hỗ trợ vector tuyến tính đơn giản

(b) Máy hỗ trợ vector và máy hỗ trợ vector transaction Hình 3.6 Máy hỗ trợ vector sử dụng hàm nhân đa thức bậc 5

Hình 3.7 (a) Tính đối ngẫu trong version space

(b) Một bộ phân lớp SVM trên một version space Hình 3.8 (a) Lề đơn giản truy vấn b (b) Lề đơn giản truy vấn a

Hình 3.9 (a) Lề MaxMin truy vấn b (b) Lề MaxRatio truy vấn e

Hình 4.1 Bộ lọc thư rác áp dụng phương pháp học tích cực

Hình 4.2 Bộ lọc thư rác tích cực dựa trên Perceptron/SVM active

Hình 4.3 Giao diện chính của chương trình

Hình 4.4 Giao diện lựa chọn thư mục chứ dữ liệu

Hình 4.5 Thông báo quá trình làm sạch dữ liệu thành công

Hình 4.6 Giao diện thông báo kết quả xử lý

Hình 4.7 Kết quả thuật toán perceptron

Hình 4.8 Cấu trúc file cấu hình của chương trình ActiveExperiment

Hình 4.9 Kết quả chạy thuật toán SIMPLE

Hình 4.10 Kết quả chạy thuật toán SELF_CONF

Hình 4.11 Kết quả chạy thuật toán KFF

Hình 4.12 Kết quả chạy thuật toán BALANCE_EE

Trang 6

DANH SÁCH CÁC BẢNG BIỂU

Bảng 4.1 Ví dụ nội dung của bốn thư

Bảng 4.2 Từ điển và chỉ số cho dữ liệu trong bảng 4.1

Bảng 4.3 Biểu diễn vector cho dữ liệu trong bảng 4.1

Bảng 4.4 Kết quả chạy qua 20 lần truy vấn của các thuật toán

Trang 7

CHƯƠNG I: GIỚI THIỆU

1.1 Giới thiệu đề tài

1.1.1 Lý do chọn đề tài

Ngày nay thư điện tử (email) đã trở thành một công cụ đắc lực phục vụ cho nhu cầu trao đổi thông tin của các cơ quan tổ chức, doanh nghiệp cũng như mỗi cá nhân Email giúp con người có thể kết nối mọi nơi, mọi lúc với công việc và cuộc sống cá nhân Tuy nhiện thư điển tử cũng đang bị lợi dụng

để phát tán thư rác (spam) lây lan virus máy tính và lừa đảo trực tuyến, gây thiệt hại lớn cho người sử dụng

Thư rác là thư điện tử được gửi hàng loạt với nội dung mà người nhận

không mong đợi, không muốn xem, hay chứa những nội dung không liên quan đến người nhận và thường được sử dụng để gửi thông tin quảng cáo Do

có giá thành tương đối thấp so với các phương pháp quảng cáo khác, thư rác hiện chiếm một tỷ lệ lớn và ngày càng tăng trong tổng số thư điện tử được gửi qua Internet Sự xuất hiện và gia tăng thư rác không những gây khó chịu và làm mất thời gian của người nhận mà còn ảnh hưởng tới đường truyền Internet và làm chậm tốc độ xử lý của máy chủ thư điện tử, gây thiệt hại lớn

về kinh tế

Thư rác là một trong những thách thức lớn nhất hiện nay mà khách hàng và các nhà cung cấp dịch vụ phải đối phó Spam đã trở thành một hình thức quảng cáo chuyên nghiệp, phát tán virus, ăn cắp thông tin với nhiều thủ đoạn và mánh khóe cực kỳ tinh vi Người dùng sẽ phải mất khá nhiều thời gian để xóa những thư điện tử “không mời mà đến”, nếu vô ý còn có thể bị nhiễm virus, trojan, spyware và nặng nề hơn là mất thông tin như thẻ tín dụng, tài khoản ngân hàng qua các email dạng thư lừa người dùng tưởng đó là thư hợp lệ (phishing)

Để loại bỏ hoặc giảm thiểu ảnh hưởng của thư rác, nhiều cách tiếp cận khác nhau đã được nghiên cứu và sử dụng Giải pháp đấu tranh với thư rác rất

đa dạng, bao gồm từ các cố gắng về pháp lý trong việc xây dựng luật ngăn chặn phát tán thư rác cho tới những giải pháp kỹ thuật nhằm phát hiện và

Trang 8

ngăn chặn thư rác trong những giai đoạn khác nhau của quá trình tạo và phát tán thư

Tất nhiên, những kẻ gửi thư rác sẽ liên tục cải thiện chiến thuật/cách thức của chúng, do đó, điều quan trọng là biện pháp ngăn chặn thư rác phải

“học” cách thức thay đổi của thư rác theo thời gian để giúp việc ngăn chặn có hiệu quả Và việc ngăn chặn thư rác phải được thực hiện nhanh nhất có thể để không làm ảnh hưởng đến hệ thống, công việc khác

Từ những đặc điểm của hệ thống thư điện tử như có sự tương tác với người sử dụng và sự biến đổi của thư rác, luận văn nghiên cứu về học tích cực

và xác định được sự phù hợp cho bài toán lọc thư rác Đề tài “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” được tiến hành nhằm đưa ra được phương pháp xây dựng bộ lọc thư rác có thể “học” được cách thức thay đổi của thư rác và tận dụng được sự tương tác với người dùng để đưa ra các truy vấn phân loại cho thư điện tử giúp cho việc phân loại thư rác đạt hiệu quả và chính xác cao

Trong phạm vi đề tài, luận văn tiến hành nghiên cứu một số giải pháp học thư rác dựa vào các phương pháp học tích cực (bộ lọc tích cực) Nội dung nghiên cứu bao gồm cả thử nghiệm trên dữ liệu thực làm rõ khả năng lọc thư của các bộ lọc tích cực, so sánh hiệu quả của các phương pháp được áp dụng trong bộ lọc

1.1.2 Mục tiêu của đề tài

Để loại bỏ thư rác, các nhà cung cấp dịch vụ thư điện tử đã tích hợp nhiều chương trình lọc thư rác vào dịch vụ thư điện tử Các chương trình lọc thư rác chủ yếu dựa vào các phương pháp học máy thông qua một bộ học Tuy nhiên dựa vào thực tế: thư điện tử là một dịch vụ online, các thư điện tử được cập nhật thay đổi theo thời gian và có sự tương tác của người sử dụng hòm thư với hệ thống vì vậy đề tài đã tập trung vào nghiên cứu bộ học tích cực và áp dụng cho bài toán lọc thư rác

Trang 9

Trên cơ sở xác định loại hình nghiên cứu của đề tài là nghiên cứu lý thuyết và ứng dụng thực nghiệm, mục tiêu của đề tài là tìm hiểu về phương pháp học tích cực và tìm giải giải pháp cho bài toán lọc thư rác, chọn mô hình thích hợp để áp dụng vào bài toán lọc thư rác với các tiêu chí:

- Lọc thư rác nhanh, phát hiện chính xác thư rác (spam mail)

- Tận dụng được khả năng tương tác với người sử dụng dịch vụ mail, sự phân loại mail của người dùng để tăng thêm lượng mail đã gán nhãn cũng như chất lượng của dữ liệu gán nhãn

- Có khả năng thích nghi với các biến thể của thư rác, chủ động lọc loại ra các thư rác ngày một hoạt động tinh vi hơn

Giống như trong lĩnh vực phòng chống virus máy tính, hacker luôn tìm cách để chống lại các chương trình diệt virus, thì trong chương trình lọc thư rác, những người gửi thư rác luôn tìm cách để tránh được bộ lọc thư rác một cách hữu hiệu Vì vậy mà thư rác luôn luôn được biến đổi, cải tiến hơn do những người gửi thư rác Sử dụng phương pháp học tích cực cho bài toán lọc thư rác làm phong phú thêm tập lời giải cho bài toán nhận dạng các đối tượng biến đổi

Bộ lọc thư rác tích cực giảm chi phí và thời gian thu thập dữ liệu, bởi vì

nó được xây dựng dựa trên sự tương tác giữa bộ học và người dùng là nhận dạng thư rác hay thư thường

Với mục tiêu đã nêu ở trên luận văn chủ yếu tập trung nghiên cứu vào phương pháp học tích cực, áp dụng được các bộ học để tìm ra lời giải cho bài toán lọc thư rác Để kiểm tra và đánh giá kết quả, luận văn sử dụng các chương trình thực nghiệm đã cài đặt sẵn các bộ học mà luận văn nghiên cứu, thu thập dữ liệu thực tế, xây dựng chương trình xử lý dữ liệu thành các tri thức để huấn luyện các bộ học thực nghiệm nhằm phát hiện ra các thư rác một cách chính xác và đạt hiệu quả cao

1.1.3 Các giai đoạn thực hiện đề tài

Quá trình nghiên cứu của luận văn được thực hiện qua các giai đoạn sau:

Trang 10

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

Trang 11

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

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

Trang 12

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

Trang 13

đầ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:

v 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

v 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

v 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

Trang 14

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

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ó để

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

Truy vấn Phản hồi

Dữ liệu

ra

Trang 15

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 đó:

Trang 16

    (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

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

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

Trang 17

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

Trang 18

toán Để làm được việc lựa chọn mẫu, có một số phương pháp truy vấn độc lập với kịch bản học tích cực đã giới thiệu giới thiệu ở trên

Trong số các phương pháp truy vấn được sử dụng trong các ứng dụng khác nhau của phương pháp học tích cực, Settles [6][7] đã trình bày việc phân loại hoàn chỉnh nhất và toàn diện nhất cho các phương pháp truy vấn này Trong đó có hai phương pháp được sử dụng rộng rãi nhất đó là lấy mẫu không chắc chắn và truy vấn dựa trên hội đồng (Query by committee)

2.4.1 Lấy mẫu không chắc chắn

Phương pháp lựa chọn mẫu nổi tiếng nhất và đơn giản là "lấy mẫu không chắc chắn" (Uncertainty Sampling) được giới thiệu bởi Lewis và Gale [14] Trong phương pháp này, bộ học tích cực đưa ra các mẫu tới người sử dụng là không chắc chắn Xét các dự đoán của bộ phân lớp cho dữ liệu không

có nhãn, ta sẽ có một đường biên giữa các mẫu không có thông tin và các mẫu có chứa thông tin Các mẫu không có thông tin là những mẫu cần có sự

dự đoán chắc chắn cao nhất cho việc gán nhãn; vì thế các mẫu kiểu này không phải là hữu ích cho học tích cực và cũng không cần thiết để hỏi nhãn cho chúng Các mẫu có thông tin là các mẫu mà bộ phân lớp không cần phải

có một dự đoán tốt cho việc gán nhãn với sự tự tin cao Do vậy những dữ liệu

có độ chắc chắn thấp hơn sẽ hữu ích cho bộ học tích cực

Đường biên giữa các mẫu chứa thông tin và mẫu không chứa thông tin

có thể được định nghĩa với một số điểm như độ tin cậy của bộ phân lớp cho các nhãn mà nó đã gán Trong thực tế ‘độ tin cậy’ là sự dự đoán của bộ phân lớp với xác suất cao nhất cho các nhãn của mẫu [5] Vì nó có thể được nhận

ra, nên trong việc lấy mẫu không chắc chắn chỉ có một bộ phân lớp là cần thiết cho mô hình [21]

Có một số cách tính độ tin cậy mà bộ phân lớp sử dụng Trong số đó,

có ‘entropy’ được Shannon [11] đề xuất là một trong những cách phổ biến nhất Sử dụng entropy là độ tin cậy, các mẫu có entropy cao sẽ là các mẫu chứa thông tin nhiều nhất vì dự đoán của bộ phân lớp cho các mẫu đó là thấp

Trang 19

và các mẫu này sẽ là các ứng cử viên tốt nhất được lựa chọn và đưa ra cho người sử dụng gán nhãn

2.4.2 Truy vấn dựa vào hội đồng

Seung cùng cộng sự [20] và Freund cùng cộng sự [45] đề xuất một phương pháp truy vấn được sử dụng rộng rãi được gọi là truy vấn dựa vào hội đồng (query by committee) Trong phương pháp này nhiều hơn một bộ phân lớp được sử dụng và mỗi bộ phân lớp cố gắng để lấy các mẫu chứa nhiều thông tin nhất Trong số các mẫu chứa thông tin được lựa chọn cho mỗi

bộ phân lớp, các mẫu mà có độ bất đồng lớn nhất giữa các bộ phân lớp sẽ được lựa chọn và đưa ra cho người sử dụng gán nhãn

2.5 So sánh học tích cực học thụ động

• Bộ học

Một bộ học tích cực thu thập thông tin bằng cách đưa ra các câu truy vấn và nhận lại các câu trả lời Sau đó nó đưa ra bộ phân lớp hoặc mô hình có thể sử dụng được cho bài toán của mình Bộ học tích cực khác với bộ học thụ động ở chỗ bộ học thụ động nhận thông tin một cách ngẫu nhiên và sau đó đưa ra bộ phân lớp và mô hình Một điểm khác nữa là bộ học thụ động chuẩn giống như một sinh viên thu thập thông tin bằng cách chỉ ngồi và lắng nghe giáo viên trong khi bộ học tích cực là người đặt ra câu hỏi cho giáo viên, nghe câu trả lời và hỏi thêm dựa trên câu trả lời của giáo viên Rất hợp lý khi đưa ra câu hỏi dựa trên câu trả lời trước đó sẽ cho phép bộ học tích cực thực hiện tốt hơn bộ học thụ động

• Thành phần truy vấn

Điểm khác chủ yếu giữa bộ học tích cực và bộ học thụ động là khả năng đặt câu hỏi vào câu hỏi và câu trả lời trước Khái niệm về câu hỏi và câu trả lời chính xác là gì sẽ phụ thuộc vào các bài toán cụ thể tiếp theo Khả năng

sử dụng phương pháp học tích cực sẽ được lựa chọn tùy vào từng trường hợp, từng bài toán cụ thể

Trang 20

2.6 Miền ứng dụng của học tích cực

Học tích cực được áp dụng trong rất nhiều ứng dụng khác nhau, nhưng đặc biệt gần đây người ta lại chú ý đến phương pháp học tích cực trong lĩnh vực xử lý ngôn ngữ tự nhiên Ngoài ra học tích cực cũng được sử dụng trong nhiều ứng dụng như:

• Nhận dạng giọng nói (Hakkani-Tür et al., 2002), hiểu ngôn ngữ nói (Tur et al., 2003; 2005)

• Phân tích cú pháp (Thompson và cộng sự, 1999; Hwa, 2000; Tang và cộng

sự, 2002; Hwa và cộng sự, 2003; Steedman và cộng sự, 2003; Baldbridge và Osborne, 2003; 2004; 2006; Osborne và Baldridge, 2004, Becker và Osborne, 2005)

• Khai thác thông tin (Thompson et al., 1999; Settles and Craven, 2008), tìm kiếm thông tin (Zhang and Chen, 2002; Yu, 2005),

• Phân lớp tài liệu (Schohn and Cohn, 2000; Roy and McCallum, 2001),

• Lọc thư rác (Sculley, 2008)

• Tìm kiếm hình ảnh (Tong, Simon Tong 2001)

• Phân lớp văn bản (Lewis and Gale, 1994; McCallum and Nigam, 1998; Tong and Koller, 2001; Zhu et al., 2003; Baldbridge and Osborne, 2006; Zhu et al., 2008ab, Lewis and Catlett, 1994; Liere and Tadepalli, 1997; Hoi et al., 2006),

• Phân đoạn tài liệu (Settles and Craven, 2008),

• Phân đoạn từ vựng (Sassano, 2002), word sense disambiguation (Fujii et al., 1998; Dang, 2004; Chen et al., 2006; Chan and Ng, 2007; Zhu and Hovy, 2007; Zhu et al., 2008ab),

• Nhận dạng chữ số viết tay (Zhu et al., 2003),

• Dịch máy (machine translation) (Haffari and Sarkar, 2009; Haffari et al., 2009),

• Nhận dạng thực thể ghi tên (Shen et al., 2004; Laws and Schütze, 2008),

Trang 21

2.7 Kết luận

Trong chương này đã trình bày cơ sở lý thuyết của học tích cực Giới thiệu học tích cực là gì, phương pháp học tích cực, các kịch bản và các phương pháp truy vấn

Tóm lại, phương pháp học tích cực được tóm tắt lại như sau: Đầu tiên chúng ta chọn một mô hình và độ tổn thất mô hình thích hợp với bài toán học Sau đó chúng ta cũng chọn một phương pháp cho việc tính độ tổn thất mô hình tiềm năng đưa ra câu truy vấn tiềm năng Với mỗi câu truy vấn chúng ta đánh giá độ tổn thất tiềm năng và chúng ta lựa chọn để đưa ra câu truy vấn, câu truy vấn này sẽ đưa ra được độ tổn thất mô hình tiềm năng thấp nhất

Trang 22

CHƯƠNG III - MỘT SỐ THUẬT TOÁN HỌC TÍCH

là một phần của học máy kể từ những năm 1958 và đã có nhiều phân tích lý thuyết về nó Phần này sẽ trình bày thuật toán học tích perceptron chuẩn và thuật toán perceptron tích cực có cải tiến bước cập nhật do Dasgupta đề xuất năm 2005 [32]

3.1.2 Thuật toán perceptron

Cho tập dữ liệu học           với    và  

  là một số nguyên xác định  là dữ liệu dương (+1) hay âm (-1) Một tài liệu  được gọi là dữ liệu dương nếu nó thuộc lớp !;  được gọi là

dữ liệu âm nếu nó không thuộc lớp ! Bộ phân lớp tuyến tính được xác định

bằng siêu phẳng chia dữ liệu thành vào các lớp thuộc tính Tập các giả thiết như vậy ta có:

Trong đó $  và $&   là các hệ số có thể điều chỉnh đóng vai trò

là tham số của mô hình Hàm phân lớp nhị phân h: Rm → {0,1}, có thể thu được bằng cách xác định dấu của (:

Trang 23

)  *+'+ế,+# ' ế,+# - '/+ 3.2+Như vậy việc học mô hình phân lớp chính là việc xác định siêu phẳng

từ dữ liệu Với thuật toán này, mỗi dữ liệu được xem là một điểm trong mặt phẳng Dữ liệu học là tách rời tuyến tính (linearly separable) nếu tồn tại một siêu phẳng sao cho hàm phân lớp phù hợp với tất cả các nhãn, tức là

# - ' với mọi i = 1, ,n Với giả thuyết này, Rosenblatt đã đưa ra một

thuật toán lặp đơn giản để xác định siêu phẳng:

Mục đích của thuật toán Perceptron là tìm ra được một siêu phẳng bằng cách làm giảm thiểu đi khoảng cách của các điểm dữ liệu phân lớp nhầm (misclassified) tới đường biên quyết định Nó bắt đầu với việc dự đoán các tham số ban đầu cho mặt phẳng phân cách, và sau đó khi có những sai lầm xảy ra thì nó cập nhật lại việc dự đoán trước đó

Perceptron

Khởi tạo các giả thiết ban đầuv0

For t=0 to n do

Dự đoán: if #3 3 4 '+then 53  678#3 3 else 53  678#3 3

Bước lọc: quyết định hỏi nhãn y t của điểm x t

Cập nhật:

If 3#3 3 9 ' then

#3:;  #3 3 3Bước lọc phù hợp

else #3:;  #3

Hình 3.1 Thuật toán perceptron chuẩn [32]

Trang 24

Thuật toán chọn tập các giả thiết như là mô hình của thuật toán và lỗi tổng quát của mỗi giả thiết làm độ tổn thất của mô hình Với giả thiết # bất kỳ

thuộc R d sẽ có miền lỗi ξ3    6<678#3  = 678, , u là vector

đơn vị Do đó thuật toán sẽ lựa chọn các dữ liệu sao cho giảm miền lỗi của giả thiết càng nhiều càng tốt

Bước cập nhật

Rosenblatt [17] là người đầu tiên phân tích hoạt động hội tụ của bước cập nhật perceptron, nó bao gồm qui tắc đơn giản sau đây:

if (x t , y t) bị phân lớp nhầm (misclassified), then #3:;  #3 33

Vì vậy, thay vì sử dụng một biến của nguyên tắc cập nhật, theo Motzkin và Schoenberg [40] đã cải tiến bước cập nhật theo quy tắc sau:

if (x t , y t ) bị phân lớp nhầm, then v t+1 = v t −2(v t x t )x t

Giả sử x t đã chuẩn hóa theo đơn vị chiều dài Lưu ý rằng bản cập nhật

cũng có thể viết như v t+1 = v t +2y t |v t x t | x t, chỉ khi bản cập nhật được thực hiện trên những sai lầm, trong trường hợp này theo định nghĩa yt≠ SGN (v t

xt) Vì vậy Motzkin và Schoenberg [40] đang chia mức độ các bản cập nhật

sau của perceptron chuẩn theo một thừa số 2|vt xt| để tránh những dao động gây ra bởi các điểm gần một nửa không gian đại diện bởi các giả thuyết hiện thời Motzkin và Schoenberg đã giới thiệu quy tắc này, trong bối cảnh giải quyết các bất đẳng thức tuyến tính, và gọi nó là phương pháp "phản xạ" (Reflexion) Sau đó, Hampson và Kibler [34] áp dụng nó để học tập bộ phân tách tuyến tính, trong một khuôn khổ phân tích khác với chúng ta Cùng một quy tắc, nhưng không có tham số 2, đã được sử dụng trong nhiều nghiên cứu trước đây [4] nghiên cứu về việc học các bộ phân lớp tuyến tính từ dữ liệu nhiễu, trong một thiết lập khối Hai ông có thể chỉ ra rằng công thức của họ có

sự thực hiện tổng quát trong một thiết lập giám sát (không tích cực)

Bước lọc

Trang 25

Với giới hạn mà thuật toán đã đưa ra, thì luật lọc tự nhiên là truy vấn

các điểm xt khi |v t x t | nhỏ hơn ngưỡng s t Sự lựa chọn s t là rất quan trọng Nếu nó là quá lớn, sau đó chỉ một phần nhỏ rất ít các điểm đã truy vấn sẽ thực

sự bị phân lớp sai - hầu như tất cả các nhãn sẽ bị lãng phí Nói cách khác, nếu

st quá bé, thì thời gian chờ đợi cho một truy vấn có thể khá cao, và khi một bản cập nhật thực sự được thực hiện, thì độ lớn của nó có thể lại rất nhỏ

Vì vậy, tác giả thiết lập ngưỡng cho phù hợp: tác giả bắt đầu với st có giá trị cao, và chia nó cho 2 cho đến khi đạt được mức mà có đủ bộ phân lớp sai các điểm đã truy vấn Áp dùng chiến lược này vào bản cập nhật Perceptron

đã chỉnh sửa, chúng ta nhận được một thuật toán học tích cực (hình 3.5) với

độ phức tạp nhãn >?@ AB;C), tạo ra >?@ AB;C) lỗi và có lỗi ≤ε

3.1.3 Cải tiến bước cập nhật perceptron

Phần này mô tả một thuật toán Perceptron đã đượcc cải tiến Không

giống như Perceptron chuẩn, thuật toán Perceptron cải tiến đảm bảo rằng vt.u tăng nghĩa là lỗi của vt giảm đơn điệu Một sự khác biệt nữa của bản cải tiến chuẩn (so với các bản khác) là độ lớn của các giả thuyết hiện thời luôn luôn là

1 Điều này rất thuận lợi cho việc phân tích

Perceptron cải tiến

Trang 26

Trong thuật toán perceptron chuẩn hình 3.1, bước cập nhật perceptron

chuẩn vt+1 = v t + xt.yt là cùng hướng nhưng khác độ lớn (được chia theo hệ số

2|vt.xt|)

Các thuật toán Perceptron cải tiến chuẩn được đưa ra trong hình 3.2 Ta có

Và D#3:;DE  D#3DE F#3 3ED3DE F#3 3E   (3.4)

Ngược lại, đối với bản cải tiến Perceptron chuẩn, mức độ của vt tăng đều đặn

Với bản cải tiến đã sửa, lỗi có thể chỉ giảm bởi vì v t u cũng chỉ giảm

#3:; ,  #3 ,  2#3 3 3 ,  #3 , 2<#3 3<<3 ,< (3.5)

Biểu thức thứ 3.4 xảy ra theo thực tế là vt phân lớp nhầm xt Do vậy vt.u tăng,

và sự tăng có thể bị chặn từ dưới bằng cách chỉ ra <#3 3<<3 ,< là lớn

Trước đây Hamson và Kibler đã từng sử dụng bản cập nhật này cho việc học

bộ phân tách tuyến tính [34], gọi là “Reflection” (Sự phản ánh), dựa trên phương pháp “Reflexion” của Motzkin and Schoenberg [40]

3 #3:;  3 #3  23 #33 3  3 #3 (3.6)

Nói chung, biểu thức (3.6) có thể coi là bản cập nhật sửa của dạng #3:; 

#3 G#3 33, dạng này tương đương với phương pháp “Reflexion” trong

việc giải bất đẳng thức tuyến tính [30][40] Khi α≠2, vector vt không còn giữ

độ dài cố định nữa, tuy nhiên cũng có thể xác minh được rằng các vector đơn

vị tương ứng #53thỏa mãn:

#53:; ,  #53 , G<#53 3<<3 ,<HI  G2  G#53 3E, (3.7)

Và do vậy bất kỳ sự lựa chọn nào α∈[0,2] cũng đảm bảo rằng lỗi không tăng Blum và cộng sự[4] đã sử dụng α=1 bảo đảm rằng sự phát triển trong mẫu số (phân tích của họ đã không dựa vào tiến bộ trong tử số) miễn là #53 , và

Trang 27

#53 3E bị chặn ở 0 Phương pháp tiếp cận của họ được sửa dụng một loạt

như là một phần của thuật toán phức tạp hơn cho học noise_tolerant Trong khung làm việc tuần tự, có thể chặn <#53 3<<3 ,< bởi 0, dưới sự phân tán thống nhất, và do đó sự lựa chọn α=2 là thuận lợi nhất, nhưng α=1 sẽ có thể tốt hơn

Hình 3.3 Quy tắc học tích cực là truy vấn các nhãn cho các điểm x trong L, L

được xác định bởi ngưỡng s t trên |v t x t| [32]

thuật toán có vt Trong hình 3.3, vùng đã gán nhãn L đơn giản là miền được

hình thành bởi việc tạo ngưỡng cho các lề của một ví dụ ứng viên đối với vt

Phiên bản tích cực của thuật toán Perceptron cải tiến được chỉ ra trong hình 3.4 Thuật toán này tương tự thuật toán của phần trước trong các bước

cập nhật Đối với quy tắc lọc, sẽ duy trì một ngưỡng st và chỉ yêu cầu cho các nhãn của các ví dụ có <#3 < 9 3 Miền xấp xỉ lỗi đạt được bằng cách chọn

ngưỡng st thích hợp, để quản lý sự cân bằng giữa vùng L đang quá lớn, gây ra nhiều nhãn bị lãng phí mà không tìm được ξt, và L chỉ chứa các điểm có lề rất

Trang 28

nhỏ đối với vt, vì bước cập nhật sẽ tạo ra sự cải tiến rất nhỏ trên các điểm như

thế Thuật toán giảm ngưỡng thích ứng với thời gian, bắt đầu với s1=1/J@ và giảm ngưỡng đi 2 lần cho đến khi nào có thể thực hiện các ví dụ đã gán nhãn trên ngưỡng là đúng

Chúng ta giới hạn cận dưởi của st đối với lỗi chỉ ra rằng với xác suất cao thì

ngưỡng st không bao giờ là nhỏ

Perceptron cải tiến

Trang 29

Thuật toán trong hình 3.4 đã được Dasgupta đã trình bày bằng cách cải tiến bước cập nhật của thuật toán perceptron [32], thu được một thuật toán đơn giản hơn, đạt được lỗi mục tiêu ε bằng cách sử dụng số lượng nhãn xác định >?@ AB;C

Trong lý thuyết phát triển của học tập tích cực, các kịch bản không tầm thường và cụ thể nhất mà trong đó học tập tích cực đã được thể hiện để cung cấp cho một sự cải tiến hàm số mũ trong độ phức tạp mẫu là học một một bộ phân tách tuyến tính cho các dữ liệu phân bố đều trên mặt cầu đơn vị

3.2 Học tích cực với SVM

3.2.1 Giới thiệu

Bộ phân loại SVM đã được sử dụng rộng rãi trong rất nhiều bài toán phân lớp Tuy nhiên chúng chỉ được sử dụng với tập dữ liệu huấn luyện đã được lựa chọn ngẫu nhiên Trong mục này sẽ trình bày thuật toán Active Support Vector Machines (Acitve SVM) có thể làm giảm đi dung lượng cũng như sự cần thiết của tập dữ liệu huấn luyện

3.2.2 Máy hỗ trợ vector

3.2.2.1 Máy vector hỗ trợ sử dụng phương pháp qui nạp

Máy vector hỗ trợ [41] có các cơ sở lý thuyết vững chắc và đạt được những thành công thực nghiệm xuất sắc Chúng cũng được áp dụng cho những bài toán như: nhận dạng số viết bằng tay [24], nhận dạng đối tượng [13], và phân lớp văn bản [37][33]

Hãy xét thuật toán SVM cho bài toán phân lớp nhị phân Cho tập huấn luyện ; E   M là các vector trong không gian X⊆R d

và tập các nhãn

; E   M với yi∈ {-1,1} Theo cách hiểu thông thường nhất, thì SVMs là các siêu phẳng chia tập dữ liệu huấn luyện bằng một lề cực đại Tất cả các vector nằm trên một mặt của siêu phẳng đều được gán nhãn là -1, và tất cả các

Trang 30

vector nằm trên mặt kia đều được gán nhãn là 1 Các vector huấn luyện gần siêu phẳng nhất gọi là vector hỗ trợ (support vector)

Hình 3.5 (a) Máy hỗ trợ vector tuyến tính đơn giản (b) Máy hỗ trợ vector (đường nét đứt) và máy hỗ trợ vector hồi quy (đường nét liền) Những vòng tròn biểu diễn dữ liệu chưa được gán nhãn

Nói chung, SVMs cho phép chiếu dữ liệu huấn luyện gốc trong không gian X sang một không gian đặc trưng F nhiều chiều hơn thông qua một phép phân Mercer K Nói cách khác chúng ta có tập các bộ phân lớp như sau:

Trang 31

siêu phẳng trong F sao cho các siêu phẳng trong F tương ứng với các đường biên quyết định phức tạp hơn trong không gian gốc X

Hai hàm nhân thường sử dụng là hàm nhân đa thức P\ # 

\ # ] tạo ra đường biên đa thức bậc p trong không gian đầu vào X và

hàm nhân radial basis fuction ^_ `  abcdbe.dbe tạo đường biên bằng

cách định vị trọng số Gauss dựa trên các dữ liệu huấn luyện chính Trong hình 3.6 minh họa đường biên quyết định trong không gian đầu vào X của một SVM sử dụng hàm nhân đa thức bậc 5 Đường biên quyết định được làm cong trong không gian X tương ứng với siêu phẳng lề cực đại trong tập thuộc tính

F

Các tham số αi xác định SVM có thể được tìm trong hàm đa thức thời gian bằng cách giải quyết bài toán tối ưu lồi[42]:

fg G ;Eg Gh GhhPi  (3.10) với : αi > 0 i=1…n

3.2.2.2 Máy vector hỗ trợ sử dụng phương pháp transduction

Giả sử tập dữ liệu huấn luyện đã được gán nhãn và bài toán đặt ra là tạo

ra một bộ phân lớp thực hiện tốt trên tập dữ liệu kiểm tra chưa biết Thêm vào trong phương pháp qui nạp thông thường, SVMs có thể sử dụng cho bài toán transduction Đầu tiên là cho tập dữ liệu đã gán nhãn và chưa gán nhãn Bài toán học là phải khai báo các nhãn tới các dữ liệu chưa gán nhãn càng chính xác càng tốt SVMs có thể thực hiện phương pháp transduction bằng cách tìm các siêu phẳng làm cực đại hóa lề liên quan đến dữ liệu đã gán nhãn và chưa gán nhãn Ví dụ được thể hiện ở hình 3.5b Gần đây, các transduction SVM(TSVM) còn được sử dụng để giải quyết bài toán phâp lớp văn bản [37][38] đã đạt được một số tiến bộ trong việc thực hiện cân bằng tỉ số độ chính xác/độ hồi phục (precision/recall) trên các SVM qui nạp

Trang 32

Hình 3.6 Máy hỗ trợ vector sử dụng hàm nhân đa thức bậc 5

Không giống SVM, TSVM có độ phức tạp thời gian đa thức, chi phí để tìm được hướng giải quyết cho TSVM tăng lên theo hàm mũ cùng với sự tăng của dữ liệu chưa được gán nhãn Bằng trực quan, ta phải gán tất cả các nhãn

có thể cho dữ liệu chưa gán nhãn, và mỗi một nhãn phải tìm một siêu phẳng

có lề cực đại Do vậy sẽ sử dụng thuật toán xấp xỉ thay thế Ví dụ, Joachims

sử dụng dạng tìm kiếm quỹ tích để gán nhãn và tái gán nhãn cho dữ liệu chưa được gán nhãn để cải tiến kích thước của lề

3.2.3 Version space

Cho tập dữ liệu huấn luyện đã gán nhãn và hàm nhân Mercer K, khi đó

sẽ có một tập các siêu phẳng chia dữ liệu thành vào không gian thuộc tính F Tập các giả thuyết phù hợp như vậy gọi là version space [39] Nói cách khác,

giải thuyết f là trong version space nếu với mọi dữ liệu huấn luyện xi có nhãn

yi thì f(xi)>0 nếu yi=1 và f(xi)<0 nếu yi=-1 Tổng quát hơn:

Định nghĩa 3.5.1: Cho tập các giả thuyết:

Ngày đăng: 17/02/2014, 20:59

Nguồn tham khảo

Tài liệu tham khảo Loại Chi tiết
[1] Hà Quang Thụy, Phan Xuân Hiếu, Đoàn Sơn, Nguyễn Trí Thành, Nguyễn Thu Trang, Nguyễn Cẩm Tú (2009), Giáo trình khai phá dữ liệu Web, Nhà xuất bản giáo dục Việt Nam Sách, tạp chí
Tiêu đề: Giáo trình khai phá dữ liệu Web
Tác giả: Hà Quang Thụy, Phan Xuân Hiếu, Đoàn Sơn, Nguyễn Trí Thành, Nguyễn Thu Trang, Nguyễn Cẩm Tú
Nhà XB: Nhà xuất bản giáo dục Việt Nam
Năm: 2009
[2] Nguyễn Thanh Thủy (2001), Khai phá dữ liệu, Nhà xuất bản Kỹ thuật và ứng dụng.Tiếng Anh Sách, tạp chí
Tiêu đề: Khai phá dữ liệu
Tác giả: Nguyễn Thanh Thủy
Nhà XB: Nhà xuất bản Kỹ thuật và ứng dụng
Năm: 2001
[4] A. Blum, A. Frieze, R. Kannan, and S. Vempala (1996). A polynomial-time algorithm for learning noisy linear threshold functions. In Proc. 37th Annual IEEE Symposium on the Foundations of Computer Science Sách, tạp chí
Tiêu đề: A polynomial-time "algorithm for learning noisy linear threshold functions
Tác giả: A. Blum, A. Frieze, R. Kannan, and S. Vempala
Năm: 1996
[5] B. Busser, R. Morante (2005) ‘Designing an active learning based system for corpus annotation’, In Procesamiento del Lenguaje Natural, núm. 35, pp.375-381 Sách, tạp chí
Tiêu đề: Designing an active learning based system for "corpus annotation
[6] Burr Settles (2008) Curious Machines: Active Learning with Structured Instances. Ph.D. dissertation, University of Wisconsin–Madison, USA Sách, tạp chí
Tiêu đề: Curious Machines: Active Learning with Structured "Instances
[7] Burr Settles (2009) ‘Active learning literature survey’ Computer Sciences Technical Report 1648, University of Wisconsin–Madison Sách, tạp chí
Tiêu đề: Active learning literature survey
[8] Burr Settles, M. Craven (2008) ‘An analysis of active learning strategies for sequence labeling tasks’ In Proceedings of the Conference on Empirical Methods in Natural Language Processing (EMNLP), pp. 1069–1078 Sách, tạp chí
Tiêu đề: An analysis of active learning strategies for "sequence labeling tasks
[9] DC.A. Thompson, M.E. Califf and R.J. Mooney (1999) ‘Active learning for natural language parsing and information extraction’, In Proceedings of the 16 th International Conference on Machine Learning, pp. 406-414 Sách, tạp chí
Tiêu đề: Active learning for "natural language parsing and information extraction
[10] C. Campbell, N. Cristianini, &amp; A. Smola (2000). Query learning with large margin classifiers. Proceedings of the Seventeenth International Conference on Machine Learning Sách, tạp chí
Tiêu đề: Query learning with large "margin classifiers
Tác giả: C. Campbell, N. Cristianini, &amp; A. Smola
Năm: 2000
[11] C. E. Shannon, (1948) ‘A mathematical theory of communication’ Bell System Technical Journal, 27:379-423,623-656 Sách, tạp chí
Tiêu đề: A mathematical theory of communication
[12] C.J. Burges. A tutorial on support vector machines for pattern recognition. Data Mining and Knowledge Discovery, 1999 Sách, tạp chí
Tiêu đề: A tutorial on support vector machines for pattern recognition
[13] C. Nakajima, I. Norihiko, M. Pontil &amp; Poggio (2000). Object recognition and detection by a combination of support vector machine and rotation Sách, tạp chí
Tiêu đề: Object recognition and detection by a combination of support vector machine and rotation
Tác giả: C. Nakajima, I. Norihiko, M. Pontil, Poggio
Năm: 2000
[14] D.D. Lewis, W. Gale (1994) ‘A sequential algorithm for training text classifiers’, In Proceedings of the ACM SIGIR Conference on Research and Development in Information Retrieval, pp. 3-12 Sách, tạp chí
Tiêu đề: A sequential algorithm for training text "classifiers’
[15] D.D. Lewis, J. Catlett (1994) ‘Heterogeneous Uncertainty Sampling for Supervised Learning’ In Proceedings of the 11 th International Conference on Machine Learning, pp.148-156 Sách, tạp chí
Tiêu đề: Heterogeneous Uncertainty Sampling for "Supervised Learning
[16] D. Hakkani-Tür, G. Riccardi and A. Gorin (2002) ‘Active learning for automatic speech recognition’ In Proceedings of ‘International Conference on Acoustics, Speech and Signal Processing (ICASSP), Orlando, FL Sách, tạp chí
Tiêu đề: Active learning for "automatic speech recognition
[17] F. Rosenblatt (1958). The perceptron: A probabilistic model for information storage and organization in the brain. Psychological Review, 65:386–407 Sách, tạp chí
Tiêu đề: The perceptron: A probabilistic model for information "storage and organization in the brain
Tác giả: F. Rosenblatt
Năm: 1958
[19] G. Tur, R.E. Schapire and D. Hakkani-Tür (2003) ‘Active learning for spoken language understanding’ In Proceedings of International Conference on Acoustics, Speech and Signal Processing (ICASSP), Hong Kong Sách, tạp chí
Tiêu đề: Active learning for "spoken language understanding
[20] H. Seung, M. Opper &amp; H. Sompolinsky (1992). Query by committee. Proceedings of Computational Learning Theory Sách, tạp chí
Tiêu đề: Query by committee
Tác giả: H. Seung, M. Opper, H. Sompolinsky
Nhà XB: Proceedings of Computational Learning Theory
Năm: 1992
[21] J. Baldridge, M. Osborne (2004) ‘Active learning and the total cost of annotation’, In Proceedings of the Conference on Empirical Methods in Natural Language Processing, Forum Convention Center, Barcelona, Spain, pp. 9-16 Sách, tạp chí
Tiêu đề: Active learning and the total cost of "annotation
[22] J. Zhu, H. Wang, E. Hovy (2008a) ‘Learning a stopping criterion for active learning for word sense disambiguation and text classification’ In Proceedings of the 3 rd International Joint Conference on NLP (IJNLP), Heydarabad, India. pp. 366-372 Sách, tạp chí
Tiêu đề: Learning a stopping criterion for active "learning for word sense disambiguation and text classification

HÌNH ẢNH LIÊN QUAN

Hình 3.3 Quy tắc học tích cực là truy vấn các nhãn cho các điểm x trong L, L - 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
Hình 3.3 Quy tắc học tích cực là truy vấn các nhãn cho các điểm x trong L, L (Trang 27)
Hình 3.6 Máy hỗ trợ vector sử dụng hàm nhân đa thức bậc 5. - 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
Hình 3.6 Máy hỗ trợ vector sử dụng hàm nhân đa thức bậc 5 (Trang 32)
Hình  3.7  (a)  Tính  đối  ngẫu  trong  version  space.  Bề  mặt  của  siêu  khối  biểu  diễn các vector trọng số đơn vị - 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
nh 3.7 (a) Tính đối ngẫu trong version space. Bề mặt của siêu khối biểu diễn các vector trọng số đơn vị (Trang 34)
Hình 4.1 Bộ l - 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
Hình 4.1 Bộ l (Trang 44)
Hình 4.2 Bộ lọc th - 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
Hình 4.2 Bộ lọc th (Trang 45)
Bảng 4.1. Ví dụ nội dung của 4 thư. - 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
Bảng 4.1. Ví dụ nội dung của 4 thư (Trang 49)
Bảng 4.2 Từ điển từ và chỉ số cho dữ liệu trong bảng 4.1 - 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
Bảng 4.2 Từ điển từ và chỉ số cho dữ liệu trong bảng 4.1 (Trang 49)
Bảng 4.3. Biểu diễn véctơ cho dữ liệu trong bảng 4.1 - 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
Bảng 4.3. Biểu diễn véctơ cho dữ liệu trong bảng 4.1 (Trang 50)
Hình 4.4 Giao diện lựa chọn thư mục chứa dữ liệu - 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
Hình 4.4 Giao diện lựa chọn thư mục chứa dữ liệu (Trang 51)
Hình 4.3. Giao diện chính của chương trình  Lựa chọn thư mục chứa dữ liệu để lấy dữ liệu đưa vào chương trình xử lý: - 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
Hình 4.3. Giao diện chính của chương trình Lựa chọn thư mục chứa dữ liệu để lấy dữ liệu đưa vào chương trình xử lý: (Trang 51)
Hình 4.5 Thông báo quá trình làm sạch dữ liệu đã thành công - 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
Hình 4.5 Thông báo quá trình làm sạch dữ liệu đã thành công (Trang 52)
Hình 4.7. Kết quả chạy thuật toán Perceptron - 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
Hình 4.7. Kết quả chạy thuật toán Perceptron (Trang 54)
Hình 4.10. Kết quả chạy thuật toán SELF_CONF - 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
Hình 4.10. Kết quả chạy thuật toán SELF_CONF (Trang 56)
Hình 4.12. Kết quả chạy thuật toán BALANCE_EE - 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
Hình 4.12. Kết quả chạy thuật toán BALANCE_EE (Trang 57)
Hình 4.11. Kết quả chạy thuật toán KFF - 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
Hình 4.11. Kết quả chạy thuật toán KFF (Trang 57)

TỪ KHÓA LIÊN QUAN

TÀI LIỆU CÙNG NGƯỜI DÙNG

TÀI LIỆU LIÊN QUAN

w