Mơ hình tinh chỉnh véc-tơ biểu diễn từ

Một phần của tài liệu (LUẬN án TIẾN sĩ) phát triển các mô hình dựa trên mạng nơ ron cho phân tích quan điểm theo khía cạnh (Trang 85)

4 Học véc-tơ biểu diễn từ cho phân tích quan điểm theo khía cạnh

4.3.1 Mơ hình tinh chỉnh véc-tơ biểu diễn từ

Xuất phát từ ý tưởng sử dụng các véc-tơ biểu diễn từ được học từ các mơ hình khơng giam sát như Word2Vec hay Glove và một tập dữ liệu gán nhãn làm đầu vào cho một mơ hình học nhằm cập nhật lại các thành phần trong véc-tơ biểu diễn từ. Luận án đề xuất một mơ hình mạng nơ-ron tích chập có kiến trúc như trong Hình 4.3. Ký hiệu tên mơ hình là WEFT(Word Embedding Fine-Tuning). So sánh với mơ hình mạng nơ-ron

tích chậpCNN-non-static modeltrong nghiên cứu [3], mơ hìnhWEFTgiống họ. Nhưng mục đích sử dụng mơ hình khác họ, họ đề cập tới cơng việc chính phân loại câu và việc

tinh chỉnh véc-tơ từ là công việc phụ. Trong khi mục đích của chúng tơi là chỉnh sửa các véc-tơ biểu diễn từ phù hợp nhất cho các cơng việc của phân tích quan điểm theo khía cạnh. Ngồi ra, đầu ra của mơ hìnhWEFT có hai véc-tơ đầu ra tương ứng với hai thơng tin khía cạnh và quan điểm khía cạnh.

Hình 4.3: Minh họa mơ hình tinh chỉnh véc-tơ biểu diễn từ WEFT

Cho trước một câu`∈D2 gồm có ptừ, trình bày từng tầng được trình bày với các ký hiệu và cơng thức cần thiết như sau:

Tầng véc-tơ biểu diễn từ nhúng ngữ nghĩa(Word embedding layer)

Tầng này sử dụng các véc-tơ one-hot biểu diễn từ theo bộ từ điển, sau đó với véc-tơ biểu diễn từiđược tính lại theo mơ hình như sau:

xi=W.ei (4.1)

vớiW là một ma trận được khởi tạo bằng các véc-tơ biểu diễn từ được học các mơ hình như Word2Vec, Glove.

Tầng tích chập(Convolutional layer)

Tầng này nhận các véc-tơ x1,x2, ...,xp làm đầu vào và ba bộ lọc tích chập được sử dụng với kích thước là 1, 2, và 3. Việc sử dụng này nhằm mã hóa thơng tin ngữ nghĩa tương ứng củaunigrams,bigramstrigramstrong câu`. Đối với bộ lọc thứt,1≤t≤3, chúng ta sử dụng phép tốn tích chập để đạt được các véc-tơ mớiy1t1,y1t2, ...,y1tp theo công thức sau:

y1ti = f(Ut.xi:i+ht−1+ut) (4.2) vớixi:i+ht−1ký hiệu là phép lối của các từxi,xi+1, ...,xi+ht−1,htlà kích thước cửa sổ của bộ lọc để kết hợp các véc-tơ từ nhúng và f(.)là một hàm phi tuyến tính (non-linear)(cụ thể, f(y) =tanh(y) =eeyy−e+e−y−y).Ut∈RC×ht.nvàut∈RClà các tham số của mơ hình, các tham số này sẽ được trong pha huấn luyện,Clà số chiều đầu ra.

Tầng thu thập đặc trưng(Pooling layer)

Sử dụng phép toán thu thập đặc trưngmax pooling[99] cho các đầu ra từ tầng tích chập. Kết quả chúng ta đạt được một véc-tơ đặc trưng như sau sau:

y2t= [max(y1ti1),max(y1ti2), ...,max(y1tiC)] (4.3) vớiy1ti j là ký hiệu chiều thứ jcủayi1,y2∈RClà đầu ra của bộ lọc thứt.

Tầng véc-tơ biểu diễn câu(Sentence vector layer)

Để đạt được véc-tơ biểu diễn câu, tầng này lối các véc-tơ đầu ra của ba bộ lọc vào trong một véc-tơ như sau:

v(`) = [y21,y22,y23],v(`)∈R3C (4.4)

