1. Trang chủ
  2. » Luận Văn - Báo Cáo

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

95 740 1
Tài liệu đã được kiểm tra trùng lặp

Đang tải... (xem toàn văn)

Tài liệu hạn chế xem trước, để xem đầy đủ mời bạn chọn Tải xuống

THÔNG TIN TÀI LIỆU

Thông tin cơ bản

Tiê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
Tác giả Nguyễn Trung Thành
Người hướng dẫn TS. Lê Thanh Hương
Trường học Đại Học Bách Khoa Hà Nội
Chuyên ngành Hệ Thống Thông Tin
Thể loại Đồ án tốt nghiệp
Năm xuất bản 2006
Thành phố Hà Nội
Định dạng
Số trang 95
Dung lượng 0,95 MB

Các công cụ chuyển đổi và chỉnh sửa cho tài liệu này

Nội dung

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.

Trang 1

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 chomá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ệuquả.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ànhchuyê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ìnhlogic,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ảocủ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ốtnghiệp đã gợi ý để em lựa chọn đề tài này và đã tận tình hướng dẫn trong suốtquã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ẫncủ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 kinhnghiệ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 trongkhoa nói riêng và trong trường đã dạy dỗ em trong suốt 5 năm học dưới máitrường ĐHBK thân yêu

Hà nội ngày 23 tháng 5 năm 2006

Sinh viên thực hiện

Nguyễn Trung Thành

Trang 2

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

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

Trang 3

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

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

Trang 4

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ôngtin đã đ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ệclư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ừngtă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à conngườ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ựatrê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ượngkhổ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 conngườ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áthuy 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áytí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ợpnày là con người sẽ chuyển giao những chắc năng mà con người còn “yếu” sangcho máy tính đồng thời máy tính sẽ phải chuyển ngược trở lại cho con ngườinhữ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ôngsuốt,thông tin hai chiều phải thật trong sang,tuy nhiên để người và máy hiểu đượcnhau 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ệntử,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ắtcủ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ìnhthà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

Trang 5

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ốnnắ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êmngặ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ữnggiả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âutrả 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ântí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ântheo những trật tự nhất định,do đó chúng có thể “chuyển hoá” lẫn nhau.Khái niệmchuyển hóa đây có nghĩa là ngôn ngữ tự nhiên có thể được thông dịch chuyển dầnqua 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ị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ônngữ tự nhiên.Các bước trung gian này được đảm nhiệm bởi các chương trình ứngdụ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 theonhiều nhánh khác nhau.Một trong các nhánh đó là các ứng dụng giao diện ngônngữ 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ườilậ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ênngườ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âydự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ọcnhiều triển vọng này

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ộidung tri tức chuyên sâu,những ưu điểm của các đặc trưng đồ hoạ không thể nàogiải quyết được vấn đề này vì với loại giao diện đồ hoạ thông thường con ngườivẫ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ảikhuôn mẫu theo những định dạng sẵn có, đó là những “chuẩn của máy” chứ khôngphả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ườitrong 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 sinhcủ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ộtbướ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ựnhiên vào trong giao diện người dùng đồ hoạ (Graphical user interface) thông quaviệc cung cấp những phản hồi dạng ngôn ngữ tự nhiên (natural language feedback)

Trang 6

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ônngữ 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ộthướ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àychọn tiếng Anh làm ngôn ngữ áp dụng để thử nghiệm vì hướng nghiên cứu nàycò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ếpcận xử lý ngôn ngữ tự nhiên không phải dựa trên cú pháp (syntax)như nhữngphương pháp truyền thống mà dựa trên những ngữ nghĩa (semantic) có sẵn một tậpluậ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êndự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ảigiỏ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ớnchỉ tập trung trong một phạm vi hẹp,người nghiên cứu có thể bao quát được khôngquá 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ươngpháp truyền thống và những phương pháp mới từ đó so sánh để tìm ra những ưunhượ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 trongtươ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âydựng có dạng frame giống như các giao diện đồ hoạ thông thường tuy nhiên trêngiao 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ùngthao tác trên feedback text thì giao diện sẽ phản hồi lại người dùng một feedbacktext mới có nội dung cụ thể và chi tiết hơn nội dung feedback text mà người dùngvừ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 để minhhoạ 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ữngthô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ựcchẩ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

Trang 7

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)

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 ứngdụ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ếtchuyê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ệuhay 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ếpvới người và máy để truy vấn dữ liệu gặp rất nhiều khó khăn.Chính vì vậy mà córất nhiều dự án ,công trình nghiên cứu về xử lý ngôn ngữ tự nhiên nhằm tạo ra mộtgiao diện người dùng thuận tiện cho phép người dùng có thể thực hiện việc truyvấn với các cơ sở dữ liệu một cách dễ dàng mà không phải tốn công và chi phí đàotạo

Giao diện ngôn ngữ tự nhiên cho cơ sở dữ liệu (NL-interface) là một bộ phậntrung gian giữa người dùng và CSDL.Nó dịch các câu truy vấn dạng ngôn ngữ tựnhiên sang dạng biểu diễn hình thức logic,tìm kiếm trong CSDL và đưa ra cácthông tin phù hợp cho người dùng

Hình 2.1: Mô hình trao đổi giữa CSDL và người dùng qua giao diện NNTN

Các ý tưởng sơ khai về xử lý ngôn ngữ tự nhiên được hình thành từ rất sớmvào khoảng những năm 1900 và được đề xuất biểu diễn ngôn ngữ tự nhiên bằng

Trang 8

suy diễn toán học sử dụng logic.Những nghiên cứu này được công bố bởi Frege vàRussell, Wittgenstein Họ đề xuất rằng ngôn ngữ tự nhiên là một hệ thống hìnhthức có thể xử lý tự động Các ứng dụng xử lý ngôn ngữ tự nhiên được ra đời từvào khoảng thập niên 60 của thế kỷ 20,hầu hết chúng đều bị giới hạn bởi các cơ sở

dữ liệu và các ứng dụng hết sức đặc thù, đáng kể nhất là hệ thống LUNAR, đó làmột giao diện ngôn ngữ tự nhiên cho cơ sở dữ liệu về những phân tích hoá học từnhững mẫu đá trên mặt trăng.LUNAR là một máy hữu hạn trạng thái đầu trong đó

dữ liệu đầu vào có thể phân tích được.Nó làm việc khá hiệu quả và tạo ra được sựquan tâm đối với lĩnh vực sử lý ngôn ngữ tự nhiên.Nó làm cho các nhà nghiên cứu

có chung một niềm tin rằng những nghiên cứu về xử lý ngôn ngữ tự nhiên mớinhững mức hạn chế vừa đủ là khả thi và sớm trở thành giao diện chuẩn đối với cácmáy tính.Một nhà nghiên cứu tại IBM năm 1978 đã nói rằng “ máy tính có thểhiểu được ngôn ngữ tự nhiên trong một tương lai không xa”.Tuy nhiên thời gian

đã chứng minh kết luận của ông ta không đúng

Mặc dù các nhà khoa học đã dành rất nhiều thời gian cho những nghiên cứutrong các thập kỷ vừa qua đặc biệt là các ứng dụng trong những hệ thống thươngmại tuy nhiên những giao diện ngôn ngữ tự nhiên (NLI)thực sự có tính ứng dụngcao trong thực tế lại không phải là nhiều.Có vẻ như các công ty không tin tưởnglắm vào giao diện ngôn ngữ tự nhiên và họ không đủ thông tin và sự đảm bảo vềlợi ích khi đầu tư cho những ứng dụng giao diện kiểu này.Một trong những lý do

để họ không tin cậy vào giao diện ngôn ngữ tự nhiên-NLI là hiện đang phổ biếnmột loại giao diện thể hiện ưu thế vượt trội của mình là giao diện dựa trênform.Tuy nhiên liệu đó có phải là lý do chính đáng hay không ,hay chẳng lẽ giaodiện ngôn ngữ tự nhiên-NLI lại không có lợi ích gì

Trong một giao diện ngôn ngữ tự nhiên điển hình dùng để truy nhập cơ sở dữliệu( Natural language interface to a database-NLIDB),người dùng sẽ yêu cầu đưa

ra các bản ghi thông qua các câu truy vấn diễn đạt bằng ngôn ngữ tự nhiên.Trướctiên các câu truy vấn sẽ được phân tích về mặt ngữ nghĩa bởi một đầu vào xử lýngôn ngữ,nơi các truy vấn sẽ được dịch sang ngôn ngữ biểu diễn trung gian (thôngthường là các form dạng logic).Sau đó các diễn đạt dạng ngôn ngữ trung gian sẽđược dịch sang ngôn ngữ cơ sở dữ liệu SQL đã được hỗ trợ bởi các hệ quản trịCSDL Cụ thể một hệ thống NLIDB bao gồm những thành phần(components)chính sau:

Trang 9

Hình 2.2:Kiến trúc của một giao diện ngôn ngữ tự nhiên

 Một bộ xử lý ngôn ngữ (linguistic processor-L processer) làm nhiệm vụdịch các truy vấn dạng ngôn ngữ tự nhiên (NL-queries) sang dạng biểu diễntrung gian( Intermediate query- I query)(1)

 Một trình quản lý thiết kế (design monitor) cho những yếu tố có tính chấtchung của giao diện ngôn ngữ tự nhiên (general-purpose NL) không liênquan tới những cơ sở dữ liệu cụ thể (particular DB) (2,3)

 Một trình quản lý trả lời truy vấn (query-answer monitor) sẽ gửi những câutruy vấn cho bộ xử lý L processor và hiển thị câu trả lời (4)

 Một trình quản lý CSDL (DB-monitor) (5) sẽ dịch các câu truy vấn I querysang dạng SQL và trả lại kết quả từ CSDL

Nếu nhìn từ góc độ chức năng xử lý công việc thì hệ thống xây dựng dựa trên haicông việc (mode)

 Xây dựng giao diện ngôn ngữ tự nhiên (constructing NLF) cho một CSDL

