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

Nghiên cứu các phương pháp xác định cấu trúc cây tổng quát cho phân đa lớp văn bản

46 22 0

Đ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

Định dạng
Số trang 46
Dung lượng 916,92 KB

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

Nội dung

Phần lớn dữ liệu được lưu trữ dưới dạng văn bản nên phân lớp văn bản là bài toán hết sức phổ biến trong ngành khai phá dữ liệu và máy học và đã được ứng dụng rỗng rãi trong nhiều lĩnh vự

Trang 1

Nghiên cứu các phương pháp xác định cấu trúc cây tổng quát cho phân đa lớp văn bản

BÁO CÁO TĨM TẮT

Đề tài đã thực hiện:

- Nghiên cứu tổng quan và chi tiết các phương pháp và các thuật tốn về phân lớp thơng tin (văn bản) như cây quyết định, phương pháp k-láng giềng, phương pháp SVM, FSVM, phương pháp nạve bayes…So sánh và đánh giá các phương pháp phân lớp thơng tin đã nghiên cứu Nghiên cứu tổng quan về các chiến lược phân đa lớp như phương pháp OAO, phương pháp OAR, phương pháp HAH, phương pháp DDAG, phương pháp ADAG

- Thử nghiệm kết hợp thuật tốn SVM với các chiến lược phân đa lớp như OAO, OAR, HAH, DDAG và ADAG

- Kết quả thử nghiệm và dữ liệu thu thập được trên mơ hình nghiên cứu và xây dựng được đánh giá tương đối khá tốt cĩ thể ứng dụng phục vụ bài tốn phân đa lớp văn bản

- Bài báo “A Combination method based on characteristics of feature for feature selection in text categorization” được chấp nhận trong kỷ yếu đăng tại hội nghị ACIS 2014(The third asian conference on information systems) từ 1-3/12/2014 tại Nha Trang do IEEJ, JAIST, ĐHBK, ĐHNT và Viện John Von Neuman đồng tổ chức và tài trợ Bài báo “Local vector space model for multi-class text classification” được chấp nhận trong kỷ yếu đăng tại hội nghị RIVF 2015 (The

2015 IEEE RIVF International Conference on Computing & Communication Technologies) từ 25-28/01/2015 tại ĐH Cần Thơ do ĐHBK, ĐHCT và IEEE đồng

tổ chức và tài trợ

- Bài báo “Sử dụng lý thuyết tập thơ cho việc tạo cấu trúc cây HAH trong phân lớp

đa lớp” được chấp đăng tại tạp chí khoa học trường Đại học Sư Phạm TpHCM (ISSN 1859-3100) Bài báo “Improving multi-class text classification method combined the SVM classifier with OAO and DDAG strategies” được chấp nhận đăng bởi tạp chí JCIT (Journal of Convergence Information Technology – ISSN: 1975-9320) của Advance Institute of Convergence IT

- Đào tạo 6 sinh viên kỹ sư CNPM và 3 Thạc sĩ chuyên ngành KHMT

Trang 2

ABSTRACT

The subject researched about:

- Researching the general and detail about algorithms to classify as decision tree algorithm, k-NN algorithm, SVM algorithm, FSVM algorithm, Nạve bayes algorithm…To compare and evaluate these algorithms to classify documents Overview of the general methods about multi-classification strategy such as OAO method, OAR method, HAH method, DDAG method, ADAG method

- Testing the SVM algorithm combined with multi-classification strategy such as OAO, method, OAR method, HAH method, DDAG method, ADAG method

- Test results and data collected on research model are relatively good evaluation can

be applied to documents multi-classification problem

- The article "A Combination Characteristics of the method based on feature for feature selection in text categorization" was accepted in the conference proceedings published in ACIS 2014 (The third Asian conference on information systems) 1-3 / 12/2014 at NhaTrang by IEEJ, JAIST, University of Technology-VNU-HCM, NhaTrang University and John von Neumann Institute co-organizers and sponsors The article "Local vector space model for multi-class text classification" was accepted in the conference proceedings published in RIVF 2015 (The 2015 IEEE RIVF International Conference on Computing & Communication Technologies) 25-28/01/2015 at CanTho University by Polytechnic, CanTho University and IEEE co-organizers and sponsors

- The article “Using the rough set theory for creating HAH tree structure for multi layer” was accepted in scientific journal of HCMC University of Pedagogy (ISSN 1859-3100) The article “Improving multi – class text classification method combined with the SVM classifier with OAO and DDAG strategies” acceptable published by JCIT of Advanced Institute of Convergence IT (Journal of Convergence Information Technology – ISSN:1975-9320)

- Training 6 software engineering graduated students and 3 masters of computer science

Trang 3

I NGHIÊN CỨU CÁC PHƯƠNG PHÁP PHÂN LỚP DỮ LIỆU

Trong thời đại bùng nổ dữ liệu và thông tin, đặc biệt là sự ra đời của internet, dữ liệu được phát triển theo cấp số nhân, vì thế khả năng nhận lĩnh dữ liệu trở nên vô cùng to lớn đi cùng với sự phát triển như vũ bão của máy tính, đặc biệt là phần cứng

Internet là một kho thông tin khổng lồ của cả thế giới Các thông tin mà nó cung cấp thuộc mọi ngành, mọi lĩnh vực, các thông tin này ngày càng phong phú và được cập nhật liên tục thông qua các trang Web Có rất nhiều các ứng dụng được phát triển để khai thác kho thông tin khổng lồ này Tuy nhiên, bước đầu tiên mà cũng là quan trọng nhất là phải nhận biết và lấy ra phần thông tin mang nội dung chính trên các trang web bên cạnh các thông tin về trình bày, định dạng

Đã có rất nhiều nghiên cứu về khai thác thông tin trên Internet như tìm kiếm, phân loại các trang Web theo yêu cầu dựa vào từ khóa hoặc ngữ nghĩa của câu truy vấn đạt kết quả rất khả quan Ngoài ra, việc khai thác thông tin từ nguồn dữ liệu quan hệ đã và đang được phát triển mạnh mẽ với nhiều kết quả rất khả quan trong các ứng dụng như:

Hỗ trợ ra quyết định, thống kê, dự báo, … với các kỹ thuật như: Cây quyết định,giải thuật di truyền, mạng Nơron, … Điều này được chứng minh thông qua việc phát triển mạnh mẽ các hệ quản trị cơ sở dữ liệu nổi tiếng như Microsoft SQL Server, Oracle,

hỗ trợ rất tốt những tính năng trên Những ứng dụng này đòi hỏi số lượng dữ liệu đầu vào rất lớn

Khai thác nguồn dữ liệu này trên internet không dễ dàng vì nhiều lý do như các trang web có thể là tài sản và là sở hữu của các cơ quan, công ty, tổ chức, và thường chỉ được trình bày ở dạng rời rạc và thường đã được xử lý nên khó sử dụng được trực tiếp Ngoài ra chỉ bằng một thao tác tìm kiếm đơn giản, người sử dụng có thể nhận về một khối lượng khổng lồ các trang web có chứa thông tin liên quan đến nội dung tìm kiếm

Vì thế nó mang đến cho người sử dụng rất nhiều khó khăn trong việc chắt lọc ra các thông tin có ích để thu được các tri thức mới Phát hiện tri thức và khai phá dữ liệu là câu trả lời mới nhất nhằm phát hiện ra các tri thức mới từ khối dữ liệu khổng lồ mà con người có được

