1. Trang chủ
  2. » Luận Văn - Báo Cáo

TÌM HIỂU VỀ ONTOLOGY VÀ XÂY DỰNG ỨNG DỤNG QUẢN LÝ BÁN HÀNG NÔNG SẢN TRỰC TUYẾN

19 1,2K 17

Đ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

Thông tin cơ bản

Định dạng
Số trang 19
Dung lượng 365,5 KB

Nội dung

Để 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

Trang 1

VIỆN CÔNG NGHỆ THÔNG TIN VÀ TRUYỀN THÔNG

*************

TIỂU LUẬN Môn học: Web và các dịch vụ thế hệ mới

Mã môn học: IT6210

Đề tài: TÌM HIỂU VỀ ONTOLOGY VÀ XÂY DỰNG ỨNG DỤNG QUẢN LÝ BÁN HÀNG NÔNG SẢN TRỰC TUYẾN

Giảng viên hướng dẫn: TS Phạm Huy Hoàng

Nhóm học viên: Thịnh Thị Lan Điệp - CB120132

Nguyễn Thanh Tùng - CB120163

Lớp:Kỹ thuật máy tính và Truyền thông - 12BMTTT

Hà Nội, 02/2013

Trang 2

LỜI MỞ ĐẦU 4

I.TỔNG QUAN VỀ SEMANTIC WEB 5

1.1.Kiến trúc 5

1.2.Khung Mô tả Tài nguyên 7

1.3.Ontology 8

1.3.1.Khái niệm Ontology 8

1.3.2.Các kiểu kiến trúc của Ontology 8

1.3.3.Vai trò của Ontology 9

1.3.4.Các thành phần của Ontology 9

1.4.Ngôn ngữ OWL 9

II.XÂY DỰNG WEB SEMANTIC TRÊN PHẦN MỀM PROTÉGÉ 10

2.1.Đặc điểm của Protégé 10

2.2.Phương pháp xây dựng ontology 10

2.3.Thành phần OWL Ontology 11

2.3.1.Individual (thực thể) 11

2.4.2 Property (thuộc tính) 11

2.4.3 Class (Lớp) 12

III.XÂY DỰNG ỨNG DỤNG QUẢN LÝ BÁN HÀNG NÔNG SẢN 13

III.1.Mô tả bài toán 13

III.2.Kiến trúc chung của ứng dụng Semantic web 13

III.3.Quy trình xây dựng ứng dụng 14

III.4.Xây dựng ontology 14

III.4.1.Mô hình phân cấp lớp trong Ontology 15

III.4.2.Thực hiện xây dựng HignOnt 15

III.5.Thiết kế chương trình 16

Trang 3

III.5.1.Điền dữ liệu 16

III.5.2.Duyệt theo ngữ nghĩa 17

III.5.3.Tìm kiếm cơ bản 17

KẾT LUẬN 18

TÀI LIỆU THAM KHẢO 19

Trang 4

LỜI MỞ ĐẦU

Công nghệ Web ngày càng đóng vai trò rất quan trong trong việc trao đổi thông tin giữa con người với nhau trên thế giới Nó giúp chúng ta tiết kiệm được cả về thời gian cũng như tiền bạc so với cách cũ mà ta vẫn thường làm Hiện nay việc cải tiến các công

cụ phục vụ trong công nghệ web rất quan trọng và được nhiều cá nhân, tổ chức quan tâm Với những thông tin có sẵn và tỉ lệ gia tăng người dùng hiện nay, có thể khẳng định rằng Web là một công nghệ thành công gây ấn tượng nhất Hiện nay, Web thâm nhập vào hầu hết mọi lĩnh vực trong đời sống Thành công của Web là dựa trên tính đơn giản, dễ hiểu của nó

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.

Trong báo cáo này, nhóm đi vào tìm hiểu công nghệ Semantic web, trong đó đi sâu vào nghiên cứu thành phần quan trọng của công nghệ này đó là RDF và Ontology, từ đó đi xây dựng ứng dụng quản lý bán hàng nông sản trực tuyến

Trang 5

I TỔNG QUAN VỀ SEMANTIC WEB

