Khóa luận Xây dựng và làm giàu Ontology tiếng Việt chuyên ngành công nghệ thông tin

ĐẠI HỌC QUỐC GIA TP. HỒ CHÍ MINH  
TRƢỜNG ĐẠI HỌC CÔNG NGHỆ THÔNG TIN  
KHOA CÔNG NGHỆ PHẦN MỀM  
  
KHOÁ LUẬN TỐT NGHIỆP  
XÂY DỰNG VÀ LÀM GIÀU ONTOLOGY  
TIẾNG VIỆT CHUYÊN NGÀNH CÔNG  
NGHỆ THÔNG TIN  
Giảng viên hƣớng dẫn:  
Th.S HUỲNH NGỌC TÍN  
Sinh viên thực hiện:  
1. TRN CÔNG DANH  
2. NGUYN NGC KHÁNH LINH  
06520068  
06520252  
Lớp : CNPM01  
Khoá : 1  
TP. Hồ Chí Minh, tháng 3 năm 2011  
LỜI MỞ ĐẦU  
Ngày nay cùng với sự phát triển của internet thì dữ liệu của ngành công nghệ  
thông tin ngày càng gia tăng. Nhu cầu quản lý, chia sẻ, tìm kiếm thông tin trong  
ngành này cũng đƣợc đặt ra và đáp ứng một phần nhờ các công cụ tìm kiếm. Một số  
công cụ tìm kiếm nổi tiếng hiện nay nhƣ Google hay Yahoo đều có thể cho phép  
ngƣời dùng tìm kiếm dữ liệu có liên quan bằng cách nhập từ khóa và tìm những tài  
liệu có chứa từ khóa đó. Với phƣơng pháp tìm nhƣ vậy thì kết quả tìm kiếm đôi khi  
chẳng liên quan gì đến cái mà ngƣời dùng muốn tìm, vì các công cụ tìm kiếm này  
không hiu đƣợc ý nghĩa cần tìm. Việc tìm kiếm thông tin về từ khóa đã vậy thì việc  
trả lời những câu hỏi càng không thể đối với những công cụ tìm kiếm này.  
Muốn cho máy tính và con ngƣời có thể hiểu đƣợc ngữ nghĩa của từ hay câu  
thì chúng ta cần có một ontology hỗ trợ bên dƣới cho các công cụ này. Ontology  
giống nhƣ một cơ sở dữ liệu về một lĩnh vực cụ thể, nó mô tả mọi thứ trong lĩnh vực  
đó bao gồm cả định nghĩa những thuật ngữ, những tính chất của những đối tƣợng và  
quan hệ giữa chúng. Nó sẽ giúp cho máy tính có thể “hiểu” đƣợc ngữ nghĩa giống  
nhƣ con ngƣời, chia sẻ thông tin qua các hệ thống khác nhau.  
Với nguồn dữ liệu rất lớn trong ngành công nghệ thông tin hiện nay và sự  
phát triển của các trang web ngữ nghĩa (semantic web) thì việc xây dựng một  
ontology cho lĩnh vực công nghệ thông tin là một nhu cầu cần thiết. Đặc biệt là đối  
với ngôn ngữ tiếng Việt, vì vậy chúng em chọn đề tài “Xây dựng và làm giàu  
ontology tiếng Việt chuyên ngành công nghệ thông tin”, báo cáo này đƣợc chia  
thành 5 phần chính gồm:  
Chƣơng 1: Tng quan: Chƣơng này sẽ cho chúng ta thấy tổng quan vđề tài,  
trong đó có giới thiệu đề tài, giới hạn mục tiêu và phạm vi của đề tài, cho chúng ta  
biết đƣợc cái nhìn tổng quan vphƣơng pháp thực hiện đề tài và kết quả dự kiến thu  
đƣợc.  
GVHD: Th.S Huỳnh Ngọc Tín  
SVTH: Trần Công Danh & Nguyễn Ngọc Khánh Linh  
Chƣơng 2: Cơ sở lý thuyết: Phần này sẽ giải thích rõ vontology và cho  
chúng ta thấy tình hình nghiên cứu vontology hiện nay qua phần khảo sát các  
nghiên cứu có liên quan.  
Chƣơng 3: Xây dựng và làm giàu ontology tiếng Việt chuyên ngành công  
nghệ thông tin (ITVO): Phần này sẽ nêu chi tiết quá trình xây dựng ontology và đề  
xuất phƣơng pháp làm giàu.  
Chƣơng 4: Hiện thực hệ thống và đánh giá: Phần này sẽ nêu chi tiết quá trình  
xây dựng công cụ làm giàu ontology, thực nghiệm và đánh giá công cụ.  
Chƣơng 5: Kết luận và hƣớng phát triển: Chƣơng này sẽ tổng kết lại những  
kết quả đạt đƣợc và những hạn chế của đề tài, nêu ra hƣớng phát triển trong tƣơng  
lai.  
Ngoài ra, phần cuối của báo cáo sẽ nêu các tài liệu tham khảo và phụ lục.  
GVHD: Th.S Huỳnh Ngọc Tín  
SVTH: Trần Công Danh & Nguyễn Ngọc Khánh Linh  
LỜI CẢM ƠN  
Đầu tiên, chúng em xin gởi lời cảm ơn đến Thầy, Cô khoa Công nghệ phần  
mềm trƣờng Đại học Công nghệ thông tin đã tận tình dạy dỗ, dìu dắt chúng em suốt  
bốn năm đại học.  
Chúng em cảm ơn Thầy Huỳnh Ngọc Tín, ngƣời đã đƣa ra gợi ý về đề tài và  
tận tình hƣớng dẫn, giúp đỡ, động viên chúng em hoàn thành luận văn này.  
Chúng tôi cảm ơn các bạn Nguyễn Thanh Hoàng và Huỳnh Minh Đức đã  
giúp đỡ, đóng góp ý kiến cho chúng tôi trong quá trình cài đặt, thử nghiệm chƣơng  
trình.  
Cuối cùng, chúng con cảm ơn Ba, Mẹ và những ngƣời thân đã khích lệ, động  
viên chúng con trong thời gian học tập, nghiên cứu để có đƣợc thành quả nhƣ ngày  
nay.  
Mặc dù đã cố gắng rất nhiều nhƣng chắc chắn chúng em không thể tránh khỏi  
những sai sót, kính mong nhận đƣợc sự đóng góp của quý thầy cô và các bạn.  
Tháng 3 năm 2011  
Sinh viên  
Trần Công Danh - Nguyễn Ngọc Khánh Linh  
GVHD: Th.S Huỳnh Ngọc Tín  
SVTH: Trần Công Danh & Nguyễn Ngọc Khánh Linh  
NHẬN XÉT CỦA GIÁO VIÊN HƢỚNG DẪN  
..................................................................................................................................................  
..................................................................................................................................................  
..................................................................................................................................................  
..................................................................................................................................................  
..................................................................................................................................................  
..................................................................................................................................................  
..................................................................................................................................................  
..................................................................................................................................................  
..................................................................................................................................................  
..................................................................................................................................................  
..................................................................................................................................................  
..................................................................................................................................................  
..................................................................................................................................................  
..................................................................................................................................................  
..................................................................................................................................................  
..................................................................................................................................................  
..................................................................................................................................................  
..................................................................................................................................................  
Ngày…… tháng……năm 2011  
Ký tên  
GVHD: Th.S Huỳnh Ngọc Tín  
SVTH: Trần Công Danh & Nguyễn Ngọc Khánh Linh  
NHẬN XÉT CỦA GIÁO VIÊN PHẢN BIỆN  
..................................................................................................................................................  
..................................................................................................................................................  
..................................................................................................................................................  
..................................................................................................................................................  
..................................................................................................................................................  
..................................................................................................................................................  
..................................................................................................................................................  
..................................................................................................................................................  
..................................................................................................................................................  
..................................................................................................................................................  
..................................................................................................................................................  
..................................................................................................................................................  
..................................................................................................................................................  
..................................................................................................................................................  
..................................................................................................................................................  
..................................................................................................................................................  
..................................................................................................................................................  
Ngày…… tháng……năm 2011  
Ký tên  
GVHD: Th.S Huỳnh Ngọc Tín  
SVTH: Trần Công Danh & Nguyễn Ngọc Khánh Linh  
MC LC  
GVHD: Th.S Huỳnh Ngọc Tín  
SVTH: Trần Công Danh & Nguyễn Ngọc Khánh Linh  
GVHD: Th.S Huỳnh Ngọc Tín  
SVTH: Trần Công Danh & Nguyễn Ngọc Khánh Linh  
DANH MỤC HÌNH  
Hình 1 Cấu trúc lớp phân cấp .........................................................................................10  
Hình 2 Ràng buộc vthuộc tính .....................................................................................12  
Hình 3 Hình minh họa các tầng ngôn ngữ dùng trong ontology .................................14  
Hình 4 Giao diện protégé 3.4.4.......................................................................................24  
Hình 5 Các lớp chính trong ontology ITVO .................................................................28  
Hình 6 Các thuộc tính trong ontology ITVO ................................................................32  
Hình 7 Các quan hệ trong ontology ITVO ....................................................................33  
Hình 8 Mô hình phƣơng pháp làm giàu ontology ........................................................47  
Hình 9 Kiến trúc chƣơng trình làm giàu ontology ITVO............................................55  
Hình 10: Màn hình giới thiệu...........................................................................................60  
Hình 11: Màn hình thu thập tài liệu ................................................................................61  
Hình 12: Màn hình kết quả thu thập................................................................................62  
Hình 13: Màn hình kết quả phân lớp...............................................................................63  
Hình 14: Màn hình kết quả rút trích................................................................................64  
Hình 15: Màn hình cập nhật thành công.........................................................................65  
GVHD: Th.S Huỳnh Ngọc Tín  
SVTH: Trần Công Danh & Nguyễn Ngọc Khánh Linh  
1
CHƢƠNG 1: TNG QUAN  
1.1. Mở đầu  
Chƣơng này sẽ cho chúng ta thy tng quan về đề tài để trli cho vấn đề sao  
cn xây dựng đtài này, mc tiêu của đề tài là để phc vvà gii quyết vấn đề gì.  
Từ đó chúng em giới hn li phm vi và nhng yêu cầu cho đề tài. Cui cùng là  
phn dkiến kết quả đạt đƣợc sau khi thc hiện đề tài.  
1.2. Đặt vấn đề  
Ngày nay internet đã và đang là nguồn kiến thức vô tận mang lại nhiều lợi ích  
cho con ngƣời. Sự phát triển mạnh mẽ của nó kéo theo việc những kiến thức trong  
ngành công nghệ thông tin tăng lên nhanh chóng làm cho việc tra cứu kiến thức cần  
thiết trở nên khó khăn hơn. Với các công cụ tìm kiếm hiện nay nhƣ Google, Yahoo…  
chỉ giúp ngƣời dùng tìm đƣợc những tài liệu có chứa từ khóa. Từ đây ngƣời dùng phải  
tốn thời gian và công sức vào từng tài liệu để tìm đƣợc đúng thông tin mình cần mà có  
khi không tìm thấy hoặc tìm thấy thông tin sai lệch. Vấn đề đặt ra là làm sao để có  
đƣợc một công cụ tìm kiếm theo ngữ nghĩa, hiểu đƣợc và trả lời câu hỏi của ngƣời  
dùng bằng ngôn ngữ tự nhiên một cách thân thiện. Đặc biệt có thể tìm kiếm bằng tiếng  
Việt, nhu cầu mà hầu nhƣ rất ít công cụ hỗ trợ và kết quả còn hạn chế [1].  
Dùng Ontology là một giải pháp biểu diễn tri thức và chia sẻ thông tin mà cả hệ  
thống và con ngƣời có thể hiểu đƣợc. Ontology chứa những đặc tả rõ ràng của các khái  
niệm về một lĩnh vực và quan hệ giữa các khái niệm đó [2]. Nó đƣợc dụng trong trí tuệ  
nhân tạo, công nghệ Web ngữ nghĩa (Semantic Web), các hệ thống kỹ thuật, kỹ thuật  
phần mềm, sinh tin học và kiến trúc thông tin nhƣ là một hình thức biểu diễn tri thức về  
thế giới hoặc một số lĩnh vực cụ thể [3, 4, 5].  
Cùng với những nhu cầu đã nêu ở trên, giáo viên hƣớng dẫn đã gợi ý và đƣa ra  
đề tài: “Xây dựng và làm giàu ontology tiếng Việt chuyên ngành Công nghệ thông  
GVHD: Th.S Huỳnh Ngọc Tín  
SVTH: Trần Công Danh & Nguyễn Ngọc Khánh Linh  
     
