QUY TRÌNH XÂY DỰNG ONTOLOGY CHO DỮ LIỆU ĐỘNG

Một phần của tài liệu 28040_1712202001919457LVTranXuanTruong (Trang 54)

CHƢƠNG 1 NGHIÊN CỨU TỔNG QUAN

2.3. QUY TRÌNH XÂY DỰNG ONTOLOGY CHO DỮ LIỆU ĐỘNG

VẬT RỪNG

Thông tin về đồng vật rừng thành phố Đà Nẵng đã đƣợc tìm hiểu và tổng hợp ở mục Chƣơng 1, Mục 1.4. Việc xây dựng ontology cho dữ liệu động vật rừng tuân thủ theo quy trình phát triển Ontology, gồm 7 bƣớc đƣợc mơ tả chi tiết dƣới đây:

2.3.1. Bƣớc 1: Xác định lĩnh vực và phạm vi của Ontology

Lĩnh vực cần xây dựng ontology ở đây là thông tin liên quan đến các loài động vật rừng ở thành phố Đà Nẵng, mà cụ thể là xem xét các thông tin chi tiết về hình dáng, màu sắc, bộ phận cơ thể, tập tính sinh sống, thức ăn, cách săn mồi,… bên cạnh đó là thơng tin về giá trị khoa học, kinh tế, thông tin bảo tồn đa dạng sinh học.

Luận văn này sẽ chủ yếu tập trung vào xây dựng ontology cho một số lồi động vật q hiếm, mơ tả thơng tin về các lồi đó. Tri thức về động vật rừng thành phố Đà Nẵng đƣợc chia sẻ theo cách cho phép ngƣời dùng tìm đƣợc các lồi động vật.

2.3.2. Bƣớc 2: Xem xét việc kế thừa các ontology có sẵn

rất ít, một số nguồn ontology ở nƣớc ngồi, đã xây dựng bằng tiếng anh và cho phép khai thác nhƣng không cho phép kế thừa, phát triển. Bên cạnh đó, ontology về động vật tại Việt Nam vẫn chƣa có nghiên cứu và xây dựng.

Vì vậy, khơng có ontology sẵn có về động vật để kế thừa, yêu cầu phải nghiên cứu xây dựng từ đầu. Đây là một vấn đề trở ngại nhất đối với vấn đề nghiên cứu trong luận văn này.

2.3.3. Bƣớc 3: Liệt kê các thuật ngữ quan trọng

Ontology đƣợc xây dựng trên cơ sở các khái niệm trong một lĩnh vực cụ thể, vì vậy khi xây dựng ontology cần bắt đầu từ các thuật ngữ chuyên ngành để xây dựng thành các lớp trong ontology tƣơng ứng.

Danh sách một số thuật ngữ về động vật nhƣ sau:

Bảng 2.1. Một số thuật ngữ về động vật Động vật Có dây sống Khơng có dây sống Thú Linh trƣởng Lồi Máu nóng Máu lạnh Đẻ trứng Sinh con Lƣỡng cƣ Bị sát Chim Bay Có túi Gặm nhấm Có vú Mỏ vịt Cá Chim Ăn thịt …

Danh sách một số thuật ngữ về tập tính, sinh sản, thức ăn,… nhƣ sau:

Bảng 2.2. Thuật ngữ về tập tính, sinh sản, thức ăn,…

Thụ tinh trong Thụ tinh ngoài

Chi Lơng Lƣỡi Miệng Móng vuốt Mắt Đi Vây Xƣơng Cánh Tim Mang Bơi Bay Chạy Bò Đi Nhảy Lá Hoa

Quả Chồi non

Địa y Trọng lƣợng

Độ dài …

2.3.4. Bƣớc 4: Xác định các lớp và phân cấp của các lớp

Đây là một trong hai bƣớc quan trọng nhất của việc xây dựng một ontology. Bƣớc này đị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‖.

Xây dựng cấu trúc phân lớp cho dữ liệu động vật rừng thành phố Đà Nẵng thực hiện theo cấu trúc từ trên xuống, 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á, ví dụ phân cấp lớp động vật:

Hình 2.1. Lớp và phân cấp lớp động vật

2.3.5. Bƣớc 5: Xác định các thuộc tính