Semantic Web – 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) Khác với Web hiện hành, Semantic Web hướng tới đối tượng phục vụ chính của mình là máy, song nó vẫn kế thừa từ Web hiện hành và kết quả là tạo ra một môi trường làm việc cộng tác người máy trong khai thác thông tin trên Web

Để 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

- Phát triển nâng cao Web có ngữ nghĩa

1.1 Kiến trúc

Hình 1: Kiến trúc phân tầng của Semantic Web được hoàn thiện năm 2006

Trang 6

Như được mô tả trong Hình 1, các tầng của kiến trúc WebNN đã được quy chuẩn với các chuẩn đã được W3C đề xuất cũng như cộng đồng nghiên cứu WebNN thống nhất sử dụng trên thực tế (de facto) Theo đó, dữ liệu trong Web ngữ nghĩa dựa cơ sở trên XML, và được mô hình hoá bằng RDF RDF cũng được chọn là chuẩn trao đổi dữ liệu trong Web ngữ nghĩa Ngôn ngữ Ontology được chuẩn hoá là OWL dựa trên cơ sở của RDFS; trong khi đó, chuẩn ngôn ngữ cho các luật vẫn đang còn chưa đồng nhất được cho đến bây giờ Bên cạnh đó, ngôn ngữ truy vấn SPARQL đã được sử dụng rộng rãi và là khuyến nghị của W3C, tuy

nó chưa trở thành chuẩn thật sự Ở ba tầng trên vẫn đang là những vấn đề cần được nghiên cứu trong tương lai

Trong suốt vài năm trở lại đây, các công nghệ liên quan đến Web ngữ nghĩa đã xuất hiện hoặc đã được hiệu chỉnh nhiều Một trong những phần quan trọng của những tiến triển này là các ngôn ngữ phát triển ontology Trong thời gian đầu, hàng loạt các ngôn ngữ đã đua nhau xuất hiện, tuy nhiên chúng đã ổn định thời gian gần đây với các chuẩn đã được chấp thuận Tổ chức W3C đã làm việc tích cực để chuẩn hoá các chuẩn và đã phê chuẩn RDF và ngôn ngữ ontology OWL là hai chuẩn quan trọng nhất trong số các công nghệ WebNN Điều này đã cung cấp một

cơ sở vững chắc để triển khai các ứng dụng Web ngữ nghĩa trên diện rộng, cũng như làm đòn bẩy cho việc đưa WebNN từ nghiên cứu sang ứng dụng trong công nghiệp cũng như các chuẩn cho nó để xây dựng các thế hệ ứng dụng mới

Theo kiến trúc này Semantic Web được phân thành các tầng Cụ thể mỗi tầng được miêu tả như sau:

- 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

Trang 7

- 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 Khung Mô tả Tài nguyên

Khung mô tả tài nguyên (RDF) là một ngôn ngữ siêu dữ liệu để biểu diễn dữ liệu trên Web và cung cấp một mô hình để mô tả và tạo các mối quan hệ giữa các tài nguyên RDF định nghĩa một nguồn tài nguyên (resource) như một đối tượng bất kỳ có khả năng xác định duy nhất bởi một URI Các nguồn tài nguyên có các thuộc tính đi kèm Các thuộc tính (predicate/property) được xác định bởi các kiểu thuộc tính và các kiểu thuộc tính có các giá trị tương ứng Kiểu thuộc tính biểu diễn các mối quan hệ của các giá trị được kết hợp với các tài nguyên

Mô hình dữ liệu của RDF là các bộ ba (triple) gồm: (Chủ-thể, Thuộc-tính, Đối-tượng)

- Chủ-thể (Subject): được xác định bởi URI cụ thể

- Thuộc-tính (Predicate): thuộc tính của siêu dữ liệu, cũng được xác định bởi một URI

- Đối-tượng (Object): giá trị của thuộc tính, có thể là một giá trị (literal) hoặc một URI

Ví dụ: Dữ liệu về tên họ của một cá nhân có mã số (ID) xác định

Trang 8

Chủ-thể Thuộc-tính Đối-tượng http://www.hueuni.edu.vn/StaffID/123

Được biểu diễn như Hình 2:

Hình 2: Đồ thị RDF biểu diễn ví dụ trên

