3. Các phương pháp phân loại văn bản
3.3.1.2 Entropy của biến ngẫu nhiên
Entropy của một biến ngẫu nhiên X cũng là giá trị mong đợi của các độ ngạc nhiên của các giá trị mà X có thể nhận.
Xét một biến ngẫu nhiên X có phân phối :
Công thức tính Entropy của X :
Nhận xét :
Một phân phối xác suất càng lệch nhiều (có xác xuất rất nhỏ và rất lớn) thì tính không chắc chắn càng nhỏ entropy càng thấp
Một phân phối xác suất càng đều thì tính không chắc chắn càng lớn =>
entropy càng cao Định lý cực đại của Entropy :
Ta có : H(p1,p2,…,pM)<=log(M)
Trong đó : đẳng thức xảy ra khi và chỉ khi p1=p2=…=pM=1/M, khi đó entropy đạt giá trị cực đại.
3.3.2 Áp dụng vào phân loại văn bản
3.3.2.1 Biểu diễn văn bản
Để biểu diễn văn bản, chúng ta vẫn sử dụng phương pháp đã được trình bày ở trên. Trong thì nghiệm này, tác giả vẫn biểu diễn văn bản bằng một vector với 20 chiều là 20 từ có độ đo 2 cao nhất, mỗi chiều là trọng số của từ đó được đo bằng độ đo tf.idf
31
3.3.2.2 H{m đặc trưng v{ r{ng buộc
Trong mô hình Maximum Entropy, chúng ta sử dụng dữ liệu huấn luyện để tạo các ràng buộc. Mỗi ràng buộc biểu diễn một đặc tính của dữ liệu huấn luyện. Mỗi ràng buộc được định nghĩa bằng một hàm đặc trưng. Dạng chung của hàm đặc trưng như sau :
( ) {
Trong nhiệm vụ phân loại này, chúng ta định nghĩa hàm đặc trưng trên cặp giá trị ( ), với là vector biểu diễn một văn bản trong tập huấn luyện và c là một giá trị trong tập phân lớp C.
( ) {
Trong đó : wij là trọng số của từ thứ i trong văn bản j.
Ở đây chúng ta sử dụng hàm đặ trưng nhị phân thể hiện sự có hay không có của từ trong văn bản. Tuy nhiên, chúng ta có thể sử dụng hàm đặc trưng thể hiện độ lớn của trọng số.
3.3.2.3 Một số kí hiệu :
S : tập huấn luyện
̃( ) : xác suất thực nghiệm của x trong tập S ( ) : xác suất của x
̃ : giá trị kì vọng thực nghiệm của đặc trưng : giá trị kì vọng của đặc trưng
3.3.2.4 Mô hình
Có nhiều mô hình khác nhau cho việc phân lớp bằng Entropy cực đại. Ở đây, chúng ta sẽ sử dụng mô hình Loglinear có công thức như sau :
( ⃗⃗ ) ∏ ( ⃗⃗ )
Trong đó :
32
: trọng số (giá trị) của hàm đặc trưng : là hằng số chuẩn hoá
Vấn đề của mô hình là xác định các trọng số tối ưu và dùng chúng để phân lớp. Trong trường hợp đơn giản nhất, để phân lớp cho một văn bản mới, dựa vào bộ đã huấn luyện, chúng ta tính ( ) và ( ). Sau đó chúng ta sẽ chọn lớp có xác suất lớn hơn làm phân lớp cho xnew.
3.3.2.5 Thủ tục huấn luyện Generalized iterative scaling
Generalized iterative scaling (GIS) là một thủ tục để tìm kiếm phân bố xác suất p sao cho entropy đạt giá trị cực đại của dạng mô hình LogLinear. Mục chính của giải thuật là tìm ra bộ trọng số tối ưu sao cho thoả tập ràng buộc :
̃
Trong đó, giá trị kì vọng được định nghĩa như sau :
∑ ( ⃗⃗ ) ( ⃗⃗ )
⃗⃗⃗ Công thức tính xấp xỉ như sau :
∑ ∑ ( | ⃗⃗ ) ( ⃗⃗ )
Trong đó,
( | ⃗⃗ ) (∑ ( ⃗⃗ )) ∑ (∑ ( ⃗⃗ )) Và giá trị kì vọng thực nghiệm được định nghĩa như sau :
̃ ∑ ̃( ⃗⃗ ) ( ⃗⃗ )
⃗⃗⃗
∑ ( ⃗⃗ )
Trong đó, N là số văn bản trong tập huấn luyện. Chú ý rằng hai giá trị kì vọng của các hàm đặc trưng này không phải là giá trị nhị phân, mà là giá trị thực để đo khả năng của các ràng buộc.
Thuật giải đòi hỏi tổng giá trị của các hàm đặc trưng ứng với mỗi vector và mỗi lớp c phải là một hằng số C.
33
⃗⃗ ∑ ( ⃗⃗ )
Để hoà thành yêu cầu này, chúng ta định nghĩa C là giá trị lớn của các giá trị của các hàm đặc trưng
⃗⃗ ∑ ( ⃗⃗⃗ )
Tuy nhiên, không phải tất cả các tổng giá trị các hàm đặc trưng đều bằng hằng số C, do đó, chúng ta add thêm vào tập các hàm đặc trưng một hàm đặc trưng như sau :
( ⃗⃗ ) ∑ ( ⃗⃗ )
Thủ tục huấn luyện được thực hiện như sau :
1. Khởi tạo tập trọng số { ( )} ( với 1 i K+1, và (1) là tập trọng số thứ 1 ứng với lần khởi tạo và sẽ tăng dần lên ứng với từng lần lặp). Có thể khởi tạo với bất kì giá trị nào, tuy nhiên thường chúng ta sẽ khởi tạo với giá trị 1, tức là { ( ) }.
Tính giá trị kì vọng thực nghiệm của các hàm đặc trưng ̃ Khởi tạo n=1.
2. Tính xác suất cho từng vector văn bản với từng lớp trong tập phân lớp
( )( ⃗⃗ ), sử dụng tập trọng số i tại thời điểm đang xét và tính theo công thức :
( )( ⃗⃗ ) ∏ . ( )/ ( )
3. Tính giá trị kì vọng (với 1 i K+1) cho các hàm đặc trưng theo công thức xấp xỉ đã trình bày ở trên
34 ∑ ∑ ( | ⃗⃗ ) ( ⃗⃗ ) 4. Cập nhật giá trị cho tập trọng số i ( ) ( ̃ ( ) )
5. Nếu các trọng số đã hội tụ thì dừng chương trình, ngược lại tăng n lên 1 và quay lại bước 2.
Kết quả sau khi chạy giải thuật là tập các trọng số I .
3.3.2.6 Giai đoạn ph}n lớp
Cho một vector văn bản mới ( ).
Sử dụng tập mô hình trọng số đã huấn luyện, tín hai xác suất P(c| ) và P(c| ) theo công thức :
( | ⃗⃗ ) (∑ ( ⃗⃗ )) ∑ (∑ ( ⃗⃗ ))
Sau khi tính hai xác suất, lớp nào có xác suất cao hơn sẽ là lớp cho văn bản mới.
35
5. Tài liệu tham khảo
[1] Christopher D.Manning, Hinrich Schutze, Foundations of Statistical Natural Language Processing, 1999, The MIT Press.
[2] Hồ Văn Quân, Khoa CNTT, ĐH Bách Khoa TPHCM, Bài Giảng Lý Thuyết Thông Tin.
[3] Kostas Fragos, Yannis Maistros, Christos Skourlas, A Weighted Maximum Entropy Language Model for Text Classification.
[4] Kamal Nigam, John Laerty, Andrew McCallum, Using Maximum Entropy for Text Classication.