về lĩnh vực cụ thể (công việc của người thiết kế-the designer ’s mode)

 Đặt câu truy vấn (query processing) đây là công việc của người dùng cuối(end-user ’ s mode)

Với khả năng kinh nghiệm của mình các chuyên gia thiết kế có thể tạo ra đượcmột NLF trong vòng vài giờ làm việc tập trung và dựa trên đó xây dựng những hệNLF tin cậy với đầy đủ tính năng trong vòng vài ngày

Trường hợp thứ hai (second mode) quan tâm tới đa số người dùng đại chúng (massuser) và được dựa trên NLF đã được thiết kế từ trường hợp đầu (first mode) cầnthực hiện truy vấn những thông tin cần thiết từ CSDL và biểu diễn các kết quả trả

về từ CSDL

Trang 10

Rất nhiều các loại giao diện ngôn ngữ tự nhiên cho CSDL đã được phát triểntrong suốt 30 năm qua Đặc điểm chung của các hệ thống này là phạm vi áp dụngcủa các phương pháp kỹ thuật là rất lớn.Trở ngại chung của các hệ thống nàythông thường các hệ thống chỉ có thể hiểu được một tập rất nhỏ các ngôn ngữ tựnhiên.Chúng thường không rõ ràng đối với những đối tượng người dùng bìnhthường,do các cấu trúc câu thiếu sự hợp lý và tính trong sáng về ngữ nghĩa ,và đôikhi hệ thống đưa ra những câu trả lời không có mấy giá trị hay muốn nói là khôngthể chấp nhận được.Ở khía cạnh tích cực thì ngôn ngữ tự nhiên vượt trội hơn nhiều

so với SQL về tính diễn cảm(expressive) do đó nó trở nên dễ dàng hơn trong việchỏi những câu phức tạp sử dụng ngôn ngữ tự nhiên hơn là cũng hỏi với nội dung

đó nhưng sử dụng ngôn ngữ CSDL.Các truy vấn đơn bằng ngôn ngữ tựnhiên(single natural language query ) thường được dịch sang các câu lệnhSQL.Truy vấn dạng ngôn ngữ tự nhiên không chỉ thân thiện với những người dùngkhông phải chuyên gia mà còn cho phép thao tác với các câu chứa nội dung thờigian( temporal constructions).Do những đặc thù trên mà giao diện ngôn ngữ tựnhiên cũng mang nhiều ưu điểm và nhược điểm cố hữu.Sau đây là những nét ưunhược điểm chủ yếu của các hệ thống này

2.1.1.Những ưu điểm (advantage) của giao dện ngôn ngữ tự nhiên

Có nhiều lý do để cho rằng giao diện ngôn ngữ tự nhiên có nhiều ưu điểm.Mộtđiều hiển nhiên là người sử dụng hệ thống không muốn học các ngôn ngữ nhân tạo

để có thể giao tiếp với máy tính.Các công ty sẽ rất có lợi khi không phải tốn chiphí đào tạo nhân viên của mình và những người sử dụng hệ thống thường xuyêncũng cảm thấy hài long khi họ có ít kinh nghiệm trong việc sử dụng máy tính.Cácnhà nghiên cứu nói rằng để xây dựng được giao diện ngôn ngữ tự nhiên cần phảitiến hành từng bước,phải thực hiện những mục tiêu mang tính giai đoạn khi màmáy tính hiện nay chưa thể hiểu được ngôn ngữ tự nhiên,việc hoàn thành ước mơcủa những nhà nghiên cứu có lẽ cũng không quá xa vời.Nhiều người tin rằng trongtương lai sẽ có nhiều loại giao diện kiểu này sẽ được phát minh,chúng có khảnăng kiểm tra ngữ pháp và nhận dạng được giọng nói,cũng như sẽ có nhiều công

cụ ngôn ngữ sẽ xuất hiện

Một lý do khác là một số giao diện ngôn ngữ tự nhiên hiện nay làm việc khátốt.Mặc dù giao diện đồ hoạ dựa trên form được sử dụng khá hiệu quả trong nhiềulĩnh vực song chúng lại có những giới hạn nhất định.Có thể đưa ra một vài ví dụ làkhả năng tham chiếu đến các đối tượng không xuất hiện trên màn hình hiển thị(screen),các quan hệ về thời gian ngoài ra còn rất khó khăn trong việc diễn đạt sựphủ định hay các đại lượng một cách ngắn gọn

Chẳng hạn câu “phòng nào không có một lập trình viên nào”.Rất may mắn là độ

dài các câu trong ngôn ngữ tự nhiên không quá dài và chúng ta có thể diễn đạtnhững câu hỏi một cách ngắn gọn.Dĩ nhiên là các câu hỏi như vậy phải có khảnăng diễn đạt sang dạng ngôn ngữ truy vấn hình thức(formal query language) nhưSQL ,chúng sẽ phức tạp hơn và rất buồn tẻ nếu người dùng phải tự viết các câuSQL

Trang 11

Một ưu điểm khác của giao diện ngôn ngữ tự nhiên-NLI là khả năng hỗ trợ diễnđạt các câu tĩnh lược hay các câu có chứa những nội dung lặp lại.

Tuy nhiên với tất cả những ưu điểm như trên nhưng chúng vẫn không thực sự tỏ

ra vượt trội trong các ứng dụng hiện thời là vì sao?Có một vài điều cần nghiên cứuthêm, mặc dù vậy Walker và Whittaker đã kết luận rằng giao diện ngôn ngữ tựnhiên sẽ trở nên hiệu quả hơn các hệ thống dựa trên menu.Các nhà nghiên cứugiao diện ngôn ngữ tự nhiên muốn thu được thông tin từ nhiều mức khác nhau, đặcbiệt là khi các có sự kết hợp các biểu thức ngôn ngữ thành một tổ hợp.Chúngthường được sử dụng để nối hai tập hợp với nhau để tạo ra một tập mới có khảnăng xử lý tốt hơn tương tự như trong SQL.Các nhà nghiên cứu muốn kết hợpnhững ưu điểm sẵn có trong SQL với khả năng diễn đạt những câu truy vấn phứctạp bằng những cách đơn giản của giao diện ngôn ngữ tự nhiên NLI do đó họ thích

sử dụng giao diện ngôn ngữ tự nhiên -NLI hơn là các giao diện dựa trênmenu.Mặc dù ngày nay có rất nhiều lỗi trong các hệ NLI nhưng những nhà nghiêncứu đều cho rằng lợi ích của NLI đem lại chỉ là về mặt lý thuyết mà còn có íchtrong những ứng dụng hàng ngày

2.1.2.Nhược điểm (Disadvantage) của giao diện ngôn ngữ tự nhiên

Hiện nay các giao diện ngôn ngữ tự nhiên chỉ có thể mô tả một phần giới hạn,một

bộ phận nhỏ trong ngôn ngữ tự nhiên,trong khi đó thì ngôn ngữ tự nhiên lại quálớn và luôn luôn thay đổi không ngừng.Vấn đề của giao diện ngôn ngữ tự nhiên-NLI là không có khả năng xử lý đầu vào bằng ngôn ngữ tự nhiên một cách thực sựhiệu quả.Việc tiến hành cài đặt giao diện ngôn ngữ tự nhiên-NLI chỉ áp dụng đượcvới một phạm vi rất hẹp.Tập ngôn ngữ tự nhiên mà các ứng dụng hoạt động trên

đó goi là tập ngôn ngữ đóng (linguistical coverage).Tập ngôn ngữ đóng nàythường không dễ hiểu đối với người dùng.Người dùng thấy rằng rất khó để hiểu vànhớ các loại câu hỏi mà hệ thống có thể trả lời,sẽ dễ dàng hơn với người dùng nếu

họ chỉ làm việc với một hệ thống dựa trên các câu truy vấn đơn Đối với nhữngngôn ngữ truy vấn hình thức,các giao diện dựa trên form và đồ hoạ thường khôngxảy ra những vấn đề trên vì các thông tin về lĩnh vực ứng dụng được hiển thị mộtcách rõ ràng hơn

Một vấn đề khác của giao diện ngôn ngữ tự nhiên -NLI là khi một giao diệnngôn ngữ tự nhiên xảy ra lỗi người ta thường khó xác định được là lỗi đó thuộc vềngữ nghiã do khái niêm hay lỗi là do cú pháp Điều đó làm cho người dùng thườngphải đặt lại truy vấn Điều tồi tệ nhất có thể xảy ra là hệ thống không đưa ra câu trảlời chính xác,nó có thể dẫn tới hậu quả là người dùng sẽ hiểu sai thông tin Điềunày có thể khắc phục bằng cách đưa trả lại câu hỏi cho người dùng.Ngoài ra việc

xử lý và phân tích những ngôn ngữ tự nhiên rất khó khăn phức tạp đòi hỏi nhiềucông sức.Chính vì vậy mà đến nay giao diện ngôn ngữ tự nhiên vẫn chưa phổ biếntrong các ứng dụng

2.2.Một giao diện ngôn ngữ tự nhiên hạn chế (a quasi-NL interface)

Từ những khó khăn và thuận lợi trên đã dẫn đến một sự chuyển hướng trongnghiên cứu xây dựng các giao diện ngôn ngữ tự nhiên,người ta xây dựng các giao

Trang 12

diện ngôn ngữ tự nhiên hạn chế thay vì các giao diện ngôn ngữ tự nhiên truyềnthống.Sự hạn chế ở đây không phải là sự hạn chế về tính năng của giao diện mà là

sự hạn chế về miền ngôn ngữ tự nhiên cần xử lý theo nguyên tắc “chia để trị” phânđịnh các lĩnh vực hẹp hơn để xây dựng loại giao diện này Để xây dựng giao diệnbằng ngôn ngữ tự nhiên hiện nay có rất nhiều cách tiếp cận Có hai huớng tiếp cậnchính là dựa trên cú pháp và dựa trên ngữ nghĩa

