Kết quả thực nghiệm và phân tích

Một phần của tài liệu Nhận dạng thực thể tên cho ngôn ngữ nói tiếng việt và ứng dụng trong tương tác với điện thoại thông minh (Trang 58)

4.2.1 Kết quả thực nghiệm sử dụng MaxEnt

Ở bảng 4.1 dưới đây biểu diễn kết quả của 4 tệp tin (4 folds). Trong đó cột Human thể hiện nội dung là số lượng thực thể tên mà do tôi đã chú thích thực tế trên tập dữ liệu thử nghiệm. Cột Model số lượng thực thể tên được dự đoán mới mô hình MaxEnt. Cột Match là số lượng thực thể tên được nhận đúng bởi mô hình MaxEnt. Ba cột còn lại lần lượt thể hiện độ chính xác, độ hồi tưởng và giá trị độ đo F1 dựa trên các giá trị của các cột Human, Model và Match. Với 4 lần thực nghiệm đánh giá chéo thì tôi nhận được lần thực nghiệm tốt nhất có kết quả trung bình của từng kiểu thực thể tên có độ đo F1 là 96.45, và giá trị trung bình của tổng các kiểu thực thể tên có độ đo F1 là 95.80. Đây là kết quả cao đáng kể bởi vì trong mô hình của tôi không sử dụng tách từ và bất kỳ thông tin về dấu câu, chữ hoa, ranh giới từ, hay các thông tin từ loại ngữ pháp (part-of-speech) trong văn bản ngôn ngữ nói.

Bảng 4.2 là kết quả của 4 lần đánh giá chéo thực nghiệm. Kết quả thấp nhất và cao nhất của độ đo trung bình F1 lần lượt là 93.51 và 95.80. Từ đó có kết quả trung bình của độ đo F1 của 4 tệp tin (4 folds) đánh giá chéo thu được là 94.63.

Bảng 4.1: Đánh giá theo Chunk của fold cho kết quả tốt nhất bằng MaxEnt Kiểu thực

thể tên Human Model Match Precision Recall F1-score

aname 343 350 336 96.00 97.96 96.97 datetime 177 179 175 97.77 98.87 98.31 cname 107 103 93 90.29 86.92 88.57 cnumber 62 62 61 100.00 98.39 99.19 location 320 324 302 93.21 94.38 93.79 url 66 67 63 94.03 94.45 94.74 email 28 28 28 100.00 100.00 100.00 number 70 70 70 100.00 100.00 100.00 Averagemacro 96.41 96.50 96.45 Averagemicro 1173 1182 1128 95.43 96.16 95.80

Bảng 4.2: Kết quả đánh giá chéo của cả 4 lần thực nghiệm bằng MaxEnt Folds Human Model Match Pre.micro Rec.micro F1-scoremicro

Fold 1 1178 1196 1121 93.73 95.16 94.44

Fold 2 1173 1182 1128 95.43 96.16 95.80

Fold 3 1191 1207 1136 94.12 95.38 94.75

Fold 4 1179 1193 1109 92.96 94.06 93.51

Để có một cách nhìn tổng quan hơn, hình 4.1 dưới đây thể hiện phân tích sâu sắc và chi tiết về hiệu suất của mỗi kiểu thực thể. Bằng cách tính trung bình các kết quả của độ chính xác, độ hồi tưởng và độ đo F1 của 4 tệp tin (4 folds).

Mô hình có được kết quả nhận dạng chính xác cho 3 kiểu thực thể: cnumber, email, number với lần lượt kết quả của độ đo F1 là: 99.48, 100.00 và 99.35. Ba kiểu thực thể này cho kết quả cao bởi dữ liệu của 3 kiểu này được định dạng tốt và dễ dành bắt được ngay nhờ sử dụng biểu thức chính quy.

