Tải bản đầy đủ (.pdf) (62 trang)

Đồ án tìm hiểu về knowledge graph

Bạn đang xem bản rút gọn của tài liệu. Xem và tải ngay bản đầy đủ của tài liệu tại đây (2.77 MB, 62 trang )

ĐẠI HỌC QUỐC GIA THÀNH PHỐ HỒ CHÍ MINH
TRƯỜNG ĐẠI HỌC CÔNG NGHỆ THÔNG TIN
KHOA CÔNG NGHỆ PHẦN MỀM

BÁO CÁO ĐỒ ÁN 1

Đề tài: Tìm hiểu về Knowledge Graph
GVHD: ThS. Huỳnh Hồ Thị Mộng Trinh
Sinh viên thực hiện:
Trần Võ Việt Quốc – MSSV: 20520725


ĐỒ ÁN 1

Trần Võ Việt Quốc – 20520725

 Tp. Hồ Chí Minh, 2023 
NHẬN XÉT CỦA GIÁO VIÊN HƯỚNG DẪN
............................................................................................................................................
............................................................................................................................................
............................................................................................................................................
............................................................................................................................................
............................................................................................................................................
............................................................................................................................................
............................................................................................................................................
............................................................................................................................................
............................................................................................................................................
............................................................................................................................................
............................................................................................................................................
............................................................................................................................................
............................................................................................................................................


............................................................................................................................................
............................................................................................................................................
............................................................................................................................................
............................................................................................................................................
............................................................................................................................................
............................................................................................................................................
............................................................................................................................................
............................................................................................................................................
……., ngày……...tháng……năm 20…
Người nhận xét
(Ký tên và ghi rõ họ tên)


ĐỒ ÁN 1

Trần Võ Việt Quốc – 20520725

LỜI CẢM ƠN
Trước hết, em xin gửi lời cảm ơn đến Trường Đại học Công nghệ thông tin –
ĐHQGTPHCM và các thầy cô là giảng viên của khoa Công nghệ phần mềm đã tạo điều
kiện để em hoàn thành đồ án 1 – Chủ đề Tìm hiểu về Knowledge Graph.
Em xin gửi lời cảm ơn chân thành và sâu sắc đến cô Huỳnh Hồ Thị Mộng Trinh là giảng
viên hướng dẫn trực tiếp và trang bị cho em có những kiến thức căn bản vững chắc để
thực hiện đồ án này.
Trong khoảng thời gian thực hiện đồ án, em đã học hỏi thêm được nhiều kiến thức, kinh
nghiệm, biết được thêm về nhiều công nghệ mới. Em đã vận dụng những kiến thức nền
tảng đã tích lũy đồng thời kết hợp với việc học hỏi và nghiên cứu những kiến thức mới.
Từ đó, em vận dụng tối đa những gì đã học hỏi được để hoàn thành báo cáo đồ án này.
Tuy nhiên, trong q trình thực hiện, em khơng tránh khỏi những thiếu sót. Chính vì vậy,
em rất mong nhận được góp ý từ phía thầy, cơ nhằm hồn thiện những kiến thức, kĩ năng

và là hành trang để em thực hiện tiếp các đề tài khác trong tương lai.

Em xin chân thành cảm ơn cô!


ĐỒ ÁN 1

Trần Võ Việt Quốc – 20520725

Mục lục
TÓM TẮT ĐỒ ÁN

1

CHƯƠNG I. GIỚI THIỆU TỔNG QUAN

2

1. Tổng quan đề tài ....................................................................................................... 2
1.1. Giới thiệu đề tài .................................................................................................. 2
1.2. Lý do chọn đề tài ................................................................................................ 2
1.3. Phạm vi nghiên cứu ............................................................................................ 3
1.4. Nội dung nghiên cứu .......................................................................................... 3
1.5. Kết quả hướng tới ............................................................................................... 3
2. Công nghệ sử dụng ................................................................................................... 4

CHƯƠNG II. CƠ SỞ LÝ THUYẾT

5


1. Knowledge Graph ..................................................................................................... 5
1.1. Knowledge Graph là gì? ..................................................................................... 5
1.2. Tính chất ............................................................................................................. 6
1.3. Ontologies và ngữ nghĩa hình thức .................................................................... 7
1.4. RDF .................................................................................................................... 9
1.5. GraphDB .......................................................................................................... 11
1.6. SPARQL ........................................................................................................... 16
2. Tính năng ................................................................................................................ 17
3. Lợi ích và bất lợi ..................................................................................................... 18
4. Các thành phần quan trọng khi cài đặt graphDB .................................................... 20
4.1. GraphDB repository: ........................................................................................ 20
4.2. RDF store: ........................................................................................................ 22
4.3. SPARQL endpoint:........................................................................................... 22
4.4. Visual Graph Browser: ..................................................................................... 24