Cách tiếp cận dựa trên cú pháp (syntatic-based approach):Các câu truy

vấn sẽ được Parse(ngắt khúc và phân tích) để xây dựng các cấu trúc cúpháp (syntactic structure) sau đó sẽ dịch sang ngôn ngữ truy vấn CSDL(database query language)

cách tiếp cận này thì các câu truy vấn sẽ được chuyển thành các vị từ(predicates) của một ngôn ngữ truy vấn CSDL mà không cần dựa vào cáccấu trúc cú pháp (without building its syntactic structure).Bằng cách nàycác thành phần ngữ nghĩa và ứng dụng của quá trình giao tiếp giữa người

và máy sẽ đơn giản hơn về mặt ngữ cảnh

Trong số các cách tiếp cận xây dựng giao diện ngôn ngữ tự nhiên hạn chế thì kỹthuật WYSIWYM được đánh giá là một kỹ thuật hết sức hiệu quả,kỹ thuật nàyđược biết đến như một phương phá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

2.3.Kỹ thuật WYSIWYM editing

Kỹ thuật WYSIWYM được Richard Power đề xuất lần đầu tiên vào năm 1998 làmột cách tiếp cận dựa trên ngữ nghĩa như vậy Lý do chọn cách tiếp cận này là vìđây là cách phát triển giao diện có hầu hết các ưu điểm của giao diện ngôn ngữ tựnhiên mà lại có ít nhược điểm nhất,thay vì xây dựng một giao diện ngôn ngữ tựnhiên theo hướng tiếp cận dựa trên cú pháp ta sẽ xây dựng một giao diện ngôn ngữ

tự nhiên hạn chế (quasi Nl interface) dựa trên ngữ nghĩa

2.3.1.Các mô hình Editor (type of Editor)

Các hệ thống tương tác giữa người dùng và máy trong đó có giao diện dựa trên kỹthuật WYSIWYM editing được gọi chung là các hệ Authoring system trong đóAuthor là người dùng liên quan đến lĩnh vực mà hệ thống ứng dụng(system) cungcấp các khả năng tương tác và hiệu chỉnh nội dung thông tin

Điểm đầu tiên là ta phải lưu ý là quá trình tạo và hiệu chỉnh dựa trên kỹ thuậtWYSIWYM (WYSIWYM editing) được nhìn nhận giống như quá trình xử lý từ(word processing) bởi vì quá trình này thực hiện trên các tài liệu được định dạng(formatted document).Chúng ta cần biết qua một số đặc điểm của việc xử lý từ(word processing) trước khi tìm hiểu về các loại Editor

Khi chúng ta thao tác (edit) trên một tài liệu thông qua một bộ xử lý từ (wordprocessor) mục đích của chúng ta là nhằm đưa ra các kiểu thông tin đa dạng Ởmức cơ bản nhất chúng ta có một chuỗi các ký tự.Các ký tự này ghép lại tạo thànhmột từ và các từ các từ ghép lại tạo thành một câu.,chúng sẽ diễn đạt một kháiniệm hay một ý tưởng nào đó.Các bộ word processor cũng có thể cho phép tạo racác hiệu ứng đồ hoạ trong các tài liệu.Bằng việc thay đổi font và kích thước các

Trang 13

ký tự chẳng hạn.Nhìn một cách tổng thể thì có bốn mức thông tin khác nhau trongmột tài liệu (document).Mỗi mức có một đặc trưng tiêu biểu (characteristicfeature)

Mức đồ hoạ (Graphic level): Tại mức này tài liệu được biểu diễn trên màn

hình (screen) ở cấp độ pixel.với bitmap 2 chiều (two- dimensional bitmap)

Mức vị tự (Graphemic level): Chuỗi các ký tự trong tài liệu

Mức cú pháp (Syntatic level): Các từ chứa trong tài liệu và thứ tự sắp xếp

của chúng

Mức ngữ nghĩa(Semantic level): Ý nghĩa chứa trong tài liệu

Các hiển thị trực quan trong một word processor thể hiện toàn bộ cả bốn mứcnày.Sự khác biệt của các mức thông tin trên tương ứng với ba cách mà người dùnguser có thể tương tác với một hệ thống (authoring system) dựa trên ba loại đặcđiểm

Các đặc trưng có thể điều khiển trực tiếp (Directly controlled features): Có những đặc trưng người dùng (user) có thể tác động trực tiếp

bằng các thao tác cơ bản (atomic actions).Ví dụ trong một word processorcác thao tác cơ bản mà người dùng có thể thực hiện được như chèn hoặcxoá một ký tự,thao tác này được xếp ở mức vị tự (graphemic level)

Các đặc trưng thông dịch (Interpreted feature): Một đặc trưng thông

dịch có thể được biến đổi một cách không trực tiếp, Các tác động của ngườidùng có thể được dịch (interpreting) sang các tác động ở mức thấp hơn.Ví

dụ với word processor thì các đặc trưng cú pháp và ngữ nghĩa có thể nhậnđược từ việc dịch (interpreting) chuỗi ký tự Không một chương trình nào

có thể sử dụng các đặc trưng cú pháp hoặc ngữ nghĩa được mã hoá bằng cácchuỗi ký tự trừ phi nó có khả năng parse (ngắt khúc và phân tích) để hiểuđược ngôn ngữ.Như thế các đặc trưng ngữ nghĩa được mã hoá trong tài liệu

có thể chỉ có giá trị đối với con người

Các đặc trưng thể hiện (Presentational features): Các đặc trưng này

được đưa ra bởi chương trình nhằm hiển thị các đặc trưng khác cho ngườidùng.Ví dụ các đặc trưng đồ hoạ trong một word processor,các đặc trưngnày sẽ không thể được dịch(interprete) từ mức điều khiển (controlled level)nhưng có thể nhận được từ mức này (controlled level) Chẳng hạn một bộcông cụ soạn thảo text editor chỉ có thể ghi các chuỗi ký tự thì phải đưathêm vào các đặc trưng đồ hoạ (kích thước,font chữ) để có thể in ra và hiểnthị trên màn hình

Từ những đặc điểm trên có thể nhận thấy những đặc điểm giống và khác nhaugiữa text editing và WYSIWYM editing Điểm chung của 2 kỹ thuật này là chúngđều biểu diễn thông tin dựa trên các đặc trưng ở cả bốn mức đồ hoạ (graphical),vị

tự (graphemic),cú pháp(synstatic) và ngữ nghĩa (semantic).Sự khác nhau giữachúng là một word processor cho phép tác động trực tiếp (direct control) lên cácđặc trưng ở mức vị tự (graphemic feautures) tức là thao tác trên các chuỗi ký tự(character sequence) còn WYSIWYM editing cho phép tác động trực tiếp lên các

Trang 14

đặc trưng ở mức ngữ nghĩa (semantic features) tức là thao tác trên những tri thức(knowledge).Trong WYSIWYM editing thì các đặc trưng đồ hoạ,vị tự và cú pháptoàn bộ mang tính chất thể hiện trình bày (presentational).Người dùng có thể chọncác thuật ngữ (term) nhưng không thể thao tác trực tiếp (control directly) lênchúng ví dụ như gõ các ký tự chẳng hạn.Căn cứ vào những đặc điểm trên của mộttrình soạn thảo ngôn ngữ tự nhiên (natural language editor) ta sẽ có bốn loại NLEditor khác nhau tương ứng với những mức khác nhau mà qua đó người dùng cóthể tác động.

1.Handwriting Editor.Người dùng có thể thao tác trực tiếp ở mức đồ hoạ

(graphic) ví dụ sử dụng một bút điện tử (thiết bị đầu vào-input divice) để viết mộtvăn bản theo cách “thủ công” như viết trên giấy.Quá trình này người dùng đã giántiếp tham gia vào việc tác động lên thông tin ở các mức khác.Editor có khả năngnhận dạng các ký tự

2.Text Editor.Người dùng có thể thao tác trực tiếp trên mức vị tự (graphemic)

chẳng hạn gõ trực tiếp các ký tự tại vị trí con trỏ (cursor) Điều này mang lại mộtgiá trị và lợi ích rất lớn trong các ứng dụng.Người dùng không thể tác động lêncác chi tiết khuôn dạng của ký tự ,nhưng việc mã hoá các chuỗi ký tự một cách tincậy sẽ làm cho Editor trở nên tiện ích hơn.Ví dụ như việc thay đổi kích thước ,fonthoặc màu, độ rộng của một cột nào đó

3.NL-Menu.Người dùng có thể thao tác trực tiếp ở mức cú pháp bằng cách chọn

từ một danh sách những từ (words) hoặc cụm từ (phrase) cho phép mở rộng câuhiện tại (current sentence).Bằng cách này người dùng có thể không được phépthao tác trực tiếp trên những chuỗi kư tự nhưng các cấu trúc ngôn ngữ (linguisticstructure) được mã hoá theo những cách tin cậy từ một miền nhỏ của ngôn ngữ(sub-language) mà editor có thể parse (ngắt khúc và phân tích ) các chương chình

có thể đưa ra được những thông tin đáng tin cậy về mặt ý nghĩa (meaning)

4 WYSIWYM Editing Người dùng có thể thao tác ở mức ngữ nghĩa hay tri thức

-controls the semantic(or knowledge) level bằng việc chọn ra các khái niệm mởrộng (conceptual exetensions) của nghĩa hiện tại (current meaning) từ một pop-upmenu.Toàn bộ các đặc trưng khác đều được trình bày sẵn do đó người dùngkhông thể thao tác trực tiếp trên các từ vựng (wording).Chương trình sẽ không làmnhiệm vụ phân tích (parsing) hoặc dịch các đặc trưng nào vì đây là mức cao nhất(higest level-knowledge) nên người dùng có thể điều khiển trực tiếp mà khôngcần các đặc trưng phải được thông dịch (interpreted features)

2.3.2 Kiến trúc WYSIWYM