Trong các dữ liệu thì văn bản là loại dữ liệu phổ biến mà con người thường gặp phải nhất Với sự bùng nổ thông tin và phát triển mạnh mẽ của Internet như hiện nay thì việc phân lớp dữ liệu lại càng có vai trò tích cực và vô cùng quan trọng Phần lớn dữ liệu được lưu trữ dưới dạng văn bản nên phân lớp văn bản là bài toán hết sức phổ biến trong ngành khai phá dữ liệu và máy học và đã được ứng dụng rỗng rãi trong nhiều lĩnh vực như: truy vấn và rút trích thông tin, tổ chức phân cấp dữ liệu web, lọc spam mail, định tuyến thư điện tử, xác định thể loại văn bản,

Phân lớp văn bản là bài toán cơ bản trong khai phá dữ liệu văn bản Các hệ thống phân lớp văn bản là các hệ thống phải có khả năng xác định, khai phá ra nội dung thông tin của các văn bản một cách tự động Tự động phân lớp văn bản là một nhiệm vụ rất quan trọng có thể giúp ích trong việc tổ chức cũng như tìm kiếm thông tin tài nguyên trên nguồn tài nguyên lớn này Phân lớp văn bản là quá trình gán văn bản một cách tự động vào một hoặc nhiều lớp cho trước Phân lớp văn bản là việc gán tên các chủ đề (tên lớp/nhãn lớp) đã được xác trước, vào các văn bản dựa trên nội dung của chúng

Trang 4

Phân lớp văn bản là công việc được sử dụng để hỗ trợ trong quá trình tìm kiếm thông tin, chiết lọc thông tin, lọc văn bản hoặc tự động dẫn đường cho các văn bản tới những chủ đề xác định trước

Các hệ thống phân lớp có thể có thể ứng dụng trong việc phân loại tài liệu của của các thư viện điện tử, phân loại văn bản báo chí trên các trang điện tử,…những hệ thống tốt, cho ra kết quả khả quan, giúp ích nhiều cho con người

Khái niệm

Phân lớp văn bản (Text classification) là quá trình gán nhãn (tên lớp / nhãn lớp)các văn bản ngôn ngữ tự nhiên một cách tự động vào một hoặc nhiều lớp cho trước

Hình 1.1 Bài toán phân lớp văn bản

Thông thường, các lớp cho trước là các chủ đề nào đó, nhưng cũng có nhiều ứng dụng

mà các lớp được thiết lập theo những tiêu chí khác, như phân lớp theo độ ưu tiên, phân lớp theo chủ đề… Hầu hết các bài toán này sẽ tốn rất nhiều thời gian, công sức và đôi khi không chính xác nếu được phân loại một cách thủ công – tức là đọc từng văn bản

và gán vào một lớp nào đó Đặc biệt với số lượng tài liệu cần phân lớp cực kỳ lớn như hiện nay thì việc phân lớp thủ công là một điều không thể Phân loại những đối tượng mới vào các lớp bằng phương pháp thủ công gặp phải những khó khăn sau:

- Đối với các lĩnh vực đặc biệt, phân loại các đối tượng mới (như cơ sở dữ liệu về

y tế, pháp luật, tài chính, ngân hàng ) vào các lớp cho trước cần có hiểu biết

áp dụng để giải quyết bài toán này

Chính vì những nhược điểm của phương pháp thủ công nên việc xây dựng một bộ phân lớp văn bản tự động là một điều rất quan trọng và cần thiết, đặc biệt là khi hầu hết các thông tin được sinh ra và lưu trữ điện tử Các bài báo khoa học và giải trí là những ví dụ về tập các tài liệu điện tử Với sự phát triển ngày càng mạnh mẽ của mạng

Trang 5

Internet và Intranet đã tạo ra nguồn thông tin vô cùng phong phú Các kỹ thuật phân lớp văn bản sẽ giúp cho nguồn dữ liệu này đã được lưu trữ tự động một cách hiệu quả

và được tìm kiếm nhanh chóng

Phân lớp văn bản được xuất hiện từ những năm 1960, nhưng chỉ 15 năm sau, nó đã trở thành lĩnh vực nghiên cứu chính trong hệ thống thông tin bởi sự đa dạng của các ứng dụng Phân lớp văn bản là công việc được sử dụng để hỗ trợ trong quá trình tìm kiếm thông tin (Information Retrieval), chiết lọc thông tin (Information Extraction), lọc văn bản hoặc tự động dẫn đường cho các văn bản tới những chủ đề xác định trước Một ứng dụng khác của phân lớp văn bản là trong lĩnh vực hiểu văn bản Phân lớp văn bản

có thể được sử dụng để lọc văn bản hoặc một phần văn bản chứa dữ liệu cần tìm mà không làm mất đi tính phức tạp của ngôn ngữ tự nhiên

Biểu diễn văn bản là phương pháp thể hiện văn bản dưới một dạng thức nào đó mà giải thuật học hiểu và sử dụng được các dạng thức này Văn bản đơn thuần là chuỗi các kí

tự, ở dạng nguyên thủy này chỉ có con người mới có thể hiểu được chúng Vì vậy các giải thuật yêu cầu các văn bản phải phải được chuyển hóa sao cho phù hợp với giải thuật học

Định nghĩa phân lớp văn bản

Phân lớp văn bản là đặt một giá trị Boolean cho mỗi cặp , trong đó D

là tập các văn bản và C là tập các lớp cho trước

‐ Văn bản thuộc vào lớp khi cặp gán giá trị là TRUE

‐ Văn bản không thuộc vào lớp khi cặp gán giá trị là FALSE

Hay nói cách khác, phân lớp văn bản là bài toán tìm một hàm Φ:D×C → {T , F} trong

đó D là tập các văn bản và C = {c1,c2,…cm} là tập các lớp cho trước, hàm Φ:D×C →

{T , F} được gọi là bộ phân lớp

Phân loại

Tùy vào những ràng buộc khác nhau ta có thể có nhiều cách phân loại bài toán phân lớp văn bản khác nhau Nhìn chung có thể phân biệt bài toán phân lớp theo hai cách sau:

‐ Phân lớp văn bản nhị phân / đa lớp: Bài toán phân lớp văn bản được gọi là nhị phân nếu |C| = 2, gọi là đa lớp nếu |C| > 2

‐ Phân lớp văn bản đơn nhãn / đa nhãn: Bài toán phân lớp văn bản được gọi

là đơn nhãn nếu mỗi tài liệu được gán vào chính xác một lớp Bài toán phân lớp văn bản được gọi là đa nhãn nếu một tài liệu có thể được gán nhiều hơn một lớp

Trên thực tế, phân lớp hai lớp (phân lớp nhị phân) chỉ là một trường hợp đặc biệt của bài toán phân lớp song do xuất xứ cho nên phân lớp nhị phân có vị trí riêng cả về đặt bài toán lẫn về các giải pháp

Một sô thuật toán biểu diễn văn bản

Việc mô tả lại văn bản được coi là một khâu quan trọng trong quá trình xử lý văn bản Mỗi tài liệu được mô tả như một chuỗi các ký tự, cần phải được biến đổi thành

Trang 6

những mô tả phù hợp với nhiệm vụ và thuật toán xử lý văn bản Có rất nhiều phương pháp biểu diễn văn bản, mỗi phương pháp thích hợp với từng bài toán cụ thể Phương pháp biểu diễn bằng vector là phương pháp 1 trong các phương pháp biểu diễn được quan tâm nhiều nhất hiện nay do các tính chất và ưu điểm của nó Báo cáo đề cập đến phương pháp biểu diễn văn bản theo không gian vector dựa vào tần suất, vì đây được coi là một hướng tiếp cận tương đối đơn giản và rất hiệu quả