CHƯƠNG III. XÂY DỰNG HỆ THỐNG

26

1. Xây dựng kiến trúc hệ thống................................................................................... 26
1.1. Công nghệ sử dụng ........................................................................................... 26


ĐỒ ÁN 1

Trần Võ Việt Quốc – 20520725

1.2. Sơ đồ use case .................................................................................................. 26
1.3. Mô tả use case .................................................................................................. 27
1.4. Đặc tả use case ................................................................................................. 28

1.4.1. Đăng ký .................................................................................................... 28
1.4.2. Đăng nhập với email và mật khẩu............................................................ 29
1.4.3. Tạo đơn đặt phịng.................................................................................... 30
1.4.4. Tìm kiếm .................................................................................................. 32
1.4.5. Lọc ............................................................................................................ 33
1.4.6. Cài đặt cá nhân ......................................................................................... 34
1.4.7. Chỉnh sửa thông tin cá nhân ..................................................................... 36
1.4.8. Đăng xuất ................................................................................................. 37
2. Mô tả các màn hình ................................................................................................. 39
2.1. Màn hình đăng nhập ......................................................................................... 39
2.2. Màn hình đăng ký: ............................................................................................ 40
2.3. Màn hình trang chủ........................................................................................... 42
2.4. Màn hình chi tiết homestay .............................................................................. 44
2.5. Màn hình thơng tin tài khoản ........................................................................... 46
2.6. Màn hình chỉnh sửa thơng tin cá nhân ............................................................. 48
2.7. Màn hình chatbot trả lời ................................................................................... 50
3. Sơ đồ lớp ................................................................................................................. 52
4. Sơ đồ hoạt động ...................................................................................................... 52
4.1. Hoạt động đăng ký ........................................................................................... 52
4.2. Hoạt động tìm kiếm sản phẩm.......................................................................... 54

CHƯƠNG IV. KẾT LUẬN

55

1. Những khó khăn...................................................................................................... 55
2. Kết quả đạt được ..................................................................................................... 55
3. Hướng phát triển ..................................................................................................... 56

TÀI LIỆU THAM KHẢO


57


TĨM TẮT ĐỒ ÁN
Đồ án "Tìm hiểu về Knowledge Graph" nhằm nghiên cứu và khám phá khái niệm
Knowledge Graph, một cơng nghệ đang phát triển nhanh chóng trong lĩnh vực trí tuệ
nhân tạo và khai thác tri thức. Knowledge Graph là một biểu diễn cấu trúc của tri thức,
mô tả mối quan hệ giữa các thực thể khác nhau dưới dạng đồ thị. Đồ án tập trung vào
việc nghiên cứu các khía cạnh quan trọng của Knowledge Graph, bao gồm kiến thức
nền tảng, tính năng, ưu điểm và hạn chế.
Trong quá trình nghiên cứu, đồ án đề xuất một quy trình xây dựng Knowledge Graph
từ việc thu thập và tiền xử lý dữ liệu đến việc xác định các mối quan hệ và tri thức
chính. Nghiên cứu cũng tập trung vào các công nghệ và công cụ để truy vấn và khám
phá tri thức trong Knowledge Graph, bao gồm các phương pháp truy vấn thơng minh
và phân tích ngữ nghĩa.
Đồ án cũng đề cập đến những ứng dụng và tiềm năng phát triển của Knowledge Graph
trong các lĩnh vực như tìm kiếm thơng tin, hỗ trợ ra quyết định và phân tích dữ liệu.
Ngồi ra, cũng được đề cập đến những khó khăn và thách thức trong q trình nghiên
cứu Knowledge Graph, bao gồm việc xử lý dữ liệu đa nguồn, đảm bảo tính chính xác
và nhất quán của tri thức, cũng như khả năng biểu diễn tri thức phức tạp.
Cuối cùng, đồ án nhấn mạnh về hướng phát triển của Knowledge Graph, bao gồm cải
thiện khả năng truy vấn và khám phá tri thức, hỗ trợ ra quyết định thông minh và kết
hợp với công nghệ blockchain. Đồ án kết luận rằng Knowledge Graph là một lĩnh vực
đầy triển vọng và tiềm năng, đóng vai trị quan trọng trong việc hiểu và khai thác tri
thức từ dữ liệu.

1



ĐỒ ÁN 1

Trần Võ Việt Quốc – 20520725