Thông thường có hai cách để xây dựng một cơ sở tri thức (KB) bằng các ngônngữ lệnh hoặc bằng việc thao tác trực tiếp WYSIWYM (What You See Is WhatYou Meant) là một kỹ thuật mới trong việc tạo ra và biểu diễn tri thức bằng cáchtương tác với một văn bản hồi đáp dạng ngôn ngữ tự nhiên(NL feedbacktext),trong mỗi đoạn feedback text có chứa hai loại tri thức,một loại được cố địnhsẵn và một loại có thể có nhiều lựa chọn cho quá trình mở rộng văn bản

Trang 15

Nhiều ứng dụng trí tuệ nhân tạo yêu cầu các thông tin phải được diễn đạt dướidạng những biểu diễn tri thức đã được hình thức hoá.Hệ chuyên gia là một ví dụđiển hình,ngoài ra có các hệ thống sinh văn bản ,chúng đều được mã hoá các địnhdạng thiết kế.Do đó với các công cụ hiện có thì việc xây dựng các cơ sở tri thứcđều phải được tiến hành bởi các kỹ sư tri thức những người đã rất quen thuộc vớicác tri thức đã được hình thức hóa.Trong khi đó WYSIWYM editing cho phépcác chuyên gia lĩnh vực (domain expert) có khả năng tạo ra và duy trì các mô hìnhtri thức ( bao gồm cơ sở tri thức-knowledge base,cơ sở dữ liệu –database và các

mô hình lĩnh vực-domain models ) bằng các tri thức trực tiếp với một ưu điểm là

sử dụng cơ chế phản hồi bằng ngôn ngữ tự nhiên đối với người dùng.VớiWYSIWYM editing mỗi tác động lên những kết quả của mô hình được biểu diễnbằng ngôn ngữ tự nhiên sẽ cho thấy trạng thái hiện tại (current location) của môhình.Các mô tả dạng văn bản (text)cũng bao gồm các thông tin rất rõ ràng về phầncòn lại của mô hình chưa được hoàn thành.Bằng cách này các kỹ thuật sinh vănbản (text) được sử dụng sao cho các dữ liệu đầu vào phức tạp được biểu diễn theonhững cách dễ hiểu và dễ thực hành nhất WYSIWYM editing thực sự là một công

cụ mạnh đối với nhiều lĩnh vực và có nhiều hứa hẹn trong tương lai bao gồmnhững khả năng mà các cách biểu diễn tri thức truyền thống không có.Ví dụ việcthiết kế các hệ thống trả lời truy vấn (QA System) và thiết kế giao diện đối với cáctrang bị kỹ thuật phức tạp

Hình 2.3:Mô hình kiến trúc của WYSIWYM

Ý tưởng cơ bản của WYSIWYM editing là cung cấp một giao diện cho một cơ

sở tri thức(KB) để nó có thể dễ dàng sử dụng đối với người dùng bình thường cóthể là một chuyên gia lĩnh vực khác không cần có kiến thức chuyên môn về biểu

Trang 16

diễn cơ sở tri thức.Các chuyên gia lĩnh vực sẽ thao tác với các feedback text.Feedback text là một khuôn dạng văn bản được hệ thống sinh ra có chứa cácanchor( liên kết) ,các anchor( liên kết) này là những vị trí mà tại đó văn bản có thểđược mở rộng.Mỗi anchor( liên kết) sẽ được kết hợp với một pop-up menu chứacác nội dung mở rộng có thể của văn bản.Cơ sở của quá trình mở rộng văn bản làthao tác lựa chọn giá trị mới trong pop-up menu của người dùng,một đoạnfeedback text mới sẽ được sinh ra từ nội dung mới của cơ sở tri thức Mỗifeedback text có hai chức năng: thứ nhất là đưa ra các biểu diễn tri thức đã được

cố định sẵn,hai là đưa ra các biểu diễn tri thức có thể tùy chọn.Các tùy chọn nàyđược đánh dấu bởi các anchor( liên kết).Bằng việc nhấn vào các anchor( liên kết)người dùng sẽ nhận được một pop-up menu có nhiều giá trị tuỳ chọn,người dùng

sẽ chọn lấy lựa chọn có ngữ nghĩa phù hợp với ý định Thuật ngữ WYSIWYMđược viết tắt từ What You See Is What You Meant(Những gì bạn thấy là những gìbạn hiểu) trong đó “What You See” biểu diễn một cơ sở tri thức(KB) mà ngườidùng đã tạo ra bởi các quyết định mang tính chất ngữ nghĩa(“What You Meant”)

Hình 2.4 : Mô hình hoạt động của một hệ thống WYSIWYM

Hình 2.4 minh hoạ ý tưởng cơ bản của cách thức hoạt động của mô hình giaodiện WYSIWYM editing Đây là một dạng đặc biệt của văn bản (text) ngôn ngữ tựnhiên được sinh ra để biểu diễn cấu hình hiện thời của mô hình văn bản.Như đã đềcập ở trên loại văn bản này có chứa nhiều cụm từ gọi là anchor( liên kết) nơi màcác khái niệm mới,các đối tượng mới sẽ được thêm vào Đối tượng có chứa cácthuộc tính,khi lựa chọn các thuộc tính mới của đối tượng từ pop-up menu văn bảnmới được sinh có cấu hình thay đổi sẽ bao gồm cả đối tượng và các thuộc tính của

nó, có nhiều thông tin hơn về đối tượng được đưa vào văn bản,càng nhiều thôngtin về đối tượng được đưa vào thì đoạn văn bản sinh ra sẽ càng dài do quá trình mởrộng tăng lên

2.3.3.Các thành phần cơ bản của một hệ thống WYSIWYM editing

Một hệ thống WYSIWYM editing thường có ba bộ phận (component) sau:

 Một module có nhiệm vụ xây dựng và duy trì cơ sở tri thức ( knowledgebase).Phần này gồm có một T-box (hay từ vựng-terminology) sẽ định nghĩa

Trang 17

(defines) các khái niệm (concepts) và các mối quan hệ (relation) từ đó kếthợp chúng lại thành những khẳng định (assertions) trong cơ sở tri thức gọi

là A-box (Assertions) đuợc hình thức hoá

 Một bộ sinh ngôn ngữ tự nhiên (Natural language generators) sinh ra cácvăn bản đầu ra (output texts) từ một cơ sở tri thức đầy đủ (completeknowledge base),generator này sẽ sinh ra các feedback texts từ bất cứ trạngthái nào của cơ sở tri thức

 Một giao diện người dùng thể hiện quá trình tương tác giữa người dùng vớicác feedback text và kết quả (output) mà hệ thống đưa ra.Các feedback text

sẽ bao gồm hai thành phần ,một thành phần có tính mouse-sensitive gọi làanchor( liên kết) nơi người dùng (author) có thể đưa ra các quyết định lựachọn căn cứ vào ngữ nghĩa của nội dung feedback text,các lựa chọn này sẽđược thực hiện thông qua một list hữu hạn các khái niệm (member) từ pop-

up menu

Có một yêu cầu cần thiết đối với kỹ thuật WYSIWYM editing là các nội dung củacác feedback text cần phải được diễn đạt rõ ràng, điều này đòi hỏi tính chặt chẽ vàchính xác,logic về mặt nội dung của cơ sở tri thức

Hệ thống WYSIWYM editing cho phép các chuyên gia lĩnh vực (domain expert)thoải mái hơn khi làm việc với các ứng dụng liên quan đến CSDL

Với những ưu điểm đó WYSIWYM editing được lựa chọn để xây dựng giao diệnphản hồi ngôn ngữ tự nhiên trong các hệ thống hỏi đáp ngôn ngữ tự nhiên.Nộidung ứng dụng của kỹ thuật này sẽ được trình bày tiếp trong phần sau

Trang 18

PHẦN 3: HỆ THỐNG HỎI ĐÁP NGÔN NGỮ TỰ NHIÊN

Dẫn nhâp:phần này sẽ giới thiệu mô hình của hệ thống hỏi đáp ngôn ngữ tự

nhiên, đồng thời phân tích chức năng và hoạt động của hệ thống từ đó xác định những vấn đề nằm trong nội dung của hệ thống có liên quan đến đề tài

và chọn ra module có thể áp dụng cài đặt thử nghiệm chương trình mô phỏng giao diện ngôn ngữ người dùng với cơ chế phản hồi ngôn ngữ tự nhiên,phân định phần công việc để đưa ra nhiệm vụ của bài toán cần giải quyết

3.1.Các hệ thống truy vấn cơ sở dữ liệu

Vì nội dung của đề tài đề cập đến có 2 phần là tìm hiểu kỹ thuật và xây dựngchương trình mô phỏng giao diện người dùng với cơ chế phản hồi ngôn ngữ tựnhiên nên phần chương trình tuy không phải là ứng dụng cụ thể song nó cũng phải

“hướng ứng dụng” tức là nó phải nằm trong một kiến trúc ứng dụng nào đó vàcung cấp những chức năng nhất định trong kiến trúc của toàn bộ hệ thống đó.Vớitính cách là một giao diện tức là một đối tượng trung gian giữa người dùng và máytính thì giống như mọi giao diện người dùng khác giao diện phản hồi ngôn ngữ tựnhiên cũng làm nhiệm vụ nhận những tác động của người dùng và chuyển ngượctrở lại cho họ những thông tin cần thiết Đây là một quá trình hỏi đáp được tiếnhành dưới nhiều hình thức dưới nhiều hình thức khác nhau,quá trình này thườngdiễn ra trong các hệ thống hỏi đáp truy vấn cơ sở dữ liệu

Hệ thống trả lời truy vấn (Question Answering System) áp dụng cho các lĩnhvực chuyên môn cụ thể hạn chế trong một phạm vi hẹp (restriceted domains) đượcthiết kế để đưa ra những câu trả lời từ những nguồn dữ liệu dạng phi cấu trúc(unstructured data-free text),dữ liệu bán cấu trúc(semi-structured data) hoặc dữliệu có cấu trúc(structured data-database)

Trang 19