Với kiểu thực thể aname mô hình của tôi cũng nhận được kết quả của độ đo F1 rất cao với 96.10, kết quả này cao là nhờ việc tìm kiếm trong từ điển các tên ứng dụng phổ biến thường được cài trên điện thoại thông minh như: calendar, skype, facebook, clash of clan

Đôi lúc mô hình cũng bị nhầm lẫn do không phân biệt được tên ứng dụng hay địa chỉ website. Ví dụ như một người dùng có thể đưa ra một câu lệnh như: mở vnexpress

thì có thể hiểu là mở ứng dụng vnexpress hay mở trình duyệt để vào website có tên là

vnexpress.net. Như đã nói ở phần đầu của luận văn, việc nhận dạng tiếng nói tự động bởi ASR nhận ra các đỉa chỉ website khá dài và thành các từ rời rạc, không tuân theo mẫu chuẩn như: dantri.com.vn có thể thành dân trí chấm com chấm vn. Với việc dữ liệu đa dạng và bất thường như vậy cho nên dẫn tới kết quả trung bình độ đo F1 của kiểu thực thể url chỉ đạt được 92.82.

Một kiểu thực thể nữa được cho là vô cùng khó khăn để nhận dạng đúng đó là kiểu thực thể datetime với kết quả trùng bình của độ đo F1 là 93.73. Các biểu thức về thời gian trong văn bản nói sau khi được ASR nhận dạng thường là một cụm từ rất dài như:

8 giờ 30 sáng thứ 4 tuần sau. Đôi khi ASR còn nhận dạng kiểu chữ số thành chữ cái như: 8:25’ thành 8 giờ hai mươi lăm phút. Do vậy không thể dùng nguyên biểu thức chính quy thông thường để bắt được dữ liệu kiểu này mà tôi phải sử dụng một số thuộc tính nội bộ để bắt toàn bộ khối dữ liệu datetime này.

Hình 4.1: Kết quả trung bình của độ chính xác, độ hồi tƣởng, độ đo F1 của 4 lần kiểm tra đánh giá chéo các kết quả thực nghiệm dùng MaxEnt

Kiểu thực thể cname trong danh sách danh bạ điện thoại là có nhiều nhập nhằng và khó khăn nhất, bởi mỗi người dùng điện thoại có các xu hướng lưu danh bạ điện thoại theo nhiều cách khác nhau theo mỗi sở thích của từng người. Đôi khi các tên danh bạ thường được gắn với một số các thông tin liên như quan hệ trong gia đình, chức danh, tổ chức, công ty nơi làm việc cùng hay là các tên thân thiện dành cho những người gần gũi như: chị thảo, thầy thụy, giáo sư thụy, nam doremon, ea-việt, uet-tuấn…Với kiểu thực thể cname này trong văn bản ngôn ngữ nói thậm chí còn nhận dạng khó hơn cả tên riêng của người trong văn bản viết thông thường. Do vậy với lớp thực thể cname mô hình chỉ nhận được kết quả trung bình của độ đo F1 là 91.49.

Trong số 8 kiểu thực thể mà luận văn tập trung nghiên cứu thì kiểu thực thể location là kiểu thực thể là khó nhận dạng nhất, bởi địa chỉ là nơi chốn bất kỳ hoặc một địa chỉ cụ thể mà người dùng có thể đưa ra, hay một số yêu cầu chỉ đường từ địa điểm A tới điểm B như: từ một cây cầu, một ngã tư, một ngõ, một phố, một con đường, một tòa nhà, một trường đại học hay một khu mua sắm đến một nơi bất kỳ nào đó như một thành phố hay một quốc gia. Một vài địa chỉ đôi khi là rất dài như: ngã tư nguyễn trãi khuất duy tiến hay ngã tư phạm hùng big c, hoặc đôi khi rất ngắn chỉ 1 từ như: vinh, trôi, nhổn, phùng, chèm, kẻ là những địa danh hay được nhắc tới ở Hà Nội. Do vậy, với dữ liệu về location này hầu như không thể dùng riêng biểu thức chính quy để có thể bắt được hết tên các địa chỉ như vậy mà cần phải dùng kết hợp nhiều thuộc tính trong đó đặc biệt phải kể đến là từ điển. Đó là lý do vì sao kiểu thực thể location nhận