để biểu diễn văn bản

Trong mô hình tần xuất, ma trận W={wij} được xác định dựa trên tần số xuất hiện của thuật ngữ ti trong văn bản dj hoặc trong toàn bộ tập văn bản D

a Phương pháp dựa trên tần số thuật ngữ (TF-Term Frequency)

Các giá trị wijđược xác định dựa trên tần số (hay số lần) xuất hiện của thuật ngữ trong văn bản Gọi fijlà tần số của thuật ngữ titrong văn bản dj, thì wij có thể được tính bởi một trong số các công thức sau:

w ij = f ij

w ij = 1+log(f ij)

w ij= f ij Trong phương pháp này, trọng số wijtỷ lệ thuận với số lần xuất hiện của thuật ngữ titrong văn bản dj, wijcàng lớn thì văn bản dj càng phụ thuộc nhiều vào thuật ngữ ti.

Tuy nhiên, cũng có những từ xuất hiện nhiều lần trong văn bản, nhưng nó lại không có ý nghĩa nhiều đối với văn bản như tần số xuất hiện của nó Phương pháp IDF trình bày sau đây, phần nào khắc phục nhược điểm của phương pháp

) log(

i ij

h m

h

m

Trong đó, m là số lượng văn bản, hilà số các văn bản có chứa thuật ngữ ti

Trọng số wijtrong công thức này cho ta biết độ quan trọng của thuật ngữ titrong văn bản dj Nếu wijcàng lớn, thì số lượng văn bản chứa ti càng ít Điều đó có nghĩa là ti là thuật ngữ quan trọng để phân biệt văn bản djvới các văn bản khác trong cơ sở dữ liệu

c Phương pháp TF × IDF

Phương pháp này, thực chất là sự kết hợp của phương pháp TF và phương pháp IDF Theo phương pháp này, trọng số wijđược tính bằng tần số xuất hiện của thuật ngữ titrong văn bản djvà khả năng xuất hiện của thuật ngữ titrong các văn bản khác, cụ thể:

nếu ti xuất hiện trong dj

nếu ngược lại

Trang 7

1 log

) log(

i

ij ij

h h

m f

Trong phần này đề tài đã trình bày và phân tích các bước tiền xử lý văn bản bao gồm: thuật toán tách từ, phương pháp lựa chọn đặc trưng và biểu diễn văn bản Kết quả của các bước này là mỗi văn bản diđã được biểu diễn bằng một vector

x i =(w i1 , w i2 , , w in ), w ij là trọng số của từ t j trong văn bản d i Quá trình phân loại

văn bản không thực hiện trực tiếp với các văn bản d imà thực hiện trên các vector

x i Tiếp theo, chúng ta sẽ xem xét một số phương pháp phân loại văn bản

Một số thuật toán phân loại văn bản

1.1 Hướng tiếp cận hệ chuyên gia

Theo E Feigenbaum : "Hệ chuyên gia (Expert System) là một chương trình máy tính thông minh sử dụng tri thức (knowledge) và các thủ tục suy luận (inference procedures) để giải những bài toán tương đối khó khăn đòi hỏi những chuyên gia mới

giải được"

Hướng tiếp cận hệ chuyên gia việc phân lớp sẽ được tiến hành thủ công dựa trên các tập luật định nghĩa bởi các chuyên gia về thể loại tài liệu, văn bản đó, chủ yếu dựa trên luật kết hợp

Hệ chuyên gia có dạng:

If (DNF formula) then (class)

Một công thức DNF (“Disjunctive Normal Form”) là hợp của các mệnh đề liên kết,

tài liệu được phân loại vào category nếu nó thỏa mãn công thức, nghĩa là, nếu nó

thỏa mãn ít nhất một mệnh đề trong công thức Một ví dụ nổi tiếng cho cách tiếp cận này là hệ thống CONSTRUE [Hayes et al 1990], xây dựng bởi Carnegie Group cho tập tin tức Reuters Sau đây, là một ví dụ về luật được sử dụng trong CONSTRUE:

If ((wheat & farm) or (wheat & commodity)

or (bushels & export) or (wheat & tonnes)

or (wheat & winter & ¬ soft))

then WHEAT

else ¬ WHEAT

Để xây dựng các luật này, người ta dùng các phương pháp như khám phá luật kết hợp (dựa trên ý kiến của các chuyên gia), sau đó chọn lọc lại các luật với điều kiện vế phải chứa các giá trị phân lớp, hoặc xây dựng cây quyết định từ đó suy ra các luật

Cách tiếp cận hệ chuyên gia có một số lợi điểm như: Có khả năng trả lời với mức độ ngang bằng hoặc cao hơn chuyên gia trong cùng lĩnh vực, Các vấn đề được giải quyết một cách dễ hiểu, nhất quán

Tuy nhiên cách tiếp cận này gặp khó khăn là khi các phân lớp thay đổi chẳng hạn như tăng số phân lớp thì tập luật cũng cần được cập nhật lại một cách thủ công bởi chính

nếu nếu ngược lại

Trang 8

những chuyên gia đó Điều này làm mất rất nhiều thời gian và nếu phân lớp rất lớn thì công việc sẽ diễn ra kém hiệu quả

Ngoài ra điều trở ngại của cách tiếp cận này là hạn chế trong quá trình thu nhận tri thức từ tài liệu của các hệ thống chuyên gia Nghĩa là, các luật phải được định nghĩa bằng tay bởi kỹ sư tri thức với sự giúp đỡ của chuyên gia về lĩnh vực được nêu trong tài liệu: nếu tập hợp của các loại được cập nhật, thì hai nhà chuyên gia phải can thiệp lại, và nếu phân loại được chuyển hoàn toàn sang một phạm vi khác, một chuyên gia

về lĩnh vực này cần thiết phải can thiệp vào và công việc phải được bắt đầu lại từ tập tài liệu hỗn tạp ban đầu

1.2 Cách tiếp cận bằng các phương pháp máy hoc

Đầu thập kỷ 90, cách tiếp cận máy học (Machine Learning) để phân lớp văn bản được coi là nổi tiếng và trở thành thống trị, ít nhất là trong cộng đồng người nghiên cứu Trong kỹ thuật máy học, bài toán phân lớp là hoạt động học có giám sát, quá trình học được “giám sát” bởi tri thức của các phân loại và của các mẫu huấn luyện thuộc chúng Với phương pháp máy học, sự cố gắng về phương diện công việc của

kỹ sư theo hướng không phải xây dựng một phân lớp mà xây dựng một phân lớp tự động (học) từ một tập hợp các tài liệu đã được phân loại bằng tay Trong các tiếp cận máy học, các tài liệu đã được phân lớp trở thành nguồn Trường hợp thuận lợi nhất, chúng đã có sẵn, khi đó quá trình phân loại bắt đầu bằng việc học từ tập dữ liệu này, sau đó sẽ thực hiện phân loại tự động với các tài liệu khác Trường hợp ít thuận lợi, không có sẵn tài liệu đã phân loại bằng tay; khi đó quá trình phân loại bắt đầu một hành động phân loại và chọn một phương pháp tự động ngay lập tức Do

đó, cách tiếp cận máy học là thuận lợi hơn cách tiếp cận kỹ sư tri thức

Các phân lớp xây dựng theo nghĩa của kỹ thuật máy học ngày nay gây được ấn tượng về mức độ hiệu quả, khiến cho phân lớp tự động trở thành một lựa chọn tốt để thay thế phân loại bằng tay (không chỉ về phương diện kinh tế) Chúng ta có thể hình dung các công việc của bài toán phân lớp văn bản dựa trên kỹ thuật máy học như sau:

Trang 9

Hính 1.2 Bài toán phân lớp văn bản dựa trên kỹ thuật máy học

Cách tiếp cận máy học dựa trên một tập dữ liệu có sẵn từ đầu Ω= {d1, …, d|Ω| } 

D, trong đó D tập tất cả các tài liệu đã được phân lớp trước, djlà văn bản thứ j, Tập các lớp C={c1, …, c|C|}, cilà kí hiệu của lớp thứ i Hàm  :DxC T,F với mọi

xC c

d j, i   , Một tài liệu dj là mẫu dương của cinếu  d,cT là một mẫu âm nếu  d,cF

Với mỗi cách phân lớp được đưa ra, người ta mong muốn đánh giá được hiệu quả phân lớp của chúng Vì thế, trước khi xây dựng phân lớp người ta chia tập dữ liệu ban đầu thành 2 tập hợp:

 Tập huấn luyện Tr={d 1 , …, d |TV| } Phân lớp Φ cho các phân lớp C={c 1 , …, c |C| }

được xây dựng quy nạp dựa trên sự quan sát các đặc trưng của các tài liệu trong

Tr

 Tập kiểm tra Te={d |TV+1| , …d | | }, được sử dụng để kiểm tra hiệu quả của phân lớp Mỗi d jT e được đưa vào hệ thống phân lớp để xác định giá trị, và so sánh giá trị này với quyết định  d, c của chuyên gia Hiệu quả của phân lớp dựa trên

sự phù hợp giữa  d, c và  d, c Số tài liệu trong tập luyện và tập kiểm tra thường được chọn theo tỷ lệ tương ứng là 70% và 30% Trong đó, Tr Te, nếu điều kiện này bị vi phạm thì kết quả đánh giá hiệu quả của mô hình mất đi yếu tố khách quan, khoa học

Phân lớp văn bản chủ yếu dựa trên cơ chế rút trích thông tin Kỹ thuật rút trích thông tin được sử dụng trong 3 giai đoạn của quá trình phân lớp văn bản:

Trang 10

1) Đánh chỉ số: các văn bản ở dạng thô cần được chuyển sang một dạng biểu diễn