Từ danh sách một số thuật ngữ về tập tính, sinh sản, thức ăn,…ở mục 2.5.3, có thể xác định thuộc tính của các lớp. Mỗi thuộc tính mơ tả cho một hoặc nhiều lớp. Ví dụ lớp Động vật có các thuộc tính sau: Có mơ trƣờng sống, có phân bố, có trọng lƣợng, có độ dài, có màu lơng, có cách săn mồi, Có tai, có mắt,…

Bên cạnh đó, việc xem xét các từ đồng nghĩa cho thuộc tính rất quan trọng, ví dụ: thuộc tính trọng lƣợng đồng nghĩa với cân nặng, độ dài đồng nghĩa với chiều dài, chi đồng nghĩa với tay, chân,…

2.3.6. Bƣớc 6: Xác định ràng buộc của các thuộc tính

Từ các thuộc tính đã xác định, ta xác định kiểu ràng buộc cho thuộc tính là giá trị, max, min, chuỗi,… Ví dụ, thuộc tính có trọng lƣợng (cân nặng) là kiểu số nhận giá trị từ 30kg đến 90kg, tƣơng tự là có độ dài (chiều dài); Có thân nhận giá trị kiểu chuỗi ký tự (string) khi đó ta mơ tả hình dạng thân, một số đặc điểm trên thân, tƣơng tự là thuộc tính có mắt, có tai, có đi,…Thuộc tính có gia trị khoa học, có biện pháp bảo tồn,…cũng ràng buộc giá trị kiểu chuỗi ký tự để mơ tả về thuộc tính đó.

2.3.7. Bƣớc 7: Tạo các thể hiện/ thực thể

Trong khuôn khổ của luận văn này, tôi tập trung nghiên cứu xây dựng ontology cho động vật rừng thành phố Đà Nẵng, chọn lọc một số loài động vật quý hiếm để sử dụng làm thể hiện (thực thể - individuals).

Danh sách một số loài động vật quý hiếm đã sử dụng làm thể hiện:

Hình 2.2. Thể hiện/ thực thể động vật

Trong đó: lồi Chà vá chân nâu (Voọc chà vá chân nâu), Chà vá chân đen (Voọc chà vá chân đen) đại diện cho Chi Chà vá (Voọc) và loài Khỉ đuôi lợn, Khỉ vàng thuộc họ Khỉ, lồi Gấu chó thuộc họ Gấu, loài Báo hoa mai thuộc họ Mèo, loài Cầy mực thuộc họ Cầy, loài Tê tê vàng thuộc họ Tê tê,…

2.4. MỘT SỐ PHẦN MỀM BIÊN TẬP ONTOLOGY

Về mặt lý thuyết, ngƣời xây dựng và quản trị Ontology có thể không cần các công cụ hỗ trợ, thay vào đó có thể thực hiện trực tiếp bằng các ngơn ngữ. Tuy nhiên, cách thứ hai sẽ không khả thi khi Ontology có kích thƣớc lớn và cấu trúc phức tạp. Thêm vào đó, việc xây dựng và quản trị Ontology khơng chỉ địi hỏi việc tạo cấu trúc lớp phân cấp, định nghĩa các thuộc tính, ràng buộc.., mà cịn bao hàm việc giải quyết các bài tốn liên quan trên nó. Dƣới đây là một số phần mềm biên tập ontology.

2.4.1. Phần mềm Sesame

Sesame là một phần mềm mã nguồn mở trong dự án European IST On- To-Knowledge của công ty Hà Lan Aduna giúp cho việc lƣu trữ và truy vấn dữ liệu RDF và RDFS. Trƣớc hết, đƣợc xây dựng nhƣ một phần mềm trung gian chạy trên nền Java Web Server Tomcat, Sesame cho phép ngƣời dùng cài đặt và cấu hình nó để lƣu trữ dữ liệu RDF và RDFS. Tùy theo yêu cầu thực tế, ngƣời dùng có thể lƣu trữ dữ liệu ở bộ nhớ của máy tính cục bộ hay