2
tin. Chúng em nhn thấy đây là một đề tài thú vthiết thc nên quyết định chọn nó  
là đề tài cho khóa luận tốt nghiệp của mình.  
Đề tài này nhằm xây dựng một ontology là nền tảng cho những ứng dụng sau  
này nhƣ tìm kiếm thông tin tiếng Việt, hệ thống hỏi đáp tiếng Việt cho ngành công  
nghệ thông tin, hỗ trợ cho web ngữ nghĩa, giúp xác định thực thể có tên trong tài liệu  
công nghệ thông tin tiếng Việt. Ontology này có khả năng mở rộng cấu trúc và dữ liệu  
để phục vụ mục đích hỏi đáp của ngƣời dùng. Ngoài ra chúng em cũng sẽ xây dựng  
công cụ cho phép làm giàu ontology từ internet.  
1.3. Mc tiêu và phạm vi đề tài  
Mc tiêu: Xây dng ontology chuyên ngành công nghthông tin tiếng Vit phc  
vcho vic nhn din thc thcó tên, không tên và xác định quan hgia chúng  
trong tài liu công nghthông tin tiếng Vit, htrcho các ng dng, nghiên cu  
khác vxngữ nghĩa văn bản tiếng Vit chuyên ngành công nghthông tin.  
Phạm vi đề tài: Xây dng ontology tiếng Vit gii hạn trong lĩnh vực Công nghệ  
thông tin Information Technology Vietnamese Ontology (ITVO) nhằm lƣu trữ:  
Các khái niệm trong lĩnh vực Công nghệ thông tin và quan hệ giữa chúng.  
Thông tin các công ty, trƣờng học, tổ chức, hiệp hội, chuyên gia, các sự kiện  
trong ngành và quan hệ ngữ nghĩa giữa chúng.  
c chƣơng trình đào tạo Công nghệ thông tin.  
Nguồn dữ liệu: từ ComputingOntology của nhóm nghiên cứu thuộc ACM, trang  
Wikipedia tiếng Việt, website Bộ thông tin và truyền thông, một số website báo điện  
tử, các bài báo lĩnh vực công nghệ thông tin tiếng Việt, website các trƣờng có đào tạo  
ngành công nghệ thông tin trong nƣớc, tài liệu từ internet tìm đƣợc từ công cụ tìm kiếm  
nhƣ Google, Yahoo.  
GVHD: Th.S Huỳnh Ngọc Tín  
SVTH: Trần Công Danh & Nguyễn Ngọc Khánh Linh  
 