Tầng đầu ra(Softmax layer)

Véc-tơ khía cạnh∧a` và véc-tơ quan điểm khía cạnh ∧o`được tính như biểu thức 4.5 và 4.6:

a`=g(V1.v(`) +b1) (4.5)

o`=g(V2.v(`) +b2) (4.6) vớiV1 ∈Rkx3C và V2∈Rmx3C là các ma trận trọng số từ tầng véc-tơ câu đến đầu ra (tầngsoftmax layer),b1∈Rkvàb2∈Rm là các véc-tơ độ lệch,glà hàmsoftmax.

Học mơ hình(Model learning)

Học mơ hình là q trình xác định các tham số của mơ hình sao cho giá trị dự đốn của mơ hình khớp với giá trị nhãn của tập dữ liệu huấn luyện nhất. Để thực hiện được

công việc này chúng ta cần phải xây dựng được hàm giá (hàm lỗi) của mơ hình, sau đó chúng ta cần cực tiểu hóa hàm giá.

Xuất phát từ tầng đầu ra, dễ thấy hàm lỗi (cross-entropy loss) của câu`theo mơ hình được định nghĩa như sau:

F(θ) =−( k ∑ i=1 a`ilog∧a`i+ m ∑ i=1 o`ilog∧o`i) (4.7)

Từ biểu thức 4.7 chúng ta có hàm lỗi trên tồn tập dữ liệuDnhư sau:

E(θ) =− ∑ `∈D2 ( k ∑ i=1 a`ilog∧a`i+ m ∑ i=1 o`ilog∧o`i) +1 2λθkθk2 (4.8) vớiθ = [U1,U2,U3,W,V1,V2,u1,u2,u3,b1,b2]vàkθk2=∑ i θi2là hằng số chuẩn hóa. Tương tự như một mơ hình mạng nơ-ron thơng thường, để xác định các tham số trong θ, chúng ta sử dụng kỹ thuật lan truyền ngược để cực tiểu hàm lỗiE(θ). Trong đó, từng thành phần của trọng số trongθ được cập nhật tại thời điểmt + 1theo công thức sau:

θ(t+1) =θ(t)−η∂E(θ)

vớiη là hệ số học.

Thuật toán 6:Thuật toán tinh chỉnh véc-tơ biểu diễn từ

