Xây dựng ontology tiếng việt chuyên ngành công nghệ thông tin (ITVO) P1

Thứ hai , 15/05/2017, 07:47 GMT+7
     

Bài trước chúng ta đã đi qua vấn đề:

                                                               Bài 1: Phương pháp xây dựng Ontology

                                                               Bài 2: Mô hình Ontology trong lĩnh vực y tê

                                                               Bài 3: Bài toán so khớp Ontology

I.                  Xây dựng ontology tiếng việt chuyên ngành công nghệ thông tin (ITVO)

1.                  Công cụ sử dụng

Ontology tiếng Việt chuyên ngành công nghệ thông tin (ITVO) được xây dựng dùng công cụ soạn thảo Protégé phiên bản 3.4.4. Đâ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/repos/protege/owl/trunk. 

Hiện tại, Protégé đã có phiên bản 4.1 hỗ trợ OWL 2. Tuy nhiên, do phiên bản này chưa có API hỗ trợ nên dùng phiên bản Protégé 3.4.4 có API hỗ trợ cho việc xây dựng công cụ làm giàu sau này. 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.

 

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, sử dụng công cụ Protégé-OWL để xây dựng ontology. 

Hình 1: Giao diện protégé 3.4.4

vCá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 quá 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. 

1.                  Quá trình xây dựng ontology

a.       Xác định yêu cầu của ontology: ontology lưu trữ những thông tin về công nghệ thông tin bằng tiếng Việt đáp ứng được các nhu cầu của hệ thống như:

-          Tìm kiếm thực thể có tên, không tên, xác định quan hệ giữa các thực thể

-          Hỗ trợ trả lời cho hệ thống hỏi đáp về:

o   Các khái niệm trong lĩnh vực công nghệ thông tin.

o   Thông tin các chuyên gia trong lĩnh vực, các công ty hoạt động trong lĩnh vực công nghệ thông tin, giải thưởng, hội thảo, sự kiện, tổ chức, hiệp hội công nghệ thông tin và các trường có đào tạo công nghệ thông tin.

Ví dụ:

Java là gì?

Trường nào đã đoạt giải vô địch cuộc thi Robocon năm 2009?

-          Hỗ trợ phân tích bài báo công nghệ thông tin tiếng Việt.

-          Sử dụng cho hệ thống tư vấn về chương trình đào tạo công nghệ thông tin.

a.       Xem xét các ontology có sẵn: Có 3 ontologies về công nghệ thông tin có thể xem xét.

Thứ nhất là ontology về khoa học công nghệ của trường Đại học Bách Khoa Hà Nội. Tuy nhiên ontology này không thể tìm được nguồn và cũng khi gửi mail liên lạc với tác giả thì không nhận được phản hồi, do đó không thể kế thừa được từ ontology này.

Thứ hai là ontology tổng quát OVL có chứa dữ liệu về công nghệ thông tin nhưng cấu trúc không phù hợp và chứa nhiều dữ liệu tổng quát thuộc nhiều lĩnh vực nên chỉ xem xét nhập một số dữ liệu chọn lọc từ ontology này chứ không sử dụng nó.

Cuối cùng là ComputingOntology là một ontology khá đầy đủ về các khái niệm và môn học trong lĩnh vực công nghệ thông tin tiếng Anh với cấu trúc của các khái niệm lấy từ ACM. Vì vậy, xây dựng cấu trúc lớp khái niệm trong ontology theo cấu trúc lớp của ontology này bằng cách dịch và nhập bằng tay để có thể chỉnh sửa một số chi tiết cho phù hợp với yêu cầu đối với ontology của mình.

Hiện nay, cũng có một số nghiên cứu đã xây dựng ontology theo cách sử dụng một số công cụ dịch kết hợp với các chuyên gia chỉnh sửa lại như ontology được xây dựng trong đề tài. Tuy nhiên việc dịch như vậy thì cấu trúc của ontology được xây dựng có thể không đáp ứng được yêu cầu của ứng dụng.