thơng qua một hệ quản trị cơ sở dữ liệu nhƣ MySQL, PostgreSQL, Oracle9i. Mặt khác, ngƣời dùng có thể truy vấn dữ liệu đã đƣợc lƣu trữ bằng ngôn ngữ truy vấn SeRQL thông qua một giao diện Web đƣợc xây dựng sẵn trong Sesame. Không chỉ đƣợc cung cấp khả năng truy vấn, ngƣời dùng cịn có thể duyệt kho lƣu trữ, xoá dữ liệu khỏi kho lƣu trữ, thêm dữ liệu vào kho lƣu trữ bằng giao diện Web này.Ngoài ra, Sesame còn cung cấp một giao diện lập trình ứng dụng với các lớp và phƣơng thức Java đƣợc thiết kế chuyên nghiệp.

Ngày càng nhiều ứng dụng trong lĩnh vực Web ngữ nghĩa sử dụng Sesame nhƣ một ứng dụng chủ cho phép lƣu trữ và truy vấn dữ liệu RDF và RDFS. Lý do Sesame trở nên phổ biến chính là ở những ƣu điểm về kiến trúc của nó, khơng chỉ về mặt thiết kế mà cịn về tính ứng dụng, nhƣ sau:

- Sesame đƣợc thiết kế nhƣ một phần mềm trung gian giữa ngƣời dùng và kho lƣu trữ dữ liệu. Vì vậy, nó khơng bị ràng buộc cố định với bất cứ cơ chế lƣu trữ hay một cách thức sử dụng nào.

- Sesame cung cấp một cơ chế cho phép lƣu trữ ổn định và truy vấn hiệu quả dữ liệu RDF và RDFS, là các ngôn ngữ đang dần trở thành chuẩn để biểu diễn các tài nguyên trên Web.

- Ngƣời phát triển phần mềm có thể sử dụng Sesame nhƣ một thƣ viện khi xây dựng các ứng dụng thao tác với Sesame, hoặc có thể sửa đổi Sesame cho phù hợp với yêu cầu riêng.

Hiện nay Sesame vẫn đang đƣợc phát triển và đổi mới để ngày một hoàn thiện hơn. Phiên bản mới nhất à Sesame 1.2.1, ra đời vào khoảng giữa năm 2005. Trong tƣơng lai, Sesame có thể sẽ hỗ trợ thêm các ngôn ngữ mô tả khác dựa trên RDF nhƣ OWL, DAML+OIL, ...

Một số ứng dụng tiêu biểu đang sử dụng Sesame làm thành phần lƣu trữ cơ sở tri thức là:

ngữ nghĩa và truy vấn tài liệu theo ngữ nghĩa.

- Bibster: phần mềm trợ giúp các nhà nghiên cứu quản lý, tìm kiếm, và chia sẻ thông tin về các bài báo khoa học trong một mạng ngang hàng.

- Piggy Bank: một mở rộng của trình duyệt Firefox cho Web ngữ nghĩa, cho phép ngƣời dùng khai thác thông tin trên Web hiệu quả hơn.

2.4.2. Phần mềm Jena

