Hướng tiếp cận dựa trên xác suất

Một phần của tài liệu phân lớp câu hỏi tìm kiếm ngữ nghĩa tiếng Việt trong lĩnh vực y tế (Trang 28)

Bên cạnh hướng tiếp cận dựa trên biểu thức chính quy thì hướng tiếp cận dựa trên xác suất cũng là một hướng tiếp cận được nhiều nhà khoa học lựa chọn khi nghiên cứu về phân lớp câu hỏi. Như đã được giới thiệu, hướng tiếp cận dựa trên xác suất bao gồm hai hướng con là hướng học máy và hướng dựa trên mơ hình ngơn ngữ [15].

Hướng tiếp cận học máy sử dụng những thuật tốn và kỹ thuật cho phép máy tính cĩ thể “học” 1 được. Cụ thể, trong bài tốn phân lớp câu hỏi hướng tiếp cận học máy sử dụng các thuật tốn như : Support Vector Machines (SVM), láng giềng gần nhất (Nearest

Neighbors – kNN), Nạve Bayes (NB)…v.v để học trên tập câu hỏi mẫu đã được gán nhãn từ đĩ xây dựng mơ hình phân lớp câu hỏi.

Trong khi đĩ, tiếp cận dựa trên mơ hình ngơn ngữ xây dựng một mơ hình ngơn ngữ thống kê cĩ thể ước lượng được phân phối của ngơn ngữ tự nhiên chính xác nhất cĩ thể. Ví dụ, với một xâu S = “Bệnh đau dạ dày chữa ở đâu?” thì mơ hình ngơn ngữ cho xâu S chính là xác suất P(S), sao cho xác suất này ánh xạ với tần suất mà xâu S trở được xuất hiện như một câu nĩi trong ngơn ngữ tự nhiên (ví dụ tiếng Việt). Khi áp dụng phương pháp này cho bài tốn phân lớp câu hỏi, tức là xây dựng một mơ hình ngơn ngữ cho từng câu hỏi. Mơ hình này sẽ cho biết xác suất câu hỏi được phân vào lớp nào là hợp lý nhất (lớn nhất).

Cả hai phương pháp trên đều cĩ độ chính xác khác nhau phụ thuộc vào ngơn ngữ áp dụng. Để lựa chọn hướng tiếp cận tốt nhất khi xây dựng bộ phân lớp câu hỏi cho tiếng Việt, phần tiếp theo của khĩa luận sẽ trình bày những khảo sát về cả hai hướng tiếp cận trên

3.3.2 Các hướng tiếp cận theo phương pháp học máy