nào đó để xử lý Quá trình này được gọi là quá trình biểu diễn văn bản, dạng biểu diễn của văn bản phải có cấu trúc và dễ dàng xử lý

2) Kỹ thuật: kỹ thuật ở đây là phương pháp học để phân lớp văn bản, nó thường

được sử dụng trong quá trình xây dựng quy nạp của các phân lớp

3) Đánh giá: đánh giá hiệu quả của các phân lớp được thực hiện

Sự khác nhau trong các cách tiếp cận trước đây phần lớn là để giải quyết (2) mặc dù trong một số ít đề xuất cũng sử dụng (1) và (3)

Hầu hết các phương pháp phân lớp văn bản dựa trên kỹ thuật máy học hiện nay đều dựa vào tần xuất xuất hiện (số lần xuất hiện) của từ hoặc cụm từ trong văn bản, hoặc dựa vào tần xuất xuất hiện của từ trong văn bản và tần xuất văn bản (số các văn bản trong tập dữ liệu huấn luyện có chứa từ đó) Độ chính xác của kết quả tách từ có ảnh hưởng rất lớn đến kết quả của phân lớp, không thể có một kết quả phân lớp tốt nếu như không tách được đúng các từ trong văn bản Bởi vậy, một vấn đề quan trọng đối với phân lớp văn bản là phải tách được chính xác các từ trong văn bản Các văn bản được viết bằng các ngôn ngữ khác nhau thì có đặc trưng riêng của ngôn ngữ đó, và không có một phương pháp chung nào để tách các từ trong các văn bản được viết bằng các ngôn ngữ khác nhau

Tóm lại, một bài toán phân lớp văn bản dựa trên kỹ thuật máy học gồm các bước sau:

- Chuẩn bị tập dữ liệu huấn luyện (Training Set) và tập dữ liệu kiểm tra (Test Set)

- Tách từ trong văn bản

- Biểu diễn văn bản

- Phương pháp học để phân lớp văn bản

- Đánh giá hiệu quả của phương pháp học

Cho đến nay, đã có nhiều đề xuất xây dựng bài toán phân loại văn bản tự động như Neive Bayes, Bayes net, k-láng giềng gần nhất, cây quyết định, mạng nơron, Support Vector Machines, … Các phương pháp phân loại này, đạt được những thành công đáng kể đối với các văn bản tiếng Anh, Pháp, Nhật, Trung Quốc, và đã được ứng dụng trong thực tế như trong các hệ tìm tin của Yahoo, Altavista, Google,

… Trong đó, phương pháp Support Vector Machines được đánh giá cho độ chính

xác của phân loại văn bản cao hơn nhiều phương pháp phân loại khác

1.2.1 Phương pháp kNN (k Nearest Neighbor)

Giới thiệu phương pháp

kNN là phương pháp truyền thống khá nổi tiếng theo hướng tiếp cận thống kê cho bài toán nhận dạng mẫu và được nghiên cứu trong hơn bố thập niên qua kNN được đánh giá là một trong những phương pháp tốt nhất được sử dụng từ những thời kỳ đầu trong nghiên cứu về phân loại văn bản và kNN cho kết quả khả quan và thành công trong nhiều ứng dụng phân lớp văn bản

Trang 11

Ý tưởng của phương pháp được xây dựng trên nền tảng vector hóa Tất cả các văn bản của cá nhóm dữ liệu huấn luyện được biểu diễn bằng các vector và khi cần phân loại một văn bản mới X, thuật toán cũng sẽ biểu biểu văn bản dưới dạng vector ( ) chứa các vector văn bản huấn luyện và xác định khoảng cách (Euclidean, Cosine, Manhattan,…) của tất cả các vector văn bản huấn luyện đến vector văn bản cần kiểm tra để tìm ra k văn bản gần nhất với , gọi là k nearest neighbor (k láng giềng gần nhất) Từ tập k vector thu được, giải thuật sẽ xác định trọng số của từng chủ đề dành cho Trọng số này biểu hiện độ phù hợp của chủ đề với văn bản cần phân loại Phương thức xác định trọng này cũng có nhiều cách khác nhau và được trình bày trong phần tiếp theo Sau đó các chủ đề sẽ được sắp xếp theo giá trị trọng

số giảm dần và các chủ đề có trọng số cao sẽ được chọn làm chủ đề của văn bản cần phân loại

Các vấn đề chính cần quan tâm của giải thuật kNN là khái niệm về tính “gần” – công thức tính mức độ gần và việc xác định giá trị k để giải thuật đạt được hiệu quả phân loại mong muốn

Trong giải thuật của phương pháp này, tính “gần” phải được hiểu theo độ đo được

áp dụng cho giải thuật Ví dụ, nếu độ đo được dùng là khoảng cách Euclidean thì tính gần phải được hiểu theo khoảng cách hình học, do đó độ đo Euclidean càng thấp thì các vector văn bản càng “gần” nhau Ngược lại, với hệ số cosine là độ đo

về góc giữa hai vector, hệ số cosine càng cao thì tính tương tự hay tính “gần” giữa hai vector càng cao Người ta thường dùng độ đo cosine để xác định tính gần cho các vector văn bản