Hình 3.1: Kiến trúc chung của một hệ QA

Những ứng dụng QA được quan tâm chủ yếu vào hai khía cạnh quan trọng.Thứnhất lĩnh vực áp dụng nên có quy mô đủ nhỏ và ổn định(không có quá nhiều biếnđộng về dữ liệu) cho phép có thể quản lý việc mô hình hóa các dữ liệu và tri thứcbằng các thuật ngữ(term) trong một cơ sở tri thức có cấu trúc( structuredknowledge base) và do đó có thể cung cấp được những thông tin từ một nguồnđáng tin cậy.Bất cứ khi nào mà những dữ liệu có cấu trúc có thể được khaithác,một đề xuất thông minh là nên xây dựng một ứng dụng QA dựa trên ngônngữ tự nhiên vì có nhiều ưu điểm là dễ sử dụng mang tính thân thiện với ngườidùng Điều quan trong hơn là ứng dụng QA trong một lĩnh vực giới hạn (restricteddomain ) yêu cầu những kỹ thuật rất khác đối với các kỹ thuật được áp dụng tronglĩnh vực mở (open domain textual QA) Các câu hỏi là một nguồn thông tin cơ sở

để tìm ra câu trả lời.Việc phân tích cẩn thận và có chất lượng các câu hỏi là điềucực kỳ quan trọng đối với ứng dụng QA trong lĩnh vực hạn chế (domain-restrictedQA) Điều quan trọng nhất là khi chúng ta có nhu cầu cần trả lời các câu hỏi vàcác câu trả lời này được lấy từ những văn bản hay những cơ sở tri thức thì chúng

ta cần thông dịch ngữ nghĩa của các câu truy vấn sang dạng có thể kết nối vớinguồn tri thức của lĩnh vực đó để xử lý và rút ra các câu trả lời Phạm vi của đề tàinày quan tâm đến một cách tiếp cận trong việc trả lời truy vấn trong lĩnh vực giớihạn ( domain-restricted QA) từ nguồn dữ liệu có cấu trúc.Và các loại dữ liệu nóiđến đó nằm trong lĩnh vực y tế chẩn đoán, điều trị và chăm sóc sức khoẻ cho cácbệnh nhân ung thư

Trang 20

3.2.Giới thiệu về một hệ thống CLEF (CLEF system)

Trong số những ứng dụng cụ thể của các hệ thống hỏi đáp (question answeringsystem) Thuật ngữ CLEF (Clinical E-Sience Framework) là thuật ngữ dùng để chỉcác hệ thống ứng dụng trong lĩnh vực y tế hỗ trợ việc chăm sóc, điều trị sức khoẻcủa bệnh nhân,kết hợp với việc nghiên cứu các loại bệnh dựa trên thông tin đượclưu trữ về hồ sơ bệnh nhân

3.2.1.Ứng dụng của hệ thống

Hệ thống truy vấn CLEF được thiết kế để trả lời các truy vấn về các mẫu hồ sơ củabệnh nhân (patient record) trong kho dữ liệu.Đây là một hệ thống nhằm phát triểncác phương pháp chuẩn mực trong việc quản lý các thông tin y tế trong lĩnh vựcchăm sóc bệnh nhân đồng thời tích hợp các thông tin y tế vào trong các dự ánnghiên cứu sinh học.Hệ thống này cung cấp khả năng lưu trữ và tổ chức các hồ sơbệnh nhân một cách hiệu quả nhất.Nó kết hợp các thông tin này trong một hệthống quản lý tri thức hình thức ( formal knowledge management system) với mộte-Sience framework để người sử dụng có thể truy nhập thông tin từ cơ sở dữ liệuphục vụ cho mục đích của mình

Các kiểu câu hỏi mà hệ thống cung cấp là những truy vấn tập trung vào nhữngthuộc tính trọng tâm để đưa những kết quả tổng thể (aggregated result) Ví dụ

Số lượng cụ thể/tỷ lệ phần trăm thống kê của các bệnh nhân với một biểu hiện đặc trưng nào đó.

Các câu trả lời được đưa ra bằng truy vấn đối với CSDL,mà các truy vấn này cóthể được tách thành các truy vấn con đơn giản hơn.Do đó chúng không cần phảiyêu cầu có các suy diễn trên các bản ghi hồ sơ về bệnh nhân,tuy nhiên giao diệntruy vấn cũng có thể kết hợp với kỹ thuật khai phá dữ liệu để đưa ra được câu trảlời với những truy vấn quá phức tạp.Ví dụ

Với một điều kiện chắc chắn nào đó,cách điều trị nào mang lại nhiều thành công nhất cho các bệnh nhân với biểu hiện đặc trưng nào đó

Giao diện truy vấn cũng có thể được sử dụng để truy nhập vào các các thông tinmang tính cá nhân của người bệnh

Giao diện truy vấn được thiết kế cho những người dùng không chuyên hoặc cóhiểu biết thông thưòng về kiến thức tin học mà không đòi hỏi phải đào tạo chuyênsâu về tin học,tuy nhiên họ phải là người hiểu biết về các khái niệm liên quan đếnlưu trữ hồ sơ( không nhất thiết phải hiểu biết về cấu trúc dữ liệu thực sự và cách

mã hoá dữ liệu).Có ba loại đối tượng sử dụng chính(user) trong việc sử dụng hệgiao diện truy vấn CLEF để thu nhận thông tin từ kho dữ liệu về bệnh nhân

 Nhân viên y tế,những người sử dụng để hỗ trợ cho việc chẩn đoán hoặcđiều trị bệnh

 Các nhà nghiên cứu y học,họ sử dụng hệ thống để xác định các trường hợpđiển hình trong điều trị ,lựa chọn các bệnh nhân tham gia các thử nghiệm yhọc,quản lý những người tham gia những thử nghiệm y học này

 Nhà quản trị bệnh viện,họ thu thập những thông tin về điều trị,về các thínghiệm vv

Trang 21

Hệ thống truy vấn này được mong đợi sẽ mang lại nhiều tiện ích cho người sửdụng không có hoặc có rất ít kiến thức về SQL Chúng ta cũng thấy rằng đối vớinhững người thông thuộc ngôn ngữ SQL giao diện truy vấn bằng ngôn ngữ tựnhiên là một bước đi mang tính cải tiến và linh hoạt hơn so với chuẩn SQL.Chúng

ta cũng hy vọng rằng với những người không thông hiểu về các đồ thị mã hoá dữliệu y học sẽ cảm thấy dễ dàng hơn với những diễn đạt dưới dạng ngôn ngữ tựnhiên thay vì các mã hoá y học

3.2.2 Kiến trúc chung của hệ thống

Về mặt kỹ thuật thiết kế của hệ thống truy vấn CLEF gồm ba module chính là: Bộxây dựng truy vấn(Query Editor), bộ phân tích truy vấn(Query DecompositionComponent) và bảng kết quả(Result Consolidator )

Nhiệm vụ của module này là tạo ra các feedback text dạng ngôn ngữ tự nhiêntương tác với người dùng bằng cách cho phép họ cấu trúc một câu truy vấn nhờviệc lựa chọn các khái niệm cấu thành nội dung câu truy vấn Đây chính là phần

có sự tham gia xây dựng bằng các kỹ thuật WYSIWYM editing

Đây là một module đa thành phần nó thực hiện vai trò làm giao diện giữa Bộ xâydựng truy vấn (Query Editor) và Hệ quản trị cơ sở dữ liệu (DBMS)

Module này có hai nhiệm vụ là

a) Tách các yêu cầu phức tạp đa thành phần(complex multi-part request)-tức

là những câu có nhiều trường giá trị cần truy vấn của người dùng cuốithành tập các câu truy vấn nhỏ hơn có nội dung trọng tâm hơn (morefocused query)-tức là mỗi câu truy vấn con này sẽ hướng vào một trong sốcác trường giá trị được tách ra từ câu truy vấn lớn,có thể ánh xạ thành cáctruy vấn gốc(archetype)- ở đây được hiểu là các truy vấn SQL

b) Tái tổ hợp các kết quả của các truy vấn con thành một trả lời hoàn chỉnhđưa lại cho người dùng

Xét về mặt logic module này gồm có 2 module con là

Vai trò của module này là dịch nội dung của các truy vấn sang một dạngbiểu diễn có thể ánh xạ được sang các câu truy vấn cơ sở (archetype).Nóđược thực hiện bởi việc phân tích các biểu diễn ngữ nghĩa của các truyvấn sang các đối tượng Java.Ở mức quản trị cơ sở dữ liệu(DBMSlevel) ,việc tìm kiếm được thực hiện sử dụng các mã hoá của các kháiniệm y học ,bước đầu tiên trong quá trình tạo truy vấn là người dùng thếcác khái niệm y học bằng các chuỗi mã ký hiệu phù hợp.Các đối tượngJava sẽ tạo ra và gửi đến hệ quản trị CSDL và chuyển thành SQL

Vai trò của module này là nhận các phản hồi từ Hệ quản trị cơ sở dữliệu (DBMS) rồi cấu trúc lại thành một kết quả cho câu truy vấn tức thời,thực hiện việc định dạng và gửi lại cho giao diện người dùng để hiểnthị

Trang 22

Bảng kết quả (Result consolidator): là module nhận những định dạng trả

về từ feedback processor để hiển thị kết quả cho người dùng.Trong đề tàinày do chỉ xây dựng phần giao diện nên kết quả trả về không phải ở dạngngôn ngữ tự nhiên mà là ở dạng bảng

3.3.Giao diện CLEF

Trong điều kiện cho phép về thời gian và nguồn lực (con người,tài nguyên dữliệu thông tin) dựa trên sự thu thập các kiến thức về lĩnh vực y học cụ thể là cácthông tin về bệnh ung thư của người nghiên cứu nên nội dung của đề tài khôngnhằm mục đích xây dựng một ứng dụng vì các ứng dụng trong lĩnh vực y học đòihỏi phải có những tri thức mang tính chính xác chuyên môn cao mới có thể đưavào phục vụ các công việc trong thực tế, đề tài chỉ hướng tới việc nghiên cứu kỹthuật WYSIWYM editing một hướng tiếp cận mới trong lĩnh vực xử lý ngôn ngữ

