Đề tài Tìm hiểu kỹ thuật xây dựng giao diện người dùng với cơ chế phản hồi ngôn ngữ tự nhiên

Ngày nay những nghiên cứu về lĩnh vực xử lý ngôn ngữ tự nhiên nhằm tạo cho máy tính khả năng hiểu giao tiếp được bằng ngôn ngữ tự nhiên với con người đã không chỉ còn là lý thuyết nữa mà đã đi vào xây dựng rất nhiều ứng dụng có hiệu quả.Hơn nữa quá trình ứng dụng này còn có sự kết hợp giao thao của các nghành chuyên môn khác nhau trong lĩnh vực tin học,có các kỹ thuật ứng dụng lập trình logic,giao diện người dùng vào lĩnh xử lý ngôn ngữ tự nhiên.Vì vậy em chọn đề tài “Tìm hiểu kỹ thuật xây dựng giao diện người dùng với cơ chế phản hồi ngôn ngữ tự nhiên” một đề tài phản ánh được nội dung trên làm đề tài cho đồ án tốt nghiệp của mình . Do trình độ nhận thức còn hạn chế và hiểu biết chưa rộng nên trong đồ án của em chắc chắn không tránh khỏi nhiều thiếu sót. Em rất mong nhận được sự chỉ bảo của các thầy cô và các bạn!