Trong hướng tiếp học máy thuật tốn được sử dụng chủ yếu để giải quyết bài tốn phân lớp câu hỏi là Support Vector Machines (được sử dụng trong các tài liệu [19, 20, 22], ngồi ra các thuật tốn khác cũng được sử dụng như Nearest Neighbors (NN), Nạve Bayes (NB), Decision Tree (DT) và Sparse Network of Winnows (SNoW) [42]. Đưới đây trình bày sơ lược về nội dung một số thuật tốn học máy.

3.3.1.1 Support Vector Machines (SVM) a. Thuật tốn [2] a. Thuật tốn [2]

Thuật tốn Support Vector Machines (máy vector hỗ trợ) được Corters và Vapnik giới thiệu vào năm 1995. SVM rất hiệu quả để giải quyết các bài tốn với dữ liệu cĩ số chiều lớn như các vector biểu diễn văn bản. Thuật tốn SVM ban đầu chỉ được thiết kế để giải quyết bài tốn phân lớp nhị phân tức là số lớp hạn chế là hai lớp. Hiện nay, SVM được đánh giá là bộ phân lớp chính xác nhất cho bài tốn phân lớp văn bản [31] bởi vì đĩ là bộ phân lớp tốc độ rất nhanh và hiệu quả đối với bài tốn phân lớp văn bản.

Cho tập dữ liệu học D ={(xi, yi), i = 1,…, n} với xi Rmyi{0,1} là một số là một số nguyên xác định xilà dữ liệu dương hay âm. Một tài liệu xi được gọi là dữ liệu dương nếu nĩ thuộc lớp ci ; xi được gọi là dữ liệu âm nếu nĩ khơng thuộc lớp ci . Bộ phân lớp tuyến tính được xác định bằng siêu phẳng:

{x : f(x) = WT+ w0 =0}

Trong đĩ W Rmw0R đĩ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 f(x): {1 (x) 0 0 (x) 0 > ≤ = f f h

Học bộ phân lớp của mơ hình bao gồm việc xác định w w0 từ dữ liệu. Với thuật tố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à yif(xi)>0 với mọi i = 1,...,n. Với giả thuyết này, Rosenblatt đã đưa ra một thuật tốn đơn giản để xác định siêu phẳng :

1. w ←0 2. w0←0 3. repeat 4. e←0 5. for i←1,…,n 6. do s←sign(yi(wTxi +w0) 7. if s<0 8. then w ←w + yixi 9. w0←w0 + yixi 10. e←e+1 11. util e=0 12.return (w,w0)

Điều kiện cần để D tách rời tuyến tính là số dữ liệu học n = |D| nhỏ hơn hoặc bằng m+1.

Điều này là thường đúng với bài tốn phân lớp văn bản, bởi vì số lượng từ mục cĩ thể lên tới hàng nghìn và lớn hơn nhiều lần so với số lượng dữ liệu học.

Hình 4. Mi quan h gia các siêu phng phân cách

Trong Hình 4, giả sử rằng các dữ liệu mẫu thuộc lớp âm và lớp dương đều tuân theo luật phân bố chuẩn Gaussian, và được tạo ra với cùng một xác suất. Khi đĩ một siêu phẳng phân cách được gọi là lý tưởng nếu nĩ làm cực tiểu xác suất phân lớp sai cho một điểm dữ liệu mới. Với giả thuyết ở trên thì siêu phẳng phân cách lý tưởng sẽ trực giao với đoạn thẳng nối tâm của hai vùng cĩ mật độ xác suất lớn nhất.

Rõ ràng các siêu phẳng được xây dựng nhằm phân cách các điểm dữ liệu mẫu cĩ thể lệch đi rất nhiều so với siêu phẳng lý tưởng, do đĩ sẽ dẫn tới việc phân lớp khơng tốt trên dữ liệu mới sau này. Độ phức tạp của quá trình xác định siêu phẳng lý tưởng sẽ tăng theo số chiều của khơng gian đầu vào m, vì với một số lượng các dữ liệu mẫu cố định, tập hợp các siêu phẳng thực tế sẽ tăng theo hàm mũ với lũy thừa m. Với bài tốn phân lớp trang văn bản, m thường rất lớn, khoảng vài ngàn hay thậm chí là hàng triệu từ.

Hình 5. Siêu phng ti ưu và biên.

Theo lý thuyết thống kê được phát triển bởi Vapnik năm 1998 chỉ ra rằng cĩ thể xác định một siêu phẳng tối ưu thoả mãn hai tính chất quan trong (1) nĩ là duy nhất với mỗi tập dữ liệu học tách rời tuyến tính; (2) khả năng overfitting là nhỏ hơn so với các siêu phẳng khác [26]. Định nghĩa biên M của bộ phân lớp là khoảng cách giữa các siêu phẳng và các dữ liệu học gần nhất. Siêu phẳng tối ưu nhất là siêu phẳng cĩ biên lớn nhất, điều đĩ cĩ nghĩa là chúng ta cần tìm siêu phẳng sao cho khoảng cách từ siêu phẳng đến những điểm gần nhất là lớn nhất (Hình 5). Vapnik cũng chứng minh rằng khả năng overfitting với siêu phẳng tối ưu nhỏ hơn so với các siêu phẳng khác.

Khoảng cách từ một điểm x đến siêu phẳng là :

Vì vậy siêu phẳng tối ưu cĩ thể thu được bằng ràng buộc tối ưu sau:

0

w,w

max M sao cho T

i i 0 1 y (w x w ) M,i 1,...n || w || + ≥ = 0 T w w || w || 1 +

Trong đĩ ràng buộc yêu cầu mỗi tài liệu học (tương đương với các điểm) phải nằm trên nửa mặt phẳng của nĩ và khoảng cách từ điểm tới siêu phẳng lớn hơn hoặc bằng M. Đặt w= 1M biểu thức trên được viết lại như sau

0

w,w (adsbygoogle = window.adsbygoogle || []).push({});

min W sao cho T

i i 0

y (w x +w ) M,i 1,...,n≥ = Đưa về phương trình Lagrangian:

( ) n 2 T i i 0 i 1 1 L(D) || w || y w w 1 2 = ⎡ ⎤ = − +∑α ⎣ + − ⎦

Sau đĩ tính đạo hàm của phương trình trên theo w,w0 ta được

n T i i 1 1 max 2 α − α Λα +∑= α thoả mãn α ≥i 0,i 1,...,n=

Với Λlà ma trận n×n trong đĩ αi= yiyjxiTxj. Đây là bài tốn bậc hai, theo lý thuyết cĩ thể giải được bằng phương pháp chuẩn tối ưu. Với mỗi dữ liệu học i, cách giải phải thoả mãn điều kiện:

i

α [y (wT w0) 1]

i + − =0

Và do đĩ hoặc αi= 0 hoặc y(wTxi w0)

i + =1. Nĩi cách khác, nếu αi>0 thì khoảng cách từ điểm xiđến mặt phẳng phân cách là M .

Các điểm thoả mãn αi>0 được gọi là các vector hỗ trợ. Hàm quyết định h(x) cĩ thể được tính qua cơng thức dấu của f(x) hoặc tương đương với dạng sau:

i T i n 1 i ix x x y (x) ∑ = = f

Nếu dữ liệu học khơng tách rời tuyến tính, thêm biến ξi và thay phương trình trên bằng phương trình: ∑ = + n 1 i C || w || min i w w, ξ 0 thỏa mãn ( + )≥ − = ≥ = ⎧⎪ ⎨ ⎪⎩ T i i 0 i i y w x w 1 ξ ,i 1,...,n ξ 0, i 1,...,n Vấn đề này cĩ thể đưa về dạng: 1 1 max 2 n T i i α α α α = − Λ +∑ thỏa mãn 0αiC i=1,…,n

Bộ phân lớp theo cách này được gọi là bộ phân lớp máy vector hỗ trợ – Support Vector Machine.

b. Phân lớp đa lớp với SVM

Bài tốn phân lớp câu hỏi yêu cầu một bộ phân lớp đa lớp do đĩ cần cải tiến SVM cơ bản (phân lớp nhị phân) thành bộ phân lớp đa lớp.

Một trong những phương pháp cải tiến đĩ là sử dụng thuật tốn 1-against-all[20]. Ý tưởng cơ bản như sau:

- Giả sử tập dữ liệu mẫu (x1,y1), … ,(xm,ym) với xi là một vector n chiều. và yiY là nhãn lớp được gán cho vector xi .

- Chia tập Y thành m tập lớp con cĩ cấu trúc như sau zi ={yi ,Y y\ i} .

- Áp dụng SVM phân lớp nhị phân cơ bản với m tập Zi để xây dựng siêu phẳng cho phân lớp này.

- Bộ phân lớp với sự kết hợp của m bộ phân lớp trên được gọi là bộ phân lớp đa lớp mở rộng với SVM.

c. Áp dụng SVM vào phân lớp câu hỏi

Tuy mục tiêu ban đầu của SVM là dùng cho phân lớp nhị phân, nhưng hiện nay đã được cải tiến cho phân lớp đa lớp, phiên bản phân lớp đa lớp này sẽ được sử dụng cho bài tốn phân lớp câu hỏi.

Hai quá trình chuẩn bị dữ liệu khi xây dựng được mơ hình phân lớp câu hỏi dựa trên SVM như sau:

(1)Thiết kế mơ hình cây phân cấp (taxonomy) cho tập lớp câu hỏi. Miền ứng dụng của câu hỏi sẽ quyết định độ phức tạp (phân cấp) của taxonomy

(2)Xây dựng tập dữ liệu mẫu (corpus) đã được gán nhãn cho từng lớp câu hỏi. Trong bước này, cách lựa chọn đặc trưng để biểu diễn câu hỏi cĩ vai trị quan trọng. Phụ thuộc vào đặc điểm của từng ngơn ngữ mà tập các đặc trưng được lựa chọn khác nhau. Ví dụ với tiếng Anh thì tập đặc trưng của nĩ là các từ.

Sau khi xây dựng được tập các lớp câu hỏi cùng với tập dữ liệu sẽ tiến hành “học”: Mơ hình học như sau:

Hình 6. Sơđồ phân lp câu hi vi SVM (adsbygoogle = window.adsbygoogle || []).push({});

Trong Hình 6, bước tiền xử lý thực hiện chức năng làm tinh dữ liệu: loại bỏ từ dừng (stopword) …sau đĩ câu hỏi được trích trọn các đặc trưng (các đặc trưng được lựa chọn từ trước), dữ liệu đầu vào của bộ phân lớp SVM sẽ là tập các vector đặc trưng.

3.3.1.2 Một số phương pháp khác

Ngồi SVM và K láng giềng gần nhất, trong bài tốn phân lớp câu hỏi một số phương pháp khác được giới thiệu ở [42] như:

•Thuật tốn Nạve Bayes (NB) [32]là một thuật tốn phổ biến trong học máy. Được McCallum [22] và Yang [41] đánh giá là một trong những phương pháp cĩ hiệu năng cao nhất khi thực hiện phân lớp văn bản. Tư tưởng chủ đạo của thuật tốn Nạve Bayes là ước lượng các thơng số của đa thức sinh cho của thể hiện (văn bản, câu …). Sau đĩ lựa chọn lớp thích hợp nhất cho từng thể hiện dựa vào các luật Bayes và giả thiết Bayes (giả thiết độc lập - sự xuất hiện của đặc trưng này là tự nhiên, khơng phụ thuộc vào sự xuất hiện các đặc trưng khác)

•Thuật tốn cây quyết định (Decision Tree –DT) [32] là phương pháp xấp xỉ giá trị các hàm mục tiêu rời rạc. Trong đĩ, hàm học của phương pháp này là một cây cĩ bậc tùy ý. Cây quyết định bao gồm các lá và nhánh, mỗi là là đại diện cho một lớp và các nhánh là các điều kiện, đặc trưng dẫn đến lớp ở đỉnh lá.

•Thuật tốn Mạng lọc thưa (Sparse Network of Winnows -SNoW) [6] được thiết kế

để học trên những tập dữ liệu cĩ số lượng đặc trưng lớn. Được sử dụng rộng rãi

trong các bài tốn phân lớp đa lớp. SNoW là một mạng thưa dùng các hàm tuyến tính là các bộ lọc để cập nhật tập luật. Phương pháp này thích hợp cho học trong miền khi các đặc trưng tiềm năng tạo các quyết định sai khác nhau mà khơng biết mức độ ưu tiên.

•Bộ phân lớp dựa trên thuật tốn K người láng giềng gần nhất là một bộ phân lớp dựa trên bộ nhớ, đơn giản vì nĩ được xây dựng bằng cách lưu trữ tất cả các đối tượng trong tập huấn luyện. Để phân lớp cho một điểm dữ liệu mới x, trước hết bộ phân lớp sẽ tính khoảng cách từ điểm x đến tất cả các điểm dữ liệu trong tập huấn luyện. Qua đĩ tìm được tập N(x, D, k) gồm k điểm dữ liệu mẫu cĩ khoảng cách đến

x là gần nhất. Ví dụ nếu các dữ liệu mẫu được biểu diễn bởi khơng gian vector thì chúng ta cĩ thể sử dụng khoảng cách Euclian để tính khoảng cách giữa các điểm dữ liệu với nhau. Sau khi xác định được tập N(x, D, k), bộ phân lớp sẽ gán nhãn cho điểm dữ liệu x bằng lớp chiếm đại đa số trong tập N(x, D, k). Mặc dù rất đơn giản, nhưng thuật tốn K người láng giềng gần nhất đã cho kết quả tốt trong nhiều ứng dụng thực tế.

Để áp dụng thuật tốn k-NN vào tài liệu văn bản, chúng ta sử dụng hàm tính trọng

số cho mỗi lớp theo biểu thức (1.1) (Trong cơng thức, Nc(x,D,k) là tập con chỉ chứa các đối tượng thuộc lớp c của tập):

( ) ( ) ∑ ∈ = k D, x, Nc x' ) x' cos(x, x | c Score (1.1)

Khi đĩ tài liệu x sẽ được phân vào lớp c0 nếu:

(c |x) Max{score( )c|x ,c C}

3.3.1.3 Thực nghiệm khi tiến hành phân lớp câu hỏi

Với sự phong phú của các thuật tốn trong học máy dẫn đến việc phải cân nhắc khi lựa chọn thuật giải nào đại diện cho hướng học máy áp dụng vào bài tốn phân lớp câu hỏi trong tiếng Việt. Zhang [42] đã tiến hành thử nghiệm năm thuật tốn khác nhau trong hướng học máy khi xây dựng bộ phân lớp câu hỏi. Dựa trên kết thực nghiệm này, sẽ quyết định thuật tốn sử dụng trong hướng học máy.

Thực nghiệm của Zhang như sau: a. Taxonomy của lớp câu hỏi

Lớp cha Các lớp con

ABBR Tĩm tắt, sự khai triển DESC Định nghĩa, mơ tả, lý do

ENTY Động vật, cơ thể, màu sắc, sang tác, tiền tệ, ngơn ngữ, chữ viết, loại khác, thực vật, bệnh /thuốc, sự kiện, thực phẩm, ngơn ngữ, cơng cụ - phương tiện, sản phẩm, tơn giáo, thể thao, vật chất, ký hiệu, kỹ thuật, thuật ngữ, xe cộ, từ.

HUM Nhĩm, cá thể, tên, tư cách

LOC Thành phố, đất nước, núi, bang, loại khác

NUM Mã, đếm, ngày, khoảng cách, tiền, thứ tự, khác, phần trăm-tỉ lệ, thời kỳ, tốc độ, nhiệt độ, kích cỡ, cân nặng

Bng 1. Taxonomy ca tp lp câu hi th nghim ca Zhang

Bảng trên mơ tả tầng cao nhất của taxonomy câu hỏi, mỗi một lớp thuộc cột “chi tiết” mơ tả một loại câu hỏi riêng biệt.

b. Tập câu hỏi cho taxonomy trên bao gồm các câu hỏi đã được gán nhãn được cung cấp bởi USC [11], UIUC [42] và TREC [14][13] [12]. Tập dữ liệu này được gán nhãn thủ cơng. Mỗi một câu hỏi chỉ thuộc một lớp nhất định.

Tập đặc trưng lựa chọn bao gồm hai loại đặc trưng:

(1)bag-of-words: biểu diễn văn bản/câu hỏi độc lập với ngơn ngữ và ngữ pháp. Mỗi một văn bản/câu hỏi được biểu diễn bẳng một tập các từ, tập từ này khơng xếp thứ tự.

(2)bag-of-ngrams: là một kỹ thuật biểu diễn văn bản độc lập với ngơn ngữ. Nĩ chuyển đổi các văn bản/câu hỏi thành các vectơ đặc trưng đa chiều với mỗi đặc trưng tương đương với một chuỗi con liền kề nhau. n-grams là các ký tự liền kề nhau (chuỗi con) bắt đầu từ mẫu tự A. Vì vậy, khoảng cách n-grams trong văn bản ít hơn hoặc bằng |A|n. Đều này cho thấy số chiều của vectơ đặc trưng n- grams cĩ thể rất lớn thậm chí khi n cĩ giá trị vừa phải. (adsbygoogle = window.adsbygoogle || []).push({});

Vector đặc trưng trích trọn được với mỗi câu hỏi thường là vector cĩ giạ trị nhị phân

Một phần của tài liệu phân lớp câu hỏi tìm kiếm ngữ nghĩa tiếng Việt trong lĩnh vực y tế (Trang 28)