CHƯƠNG I. GIỚI THIỆU TỔNG QUAN
1. Tổng quan đề tài
1.1. Giới thiệu đề tài
Đồ án "Tìm hiểu về Knowledge Graph" khám phá và đánh giá Knowledge Graph từ
nhiều mặt, bao gồm cả mặt kỹ thuật và kinh doanh.
Về mặt kỹ thuật, đồ án tập trung vào việc nghiên cứu các công nghệ, ngôn ngữ và công
cụ được sử dụng trong xây dựng Knowledge Graph, như RDF, OWL, SPARQL và các
hệ thống cơ sở dữ liệu phân tán. Nó cũng khám phá các phương pháp và kỹ thuật truy
vấn, khám phá tri thức và phân tích ngữ nghĩa trong Knowledge Graph.
Về mặt kinh doanh, đồ án xem xét ứng dụng của Knowledge Graph trong các lĩnh vực
như tìm kiếm thơng tin, hỗ trợ ra quyết định, phân tích dữ liệu và quản lý tri thức. Nó
trình bày các lợi ích kinh doanh của Knowledge Graph, bao gồm khả năng cải thiện
hiệu suất và hiệu quả, tăng cường khả năng tìm kiếm và khám phá thông tin, và nâng
cao khả năng đưa ra quyết định dựa trên tri thức.
Ngoài ra, đồ án cũng đề cập đến các vấn đề liên quan đến việc triển khai và quản lý
Knowledge Graph, bao gồm việc xác định và thu thập dữ liệu, xử lý và đồng bộ hóa dữ
liệu, và đảm bảo tính bảo mật và riêng tư.
Tóm lại, đồ án "Tìm hiểu về Knowledge Graph" khám phá Knowledge Graph từ nhiều
mặt, bao gồm cả mặt kỹ thuật và kinh doanh, để hiểu rõ hơn về ứng dụng và tiềm năng
của nó trong các lĩnh vực khác nhau.
1.2. Lý do chọn đề tài

2


ĐỒ ÁN 1


Trần Võ Việt Quốc – 20520725

Em chọn đề tài Knowledge Graph vì sự mới mẻ và phát triển của lĩnh vực này. Nghiên
cứu về Knowledge Graph cung cấp cơ hội hiểu và khám phá ứng dụng trong nhiều lĩnh
vực khác nhau như tìm kiếm thơng tin, hỗ trợ ra quyết định và quản lý tri thức. Đồng
thời, nó cũng mang lại sự đóng góp tri thức mới và phát triển các công nghệ và phương
pháp liên quan. Với tính ứng dụng thực tế và tiềm năng đa ngành, đề tài Knowledge
Graph hứa hẹn mang lại những nghiên cứu đáng chú ý và cung cấp giải pháp sáng tạo
cho các vấn đề hiện tại và tương lai.
1.3. Phạm vi nghiên cứu
Trong đồ án lần này, em sẽ tập trung nghiên cứu về các thành phần có trong Knowledge
Graph, tìm hiểu các khái niệm liên quan, và áp dụng những nghiên cứu vào một ứng
dụng thực tế để có thể hiểu sâu hơn các kiến thức đã tìm hiểu.
1.4. Nội dung nghiên cứu
Em sẽ tiến hành nghiên cứu chi tiết về cách thức hoạt động, ưu – khuyết điểm đặc biệt
là cách mà Knowledge Graph truy xuất thông tin.
1.5. Kết quả hướng tới
• Đối với cá nhân: nắm vững các khái niệm, phương pháp, công nghệ liên quan
đến xây dựng, biểu diễn và khai thác tri thức trong một hệ thống đồ thị, phát
triển khả năng nghiên cứu, thu thập và xử lý dữ liệu, cũng như phân tích và tìm
hiểu tri thức từ Knowledge Graph.
• Đối với các lập trình viên khác sử dụng đồ án này làm tài liệu tham khảo: em tin
chắc thông qua tài liệu này, các lập trình viên khác có thể dễ dàng định hướng
cần phải tìm hiểu gì khi muốn xây dựng Knowledge Graph và tìm hiểu sâu hơn

3


ĐỒ ÁN 1


Trần Võ Việt Quốc – 20520725

2. Công nghệ sử dụng
• Visual Studio Code: IDE hỗ trợ xây dựng ứng dụng
• Figma: Tool hỗ trợ xây dựng UI cho ứng dụng
• GraphDB: Tool hỗ trợ xây dựng và truy vấn knowledge graph

4


ĐỒ ÁN 1

Trần Võ Việt Quốc – 20520725