được kết quả trung bình độ đo F1 92.45, tuy nhiên với những gì mô hình đã làm được thì hầu hết các địa chỉ mà người sử dụng hỏi như: ở các tỉnh, thành phố ở Việt Nam hầu hết mô hình nhận đúng. Điều này được kiểm chứng ở trong ứng dụng đã áp dụng mô hình của tôi để triển khai thực tế trên ứng dụng phần mềm VAV trên điện thoại thông minh sử dụng hệ điều hành Android.

4.2.2 Kết quả thực nghiệm sử dụng CRFs

Như đã đề cập tại mục 3.3 ở chương 3, tôi sử dụng thêm một phương pháp nữa để đánh giá kết quả huấn luyện mô hình nhận dạng thực thể tên cho ngôn ngữ nói tiếng Việt. Tương tự như việc sử dụng phương pháp MaxEnt, với tập dữ liệu huấn luyện sử dụng CRFs cũng được chia thành 4 folds để kiểm tra đánh giá chéo. Tập dữ liệu dùng để huấn luyện mô hình sử dụng CRFs được sử dụng cùng tập dữ liệu huấn luyện sử dụng MaxEnt gồm 4409 câu văn nói có nội dung tương tác giữa người dùng và ĐTTM. Để thực nghiệm bằng CRFs tôi giữ nguyên tập dữ liệu và chiến lược trích chọn các thuộc tính mà MaxEnt sử dụng. Việc trích chọn thuộc tính này cũng được sử dụng cùng tập từ điển và các biểu thức chính quy như MaxEnt. Dưới đây tôi trình bày kết quả của việc đánh giá bằng CRFs chi tiết như sau:

Bảng 4.3: Đánh giá theo Chunk của fold cho kết quả tốt nhất bằng CRFs Kiểu thực

thể tên

Human Model Match Precision Recall F1-score

aname 343 348 334 95.98 97.38 96.67 datetime 177 180 171 95.00 96.61 95.80 cname 107 100 94 94.00 84.85 90.82 cnumber 62 61 61 100.00 98.39 99.19 location 320 315 299 94.92 93.44 94.17 url 66 78 62 79.49 93.94 86.11 email 28 28 28 100.00 100.00 100.00 number 70 70 70 100.00 100.00 100.00 Averagemacro 94.92 95.95 95.43 Averagemicro 1173 1180 1119 94.83 95.40 95.11

Bảng 4.4: Kết quả đánh giá chéo của cả 4 lần thực nghiệm bằng CRFs Folds Human Model Match Pre.micro Rec.micro F1-scoremicro

Fold 1 1178 1193 1108 92.88 94.06 93.46 (adsbygoogle = window.adsbygoogle || []).push({});

Fold 2 1173 1180 1119 94.83 95.40 95.11

Fold 3 1191 1211 1136 93.81 95.38 94.59

Fold 4 1179 1192 1095 91.86 92.88 92.37

Ở bảng 4.3 trên đây biểu diễn kết quả của tệp tin cho kết quả tốt nhất (fold2). Trong đó cột Human thể hiện nội dung là số lượng thực thể tên mà do tôi đã chú thích thực tế trên tập dữ liệu thử nghiệm. Cột Model số lượng thực thể tên được dự đoán mới mô hình CRFs. Cột Match là số lượng thực thể tên được nhận đúng bởi mô hình CRFs. Ba cột còn lại lần lượt thể hiện độ chính xác, độ hồi tưởng và giá trị độ đo F1 dựa trên các giá trị của các cột Human, Model và Match. Với 4 lần thực nghiệm đánh giá chéo thì tôi nhận được lần thực nghiệm tốt nhất có kết quả trung bình của độ đo F1 là 95.43, và giá trị trung bình của độ đo F1 cho tổng các kiểu thực thể tên là 95.11.