Jena (http://jena.sourceforge.net) là một công cụ mã nguồn mở để triển khai Web ngữ nghĩa cho các lập trình viên Java đƣợc phát triển bởi HP Labs Semantic Web Research (http://www.hpl.hp.com/semweb). Jena-1 phát hành lần đầu tiên vào năm 2000 và có trên 10.000 lƣợt tải về. Jena-2 sau những cải tiến về mặt kiến trúc bên trong đã cung cấp nhiều tính năng hơn, phát hành vào tháng 8-2003 và tính đến thời điểm này đã có trên 64.494 lƣợt tải theo thống kê của http://sourceforge.net. Phiên bản mới nhất là Jena 3.0.

Jena là một Java Framework dùng để xây dựng các ứng dụng Web ngữ nghĩa. Jena cung cấp mơi trƣờng lập trình cho RDF, RDFS, OWL và SPARQL - ngôn ngữ truy vấn cho RDF. Jena bao gồm các thành phần và tính năng sau:

- RDF API: Giao diện lập trình cho RDF. - OWL API: Giao diện lập trình cho OWL.

- Xuất và đọc các file RDF theo dạng RDF/XML, N3 và N-Tribles. - Cho phép lƣu trữ trong bộ nhớ, lƣu trữ cố định trong các tập tin đơn hay trong các hệ quản trị cơ sở dữ liệu (MySQL, PostgreSQL, Oracle, Microsoft SQL Server).

- Hệ truy vấn SPARQL.

2.4.3. Phần mềm Protégé

Đây là bộ phần mềm mã nguồn mở Java đƣợc nghiên cứu và phát triển từ năm 1998 bởi nhóm nghiên cứu của Mark Musen thuộc đại học Stanford,

California nhằm quản lý các thông tin trong lĩnh vực sinh y học. Đây là dự án đƣợc nhận đƣợc sự quan tâm và tài trợ từ rất nhiều tổ chức, trong đó có Bộ Quốc Phịng Mỹ. Hiện nay, nó có một cộng đồng hàng nghìn ngƣời sử dụng và đã có rất nhiều miền ứng dụng khác nhau sử dụng sự hỗ trợ của công cụ này. Mã nguồn Protégé có thể đƣợc tìm thấy tại website: http://smi- protege.stanford.edu/.

Hiện tại, Protégé đã có phiên bản 5.0 beta 21 hỗ trợ OWL 2. Cơng cụ Protégé có thể chia làm 2 loại là: Protégé-Frame và Protégé-OWL:

 Protégé-Frame cung cấp cho ngƣời dùng một giao diện chứa đầy đủ công cụ và kiến thức để hỗ trợ ngƣời dùng xây dựng và lƣu trữ các ontology chuyên ngành dựa trên khung, tùy biến các hình thức nhập dữ liệu, và nhập dữ liệu tức thời.

 Protégé-OWL là một công cụ mở rộng của Protégé hỗ trợ các Web Ontology Language (OWL). Công cụ soạn thảo Protégé-OWL cho phép ngƣời dùng lƣu và xem các ontology OWL và RDF, xem và chỉnh sửa các lớp, cá thể, thuộc tính, quan hệ và các ràng buộc, kiểm tra tính đúng đắn của ontology.

Theo tơi nhận xét thì cơng cụ Protégé-Frame sẽ phù hợp hơn cho nhu cầu xem chỉnh sửa và nhập dữ liệu cho ontology, trong khi nếu muốn xây dựng ontology mới và có giao diện phù hợp với việc xây dựng cấu trúc cho ontology thì dùng Protégé-OWL sẽ dễ dàng hơn. Ngoài ra, Protégé-OWL cũng hỗ trợ cho ngơn ngữ OWL tốt hơn là Protégé-Frame. Vì vậy, nhóm sẽ sử dụng cơng cụ Protégé-OWL để xây dựng ontology.

Hình 2.3. Giao diện protégé 5.0

Các ƣu điểm của Protégé là:

 Hỗ trợ đầy đủ ba phiên bản của ngôn ngữ OWL là OWL-Full, OWL- Lite và OWL-DL.

 Nhờ sử dụng mơ hình hƣớng đối tƣợng của ngơn ngữ Java, Protégé rất hiệu quả trong việc mơ hình hóa các lớp, thực thể, quan hệ…

 Giao diện thiết kế trực quan có tính tƣơng tác cao. Ngƣời sử dụng có thể định nghĩa các thành phần của Ontology trực tiếp từ các form. Nó hỗ trợ xây dựng các thành phần của một Ontology rất nhanh và hiệu quả.

 Cho phép biểu diễn trực quan Ontology dƣới dạng các sơ đồ.

 Cho phép xây dựng Ontology từ nhiều nguồn khác nhau.

 Protégé tự động lƣu một bản tạm của Ontology. Nếu có lỗi phát sinh trong q trình thao tác thì Ontology cũ sẽ tự động đƣợc phục hồi.

 Cung cấp chức năng tìm kiếm lỗi, kiểm tra tính nhất quán và đầy đủ của Ontology.

 Cho phép các lớp và thuộc tính của Ontology này có thể đƣợc sử dụng trong một Namespace khác mà chỉ cần sử dụng các URL để tham khảo.

 Hỗ trợ suy luận trực tiếp trên Ontology dựa trên Interface chuẩn DL Implementation Group (DIG).

 Hỗ trợ sinh mã tự động. Protégé cho phép chuyển Ontology thành mã nguồn RDF/XML, OWL, DIG, Java, EMF Java Interfaces, Java Schema Classes. Các mã này có thể đƣợc nhúng trực tiếp vào ứng dụng và là đầu vào cho các thao tác trên Ontology khi cần [3], [15].

2.5. KẾT CHƢƠNG

Chƣơng này tơi tìm hiểu phƣơng pháp xây dựng ontology, từ đó đƣa ra phƣơng pháp xây dựng ontology động vật rừng. Đồng thời, tơi tìm hiểu các phần mềm ứng dụng trong việc biên tập và khai thác ontology.

CHƢƠNG 3

XÂY DỰNG ONTOLOGY VÀ PHÁT TRIỂN ỨNG DỤNG 3.1. MÔ TẢ BÀI TOÁN

"Xây dựng ontology phục vụ tìm kiếm ngữ nghĩa động vật rừng thành phố Đà Nẵng”, trong đó xây dựng ontology động vật rừng là trọng tâm. Việc

nghiên cứu, xây dựng ontology là yêu cầu chính của luận văn. Nhƣ đã phân tích ở Chƣơng 2, ontology về động vật không đƣợc kế thừa từ nghiên cứu trƣớc đây mà phải nghiên cứu và xây dựng lại từ đầu, đồng thời thông tin dữ liệu về động vật rừng cần đƣợc tham khảo từ ngành sinh học (các nghiên cứu về động vật tại thành phố Đà Nẵng).

Sau khi đã nghiên cứu xây dựng đƣợc ontology, cần cung cấp tri thức để cộng đồng cùng khai thác và phát triển theo hƣớng tìm kiếm ngữ nghĩa động vật rừng tại thành phố Đà Nẵng.

3.2. ĐẶC TẢ DỮ LIỆU

Dữ liệu động vật rừng đƣợc trích chọn từ nhiều nguồn tƣ liệu khác nhau, bảo đảm tính đầy đủ, chính xác, cũng nhƣ kế thừa và hỗ trợ cho nhau, trong đó:

- Báo cáo tổng kết đề tài cấp Thành phố Đà Nẵng ―Điều tra khu động – thực vật và nhân tố ảnh hƣởng, đề xuất phƣơng án bảo tồn hợp lý khu bảo tồn thiên nhiên bán đảo Sơn Trà‖ [1] và nhờ sự tƣ vấn của Thạc sĩ Nguyễn Văn Khánh, Trƣờng Đại học Sƣ phạm, Đại học Đà Nẵng, nghiên cứu trong ngành sinh học, tơi tham khảo để xác định các lồi động vật rừng thuộc loại quý hiếm trên địa bàn thành phố hoặc đã từng xuất hiện trên rừng thuộc địa bàn thành phố những năm trƣớc đây để chọn minh họa xây dựng ontology.

- Từ đó, sử dụng nội dung, thông tin mô tả chi tiết các loài động vật trong Sách đỏ Việt Nam [12], đồng thời tham khảo trong các website có nguồn dữ liệu về động vật phong phú và chính xác, thƣờng đƣợc các nhà nghiên cứu tham khảo nhƣ: vncreatures.net (Sinh vật rừng Việt Nam) [17], wikipedia.org (Bách khoa toàn thƣ mở) để xây dựng ontology động vật rừng. Ƣu tiên chọn các loài động vật rừng quý hiếm để xây dựng ontology.

Dữ liệu động vật rừng ở các nguồn tƣ liệu, có dạng văn bản mơ tả thơng thƣờng, nhƣ các ví dụ dƣới đây:

- Báo cáo tổng kết đề tài cấp Thành phố Đà Nẵng ―Điều tra khu động – thực vật và nhân tố ảnh hƣởng, đề xuất phƣơng án bảo tồn hợp lý khu bảo tồn thiên nhiên bán đảo Sơn Trà‖ [1]:

Hình 3.1. Tình trạng và phân bố của khu hệ động vật Sơn Trà

- Sách đỏ Việt Nam, Phần I. Động vật, Nhà xuất bản Khoa học Tự nhiên và Công nghệ, năm 2007:

- Website: vncreatures.net (Sinh vật rừng Việt Nam):

Hình 3.3. Website vncreatures.net

3.3. QUY TRÌNH XÂY DỰNG ONTOLOGY VÀ PHẦN MỀM

Một phần của tài liệu 28040_1712202001919457LVTranXuanTruong (Trang 54)

Tải bản đầy đủ (PDF)

(85 trang)