3
1.4. Phƣơng pháp và công cụ  
Xây dng và nhp dliu bng tay cho ontology dùng công cProtégé.  
Tìm kiếm dliệu để làm giàu ontology tinternet sdng API ca Google và  
Yahoo  
Dùng thuật toán SVM để phân loi tài liu công nghthông tin tiếng Vit  
Dùng công cch ttiếng Vit vnTokenizer.  
Rút trích các cá thttài liệu đã phân loại.  
Ngƣời dùng kim tra, chnh sa và lƣu vào ontology dùng API của Protégé.  
1.5. Kết qudkiến  
Kiến thức: Nắm đƣợc khái niệm, cấu trúc, mục đích, ứng dụng, cách xây dựng  
một ontology. Các công cụ hỗ trợ xây dựng ontology hiện nay và sử dụng ngôn ngữ  
Java để xây dựng công cụ làm giàu ontology (ITVO) bán tự động.  
Dữ liệu: Dự kiến nhập bằng tay đƣợc khoảng 1000 lớp, 100 quan hệ và 100 cá  
thể, làm giàu cá thể bán tự động đƣợc 1000 cá thể.  
1.6. Tng kết chƣơng  
Trong chƣơng này chúng em đã trình bày mục tiêu của việc nghiên cứu và xây  
dựng ontology hiện nay. Các ứng dụng của nó ngày càng đƣợc quan tâm và nó đã trở  
thành phần lõi” cho các nghiên cứu ứng dụng liên quan đến ngữ nghĩa, tri thức hơn là  
những dữ liệu thông thƣờng đƣợc lƣu trữ trong các hệ quản trị cơ sở dữ liệu. Từ đó nêu  
ra nguyên nhân chúng em chọn thực hiện đề tài “Xây dựng và làm giàu ontology  
tiếng Việt chuyên ngành Công nghệ thông tin” cho khóa luận tốt nghiệp của mình.  
Đề tài đƣợc giới hạn trong phạm vi và mục tiêu đã nêu trong chƣơng này.  
GVHD: Th.S Huỳnh Ngọc Tín  
SVTH: Trần Công Danh & Nguyễn Ngọc Khánh Linh  
     
4
CHƢƠNG 2: CƠ SỞ LÝ THUYT  
2.1. Mở đầu  
Ở chƣơng này chúng em sẽ trình bày chi tiết phần lý thuyết vontology. Cụ thể  
là gồm các phần nhƣ định nghĩa, sự cần thiết của ontology, thành phần, cách xây dựng  
một ontology và ngôn ngữ để xây dng nó.  
Ngoài ra, chúng em cũng trình bày về một số nghiên cứu có lên quan đến việc  
xây dựng và làm giàu ontology mà chúng em đã khảo sát. Đây sẽ là tài liệu tham khảo  
cho việc đề xuất ra phƣơng pháp làm giàu ontology ở chƣơng sau.  
2.2. Tng quan vontology  
2.2.1. Định nghĩa  
Trong triết học, từ ontology” tạm dịch là “bản thể học” đƣợc xuất phát từ tiếng  
Hy Lạp có nghĩa là bộ môn nghiên cứu vsự tồn tại (theo wikipedia). Hiện nay  
ontology đƣợc dùng trong nhiều lĩnh vực nhƣ khoa học máy tính, hệ thống kỹ thuật, kỹ  
thuật phần mềm, tin sinh học, khoa học thƣ viện, kiến trúc thông tin và các website ngữ  
nghĩa (Semantic web). Một số định nghĩa về ontology đƣợc sử dụng nhiều hiện nay  
gồm:  
Theo quan điểm triết học, bản thể học” ngành khoa học nghiên cứu về bản  
chất của sự vật, sự tồn tại hoặc những sự vật thực tế, cũng nhƣ các loại sự vật cơ  
bản và các mối quan hệ của chúng (wikipedia).  
Theo Gruber trong tài liệu [20], một ontology là một đặc tả rõ ràng của một sự  
trừu tƣợng hóa (An ontology is an explicit specification of a conceptualization).  
Theo John F.Sowa [46], một ontology có thể đƣợc đặc tả bởi một danh mục các  
loại đƣợc xác định hoặc không đƣợc xác định chỉ bằng những câu phát biểu  
bằng ngôn ngữ tự nhiên. Một ontology chính thức đƣợc xác định bởi một tập  
GVHD: Th.S Huỳnh Ngọc Tín  
SVTH: Trần Công Danh & Nguyễn Ngọc Khánh Linh  
       
5
hợp các tên khái niệm và loại quan hệ đƣợc tổ chức phân nhóm theo thứ tự cục  
bộ.  
Một ontology định nghĩa một tập từ vựng cho những nhà nghiên cứu sử dụng  
khi cần chia sẻ thông tin trong một lĩnh vực. Nó bao gồm những định nghĩa của  
các khái niệm cơ bản trong một lĩnh vực và mối quan hệ giữa chúng mà máy có  
thể hiểu đƣợc [2].  
Trong khoa học máy tính, một ontology là một mô hình dữ liệu biểu diễn một  
lĩnh vực và đƣợc sử dụng để suy luận về các đối tƣợng trong lĩnh vực đó và mối  
quan hệ giữa chúng [36].  
Tóm li, trong khoa hc máy tính có thhiu ontology gm nhng tri thc khái  
nim vmột lĩnh vực cthvà các mi quan hgia chúng. Mt ontology vmột lĩnh  
vc smô trõ ràng nhng thc th, khái nim, ràng buc, quan hngữ nghĩa thuộc  
lĩnh vực giúp con ngƣời và máy có thhiu và suy luận đƣợc theo ngữ nghĩa trong  
phạm vi lĩnh vực đó.  
2.2.2. Vì sao phi xây dng ontology?  
Ở phần trên, chúng em đã đề cập đến việc ontology đã và đang đƣợc sử dụng  
trong nhiều lĩnh vực, vậy ontology đƣợc sử dụng nhiều là vì:  
Để chia sẻ kiến thức chung giữa con ngƣời hoặc những tác tử phần mềm với  
nhau [20]. Nếu các hệ thống cùng chia sẻ chung một ontology bên dƣới thì dữ  
liệu do con ngƣời nhập vào tại hệ thống này sau khi đƣợc xử lý thông qua  
ontology có thể đƣợc tổng hợp, phân tích tại một hệ thống khác và cung cấp  
thông tin cho ngƣời sử dụng khác.  
Cho phép tái sử dụng kiến thức về một lĩnh vực. Sau khi xây dựng một ontology  
cho một lĩnh vực, những ngƣời khác có thể tái sử dụng và mở rộng, làm giàu  
GVHD: Th.S Huỳnh Ngọc Tín  
SVTH: Trần Công Danh & Nguyễn Ngọc Khánh Linh  
 