Hình 1.3.: Mô tả độ đo Cosine kNN là phương pháp học dựa vào sự biểu quyết hay phán xét (instance-based learning) của k vector văn bản gần nhất Mô hình của phương pháp này dễ thực hiện vì không chứa và chịu sự chi phối của các tham số Trong phương pháp này, k

là tham số đáng quan tâm và hiệu quả của phương pháp này phụ thuộc nhiều và giá trị của k thông thường k có giá trị từ 5 đến 100 Trong một số bài toán với dữ liệu lớn (như dữ liệu khách hàng, dữ liệu web…) giá trị của k có thể lên đến vài trăm, thậm chí hàng nghìn và chưa có một giải thuật nào được chứng minh là hiệu quả trong việc xác định giá trị k bằng phương phương pháp lý thuyết Thông thường người ta tiến hành phương pháp thực nghiệm trong khoảng giá trị nào đó tùy thuộc

X

Dj

Trang 12

vào độ lớn của dữ liệu để xác định giá trị k cho hiệu quả phân lớp tốt cho từng bộ

dữ liệu cụ thể Tóm lại, việc xác định k mang tính thử nghiệm và phụ thuộc nhiều vào dữ liệu cụ thể

Các phương pháp đánh trọng số

Có 3 chiến lược chủ yếu cho việc xác định trọng số của các nhóm dữ liệu đối với vector văn bản cần phân lớp: dựa vào tổng độ gần, dựa vào số lượng văn bản gần nhất cho từng nhóm và dựa vào vector gần nhất Nếu tập k văn bản gần nhất không chứa văn bản nào của nhóm Cj thì trọng số của nhóm Cj là 0 Trong trường hợp có nhiều chủ đề có cùng trọng số cao nhất ta có thể kết hợp với các chiến lược khác để đưa ra quyết định phân lớp

Gán nhãn dựa vào số đông

Chiến lược này quy định nhãn được gán là nhãn có số văn bản thuộc nhãn

và thuộc tập k văn bản gần nhất nhiều nhất Trọng số theo chiến lược này được tính như sau:

Gán nhãn dựa vào tổng độ tương tự

Chiến lược quy ước nhãn được gán là nhãn có tổng độ gần của các văn bản thuộc nhãn và thuộc tập k văn bản gần nhất lớn nhất Do đó, trọng số nhãn được xác định như sau

Trong đó: có giá trị thuộc {0, 1}, với:

‐ Y=0: văn bản Di không thuộc chủ đề Cj

‐ Y=1: văn bản Di thuộc chủ đề Cj

Gán nhãn dựa vào văn bản gần nhất

Chiến lược này quy ước nhãn được chọn là nhãn của vector văn bản gần nhất với vector văn bản được phân lớp Do đó công thức trọng số có dạng như sau

Trang 13

Chiến lược này tương đối đơn giản và là trường hợp đặc biệt với k =1 Tuy nhiên, chiến lược vẫn còn hạn chế khi dữ liệu huấn luyện có nhiễu và dễ dẫn đến sai sót khi không có quyết định phân lớp mang tính chất tổng hợp từ nhiều thành phần vector văn bản

Nhận xét

Thuật toán kNN đơn giản, dễ hiểu và dễ áp dụng Tuy nhiên giải thuật sẽ không mang lại kết quả phân loại tốt khi dữ liệu huấn luyện chứa nhiễu Trong mỗi phương pháp đánh giá độ tương tự và các chiến lược gán nhãn đều có những nhược điểm nhất định mà ta không thể khắc phục một cách toàn vẹn Do đó xử lý và làm sạch dữ liệu, biểu diễn tốt các văn bản và yếu tố thực nghiệm là những cơ sở quyết định hiệu quả của giải thuật này Ngoài ra, giá trị k cũng cần được xem xét và chọn lọc thích hợp Có thể chọn k với giải thuật học từ tập huấn luyện bằng cách chia tập huấn luyện thành các thành phần nhỏ hơn để huấn luyện và kiểm tra hiệu quả của giá trị k Thông thường đối với các bài toán có dữ liệu không quá lớn (vài trăm đến vài ngàn mẫu học) người ta chọn k là một số lẻ từ 5 đến vài chục Trong những bài toán liên quan đến dữ liệu lớn (hàng trăm ngàn hoặc lên đến hàng triệu mẫu) thì giá trị của k có thể lên đến hàng trăm, thậm chí hàng nghìn Ngoài ra thuật toán này có nhược điểm lớn là: yêu cầu lưu trữ lớn, lặp lại nhiều lần các tính toán khó, phải lựa chọn khoảng cách cẩn thận, tốn nhiều thời gian tính toán, và tính toán khó khăn nếu

số chiều lớn

1.2.2 Thuật toán cây quyết định

Cây quyết định là một phương pháp thông dụng trong khai thác dữ liệu Cây quyết định mô tả một cấu trúc cây, trong đó, các nút lá đại diện cho các phân lớp còn nhánh đại diện cho các kết hợp của các thuộc tính dẫn tới phân lớp đó

Xây dựng cây quyết định gồm:

‐ Phát triển cây quyết định: đi từ gốc, đến các nhánh, phát triển quy nạp theo hình thức chia để trị

 Bước 1: chọn thuộc tính “tốt” nhất bằng một độ đo đã định trước

 Bước 2: phát triển cây bằng việc thêm các nhánh tương ứng với từng giá trị của thuộc tính đã chọn

 Bước 3: sắp xếp, phân chia tập dữ liệu đào tạo tới node con

 Bước 4: nếu các ví dụ được phân lớp rõ ràng thì dừng Ngược lại: lặp lại bước 1 tới bước 4 cho từng node con

‐ Cắt tỉa cây: nhằm đơn giản hóa, khái quát hóa cây, tăng độ chính xác

Thuật toán cây quyết định những ưu, nhược điểm như sau:

 Cây quyết định dễ hiểu Người ta có thể hiểu mô hình cây quyết định sau khi được giải thích ngắn

 Việc chuẩn bị dữ liệu cho một cây quyết định là cơ bản hoặc không cần thiết Các kỹ thuật khác thường đòi hỏi chuẩn hóa dữ liệu, cần tạo các biến phụ

(dummy variable) và loại bỏ các giá trị rỗng

Trang 14

 Cây quyết định cĩ thể xử lý cả dữ liệu cĩ giá trị bằng số và dữ liệu cĩ giá trị là tên thể loại Các kỹ thuật khác thường chuyên để phân tích các bộ dữ liệu chỉ gồm một loại biến Chẳng hạn, các luật quan hệ chỉ cĩ thể dùng cho các biến tên, trong khi mạng nơ-ron chỉ cĩ thể dùng cho các biến cĩ giá trị bằng số

 Cây quyết định là một mơ hình hộp trắng Nếu cĩ thể quan sát một tình huống cho trước trong một mơ hình, thì cĩ thể dễ dàng giải thích điều kiện đĩ bằng logic Boolean Mạng nơ-ron là một ví dụ về mơ hình hộp đen, do lời giải thích cho kết quả quá phức tạp để cĩ thể hiểu được

 Cĩ thể thẩm định một mơ hình bằng các kiểm tra thống kê Điều này làm cho ta

cĩ thể tin tưởng vào mơ hình

 Cây quyết định cĩ thể xử lý tốt một lượng dữ liệu lớn trong thời gian ngắn Cĩ thể dùng máy tính cá nhân để phân tích các lượng dữ liệu lớn trong một thời gian đủ ngắn để cho phép các nhà chiến lược đưa ra quyết định dựa trên phân tích của cây quyết định

