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
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.
Hà nội ngày 23 tháng 5 năm 2006
Sinh viên thực hiện
Nguyễn Trung Thành
Đồ án tốt nghiệp Nguyễn Trung Thành-HTTT-K46
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
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
Đồ án tốt nghiệp Nguyễn Trung Thành-HTTT-K46
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
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
Đồ án tốt nghiệp Nguyễn Trung Thành-HTTT-K46
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
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 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
Đồ án tốt nghiệp Nguyễn Trung Thành-HTTT-K46
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
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ị
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ự 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
Đồ án tốt nghiệp Nguyễn Trung Thành-HTTT-K46
5
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
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
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
Đồ án tốt nghiệp Nguyễn Trung Thành-HTTT-K46
6
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
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 ứ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 để 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ột giao 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 truy vấ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í đào tạo
Giao diện ngôn ngữ tự nhiên cho cơ sở dữ liệu (NL-interface) là một bộ phận
trung 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ác thô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ớm vào
khoảng những năm 1900 và được đề xuất biểu diễn ngôn ngữ tự nhiên bằng 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ình thứ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ữ
Đồ á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
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ới nhữ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ác má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ứu trong
các thập kỷ vừa qua đặc biệt là các ứng dụng trong những hệ thống thương mại tuy
nhiên những giao diện ngôn ngữ tự nhiên (NLI)thực sự có tính ứng dụng cao 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ưởng lắ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ến mộ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ên form.Tuy nhiên liệu đó có
phải là lý do chính đáng hay không ,hay chẳng lẽ giao diệ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ước tiê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ông
thườ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:
Đồ á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
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ễn trung
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ất
chung của giao diện ngôn ngữ tự nhiên (general-purpose NL) không liên
quan 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âu
truy 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 query
sang 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 hai
cô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 được mộ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 (mass
user) và được dựa trên NLF đã được thiết kế từ trường hợp đầu (first mode) cần
Đồ án tốt nghiệp Nguyễn Trung Thành-HTTT-K46
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
thự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
Rất nhiều các loại giao diện ngôn ngữ tự nhiên cho CSDL đã được phát triển trong
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ụng củ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ày thô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ình thườ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à đôi khi 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ông thể 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ệc hỏ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ệnh SQL.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ùng khô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ời gian( 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 ưu nhượ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 chi phí đà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ên cũ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ác nhà 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ải tiế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 trong tươ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ều
lĩ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 đạt
nhữ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âu SQL
Đồ án tốt nghiệp Nguyễn Trung Thành-HTTT-K46
10
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 ư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ứu
thê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ứu giao
diện ngôn ngữ tự nhiên muốn thu được thông tin từ nhiều mức khác nhau, đặc biệ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úng thườ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ợp nhữ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ức tạ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ên menu.Mặc dù ngày nay
có rất nhiều lỗi trong các hệ NLI nhưng những nhà nghiên cứ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ó ích trong 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 được vớ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ày thườ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ững ngôn ngữ truy
vấn hình thức,các giao diện dựa trên form và đồ hoạ thường không xả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ột cá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ện ngô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ường phả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ều nà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ều cô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ến trong
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 trong
nghiê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
Đồ án tốt nghiệp Nguyễn Trung Thành-HTTT-K46
11
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
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ền
thố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ện
bằ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ận
chí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 dựa trên ngữ nghĩa(semantic-oriented approach):theo
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ác
cấu trúc cú pháp (without building its syntactic structure).Bằng cách này cá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) cung
cấ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ật
WYSIWYM (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ừ (word
processor) 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ành mộ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ái niệm hay
một ý tưởng nào đó.Các bộ word processor cũng có thể cho phép tạo ra cá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 ký tự chẳng
Đồ án tốt nghiệp Nguyễn Trung Thành-HTTT-K46
12
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ạn.Nhìn một cách tổng thể thì có bốn mức thông tin khác nhau trong một tài liệu
(document).Mỗi mức có một đặc trưng tiêu biểu (characteristic feature)
• 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ức
nà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ùng
user 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 processor
các thao tác cơ bản mà người dùng có thể thực hiện được như chèn hoặc xoá
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ười
dù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ác
chuỗ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ười
dùng.Ví dụ các đặc trưng đồ hoạ trong một word processor,các đặc trưng nà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 đưa thêm
vào các đặc trưng đồ hoạ (kích thước,font chữ) để có thể in ra và hiển thị
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 nhau giữ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ữa chú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 đặ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áp
Đồ án tốt nghiệp Nguyễn Trung Thành-HTTT-K46
13
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
toàn bộ mang tính chất thể hiện trình bày (presentational).Người dùng có thể chọn
các thuật ngữ (term) nhưng không thể thao tác trực tiếp (control directly) lên chú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ột trình
soạn thảo ngôn ngữ tự nhiên (natural language editor) ta sẽ có bốn loại NL Editor
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ột
vă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án
tiế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ăng
nhậ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ột
giá 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ên cá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 tin cậ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 ,font hoặ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âu hiện
tại (current sentence).Bằng cách này người dùng có thể không được phép thao 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ữ (linguistic structure)
đượ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-up
menu.Toàn bộ các đặc trưng khác đều được trình bày sẵn do đó người dùng khô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àm nhiệ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ông cầ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ôn ngữ
lệnh hoặc bằng việc thao tác trực tiếp .WYSIWYM (What You See Is What You
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ách tương
tác với một văn bản hồi đáp dạng ngôn ngữ tự nhiên(NL feedback text),trong mỗi
đoạn feedback text có chứa hai loại tri thức,một loại được cố định sẵ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 .
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ưới
dạ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ụ
Đồ án tốt nghiệp Nguyễn Trung Thành-HTTT-K46
14
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
đ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 định
dạ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ới các tri
thức đã được hình thức hóa.Trong khi đó WYSIWYM editing cho phép các chuyên
gia lĩnh vực (domain expert) có khả năng tạo ra và duy trì các mô hình tri 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ới WYSIWYM editing mỗi
tác động lên những kết quả của mô hình được biểu diễn bằ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ần cò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ăn bả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 theo nhữ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ồm nhữ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ệc thiế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ác trang 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 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ác anchor( liên kết) ,các
Đồ án tốt nghiệp Nguyễn Trung Thành-HTTT-K46
15
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
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ứa cá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ạn feedback text mới sẽ được sinh ra
từ nội dung mới của cơ sở tri thức. Mỗi feedback 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ười dù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 giao
diệ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ác thuộ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ản mớ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ông tin 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 ( knowledge
base).Phần này gồm có một T-box (hay từ vựng-terminology) sẽ định nghĩa
(defines) các khái niệm (concepts) và các mối quan hệ (relation) từ đó kết
Đồ án tốt nghiệp Nguyễn Trung Thành-HTTT-K46
16
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ợ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ác văn
bản đầu ra (output texts) từ một cơ sở tri thức đầy đủ (complete knowledge
base),generator này sẽ sinh ra các feedback texts từ bất cứ trạng thá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ới
cá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ựa
chọ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ủa
cá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ện
phả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ội dung
ứng dụng của kỹ thuật này sẽ được trình bày tiếp trong phần sau.
Đồ án tốt nghiệp Nguyễn Trung Thành-HTTT-K46
17
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 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ựng
chươ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ới tí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áy tí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ược trở 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ến hà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ường diễ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ĩnh
vực chuyên môn cụ thể hạn chế trong một phạm vi hẹp (restriceted domains) được
thiế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).
Đồ án tốt nghiệp Nguyễn Trung Thành-HTTT-K46
18
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 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ức
bằng các thuật ngữ(term) trong một cơ sở tri thức có cấu trúc( structured knowledge
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 khai thá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ôn ngữ 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ười dùng. Điều quan trong hơn là
ứng dụng QA trong một lĩnh vực giới hạn (restricted domain ) 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 trong lĩ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ều cực kỳ quan trọng đối với
ứng dụng QA trong lĩnh vực hạn chế (domain-restricted QA). Đ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ới nguồ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ài nà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ới hạ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ác bệnh nhân ung thư.
3.2.Giới thiệu về một hệ thống CLEF (CLEF system)
Đồ án tốt nghiệp Nguyễn Trung Thành-HTTT-K46
19
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
Trong số những ứng dụng cụ thể của các hệ thống hỏi đáp (question answering
system) 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 được
lư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ủa
bệnh nhân (patient record) trong kho dữ liệu.Đây là một hệ thống nhằm phát triển
cá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ực
chă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ự án
nghiê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ột e-
Sience framework để người sử dụng có thể truy nhập thông tin từ cơ sở dữ liệu
phụ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ững
thuộ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ải yê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ện truy
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 tin
mang 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ên
sâ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 đến
lư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 y
họ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..
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ới
Đồ án tốt nghiệp Nguyễn Trung Thành-HTTT-K46
20
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
nhữ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 Decomposition
Component) và bảng kết quả(Result Consolidator )
Bộ xây dựng truy vấn(Query Editor)
Nhiệm vụ của module này là tạo ra các feedback text dạng ngôn ngữ tự nhiên
tươ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
Bộ phân tích truy vấn(Query Decomposition Component)
Đâ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ây
dự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ối thành
tập các câu truy vấn nhỏ hơn có nội dung trọng tâm hơn (more focused
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ác truy 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à
• Module phân tích truy vấn (Query decomposition module)
Vai trò của module này là dịch nội dung của các truy vấn sang một dạng
biể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 truy
vấn sang các đối tượng Java.Ở mức quản trị cơ sở dữ liệu(DBMS
level) ,việc tìm kiếm được thực hiện sử dụng các mã hoá của các khái
niệ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ượng
Java sẽ tạo ra và gửi đến hệ quản trị CSDL và chuyển thành SQL
• Bộ phản hồi(feedback processor)
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ển thị
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ài
Đồ án tốt nghiệp Nguyễn Trung Thành-HTTT-K46
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ày do chỉ xây dựng phần giao diện nên kết quả trả về không phải ở dạng
ngô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ác thô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ông nhằ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 đòi hỏ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ể đưa và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ỉ mang tính
chất demo,minh hoạ cho việc cài đặt kỹ thuật WYSIWYM editing trong việc thiế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 (knowledge-
semantic) trong lĩnh vực y tế (clinical domain) trong trường hợp này là bệnh ung
thư,từ đó xây dựng một cơ sở tri thức (chỉ mang tính chất minh hoạ nên cơ sở tri
thứ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ồm
quan hệ ngữ nghĩa (semantic) có tính chuyên môn (domain) giữa các trường
hợ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ệnh
nhâ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ác với
người dùng (author) thông qua ngôn ngữ tự nhiên hạn chế (quasi-natural
language).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ột
hướ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à
áp dụng kỹ thuật WYSIWYM editing một kỹ thuật giao diện người dùng (user
interface technique) kết hợp với kỹ thuật sinh ngôn ngữ tự nhiên (natural language
generation technology) cung cấp khả năng phản hồi để người dùng có thể tương tá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ợ cho
việ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-manipulation
interface) tức là nó cung cấp một cơ chế tương tác phản hồi (feedback) cho người
dù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ập
cá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ìm
kiế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ó được thiế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 bằng
cách đưa ra những khung nhìn về các hồ sơ bệnh một cách trực quan hơn.Các câu
hỏi luôn xoay quanh chủ đề về thông tin của bệnh nhân,khả năng chẩn đoán và cách
Đồ án tốt nghiệp Nguyễn Trung Thành-HTTT-K46
22
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
điều trị.Như vậy hệ thống bao gồm rất nhiều công đoạn khác nhau,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ội thoại (dialogue history)
giữa người dùng (author)và hệ thống (CLEF system).Tiến trì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ựng cá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àng cung 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ều kiệ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ì giao diệ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ình
huống tạo đầu vào cho một câu truy vấn (query editing), nội dung của cơ sở tri thứ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ạn text
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úc thông tin
đầy đủ để làm đầu vào cho một câu truy vấn hoàn chỉnh (complete query)
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ần
nhỏ 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ác
câu hỏi.Thông tin về mỗi bệnh nhân được gọi chung là patient record sẽ được phâ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ới
người dùng (author).Sở dĩ người sử dụng hệ thống được gọi là author vì quá trình
tạ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ạo
ra,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ư ở đây
author 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
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ản
Đồ án tốt nghiệp Nguyễn Trung Thành-HTTT-K46
23
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ổi bật nhất để phân biệt WYSIWYM editing với các kỹ thuật ngôn ngữ tự nhiên
hay 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ữa
ngườ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ới mộ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ằng mà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 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ên quan
đến bệnh nhân ta cần phải đưa ra được những thông tin cụ thể hơn về bệnh nhân
Đồ án tốt nghiệp Nguyễn Trung Thành-HTTT-K46
24
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
đó,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 text
chứ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ác
anchor( liên kết) là chúng có tính chất mouse-sensitive mỗi lần khi ta click chuột
vào chúng sẽ làm sổ ra một pop-up menu thể hiện khả năng mở rộng (possible
extension) của cơ sở tri thức tại điểm đó.Sau khi click chuột vào pop-up menu một
feedback text mới sẽ được sinh ra.
Đồ án tốt nghiệp Nguyễn Trung Thành-HTTT-K46
25