CHƯƠNG II. CƠ SỞ LÝ THUYẾT
1. Knowledge Graph
1.1. Knowledge Graph là gì?
Knowledge Graph còn được gọi là mạng ngữ nghĩa, biểu thị mạng lưới các thực thể
trong thế giới thực - tức là các đối tượng, sự kiện, tình huống hoặc khái niệm - và minh
họa mối quan hệ giữa chúng. Thông tin này thường được lưu trữ trong cơ sở dữ liệu đồ
thị và được hiển thị dưới dạng cấu trúc đồ thị, dẫn đến thuật ngữ “đồ thị” kiến thức.
Một biểu đồ tri thức được tạo thành từ ba thành phần chính: nút, cạnh và nhãn. Bất kỳ
đối tượng, địa điểm hoặc người nào cũng có thể là một nút. Một cạnh xác định mối
quan hệ giữa các nút. Bất cứ thứ gì cũng có thể hoạt động như một nút, ví dụ: con
người, cơng ty, máy tính, v.v. Một cạnh kết nối một cặp nút và nắm bắt mối quan hệ lợi
ích giữa chúng, ví dụ: mối quan hệ bạn bè giữa hai người, mối quan hệ khách hàng
giữa công ty và con người , hoặc kết nối mạng giữa hai máy tính. Các nhãn ghi lại ý
nghĩa của mối quan hệ, ví dụ, mối quan hệ bạn bè giữa hai người.
Ví dụ, từ câu “Albert Einstein là nhà vật lý lý thuyết người Đức , người đã phát

triển thuyết tương đối.” chúng ta có thể trích xuất các thực thể Albert
Einstein , Đức , Nhà vật lý lý thuyết và Thuyết tương đối ; và các mối quan hệ sinh ra
trong , nghề nghiệp và phát triển . Khi đoạn sơ đồ tri thức này được kết hợp vào một
sơ đồ tri thức lớn hơn, chúng ta sẽ nhận được các liên kết bổ sung (được hiển thị bằng
các cạnh chấm), chẳng hạn như Nhà vật lý lý thuyết là một loại Nhà Vật lý thực
hành Vật lý, và Thuyết Tương đối đó là một nhánh của Vật lý.

5


ĐỒ ÁN 1

Trần Võ Việt Quốc – 20520725

Hình 1. Sơ đồ tri thức Albert Einstein
1.2. Tính chất
• Độ tin cậy: Knowledge Graph cung cấp một cơ sở tri thức đáng tin cậy, nơi tri
thức được thu thập, xác thực và cập nhật từ các nguồn đáng tin cậy. Điều này
giúp đảm bảo rằng tri thức trong Knowledge Graph là chính xác và đáng tin cậy
để sử dụng trong các quá trình ra quyết định và tìm kiếm thơng tin.
• Tính phong phú và đa dạng: Knowledge Graph có khả năng tổ chức và biểu diễn
tri thức từ nhiều lĩnh vực và nguồn dữ liệu khác nhau. Nó cung cấp một mơ hình
linh hoạt để mơ tả các thực thể, mối quan hệ và thuộc tính liên quan đến các lĩnh
vực khác nhau, từ khoa học, kỹ thuật, y tế đến văn hóa, lịch sử và nhiều lĩnh vực
khác.
• Khả năng liên kết và kết hợp: Knowledge Graph có khả năng liên kết và kết hợp
tri thức từ các nguồn dữ liệu khác nhau. Nó kết nối các thực thể và mối quan hệ
từ các nguồn khác nhau, tạo ra sự kết nối và tích hợp giữa các khái niệm và
thơng tin khác nhau. Điều này mở ra khả năng tạo ra những mối quan hệ mới,


6


ĐỒ ÁN 1

Trần Võ Việt Quốc – 20520725

khám phá thông tin tiềm năng và tăng cường sự đa dạng và liên kết trong tri
thức.
• Tính linh hoạt và mở rộng: Knowledge Graph cho phép mở rộng và mở rộng tri
thức theo thời gian. Nó có khả năng thêm mới các thực thể, mối quan hệ và
thuộc tính khi có thêm thông tin mới, cho phép nâng cao sự phong phú và độ chi
tiết của tri thức. Đồng thời, Knowledge Graph cũng có khả năng tích hợp và mở
rộng với các hệ thống và nguồn dữ liệu khác nhau.
• Tính truy vấn và khám phá: Knowledge Graph cung cấp khả năng truy vấn và
khám phá tri thức thông qua các truy vấn phức tạp. Người dùng có thể tìm kiếm
thơng tin cụ thể, khám phá mối quan hệ giữa các thực thể, và thu thập tri thức từ
các tương tác giữa các yếu tố trong Knowledge Graph.
• Tính tương tác và ứng dụng: Knowledge Graph có tính tương tác cao, cho phép
người dùng tương tác và sử dụng tri thức trong các ứng dụng thực tế. Nó cung
cấp cơ sở cho việc phát triển các ứng dụng thông minh, hỗ trợ quyết định, khám
phá tri thức và tạo ra những trải nghiệm tương tác đa dạng.
1.3. Ontologies và ngữ nghĩa hình thức
Ontologies (các quy chuẩn tri thức) là một phần quan trọng trong việc xây dựng và
phát triển Knowledge Graph. Chúng đóng vai trị trong việc mơ tả cấu trúc, quan hệ và
thuộc tính của tri thức trong Knowledge Graph. Ontologies cung cấp một khung công
cụ để định nghĩa các khái niệm, các mối quan hệ giữa chúng và các thuộc tính tương
ứng.
Ontologies xác định cách mà tri thức được tổ chức và biểu diễn trong Knowledge
Graph. Chúng mô tả các thực thể và mối quan hệ giữa chúng, đồng thời xác định các

