Tải bản đầy đủ (.docx) (9 trang)

báo cáo sử lý ngôn ngữ tự nhien đề tài phân loại website sử dụng lan truyền nhãn

Bạn đang xem bản rút gọn của tài liệu. Xem và tải ngay bản đầy đủ của tài liệu tại đây (293.84 KB, 9 trang )

TRƯỜNG ĐẠI HỌC BÁCH KHOA HÀ NỘI
VIỆN CÔNG NGHỆ THÔNG TIN VÀ TRUYỀN THÔNG
BÀI TẬP LỚN
Môn: Xử lý ngôn ngữ tự nhiên
Đề tài : Phân loại website sử dụng lan truyền nhãn
GV Hướng dẫn PGS.TS.Lê Thanh Hương
PGS.TS Nguyễn Kim Anh
KS Ngô Văn Linh
SV thực hiện Nguyễn Hải An MSSV 20080006
Đoàn Đình Tỉnh MSSV 20082685
Đỗ Việt Thành MSSV 20082370
Hà nội, 05/2011
Giới thiệu
Web ngày nay đã trở thành nơi chứa một lượng tài nguyên thông tin dồi dào và quan
trọng nhất, là nguồn tri thức cho khoa học, giáo dục và các ứng dụng tìm kiếm. Với một
lượng thông tin tăng lên một cách chóng mặt trên internet, người ta thường phải dành
nhiều thời gian để tìm kiếm được thông tin mong muốn ngay cả với sự hỗ trợ của các
công cụ tìm kiếm. Trong lúc ấy, tất cả các phương pháp học máy và khai phá dữ liệu
(machine learning and data mining) đã đều đưa ra những cải tiến hiệu quả hơn để đáp
ứng nhu cầu của người dùng. Một cách để tổ chức lượng lớn thông tin ngày càng tăng
này là phân loại chúng bằng các mô tả và các chủ đề thích hợp. Phân loại web giúp chúng
ta tăng chất lượng của tìm kiếm web ngay cả khi có rất nhiều những trang web không
mong muốn. Ngoài ra, sự phân loại web còn đóng vai trò quan trọng trong việc quản lí
nhiều thông tin và thu thập thông tin.
Phân loại trang web là một bài toán học máy có giám sát (supervised machine
learning) truyền thống, nhiệm vụ là huấn luyện một bộ phân loại với các ví dụ có nhãn,
sau đó dự đoán gán nhãn cho bất kỳ trang mới nào. Nhưng trong phân loại các trang web,
cũng như trong nhiều các ứng dụng thực hành học máy và khai phá dữ liệu, các ví dụ
huấn luyện không có nhãn thì dễ đưa ra trong khi phải rất khó khăn đắt đỏ và mất thời
gian để đưa ra các ví dụ có nhãn. Lý do là các ví dụ có nhãn thường đòi hỏi sự cố gắng và
dộ chính xác cao của những người thí nghiệm. Học máy bán giám sát (semi-supervised


machine learning ) giải quyết được vấn đề này bằng cách tận dụng một lượng lớn các dữ
liệu không có nhãn, cùng với lượng nhỏ tập dữ liệu có nhãn để tạo một bộ phân loại tốt
hơn. Dù vậy với kích thước giới hạn của tập dữ liệu có nhãn đã tạo ra một thách thức về
việc chọn lựa một tập các đặc trưng tốt mà chỉ dựa trên dữ liệu có nhãn.
Vấn đề (problem) trong thực hành này hướng đến sự cần thiết của trích chọn đặc
trưng bán giám sát (semi-supervised feature selection) để chọn ra tập đặc trưng có lợi
nhất để tạo ra bộ phân loại cho một thuật toán học với các ví dụ có nhãn và không có
nhãn.
Ngoài ra, sự tự nhiên không có kiểm soát trong nội dung các trang web lại đưa ra
những thách thức giữa phân loại các trang web với cả phân loại văn bản truyền thống.
Để giải quyết vấn đề này, chúng ta có thể dựa vào đặc trưng liên hệ lẫn nhau của các siêu
văn bản vì thế điều quan trọng để đưa ra một phân loại trang web hiệu quả là tìm được
bản chất của các mối liên hệ giữa các trang web. Để làm điều này chúng ta cần sử dụng
cùng lúc thông tin ở nội dung trang web, các hyperlinks và usage data là những đặc trưng
quan trọng cho hệ thống. Trong số đó, phân tích các hyperlinks có những lợi ích riêng
của nó, thông thường các hyperlinks thường truyền đạt ngữ nghĩa trong nhiều trường
hợp.
Chúng tôi nhận thấy rằng các trang web của một chủ đề riêng thì thường có được liên
kết (linked) với các trang khác trong cùng chủ đề. Thực tế, với một vài ngoại lệ, các tác
giả của các trang web tạo những liên kết tới các trang khác thường có một ý tưởng rằng
các trang được linked tới thì có những nội dung tương đồng với trang liên kết tới nó.
Ngoài ra, các phân tích hyperlinks còn được chứng minh là thành công trong nhiều lĩnh
vực khác của web, như là page ranking trong các máy tìm kiếm.
Bài viết này sử dụng hệ thống phân loại bán giám sát dựa trên đồ thị sử dụng lan
truyền nhãn (Label Propagation learning) và các liên kết để tăng độ chính xác trong phân
loại web tiếng Anh.
Trích chọn đặc trưng Document Frequency.
Trích chọn đặc trưng là một bước xử lý dữ liệu quan trọng trong phân loại trang web
bởi vì thể hiện của các trang web là tập dữ liệu rất nhiều chiều. Đối với nhiều thuật toán
học thì việc xử lý quá nhiều chiều là không được phép. Hơn nữa, khá nhiều chiều không