Nhược điểm của thuật tốn cây quyết đinh:

 Dễ xảy ra lỗi khi cĩ nhiều lớp: do chỉ thao tác với các lớp cĩ giá trị dạng nhị phân

 Chi phí tính tốn đắt để học: do phải đi qua nhiều node để đến node lá cuối cùng

1.2.3 Thuật tốn Nạve Bayes

Phương pháp Nạve Bayes là phương pháp khá kinh điển được sử dụng đầu tiên bởi Maron vào năm 1961, và sau đĩ rất phổ biến trong các lãnh vực tìm kiếm, lọc mail, phân lớp…Nạve Bayes là một phương pháp rất phổ biến sử dụng xác suất cĩ điều kiện giữa từ và chủ đề để xác định chủ đề của văn bản Các xác suất này dựa trên việc thống kê sự xuất hiện của từ và chủ đề trong tập huấn luyện Tập huấn luyện lớn cĩ thể mang lại kết quả khả quan cho Nạve Bayes Ưu điểm của Nạve Bayes bởi phương pháp đơn giản, tốc độ nhanh, cài đặt tương đối khơng quá phức tạp phù

hợp với thời gian cho phép

Thuật tốn phân loại Nạve Bayes dựa trên luật Bayes, với giả định tất cả các thuộc

tính X 1 …X n đều độc lập cĩ điều kiện với nhau do sự kiện Y gây ra Chính giả thiết này đã đơn giản hĩa cách tính của P(X|Y), và vấn đề ước lượng P(X|Y) từ tập ngữ

liệu huấn luyện

Giả sử X chứa n thuộc tính đều độc lập với nhau do sự kiện Y gây ra được biểu diễn

Trang 15

Trong đĩ, tổng giá trị ở mẫu của biểu thức là tổng cho bởi tất cả các giá trị y j

của Y Lúc này, sử dụng cơng thức trên, cĩ thể viết lại cơng thức trên như sau:

Cơng thức trên là cơng thức cơ bản của phương pháp phân loại Nạve Bayes Nếu chúng ta chỉ quan tâm đến giá trị lớn nhất của Y, thì sử dụng cơng thức sau:

Ứng dụng phương pháp Nạve Bayes trong phân loại văn bản

Phương pháp Nạve Bayes tìm chủ đề của văn bản d bằng các xác định chủ đề

cĩ xác suất P(Y = ci | X = d ), xác suất để văn bản d nằm trong lớp c i, lớn nhất thơng qua việc sử dụng cơng thức xác suất đầy đủ Bayes:

Trong đĩ

c jlà chủ đề thứ j

d = (w1 ,w 2 , ,w n ) là văn bản cần phân loại

P(Y=c i | X=d) gọi là xác suất xảy ra văn bản d thuộc về chủ đề c i

P(X=d | Y=c i ) gọi là xác suất chủ đề c i cĩ chứa văn bản d trong tập huấn luyện

Một cách để xác định P(Y | X ) là sử dụng tập huấn luyện để ước lượng P(X |Y)

P(Y) Sau đĩ sử dụng cơng thức xác suất đầy đủ trên để xác định P(Y = c i | X

= d) với d bất kỳ

Ước lượng P(X|Y)

Giả sử với mỗi chủ đề, ta cĩ biến cố các từ phụ thuộc vào chủ đề là độc lập cĩ điều kiện (conditional independence) với nhau Khi đĩ cơng thức biểu diễn sự độc lập cĩ điều kiện của 2 biến cố X,Z vào Y được trình bày như sau:

Trang 16

Trong đó

#D{ X = wj∧Y = ci}: số văn bản trong tập huấn luyện chứa đồng thời w j và c i

#D{Y = ci }: số văn bản trong tập huấn luyện chứa ci

Công thức ước lượng trên sẽ cho kết quả P(X = wj | Y = ci) = 0 khi không có

văn bản chứa đồng thời cả hai (w j và c i) Nhằm tránh trường hợp này, nên sử dụng công thức ước lượng đã được làm mịn như sau:

Với

R : số lượng chủ đề

l : quyết định độ mịn của phép ước lượng

Ước lượng P(Y)

Việc ước lượng P(Y=ci) đơn giản là tính phần trăm số văn bản trong tập huấn

luyện có chủ đề ci:

1.2.4 Thuật toán Support Vector Machines (SVM)

Support Vector Machines là một phương pháp phân loại máy học do Vladimir Vapnik và các cộng sự xây dựng nên từ những năm 70 của thế kỷ 20 SVMs là một phương pháp phân loại xuất phát từ lý thuyết học thống kê, dựa trên nguyên tắc tối thiểu rủi ro cấu trúc (Structural Risk Minimisation) SVMs sẽ cố gắng tìm cách phân loại dữ liệu sao cho có lỗi xảy ra trên tập kiểm tra là nhỏ nhất (Test Error Minimisation) Ý tưởng của nó là ánh xạ (tuyến tính hoặc phi tuyến) dữ liệu vào không gian các vector đặc trưng (space of feature vectors) mà ở đó một siêu phẳng tối ưu được tìm ra để tách dữ liệu thuộc hai lớp khác nhau Mặc dù đã được phát triển từ những năm cuối thập niên 70 nhưng SVMs chỉ được thật sự chú ý từ năm

1995 khi được đăng báo đầu tiên Thực nghiệm cho thấy rằng phương pháp SVMs rất thích hợp cho phân loại văn bản

Chúng ta hãy xem xét một bài toán phân loại văn bản bằng phương pháp Support Vector Machines như sau: Kiểm tra xem một tài liệu bất kỳ d thuộc hay không thuộc một phân loại c cho trước? Nếu dc thì d được gán nhãn là 1, ngược lại thì d

được gán nhãn là –1 Giả sử, chúng ta lựa chọn được tập các đặc trưng là T={t 1 , t 2 ,

…, t n }, thì mỗi văn bản d i sẽ được biểu diễn bằng một vector dữ liệu x i =(w i1 , w i2 , …,

w in ), w ijR là trọng số của từ t j trong văn bản d i Như vậy, tọa độ của mỗi vector

dữ liệu x i tương ứng với tọa độ của một điểm trong không gian R n Quá trình phân loại văn bản sẽ thực hiện xử lý trên các vector dữ liệu x i chứ không phải là các văn bản d i Bởi vậy, trong phần này chúng tôi sẽ sử dụng đồng nhất các thuật ngữ văn bản, vector dữ liệu, điểm dữ liệu

Dữ liệu huấn luyện của SVMs là tập các văn bản đã được gán nhãn trước Tr={(x1,

y1), (x 2 , y 2 ), …, (x l , y l )}, trong đó, x i là vector dữ liệu biểu diễn văn bản d i (x iR n ),

yi{+1, -1}, cặp (x i , y i ) được hiểu là vector x i (hay văn bản d i ) được gán nhãn là y i

Trang 17

Nếu coi mỗi văn bản d i được biểu diễn tương ứng với một điểm dữ liệu trong không gian Rn thì ý tưởng của SVMs là tìm một mặt hình học (siêu phẳng) f(x) “tốt nhất” trong không gian n-chiều để phân chia dữ liệu sao cho tất cả các điểm x +

được gán nhãn 1 thuộc về phía dương của siêu phẳng (f(x + )>0), các điểm x - được gán nhãn –1 thuộc về phía âm của siêu phẳng (f(x - )<0) Với bài toán phân loại

SVMs, một siêu phẳng phân chia dữ liệu được gọi là “tốt nhất”, nếu khoảng cách từ điểm dữ liệu gần nhất đến siêu phẳng là lớn nhất Khi đó, việc xác định một tài liệu