thuộc tính và ràng buộc của các thành phần trong Knowledge Graph. Ontologies giúp

7


ĐỒ ÁN 1

Trần Võ Việt Quốc – 20520725

tạo ra sự nhất quán và một cấu trúc rõ ràng cho tri thức, đồng thời giúp các hệ thống và
ứng dụng có thể hiểu và tương tác với tri thức trong Knowledge Graph.
Ontologies có ảnh hưởng lớn đến Knowledge Graph bởi vì chúng cung cấp cấu trúc và
quy tắc cho việc tổ chức và sử dụng tri thức. Bằng cách định nghĩa các thuộc tính, quan
hệ và ràng buộc, ontologies giúp đảm bảo tính nhất quán và độ tin cậy của tri thức
trong Knowledge Graph. Ngoài ra, ontologies cũng cho phép mở rộng và tích hợp tri
thức từ các nguồn dữ liệu khác nhau, tạo ra sự kết nối và tương tác giữa các
Knowledge Graph khác nhau.
Ontologies là nhân tố quan trọng ngữ nghĩa chính thức của một Google Knowledge
Graph. Chúng có thể được xem như là Data Schema của đồ thị. Chúng đóng vai trị
như mối ràng buộc giữa người phát triển Knowledge Graph và người dùng về ý nghĩa
của dữ liệu trong đó. Bản thể học đảm bảo sự hiểu biết chung về dữ liệu và ý nghĩa của
nó.
Khi ngữ nghĩa chính thức được sử dụng để diễn đạt và giải thích dữ liệu của
Knowledge Graph, sẽ có một số cơng cụ trình bày và mơ hình hóa:
• Classes: Thơng thường, một mô tả thực thể chứa phân loại của thực thể liên
quan đến hệ thống phân cấp lớp. Ví dụ, khi xử lý thơng tin doanh nghiệp, có thể
có các lớp nhân sự, tổ chức và vị trí.
• Relationship types: Các mối quan hệ giữa các thực thể thường được gắn thẻ với
các loại, cung cấp thông tin về bản chất của mối quan hệ.
• Categories: Một thực thể có thể được liên kết với các danh mục mơ tả một số

khía cạnh ngữ nghĩa của nó. Một cuốn sách có thể đồng thời thuộc tất cả các
danh mục sau: “Sách về Châu Phi” , “Sách bán chạy nhất” , “Sách của các tác
giả người Ý” , “Sách dành cho trẻ em”…. Các danh mục này được mô tả và sắp
xếp theo thứ tự phân loại.

8


ĐỒ ÁN 1

Trần Võ Việt Quốc – 20520725

• Free Text Descriptions: Thông thường, mô tả thân thiện với người dùng được
cung cấp để làm rõ thêm ý định thiết kế cho thực thể và cải thiện tìm kiếm.

Hình 2. Ontology cho địa lý của quốc gia, hiển thị hệ thống phân cấp của các lớp
Tóm lại, ontologies là một yếu tố quan trọng trong việc xây dựng và phát triển
Knowledge Graph, đóng vai trị trong việc định nghĩa cấu trúc, quan hệ và thuộc tính
của tri thức và đảm bảo tính nhất quán và đáng tin cậy của Knowledge Graph.
1.4. RDF
RDF là viết tắt của Resource Description Framework và là một chuẩn định dạng dữ
liệu phổ biến trong việc mô tả tri thức và tạo nên cấu trúc của Knowledge Graph. Mặc

9


ĐỒ ÁN 1

Trần Võ Việt Quốc – 20520725


dù có nhiều công cụ thông thường để xử lý dữ liệu và cụ thể hơn là để xử lý các mối
quan hệ giữa dữ liệu, RDF là tiêu chuẩn dễ dàng nhất, mạnh nhất và biểu cảm nhất
được thiết kế cho đến nay.
Các thành phần của một triple RDF bao gồm:
• Subject (Chủ thể): Đại diện cho một thực thể hoặc tài nguyên trong tri thức.
• Predicate (Mối quan hệ): Biểu diễn một mối quan hệ giữa chủ thể và đối tượng.
• Object (Đối tượng): Đại diện cho giá trị hoặc một thực thể khác trong tri thức.