Trong bảng 4.4 trên biểu diễn kế quả trung bình cho 4 lần kiểm tra đánh giá thực nghiệm chéo (4 folds cross validation). Kết quả lần thấp nhất và cao nhất của độ đo trung bình F1 lần lượt là 92.37 và 95.11.

Hình 4.2: Kết quả trung bình của độ chính xác, độ hồi tƣởng, độ đo F1 của 4 lần kiểm tra đánh giá chéo các kết quả thực nghiệm dùng CRFs

Theo biểu đồ hình 4.2 ta dễ nhận thấy kết quả thực nghiệm bằng CRFs có phần giống kết quả thực nghiệm bằng MaxEnt như ở kiểu thực thể: number, cnumber, email cũng đạt kết quả cao nhất là 99.35 và 99.64, 99.29. Tiếp đến hai kết quả cao thứ hai là

aname lần lượt có kết quả là 95.10. Kết quả kiểu thực thể location cao hơn so với kiểu thực thể location ở lần thực nghiệm bằng MaxEnt do dữ liệu mới thử nghiệm cho CRFs có cơ chế suy luận tính phụ thuộc tuần tự của dữ liệu tốt hơn. Với kiểu thực datetime và cname của CRFs lần lượt 92.39, 91.06 thấp hơn so với kết quả của MaxEnt là 93.73 và 91.49. Đây cũng là phần dữ liệu đã được làm nhiều hơn so với tập dữ liệu sử dụng MaxEnt huấn luyện mô hình. Trong lần thực nghiệm bằng CRFs kiểu thực thể url của CRFs lại thấp hơn rất nhiều so với kết quả thực nghiệm bằng MaxEnt, chỉ đạt 82.16 so với 92.82.

4.3. Hệ điều hành Android trên các thiết bị thông minh

Android là tên của hệ điều hành dành cho điện thoại di động dựa trên nhân Linux và hiện nay được phát triển bởi Google. Với giao diện người dùng thao tác trực tiếp qua màn hình, Android được thiết kế chủ yếu cho các thiết bị di động cảm ứng như ĐTTM (Smartphones), máy tính bảng (Tablet computers), hay một giao diện người dùng chuyên biệt cho ti vi (Android TV) và đồng hồ đeo tay (Android Wear). Tính đến năm 2015 hệ điều hành Android có một lượng rất lớn cài đặt so với tất cả các hệ điều hành khác. Android sử dụng đầu vào là cảm ứng tương ứng với hành động thực tế như: vuốt, kéo lên xuống lên đối tượng màn hình hay bàn phím ảo. Mặc dù chủ yếu được thiết kế chủ yếu cho màn hình cảm ứng nhưng cùng với sự phát triển phần mềm và xử lý ngôn ngữ tự nhiên ngày nay Android cũng như các hệ điều hành khác đã khai thác rất tốt các ứng dụng dựa trên hệ điều hành này. Do vậy thực nghiệm của luận văn này tôi chọn Android như một cách kiểm chứng kết quả mà tôi đạt được.

4.4. Kết quả ứng dụng mô hình nhận dạng thực thể tên cho ngôn ngữ nói tiếng Việt trên điện thoại thông minh chạy hệ điều hành ngữ nói tiếng Việt trên điện thoại thông minh chạy hệ điều hành Android