xTr có thuộc phân loại c hay không, tương ứng với việc xét dấu của f(x), nếu f(x)>0 thì xc, nếu f(x)0 thì xc

Hình 1.4 Siêu phẳng phân chia tập mẫu huấn luyện Trong hình trên, đường tô đậm là siêu phẳng tốt nhất và các điểm được bao bởi hình chữ nhật là những điểm gần siêu phẳng nhất, chúng được gọi là các vectorhỗ trợ (support vector) Các đường nét đứt mà các support vector nằm trên đó được gọi là lề (margin)

một siêu phẳng tuyến tính có dạng như sau để phân chia tập dữ liệu này:

0 x  b

w T

Trong đó: wR n là vector trọng số (weight vector), bR là hệ số tự do

1

1

1

1 } {

x w sign x

nếu

Trang 18

Hình 1.5 Siêu phẳng phân chia dữ liệu và các ràng buộc

Giả sử rằng siêu phẳng phân chia dữ liệu theo hình trên với các ràng buộc:

1

minw T x i  b

hay yw T x i bl

i   1 , i  1, ,

Vấn đề đặt ra bây giờ là xác định các hệ số w và b như thế nào để siêu phẳng tìm

được là tốt nhất? Siêu phẳng tốt nhất là siêu phẳng mà có khoảng cách từ điểm dữ liệu huấn luyện gần nhất đến siêu phẳng là xa nhất Mà khoảng cách từ một điểm

dữ liệu xi đến siêu phẳng trên là:

w

b x w x b w

T i

 .)

; , (

b

x

w T. i: là giá trị tuyệt đối của biểu thức w T x i +b

w : là độ dài Ơcơlit của vector w

Giả sử h(w,b) là tổng của khoảng cách từ điểm dữ liệu gần nhất của lớp 1 đến siêu

phẳng và khoảng cách từ điểm dữ liệu gần nhất của lớp –1 đến siêu phẳng Ta có:

w

b x w b

x w w

w

b x w w

b x w

x b w d x

b w d b

w h

i T y x i

T y x

i T y x i

T y x

i y

x i y

x

i i i

i

i i i

i

i i i

i

2

min

min

1

min

min

)

; , ( min )

; , ( min ) , (

1 , 1

,

1 , 1

,

1 , 1

x w y

w w

Min

i

T i

w

, 1, i , 1 ) (

2

1 ) (

Trường hợp 2

Tập dữ liệu huấn luyện Tr có thể phân chia được tuyến tính nhưng có nhiễu Trong

trường hợp này, hầu hết các điểm trong tập dữ liệu được phân chia bởi siêu phẳng tuyến tính Tuy nhiên có một số ít điểm bị nhiễu, nghĩa là điểm có nhãn dương nhưng lại thuộc về phía âm của siêu phẳng, điểm có nhãn âm thuộc về phía dương của siêu phẳng

Trang 19

Hình 1.6 Trường hợp dữ liệu có nhiễu Trong trường hợp này, chúng ta thay ràng buộc y(w T.x i  b)  1

i bằng ràng buộc dưới đây

l b

x w

i(  )  1  i  1, ,

Ở đây, i gọi là các biến nới lỏng (slack variable) i0

Bài toán này trở thành

l i b

x w y

C w w

i

i i

T i

l i i

, , 1 0

, , 1 , 1 ) (

2

1 ) , ( Min

1 2

Tuy nhiên không phải tập dữ liệu nào cũng có thể phân chia tuyến tính được Trong

trường hợp này, chúng ta sẽ ánh xạ các vector dữ liệu x từ không gian n-chiều vào

một không gian m-chiều (m>n) , sao cho trong không gian m-chiều này tập dữ liệu

có thể phân chia tuyến tính được Giả sử  là một ánh xạ phi tuyến tính từ không gian Rn vào không gian Rm

m

R

Rn  :

Khi đó, vector xi trong không gian Rn sẽ tương ứng với vector (x i ) trong không

gian Rm

Thay ( x i ) vào công thức trên ta có :

Trang 20

l i b

x w y

C w w

i

i i

T i

l i i

, , 1 0

, , 1 , 1 ) ) ( (

2

1 ) , ( Min

1 2

) ( ) ( ) , (x i x j x i x j

Một số hàm nhân hay dùng trong phân loại văn bản là :

Hàm tuyến tính (linear): T j

i j

Hàm RBF (radial basis function) : K(x i , x j )=exp(-(x i -x j ) 2 ), R +

1.2.5 Thuật toán Fuzzy Vector Support Machines (FSVM)

Trong SVMs thông thường thì các điểm dữ liệu đều có giá trị như nhau, mỗi một điểm sẽ thuộc hoàn toàn vào một trong hai lớp Tuy nhiên trong nhiều trường hợp

có một vài điểm sẽ không thuộc chính xác vào một lớp nào đó, những điểm này được gọi là những điểm nhiễu, và mỗi điểm có thể sẽ không có ý nghĩa như nhau đối với mặt phẳng quyết định Để giải quyết vấn đề này Lin CF và Wang SD (2002) đã giới thiệu Fuzzy support vector machines (FSVMs) bằng cách sử dụng một hàm thành viên để xác định giá trị đóng góp của mỗi điểm dữ liệu đầu vào của SVMs vào việc hình thành siêu phẳng

Cho tập dữ liệu huấn luyện S  {(x i,y i,s i),i 1 , ,l}

Với x i là một mẫu huấn luyện, n

l i b

x w y

s C w w

i

i i

T i

l

, , 1 0

, , 1 , 1 ) ) ( (

2

1 ) , ( Min

1 2

Trang 21

Để giải quyết bài toán tối ưu trên cần xây dựng hàm Lagrangian:

l i i i i

i

T i i i

i

w b

w L

) 1 ) ( (

2

1 ) , , , ,

i y z w

w

b w L

1

0 )

, , , ,

i y b

b w L

1

0 )

, , , ,

0 )

, , , ,

i i i i

C s b

C s y

x x K y y L

i i

l

i i i

j i j i l

i l j j i l

i i D

, , 2 , 1 0

0

) , ( 2

1 )

( max

1

1 1 1

Đây là dạng đơn giản của bài toán QP (Quadratic programming) Và tìm giá trị tối

ưu (w,b,,) cho những điều kiện Kunhn-Tucker (Cristianini và Shawe-Taylor 2000) được định nghĩa như sau:

0

v

I i i

i y z

0

 

l I i i

v

y

l i b

z w

y i( i )  1 i 0 ,  1 ,

l i C

s i i) i 0, 1,