Hình 3. Một triple RDF
Ví dụ: John là một nhà phát triển phần mềm

Hình 4. Một triple RDF sau khi phân tích ví dụ
Sự ảnh hưởng của RDF với Knowledge Graph:
• Định dạng biểu diễn dữ liệu: RDF cung cấp một cách chuẩn để biểu diễn tri thức
dưới dạng các triple, tạo nên cấu trúc cơ bản của Knowledge Graph. Nó cho
phép tổ chức và lưu trữ dữ liệu tri thức một cách linh hoạt và có khả năng tương
tác.

10


ĐỒ ÁN 1

Trần Võ Việt Quốc – 20520725

• Tính nhất quán và tương tác: RDF được sử dụng để đảm bảo tính nhất quán và
khả năng tương tác giữa các hệ thống tri thức khác nhau. Các triple RDF có thể
được chia sẻ, truyền tải và kết hợp từ nhiều nguồn tri thức khác nhau, tạo nên sự
tương tác và tích hợp thơng tin.
• Mở rộng và mở rộng tri thức: RDF cho phép mở rộng tri thức theo thời gian.

Các triple RDF có thể được thêm mới hoặc sửa đổi để cập nhật tri thức và tăng
cường Knowledge Graph.
• Tương thích với các chuẩn ontologies: RDF là một thành phần quan trọng trong
việc triển khai ontologies. Nó hỗ trợ các chuẩn ontologies như RDF Schema
(RDFS) và Web Ontology Language (OWL), giúp xác định và mô tả cấu trúc,
mối quan hệ và thuộc tính của tri thức.

Hình 5. Một đoạn lưu trữ RDF bằng định dạng TTL (Terse RDF Triple Language)
1.5. GraphDB
GraphDB là một hệ quản lý cơ sở dữ liệu đồ thị (graph database) mạnh mẽ và linh
hoạt, được thiết kế để lưu trữ, truy vấn và quản lý tri thức trong các Knowledge Graph.
Đây là một giải pháp phổ biến trong lĩnh vực trí tuệ nhân tạo và phân tích tri thức.

11


ĐỒ ÁN 1

Trần Võ Việt Quốc – 20520725

Với GraphDB, bạn có thể xây dựng và tổ chức Knowledge Graph theo cách mà phù
hợp nhất với nhu cầu của mình. Nó cung cấp một mơi trường linh hoạt để mơ hình hóa
tri thức, xác định các khái niệm, mối quan hệ và thuộc tính, và xây dựng các mạng tri
thức phức tạp.
GraphDB hỗ trợ ngôn ngữ truy vấn SPARQL, cho phép bạn truy vấn và khám phá tri
thức trong Knowledge Graph theo cách linh hoạt và mạnh mẽ. Bạn có thể tìm kiếm
thơng tin, khám phá mối quan hệ giữa các thực thể, và thực hiện các truy vấn phức tạp
để trích xuất tri thức từ dữ liệu.
Một trong những điểm mạnh của GraphDB là khả năng xử lý dữ liệu đồ thị lớn và phức
tạp. Nó hỗ trợ các tính năng như đánh chỉ mục, tối ưu truy vấn, và nhất quán dữ liệu để

đảm bảo hiệu suất và tính nhất quán cao.
GraphDB cung cấp giao diện đồ họa và API phong phú để quản lý và tương tác với
Knowledge Graph. Bạn có thể trực quan hóa và thao tác trực tiếp với dữ liệu, xây dựng
các truy vấn phức tạp, và tích hợp với các ứng dụng và hệ thống khác.

12


ĐỒ ÁN 1

Trần Võ Việt Quốc – 20520725

Hình 6. Giao diện của GraphDB localhost
Chúng ta có thể xây dựng Knowledge Graph bằng cách import dữ liệu rdf định dạng ttl
đã xây dựng vào một repository trong GraphDB.

Hình 7. Giao diện Repositories của graphDB
Tạo một Repository để import dữ liệu

13


ĐỒ ÁN 1

Trần Võ Việt Quốc – 20520725

Hình 8. Các option để tạo repository

Hình 9. Các thuộc tính cần thiết để tạo một repository


14


ĐỒ ÁN 1

Trần Võ Việt Quốc – 20520725

Hình 10. Dữ liệu RDF sau khi import dữ liệu vào graphDB

Hình 11. Knowledge Graph sau khi import dữ liệu vào graphDB

15


ĐỒ ÁN 1

Trần Võ Việt Quốc – 20520725