Như đã trình bày ở chương 3 mô hình nhận dạng thực thể tên của tôi sẽ được tích hợp vào phần mềm trợ lý ảo cho người Việt có tên VAV (Virtual Assistant for Vietnamese on Mobile) trên di động. VAV là sản phẩm trợ lý ảo (hiện mới có trên hệ điều hành Android) cho phép người dùng tương tác với di động của họ bằng giọng nói (tiếng Việt) để thực hiện rất nhiều tác vụ như tra bản đồ, tìm đường đi, duyệt web, mở nhạc, tìm kiếm, gọi điện, đặt lịch hẹn, đặt báo thức, hỏi thông tin về giá vàng, hỏi ngày âm lịch .v.v. Tất cả các câu lệnh ở dạng ngôn ngữ tự nhiên nên VAV tạo cảm giác người dùng đang có một trợ lý thông minh bên cạnh.

Dưới đây tôi trình bày một số kết quả mà mô hình nhận dạng thực thể tên của tôi sử dụng phương pháp MaxEnt đã thực hiện thành công trong VAV19. Tôi quyết định sử dụng mô hình được huấn luyện bằng MaxEnt trong hệ thống VAV bởi MaxEnt không cồng kềnh và nhẹ hơn so với phương pháp CRFs. Hơn nữa mô hình cần được lưu trữ ngay trên ĐTTM mà không cần đến máy chủ để tăng thời gian xử lý các yêu cầu được nhanh hơn.

Hình 4.3: Tính năng hỏi ngày âm lịch

Hình 4.5: Kết quả trả về sau khi mô hình nhận dạng đƣợc hai địa điểm cần tìm trên bản đồ

Hình 4.7: Kết quả thiết lập lịch theo đúng đối số mà ngƣời dùng yêu cầu

Chƣơng 5. Kết luận

5.1. Những vấn đề giải quyết đƣợc trong luận văn này

Với cách tiếp cận dựa trên những đề xuất đã có trong lĩnh vực nghiên cứu về nhận dạng thực thể tên, bản luận văn này là một sự tổng hợp những nét chính về lý thuyết nhận dạng thự thể tên nhưng đã khai phá một vài khía cạnh mới trong nhận dạng thực thể tên nói chung và cho nhận dạng thực thể tên cho ngôn ngữ nói tiếng Việt nói riêng. Có thể coi luận văn như một bài toán cơ bản đầu tiên giải quyết vấn đề hiểu ngôn ngữ nói tiếng Việt. Đây sẽ là tiền đề cho các nghiên cứu về sau về lĩnh vực ngôn ngữ nói. Sau đây là những điểm chính mà luận văn đã tập trung giải quyết.

Trong chương một, luận văn đã trình bày sự phát triển vượt trội của công nghệ nhận dạng tiếng nói và tổng quan về bài toán nhận dạng thực thể tên, những mục đích, nguyên nhân thúc đẩy các nhà tin học chú trọng vào nghiên cứu lĩnh vực này. Phần này cũng trình bày bài toán nhận dạng thực thể tên cho ngôn ngữ nói tiếng Việt và ứng dụng trong tương tác với điện thoại thông minh. Nêu lên những khó khăn và thách thức của dữ liệu và bài toán là một trong những động lực nghiên cứu chính cho bài toán nhận dạng thực thể tên cho ngôn ngữ nói. Từ đó làm rõ ý nghĩa của bài toán hơn trong việc tương tác với ngôn ngữ nói tiếng Việt. Bên cạnh đó nhấn mạnh về những ứng dụng mà bài toán nhận dạng thực thể tên đã đem lại để ứng dụng vào cuộc sống thực tế. Ngoài ra chương này cũng đưa ra mô hình trình bày cụ thể mục tiêu và nhiệm vụ của bài toán nhận dạng thực thể cần phải xử lý cho ngôn ngữ nói trong tiếng Việt giúp cho người đọc có cái nhìn trực quan hơn trong vấn đề nghiên cứu của luận văn.

Chương hai trình bày sơ lược các kỹ thuật chính, những hướng tiếp cận được áp

Một phần của tài liệu Nhận dạng thực thể tên cho ngôn ngữ nói tiếng việt và ứng dụng trong tương tác với điện thoại thông minh (Trang 58)