ĐẠI HỌC ĐÀ NẴNG TRƯỜNG ĐẠI HỌC BÁCH KHOA --- CAO XUÂN HÀ XÂY DỰNG ONTOLOGY PHỤC VỤ LƯU TRỮ VÀ TÌM KIẾM TRỰC TUYẾN CÁC TÀI LIỆU CỦA CHI CỤC VĂN THƯ LƯU TRỮ TỈNH QUẢNG NGÃI Chuyên ngành: K
Trang 1ĐẠI HỌC ĐÀ NẴNG TRƯỜNG ĐẠI HỌC BÁCH KHOA -
CAO XUÂN HÀ
XÂY DỰNG ONTOLOGY PHỤC VỤ LƯU TRỮ VÀ TÌM KIẾM
TRỰC TUYẾN CÁC TÀI LIỆU CỦA CHI CỤC VĂN THƯ LƯU TRỮ TỈNH QUẢNG NGÃI
Chuyên ngành: KHOA HỌC MÁY TÍNH
Mã số: 60480101
TÓM TẮT LUẬN VĂN THẠC SĨ
Đà Nẵng - Năm 2017
Trang 2Công trình được hoàn thành tại TRƯỜNG ĐẠI HỌC BÁCH KHOA
Người hướng dẫn khoa học: PGS.TS Võ Trung Hùng
Phản biện 1:
Phản biện 2:
Luận văn sẽ được bảo vệ trước Hội đồng chấm Luận văn tốt nghiệp thạc sĩ Khoa học máy tính họp tại Trường Đại học Bách khoa vào ngày tháng năm
Có thể tìm hiểu luận văn tại:
Trung tâm Học liệu, Đại học Đà Nẵng tại Trường Đại học Bách khoa
Thư viện Khoa , Trường Đại học Bách khoa - ĐHĐN
Trang 31
MỞ ĐẦU
I Lý do chọn đề tài
Ngày 03.01.1946, Chủ tịch Hồ Chí Minh đã ký Thông đạt số 01
về công tác công văn, giấy tờ, trong đó nêu rõ: “Tài liệu lưu trữ có giá trị đặc biệt về phương diện kiến thiết quốc gia” Đây là văn bản đầu tiên của Nhà nước ta về công tác văn thư lưu trữ, đặt nền móng cho ngành Lưu trữ Việt Nam hình thành và phát triển
Đến thời kỳ bùng nổ cuộc cách mạng CNTT, làm tốt công tác lưu trữ sẽ giúp đẩy mạnh cải cách thủ tục hành chính, giúp cho nhà nước
và nhân dân tiết kiệm rất nhiều chi phí cho việc đi lại, trao đổi, giao dịch, tìm kiếm,… Nhận thức trước được điều đó Bộ Chính trị đã ban hành Nghị quyết số 36-NQ/TW ngày 01 tháng 7 năm 2014 về đẩy mạnh ứng dụng, phát triển công nghệ thông tin đáp ứng yêu cầu phát triển bền vững và hội nhập quốc tế và Nghị quyết 30c/NQ-CP ngày 08/11/2011
về Chương trình tổng thể cải cách hành chính nhà nước giai đoạn 2011 – 2020 Trong đó đề cập rất nhiều đến Ứng dụng CNTT - TT trong quy trình xử lý công việc của từng cơ quan hành chính nhà nước, giữa các
cơ quan hành chính nhà nước với nhau và trong giao dịch với tổ chức,
cá nhân và quan trọng nhất là ứng dụng công nghệ thông tin trong hoạt động dịch vụ hành chính công, dịch vụ công của đơn vị sự nghiệp công
Hầu hết các cơ quan, đơn vị hiện nay đang lưu trữ tài liệu dưới dạng thủ công bằng văn bản giấy dẫn đến những hạn chế như: nhàu nát, hỏng, mờ, khó khăn trong việc tìm kiếm tài liệu, mất nhiều thời gian và không gian lưu trữ Trong khi đó nhu cầu đặt ra cho việc tìm kiếm thông tin ngày càng cao Một số văn bản được đăng tải trên các trang Web chỉ dừng lại ở việc cung cấp thông tin chứ chưa cung cấp được những tri thức cần thiết nên đã có những khó khăn nhất định trong việc tìm hiểu, tra cứu
Trang 42
Xuất phát từ thực tế nêu trên cùng với sự hướng dẫn tận tình của thầy Võ Trung Hùng, tôi quyết định chọn đề tài: “XÂY DỰNG ONTOLOGY PHỤC VỤ LƯU TRỮ VÀ TÌM KIẾM TRỰC TUYẾN CÁC TÀI LIỆU CỦA CHI CỤC VĂN THƯ LƯU TRỮ TỈNH QUẢNG NGÃI” làm luận văn tốt nghiệp
II Mục tiêu nghiên cứu
a Mục tiêu nghiên cứu
Xây dựng một hệ thống phục vụ tra cứu thông tin các văn bản hành chính của Chi cục Văn thư Lưu trữ tỉnh Quảng Ngãi Hệ thống mới dựa trên công nghệ Web ngữ nghĩa nhằm hỗ trợ việc tra cứu, cung cấp những tri thức cần thiết góp phần thực hiện tốt công tác văn thư, lưu trữ ở tỉnh Quảng Ngãi
b Nhiệm vụ của đề tài
- Tìm hiểu cơ sở lý thuyết về Web ngữ nghĩa;
- Tìm hiểu công cụ và phương thức xây dựng ứng dụng;
- Thu thập dữ liệu, khảo sát nhu cầu, hiện trạng tra cứu các văn bản của Chi cục Văn thư Lưu trữ tỉnh Quảng Ngãi;
- Phân tích, thiết kế hệ thống;
- Xây dựng chương trình, cài đặt, kiểm thử và đánh giá
III Đối tượng và phạm vi nghiên cứu
a Đối tượng nghiên cứu
- Văn bản hành chính của Chi cục Văn thư Lưu trữ tỉnh Quảng Ngãi, nhu cầu và hiện trạng tra cứu
- Các vấn đề liên quan đến Web ngữ nghĩa
- Qui trình xây dựng Web ngữ nghĩa
- Công cụ, ngôn ngữ và công nghệ liên quan đến Web ngữ nghĩa (Protege, RDF, SPARQL,…)
- Các thư viện phát triển ứng dụng Web ngữ nghĩa
Trang 53
(OwlDotNetApi, SemWeb)
- Một số ứng dụng có sẵn của Web ngữ nghĩa
- Phân tích xử lý dữ liệu đã trích lọc trên các trang Web hiện nay (Giả thuyết dữ liệu đã được trích lọc)
b Phạm vi nghiên cứu
Hằng năm, Chi cục Văn thư Lưu trữ tỉnh Quảng Ngãi chỉnh lý
và số hóa các tài liệu tích đống hơn 10 đơn vị, hơn 500.000 văn bản hành chính các loại Văn bản hành chính chứa rất nhiều thông tin, trong
đề tài này tôi chỉ giới hạn phạm vi tìm kiếm theo: tên loại, số ký hiệu văn bản, ngày ban hành, nội dung trích yếu, tác giả, tên tệp tin PDF của văn bản, mối quan hệ ngữ nghĩa giữa các văn bản
IV Phương pháp nghiên cứu
a Giả thiết nghiên cứu
b Phương pháp nghiên cứu
V Ý nghĩa khoa học và thực tiễn của đề tài
a Ý nghĩa khoa học: Tiếp cận công nghệ mới về xử lý thông tin của Web ngữ nghĩa Phát triển ứng dụng để góp phần phổ biến và từng bước thâm nhập sâu hơn về công nghệ này
b Ý nghĩa thực tiễn: Ứng dụng những thành quả của công nghệ thông tin vào lĩnh vực văn thư – lưu trữ, góp phần phục vụ tốt việc tìm hiểu nghiên cứu, sử dụng và khai thác tài liệu của Chi cục Văn thư Lưu trữ tỉnh Quảng Ngãi Hỗ trợ công tác văn thư, lưu trữ và tìm kiếm văn bản một cách nhanh nhất Triển khai ứng dụng ở Chi cục Văn thư Lưu trữ tỉnh Quảng Ngãi
Trang 64
VI Bố cục của luận văn
Chương 1 TỔNG QUAN VỀ WEB NGỮ NGHĨA
Trong chương này giới thiệu các khái niệm tổng quan về Web ngữ nghĩa, các ngôn ngữ và công cụ xây dựng Web ngữ nghĩa Tìm hiểu kiến trúc Web ngữ nghĩa, ứng dụng và triển vọng của Web ngữ nghĩa trong tương lai
1.1 Ontology
1.1.1 Khái niệm Ontology
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 nào đó 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
1.1.2 Mục đích xây dựng Ontology
1.1.3 Yêu cầu khi sử dụng Ontology
- Cấu trúc rõ ràng: Đây là điều kiện cần cho máy có thể xử lý thông tin
- Ngữ nghĩa hình thức miêu tả ý nghĩa tri thức một cách chính xác
1.1.4 Các thành phần Ontology
- Cá thể (Individuals)
- Lớp (Classes)
- Thuộc tính (Properties)
- Quan hệ (Relation
1.1.5 Ngôn ngữ OWL
1.2 Khái niệm Web ngữ nghĩa
1.2.1 World Wide Web và những hạn chế
1.2.2 Sự ra đời của Web ngữ nghĩa
1.2.3 Định nghĩa Web ngữ nghĩa
Trang 75
Semantic Web hay còn được gọi là Web ngữ nghĩa hay Web 3.0, là sự mở rộng nối tiếp của các Web thế hệ trước, được đưa ra bởi Tim Berners-Lee vào khoảng năm 1998 Web ngữ nghĩa là một cỗ máy tìm kiếm, có khả năng hỗ trợ người dùng tìm kiếm các thông tin một cách thông minh, chính xác và nhanh chóng hơn Lợi ích của Web ngữ nghĩa là máy tính có thể hiểu được nội dung thông tin trên Web, thông tin được tìm kiếm một cách chính xác và nhanh chóng hơn, dữ liệu liên kết động và hỗ trợ sự tự động hóa cho các dịch vụ
1.3 Kiến trúc Web ngữ nghĩa
1.3.1 Giới thiệu
1.3.2 Vai trò các tầng trong kiến trúc Web ngữ nghĩa
a Tầng URI và IRI
b Tầng XML
c Tầng RDF và RDFS
d Tầng Ontology
e Tầng Logic
f Tầng Proof
g Tầng Trust
h Tầng User Interface & Application
1.4 Xây dựng Web ngữ nghĩa
1.4.1 XML và RDF trên Web
1.4.2 Các ngôn ngữ biểu diễn Ontology cho Web có ngữ nghĩa
1.4.3 Phát triển nâng cao Web ngữ nghĩa
1.5 Các ngôn ngữ và công cụ xây dựng Web ngữ nghĩa 1.5.1 XML (eXtensible Markup Language)
XML là một đặc tả cho các tài liệu (Document) mà máy tính đọc được
Trang 86
1.5.2 RDF - Nền tảng của Web ngữ nghĩa
a Giới thiệu RDF
Mô hình dữ liệu cơ sở của RDF gồm có 3 đối tượng: Resource (tài nguyên), Property (thuộc tính) và Statement (phát biểu)
Resource (tài
nguyên)
Property (thuộc tính) Statement (phát biểu)
- Là một phạm
trù rộng lớn dùng
để chỉ mội đối
tượng trên Web
như khái niệm, từ
vựng, thực thể,
tính chất và các
quan hệ giữa các
đối tượng
- Mỗi tài nguyên
luôn được định
danh bởi URI, một
URI có thể là một
URL hoặc một địa
chỉ Web
- Là loại đặc biết của tài nguyên, chúng mô tả mối quan hệ giữa các tài nguyên,…
- Thuộc tính trong RDF được xác định bởi URL
- Một phát biểu xác định thuộc tính của tài nguyên, là một bộ ba gồm: Object – Attribute
- Value (Đối tượng - Thuộc tính - Giá trị)
b Mô hình RDF cơ bản
c Bộ ba RDF ( RDF Triple)
+ Subject: Địa chỉ hay vị trí tài nguyên muốn mô tả, thông thường thì đây là chuỗi định URL hoặc URI
+ Predicate: Xác định tính chất của tài nguyên
+ Object: Nội dung gán cho thuộc tính
d Đồ thị RDF (RDF Graph)
e Cấu trúc của RDF/XML
1.5.3 RDF Schema
a Giới thiệu
b Định nghĩa Class (Lớp)
Trang 97
c Định nghĩa Property (Thuộc tính)
d FOAF - Sự mở rộng của RDF
1.5.4 Truy vấn dữ liệu trên Web ngữ nghĩa (SPARQL)
a Giới thiệu
b Tạo một câu truy vấn đơn giản
c Cú pháp của câu truy vấn
d Blank node
e Những dạng cú pháp khác
f Ràng buộc dữ liệu
g Các phép toán và điều kiện trên câu truy vấn
- Phép hội
- Phép chiếu
- DISTINCT
- ORDER BY
- LIMIT
1.6 Nhận xét
Việc tìm kiếm dựa trên Web ngữ nghĩa người dùng không cần phải nhớ chính xác từ khóa Khả năng cung cấp thêm thông tin, gợi ý các thông tin liên quan nhờ hiểu các mối liên hệ giữa các khái niệm cũng là khả năng vượt trội của tìm kiếm trên Web ngữ nghĩa mà các công cụ tìm kiếm truyền thống chưa thể thực hiện được
Tóm lại, Công nghệ Web ngữ nghĩa đang phát triển và ngày càng hoàn thiện dần với những tập luật được định nghĩa thông minh hơn, làm cho việc phát triển công nghệ này sẽ ngày một thuận lợi hơn
Trang 108
Chương 2 GIẢI PHÁP ĐỀ XUẤT
2.1 Quản lý văn bản và hồ sơ
2.1.1 Nhu cầu và hiện trạng tra cứu văn bản
Hằng năm, Chi cục Văn thư Lưu trữ tỉnh Quảng Ngãi chỉnh lý
và số hóa các tài liệu tích đống hơn 10 đơn vị, hơn 500.000 văn bản hành chính các loại
2.1.2 Tổng quan về hồ sơ
Hồ sơ là một tập tài liệu có liên quan với nhau về một vấn đề, một sự việc, một đối tượng cụ thể hoặc có đặc điểm chung, hình thành trong quá trình theo dõi, giải quyết công việc thuộc phạm vi chức năng, nhiệm vụ của cơ quan, tổ chức, cá nhân Trong một hồ sơ có thể có nhiều văn bản
2.1.3 Tổng quan về văn bản
Sau khi số hóa, văn bản phải nằm trong một hồ sơ nhất định
Có 2 nhóm văn bản lớn:
- Văn bản không mang tính quyền lực nhà nước
- Văn bản mang tính quyền lực nhà nước (văn bản quản lý nhà nước
2.1.4 Số, ký hiệu của văn bản
Số, ký hiệu văn bản được định nghĩa theo quy định
2.1.5 Tên loại văn bản
Bảng chữ viết tắt tên loại văn bản và bản sao
2.1.6 Trích yếu nội dung
Trích yếu nội dung của văn bản là một câu ngắn gọn hoặc một cụm từ phản ánh khái quát nội dung chủ yếu của văn bản
2.2 Phân tích về bài toán Tìm kiếm văn bản tại Chi cục VTLT
Trang 119
2.2.1 Giới thiệu bài toán
a Đối tượng sử dụng
b Yêu cầu bài toán
Bài toán đặt ra những yêu cầu xây dựng một trang Web có chức năng hỗ trợ tìm kiếm thông tin về văn bản đáp ứng các yêu cầu như:
- Cho phép người dùng nhập dữ liệu
- Tùy chọn được hướng tiếp cận dữ liệu, người dùng có thể tùy chọn hướng truy xuất dữ liệu từ thể loại văn bản (Quyết định, Công văn,…) hay năm phát hành văn bản (Năm 2015, 2014,…)
2.2.2 Tìm kiếm cơ bản và tìm kiếm nâng cao
a Tìm kiếm cơ bản (trường hợp biết số ký hiệu văn bản):
b Tìm kiếm nâng cao (Trường hợp không biết số ký hiệu văn bản):
c Phân tích vấn đề
- Xây dựng Ontology: Trong phần này chúng ta xây dựng các lớp, các thuộc tính tạo những mối quan hệ và phân cấp theo những chuẩn đã được định nghĩa bởi tổ chức W3C và cả những định nghĩa mới riêng biệt cho chương trình
- Trình duyệt Web: Phần trình duyệt không xây dựng một trình duyệt mới hoàn toàn đáp ứng đầy đủ các yêu cầu truy cập dữ liệu ở bất
kỳ Ontology nào mà ta xây dựng trình duyệt tương tự các ứng dụng Web nhằm hiển thị thông tin cơ sở dữ liệu đã xây dựng
2.2.3 Giải pháp
a Phát thảo kiến trúc tổng thể hệ thống
- Giao diện Web (Web Browser)
- Máy tìm kiếm (Search Engine)
b Giải quyết yêu cầu tìm kiếm
2.2.4 Các chức năng cơ bản của ứng dụng
Trang 1210
- Duyệt theo ngữ nghĩa
- Tìm kiếm theo khóa
- Tìm kiếm nâng cao
2.3 Quy trình xây dựng Web ngữ nghĩa
- Bước 1: Xác định lĩnh vực và phạm vi của Ontology:
- Bước 2: Xem xét việc sử dụng lại các Ontology có sẵn
- Bước 3: Liệt kê các thuật ngữ quan trọng
- Bước 4: Xác định các lớp và phân cấp của các lớp
- Bước 5: Xác định các thuộc tính
- Bước 6: Xác định ràng buộc của các thuộc tính
- Bước 7: Tạo các thực thể
2.4 Các công cụ hỗ trợ
2.4.1 Công cụ xây dựng ứng dụng Protege
Protege, là công cụ được sử dụng rộng rãi và hiệu quả nhất hiện nay Nó cho phép người sử dụng định nghĩa và chỉnh sửa các lớp Ontology, các thuộc tính và quan hệ và các thể hiện sử dụng cấu trúc cây Các Ontology có thể được đưa ra theo các định dạng RDF(S), XML Schema Platform Protege cung cấp hai cách chính mô hình hóa Ontology thông qua Protege-Frame và Protege-OWL, ngoài ra có thể có nhiều plugin Chúng ta có thể quan sát một cách trực quan thông qua OWL Viz, nó cho phép quan sát Ontology dưới dạng đồ họa và đưa file ảnh JPEG Ngoài ra còn hỗ trợ truy vấn SPARQL
a Đặc điểm của Protege
Các đối tượng xây dựng chính của Protege là:
- Classes – Tổ chức các quan hệ tham chiếu và các kiểu thực thi
- Axioms – Mô hình câu lệnh đúng
- Instances – Các thể hiện, các thành phần của đối tượng
Trang 1311
- Domain – Giới hạn của Ontology
- Vocabulary – Các lớp và khai báo
b Protege sử dụng giao diện đồ hoạ
Ngay từ phiên bản Protege - API, thì phần mềm Protege đã không chỉ cho phép tạo mô hình bằng cách thủ công mà nó còn cho phép người sử dụng giao diện đồ họa để phát triển
c Protege phát triển để tích hợp các công cụ
2.4.2 Bộ Visual Studio.Net
2.4.3 Thư viện phát triển ứng dụng
a SemWeb:
b OwlDotNetApi
OwlDotNetApi là một OWL API với bộ phân tích cú pháp viết bằng C# theo công nghệ NET dựa trên phân tích cú pháp RDF Drive, hoàn toàn phù hợp với đặc điểm kĩ thuật của W3C Mục tiêu của OwlDotNetApi là đọc/ghi dữ liệu của XML dựa trên đồ thị với các cạnh tương ứng với thuộc tính liên kết và các đỉnh tương ứng với các nút hay còn gọi là các lớp
OwlDotNetApi có hai phần chính là lớp chức năng và lớp giao tiếp
2.5 Nhận xét
Qua những vấn đề đã trình bày trong Chương 2 này cho chúng
ta thấy được nhu cầu và hiện trạng của việc tra cứu thông tin về văn bản
Từ đó đã đề ra những giải pháp cụ thể góp phần quyết thực trạng đó Tôi
đã tiến hành phân tích bài toán tìm kiếm văn bản, phác thảo kiến trúc tổng thể của hệ thống cũng như quy trình xây dựng Web ngữ nghĩa Tiến hành lựa chọn công cụ thích hợp để xây dựng và triển khai ứng dụng
Trang 1412
Chương 3 XÂY DỰNG HỆ THỐNG
3.1 Mô hình kiến trúc tổng thể của hệ thống
3.2 Phát triển ứng dụng
3.2.1 Qui trình phát triển ứng dụng
Để thiết kế công cụ tìm kiếm ngữ nghĩa cho bài toán này sau khi thu thập dữ liệu cần thực hiện 4 giai đoạn sau:
- Giai đoạn 1: Xây dựng Ontology
- Giai đoạn 2: Xây dựng giao diện
- Giai đoạn 3: Thử nghiệm
- Giai đoạn 4: Đánh giá kết quả của chương trình
3.2.2 Môi trường phát triển ứng dụng
Hệ thống tra cứu thông tin văn bản chọn nền tảng NET làm công cụ chính để phát triển chính, vì nó có thể tương tác với nhiều ngôn ngữ khác Bên cạnh đó còn dùng các công cụ sau để hỗ trợ khi xây dựng
và phát triển ứng dụng như:
- Sử dụng phần mềm Protege 4.3 để thiết kế Ontology văn bản
- Bộ Visual Studio 2010
- Ngôn ngữ lập trình C# trên nền ASP.Net MVC
- Ngôn ngữ truy vấn dữ liệu RDF: SPARQL
- Thư viện mã nguồn OwlDotNetApi
- Ứng dụng được chạy trên trình duyệt IE, Google Chrome, Firefox,… để giao tiếp với người sử dụng
3.2.3 Xây dựng Ontology
Quy trình xây dựng Ontology gồm 7 bước do Stanford Center for Biomedical Informatics Research đưa ra:
- Bước 1: Xác định miền và phạm vi của Ontology
- Bước 2: Xem xét việc tái sử dụng Ontology sẵn có