Đầu vào: Tập câu văn bản đánh giả sản phẩm/dịch vụD2={`1,`2,...,`|D2|}; từng câu văn bản`∈D2 được gán hai nhãn khía cạnh và quan điểm khía cạnha`vào`

Đầu ra: Ma trận các véc-tơ biểu diễn từW ∈Rnx|V|

Bước 1: Khởi tạo giá trị cho: hệ số họcη, ngưỡng lỗiε, ngưỡng vịng lặpI, tham

số chuẩn hóaλ, trọng số chia sẻ đặc trưngγ;

Khởi tạo các tham số:[U1,U2,U3,V1,V2,u1,u2,u3,b1,b2]

Ma trậnW được khởi tạo bằng các véc-tơ biểu diễn từ được học từ các mơ hình Word2Vec, Glove

Bước 2: fort=1toIdo

for từng câu văn bản đánh giá`∈D2do

2.1. Tính véc-tơ biểu diễn từ thứitrong`theo cơng thức 4.1;

2.2. Tính các véc-tơy1t1,y1t2, ...,y1tp theo cơng thức 4.2,t là chỉ mục của bộ lọc thứt,1≤t≤3;

2.3. Thu thập các đặc trưng đã đạt được từ tầng tích chập theo cơng thức 4.3;

2.4. Tính véc-tơ biểu diễn câu`theo cơng thức 4.4; 2.5. Tính véc-tơ khía cạnh∧a`theo biểu thức 4.5 ;

2.6. Tính véc-tơ quan điểm khía cạnh∧o`theo công thức 4.6;

endfor

2.7. Cập nhật tham số trong tậpθ tại thời điểmt+1sử dụng biểu thức 4.9;

Tính giá trị hàm lỗi theo cơng thức 4.8

Thuật toán sẽ dừng nếu giá trị hàm lỗi nhỏ hơn ngưỡng lỗiε; hoặc thuật toán đã lặp đủI vịng;

endfor

Các bước cần thiết để học mơ hình WEFT được trình bày trong Thuật tốn 6. Kiến trúc của nó được xây dựng dựa trên thuật tốn lan truyền ngược chuẩn. Ngoài bước khởi tạo tham số được thực hiện trong Bước 1 thì quá lan truyền tiến được thực hiện từ Bước 2.1 đến 2.6, và quá trình lan truyền ngược để cập nhật lại trọng số của mơ hình thực hiện trong Bước 2.7. Thời gian cần thiết để thực hiện thuật toán phụ thuộc vào số lượng tham số và số vịng lặp trong mỗi bước.

Hình 4.4: Minh họa thành phần nhúng ngữ nghĩa của véc-tơ biểu diễn từ sử dụng mơ hình CBOW

4.3.2 Mơ hình học véc-tơ biểu diễn từ SSCWE

Mơ hình học véc-tơ biểu diễn từ SSCWE (Semantic-Sentiment-Category Word Em-

bedding) gồm hai thành phần: Thành phần nhúng ngữ nghĩa và thành phần nhúng khía

cạnh và quan điểm. Trong đó, thành phần nhúng ngữ nghĩa thực hiện trên tập dữ liệu gồm các câu khơng gán nhãn, nó làm việc giống mơ hình CBOW của Word2Vec, thành phần nhúng khía cạnh và quan điểm thực hiện trên tập dữ liệu được gán hai nhãn: khía cạnh và quan điểm khía cạnh.

Thành phần nhúng ngữ nghĩa:Ý tưởng của mơ hình CBOW là dự đốn một từ đích dựa trên các ngữ cảnh của nó. Cho một câu`gồm ptừ,`= (ω1,ω2, ...,ωp). Lấyωi∈` là một từ đích, từ mà được dự đốn dựa trên ngữ cảnhh,

h= (ω(i−C), ...,ω(i−1),ω(i+1), ...,ω(i+C)) (4.10)

vớiClà kích cỡ của ngữ cảnh. Mơ hình CBOW lấy các véc-tơ one-hot của các từ trong ngữ cảnhhnhư là đầu vào và véc-tơ one-hot của từωi như là đầu ra, kiến trúc của mơ hình CBOW được minh họa trong Hình 4.4.

Tại tầng ẩn, các trọng số được chia sẻ cho tất cả các từ bằng cách lấy trung bình cộng (averaging) của các véc-tơ từ trong ngữ cảnh như biểu thức sau:

v(h) =W.(e(i−C)+...+e(i−1)+e(i+1)+...+e(i+C))

2C (4.11)

vớiW ∈Rn×|V|là ma trận trọng số (i.e. cũng được gọi là ma trận từ nhúng) giữa đầu vào và tầng ẩn,e(i−C), ...,e(i+C)là các véc-tơ one-hot tương ứng của các từ trong ngữ cảnh. Véc-tơ one-hot của từwiđược tính theo mơ hình như sau:

ei=g(U.v(h) +u0) (4.12) vớiglà một hàm softmax,U∈R|V|×nlà ma trận trọng số giữa tầng ẩn và đầu ra,u0∈R|V|

là véc-tơ lệch.

Chúng ta có hàm lỗi (cross-entropy loss) cho cặp ngữ cảnh và từ đích được định nghĩa như sau: H(∧ei,ei) =− |V| ∑ j=1 ei jlog∧ei j (4.13)

Đối với một tập dữ liệuD, chúng ta có hàm cross entropy như sau: E(θ) = ∑

`∈D ∑

i∈N`

H(∧ei,ei) (4.14)

với θ ={W,U,u0}là một tập tham số của mơ hình CBOW,N`là tập các ngữ cảnh từ trong câu`.

Thành phần nhúng thơng tin khía cạnh và quan điểm:Thành phần nhúng ngữ nghĩa sử dụng mô hình CBOW chỉ bắt được thơng tin ngữ nghĩa của từ. Trong thành phần này nó được mở rộng bằng một thành được giám sát bởi nhãn của khía cạnh và quan điểm. Các câu có nhãn trong tậpDvà ma trậnW được sử dụng làm đầu vào để học một mơ hình dự đốn cho cả nhãn khía cạnh vào nhãn quan điểm. Mục đích của thành phần này là hỗ trợ các véc-tơ từ nhúng bắt được thêm thơng tin về khía cạnh và quan điểm trong từng câu gán nhãn. Hình 4.5 minh họa thành phần nhúng thơng tin khía cạnh và quan điểm theo khía cạnh.

LấyD0 ={`1,`2,...,`|D0

|} ⊂Dlà tập tất cả các câu được gán nhãn trongD, từng câu

được gán nhãn cho cả hai nhãn, cụ thể là nhãn khía cạnh và nhãn quan điểm của khía cạnh. Lấyklà số lượng nhãn khía cạnh vàmlà số lượng nhãn quan điểm theo khía cạnh trong tậpD0. Đối với một câud∈D0 gồm ptừ, véc-tơ nhúng của từ thứiđược tính theo cơng thức sau:

xi=W.ei (4.15)

vớiW∈Rn×|V| là một ma trận nhúng của các từ trongV,ei là một véc-tơ one-hot của từ thứi.

Hình 4.5: Minh họa thành phần nhúng thơng khía cạnh và quan điểm theo khía cạnh

Véc-tơ câu`tại tầng ẩn được tính bằng trung bình cộng các véc-tơ từ nhúng như sau:

v(`) = 1 p p ∑ i=1 xi (4.16)

Véc-tơ khía cạnh của câu`được tính bởi cơng thức:

a`=g(V1.v(`) +b1) (4.17)

Véc-tơ quan điểm khía cạnh của câu`được tính như sau:

o`=g(V2.v(`) +b2) (4.18)

trong đóV1∈Rkxn,V2∈Rmxnlà các ma trận trọng số giữa tầng ẩn và đầu ra, b1∈Rk vàb2∈Rm là các véc-tơ độ lệch,glà một hàm mềm.

Lấy a`∈Rk là một véc-tơ nhị phân và là véc tơ đích của các khía cạnh trong câu `. Từng giá trị tronga`xác nhận câu `có thảo luận về một khía cạnh hoặc khơng. Lấy

o`∈Rm là một véc-tơ nhị phân và là một véc-tơ đích của các quan điểm khía cạnh trong câu`. Từng giá trị trong véc-tơo`xác nhận câu `có thảo luận về quan điểm một khía

cạnh hay khơng. Theo mơ hình chúng ta có hàm giá cho câu`như sau: H(∧a`,a`,∧o`,o`) =− k ∑ i=1 a`ilog∧a`i− m ∑ i=1 o`ilog∧o`i (4.19)

Hàm lỗi (cross-entropy loss) cho tập dữ liệuD0 là:

E(θ) = ∑

`∈D0

H(∧a`,a`,∧o`,o`) (4.20)

vớiθ = [W,V1,V2,b1,b2]là tham số của mơ hình.

Học mơ hình

Để học mơ hình đề xuất, luận án kết hợp hai hàm lỗi của hai thành phần thành một hàm lỗi (hàm giá) chung như sau:

E(θ) = ∑ `∈D ∑ i∈N` H(e∧i,ei) + ∑ `∈D0 H(∧a`,a`,∧o`,o`) +1 2λθkθk2 (4.21)

vớiθ = [W,U,u0,V1,V2,b1,b2],λθ là tham số vàkθk2=∑

i

θi2 là tham số chuẩn hóa. Để xác định được giá trị của các tham số trongθ, chúng ta cần xây dựng một thuật toán tối ưu để cực tiểu hóa hàm giá này. Từng thành phần của trọng số trongθ được cập nhật tại thời điểmt + 1theo công thức sau:

θ(t+1) =θ(t)−η∂E(θ)

vớiη là hệ số học.

Thuật toán 7:Thuật toán học véc-tơ biểu diễn từ

Đầu vào: Tập câu văn bản đánh giá sản phẩm/dịch vụD={`1,`2,...,`|D|}; từng câu văn bản`∈D có thể được gán hai nhãn khía cạnh và quan điểm khía cạnha`

vào`hoặc không được gán nhãn

Đầu ra: Ma trận các véc-tơ biểu diễn từW ∈Rnx|V|

Bước 1: Khởi tạo giá trị cho: hệ số họcη, ngưỡng lỗiε, ngưỡng vịng lặpI, tham

số chuẩn hóaλ, trọng số chia sẻ đặc trưngγ; Khởi tạo các tham số trongθ

Bước 2: fort=1toIdo

for từng câu văn bản đánh giá`∈Ddo 2.1. for từng ngữ cảnhi∈N`do

2.1.1 Tính véc-tơ ngữ cảnh theo cơng thức 4.11;

2.1.2 Tính véc-tơ của từng từ được sinh từitheo cơng thức 4.12; endfor

2.2. if câu`được gán hai nhãna`vào`then

Tính véc-tơ biểu diễn câu`theo cơng thức 4.16; Tính véc-tơ khía cạnh∧a`theo biểu thức 4.17;

Tính véc-tơ quan điểm khía cạnh∧o`theo cơng thức 4.18; endif

endfor

2.3. Cập nhật tham số trong tậpθ tại thời điểmt+1sử dụng biểu thức 4.9; 2.4. Tính giá trị hàm lỗi theo cơng thức 4.21

Thuật toán sẽ dừng nếu giá trị hàm lỗi nhỏ hơn ngưỡng lỗiε; hoặc thuật tốn đã lặp đủI vịng;

endfor

Thuật tốn 7 là một thuật toán tối ưu lặp, được xây dựng dựa trên thuật tốn lan truyền ngược chuẩn, q trình lan truyền tiến được thực hiện trong Bước 2.1 và 2.2. Trong khi đó, q trình lan truyền ngược được thực hiện trong Bước 2.3, có nhiệm vụ cập nhật lại giá trị trọng số cho các tham số của mơ hình. Thời gian thực hiện của thuật toán phụ thuộc vào số lượng tham số, số lượng vòng lặp, và số lượng ngữ cảnh của các câu. Trong thực tế, khi làm việc với tập dữ liệu lớn thì số lượng ngữ cảnh tính trên tồn bộ tập dữ liệu sẽ là rất lớn, khi đó thời gian cần thiết để thực hiện Thuật tốn 7 cũng sẽ rất lớn. Để giải quyết vấn đề này, chúng ta có thể áp dụng kỹ thuật tính tốn tối ưu

4.4 Thực nghiệm

4.4.1 Dữ liệu thực nghiệm và các độ đo

Để đánh giá hai mơ hình đã đề xuất, luận án sử dụng hai tập dữ liệu trên miền dữ liệu của các sản phẩm/dịch vụ Nhà hàng. Tập dữ liệu thứ nhất gồm 3,111,239 câu khơng gán nhãn được trích xuất từ 229,907 ý kiến đánh giá1. Tập dữ liệu thứ hai gồm 190,655 câu được trích xuất từ 52,574 ý kiến đánh giá2. Gồm các câu được gán 5 nhãn khía cạnh

Food, Price, Service, Ambience, Anecdotes, và Miscellaneous. Và 4 nhãn quan điểm Positive, Negative, NeutralConflict. Từng câu được gán cả hai nhãn về khía cạnh và

quan điểm khía cạnh.

75% câu được lấy ngẫu nhiên cho việc học véc-tơ từ, còn lại 25% được sử dụng để đánh giá chất lượng của mơ hình WEFT và mơ hình SSCWE (Semantic-Sentiment-

Category Word Embedding). Các thống kê về tập dữ liệu thứ 2 được trình bày trong

Bảng 4.1.

Bảng 4.1: Thống kê tập dữ liệu thứ 2

Số lượng câu được sử dụng cho Khía cạnh Học véc-tơ từ Đánh giá véc-tơ từ

Food 4,386 1,462 Price 44,912 14,970 Service 22,470 7,489 Ambience 17,729 5,909 Anecdotes 18,396 6,132 Miscellaneous 35,100 11,700 Tổng 142,993 47,662 4.4.2 Các độ đo

Các mơ hình học véc-tơ biểu diễn từ được đánh giá gián tiếp thông qua hai công việc của phân tích quan điểm theo khía cạnh: xác định khía cạnh và phân loại quan điểm khía cạnh. Trong q trình đánh giá so sánh giữa các mơ hình, luận án sử dụng ba độ đo:precision,recall, vàF-score:

Precision= nc

np (4.23)

1https://www.yelp.com/datasetchallenge/

Recall= nc

nt (4.24)

F−score=2×Precision×Recall

Precision+Recall (4.25)

vớinclà số lượng câu được dự đốn đúng theo mơ hình dự đốn so với nhãn thực tế,np

Một phần của tài liệu (LUẬN án TIẾN sĩ) phát triển các mô hình dựa trên mạng nơ ron cho phân tích quan điểm theo khía cạnh (Trang 85)

Tải bản đầy đủ (PDF)

(136 trang)