Ứng dụng semantic web để phát triển hệ thống tư vấn việc làm

13 511 1
Ứng dụng semantic web để phát triển hệ thống tư vấn việc làm

Đang tải... (xem toàn văn)

Tài liệu hạn chế xem trước, để xem đầy đủ mời bạn chọn Tải xuống

Thông tin tài liệu

1 BỘ GIÁO DỤC VÀ ĐÀO TẠO ĐẠI HỌC ĐÀ NẴNG PHẠM THANH HÙNG ỨNG DỤNG SEMANTIC WEB ĐỂ PHÁT TRIỂN HỆ THỐNG VẤN VIỆC LÀM Chuyên ngành: KHOA HỌC MÁY TÍNH Mã số: 60.48.01 TÓM TẮT LUẬN VĂN THẠC SĨ KỸ THUẬT Đà Nẵng - Năm 2011 2 Công trình được hoàn thành tại ĐẠI HỌC ĐÀ NẴNG Người hướng dẫn khoa học: PGS. TS. Lê Văn Sơn Phản biện 1: TS. Huỳnh Công Pháp Phản biện 2: PGS.TS. Đoàn Văn Ban Luận văn được bảo vệ trước Hội đồng chấm Luận văn tốt nghiệp thạc sĩ kỹ thuật họp tại Đại học Đà Nẵng vào ngày 15 tháng 10 năm 2011 Có thể tìm hiểu luận văn tại: - Trung tâm Thông tin - Học liệu, Đại học Đà Nẵng - Trung tâm Học liệu, Đại học Đà Nẵng. 3 MỞ ĐẦU  Lý do chọn đề tài Web 2.0 đã đạt được những thành tựu rất đáng kể trong việc nâng cao tính tương tác cũng như đẩy nhanh tốc độ xử lý đáp ứng yêu cầu của người dùng. Tuy nhiên trong xã hội thông tin đương đại nhu cầu của người dùng không dừng lại ở việc cải thiện tốc độ mà còn phải cải thiện chất lượng xử lý của trang web theo yêu cầu ngày càng nâng cao. Web 3.0 (Web Semantic) ra đời nhằm đáp ứng những yêu cầu về chất lượng đó. Với đặc điểm chính là nâng cao khả năng chia sẻ tài nguyên và tăng “sự hiểu biết” trong quá trình xử lý dữ liệu của máy tính. Web Semantic đã đi sâu vào phân tích và định hướng dữ liệu, đồng thời hỗ trợ phát triển ứng dụng Web Semantic trên nhiều lĩnh vực khác nhau. Một trong những lĩnh vực thế mạnh của Web Semantic là xử lý và tìm kiếm thông tin. Việc phân tích và định hướng nội dung lưu trữ cho phép chúng ta xây dựng những cơ sở dữ liệu phục vụ tìm kiếm chính xác hơn, tinh gọn hơn. Nước ta đang trên đà phát triển hội nhập với thế giới, nền kinh tế thị trường nhiều thành phần mở ra nhiều cơ hội việc làm cho tất cả mọi người. Hàng ngàn cơ hội việc làm chờ đón chúng ta mỗi ngày. Nhưng làm sao những thông tin đó có thể đến với người lao động một cách nhanh nhất và chính xác nhất, người đi tìm việc không phải mất công với một đống bùi nhùi các công việc phải lựa chọn. Đó là điều trăn trở của người đi tìm việc làm cũng như đối với các công ty tuyển dụng. Bên cạnh đó, hiện nay vấn đề việc làm là một vấn đề nhứt nhối với nhiều nước trên thế giới. Nạn thất nghiệp làm ảnh hưởng không nhỏ đến quá trình phát triển của một quốc gia. Ở nước ta hàng năm 4 có hàng trăm ngàn sinh viên ra trường nhưng chỉ số ít trong đó kiếm được việc làm phù hợp còn lại là thất nghiệp hoặc làm những công việc không phù hợp với trình độ và năng lực của bản thân. Với những vấn đề đã nêu trên tôi đề xuất xây dựng đề tài “Ứng dụng công nghệ semantic web để phát triển hệ thống vấn việc làm”.  Mục tiêu và nhiệm vụ nguyên cứu Nghiên cứu công nghệ Semantic web, tìm hiểu hướng phát triển một ứng dụng sử dụng công nghệ Semantic web. Từ đó, phát triển ứng dụng vấn việc làm.  Phạm vi và đối tượng nghiên cứu  Đối tượng nghiên cứu Đối tượng nghiên cứu gồm: Web ngữ nghĩa, phương pháp xây dựng và lưu trữ dữ liệu trong Web ngữ nghĩa, các công cụ dùng để xây dựng Web ngữ nghĩa, các công cụ dùng để thực hiện triển khai hệ thống thành chương trình như Visual Studio, các ngôn ngữ lập trình, các gói thư viện mở rộng và hình thức vấn việc làm.  Phạm vi nghiên cứu • Xây dựng tập từ vựng Ontology về vấn việc làm • Xây dựng ứng dụng để vấn việc làm trên cơ sở tập từ vựng đã tạo  Phương pháp nghiên cứu  Phương pháp nghiên cứu lý thuyết • Nghiên cứu tài liệu, công cụ và công nghệ liên quan. • Tổng hợp các tài liệu, dữ liệu.  Phương pháp khảo sát • Tìm hiểu các hình thức vấn việc làm từ các trung tâm hoặc từ các hệ thống vấn qua mạng hiện có. 5 • Tìm hiểu các vấn đề liên quan các thông tin cần thiết trong quá trình vấn.  Phương pháp nghiên cứu thực nghiệm • Phân tích hệ thống, xây dựng ứng dụng.  Ý nghĩa khoa học và thực tiễn của đề tài  Tiếp cận công nghệ mới, phát triển ứng dụng mẫu làm bước đệm để thâm nhập xâu hơn vào công nghệ này.  Về mặt thực tiễn: Tạo ứng dụng mẫu để dựa vào đó có thể phát triển một ứng dụng hoàn thiện góp phần cải thiện vấn đề việc làm ở nước ta hiện nay  Bố cục luận văn Luận văn được chia làm 3 chương Chương 1 trình bày nội dung nghiên cứu tổng quan về web ngữ nghĩa, thực hiện nghiên cứu các lý thuyết liên quan đến công nghệ xây dựng một web ngữ nghĩa, đặc biệt khái niệm về RDF, Ontology. Ontology đóng một vai trò quan trọng do đây là phương tiện giúp cung cấp ngữ nghĩa cho các trang web. Chương 2 chúng tôi giới thiệu một số công cụ hỗ trợ xây dựng web ngữ nghĩa và giới thiệu về môi trường, ngôn ngữ để phát triển ứng dụng. Chương 3 Đề xuất giải pháp, giới thiệu quá trình phát triển, cài đặt ứng dụng và đưa ra một số kết quả thực hiện của ứng dụng. 6 Chương 1 TỔNG QUAN VỀ SEMANTIC WEB Trong chương này, tôi dành để giới thiệu những kết quả nghiên cứu tổng quan về web ngữ nghĩa, các vấn đề liên quan đến web ngữ nghĩa 1.1 Web ngữ nghĩa (Semantic Web – SW) 1.1.1 Giới thiệu Web ngữ nghĩa là sự mở rộng của Web hiện tại mà trong đó thông tin được định nghĩa rõ ràng sao cho con người và máy tính có thể cùng làm việc với nhau một cách hiệu quả hơn. Mục tiêu của Web có ngữ nghĩa là để phát triển các chuẩn chung và công nghệ cho phép máy tính có thể hiểu được nhiều hơn thông tin trên Web, sao cho chúng có thể hỗ trợ tốt hơn việc khám phá thông tin, tích hợp dữ liệu (dữ liệu liên kết động), và tự động hóa các công việc. 1.1.2 Web ngữ nghĩa là gì? Web ngữ nghĩa được phát triển bởi Tim- Berners Lee, cha đẻ của WWW, URIs, HTTP và HTML. Theo Ông, ‘‘ Web ngữ nghĩa là sự mở rộng của Web hiện tại, cho phép người dùng có thể truy tìm, phối hợp, sử dụng lại và trích lọc thông tin một cách dễ dàng và chính xác ’’. (Tim- Berners Lee, XML-2000). 1.1.2.1 Nội dung xây dựng Web ngữ nghĩa Để xây dựng hệ thống Web ngữ nghĩa thay thế cho World Wide Web hiện tại, các nhà nghiên cứu đang nỗ lực và tập trung nghiên cứu với ba hướng chính sau:  Chuẩn hoá các ngôn ngữ biểu diễn dữ liệu (XML) và siêu dữ liệu (RDF) trên Web.  Chuẩn hoá các ngôn ngữ biểu diễn Ontology cho Web có ngữ nghĩa. 7  Phát triển nâng cao Web có ngữ nghĩa (Semantic Web Advanced Development - SWAD). 1.1.2.2 Kiến trúc phân tầng của Semantic Web Hình 1.1 Kiến trúc phân tầng của web ngữ nghĩa năm 2006 Trong cấu trúc trên mỗi tầng có một vai trò nhất định:  Tầng URI, UNICODE  Unicode: là một bảng mã chuẩn chung có đủ các ký tự để thống nhất sự giao tiếp trên tất cả các quốc gia.  URI (Uniform Resource Identifier):là kí hiệu nhận dạng Web đơn giản.  Tầng XML XML – (eXtensible Markup Language) là ngôn ngữ đánh dấu mở rộng, cho phép người dùng có thể tùy ý thêm vào những thẻ theo yêu cầu của mình.  Tầng RDF RDF (Resource Description Framework): Khung mô tả tài nguyên - RDF được W3C giới thiệu để cung cấp một cú pháp chuẩn để tạo, thay đổi và sử dụng các chú thích trong Web ngữ nghĩa. 8  Tầng Ontology Ontology Vocabulary Bộ từ vựng ontology được xây dựng trên cơ sở tầng RDF và RDFS, cung cấp biểu diễn ngữ nghĩa mềm dẻo cho tài nguyên web và có khả năng hỗ trợ lập luận.  Tầng Logic Việc biểu diễn các tài nguyên dưới dạng các bộ từ vựng ontology có mục đích là để máy có thể lập luận được. Mà cơ sở lập luận chủ yếu dựa vào logic.  Tầng Proof Tầng này đưa ra các luật để suy luận. Cụ thể từ các thông tin đã có ta có thể suy ra các thông tin mới.  Tầng Trust Đảm bảo tính tin cậy của các ứng dụng trên Web ngữ nghĩa. 1.2 RDF Nền tảng của Semantic Web 1.2.1 Giới thiệu về RDF RDF là một thành phần quan trọng của Semantic Web, được đặt trên XML, RDF sử dụng cú pháp của XML để biểu diễn thông tin. Ngôn ngữ XML dùng để biểu diễn thông tin trong RDF được gọi là RDF/XML. Thông qua định dạng này, các thông tin trong RDF có thể được trao đổi dễ dàng giữa các hệ thống máy tính cũng như các hệ điều hành hay các ngôn ngữ lập trình ứng dụng khác nhau. 1.2.2 RDF là gì? RDF (Resource Description Framework) là một “bộ khung” được sử dụng để mô tả các nguồn tài nguyên trên Internet 1.2.3 Mô hình RDF Mô hình cơ bản của RDF gồm ba đối tượng sau:  Tài nguyên (Resources): là tất cả những gì được mô tả bằng biểu thức RDF. 9  Thuộc tính (Properties): thuộc tính, đặc tính, hoặc quan hệ dùng để mô tả tính chất của tài nguyên.  Phát biểu (Statements): mỗi phát biểu gồm ba thành phần sau:  Subject (Tài nguyên): địa chỉ hay vị trí tài nguyên muốn mô tả  Predicate (Vị ngữ): xác định tính chất của tài nguyên.  Object (Bổ ngữ): có thể là một giá trị nguyên thủy hoặc cũng có thể là một tài nguyên. Mỗi một phát biểu (subject, predicate, object) còn gọi là một bộ ba ( triple). Ví dụ: Xét phát biểu sau “Sơn có anh là Minh” Phát biểu trên được phân ra thành các phần sau: Subject sơn Predicate hasBrother (có anh) Object Minh 1.2.4 Đồ thị RDF Một tập hợp các RDF Triple được gọi là một đồ thị RDF (RDF Graph). Hình 1.2 Mối quan hệ giữa các thành phần trong triple Subject Object predicate 10 Vi dụ 1: Mô hình hóa cho phát biểu trên Hình 1.3 Mô hình bộ ba Triple 1.2.5 Namespace Namespace là một tập các tên (name), được định danh bởi các URI, được sử dụng trong các tài liệu XML như các element type và attribute name 1.2.6 Literal Literal được sử dụng để biểu diễn các giá trị như con số, ngày tháng, chuỗi . Bất cứ cái gì có thể biểu diễn bởi một giá tri Literal cũng có thể được biểu diễn dưới dạng một URI. 1.2.7 Kiểu dữ liệu có cấu trúc 1.2.7.1 RDF Container RDF sử dụng một số phần tử đặc biệt để xây dựng các danh sách, gọi là các “bộ chứa” (RDF Container). Ba phần tử chính được dùng để mô tả các nhóm là rdf:Bag, rdf:Seq và rdf:Alt. 1.2.7.2 RDF Collection RDF collection cho phép khai báo một tập hợp đóng. Cấu trúc của RDF Collection tương tự như một danh sách, có phần tử đầu (rdf:first), phần tử kế (rdf:rest)và phần tử cuối(rdf:nil). http://localhost:8080/owls.owl#Sơn http://localhost:8080/owls.owl#Minh http://localhost:8080/owls.owl# hasBrother 11 1.2.8 RDFS (RDF Schema) RDFS được sử dụng để định nghĩa các nguồn tài nguyên và các lớp. Trong RDF, tất cả mọi thứ đều được coi là các nguồn tài nguyên, bản thân các lớp cũng là các nguồn tài nguyên, nhưng bên trong nó cũng có thể là tập hợp các nguồn tài nguyên khác. RDF/RDFS trước đây được coi là một thành phần cốt yếu để biểu diễn nội dung trong Semantic Web. Tuy nhiên, chúng không đủ mạnh để mô tả thông tin một cách chi tiết. Cụ thể hơn, chúng không có các ràng buộc cục bộ giữa domain và range, các ràng buộc tồn tại, tập hợp, các thuộc tính bắc cầu nghịch đảo, đối xứng… (các thuộc tính liên quan đến logic), và đặc biệt là chúng không có chuẩn ngữ nghĩa nên khó hỗ trợ cho suy diễn, lập luận. 1.3 Ontology và ngôn ngữ Web OWL 1.3.1 Khái niệm Ontology Ontology cung cấp một bộ t ừ v ự ng chung dùng đ ể mô t ả một l ĩ nh v ự c ngh ĩ a là m ộ t lo ạ i đ ối t ượ ng hay khái ni ệ m hi ệ n h ữ u, cùng v ớ i các thuộc tính và quan h ệ gi ữ a chúng và lời đặ c t ả cho ngh ĩ a c ủ a nh ữ ng t ừ trong b ộ từ v ự ng. 1.3.2 Các kiểu kiến trúc của Ontology Trong môi tr ườ ng m ở nh ư Web, các ontology đượ c phát tri ể n và b ả o trì m ộ t cách độ c l ậ p trong môi tr ườ ng phân tán. Do đ ó hai h ệ th ố ng có th ể s ử d ụ ng hai ontology khác nhau để mô t ả cho hai domain t ươ ng t ự nhau, v ấ n đề này đượ c g ọ i là không th ố ng nh ấ t ontology. Có ba ki ế n trúc c ơ b ả n nh ằ m gi ả i quy ế t v ấ n đề này, đ ó là: ontology đơ n, đ a ontology, và ontology ph ứ c h ợ p: 1.3.3 Vai trò của Ontology Danh sách d ướ i đ ây s ẽ phân tích vai trò c ủ a Ontology trong ng ữ c ả nh ứ ng d ụ ng Web có ng ữ ngh ĩ a. 12  Chia s ẻ s ự hi ể u bi ế t chung gi ữ a các ứ ng d ụ ng và con ng ườ i.  Cho phép s ử d ụ ng l ạ i tri th ứ c.  Đư a ra các gi ả thi ế t rõ ràng v ề mi ề n.  Phân tách tri th ứ c l ĩ nh v ự c v ớ i tri th ứ c thao tác.  Phân tích tri th ứ c l ĩ nh v ự c. Phân tích hình th ứ c c ủ a các khái ni ệ m, c ầ n thi ế t cho vi ệ c tái s ử d ụ ng và m ở r ộ ng Ontology. 1.3.4 Các thành phần của Ontology  Các cá thể (Individuals): Các cá th ể là các thành ph ầ n c ơ b ả n, n ề n t ả ng c ủ a m ộ t Ontology.  Các lớp (Classes): các l ớ p là các nhóm, t ậ p h ợ p các đố i t ượ ng trừu t ượ ng. Chúng có th ể ch ứ a các cá th ể , các l ớ p khác, hay là s ự ph ố i h ợ p c ủ a c ả hai.  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ó.  Các mối quan hệ (Relation): 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. 1.3.5 Ngôn ngữ OWL OWL (The Web Ontology Language) là m ộ t ngôn ng ữ g ầ n nh ư XML dùng để mô t ả các h ệ c ơ s ở tri th ứ c. OWL là m ộ t ngôn ng ữ đ ánh d ấ u dùng để xu ấ t b ả n và chia s ẻ d ữ li ệ u trên Internet thông qua nh ữ ng mô hình d ữ li ệ u g ọ i là “Ontology”. OWL bi ể u di ễ n ý ngh ĩ a c ủ a các thu ậ t ng ữ trong các t ừ v ự ng và m ố i liên h ệ gi ữ a các thu ậ t ng ữ này để đả m b ả o phù h ợ p v ớ i quá trình x ử lý b ở i các ph ầ n m ề m. 13 Chương 2 CHƯƠNG PHƯƠNG PHÁP VÀ CÔNG CỤ XÂY DỰNG WEB SEMANTIC Hi ệ n có r ấ t nhi ề u công c ụ có kh ả n ă ng h ỗ tr ợ ng ườ i thi ế t k ế gi ả i quy ế t nh ữ ng bài toán liên quan. Có th ể k ể ra m ộ t s ố nh ư : Sesame, Protégé, Ontolingua, Chimaera, OntoEdit, OidEd… Ngoài ra trong n ộ i dung ch ươ ng này còn gi ớ i thi ệ u s ơ l ượ c m ộ t s ố ứ ng d ụ ng đượ c xây d ự ng trên n ề n Semantic web. 2.1 Một số công cụ xây dựng ontology 2.1.1 Phần mềm Chimaera Chimaera c ũ ng là m ộ t ứ ng d ụ ng đượ c phát tri ể n b ở i đạ i h ọ c Stanford, v ớ i m ụ c đ ích ban đầ u nh ằ m gi ả i quy ế t hai v ấ n đề là: tr ộ n các Ontology và chu ẩ n đ oán l ỗ i, phân tích tính nh ấ t quán gi ữ a các Ontology phân tán. 2.1.2 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. 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.  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.  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. 14 2.1.3 Công cụ Jena 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: 2.1.4 Phần mềm Protégé Protégé là b ộ ph ầ n m ề m mã ngu ồ n m ở Java n ổ i ti ế ng. Protégé đượ 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, Đ H. Stanford nh ằ m qu ả n lý các thông tin trong l ĩ nh v ự c sinh y h ọ c. Mã ngu ồ n Protégé có th ể đượ c tìm th ấ y t ạ i website: http://smi-protege.stanford.edu/repos/protege/owl/trunk Hình 2.1 Giao diện phần mềm Protégé 2.1.4.1 Đặc điểm của Protégé Ch ứ c n ă ng n ổ i b ậ t nh ấ t c ủ a ph ầ n m ề m này là cho phép ng ườ i dùng s ử dụ ng t ạ o ra các ontology để phát tri ể n Web Semantic theo đ úng chu ẩ n c ủ a ngôn ng ữ W3C OWL. Protégé có hai phiên b ả n OWL và API. 15 Phiên bả n Protégé -API có n ề n tả ng t ừ OKBC (Open Knowledge Base Connectivity). OKBC là m ộ t ứ ng dụ ng l ậ p trì nh giao ti ế p th ự c hi ệ n truy xu ấ t d ữ li ệ u thông minh. Phiên bả n Protégé -OWL đượ c phát tri ể n d ự a trên hai yêu c ầ u chính. Đầ u tiên là yêu c ầ u đị nh nghĩ a cá c đố i t ượ ng và quan h ệ t ồ n t ạ i gi ữ a chúng. Sau đó là yêu c ầ u xây d ự ng các đặ c đ i ể m k ỹ thu ậ t phụ c vụ ý t ưở ng chia s ẻ thông tin. Các đố i t ượ ng xây d ự ng chính c ủ a Protégé 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  Domain – gi ớ i h ạ n của ontology  Vocabulary – các l ớ p và khai báo 2.1.4.2 Protégé sử dụng giao diện đồ họa Hình 2.2 Giao tiếp bằng đồ họa của Protégé 2.1.4.3 Protégé phát triển để tích hợp các công cụ 16 Hình 2.3 Protégé tích hợp công cụ OWL Viz 2.2 Thư viện phát triển ứng dụng 2.2.1 Thư viện mã nguồn mở OWLDotNetAPI Nhi ệ m v ụ c ủ a OwlDotNetApi là k ế t h ợ p C# và OWL, th ự c hi ệ n đọ 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. Hình 2.4 Mô hình quan hệ giữa các nút và các cạnh Xu ấ t phát t ừ vi ệ c đồ th ị hoá n ộ i dung c ủ a d ữ li ệ u nên OwlDotNetApi đ áp ứ ng đượ c h ầ u h ế t t ấ t c ả các chu ẩ n mà W3C đư a 1 2 3 Các đỉnh tương ứng với các lớp Các đỉnh tương ứng với các thuộc tính 17 ra. Tuy nhiên vi ệ c truy c ậ p d ữ li ệ u không thông qua câu l ệ nh truy v ấ n nên vi ệ c l ậ p trình v ớ i th ư vi ệ n này có hi ệ u qu ả không cao. OwlDotNetApi có hai ph ầ n chính là l ớ p ch ứ c n ă ng và l ớ p giao ti ế p: 2.3 Phương pháp xây dựng ontology D ự a trên cá c b ướ c xây d ự ng ontology củ a Noy và McGuinness ta có s ự tinh gọ n công vi ệ c trong m ỗ i b ướ c nh ư sau:  Bước 1 . Xác đị nh m ụ c đ ích phát tri ể n ontology .  Bước 2 . N ắ m b ắ t kỹ thu ậ t xây d ự ng ontology: B ướ c nà y g ồ m ba giai đ o ạ n nh ư sau:  Xác đị nh ph ạ m vi c ủ a ontology  Ch ọ n ph ươ ng th ứ c n ắ m b ắ t ontology  Đị nh ngh ĩ a các khái ni ệ m trong ontology  Bước 3 . Xem xét s ử d ụ ng l ạ i các ontology đ ang t ồ n t ạ i .  Bước 4 . Mã hoá ontology L ự a ch ọ n trình biên t ậ p ontology d ự a trên các yêu c ầ u c ủ a l ĩ nh v ự c và ch ứ c n ă ng c ủ a ontology. Mã hóa ontology là ti ế n trình l ặ p, g ồ m các b ướ c con sau:  Mã hóa ontology t ổ ng quát.  Đị nh ngh ĩ a l ớ p.  S ắ p x ế p các l ớ p theo cây phân c ấ p  Đị nh ngh ĩ a thu ộ c tính và mô t ả giá tr ị c ủ a thu ộ c tính.  Bước 5 . C ả i ti ế n ontology Bao gồm hai giai đoạn: C ả i ti ế n mã hóa bên trong (intra-coding): c ả i ti ế n trong quá trình mã hóa. Trong khi mã hóa, n ế u phát hi ệ n ra l ỗ i ho ặ c yêu c ầ u m ớ i, mã c ầ n đượ c c ả i ti ế n để hi ệ u ch ỉ nh ho ặ c th ự c hi ệ n yêu c ầ u m ớ i đ ó. 18 C ả i ti ế n mã hóa bên ngoài (extra-coding): hi ệ u ch ỉ nh l ỗ i phát hi ệ n đượ c trong quá trình ki ể m th ử , và nh ữ ng m ở r ộ ng c ủ a ontology theo các phân h ệ ứ ng d ụ ng.  Bước 6 : Ki ể m th ử Phát hi ệ n nh ượ c đ i ể m c ủ a ontology  Bước 7 : Duy trì Th ự c hi ệ n các vi ệ c hi ệ u ch ỉ nh, thích ứ ng ho ặ c hoàn t ấ t ontology. Hi ệ u ch ỉ nh là xem xét v ấ n đề m ắ c ph ả i khi truy v ấ n ontology và hi ệ u ch ỉ nh ontology để kh ắ c ph ụ c các v ấ n đề này.Thích ứ ng bao g ồ m vi ệ c đ i ề u ch ỉ nh ontology theo các yêu c ầ u m ớ i phát sinh. Hoàn t ấ t ontology là phát tri ể n c ả i ti ế n ontology trong t ươ ng lai. 19 Chương 3 PHÁT TRIỂN ỨNG DỤNG 3.1 Mô tả bài toán Tìm ki ế m vi ệ c làm luôn là m ộ t ứ ng d ụ ng r ấ t quan tr ọ ng và th ự c t ế cho th ấ y có r ấ t nhi ề u công c ụ h ỗ tr ợ t ư v ấ n và tìm ki ế m vi ệ c làm đ ã và đ ang đượ c s ử d ụ ng. Nh ư ng hi ệ u qu ả c ủ a nó mang l ạ i ch ư a cao. D ự a vào th ự c t ế đ ó và nh ữ ng nghiên c ứ u v ề công ngh ệ web ng ữ ngh ĩ a, tôi xây d ự ng m ộ t ứ ng d ụ ng h ỗ tr ợ t ư v ấ n vi ệ c làm s ử d ụ ng công ngh ệ web ng ữ ngh ĩ a. Ứ ng d ụ ng đượ c xây d ự ng nh ằ m ph ụ c cho đố i t ượ ng là t ấ t c ả m ọ i ng ườ i lao độ ng trong xã h ộ i có nhu c ầ u tìm ki ế m m ộ t vi ệ c làm phù h ợ p. Đố i v ớ i ng ườ i đ i tìm vi ệ c làm, sau khi nh ậ p vào các thông tin cá nhân c ầ n thi ế t h ệ th ố ng s ẽ đư a ra danh sách các vi ệ c làm phù h ợ p v ớ i n ă ng l ự c c ủ a h ọ và đồ ng th ờ i đư a ra m ộ t s ố thông tin t ư v ấ n liên quan đế n công ty có tuy ể n d ụ ng vi ệ c làm đ ó. Ngoài ra ứ ng d ụ ng còn cho phép chúng ta tìm vi ệ c làm b ằ ng cách nh ậ p vào các t ừ khóa. Đ i ề u này cho phép chúng ta t ự tra c ứ u các danh m ụ c vi ệ c làm theo ch ủ đề . 3.2 Kiến trúc chung của ứng dụng Semantic web C ấ u trúc c ủ a m ộ t máy tìm ki ế m theo công ngh ệ web ng ữ ngh ĩ a, v ề c ơ b ả n c ũ ng có c ấ u trúc t ươ ng t ự v ớ i m ộ t máy tìm ki ế m thông th ườ ng, bao g ồ m 2 thành ph ầ n chính  Giao di ệ n truy v ấ n: cho phép ng ườ i dùng nh ậ p yêu c ầ u tìm ki ế m  Hi ể n th ị k ế t qu ả tìm ki ế m Ph ầ n ki ế n trúc bên trong là ph ầ n c ố t lõi c ủ a máy tìm ki ế m bao g ồ m các thành ph ầ n chính :  Phân tích yêu c ầ u  Tìm ki ế m k ế t qu ả cho yêu c ầ u 20  D ữ li ệ u tìm ki ế m, m ạ ng ng ữ ngh ĩ a Mô hình đượ c đề xu ấ t trong lu ậ n v ă n cho ứ ng d ụ ng tìm ki ế m ng ữ ngh ĩ a trong l ĩ nh v ự c đị a đ i ể m nh ư sau: Hình 3.1 Mô hình ứng dụng tìm kiếm ngữ nghĩa thông tin  Web Browser : đ óng vai trò giao ti ế p v ớ i ng ườ i dung.  Searc h Engine : Đ ây là ch ứ c n ă ng chính c ủ a ch ươ ng trình th ự c hi ệ n các thao tác sau:  T ổ ch ứ c l ư u tr ữ Ontology và theo các quan h ệ , thu ộ c tính c ủ a Ontology để hi ể n th ị các thông tin theo d ạ ng phân c ấ p.  Th ự c hi ệ n truy v ấ n yêu c ầ u c ủ a ng ườ i dùng trên Ontology và tr ả v ề k ế t qu ả cho Web Browser đị a đ i ể m theo yêu c ầ u c ủ a ng ườ i dùng. Web Browser Metadata OWLDotNetA PI/SPARQL Ontology Search Engine Gởi yêu cầu Nhận kết quả . hướng phát triển một ứng dụng sử dụng công nghệ Semantic web. Từ đó, phát triển ứng dụng tư vấn việc làm.  Phạm vi và đối tư ng nghiên cứu  Đối tư ng. đề tài Ứng dụng công nghệ semantic web để phát triển hệ thống tư vấn việc làm .  Mục tiêu và nhiệm vụ nguyên cứu Nghiên cứu công nghệ Semantic web, tìm

Ngày đăng: 31/12/2013, 10:20

Từ khóa liên quan

Tài liệu cùng người dùng

  • Đang cập nhật ...

Tài liệu liên quan