pdf153 trang | Chia sẻ: lvbuiluyen | Lượt xem: 1909 | Lượt tải: 1download
Bạn đang xem trước 20 trang tài liệu Đề tài Tìm hiểu kỹ thuật xây dựng giao diện người dùng với cơ chế phản hồi ngôn ngữ tự nhiên, để xem tài liệu hoàn chỉnh bạn click vào nút DOWNLOAD ở trên
Tìm hiểu kỹ thuật xây dựng giao diện người dùng với cơ chế phản hồi ngôn ngữ tự nhiên Đồ án tốt nghiệp Nguyễn Trung Thành-HTTT-K46 1 Đề tài: “Tìm hiểu kỹ thuật xây dựng giao diện người dùng với cơ chế phản hồi ngôn ngữ tự nhiên” Tìm hiểu kỹ thuật xây dựng giao diện người dùng với cơ chế phản hồi ngôn ngữ tự nhiên Đồ án tốt nghiệp Nguyễn Trung Thành-HTTT-K46 2 Lời Nói Đầu Ngày nay những nghiên cứu về lĩnh vực xử lý ngôn ngữ tự nhiên nhằm tạo cho máy tính khả năng hiểu giao tiếp được bằng ngôn ngữ tự nhiên với con người đã không chỉ còn là lý thuyết nữa mà đã đi vào xây dựng rất nhiều ứng dụng có hiệu quả.Hơn nữa quá trình ứng dụng này còn có sự kết hợp giao thao của các nghành chuyên môn khác nhau trong lĩnh vực tin học,có các kỹ thuật ứng dụng lập trình logic,giao diện người dùng vào lĩnh xử lý ngôn ngữ tự nhiên.Vì vậy em chọn đề tài “Tìm hiểu kỹ thuật xây dựng giao diện người dùng với cơ chế phản hồi ngôn ngữ tự nhiên” một đề tài phản ánh được nội dung trên làm đề tài cho đồ án tốt nghiệp của mình . Do trình độ nhận thức còn hạn chế và hiểu biết chưa rộng nên trong đồ án của em chắc chắn không tránh khỏi nhiều thiếu sót. Em rất mong nhận được sự chỉ bảo của các thầy cô và các bạn! Em chân thành cảm ơn TS. Lê Thanh Hương – cô giáo phụ trách hướng dẫn tốt nghiệp đã gợi ý để em lựa chọn đề tài này và đã tận tình hướng dẫn trong suốt quãng thời gian làm đồ án . Em cũng xin gửi lời cảm ơn tới thày giáo Quách Tuấn Ngọc về những chỉ dẫn của thày trên diễn đàn edu.net của bộ giáo dục về cách viết một đồ án tốt nghiệp có hiệu quả,cảm ơn các bạn trong nhóm thực tập và các bạn trong lớp đã chia sẻ kiến thức,thông tin có liên quan đến lĩnh vực của đồ án ,cũng như kinh những kinh nghiệm lập trình hết sức bổ ích. Cuối cùng, em xin được cảm ơn sự dạy dỗ nhiệt tình của các thầy cô giáo trong khoa nói riêng và trong trường đã dạy dỗ em trong suốt 5 năm học dưới mái trường ĐHBK thân yêu. Tìm hiểu kỹ thuật xây dựng giao diện người dùng với cơ chế phản hồi ngôn ngữ tự nhiên Đồ án tốt nghiệp Nguyễn Trung Thành-HTTT-K46 3 Hà nội ngày 23 tháng 5 năm 2006 Sinh viên thực hiện Nguyễn Trung Thành Tìm hiểu kỹ thuật xây dựng giao diện người dùng với cơ chế phản hồi ngôn ngữ tự nhiên Đồ án tốt nghiệp Nguyễn Trung Thành-HTTT-K46 4 Mục lục Lời nói đầu ............................................................................................................ 1 Mục lục ................................................................................................................. 2 Phụ lục .................................................................................................................. 3 PHẦN 1:TỔNG QUAN VỀ VIỆC ỨNG DỤNG XỬ LÝ NGÔN TRONG THỰC TIỄN ........................................................................................................ 4 1.1.Giới thiệu ........................................................................................................ 4 1.2. Đặt vấn đề ...................................................................................................... 5 1.2.1.Mục đích của đề tài...................................................................................... 5. 1.2.2.Nội dung công việc ....................................................................................... 6 PHẦN 2:CƠ SỞ LÝ THUYẾT ........................................................................... 7 2.1.Giao diện ngôn ngữ tự nhiên ........................................................................... 7 2.1.1.Những ưu điểm của giao diện ngôn ngữ tự nhiên .........................................10 2.1.2.Những nhược điểm của giao diện ngôn ngữ tự nhiên ...................................11 2.2.Giao diện ngôn ngữ tự nhiên hạn chế ..............................................................12 2.3.Kỹ thuật WYSIWYM editing .........................................................................12 2.3.1.Các mô hình Editor ......................................................................................12 2.3.2.Kiến trúc WYSIWYM .................................................................................15 2.3.3.Các thành phần cơ bản của một hệ thống WYSIWYM editing.....................17 PHẦN 3:HỆ THỐNG HỎI ĐÁP NGÔN NGỮ TỰ NHIÊN.............................19 3.1.Các hệ thống truy vấn cơ sở dữ liệu ................................................................19 3.2.Giới thiệu về một hệ thống CLEF ...................................................................21 3.2.1. Ứng dụng của hệ thống ...............................................................................21 Tìm hiểu kỹ thuật xây dựng giao diện người dùng với cơ chế phản hồi ngôn ngữ tự nhiên Đồ án tốt nghiệp Nguyễn Trung Thành-HTTT-K46 5 3.2.2. Kiến trúc của hệ thống ................................................................................22 3.3.Giao diện CLEF .............................................................................................22 3.3.1.Chức năng và nhiệm vụ của giao diện CLEF ...............................................23 3.3.2.Mô hình hoá các văn bản trả lời ...................................................................24 3.3.3.Cách thức tương tác giữa người dùng và giao diện CLEF ............................25 PHẦN 4:XÂY DỰNG CHƯƠNG TRÌNH MÔ PHỎNG GIAO DIỆN WYSIWYM ........................................................................................................38 4.1.Phân tích thiết kế ............................................................................................38 4.1.1.Phân tích chức năng .....................................................................................38 4.1.2.Thiết kế cơ sở tri thức ..................................................................................40 4.1.2.1.Quan hệ ngữ nghĩa giữa các anchor(liên kết) ........................................... 40 4.1.2.2.Thiết kế logic ............................................................................................51 4.2.Cài đặt chương trình mô phỏng ......................................................................65 4.2.1.Công cụ ngôn ngữ .......................................................................................65 4.2.2.Mã hoá chương trình ...................................................................................68 PHẦN 5: ĐÁNH GIÁ KẾT QUẢ VÀ HƯỚNG PHÁT TRIỂN .......................94 5.1. Đánh giá kết quả ............................................................................................94 5.2.Hướng phát triển ............................................................................................95 Các tài liệu tham khảo .......................................................................................96 Phụ Lục Danh mục các hình vẽ ........................................................................................... 3 Hình 2.1: Mô hình trao đổi giữa CSDL và người dùng qua giao diện NNTN......... 7 Hình 2.2:Kiến trúc của một giao diện ngôn ngữ tự nhiên ....................................... 9 Tìm hiểu kỹ thuật xây dựng giao diện người dùng với cơ chế phản hồi ngôn ngữ tự nhiên Đồ án tốt nghiệp Nguyễn Trung Thành-HTTT-K46 6 Hình 2.3:Mô hình kiến trúc của WYSIWYM ...................................................... 16 Hình 2.4 : Mô hình hoạt động của một hệ thống WYSIWYM ............................. 17 Hình 3.1: Kiến trúc chung của một hệ QA ........................................................... 20 Hình 3.2:Tiến trình tương tác giữa người dùng và giao diện CLEF (trạng thái 1) ...... 25 Hình 3.3:Tiến trình tương tác giữa người dùng và giao diện CLEF (trạng thái 2) ...... 26 Hình 3.4:Tiến trình tương tác giữa người dùng và giao diện CLEF (trạng thái 3) ...... 28 Hình 3.5:Tiến trình tương tác giữa người dùng và giao diện CLEF (trạng thái 4) ...... 29 Hình 3.6:Tiến trình tương tác giữa người dùng và giao diện CLEF (trạng thái 5) ...... 30 Hình 3.7:Tiến trình tương tác giữa người dùng và giao diện CLEF (trạng thái 6) ...... 31 Hình 3.8: Minh hoạ quá trình mở rộng văn bản .......................................................... 32 Hình 3.9:Tiến trình tương tác giữa người dùng và giao diện CLEF (trạng thái 7) ...... 34 Hình 4.1: Tiến trình hoạt động của giao diện WYSIWYM ......................................... 40 Hình 4.2:Mạng ngữ nghĩa của A-box tương ứng với mô hình feedback text dạng 1 ... 59 Hình 4.3: Mạng ngữ nghĩa của A-box tương ứng với mô hình feedback text dạng 2 .. 60 Hình 4.4:Mạng ngữ nghĩa của A-box tương ứng với mô hình feedback text dạng 3 ....61 Hình 4.5:Mạng ngữ nghĩa của A-box tương ứng với mô hình feedback text dạng 4 ... 63 Hình 4.6:Mạng ngữ nghĩa của A-box tương ứng với mô hình feedback text dạng 5 ... 65 Hình 4.7:Mạng ngữ nghĩa của A-box tương ứng với mô hình feedback text dạng 6 ... 66 Hình 4.8 :Các thành phần thực thi chương trình .................................................. 68 Tìm hiểu kỹ thuật xây dựng giao diện người dùng với cơ chế phản hồi ngôn ngữ tự nhiên Đồ án tốt nghiệp Nguyễn Trung Thành-HTTT-K46 7 Tìm hiểu kỹ thuật xây dựng giao diện người dùng với cơ chế phản hồi ngôn ngữ tự nhiên Đồ án tốt nghiệp Nguyễn Trung Thành-HTTT-K46 8 TÌM HIỂU KỸ THUẬT XÂY DỰNG GIAO DIỆN NGƯỜI DÙNG VỚI CƠ CHẾ PHẢN HỒI NGÔN NGỮ TỰ NHIÊN PHẦN 1:TỔNG QUAN VỀ VIỆC ỨNG DỤNG XỬ LÝ NGÔN NGỮ TỰ NHIÊN TRONG THỰC TIỄN Dẫn nhập:phần này sẽ giới thiệu chung về chủ đề của đồ án,lý do xuất phát từ nhu cầu của thực tiễn và hướng nghiên cứu khoa học liên quan đến đồ án. 1.1.Giới thiệu Ngày nay việc sử dụng máy tính đã trở nên hết sức phổ biến.Công nghệ thông tin đã đi vào hầu hết các lĩnh vực của đời sống xã hội.Máy tính trở thành công cụ đắc lực của nhiều người hoạt động trong các lĩnh vực khác nhau,nhất là trong việc lưu trữ và xử lý một khối lượng dữ liệu chuyên ngành khổng lồ và không ngừng tăng lên từng ngày.Máy tính giống như các công cụ khác là “cánh tay nối dài”, “tư duy nối dài” của con người vì nó có thể đảm nhiệm những chức năng mà con người tỏ ra khiếm khuyết,những năng lực mà con người cảm thấy khó khăn thì máy tính lại chiếm ưu thế chẳng hạn như khả năng tính toán của con người dựa trên hệ nhị phân là rất chậm so với khả năng tính toán của computer dựa trên hệ nhị phân hay là bộ nhớ của con người không thể nào so sánh được với dung lượng khổng lồ của các bộ nhớ máy tính.Song không phải vì vậy mà máy tính không có sự hạn chế.Việc máy tính tỏ ra có nhiều ưu thế hơn con người ở một số lĩnh vực là do nguyên lý hoạt động của máy tính khác với nguyên lý hoạt động của con người.Chính điều này cũng là nguyên nhân của những hạn chế của máy tính,rõ ràng là máy tính cũng thua con người trong nhiều lĩnh vực.Do đó để có thể phát Tìm hiểu kỹ thuật xây dựng giao diện người dùng với cơ chế phản hồi ngôn ngữ tự nhiên Đồ án tốt nghiệp Nguyễn Trung Thành-HTTT-K46 9 huy hiệu quả được các khả năng của con người và tận dụng hết khả năng của máy tính đòi hỏi phải có sự “phối hợp” người và máy.Thực chất của quá trình phối hợp này là con người sẽ chuyển giao những chắc năng mà con người còn “yếu” sang cho máy tính đồng thời máy tính sẽ phải chuyển ngược trở lại cho con người những thông tin và dữ liệu ở dạng đơn giản hiệu quả để con người có thể hiểu và sử dụng trong công việc cũng như trong đời sống sinh hoạt hàng ngày. Để làm được điều này đòi hỏi quá trình giao tiếp giữa người và máy phải luôn thông suốt,thông tin hai chiều phải thật trong sang,tuy nhiên để người và máy hiểu được nhau là rất khó vì như chúng ta biết máy tính chỉ là những thiết bị điện tử hoạt động dựa trên những nguyên tắc logic và cơ chế vật lý của các thiết bị điện, điện tử,ngôn ngữ của máy tính là ngôn ngữ của trạng thái, đó là trạng thái bật hay tắt của một thiết bị,trạng thái điện áp cao hay điện áp thấp của các linh kiện điện tử là những con số 0 và 1 luân phiên thay đổi nhau trong những thanh ghi dữ liệu vv.. còn con người cùng với hoạt động sống của mình trong môi trường xã hội đã hình thành nên ngôn ngữ của riêng mình với các ngôn ngữ rất đa dạng khác nhau của nhiều dân tộc là những ngôn ngữ tự nhiên,mỗi loại ngôn ngữ tự nhiên có lịch sử rất lâu đời con người tiếp nhận ngôn ngữ tự nhiên một cách dễ dàng (ai cũng có thể biết nói biết viết ) nhưng đối với ngôn ngữ của máy tính thì con người muốn nắm vững đòi hỏi mất rất nhiều thời gian và phải trải qua những quá trình nghiêm ngặt.Nhưng những nhu cầu của thực tiễn bắt buộc con người phải tìm ra những giải pháp tăng cường khả năng giao tiếp giữa người và máy tính.Chính vì vậy mà những ứng dụng xử lý ngôn ngữ tự nhiên đã ra đời như một hướng đi để tìm ra câu trả lời cho bài toán nói trên. Tuy ngôn ngữ tự nhiên và ngôn ngữ máy có những sự khác biệt như đã phân tích ở trên song chúng đều có một điểm chung là đều phải có cấu trúc và phải tuân theo những trật tự nhất định,do đó chúng có thể “chuyển hoá” lẫn nhau.Khái niệm chuyển hóa đây có nghĩa là ngôn ngữ tự nhiên có thể được thông dịch chuyển dần qua các dạng trung gian theo từng bước,cuối cùng chuyển thành các định dạng nhị Tìm hiểu kỹ thuật xây dựng giao diện người dùng với cơ chế phản hồi ngôn ngữ tự nhiên Đồ án tốt nghiệp Nguyễn Trung Thành-HTTT-K46 10 phân của ngôn ngữ máy và máy có thể “hiểu” được.Nói chính xác là máy tính có thể xử lý được đầu vào dạng ngôn ngữ tự nhiên và trả lại đầu ra cũng ở dạng ngôn ngữ tự nhiên.Các bước trung gian này được đảm nhiệm bởi các chương trình ứng dụng xử lý ngôn ngữ tự nhiên. Hiện nay các ứng dụng này đang rất phát triển theo nhiều nhánh khác nhau.Một trong các nhánh đó là các ứng dụng giao diện ngôn ngữ tự nhiên.Công việc xây dựng các ứng dụng này thuộc về đội ngũ những người lập trình,các kỹ sư tri thức.Vì những lý do đó, là một sinh viên ngày tin học nên người nghiên cứu chọn đề tài tập trung vào một hướng nghiên cứu về lĩnh vực xây dựng giao diện ngôn ngữ tự nhiên như một bước đi để tiếp cận với ngành khoa học nhiều triển vọng này. 1.2. Đặt vấn đề 1.2.1.Mục đích của đề tài : Đề tài này nhằm nghiên cứu kỹ thuật xây dựng giao diện người dùng dựa trên cơ chế phản hồi ngôn ngữ tự nhiên. Nói đến giao diện người dùng tức là nói đến phần chương trình của ứng dụng sẽ trao đổi tương tác trực tiếp với người dùng,nó là cơ chế trung gian trong quan hệ giữa người dùng với ứng dụng và xa hơn nữa là máy tính.Thông thường hiện nay phổ biến các loại giao diện người dùng đồ hoạ mang tính trực quan cao thuận tiện cho việc sử dụng của người dùng tuy niên nó vẫn chưa đáp ứng được nhu cầu đặt ra cho con người khi phải tiếp cận và xử lý những loại dữ liệu phức tạp có nội dung tri tức chuyên sâu,những ưu điểm của các đặc trưng đồ hoạ không thể nào giải quyết được vấn đề này vì với loại giao diện đồ hoạ thông thường con người vẫn phải giao tiếp với máy tính theo những cách có vẻ hơi “cứng nhắc” do phải khuôn mẫu theo những định dạng sẵn có, đó là những “chuẩn của máy” chứ không phải là “chuẩn của con người” vì cái gần gũi và thông dụng nhất của con người trong mọi quá trình giao tiếp vẫn là ngôn ngữ tự nhiên,một thứ công cụ bẩm sinh của con người.Chính vì vậy hướng nghiên cứu của đề tài này là đi xa hơn một bước trong việc xây dựng giao diện người dùng đồ họa bằng cách đưa ngôn ngữ tự Tìm hiểu kỹ thuật xây dựng giao diện người dùng với cơ chế phản hồi ngôn ngữ tự nhiên Đồ án tốt nghiệp Nguyễn Trung Thành-HTTT-K46 11 nhiên vào trong giao diện người dùng đồ hoạ (Graphical user interface) thông qua việc cung cấp những phản hồi dạng ngôn ngữ tự nhiên (natural language feedback) trên giao diện đồ họa cho người dùng,người dùng sẽ vừa làm việc với ứng dụng đồ hoạ vừa có thể thao tác trực tiếp trên giao diện này khi được các phản hồi ngôn ngữ tự nhiên cung cấp chỉ dẫn thông qua nội dung ngữ nghĩa mà nó phản ánh.Quá trình xây dựng sẽ được tiến hành bằng việc áp dụng kỹ thuật WYSIWYM một hướng tiếp cận mới trong lĩnh vực xử lý ngôn ngữ tự nhiên.Ngôn ngữ tự nhiên mà giao diện phản hồi lại với người dùng ở đây là tiếng Anh-English.Sở dĩ đề tài này chọn tiếng Anh làm ngôn ngữ áp dụng để thử nghiệm vì hướng nghiên cứu này còn rất mới ,các tài liệu chủ yếu nói về các cấu trúc Tiếng Anh,phương pháp tiếp cận xử lý ngôn ngữ tự nhiên không phải dựa trên cú pháp (syntax)như những phương pháp truyền thống mà dựa trên những ngữ nghĩa (semantic) có sẵn một tập luật sinh ra các cấu trúc câu phản hồi chuẩn trong khi nếu áp dụng với tiếng Việt đòi hỏi phải có thời gian nghiên cứu Tiếng Việt để xây dựng tập luật chuẩn ,mà hiện tại ở Việt Nam chưa có người nghiên cứu về đề tài này.Cách xây dựng trên dựa ngữ nghĩa cũng không quá phức tạp về nội dung đòi hỏi người thực hiện phải giỏi tiếng Anh lắm và quy mô đề tài nhỏ nên phạm vi từ vựng không quá rộng lớn chỉ tập trung trong một phạm vi hẹp,người nghiên cứu có thể bao quát được không quá khó khăn.Tính chất của đề tài là mang tính nghiên cứu tìm hiểu những phương pháp truyền thống và những phương pháp mới từ đó so sánh để tìm ra những ưu nhược điểm của mỗi phương pháp, đưa vào thử nghiệm một phương pháp,một kỹ thuật được cho là phù hợp nhất,từ đó tích luỹ kinh nghiệm và kiến thức trong tương lai nếu có điều kiện sẽ xây dựng những ứng dụng có tính thiết thực áp dụng vào trong thực tiễn. 1.2.2.Nội dung công việc a)Nghiên cứu các loại giao diện ngôn ngữ tự nhiên (Natural language interface ),từ đó lựa chọn phương pháp phù hợp để xây dựng giao diện người dùng với cơ chế phản hồi ngôn ngữ tự nhiên,nội dung của giao diện này được hiểu là giao diện xây Tìm hiểu kỹ thuật xây dựng giao diện người dùng với cơ chế phản hồi ngôn ngữ tự nhiên Đồ án tốt nghiệp Nguyễn Trung Thành-HTTT-K46 12 dựng có dạng frame giống như các giao diện đồ hoạ thông thường tuy nhiên trên giao diện có các câu ngôn ngữ tự nhiên gọi là các feedback text người dùng có thể tương tác với giao diện dựa vào các feedback text này,sau mỗi lần người dùng thao tác trên feedback text thì giao diện sẽ phản hồi lại người dùng một feedback text mới có nội dung cụ thể và chi tiết hơn nội dung feedback text mà người dùng vừa tác động vào. b)Tiến hành cài đặt một chương trình mô phỏng có tính chất thử nghiệm để minh hoạ một mô hình giao diện có dạng đã đề cập.Các yếu tố người dùng tức là những thông tin,dữ liệu mà người dùng thực hiện trao đổi với giao diện này là về lĩnh vực chẩn đoán chăm sóc và điều trị bệnh ung thư. Những nội dung cụ thể về cách tiến hành cũng như kỹ thuật xây dựng sẽ được đề cập cụ thể hơn ở những phần sau theo hướng đi từ khái quát đến chi tiết . PHẦN 2:CƠ SỞ LÝ THUYẾT Dẫn nhập:phần này sẽ trình bày tổng hợp các kiến thức mang tính lý thuyết có liên quan đến đồ án đặt cơ sở cho việc tìm hiểu kỹ thuật và cài đặt chương trình mô phỏng ở các phần sau. 2.1.Giao diện ngôn ngữ tự nhiên(Natural language interface) Tìm hiểu kỹ thuật xây dựng giao diện người dùng với cơ chế phản hồi ngôn ngữ tự nhiên Đồ án tốt nghiệp Nguyễn Trung Thành-HTTT-K46 13 Các ứng dụng giao diện ngôn ngữ tự nhiên có nhiều loại khác nhau nhưng phổ biến nhất là các ứng dụng giao diện ngôn ngữ tự nhiên được nhúng vào các ứng dụng truy vấn và quản lý cơ sở dữ liệu. Trong quá trình khai thác và sử dụng các cơ sở dữ liệu chuyên ngành đòi hỏi phải biết cách sử dụng và làm việc trên những hệ quản trị cơ sở dữ liệu.Tuy nhiên hầu hết đối với người sử dụng máy tính như một phương tiện xử lý thông tin thì họ lại không có những kiến thức hiểu biết chuyên sâu về các lĩnh vực trong tin học,về các ngôn ngữ lập trình,cơ sở dữ liệu hay ngôn ngữ truy vấn cơ sở dữ liệu, đồng thời với việc có một thực tế là các hệ quản trị cơ sở dữ liệu hiện nay khá phức tạp trong việc truy vấn và cập nhật dữ liệu,muốn sử dụng được chúng cũng phải qua đào tạo cơ bản,do đó việc giao tiếp với người và máy