tự nhiên.Những dữ liệu sử dụng trong bài toán (phạm vi của đề tài này) chỉ mangtính chất demo,minh hoạ cho việc cài đặt kỹ thuật WYSIWYM editing trong việcthiết kế giao diện người dùng bằng phản hồi ngôn ngữ tự nhiên nói đúng hơn làngôn ngữ tự nhiên hạn chế (phạm vi,miền bao quát của tập từ vựng rất hẹp)

Nội dung của công việc trước tiên là nghiên cứu các tri thức semantic) trong lĩnh vực y tế (clinical domain) trong trường hợp này là bệnh ungthư,từ đó xây dựng một cơ sở tri thức (chỉ mang tính chất minh hoạ nên cơ sở trithức này có phạm vi rất nhỏ) về các bệnh nhân ung Cơ sở tri thức này bao gồmquan hệ ngữ nghĩa (semantic) có tính chuyên môn (domain) giữa các trườnghợp,tình huống điều trị bệnh tức là các mối tương quan giữa các thông tin về bệnhnhân.Từ chỗ có được cơ sở tri thức (knowledge base) về thông tin bệnh nhân ta sẽđưa công cụ ngôn ngữ (language tools) vào cụ thể ở đây là các kỹ thuật vềWYSIWYM editing để tạo ra một giao diện (editing interface) có thể tương tácvới người dùng (author) thông qua ngôn ngữ tự nhiên hạn chế (quasi-naturallanguage).Quá trình triển khai việc thiết kế và cài đặt giao diện này cũng là quátrình nghiên cứu và làm sáng tỏ bản chất của kỹ thuật WYSIWYM editing mộthướng tiếp cận mới trong lĩnh vực xử lý ngôn ngữ tự nhiên.Thực chất công việc là

(knowledge-áp dụng kỹ thuật WYSIWYM editing một kỹ thuật giao diện người dùng (userinterface technique) kết hợp với kỹ thuật sinh ngôn ngữ tự nhiên (natural languagegeneration technology) cung cấp khả năng phản hồi để người dùng có thể tươngtác được với giao diện

3.3.1.Chức năng nhiệm vụ của giao diện CLEF

Giao diện truy vấn CLEF là một giao diện người dùng dạng form hỗ trợ choviệc xây dựng công thức (formulation) cho các câu hỏi và hiển thị các câu trả lời.Giao diện CLEF thuộc loại giao diện thao tác trực tiếp (direct-manipulationinterface) tức là nó cung cấp một cơ chế tương tác phản hồi (feedback) cho ngườidùng.Nó là một phần trong module đầu tiên của hệ thống CLEF (module Query-Editor).Như đã trình bày ở trên hệ thống CLEF.Hệ thống CLEF bao gồm một tậpcác mô hình thực hiện việc xây dựng,xử lý các câu hỏi kết nối với kho dữ liệu,tìmkiếm thông tin từ cơ sở dữ liệu đưa ra các câu trả lời cho người dùng Nó đượcthiết kế để cải thiện khả năng truy nhập vào các hồ sơ điện tử của các bệnh nhân

Trang 23

bằng cách đưa ra những khung nhìn về các hồ sơ bệnh một cách trực quanhơn.Các câu hỏi luôn xoay quanh chủ đề về thông tin của bệnh nhân,khả năngchẩn đoán và cách điều trị.Như vậy hệ thống bao gồm rất nhiều công đoạn khácnhau,giao diện CLEF chỉ làm công đoạn đầu tiên là xây dựng một tiến trình hộithoại (dialogue history) giữa người dùng (author)và hệ thống (CLEF system).Tiếntrình này sẽ tạo ra một kết quả đầu ra là một cấu trúc đặc trưng (feature structure)

có định dạng XML Đầu ra này sẽ được đưa vào công đoạn tiếp theo để xây dựngcác câu truy vấn cơ sở dữ liệu dạng SQL.Vì quá trình tương tác giữa người dùng

và hệ thống là quá trình hội thoại bằng ngôn ngữ tự nhiên nên người dùng dễ dàngcung cấp cho hệ thống những thông tin về bệnh nhân cần chuyển thành những điềukiện sử dụng cho các cấu trúc truy vấn SQL

Giống như mọi giao diện WYSIWYM (WYSIWYM interface )khác thì giaodiện CLEF cũng có những đặc điểm chung của giao diện WYSIWYM đó là:

Giao diện WYSIWYM biểu diễn nội dung của một cơ sở tri thức mà người sửdụng nó quan sát được các tri thức này thông qua các feedback text.Trong mỗi tìnhhuống tạo đầu vào cho một câu truy vấn (query editing), nội dung của cơ sở trithức sẽ là một dạng hoàn thiện (completed formal representation) của câu truy vấn

mà người dùng muốn tạo ra.Giao diện này sẽ trình bày cho người dùng các đoạntext dạng ngôn ngữ tự nhiên tương ứng với những câu truy vấn chưa hoàn thiện(incomplete query) và “hướng dẫn-guides” (ở đây ý muốn nói các nội dung ngữnghĩa mang tính tri thức chính là những chỉ dẫn đối với người dùng) họ có thể họthực hiện các tương tác (editing) phù hợp với nội dung feedback text đưa ra để hệthống tạo thành một truy vấn hoàn chỉnh (complete query).Khi các feedback text

đã được mở rộng hết mức thì phần đầu ra của giao diện sẽ tạo ra một cấu trúcthông tin đầy đủ để làm đầu vào cho một câu truy vấn hoàn chỉnh (completequery)

3.3.2.Mô hình hoá văn bản trả lời (Modeling feedback texts)

Về mặt biểu diễn thông tin về hồ sơ của bệnh nhân sẽ được tách thành các phầnnhỏ hơn đê thuận tiện hơn đối với người sử dụng trong quá trình thao tác tạo cáccâu hỏi.Thông tin về mỗi bệnh nhân được gọi chung là patient record sẽ đượcphân nhỏ thành 6 hạng mục thông tin nhỏ hơn về bệnh nhân

Demographic record (hồ sơ nhân khẩu): Các thông tin cá nhân như tên

tuổi,giới tính

Consult record :Thông tin về địa điểm,nơi khám bệnh và bác sĩ khám bệnh

Diagnosis record :Thông tin về quá trình chẩn đoán bệnh chẩn đoán bệnh

Medication record :Thông tin điều trị thuốc của bệnh nhân

Test result record :Thông tin về các xét nghiệm của bệnh nhân

Care plan record :Thông tin về kế hoạch điều trị của bệnh nhân

Mỗi một hạng mục như trên có thể được mở rộng trong quá trình tương tác vớingười dùng (author).Sở dĩ người sử dụng hệ thống được gọi là author vì quá trìnhtạo ra các thông tin về bệnh nhân là hoàn toàn do người sử dụng chủ động tạora,việc này đòi hỏi phải có những tri thức chuyên môn về lĩnh vực ung thư ở đâyauthor có thể là bác sĩ điều trị cho bệnh nhân chẳng hạn.Từ author nói nên rằng

Trang 24

người sử dụng chính là tác giả chủ thể của quá trình thao tác ngôn ngữ của hệthống-control language,nó thể hiện mức độ mà người dùng làm việc với một hệthống editing system là mức ngữ nghĩa (semantic) Đây chính là đặc trưng cơ bảnnổi bật nhất để phân biệt WYSIWYM editing với các kỹ thuật ngôn ngữ tự nhiênhay kỹ thuật về giao diện dạng form.

3.3.3.Cách thức tương tác giữa người dùng và giao diện CLEF

Dưới đây sẽ trình bày theo từng bước mô tả nội dung hoạt động tương tác giữangười dùng và giao diện CLEF (một giao diện WYSYWYM) để thấy được nhữngđặc điểm khác biệt giữa một giao diện WYSIWYM –WYSIWYM interface vớimột giao diện người dùng đồ hoạ -GUI thông thường

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)

Khi khởi tạo giao diện có dạng như hình 3.2 Phần text được đánh dấu bằngmàu đỏ là phần có khả năng tiếp tục được mở rộng tức là nội dung của nó sẽ được

Trang 25

thay thế bởi một nội dung mới.Ban đầu cụm từ some record để chỉ hồ sơ về thông

tin của một bệnh nhân nào đó.Như vậy để có thể tìm kiếm những thông tin liênquan đến bệnh nhân ta cần phải đưa ra được những thông tin cụ thể hơn về bệnhnhân đó,các thông tin này đã được phân loại theo sáu hạng mục như đã đề cập ởtrên.Sau khi lựa chọn từ danh sách các hạng mục ta sẽ có trạng thái mới như sau

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) Các cụm từ này đều có màu đỏ để phân biệt với các cụm từ khác trong đoạn textchứa nó ở khả năng mở rộng,trong kỹ thuật WYSIWYM editing chúng được gọi làmột anchor( liên kết).Mỗi anchor( liên kết) có thể là một tổ hợp của các sự kiện(events) hay đặc điểm (features) có cùng kiểu (same type) Đặc điểm của cácanchor( liên kết) là chúng có tính chất mouse-sensitive mỗi lần khi ta click chuộtvào chúng sẽ làm sổ ra một pop-up menu thể hiện khả năng mở rộng (possible

Trang 26

extension) của cơ sở tri thức tại điểm đó.Sau khi click chuột vào pop-up menu mộtfeedback text mới sẽ được sinh ra.

Quá trình mở rộng các feedback text (generate feedback text) là một quá trìnhkép theo hai chiều là chiều dọc (độ sâu ngữ nghĩa tăng dần) và chiều ngang (sốlượng thành phần mở rộng tăng dần).Sở dĩ nói như như trên là vì một đoạn text sẽdiễn đạt một câu dạng ngôn ngữ tự nhiên,mà ta biết các câu trong ngôn ngữ tựnhiên sẽ diễn đạt các sự kiện,các mối quan hệ giữa các đối tượng hoặc diễn đạttính chất, hành vi của các đối tượng này,quá trình sản sinh một câu bằng ngôn ngữ