b.       Một số thuật ngữ quan trọng trong ontology: Dựa vào yêu cầu đã xác định ở trên chúng ta sẽ có một số khái niệm chính trong ontology như: Khái niệm trong lĩnh vực công nghệ thông tin, nguồn, định nghĩa, sự kiện công nghệ thông tin, công ty phần mềm, công ty phần cứng, chuyên gia công nghệ thông tin, trường đào tạo ngành công nghệ thông tin, tổ chức, hiệp hội, giải thưởng công nghệ thông tin, hợp tác đào tạo, sản xuất, trao giải thưởng, được trao giải thưởng.

c.        Xây dựng cấu trúc lớp cho ontology: Dựa vào những thuật ngữ chính đã xác định ở trên và nguồn dữ liệu lấy từ website Wikipedia tiếng Việt, cấu trúc của ontology gồm các lớp chính như sau:

Hình 2: Các lớp chính trong ontology ITVO

Các lớp chính trong ontology được xây dựng dựa vào cấu trúc trong Wikipedia và ComputingOntology:

Khái niệm thuộc ngành công nghệ thông tin: tất cả các khái niệm đều được chuyển thành lớp con của lớp này, khi thêm vào những khái niệm mới sẽ là lớp con của các lớp bên dưới.

            Tin học

                        Công nghệ thông tin

                                    Lập trình cơ bản

                                    Hệ thống thông tin

                                    Khoa học máy tính

                                    Mạng máy tính

                                    Kỹ thuật phần mềm

                                    Kỹ thuật máy tính

                        Khái niệm trong xã hội

                                    Bảo mật

                                    Hệ thống pháp lý

                                    Hợp đồng

                                    Kiểm soát

                                    Sở hữu trí tuệ

                                    Trách nhiệm nghề nghiệp

                                    Đạo đức nghề nghiệp

                                    Tác động của thay đổi công nghệ

                        Lịch sử máy tính      

                                    Thiết bị máy móc ban đầu

                                    Hệ thống phần mềm phần cứng

                                    Phần cứng không thuộc hệ thống

                                    Phần mềm không thuộc hệ thống             

Sự kiện công nghệ thông tin: gồm nhiều lớp con là những năm có xảy ra sự kiện, mỗi sự kiện là một cá thể của lớp năm.

Công ty hoạt động trong ngành công nghệ thông tin

            Công ty phần mềm

            Công ty phần cứng

            Công ty dịch vụ

            Chi nhánh

Trường đào tạo công nghệ thông tin

            Trung tâm dạy nghề CNTT

            Trung cấp

            Cao đẳng

            Đại học

Tổ chức/hiệp hội công nghệ thông tin

Giải thưởng công nghệ thông tin: Tên của mỗi giải thưởng là một lớp, mỗi lần giải thưởng được trao tạo ra một cá thể của giải thưởng đó.

Chuyên gia công nghệ thông tin: là những người có học vị tiến sĩ trở lên và có các bài báo khoa học chuyên ngành công nghệ thông tin.

Hội thảo công nghệ thông tin: Giống như lớpGiải thưởng công nghệ thông tin ở trên, tên của mỗi hội thảo là một lớp, mỗi lần hội thảo được tổ chức tạo ra một cá thể của hội thảo đó.

Ngoài ra, nhập dữ liệu bổ sung thêm các khái niệm cho ontology bằng cách dịch và nhập bằng tay các lớp từ ComputingOntology vào như là các lớp con của lớp Khái niệm thuộc ngành công nghệ thông tin. Như vậy cấu trúc của các lớp khái niệm sẽ theo cấu trúc của ComputingOntology.

Tiếp tục phần 2.....: http://congnghegi.com/xay-dung-ontology-tieng-viet-chuyen-nganh-cong-nghe-thong-tin-itvo-p2-41-1586.html

ontology ontology tiếng việt công nghệ thông tin ITVOUIT ai nang cao do an ai nang cao