liên quan gì tới việc phân loại các trang web, nhiều nhiễu gây mất chính xác cho việc
phân loại. Do đó, ta cần chọn một số đặc trưng thể hiện từ những không gian đặc trưng
ban đầu để giảm số chiều không gian đặc trưng và làm tăng độ chính xác và hiệu quả của
bộ phân loại. Theo cách truyền thống, trích chọn đặc trưng có giám sát sử dụng thông tin
từ dữ liệu đã gán nhãn để tìm tập những đặc trưng mang nhiều thông tin nhất hoặc hữu
ích nhất nhưng thông tin từ những dữ liệu chưa gán nhãn thì không được sử dụng. Hiện
tại, trích chọn đặc trưng dựa trên thống kê và học máy.
DF (Document Frequency) tính tần suất xuất hiện của từ trong các văn bản, nếu tần
suất này ít quá thì khó mà mang thông tin đặc trưng cho một lớp, nếu tần suất này quá
nhiều thì cũng không thể là thông tin đặc trưng của lớp. Do đó ta tính DF của mỗi một từ
và loại bỏ theo ngưỡng trên và dưới.
Xây dựng đồ thị
Như nhiều phương pháp học máy bán giám sát dựa trên đồ thị khác, ta cho rằng thể
hiện của đồ thị là homophilous, nghĩa là các thể hiện thuộc cùng về một lớp có xu hướng
liên kết với nhau hoặc có trọng số cạnh giữa chúng lớn. Ta có thể tìm thấy trong nhiều
mạng tự nhiên như là mạng các websites, blogs thường có những liên kết với nhau khi
một mạng cá nhân tham gia vào các cộng đồng mạng chung. Một thể hiện (instance) đồ
thị homophilous có thể xây dựng bởi những hàm tương đồng dựa trên đặc trưng của thể
hiện. Hướng tiếp cận dựa trên đồ thị đặt ra câu hỏi rằng ta xây dựng đồ thị như thế nào.
Khi một thể hiện không thật sự liên kết tới trang khác, thường thì hàm tương đồng được
áp dụng cho các đặc trưng cục bộ của mỗi cặp của thể hiện dựa vào độ lớn trọng số cạnh
giữa chúng. Khi các thể hiện có liên kết chính xác đến các trang khác, các cạnh đơn giản
là thể hiện tương ứng với một liên kết (Nếu có nhiều liên kết giữa hai trang, trọng số của
cạnh sẽ lớn). Với thể hiện là một trang web, cách tiếp cận lai được sử dụng vì ta có thể
lấy được các đặc trưng cục bộ cũng như các link chính xác tồn tại giữa chúng.
Ta hình thành đồ thị dựa trên kết hợp của nội dung và link của các trang web:
• Pha đầu tiên, tạo hai đồ thị: đồ thị dựa trên nội dung và đồ thị dựa trên liên kết
link. Cùng sử dụng tập đỉnh nhưng khác nhau cạnh và trọng số tương ứng.
• Pha thứ hai, ta kết hợp tuyến tính hai đồ thị để tạo một đồ thị kết hợp.
Xây dựng đồ thị dựa trên nội dung:

Ta xây dựng đồ thị G
1
(V,E
1
,W
1
), mà trong đó V là tập các đỉnh, E
1
là tập các cạnh và
W
1
là trọng số ma trận của E
1
. Mỗi đỉnh trong V thể hiện một trang web, Mối liên hệ giữa
hai trang web được thể hiện bởi cạnh trong E
1
. Trọng số W
1
có thể để dưới dạng mà trận
hoặc linked list. Trong bài này, W
1
là một ma trận có mỗi phần tử là một trọng số cạnh
tương ứng trong tập E
1
.
Ta thể hiện dữ liệu text đã xử lý của một trang web dưới dạng vector các đặc trưng -
sau quá trình trích chọn đặc trưng, và dựa trên mô hình TF*IDF (Term Frequency –
Inverse Document Frequency). Trong mô hình này, mọi vector có cùng số chiều và giá trị
mỗi chiều được tính như sau:
Trong biểu thức trên, thành phần thứ i của vector thứ j, d