6
thêm cho nó. Hoặc cũng có thể tích hợp những ontology có sẵn để mô tả nhiều  
khái niệm thuộc một lĩnh vực nhỏ trong một ontology về một lĩnh vực lớn.  
Làm rõ ràng những giả định thuộc chuyên ngành. Việc sử dụng một ontology ở  
bên dƣới thay vì dùng ngôn ngữ lập trình sẽ giúp dễ dàng thay đổi những giả  
định thuộc chuyên ngành khi kiến thức về lĩnh vực này của chúng ta thay đổi.  
Nếu những giả định này đƣợc viết bằng ngôn ngữ lập trình thì sẽ gây khó hiểu  
và khó thay đổi, sửa chữa nhất là đối với những ngƣời không phải là chuyên gia  
lập trình.  
Có thể phân tích và suy luận kiến thức chuyên ngành vì những thuật ngữ, khái  
niệm cũng nhƣ các mối quan hệ giữa chúng đều đƣợc khai báo, đặc tả trong  
ontology với cấu trúc có thể suy luận đƣợc theo ngữ nghĩa. Cụ thể là do các khái  
niệm đƣợc lƣu dƣới cấu trúc cây phân cấp, tên của khái niệm và quan hệ là  
những từ và cụm từ có nghĩa biểu diễn cho những phát biểu có nghĩa.  
2.2.3. Thành phn ca ontology [37]  
Các lp (Classes) - Khái niệm  
Lớp là nhóm, tập hợp các đối tƣợng trừu tƣợng có thể chứa các cá thể,  
lớp khác hoặc cả hai. Các ontology biến đổi tuỳ thuộc vào cấu trúc và nội dung  
của nó: Một lớp có thể chứa các lớp con, có thể là một lớp tổng quan (chứa tất  
cả mọi thứ), có thể là lớp chỉ chứa những cá thể riêng lẻ. Các lớp đƣợc sắp xếp  
theo cấu trúc có thứ bậc, thông thƣờng một ontology có một lớp thông dụng  
nhất kiểu Thing ở trên đỉnh và các lớp con rất cụ thể ở phía dƣới cùng (theo  
Protégé 4 Tutorial).  
Lớp có thể có các ràng buộc (restrictions) cho các quan hệ của cá thể  
thuộc lớp đó, ví dụ nhƣ một Tác giả phải viết một hoc nhiều tác phẩm thì một  
GVHD: Th.S Huỳnh Ngọc Tín  
SVTH: Trần Công Danh & Nguyễn Ngọc Khánh Linh  
 
7
cá thể của tác giả phải có quan hệ “là tác giả của” với một hoặc nhiều cá thể của  
tác phẩm.  
Các cá thể (Individuals)  
Là những đối tƣợng đại diện thuộc một lớp cụ thể trong một lĩnh vực  
(domain). Mỗi cá thể có thể có các thuộc tính của lớp mà nó thể hiện và quan hệ  
với các cá thể khác theo ràng buộc của lớp. Những cá thể còn có thể đƣợc coi  
nhƣ là những trƣờng hợp của lớp. Trên thực tế một cá thể có thể có nhiều tên vì  
vậy có thể có trƣờng hợp nhiều cá thể có tên khác nhau nhƣng thực chất đều  
tham chiếu đến một cá thể thực sự. Ví dụ nhƣ lớp Quốc gia có 2 cá thể là Hoa  
Kì và Mỹ nhƣng thực tế đây là cùng chỉ một quốc gia nên chúng sẽ cùng tham  
chiếu đến một cá thể. Nói cách khác, 2 tên đó là chỉ cùng một cá thể và chỉ có 1  
cá thể đƣợc tạo ra để biểu diễn cho quốc gia đó.  
Các thuộc tính (Properties)  
Các đối tƣợng trong ontology có thể đƣợc mô tả thông qua việc khai báo  
các thuộc tính của chúng. Mỗi một thuộc tính đều có tên và giá trị của thuộc tính  
đó. Các thuộc tính đƣợc sử dụng để lƣu trữ các thông tin mà đối tƣợng có thể  
có. Ví dụ, đối với một cá thể của lớp ngƣời có thể có các thuộc tính: Họ_tên,  
ngày_sinh, quê_quán, số_cmnd…  
Giá trị của một thuộc tính có các kiểu thông thƣờng nhƣ String, int, float,  
date… và cũng có thể có các kiểu dữ liệu phức tạp nhƣ một cá thể khác chẳng  
hạn.  
Các mối quan hệ (Relations)  
Là thuộc tính để mô tả mối liên hệ giữa các đối tƣợng trong ontology.  
Một mối quan hệ là một thuộc tính có giá trị là một đối tƣợng nào đó trong  
ontology. Một đối tƣợng có thể có một hoặc nhiều quan hệ trong ontology bất  
GVHD: Th.S Huỳnh Ngọc Tín  
SVTH: Trần Công Danh & Nguyễn Ngọc Khánh Linh  
8
kể lớp của nó có quan hệ đó hay không, quan hệ của đối tƣợng phải tuân theo  
ràng buộc của lớp chứa đối tƣợng đó nếu có.  
dụ nhƣ một lớp Tác giả có quan hệ “nơi công tác hiện tại” với lớp Tổ  
chức. Quan hệ này có ràng buộc là một tác giả chỉ có một nơi công tác hiện tại,  
tức là một cá thể Tác giả chỉ có quan hệ với một cá thể của Tổ chức.  
2.2.4. Làm thế nào để xây dng mt ontology?  
a. Phƣơng pháp xây dựng mt ontology  
Hiện nay không có phƣơng pháp chuẩn nào cho việc xây dựng một ontology [2].  
Khi xây dựng ontology chúng ta nên dựa vào nhu cầu của ứng dụng sẽ sử dụng nó để  
thiết kế cho phù hợp.  
Quá trình xây dựng một ontology là một quá trình lặp, thƣờng bắt đầu bằng một  
phiên bản thô rồi sao đó xem xét, chỉnh sửa, lọc lại ontology phiên bản trƣớc và thêm  
vào các chi tiết.  
Những khái niệm trong ontology là những đối tƣợng thực tế hoặc logic phản ánh  
thế giới thực và những quan hệ trong ontology thƣờng là những động từ trong câu mô  
tả khái niệm trong lĩnh vực.  
Theo tài liệu [2] thì phƣơng pháp xây dựng ontology gồm các bƣớc:  
Bước 1: Xác định miền và phạm vi của ontology. Đây là bƣớc chúng ta nên  
làm trƣớc khi mun xây dựng một ontology. Trong một hệ thống có sử dụng ontology  
thì các yêu cầu đối với nó thƣờng là mô tả một lĩnh vực nào đó nhằm cung cấp cơ sở tri  
thức trong việc giải quyết những mục đích chuyên biệt. Để nhận diện chính xác những  
yêu cầu chúng ta cần phải trả lời một số câu hỏi nhƣ:  
Ontology cần mô tả lĩnh vực o?  
Ontology phục vụ cho mục đích chuyên biệt gì?  
GVHD: Th.S Huỳnh Ngọc Tín  
SVTH: Trần Công Danh & Nguyễn Ngọc Khánh Linh  
 