1.6. SPARQL
SPARQL (phát âm là “sparkle”) hiện là ngôn ngữ truy vấn RDF phổ biến nhất; tên của
nó là từ viết tắt đệ quy viết tắt của “Giao thức SPARQL và Ngôn ngữ truy vấn
RDF”. Nó đã được chuẩn hóa bởi RDF Data Access Working Group (DAWG) của
World Wide Web Consortium, và hiện được coi là một công nghệ Web ngữ nghĩa quan
trọng. Vào ngày 15 tháng 1 năm 2008, SPARQL đã trở thành Khuyến nghị chính thức
của W3C.
SPARQL là ngơn ngữ truy vấn tiêu chuẩn trong Knowledge Graph. Nó cho phép truy
vấn dữ liệu, khám phá tri thức và tương tác với tri thức. SPARQL hỗ trợ truy vấn mạnh
mẽ, tìm kiếm thông tin cụ thể và khám phá mối quan hệ giữa các thực thể. Nó cũng
đảm bảo tính nhất qn và tương thích với các hệ thống tri thức khác. Sử dụng
SPARQL, người dùng có thể tìm hiểu và sử dụng tri thức trong Knowledge Graph một

cách hiệu quả.

16


ĐỒ ÁN 1

Trần Võ Việt Quốc – 20520725

Hình 12. Dùng SPARQL để truy vấn các đối tượng có location là “Ho Chi Minh City”
và xuất ra name của các đối tượng đó
2. Tính năng
• Đồ thị tri thức: Knowledge Graph xây dựng một đồ thị tri thức, trong đó các
thực thể và mối quan hệ giữa chúng được biểu diễn bằng các nút và cạnh. Điều
này giúp tổ chức tri thức theo cấu trúc hệ thống và tạo ra một mơ hình tương tác
giữa các yếu tố.
• Liên kết tri thức: Knowledge Graph cho phép liên kết và kết hợp tri thức từ
nhiều nguồn dữ liệu khác nhau. Điều này giúp tăng cường độ đa dạng và đáng
tin cậy của tri thức, mở rộng phạm vi khám phá và tìm kiếm thơng tin.
• Biểu diễn linh hoạt: Knowledge Graph hỗ trợ biểu diễn linh hoạt của tri thức,
cho phép mô tả các loại dữ liệu và quan hệ phức tạp. Các thuộc tính, đặc điểm
và thuộc tính đa trị có thể được gán cho các thực thể và mối quan hệ, tạo ra một
mơ hình phong phú và chi tiết.

17


ĐỒ ÁN 1

Trần Võ Việt Quốc – 20520725


• Truy vấn và tìm kiếm thơng minh: Knowledge Graph cung cấp khả năng truy
vấn và tìm kiếm thơng minh dựa trên các mối quan hệ và quy tắc tri thức. Người
dùng có thể sử dụng các truy vấn phức tạp để khám phá tri thức, tìm kiếm thơng
tin cụ thể và khám phá các mối quan hệ tiềm năng.
• Hỗ trợ ra quyết định: Knowledge Graph cung cấp tri thức liên quan và mối quan
hệ giữa các thực thể, giúp hỗ trợ q trình ra quyết định thơng minh. Người
dùng có thể dựa vào tri thức có sẵn trong Knowledge Graph để đưa ra quyết
định đáng tin cậy và có căn cứ.
• Khám phá tri thức và phân tích dữ liệu: Knowledge Graph cho phép khám phá
tri thức ẩn và tìm hiểu sâu về mối quan hệ và tương tác giữa các yếu tố. Nó cung
cấp các cơng cụ và phương pháp phân tích dữ liệu để khám phá thơng tin tiềm
năng và rút ra những cái nhìn sâu sắc từ tri thức.
• Tích hợp và kết nối hệ thống: Knowledge Graph có tính năng tích hợp và kết
nối với các hệ thống và nguồn dữ liệu khác. Điều này giúp tạo ra sự đồng nhất
và tương thích trong việc chia sẻ và sử dụng tri thức.
3. Lợi ích và bất lợi
- Lợi ích:
• Tổ chức tri thức: Knowledge Graph giúp tổ chức tri thức theo cấu trúc đồ thị,
mô tả mối quan hệ và tương tác giữa các thực thể. Điều này giúp người dùng
hiểu rõ hơn về cấu trúc tri thức và quan hệ giữa các yếu tố, tạo nên một mơ hình
tri thức mạch lạc.
• Tìm kiếm thơng tin nâng cao: Knowledge Graph cung cấp một khung tri thức
chung, cho phép tìm kiếm thơng tin nhanh chóng và chính xác. Người dùng có
thể sử dụng các truy vấn phức tạp để truy xuất tri thức liên quan và tìm hiểu sâu
về một lĩnh vực cụ thể.