(    

l i b

z w

Với I s.v = {j|x j là support vector}

Theo các điều kiện trên ta sẽ tìm được giá trị tối ưu  Có được  , các tham số của siêu phẳng tối ưu là:

.v s

I i

i i

i y z

Trang 22

b được tính bằng cách chọn bất kỳ i sao cho i >0 Điểm x i tương ứng với với

i

 >0 được gọi là support vector

Như vậy trong không gian m chiều, việc phân loại tài liệu x tương đương với việc

x

Chọn hàm thành viên

Việc chọn hàm thành viên s i thích hợp là rất quan trọng trong FSVMs Theo Chun

hàm thành viên s i dùng để giảm mức độ ảnh hưởng của những điểm dữ liệu nhiễu

được mô tả là một hàm xác định khoảng cách giữa điểm dữ liệu x i với trung tâm của nhóm tương ứng với i

Gọi C+ là tập chứa các điểm x i với y i =1

||

||

1

) /(

r x X s

i

i

là một hằng số để tránh trường hợp s i = 0 Tuy nhiên FSVMs với hàm thành viên như trên vẫn chưa đạt kết quả tốt do việc tính toán khoảng cách giữa các điểm dữ liệu với trung tâm của nhóm được tiến hành ở không gian đầu vào, không gian n chiều Trong khi đó trong trường hợp tập

dữ liệu không thể phân chia tuyến tính, để hình thành siêu phẳng ta phải đưa dữ liệu về một không gian khác với số chiều m cao hơn gọi là không gian đặc trưng (feature space) Vì vậy để có thể đạt kết quả tốt hơn, Xiufeng Jiang, Zhang Yi và Jian Cheng Lv (2006) đã xây dựng một hàm thành viên khác dựa trên ý tưởng của hàm thành viên nhưng được tính toán trong không gian đặc trưng m chiều

Giả sử  là một ánh xạ phi tuyến tính từ không gian Rn vào không gian Rm

m

R

Rn  :

Trang 23

Định nghĩa  là trung tâm của lớp C+ trong không gian đặc trưng:

x i

i j i

x x n

x x n

x x K n

x x K n

x x K

Với x’  C+ và n+là số mẫu huấn luyện trong lớp C+ Tương tự :

x x K n

x x K n

x x K

Với x’  C- và n-là số mẫu huấn luyện trong lớp C-

Bình phương khoảng cách giữa x i  C+ và trung tâm của lớp trong không gian đặc trưng có thể được tính như sau:

} ) , (

1 ) , (

2 ) ,

i i

i i

x x K n

x x K n

x x K d

Tương tự như vậy bình phương khoảng cách giữa x i  C- và trung tâm của lớp trong không gian đặc trưng có thể được tính như sau:

} ) , (

1 ) , (

2 ) ,

i i

i i

x x K n

x x K n

x x K d

Ngày đăng: 23/01/2021, 11:07

Nguồn tham khảo

Tài liệu tham khảo Loại Chi tiết
2. Đồng Thị Bích Thủy, Hồ Bảo Quốc (2003), “Ứng dụng xử lý ngôn ngữ tự nhiên trong hệ tìm kiếm thông tin trên văn bản tiếng Việt”, Hội thảo Quốc gia về Công Nghệ Thông Tin - Thái Nguyên - Việt Nam 8-2003 Sách, tạp chí
Tiêu đề: Ứng dụng xử lý ngôn ngữ tự nhiên trong hệ tìm kiếm thông tin trên văn bản tiếng Việt
Tác giả: Đồng Thị Bích Thủy, Hồ Bảo Quốc
Năm: 2003
6. John Lafferty, Andrew McCallum, Fernando Pereira (2001), “Conditional Random Fields: Probabilistic Models for Segmenting and Labeling Sequence Data”, "Proceedings of the International Conference on Machine Learning (ICML-2001)&#34 Sách, tạp chí
Tiêu đề: Conditional Random Fields: Probabilistic Models for Segmenting and Labeling Sequence Data”
Tác giả: John Lafferty, Andrew McCallum, Fernando Pereira
Năm: 2001
7. Valter Crescenzi, Giansalvatore Mecca, Paolo Merialdo (2001), “RoadRunner: Towards Automatic Data Extraction from Large Web Sites”, The VLDB Journal, pp. 109-118 Sách, tạp chí
Tiêu đề: RoadRunner: Towards Automatic Data Extraction from Large Web Sites”, "The VLDB Journal
Tác giả: Valter Crescenzi, Giansalvatore Mecca, Paolo Merialdo
Năm: 2001
20. Hansheng Lei, Venu Govindaraju, “Half Against Half Multi-class Support Vector Machines”, 2012 Sách, tạp chí
Tiêu đề: Half Against Half Multi-class Support Vector Machines
21. Sarkar, Subhajit Dey, and Saptarsi Goswami. "Empirical study on filter based feature selection methods for text classification." International Journal of Computer Applications 81.6 (2013) Sách, tạp chí
Tiêu đề: Empirical study on filter based feature selection methods for text classification
1. Trang Nhật Quang (2007), Thu thập thông tin trên internet phục vụ cho việc cung cấp tin tức trên các trang web hành chính của thành phố, Luận văn Thạc sĩ, Đại học Khoa học tự nhiên TP.HCM, TP.HCM Khác
3. Nguyễn Hoàng Vũ, Lê Quý Quốc Cường (2011), Nghiên cứu cải tiến phương pháp phân lớp đa lớp văn bản bằng Support Vector Marchine, Khóa luận tốt nghiệp, Trường Đại học Công nghệ Thông tin Khác
4. Trần Thị Lan Hương (2012), Nghiên cứu phân lớp tự động văn bản báo chí tiếng Việt về tài nguyên và môi trường, Luận văn Thạc sĩ ngành: Hệ thống thông tin, Trường Đại học Công nghệ Khác
5. Jason Weston (2003), Support Vector Machine (and Statistical Learning Theory) Tutorial, NEC Labs America Khác
8. Lin CF, WangSD (2002), Fuzzy support vector machines, IEEE Trans Neural Network 13(2):p.464–471 Khác
9. Ahmed T. Sadiq (2013), Hybrid Intelligent Techniques for Text Categorization, International Journal of Advanced Computer Science and Information Technology (IJACSIT), Vol 2, No.2, pp. 23-34 Khác
10. Vũ Thanh Nguyên; Trang Nhật Quang. Ứng dụng thuật toán phân lớp rút trích thông tin văn bản FSVM trên internet. Tạp chí phát triển KHCN số 5, tập 12 chuyên ngành kỹ thuật &amp; công nghệ ĐHQG TpHCM, 05/2009. ISSN 1859 – 0128 Khác
11. Vu Thanh Nguyen. Support vector machines combined with fuzzy c-means for text classification. IJCSNS - International journal of computer science and network security, Vol. 10, No. 3, March 2010. ISSN: 1738-7906 Khác
12. Vu Thanh Nguyen; LeThanh Trong; Tran Duc Chinh. Improvement for text classification using SVM and fuzzy SVM. p.169-p.175. IT@EDU2010. August 19-20, 2010 Khác
13. Vu Thanh Nguyen; Nguyen Quoc Thinh. Application of some retrieved information method on internet. IJCSI - International journal of computer science Khác
14. Nasim VasfiSisi, Mohammad Reza Feizi Derakhshi, Text Classification with Machine Learning Algorithms, Journal of Basic and Applied Scientific Research ISSN 2090-4304, 2013 Khác
15. Patoomsiri Songsiria, Thimaporn Phetkaewb, Boonserm Kijsirikul, Enhancements of Multi-class Support Vector Machine Construction from Binary Learners using Generalization Performance, Neurocomputing, vol 151, Part 1, pages 434-448, 3 March 2015 Khác
16. Aurangzeb Khan, Baharum Baharudin, Lam Hong Lee, Khairullah khan, A Review of Machine Learning Algorithms for Text-Documents Classification, Journal of advances in information technology, vol. 1, no. 1, february 2010 Khác
17. Neha Mehraand Surendra Gupta (2013), Survey on Multiclass Classification Methods, International Journal of Computer Science and Information Technologies, Vol 4, pp. 572-576 Khác
18. Jiří Kaiser (2014) , Dealing with Missing Values in Data, Journal of System Intergration 2014/1, pp. 42-51 Khác

TỪ KHÓA LIÊN QUAN

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

TÀI LIỆU LIÊN QUAN

🧩 Sản phẩm bạn có thể quan tâm

w