1.3 Ontology

Thuật ngữ Ontology bắt nguồn từ triết học, nó được sử dụng như tên của một lĩnh vực nghiên cứu về sự tồn tại của tự nhiên, xác định các vật thể trong tự nhiên

và làm thế nào để mô tả chúng Chẳng hạn như quan sát thế giới thực, xác định các đối tượng và sau đó nhóm chúng lại thành các lớp trừu tượng dựa trên thuộc tính chung Tuy nhiên, trong những năm gần đây, Ontology đã trở thành một thuật ngữ được biết đến nhiều trong lĩnh vực khoa học máy tính và có ý nghĩa khác xa so với nghĩa ban đầu của nó Ontology được xem như là “linh hồn” của WebNN Chúng giúp con người và máy có thể hợp tác, cùng nhau làm việc, giúp máy có thể “hiểu”

và có khả năng xử lý thông tin hiệu quả

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

Trang 9

1.3.3 Vai trò của Ontology

- 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.4 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

Trang 10

II XÂY DỰNG WEB SEMANTIC TRÊN 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

2.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

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.2 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:

Trang 11

+ 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 đó 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

2.3 Thành phần OWL Ontology

2.3.1 Individual (thực thể)

- Là một đối tượng nào đó tồn tại trong tự nhiên

- Có thể có nhiều tên được sử dụng để nói về một thực thể

- Thực thể được xem như là thể hiện của lớp, làm rõ hơn về lớp đó

2.4.2 Property (thuộc tính)

- Thể hiện quan hệ nhị phân của các thực thể (quan hệ giữa hai thực thể) như liên kết hai thực thể với nhau

- Thuộc tính có có khả năng đảo ngược với nhau

* Property có 4 loại:

Trang 12

+ Inverse Functional: Thuộc tính đảo ngược của Functional.

+ Transitive: Thực thể a quan hệ với thực thể b, thực thể b quan hệ với thực thể

c -> thực thể a quan hệ với thực thể c

+ Symmetric: Thực thể a quan hệ với thực thể b -> thực thể b quan hệ với thực thể a

* Property có 3 kiểu thể hiện:

+ Object Property: Liên kết thực thể này với thực thể khác

+ DataType Property: Liên kết thực thể với kiểu dữ liệu XML Schema, RDF literal

+ Annotation Property: Thêm các thông tin metadata về lớp, thuộc tính hay thực thể khác thuộc 2 kiểu trên

2.4.3 Class (Lớp)

- Lớp OWL là một bộ những thực thể, các thực thể được mô tả logic để định nghĩa các đối tượng của lớp

- Lớp được xây dựng theo cấu trúc phân cấp cha-con như là một sự phân loại các đối tượng

Trang 13

III XÂY DỰNG ỨNG DỤNG QUẢN LÝ BÁN HÀNG NÔNG

SẢN

III.1 Mô tả bài toán

Mua hàng trực tuyến đang ngày càng phát triển và phổ biến ở Việt Nam, nhờ thành tựu của khoa học kỹ thuật mà việc mua bán ngày càng trở nên dễ dàng hơn Sau đây nhóm xin đi vào tìm hiểu việc xây dựng một ứng dụng hỗ trợ mua bán nông sản trực tuyến sử dụng web ngữ nghĩa, để một sản phẩm từ nơi sản xuất đến thẳng tay người tiêu dùng mà không qua các đại lý trung gian nhằm đảm bảo chất lượng tốt và giá thành hợp lý

Đối với người mua hàng, 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 mục hàng nông sản để lựa chọn với các thông tin đi kèm và thực hiện đuợc việc mua bán sản phẩm Ngoài ra ứng dụng còn cho phép chúng ta tìm kiếm bằng cách nhập vào các từ khóa Điều này cho phép người mua tự tra cứu các danh mục nông sản theo từng chủ đề

III.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 và 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

- Dữ liệu tìm kiếm, mạng ngữ nghĩa

Mô hình được đề xuất như sau:

Ngày đăng: 21/07/2015, 10:54

TỪ KHÓA LIÊN QUAN

TÀI LIỆU CÙNG NGƯỜI DÙNG

TÀI LIỆU LIÊN QUAN

w