tự nhiên bằng kỹ thuật WYSIWYM với xuất ban đầu là một đối tượng chẳng hạn

áp dụng vào trường hợp của bài toán này là đối tượng patient record ,ban đầuchưa có thông tin gì về đối tượng quá trình tạo ra thông tin cho đối tượng là quátrình bổ sung những tính chất đặc điểm ,các mối quan hệ có chứa những yếu tốliên quan đến đối tượng Rõ ràng các tính chất về đối tượng sẽ có nhiều mức độchi tiết khác nhau,thông tin về tính chất càng cụ thể thì độ sâu ngữ nghĩa càng tăng

và tính chất của đối tượng được mở rộng theo chiều sâu (chiều dọc),còn các mốiquan hệ và số lượng các đặc điểm tính chất của đối tượng cũng ngày một nhiều lên

do đó các bổ xung các quan hệ về đối tượng chính là quá trình mở rộng theo chiềungang.Vì các anchor( liên kết) giữ vai trò là các tổ hợp của các sự kiện hoặc cácđặc điểm cung cấp khả năng mở rộng cho câu cũng có hai loại anchor( liên kết)tương ứng với hai chiều mở rộng của feedback text là các anchor( liên kết) sự kiện(event) và các anchor( liên kết) đặc tả (feature).Quá trình mở rộng theo chiềungang thì anchor( liên kết) sự kiện sẽ được thay thế bằng nhiều anchor( liên kết)mới trong đoạn feedback text mới còn quá trình mở rộng theo chiều dọc thìanchor( liên kết) đặc tả sẽ được thay thế bằng một giá trị lựa chọn cho đặc tính mà

nó diễn đạt ban đầu

Quá trình mở rộng theo chiều ngang

Tương ứng với quá trình mở rộng theo chiều ngang là anchor( liên kết) sựkiện.Khi ta nhấn chuột vào anchor( liên kết) này sẽ làm hiện ra một pop-up menuchứa một lựa chọn duy nhất.Chẳng hạn click chuột vào anchor( liên kết)

demographic record thì pop-up menu sẽ đưa không đưa ra các thuộc tính đặc

trưng thay thế mà đưa ra một khả năng mở rộng duy nhất

Trang 27

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)

Ta nhấn chuột vào item demographic record trong pop-up menu thì feedback text mới sinh ra sẽ chứa 2 anchor( liên kết) mới là some patient và some gender

Trang 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)

Rõ ràng là quá trình mở rộng này là quá trình bổ xung các mối quan hệ củađối tượng,làm tăng thêm các yếu tố, thuộc tính của bệnh nhân như tên,giới tínhcủa bệnh nhân

Quá trình mở rộng theo chiều dọc

Khác với các anchor( liên kết) sự kiện khi ta nhấn chuột vào một anchor( liênkết) đặc tả (feature) pop-up menu hiện ra sẽ chứa nhiều các lựa chọn khácnhau.Trong pop-up menu này có chứa một danh sách các member cùng kiểu chẳng

hạn anchor( liên kết) some hospital sẽ chứa một danh sách tên các bệnh viện như

Trang 29

bệnh viện Tràng An,bệnh viện Thanh Nhàn.vv…(trong trường hợp này chỉ giớihạn ở bốn bệnh viện ).

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) Khi ta lựa chọn tên một bệnh viện từ danh sách hiển thị mà pop-up menu liệt kê

ví dụ bệnh viện Trang An thì anchor( liên kết) ban đầu đã kích hoạt danh sách trên

sẽ được thay thế bởi tên bệnh viện như minh hoạ dưới đây :

Trang 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)

Dễ nhận thấy tại vị trí cụm từ some hospital đã được thay thế bằng từ Trang An

hospital.Các anchor đặc tả (features) được thay thế bằng khái niệm nằm trong

danh sách của pop-up menu không có khả năng sinh ra anchor( liên kết) mới khifeedback text mới được hệ thống đưa ra,như vậy là các anchor( liên kết) đặc tả cómột điểm chung là khả năng mở rộng “một cấp” tức là chỉ được thay thế một lầnduy nhất

Trang 31

Hình thức mở rộng các feedback text

Về thực chất quá trình giao diện CLEF sản sinh ra các feedback text là quá trìnhthay thế các anchor( liên kết) này thành nhiều anchor( liên kết) khác hoặc một giátrị cụ thể (khái niệm kết thúc quá trình thay thế các anchor( liên kết).Rõ ràng làtrong quá trình này anchor( liên kết) ở vị trí hiện thời (current location) luôn nằmtrong một tiến trình mở rộng theo kiểu phân cấp dạng cây vì các anchor( liên kết)tiếp theo sinh ra từ anchor( liên kết) này là một khái niệm mức chi tiết ,cụ thể(instance) hơn hoặc có liên quan về nội dung với anchor( liên kết) trước nó trong

tiến trình mở rộng ví dụ trên đã chứng minh cho điều này vì Trang An hospital chính là một giá trị cụ thể (instance) của some hospital Quá trình mở rộng của

một anchor( liên kết) nằm trong một feedback text sẽ được tiến hành theo dạngđường đi trên một cây ngữ nghĩa như hình minh hoạ sau:

Trang 32

kết) khác là những anchor( liên kết) sự kiện vì các nút con của chúng là nhữnganchor( liên kết) tiếp tục có khả năng tiếp tục được mở rộng.

Nhìn trên hình thì quá trình mở rộng theo chiều ngang được minh hoạ là từ mộtanchor( liên kết) (nút cha) cùng lúc sẽ sinh ra nhiều anchor( liên kết) (các nút

con).Chữ AND thể hiện rằng và các nút con này sẽ cùng xuất hiện trong feedback

mới để thay thế cho anchor( liên kết) nút cha với ý nghĩa này một anchor( liên kết)

sự kiện được xem là một tổ hợp các anchor( liên kết) khác.Quá trình mở rộng theo

chiều dọc được minh hoạ trên hình vẽ với ý nghĩa của các toán tử OR là từ một

nút “cận lá” chỉ có khả năng thay thế bởi một trong các instance (tức là các nút lá

có màu nâu) và các nút lá đều có cùng một kiểu ngữ nghĩa kế thừa nút cha của

nó.Ví dụ Trang An hospital kế thừa nội dung ngữ nghĩa của anchor( liên kết) some hospital vì Trang An hospital là một bệnh viện cụ thể nó kế thừa mọi đặc tính của hospital và các khái niệm như Bach Mai hospital và Trang An hospital

là những khái niệm có cùng một kiểu,do đó some hospital được gọi là

anchor( liên kết) đặc tả (features)

Có một số đặc điểm đáng lưu ý là trong quá trình mở rộng các anchor( liên kết)

có xuất hiện 2 loại anchor( liên kết) màu đỏ và màu xanh ,mục đích của việcđánh dấu như vậy nhằm chỉ thị cho người dùng về các thông tin mà anchor( liênkết) sẽ mở rộng.Màu đỏ thể hiện tính chất bắt buộc (olibigatory) ví dụ anchor( liên

kết) some patient là một anchor( liên kết) có màu đỏ đòi hỏi người dùng phải lựa

chọn để xác định xem bệnh nhân mà người dùng muốn đưa ra thông tin là ngườinào.Các anchor( liên kết) màu xanh thể hiện tính không bắt buộc (optional) người

dùng có thể lựa chọn hoặc không lựa chọn.Ví đụ như anchor( liên kết) some day

trong mục thông tin về ngày kết thúc việc điều trị thuốc có thể không cần lựa chọn

vì rất có thể là việc này chưa kết thúc, ở thời điểm hiện tại bệnh nhân vẫn đangdùng thuốc

Một đặc trưng quan trọng thể hiện bản chất của kỹ thuật WYSIWYM xử lý ngônngữ tự nhiên dựa trên ngữ nghĩa là ở chỗ mọi thao tác của người dùng đều được tựđộng chỉ thị bằng các nội dung phản hồi của hệ thống qua các feedback text vàngười dùng căn cứ vào ngữ nghĩa của nó mà thao tác.Ví dụ khi người dùng lựachọn bệnh nhân tên là Vũ Minh Khoa thì họ tự hiểu người này là nam và trongmục giới tính họ phải chọn giới tính là male (nam).Trường hợp người dùng chọnnhầm là female(nữ) thì chương trình hỗ trợ toán tử cắt,họ có thể cắt lựa chọn vừarồi,tại vị trí chọn nhầm sẽ trở lại trạng thái anchor( liên kết) như khi chưa lựachọn

Khi các anchor( liên kết) được mở rộng hết mức tức là đến nút lá thì cácfeedback text sẽ không còn khả năng mở rộng được nữa và nó sẽ không còn chứacác anchor( liên kết).Giao diện sẽ có dạng như sau

Trang 33

<kb class = “record” root = “1” count = “55” tbox= “unknown” >

Trang 34

<object id= “1” name = “patient_record”>

<role name= “demographic_section” target= “2”/>

<role name= “consult_section” target = “3” />

<role name = “diagnosis_section” target = “4”/>

<role name = “medication_section” target= “5”/>

<role name = “test_result_record” target = “6”/>

<role name = “care_section” target= “7”/>

</object>

<object id= “2” name = “demographic_record”>

<role name = “pat” target = “8”/>

<role name = “gender” target= “9”/>

</object>

<object id = “8” name = “pt_Vu_Minh_khoa”/>

<object id = “9” name = “male”/>

<object id= “3” name =consult_record”>

<role name = “pat” target = “8”/>

<role name = “doc” target = “11”/>

<role name = “place” target = “12”/>

<role name = “time” target = “13”/>

</object>

<object id = “11” name = “dr_Ton_That_Tung”/>