9
Cơ sở tri thức trong ontology sẽ trả lời những câu hỏi gì?  
Ontology nhằm vục vụ đối tƣợng nào?  
Ai là ngƣời sẽ xây dựng, quản trị ontology?  
Các câu trả lời có thể thay đổi ở mỗi bƣớc lặp trong quá trình xây dựng ontology  
tùy mục đích của ứng dụng hoặc có những tính năng cần bổ sung lúc đó. Trả lời các  
câu hỏi trên sẽ giúp giới hạn phạm vi thực sự của ontology cần mô tả và dự trù các kỹ  
thuật sẽ sử dụng trong quá trình phát triển. Ví dụ nhƣ ontology cần xây dựng có chức  
năng xử lý ngôn ngữ tự nhiên, ứng dụng dịch tài liệu tự động thì cần phải có kỹ thuật  
xác định từ đồng nghĩa.  
Sau khi đã phát thảo phạm vi ontology dựa trên việc trả lời những câu hỏi trên,  
chúng ta tiếp tục tinh chỉnh lại bằng cách trả lời các câu hỏi kiểm chứng khả năng  
(competency question):  
Ontology đã có đủ thông tin để trả lời cho các câu hỏi đƣợc quan tâm trên cơ sở  
tri thức hay không?  
Câu trả lời của hệ thống dựa trên cơ sở tri thức đã đáp ứng đƣợc mức độ, yêu  
cầu nào của ngƣời sử dụng?  
Các ràng buộc và quan hệ phức tạp trong miền quan tâm đã đƣợc biểu diễn hợp  
lý chƣa?  
Bước 2: Xem xét việc kế thừa các ontology có sẵn: đây là một công đoạn  
thƣờng hay sử dụng để giảm thiểu công sức xây dựng một ontology. Bằng cách kế thừa  
các ontology tƣơng tự có sẵn, ngƣời xây dựng có thể thêm hoặc bớt các lớp, quan hệ  
giữa các lớp, thực thể… để tinh chỉnh tùy theo mục đích của mình. Ngoài ra, việc sử  
dụng lại các ontology có sẵn cũng rất quan trọng khi cần sự tƣơng tác giữa các ứng  
dụng khác nhau vì các ứng dụng sẽ cần phải hiểu các lớp, thực thể, quan hệ… của nhau  
để thuận tiện trong việc trao đổi hoặc thống nhất thông tin.  
GVHD: Th.S Huỳnh Ngọc Tín  
SVTH: Trần Công Danh & Nguyễn Ngọc Khánh Linh  
10  
Bước 3: Liệt kê các thuật ngữ quan trọng trong ontology: Liệt kê tất cả các  
thuật ngữ xuất hiện trong miền quan tâm (có thể đồng nghĩa hoặc chồng nhau) nhƣ tên  
khái niệm, quan hệ, thuộc tính… Thông thƣờng, các thuật ngữ là danh từ sẽ trở thành  
các lớp, tính từ sẽ trở thành thuộc tính, còn động từ sẽ là quan hệ giữa các lớp.  
Bước 4: Xây dựng các lớp và cấu trúc lớp phân cấp: Định nghĩa các lớp từ một  
số thuật ngữ đã liệt kê trong bƣớc 3, sau đó xây dựng cấu trúc lớp phân cấp theo quan  
hệ lớp cha-lớp con. Lớp ở vị trí càng cao trong cấu trúc này sẽ có mức độ tổng quát  
càng cao. Vị trí đầu tiên thuộc về lớp gốc, tiếp theo là các lớp trung gian, và cuối cùng  
lớp lá. Lớp lá là lớp không thể triển khai đƣợc nữa và chỉ đƣợc biểu hiện bằng các  
thực thể.  
Hình 1: Cấu trúc lớp phân cấp  
Thực thể của lớp con “là-một” thực thể của lớp cha nó.  
Có nhiều hƣớng tiếp cận khác nhau cho vấn đề xây dựng cấu trúc lớp phân cấp nhƣ:  
Hƣớng xây dựng từ trên xuống (top-down): bắt đầu bằng các lớp có mức độ  
tổng quát cao nhất, sau đó triển khai dần đến lớp lá.  
GVHD: Th.S Huỳnh Ngọc Tín  
SVTH: Trần Công Danh & Nguyễn Ngọc Khánh Linh  
11  
Hƣớng xây dựng từ dưới lên (bottom-up): Ngƣợc với hƣớng xây dựng cấu trúc  
lớp phân cấp từ trên xuống, hƣớng này bắt đầu bằng việc xác định các lớp đƣợc  
cho là cụ thể nhất, sau đó tổng quát hóa đến khi đƣợc lớp gốc.  
ch kết hợp (combination): cách này kết hợp cả hai hƣớng xây dựng trên. Đầu  
tiên chọn các lớp nổi bật nhất trong miền quan tâm, sau đó tổng quát hóa và cụ  
thể hóa cho đến khi đƣợc cấu trúc mong muốn.  
Bước 5: Định nghĩa các thuộc tính và quan hệ cho lớp: các lớp tạo ra ở bƣớc 4  
chỉ mới là những tên gọi, tiếp theo chúng ta cần định nghĩa thuộc tính của lớp là các  
thông tin bên trong của lớp, mô tả một khía cạnh nào đó của lớp và đƣợc dùng để phân  
biệt với các lớp khác. Có hai loại: thuộc tính đơn (simple property) thuộc tính  
phức (complex property). Thuộc tính đơn là các giá trị đơn ví dụ: chuỗi, số,… còn  
thuộc tính phức có thể chứa hoặc tham khảo đến một đối tƣợng khác. Một lớp sẽ kế  
thừa toàn bộ các thuộc tính của tất cả các lớp cha của nó.  
Bước 6: Định nghĩa các ràng buộc về thuộc tính và quan hệ của lớp: Các ràng  
buộc (restrictions) giới hạn giá trị mà một thuộc tính có thể nhận. Hai ràng buộc quan  
trọng nhất đối với một thuộc tính là lượng số (cardinality) kiểu (type). Ràng buộc  
lƣợng số quy định số giá trị mà một thuộc tính có thể nhận. Hai giá trị thƣờng thấy của  
ràng buộc này là đơn trị (single) đa trị (multiple). Ràng buộc thứ hai là về kiểu, các  
kiểu mà một thuộc tính có thể nhận là: chuỗi, số, luận lý (Boolean), liệt kê và kiểu thực  
thể. Riêng kiểu thực thể có liên quan đến hai khái niệm gọi là: miền (domain) và  
khoảng (range). Khái niệm miền đƣợc dùng để chỉ lớp (hay các lớp) mà một thuộc  
tính thuộc v. Ví dụ nhƣ thuộc tính Tên là thuộc tính của lớp Tác gi, Trƣờng, Tổ chức  
nên miền của nó là 3 lớp này. Trong khi đó, khoảng chính là lớp (hay các lớp) làm kiểu  
cho giá trị thuộc tính kiểu thực thể. Ví dụ thuộc tính Nơi sinh của lớp Tác giả có thể có  
giá trị là một cá thể (kiểu thực thể) của một lớp Quốc gia nhƣ Mỹ.  
GVHD: Th.S Huỳnh Ngọc Tín  
SVTH: Trần Công Danh & Nguyễn Ngọc Khánh Linh  
12  
Hình 2: Ràng buộc vthuộc tính.  
Bước 7: Đây là bƣớc cuối cùng khép lại một vòng lặp xây dựng ontology. Việc  
chúng ta cần làm ở bƣớc này là tạo thực thể cho mỗi lớp và gán giá trị cho các thuộc  
tính.  
b. Ngôn ngữ để xây dng ontology:  
RDF: là mô hình dữ liệu mô tả các đối tƣợng và các mối quan hệ giữa chúng.  
Mô hình dữ liệu này dùng cú pháp của XML chỉ giúp cho thông tin đƣợc thể hiện ở  
dạng bộ ba theo đúng mô hình RDF chứ thông tin vẫn chƣa thể hiện gì về mặt ngữ  
nghĩa.  
dụ sau minh họa cho việc dùng RDF chỉ để biểu diễn dữ liệu [40]:  
<?xml version="1.0"?>  
<rdf:RDF  
xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#"  
xmlns:si="http://www.w3schools.com/rdf/">  
<rdf:Description rdf:about="http://www.w3schools.com">  
<si:title>W3Schools.com</si:title>  
<si:author>Jan Egil Refsnes</si:author>  
</rdf:Description>  
</rdf:RDF>  
RDF Schema: là một ngôn ngữ ontology cơ bản mô tả các thuộc tính (property)  
và các lớp (class) của đối tƣợng RDF. Nó đƣợc phát triển ở tầng trên của RDF cho nên  
GVHD: Th.S Huỳnh Ngọc Tín  
SVTH: Trần Công Danh & Nguyễn Ngọc Khánh Linh  
13  
bản thân RDF-Schema cũng chính là RDF. Nó đƣợc mở rộng từ RDF và bổ sung thêm  
các tập từ vựng để hỗ trợ cho việc xây dựng các ontology đƣợc dễ dàng để hình thành  
nên ngữ nghĩa cho thông tin, là cơ sở để xây dựng các công cụ tìm kiếm ngữ nghĩa.  
dụ sau cho thấy RDF Schema có thể biểu diễn đƣợc các lớp, thuộc tính của  
đối tƣợng RDF [41]:  
<?xml version="1.0"?>  
<rdf:RDF  
xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#"  
xmlns:rdfs="http://www.w3.org/2000/01/rdf-schema#"  
xml:base="http://www.animals.fake/animals#">  
<rdfs:Class rdf:ID="animal" />  
<rdfs:Class rdf:ID="horse">  
<rdfs:subClassOf rdf:resource="#animal"/>  
</rdfs:Class>  
</rdf:RDF>  
OWL: OWL là ngôn ngữ ontology khá mạnh, nó ra đời sau RDFS nên biết kế  
thừa những lợi thế của ngôn ngữ này đồng thời bổ sung thêm nhiều yếu tố giúp khắc  
phục đƣợc những hạn chế của RDFS.  
Sau đây là một ví dụ dùng OWL để biểu diễn ontology:  
<owl:Class rdf:ID="WineDescriptor" />  
<owl:Class rdf:ID="WineColor">  
<rdfs:subClassOf rdf:resource="#WineDescriptor" />  
...  
</owl:Class>  
Đoạn phía trên là ví dụ mô tả lớp và các lớp con của nó trong ontology.  
<owl:ObjectProperty rdf:ID="hasWineDescriptor">  
<rdfs:domain rdf:resource="#Wine" />  
<rdfs:range rdf:resource="#WineDescriptor" />  
</owl:ObjectProperty>  
<owl:ObjectProperty rdf:ID="hasColor">  
<rdfs:subPropertyOf rdf:resource="#hasWineDescriptor" />  
<rdfs:range rdf:resource="#WineColor" />  
GVHD: Th.S Huỳnh Ngọc Tín  
SVTH: Trần Công Danh & Nguyễn Ngọc Khánh Linh  
14  
...  
</owl:ObjectProperty>  
Đoạn này để mô tả các quan hệ trong ontology.  
Hình 3: Hình minh họa các tầng ngôn ngữ dùng trong ontology  
Nhìn vào hình trên chúng ta có thể thấy đƣợc 3 ngôn ngữ ontology trên đều sử  
dụng thƣ viện, cú pháp xuất phát từ XML và RDF là ngôn ngữ ở mức thấp nhất để mô  
tả một ontology. Trên nó là RDF Schema, là ngôn ngữ đã đƣợc bổ sung thêm một số  
thƣ viện để phù hợp với việc mô tả ontology. Và cuối cùng là OWL, ngôn ngữ mới  
nhất, và đầy đủ nhất để mô tả một ontology. DLP là viết tắt của Description Logic  
Programs là ngôn ngữ cục bộ để tích hợp những cơ sở tri thức đƣợc mô tả bằng  
GVHD: Th.S Huỳnh Ngọc Tín  
SVTH: Trần Công Danh & Nguyễn Ngọc Khánh Linh  
15  
Description Logic (DL) và Logic Programs (LP), nó đƣợc định nghĩa là một tập giao  
giữa việc biểu diễn OWL bằng DL và LP [38].  
OWL (Ontology Web Language)  
OWL là ngôn ngữ đƣợc phát triển mới nhất trong các ngôn ngữ ontology chuẩn  
đƣợc công nhận bởi World Wide Web Consortium (W3C) để thúc đẩy sphát triển của  
các web ngữ nghĩa (Semantec Web).  
OWL kế thừa từ DAML+OIL đƣợc phát triển bởi tổ chức W3C. Tên  
DAML+OIL là sự kết hợp giữa tên DAML-ONT (http://www.daml.org/2000/10/daml-  
Châu Âu đề xuất.  
OWL giúp tăng thêm yếu tố logic cho thông tin và khả năng phân loại, ràng  
buộc kiểu cũng nhƣ lƣợng số tƣơng đối mạnh. Là ngôn ngữ mô tả từ vựng phong phú  
để mô tả các thuộc tính và các lớp, các mối quan hệ giữa các lớp (nhƣ disjointness), số  
của giá trị (cardinality), tính tƣơng đƣơng (equality), định kiểu thuộc tính, đặc tính  
của thuộc tính (đối xứng). Một ví dvràng buộc kiểu và số lƣợng dùng OWL nhƣ  
sau:  
<owl:Class rdf:ID="Vintage">  
<rdfs:subClassOf>  
<owl:Restriction>  
<owl:onProperty rdf:resource="#hasVintageYear"/>  
<owl:cardinality  
rdf:datatype="&xsd;nonNegativeInteger">1</owl:cardinality>  
</owl:Restriction>  
</rdfs:subClassOf>  
</owl:Class>  
Ở ví dụ trên ta thấy lớp Vintage có quan hệ hasVintageYear và quan hệ này bị  
ràng buộc không đƣợc là số nguyên âm và chỉ cho phép có 1 giá trị.  
Một số cú pháp để khai báo các thành phần chính trong ontology dùng ngôn ngữ  
OWL nhƣ sau, các ví dụ tham khảo từ nguồn [39]:  
GVHD: Th.S Huỳnh Ngọc Tín  
SVTH: Trần Công Danh & Nguyễn Ngọc Khánh Linh  
16  
Đầu tiên, chúng ta cn phi khai báo các namespace để có thsdụng các thƣ vin  
cn thiết:  
<rdf:RDF  
xmlns:owl ="http://www.w3.org/2002/07/owl#"  
xmlns:rdf ="http://www.w3.org/1999/02/22-rdf-syntax-ns#"  
xmlns:rdfs="http://www.w3.org/2000/01/rdf-schema#"  
xmlns:xsd ="http://www.w3.org/2001/XMLSchema#">  
Để khai báo mt lp dùng th<owl:Class>, khai báo lp hin ti là lp con dùng  
th<rdfs:subClassOf>, khai báo mt cu trúc cây phân cp (taxonomic tree) nhƣ  
sau:  
<owl:Class rdf:ID="PotableLiquid">  
<rdfs:subClassOf rdf:resource="#ConsumableThing" />  
...  
</owl:Class>  
dkhai báo mt cá th:  
<Region rdf:ID="CentralCoastRegion" />  
Khai báo cá thể tên CentralCoastRegion là một cá thể của lớp Region  
Khai báo thuc tính gm nhng thchính sau: <owl:ObjectProperty> dùng để khai  
báo các quan h(là thuc tính có kiu giá trlà mt lp), <owl:DatatypeProperty>  
để khai báo thuc tính có kiu giá trị thông thƣờng, <rdfs:subPropertyOf> dùng để  
khai báo mt thuc tính là thuc tính con,<rdfs:domain> và <rdfs:range> dùng để  
khai báo domain và range cho thuc tính.  
Ví dcú pháp của DatatypeProperty trong đó thuộc tính tên là yearValue là  
thuc tính ca lp VintageYear và có giá trlà số nguyên dƣơng:  
<owl:Class rdf:ID="VintageYear" />  
<owl:DatatypeProperty rdf:ID="yearValue">  
<rdfs:domain rdf:resource="#VintageYear" />  
<rdfs:range rdf:resource="&xsd;positiveInteger"/>  
</owl:DatatypeProperty>  
GVHD: Th.S Huỳnh Ngọc Tín  
SVTH: Trần Công Danh & Nguyễn Ngọc Khánh Linh  
17  
dcú pháp của ObjectProperty trong đó lp Wine có quan hệ  
hasWineDescriptor vi lp WineDescriptor và quan hhasWineDescriptor có quan  
hcon là hasColor vi WineColor.  
<owl:Class rdf:ID="WineDescriptor" />  
<owl:Class rdf:ID="WineColor">  
<rdfs:subClassOf rdf:resource="#WineDescriptor" />  
...  
</owl:Class>  
<owl:ObjectProperty rdf:ID="hasWineDescriptor">  
<rdfs:domain rdf:resource="#Wine" />  
<rdfs:range rdf:resource="#WineDescriptor" />  
</owl:ObjectProperty>  
<owl:ObjectProperty rdf:ID="hasColor">  
<rdfs:subPropertyOf rdf:resource="#hasWineDescriptor" />  
<rdfs:range rdf:resource="#WineColor" />  
...  
</owl:ObjectProperty>  
Mt scác thẻ khác dùng để mô tvà khai báo các ràng buc có ththam kho  
thêm twebsite [39].  
Hiện nay có ba loại OWL : OWL Lite, OWL DL (description logic), và OWL Full.  
OWL Lite: hỗ trợ cho những ngƣời dùng chủ yếu cần sự phân lớp theo thứ bậc  
các ràng buộc đơn giản. Ví dụ: Trong khi nó hỗ trợ các ràng buộc về tập hợp, nó  
chỉ cho phép tập hợp giá trị của 0 hay 1. Điu này giúp OWL Lite dễ sử dụng và  
thực thi và việc cung cp các công cụ hỗ trợ OWL Lite dễ dàng hơn so với các bản  
khác nhƣng lại hạn chế trong việc diễn đạt.  
OWL DL (OWL Description Logic): hỗ trợ cho những ngƣời dùng cần cung cấp  
sự diễn đạt tối ƣu và đảm bảo tất cả các kết luận là có thể dự tính đƣợc và sẽ hoàn  
thành trong một thời gian nhất định. OWL DL bao gồm tất cả các cấu trúc của ngôn  
ngữ OWL, nhƣng chúng chỉ có thể đƣợc sử dụng với những hạn chế nào đó (Ví dụ:  
Trong khi một lớp có thể là một lớp con của rất nhiều lớp, một lớp không thể là một  
thể hiện của một lớp khác).  
GVHD: Th.S Huỳnh Ngọc Tín  
SVTH: Trần Công Danh & Nguyễn Ngọc Khánh Linh  
18  
OWL mất toàn bộ tính tƣơng thích với RDF. Thông thƣờng, một tài liệu RDF  
phải đƣợc mở rộng theo một số cách và bị giới hạn theo các cách khác trƣớc khi nó  
là một tài liệu OWL DL hợp lệ. Mọi tài liệu OWL DL hợp lệ là tài liệu RDF hợp lệ.  
OWL Full: sử dụng tất cả các từ vựng nền tảng (primitive) của ngôn ngữ OWL.  
Nó cho phép kết hợp tùy ý các từ vựng nền tảng với RDF và RDF Schema vì vậy nó  
tạo ra sự diễn đạt tối đa và tự do. Ví dụ, trong OWL Full, một lớp có thể đƣợc xem  
xét đồng thời nhƣ là một tập của các cá thể và nhƣ là một cá thể trong chính bản  
thân nó. OWL Full cho phép một ontology gia cố thêm ý nghĩa của các từ vng  
đƣợc định nghĩa trƣớc (RDF hoặc OWL) và hoàn toàn tƣơng thích với RDF. Ngôn  
ngữ này trở nên quá mạnh mẽ đến mức là không thể quyết định đƣợc (undecidable),  
ảnh hƣởng đến hỗ trợ lập luận đầy đủ hoặc hỗ trợ lập luận hiệu quả.  
Các phiên bản này tách biệt vcác tiện ích khác nhau, OWL Lite là phiên bản  
dễ hiểu nhất và phức tạp nhất là OWL Full. Việc lựa chọn ngôn ngữ con nào phù hợp  
nhất là phụ thuộc vào nhu cầu của mỗi ngƣời.  
Mối liên hệ giữa các ngôn ngữ con của OWL:  
Mọi ontology hợp lệ dựa trên OWL Lite đều là ontology hợp lệ trên OWL DL.  
Mọi ontology hợp lệ dựa trên OWL DL đều là ontology hợp lệ trên OWL Full.  
Mọi kết luận hợp lệ dựa trên OWL Lite đều là kết luận hợp lệ trên OWL DL.  
Mọi kết luận hợp lệ dựa trên OWL DL đều là kết luận hợp lệ trên OWL Full  
2.3. Kho sát các nghiên cu có liên quan  
2.3.1. Các nghiên cu trên thế gii  
a. TheComputingOntology [11]  
Đƣợc công bố năm 2005, ban đầu có tên là Ontology Project đƣợc xây dựng bởi  
một nhóm thuộc tổ chức ACM [10] nhằm biểu diễn kiến thức về máy tính và thông tin  
GVHD: Th.S Huỳnh Ngọc Tín  
SVTH: Trần Công Danh & Nguyễn Ngọc Khánh Linh  
   
19  
có quan hệ chặt chẽ theo quy tắc phục vụ cho việc nghiên cứu hay giảng dạy trong lĩnh  
vực liên quan tới tính toán, quản lý và xử lý thông tin. Công việc đƣợc hỗ trợ bởi tổ  
chức khoa học quốc gia Mỹ (National Science Foundation), ACM (Association for  
Computing Machinery), IEEE và Đại học Mở của Hà Lan (Open University of the  
Netherlands).  
Nguồn dữ liệu gồm: Tài liệu chƣơng trình đào tạo của các trƣờng đại học nhƣ:  
Lewis University, Villanova University… và những thuật ngữ quan trọng trong các  
môn học liên quan đến máy tính từ hệ thống phân lớp trên ACM (ACM Computing  
Classification System [13]). Đƣợc xây dựng dùng công cụ soạn thảo ontology là  
Protégé, đến nay đã có 6 phiên bản của ComputingOntology trên trang web chính thức  
của nó.  
Nhận xét: Xây dựng đƣợc một ontology vtính toán và thông tin hỗ trợ phát  
triển hệ thống tƣ vấn về chƣơng trình đào tạo, phát triển những chƣơng trình học mới,  
kiểm tra những chƣơng trình học đã có, làm rõ ràng các mối quan hệ giữa những môn  
học với nhau, phát triển những chƣơng trình gồm nhiều ngành học, đóng góp cho việc  
phân lớp trong nghiên cứu. Tuy nhiên, dữ liệu của ontology là tiếng Anh không thể  
phục vụ cho các nghiên cứu chuyên ngành công nghệ thông tin tiếng Việt.  
b. SwetoDBLP [12]  
Đƣợc xây dựng bởi nhóm tác giả từ khoa Khoa học máy tính của trƣờng Đại học  
Georgia, Mỹ. SwetoDblp [34] là một ontology có kích thƣớc lớn tập trung vào dữ liệu  
thông tin của các bài báo vkhoa học máy tính nhƣ: Tên, tác giả, nhà xuất bản… Dữ  
liệu chính của nó lấy từ cơ sở dữ liệu DBLP [16] (Digital Bibliography & Library Project) là  
cơ sở dữ liệu chỉ mục các bài báo khoa học trong lĩnh vực khoa học máy tính. Tính đến  
tháng 1/2011 DBLP chứa thông tin của 1, 5 triệu bài báo đƣợc đánh dấu chỉ mục thông  
qua việc phân tích danh sách các file đề mục (tables of contentsTOCs) của các hội  
nghị cũng nhƣ các tạp chí… Ngoài ra, còn có 3 nguồn dữ liệu khác đƣợc dùng để tạo  
GVHD: Th.S Huỳnh Ngọc Tín  
SVTH: Trần Công Danh & Nguyễn Ngọc Khánh Linh  
20  
SwetoDblp là danh sách các trƣờng đại học lấy từ Google có đƣờng dẫn nguồn là  
www.google.com/intl/en/universities.html đƣợc chỉnh sửa bằng tay lại cho phù hợp,  
danh sách các website của nhà xuất bản và danh sách các hội thảo đƣợc tạo bằng tay  
theo dữ liệu trong DBLP.  
Dữ liệu của SwetoDblp đƣợc lƣu trữ dùng định dạng RDF, sử dụng bộ từ vựng  
lƣợc đồ (schema-vocabulary) có sẵn nhƣ FOAF [17] và Dublin Core [18]. Việc tạo ra  
và cập nhật ontology đƣợc thực hiện dùng công cụ SAX-parser để chuyển dữ liệu dạng  
XML của DBLP sang RDF. Dữ liệu sẽ đƣợc cập nhật hàng tháng theo dữ liệu XML  
mới nhất từ DBLP và danh sách các trƣờng đại học, nhà xuất bản và hội thảo.  
SwetoDblp hiện đang đƣợc sử dụng để kiểm tra cho OptARQ, một cơ chế cho  
phép tối ƣu hóa câu truy vấn vào ontology dùng SPARQL [19]. Ngoài ra, ontology này  
còn đƣợc dùng để tìm kiếm các bài báo và chuyên gia, phân biệt, tránh sự nhập nhằng  
giữa tên các nhà nghiên cứu trong danh sách mail của DBWorld [33].  
Nhận xét: Ontology này nhƣ một thƣ viện điện tử với lƣợng thông tin lớn về các  
bài báo, không phục vụ cho việc tìm kiếm các khái niệm và thông tin trong ngành công  
nghệ thông tin.  
2.3.2. Các nghiên cu trong nƣớc  
a. Ontology for Vietnamese Language (OVL) Open version [7]  
Là một ontology tổng quát (Universal Ontology) đƣợc thực hiện bởi Nguyễn  
Tuấn Đăng, Võ Hoài An, Nguyễn Trí Phúc trƣờng Đại học Công nghệ Thông tin. Xây  
dựng trên phiên bản Protégé 3.4.3. Mục tiêu tác giả xây dựng ontology này là để đóng  
góp cho những nghiên cứu vxử lý ngôn ngữ tiếng Việt, xây dựng tri thức phổ quát  
trong nhiều lĩnh vực bằng tiếng Việt.  
Dữ liệu của ontology là dữ liệu tổng quát vcác lĩnh vực gồm 10 lĩnh vực chính  
theo các mục đƣợc lấy theo VNExpress nhƣ: Khoa học, Pháp luật, Chính trị, Kinh  
GVHD: Th.S Huỳnh Ngọc Tín  
SVTH: Trần Công Danh & Nguyễn Ngọc Khánh Linh  
 
21  
doanh, Thể thao, Văn hóa du lịch, Xã hội, Vi tính, Viễn thông, Ô tô xe máy. Ngoài ra  
còn lấy dữ liệu từ các nguồn nhƣ Wikipedia tiếng Việt, Yellow Page và nhiều website  
khác nhau liên quan đến các lĩnh vực trên [6].  
Nhận xét: Kết quả tạo ra đƣợc ontology gồm số lƣợng lớp là 2.543, số lƣợng cá  
thể là 10.024, với 312 ràng buộc và 87 thuộc tính thuộc nhiều lĩnh vực. Tuy nhiên, dữ  
liệu của ontology mang tính phổ quát, không tập trung vào một lĩnh vực (domain) cụ  
thể. Ví dụ nhƣ trong ngành Công nghệ thông tin không có chứa thông tin vnhững  
khái niệm, chuyên gia hay chƣơng trình đào tạo của ngành.  
b. Ontology khoa hc công ngh[4]  
Đƣợc thực hiện bởi Bộ môn Hệ thống thông tin của trƣờng Đại học Bách khoa  
Hà Nội. Hệ thống hỗ trợ tìm kiếm dựa trên từ khóa, cấu trúc dữ liệu lƣu trữ, tìm kiếm  
mở rộng dựa trên ngữ nghĩa và tri thức phục vụ cho việc quản lý tài liệu và thông tin  
trong lĩnh vực khoa học công nghệ. Nhằm giải quyết cho những yêu cầu đó tác giả đã  
đề xuất phƣơng pháp xây dựng một ontology chuyên ngành khoa học công nghệ để  
khai thác các suy diễn ngữ nghĩa.  
Những khái niệm đƣợc xây dựng dựa trên việc khảo sát nhu cầu quản lý thông  
tin tại phòng KHCN thuộc Đại học Bách Khoa Hà Nội, phòng KHCN thuộc sở Khoa  
học Công nghệ Thành Phố Hà Nội, sở Bƣu chính Viễn thông. Ngƣời bảo trì có thể là  
tác giả hoặc những ngƣời có quan tâm và có kiến thức vontology sẽ nâng cấp cập  
nhật thông tin khi có thay đổi.  
Với việc sdụng ontology này hệ thống ngoài việc dùng để tra cứu các đề tài,  
sản phẩm công nghệ, chuyên gia, tài liệu, giải pháp, công nghệ… thì còn có thể trả lời  
đƣợc những câu hỏi tổng hơp phân tích nhƣ: Có những đề tài nào thuộc lĩnh vực mà  
ngƣời dùng quan tâm? Đề tài nào dành đƣợc sự quan tâm nhiều nhất cũng nhƣ nhận  
định về giá trị, khả năng ứng dụng vào thực tiễn? Tài liệu đang đƣợc xem xét có những  
phiên bản nào, sự đánh giá của các độc giả đối với các phiên bản của tài liệu này nhƣ  
GVHD: Th.S Huỳnh Ngọc Tín  
SVTH: Trần Công Danh & Nguyễn Ngọc Khánh Linh  

Tải về để xem bản đầy đủ

pdf 102 trang yennguyen 07/01/2025 220
Bạn đang xem 30 trang mẫu của tài liệu "Khóa luận Xây dựng và làm giàu Ontology tiếng Việt chuyên ngành công nghệ thông tin", để tải tài liệu gốc về máy hãy click vào nút Download ở trên.

File đính kèm:

  • pdfkhoa_luan_xay_dung_va_lam_giau_ontology_tieng_viet_chuyen_ng.pdf