Chƣơng 2 : MÔ HÌNH NGÔN NGỮ MẠNG NƠRON
2.1 Mô hình ngôn ngữ mạng nơron truyền thẳng
Mục đích của mô hình ngôn ngữ thống kê là huấn luyện tập dữ liệu để có thể tính đƣợc xác suất của các từ trong các câu trên một ngôn ngữ. Tuy nhiên đây vẫn là vấn đề khó của mô hình ngôn ngữ thống kê (mô hình N-gram) vì bị giới hạn bởi số chiều (hay số cụm từ) trong khi huấn luyện. Ví dụ một từ xuất hiện trong lúc huấn luyện sẽ nằm trong một số cụm từ, nhƣng khi kiểm tra đánh giá, từ đó lại không nằm trong những cụm từ đƣợc huấn luyện. Nhƣ vậy khi xây dựng mô hình mong muốn sẽ có bộ dữ liệu huấn luyện có thể chứa hết khả năng có thể xảy ra của các từ trong bộ từ vựng. Một mô hình cần lƣu xác suất của cụm từ gồm 10 từ, với bộ dữ liệu V=100.000 từ thì cần tối đa là 100.00010-1 = 1050-1 biến để lƣu trữ xác suất. Với các biến liên tục thì việc mô hình hóa có thể thực hiện đƣợc, đối với các biến rời rạc thì việc mô hình hóa trên bộ dữ liệu này là điều rất khó. Bất kỳ thay đổi nào trên các biến rời rạc này đều ảnh hƣởng đến hàm ƣớc lƣợng xác suất. Khi số lƣợng các biến rời rạc càng lớn thì giá trị ƣớc lƣợng càng xa giá trị mong đợi.
Từ những giới hạn của mô hình N-gram, Yoshua Bengio [1] đã giới thiệu một mô hình mới dựa trên mạng nơron truyền thẳng. Ý tƣởng mà Bengio đƣa ra nhƣ sau:
1. Gán cho mỗi từ trong bộ từ điển một vector đặc trưng phân bố (là vector có giá trị số thực trong không gian ℝ𝑚)
2. Biểu diễn một hàm xác suất của các cụm từ qua các vector đặc trƣng. 3. Học đồng thời các vector đặc trƣng và các biến của hàm xác suất
Vector đặc trƣng biểu diễn đặc trƣng khác nhau của từ: mỗi từ là một điểm trong không gian vector, số lƣợng đặc trƣng nhỏ hơn kích thƣớc bộ từ điển. Hàm xác suất trả về xác suất có điều kiện của từ tiếp theo cho bởi một số từ đằng trƣớc nó. Các vector đặc trƣng của mỗi từ sẽ đƣợc học khi huấn luyện, nhƣng ban đầu đƣợc khởi tạo bằng các giá trị đặc trƣng về ngữ nghĩa. Việc sử dụng vector đặc trƣng về ngữ nghĩa có ý nghĩa khi tính toán xác suất những cụm từ có từ tƣơng tự nhau. Ví dụ, từ dog và
cat tƣơng tự nhau về mặt ngữ nghĩa, tƣơng tự với các cặp từ (the, a), (bedroom, room), (is, was), (running, walking), nếu ta có câu sau trong tập huấn luyện the cat is walking in the bedroom, ta có thể tính đƣợc xác suất của các câu:
a dog was walking in a room
The dog was running in the bedroom
và nhiều trƣờng hợp khác tƣơng tự. Trong ví dụ trên, nếu từ dog không xuất hiện trong tập huấn luyện thì xác suất của hai câu sau vẫn có thể tính đƣợc dựa vào sự tƣơng đồng về ngữ nghĩa. Vì hai từ giống nhau về mặt ngữ nghĩa sẽ có vector đặc trƣng tƣơng tự nhau và vì hàm xác suất là gần nhƣ liên tục trong không gian vector đặc trƣng nên xác suất thay đổi rất ít.
Ý tƣởng sử dụng mạng nơron là để mô hình hóa các phân bố biến rời rạc nhiều chiều bằng cách sử dụng xác suất kết hợp các biến ngẫu nhiên. Trong mô hình này, xác suất kết hợp đƣợc phân tách nhƣ sau:
𝑃 𝑍1 = 𝑧1, … , 𝑍𝑛 = 𝑧𝑛 = 𝑃 (𝑍𝑖 = 𝑧𝑖|𝑔𝑖 𝑍𝑖−1 = 𝑧𝑖−1, … , 𝑍1 = 𝑧1 ) 𝑖
trong đó, g(.) là hàm biểu diễn bởi một mạng nơron với kiến trúc truyền thẳng.
Tập dữ liệu huấn luyện là một chuỗi các từ w1…wT với w1V, V là bộ từ vựng có kích thƣớc lớn và hữu hạn. Từ tập dữ liệu huấn luyện sẽ đƣa ra một mô hình tốt
cụm từ 𝑤1𝑡−1 nào thì 𝑉𝑖=1𝑓(𝑖,𝑤𝑡 , … , 𝑤𝑡−𝑛+1) = 1 và f>0. Hàm 𝑓 𝑤𝑡 , … , 𝑤𝑡−𝑛+1
đƣợc phân tách ra thành 2 phần:
1. Một ánh xạ C từ mỗi phần tử thứ i của tập V thành một vector C(i) ℝ𝑚 biểu diễn các vector đặc trƣng phân bố của mỗi từ trong V. C là ma trận đƣợc biểu diễn bởi |V|×m biến.
2. Hàm xác suất của các C(i): hàm g nhận đầu vào là các vector đặc trƣng của n-1
từ theo thứ tự, (C(wt-n+1)…C(wt-1)) và trả ra xác suất có điều kiện của từ wt.
𝑓 𝑖, 𝑤𝑡 , … , 𝑤𝑡−𝑛+1 = 𝑔(𝑖, 𝐶 𝑤𝑡−1 , … , 𝐶 𝑤𝑡−𝑛+1 )
Hàm g đƣợc cài đặt bằng một mạng nơron truyền thẳng với hai tầng ẩn: một tầng để tính các C(i) và một tầng tính hàm tanh. Đầu ra sử dụng hàm softmax đảm bảo các xác suất có tổng bằng 1.
𝑃 𝑤𝑡 𝑤𝑡−𝑛+1𝑡−1 = 𝑒 𝑦𝑤 𝑡 𝑒𝑦𝑖
𝑖
Mỗi yi là một đầu ra của từ thứ i, và đƣợc tính toán nhƣ sau:
𝑦 = 𝑏 + 𝑊𝑥 + 𝑈𝑡𝑎𝑛(𝑑 + 𝐻𝑥)
Với x là vector đặc trƣng của từ:
𝑥 = (𝐶 𝑤𝑡−1 , 𝐶 𝑤𝑡−2 , … , 𝐶 𝑤𝑡−𝑛+1 )
Hình 2.1: Mô hình ngôn ngữ mạng nơron truyền thẳng
Sử dụng mạng nơron mà Bengio đƣa ra đã thay thế “bảng xác suất có điều kiện” của các mô hình ngôn ngữ trƣớc đây. Cải tiến này đạt đƣợc hiểu quả tốt (10- 20%) là do lợi dụng đƣợc việc học các “biểu diễn phân bố của từ” (distributed representation of word). Tuy nhiên mô hình bị hạn chế bởi tính toán phức tạp, làm tăng thời gian tính toán.