<object id = “12” name = “hcu_Trang_An”/>

<object id = “13” name=“date”>

<role name = “day” target= “14”/>

<role name = “month” targer = “15”/>

<role name = “year” target= “16”/>

</object>

<object id = “14” name = “d2”/>

<object id = “15” name = “may”/>

<object id = “16” name = “y2006”/>

<object id = “4” name = “diagronsis_record”>

<role name = “pat” target = “8”/>

<role name = “diagnosis” target = “18”/>

<role name = “place” target = “19”/>

<role name = “time” target = “20”/>

</object>

<object id = “18” name = “ductal_carcinoma_in_situ”/>

<object id = “19” name = “hcu_Bach_Mai”/>

<object id = “20” name=“date”>

<role name = “day” target= “21”/>

<role name = “month” targer = “22”/>

<role name = “year” target= “23”/>

</object>

Trang 35

<object id = “21” name = “d2”/>

<object id = “15” name = “apr”/>

<object id = “23” name = “y2006”/>

<object id = “5” name = “medication_record”>

<role name = “start” target = “24”/>

<role name = “stop” target = “25”/>

</object>

<object id = “24” name = “medication_start”>

<role name = “pat” target = “8”/>

<role name = “medication” target = “27”/>

<role name = “time” target = “28”/>

</object>

<object id = “27” name = “medication_spec”>

<role name = “medicine” target = “29”/>

<role name = “quantity” target = “30”/>

<role name = “frequency” target = “31”/>

<role name = “day” target= “32”/>

<role name = “month” targer = “33”/>

<role name = “year” target= “34”/>

</object>

<object id = “32” name = “d3”/>

<object id = “33” name = “may”/>

<object id = “34” name = “y2005”/>

<object id = “24” name = “medication_stop”>

<role name = “pat” target = “8”/>

<role name = “medication” target = “36”/>

<role name = “time” target = “37”/>

</object>

<object id = “27” name = “medication_spec”>

<role name = “medicine” target = “38”/>

<role name = “quantity” target = “39”/>

<role name = “frequency” target = “40”/>

Trang 36

<role name = “month” targer = “42”/>

<role name = “year” target= “43”/>

</object>

<object id = “41” name = “d3”/>

<object id = “42” name = “nov”/>

<object id = “43” name = “y2005”/>

<object id = “6” name = “test_result_record”>

<role name = “pat” target = “8”/>

<role name = “amount” target = “45”/>

<role name = “substance” target = “46”/>

</object>

<object id = “45” name = “normal”/>

<object id = “39” name = “calcium”/>

<object id = “7” name=“care_record”>

<role name = “discuss_section” target= “47”/>

<role name = “decide_section” targer = “48”/>

</object>

<object id = “47” name = “discuss_event”>

<role name = “tumor” target = “49”/>

<role name = “team” target = “50”/>

<role name = “time” target = “51”/>

</object>

<object id = “49” name = “recurrent”/>

<object id = “50” name = “multidisciplinary”/>

<object id = “51” name = “date”/>

<role name = “day” target= “52”/>

<role name = “month” targer = “53”/>

<role name = “year” target= “54”/>

</object>

<object id = “52” name = “d3”/>

<object id = “53” name = “jul”/>

<object id = “54” name=“y2006”>

<object id = “48” name = “dicide_event”>

<role name = “care” target = “55”/>

mà là tạo ra đầu vào cho các module khác trong hệ thống CLEF đã trình bày ởtrên.Các module đó sẽ thực hiện những chức năng còn lại.Phần đầu ra của chương

Trang 37

trình minh hoạ đoạn cấu trúc tri thức (knowledge fragment) mà người dùng tạo ratrong quá trình tương tác với giao diện,cấu trúc này sẽ trở nên dễ hiểu khi nó đượcdiễn giải trong quá trình phân tích thiết kế chương trình ở PHẦN 4

Trang 38

PHẦN 4: XÂY DỰNG CHƯƠNG TRÌNH MÔ PHỎNG

GIAO DIỆN WYSIWYM

Dẫn nhập :Phần này sẽ trình bày những nội dung về thiết kế kiến trúc của giao diện với cơ phản hồi ngôn ngữ tự nhiên bằng kỹ thuật WYSIWYM và cách thức cài đặt cụ thể bằng các công cụ lập trình để giao diện có thể hoạt động là phần thành quả công việc đạt được

4.1.Phân tích thiết kế

Phần phân tích thiết có mục đích diễn giải nội dung xây dựng một giao diện ngônngữ tự nhiên cần xác định xem hệ thống bao gồm những thành phần và bộ phậnnào và các mối quan hệ giữa các bộ phận này ra sao

4.1.1.Phân tích chức năng

Giao diện ngôn ngữ tự nhiên với cơ chế phản hồi sử dụng kỹ thuật WYSIWYMđược gọi chung là giao diện WYSIWYM (WYSIWYM interface) là một sự kếthợp của giao diện dựa trên form và kỹ thuật xử lý ngôn ngữ tự nhiên do đó nó vừa

có đặc tính của giao diện dạng form vừa có những thành phần tham gia xử lý ngônngữ tự nhiên mà cụ thể là theo kỹ thuật WYSIWYM -kỹ thuật xây dựng giao diệndựa trên tri thức (based knowledge).Do có những đặc tính trên mà giao diệnWYSIWYM bao gồm 3 phần là thành phần giao diện người dùng API cung cấpcác đặc trưng đồ hoạ của một giao diện đồ hoạ người dùng(Graphic user interface-GUI) thông dụng như menu,frame vv và một thành phần khác là WYSIWYMengine dựa trên một Cơ sở tri thức (knowledge base) có nhiệm vụ sinh cácfeedback text (generates feedback text) dạng ngôn ngữ tự nhiên

Trang 39

Hình 4.1: Tiến trình hoạt động của giao diện WYSIWYM

Trong sơ đồ trên giao diện người dùng được người dùng (Author) kích hoạt sinh

ra một anchor( liên kết) khởi tạo từ anchor( liên kết) này người dùng sẽ lựa chọntiếp tạo ra các tác động trên giao diện.Giao diện sẽ gửi các message tới bộWYSIWYM engine,bộ sinh này sẽ tìm thông tin trong cơ sở tri thức rồi dựa trêncác luật để sinh ra các feedback text trả về cho giao diện.Quá trình này lăp đi lặplại cho đến khi người dùng dừng lại hoặc quá trình mở rộng các feedback text đãđạt hết mức

Cụ thể ta sẽ xây dựng giao diện WYSIWYM áp dụng cho lĩnh vực chăm sóc điềutrị bệnh nhân ung thư là giao diện CLEF đã giới thiệu ở PHẦN 3 như sau

4.1.2.Thiết kế cơ sở tri thức

4.1.2.1.Quan hệ ngữ nghĩa giữa các anchor( liên kết)

Như đã trình bày ở trên,quá trình “giao tiếp” giữa người dùng và hệ thống thôngqua giao diện thực chất là quá trình mở rộng các feedback text thông qua cácanchor( liên kết), đây là một tiến trình thay thế các anchor( liên kết) theo “chiềudọc” và theo chiều ngang,vì nội dung của các feedback text đều là những thông tintri thức cụ thể liên quan đến các bệnh nhân nên sự thay thế của các anchor( liênkết) này phải căn cứ trên ngữ nghĩa tức là những tri thức về lĩnh vực bệnh ung thư( cancer domain) mà nội dung của anchor( liên kết) đó thể hiện.Trước tiên để xâydựng được cơ sở tri thức phục vụ cho việc sinh các feedback text ta cần xác địnhcác anchor( liên kết) đồng thời xây dựng tương quan ngữ nghĩa giữa cácanchor( liên kết) tức là thiết kế tiến trình mở rộng feedback text.Căn cứ vào đó ta

có thể thấy được nội dung của các anchor( liên kết) và thứ tự thay thế cácanchor( liên kết) với nhau.Với ý nghĩa

Trang 40

Trước tiên ta bắt đầu với feedback text đầu tiên cũng là một anchor( liên kết) làsome record.Từ anchor( liên kết) này trong tiến trình mở rộng sẽ xuất hiện cácanchor( liên kết) khác có liên quan về mặt ngữ nghĩa với anchor( liên kết) này.Cácquan hệ ngữ nghĩa được biểu diễn dưới dạng cây,vì có sáu feedback text được kích

hoạt từ anchor( liên kết) đầu tiên là patient record nên sẽ có sáu cây mở rộng

tương ứng với 6 feedback text như sau

1.Cây mở rộng tương ứng với feedback text xuất phát từ anchor( liên kết) some

demographic (Cây số 1)

2.Cây mở rộng tương ứng với feedback text xuất phát từ anchor( liên kết) some

consult record (Cây số 2)

Some demographic record

and

Consult record

Some

patient Some doctor Some hospital Some date

and and and

Some day

Some month

Some yearand and

Ngày đăng: 25/04/2013, 21:11

HÌNH ẢNH LIÊN QUAN

Đồ thị trên xác định một cấu trúc tri thức (a set of assertion) sau (A-box(demographic_record u 1 ) - 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
th ị trên xác định một cấu trúc tri thức (a set of assertion) sau (A-box(demographic_record u 1 ) (Trang 58)
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 - 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
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 (Trang 59)
Hình 4.4:Mạng ngữ nghĩa A-box tương ứng với mô hình feedback text dạng 3 - 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
Hình 4.4 Mạng ngữ nghĩa A-box tương ứng với mô hình feedback text dạng 3 (Trang 60)
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 - 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
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 (Trang 62)
Đồ thị DAG biểu diễn cấu trúc A-box tương ứng với mẫu câu 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
th ị DAG biểu diễn cấu trúc A-box tương ứng với mẫu câu trên (Trang 65)

TỪ KHÓA LIÊN QUAN

TÀI LIỆU CÙNG NGƯỜI DÙNG

TÀI LIỆU LIÊN QUAN

🧩 Sản phẩm bạn có thể quan tâm

w