18



ĐỒ ÁN 1

Trần Võ Việt Quốc – 20520725

• Khám phá tri thức ẩn: Knowledge Graph giúp khám phá tri thức ẩn và tìm ra
những mối quan hệ tiềm năng giữa các thực thể. Điều này mở ra cơ hội khám
phá tri thức mới, tạo ra những cái nhìn sâu sắc và hiểu biết mới về các lĩnh vực
khác nhau.
• Hỗ trợ ra quyết định: Knowledge Graph cung cấp tri thức liên quan và mối quan
hệ giữa các thực thể, giúp người dùng đưa ra quyết định thơng minh và có căn
cứ. Tri thức được tổ chức và trực quan hóa trong Knowledge Graph giúp người
dùng hiểu rõ hơn về tình huống và tương tác giữa các yếu tố.
• Tích hợp dữ liệu: Knowledge Graph cho phép tích hợp và liên kết dữ liệu từ
nhiều nguồn khác nhau. Điều này giúp cải thiện sự đồng nhất và đáng tin cậy
của dữ liệu, tạo ra một nguồn tri thức phong phú và đa dạng.
• Ứng dụng đa dạng: Knowledge Graph có thể được áp dụng trong nhiều lĩnh vực
và ngành công nghiệp, từ tìm kiếm thơng tin, hỗ trợ ra quyết định, phân tích dữ
liệu, quản lý tri thức, đến dịch vụ web thông minh và giao dịch thương mại điện
tử.
- Bất lợi:
• Địi hỏi nguồn dữ liệu phong phú: Xây dựng và duy trì Knowledge Graph địi
hỏi có một nguồn dữ liệu phong phú và đáng tin cậy. Việc thu thập, xử lý và cập
nhật dữ liệu phức tạp và đa nguồn có thể tốn thời gian và cơng sức.
• Độ phức tạp của việc xử lý dữ liệu: Xử lý và phân tích dữ liệu trong Knowledge
Graph có thể phức tạp, đặc biệt khi có hàng ngàn hoặc hàng triệu thực thể và
mối quan hệ. Việc tìm kiếm và truy vấn dữ liệu cũng có thể mất nhiều thời gian
và tài ngun tính tốn.
• Khó khăn trong việc đảm bảo độ chính xác: Đối với các Knowledge Graph lớn
và phức tạp, việc đảm bảo độ chính xác của tri thức có thể trở nên khó khăn.


19


ĐỒ ÁN 1

Trần Võ Việt Quốc – 20520725

Nếu dữ liệu khơng được cập nhật và kiểm tra kỹ, có thể xảy ra sai sót và thơng
tin khơng chính xác.
• Thiếu khả năng đại diện cho ngữ nghĩa sâu sắc: Một số phương pháp và cơng cụ
trong Knowledge Graph có thể gặp khó khăn trong việc đại diện cho ngữ nghĩa
sâu sắc và tương đương của các khái niệm. Việc hiểu và biểu diễn ngữ nghĩa cần
sự tinh vi và có thể gặp rủi ro khi đối mặt với đa nghĩa và mâu thuẫn trong tri
thức.
• Rủi ro về bảo mật và quyền riêng tư: Knowledge Graph chứa thông tin quan
trọng và nhạy cảm, do đó có rủi ro về bảo mật và quyền riêng tư. Việc bảo vệ dữ
liệu và đảm bảo quyền riêng tư của người dùng là một thách thức đối với việc
triển khai và sử dụng Knowledge Graph.
4. Các thành phần quan trọng khi cài đặt graphDB
4.1. GraphDB repository:
Là một thành phần quan trọng trong GraphDB để quản lý và tổ chức dữ liệu tri thức.
Nó là nơi lưu trữ các triple (một thực thể, một thuộc tính và một giá trị) và các đối
tượng khác trong Knowledge Graph.
GraphDB reposirory có các tính năng và khả năng sau:
• Lưu trữ dữ liệu RDF: GraphDB Repository được thiết kế để lưu trữ dữ liệu RDF
(Resource Description Framework). Nó hỗ trợ các định dạng RDF phổ biến như
RDF/XML, Turtle, N-Triples và nhiều hơn nữa. Điều này cho phép người dùng
lưu trữ và truy vấn dữ liệu tri thức theo cấu trúc RDF.
• Quản lý và truy vấn tri thức: GraphDB Repository cung cấp các tính năng quản
lý và truy vấn tri thức. Nó cho phép người dùng tạo, xóa và sửa đổi triple, lớp,

thuộc tính và quan hệ trong Knowledge Graph. Người dùng có thể sử dụng ngơn

20


×