j
là trang web thứ j, t
i
là từ
(term) thứ i trong d
j
, tf
ij
thể hiện tần số của từ t
i
trong trang d
j
, df
i
đặc trưng cho số tài liệu
trong tập dữ liệu chứa từ t
i
, và N là kích thước của tập dữ liệu.
Có nhiều phương pháp để thể hiện sự tương đồng nhau giữa hai trang web. Bài này
sẽ chọn độ tương đồng cosine để tính sự tương đồng về nội dung giữa hai trang web. Ta
tính w
1
như sau:
W
1
thể hiện sự tương đồng nội dung giữa hai trang web, nếu giá trị w lớn thì chúng
cùng nói về một chủ đề và ngược lại. Đồ thị này là đầy đủ, trong trường hợp tập dữ liệu
quá lớn ta có thể giảm bớt bởi một đồ thị , cắt những cạnh có trọng số thấp theo ngưỡng .
Đồ thị dựa trên liên kết:
Đồ thị dựa trên liên kết G

2
(V,E
2
,W
2
) cùng chung tập đỉnh với đồ thị G
1
, và số cạnh
phụ thuộc vào số liên kết giữa hai trang. Lý do sử dụng hyperlink là vì hai trang web
dường như sẽ cùng nói về cùng một chủ đề nếu như có link đến nhau. Không may là có
nhiều trang phổ biến có những link nhiễu lớn ví dụ như quảng cáo, điều hướng. Để loại
bỏ link nhiễu, ta sử dụng ngưỡng với w
1
, nếu độ tương đồng nội dung nhỏ hơn một
ngưỡng nào đó, ta sẽ coi đó là link nhiễu. Điều này là có thể thực hiện được.
Đồ thị liên kết:
Sau khi xây dựng được hai đồ thị tương đồng dựa trên nội dung và đồ thị tương đồng
dựa trên liên kết, ta tổ hợp lại thành một đồ thị G(V,E,W) như sau:
Ta tinh chỉnh giá trị để có được W tốt nhất.
Lan truyền nhãn trong đồ thị
Lan truyền nhãn là một thuật toán phân loại bán giám sát, nó gán nhãn cho những
ví dụ chưa có nhãn dựa trên những ví dụ đã có nhãn. Ý tưởng chính của lan truyền
nhãn là nhãn của một đỉnh sẽ được lan ra các đỉnh khác thông qua các cạnh. Thuật
toán vẫn có thể cho kết quả tốt khi tập huấn luyện nhỏ. Trong thực tế, cái giá phải trả
cho việc gán nhãn rất nhiều các tài liệu là một việc khó. Nhưng đặc điểm nổi bật của
lan truyền nhãn là có thể hội tụ một cách chắc chắn. Dù sao, độ chính xác của thuật
toán thì phụ thuộc nhiều vào độ tương đồng của ma trận mà ta xây dựng cho các
trang web.
Bài toán: Cho một đồ thị G(V,E,W) và tập nhãn C kích thước m. Đặt V
l

là tập có
nhãn và V
u
là tập chưa có nhãn. Vấn đề là gán nhãn cho các dữ liệu không có nhãn
dựa vào đồ thị G và tập dữ liệu có nhãn.
Ta chuyển bài toán thành tìm một ma trận xác suất Y kích thước nxm với n là số
đỉnh và m là số nhãn. Hàng thứ i của ma trận Y thể hiện sự phân bố xác suất của đỉnh
i vào tập nhãn C. Đặc biệt, giá trị Y
ic
thì tương ứng là xác suất của đỉnh i được gán
nhãn c. Ta có thể chỉ ra nhãn Y
i
được gán cho đỉnh i được tính như sau:
Ta khởi tạo ma trận Y
0
.
Gọi P
nxn
là một ma trận xác suất, giá trị hàng i và cột j - P
ij
của P thì tương ứng
với khả năng đi từ j đến i. Ta có tính chất của P như sau:
Ma trận P được xây dựng dựa trên ma trận trọng số W: . D là ma trận chéo có
Bằng các chứng minh toán học ta có thể thấy thuật toán Lan truyền nhãn sau là hội
tụ:
Cài đặt
Cài đặt bài toán sử dụng tập học là webKB.
Có hơn 7000 trang web được chia làm 7 nhãn.
Với tập này ta lấy ngẫu nhiên số lượng web trong các nhãn và cho làm tập học đi phân
loại số các trang còn lại, so sánh kết quả phân loại với nhãn ban đầu và đưa ra độ chính

xác của phép phân loại.
Chương trình được xây dựng bằng ngôn ngữ java, giao diện console.
Các lớp bao gồm:
• BuildWebDB
• Stemmer
• StopWords
• TermDict
• Utils
• WebDB
• WebReader
• Test.
Điều khiển chương trình trong hàm main. Kết quả trả về sau hàm report.
Kết Quả
Chương trình chạy cho kết quả chính xác đạt
Tài liệu tham khảo

×