You are on page 1of 31

Tóm tắt

Ngày nay, việc tìm kiếm thông tin phục vụ cho công việc, học tập là rất
cần thiết, đặc biệt là trong lĩnh vực giáo dục. Một sinh viên đi du học muốn
tìm kiếm thông tin về những người Việt Nam làm tiến sĩ ở nước đó, hay
muốn tìm kiếm thông tin về những người có cùng hướng nghiên cứu với
mình… Chúng ta có thể sử dụng những công cụ tìm kiếm như Google,
Yahoo search, hoặc qua những mối quan hệ, nhưng đều cho những kết
quả với độ chính xác không cao và chưa đầy đủ thông tin. Vì vậy việc đưa
ra một công cụ tìm kiếm thông tin về những người Việt Nam làm tiến sĩ ở
nước ngoài là rất hữu ích.
Có rất nhiều cách tiếp cận khác nhau để giải quyết bài toán, trong báo
cáo đồ án thực tập tốt nghiệp này sẽ đề cập đến việc xây dựng một
Ontology – Cơ sở tri thức về những người Việt Nam làm tiến sĩ ở nước
ngoài, sau đó biểu diễn cơ sở tri thức này như một mạng xã hội . Cách
tiếp cận này không ngoài mục đích tìm kiếm và chia sẽ thông tin một cách
dễ dàng mà còn hướng tới một công nghệ Web của tương lai đó là Web
3.0 hay còn gọi là Web ngữ nghĩa.

Lời cảm ơn
Trước tiên em xin cảm ơn Tiến sĩ Lê Thanh Hương đã tận tình hướng
dẫn em trong quá trình làm đồ án thực tập tốt nghiệp này. Em cũng xin
cảm ơn các thầy cô giáo trong bộ môn đã tạo điều kiện cho em được thực
tập tại phòng lab. Cảm ơn các bạn đã làm cùng trong đợt thực tập tốt
nghiệp đã đóng góp ý kiến để tôi hoàn thành đồ án tốt hơn.

1
Mục lục
1. Giới thiệu bài toán.................................................................................3
2. Tiếp cận để giải quyết bài toán.............................................................3
3. Kiến trúc hệ thống.................................................................................5
3.1 Kiến trúc Module tạo Ontology từ tập các tài liệu Web................................7
3.1.1 Phase 1: Trích rút term...........................................................................7
3.1.2 Phase 2: Dịch ngữ nghĩa........................................................................8
3.1.3 Phase 3: Tích hợp Ontology.................................................................13
3.2 Thiết kế hệ thống cho phép truy cập dữ liệu từ Ontology đã xây dựng.....13
4. Các kĩ thuật và công nghệ sử dụng...................................................13
4.1 Giới thiệu về Ontology................................................................................13
4.1.1 Cơ sở tri thức và cơ sở dữ liệu............................................................14
4.1.2 Ngôn ngữ xây dựng và triển khai Ontology.........................................14
4.2 Mạng xã hội.................................................................................................16
4.3 Ontology và mạng xã hội............................................................................17
4.4 Ontology Learning từ các loại văn bản.......................................................17
4.4.1 Định nghĩa Ontology Learning .............................................................17
4.4.2 Ontology Learning ‘Layer Cake’...........................................................18
5. Tổng kết và hướng làm việc trong tương lai....................................31
6. Tham khảo............................................................................................31

2
1. Giới thiệu bài toán.
Bài toán đặt ra là tìm kiếm thông tin về những người Việt Nam làm tiến
sĩ ở nước ngoài. Ta sẽ chia ra thành các modun ứng với đề tài thực tập
của nhóm.
Modun thứ nhất: Từ những trang web tìm thấy được nhờ việc tìm kiếm
trên google hay yahoosearch, chúng ta phải giải quyết vấn đề là làm sao
để biết đó là đúng là những trang web để ta trích rút ra những thông tin.
Sau khi giải quyết bài toán này xong chúng ta sẽ có được một tập các
trang web liên quan đến những người cần lấy thông tin.
Modun thứ hai: Bài toán đặt ra tiếp theo là khi có được một tập những
trang web đó làm thế nào để trích rút được đúng và đủ những thông tin về
một người. Sau khi giải quyết xong bài toán này ta lại có được một tập
những thông tin về những người làm tiến sĩ. Nhưng đến đây vẫn chưa đủ,
thông tin của mỗi người viết theo một cách khác nhau, sẽ xảy ra trường
hợp là hai người cùng đề cập đến một vấn đề nhưng cách viết lại khác
nhau làm sao để chúng ta có thể gộp được những thông tin này làm một.
Đây chính là vấn đề ngữ nghĩa của những thông tin thu thập được. Giải
quyết được vấn đề này chúng ta sẽ có được một cơ sở tri thức( bao gồm
cơ sở dữ liệu của những người và mối quan hệ của những người đó).
Modun thứ ba: Vấn đề tiếp theo là biều diễn thông tin phục vụ cho việc
truy vấn được dễ dàng hơn. Có nhiều cách biểu diễn thông tin như: biểu
diễn nó thành một mạng xã hội của những người Việt Nam làm tiến sĩ ở
nước ngoài, hay làm ứng dụng xử lí câu truy vấn là ngôn ngữ tự nhiên,
hay tạo ra được web ngữ nghĩa.

2. Tiếp cận để giải quyết bài toán.


Với Modun thứ nhất ta sẽ dùng các kĩ thuật như Textmining modun này
Tuấn Anh sẽ trình bày rõ hơn trong báo cáo.
Bài toán thứ hai chính là bài toán trích rút thông tin, với đầu vào là một
tập trang web chứa thông tin về những người làm tiến sĩ. Có khá nhiều
cách tiếp cận để giải quyết bài toán này như dùng cách so mẫu trong
những câu viết trong các trang web tức là việc phân tích cú pháp của một
câu nếu giống với mẫu câu đã có thì sẽ phân tích được các thành phần
trong câu đó để đưa ra thông tin. Cách tiếp cận nữa là cách tiếp cận xác
suất. Để giải quyết bài toán này, báo cáo sẽ đưa ra các kĩ thuật để trích rút
thông tin, ứng với mỗi loại thông tin chúng ta sẽ áp dụng những phương
pháp khác nhau. Kĩ thuật sử dụng là Text To Ontology, báo cáo cũng đưa
ra mô hình kiến trúc của ứng dụng sẽ xây dựng. Việc sử dụng Ontology ở
đây là rất phù hợp cho bài toán này vì Ontology cho phép mô hình hóa các
đối tượng và định nghĩa được các ràng buộc giữa các đối tượng. Mặt khác
Ontology cũng như một cây phân cấp các đối tượng, điều này rất tiện lợi

3
cho việc gom nhóm các đối tượng phục vụ cho việc truy vấn. Một điều
thuận lợi nữa khi sử dụng Ontology sẽ được nói đến khi giải quyết bài
toán thứ ba sau.
Bài toán thứ ba, biểu diễn thông tin phục vụ cho việc truy vấn cơ sở tri
thức dễ dàng hơn. Vì khi xây dựng nên một Ontology cùng với dữ liệu là ta
đã có được một cơ sở tri thức về một miền lĩnh vực, bao gồm các thực
thể, mối quan hệ giữa các thực thể đó, còn mạng xã hội tập chung vào
việc khai thác các mối quan hệ, ở đây chủ yếu là các mối quan hệ xã hội
đây chính là một lợi điểm nữa khi xây dựng ứng dụng Ontology.

4
3. Kiến trúc hệ thống.

Trích rút term

Trích rút các Term


Corpus Xử lí ngôn ngữ
.html, . tự nhiên
htm,
Lọc các Term
.txt

Dịch ngữ nghĩa

Dịch ngữ nghĩa các


Term

WordNet
Máy học quy nạp
Xác định quan hệ phân
cấp và tương tự
Nguồn từ
vựng khác
Xác định mối quan hệ
khác

Tích hợp Ontology


Rừng khái niệm
Tích hợp và cập
nhật Ontology

Ontology

Hình 1: Kiến trúc Module tạo Ontology từ tập các tài liệu Web.

5
Database
Ontologies

RD

RDQL Queries
Convert to RDF

User Query
RD
Convert to Text
Interface

Hình 2: Thiết kế hệ thống cho phép truy cập dữ liệu từ Ontology đã xây
dựng

6
Mô tả kiến trúc hệ thống.

3.1 Kiến trúc Module tạo Ontology từ tập các tài liệu Web.
Hình 1 là kiến trúc của Module tạo Ontology từ tập các tài liệu web(OntoLearn).
Có ba phases chính:
Đầu tiên những term trong lĩnh vực được trích rút từ những tài liệu, có thể
là những trang web, có thể là từ những tài liệu liên quan. Những term đó được
lọc sử dụng xử lí ngôn ngữ tự nhiên và kĩ thuật xác suất.
Phase thứ hai: các terms sau khi lọc được dịch nghĩa và sắp xếp theo thứ
tự vào cây phân cấp, từ đó tạo nên cây khái niệm về lĩnh vực.
Phase thứ ba: Cây phân cấp khái niệm dùng để cập nhật Ontology đã xây
dựng.

3.1.1 Phase 1: Trích rút term


Term là tập các từ hay các cụm từ diễn đạt một nghĩa đơn trong một lĩnh
vực. Những term được trích rút nhờ xử lí ngôn ngữ tự nhiên, phân tích cú pháp
của cụm danh từ một cách hợp lí, ví dụ trong tiếng anh thì thường sẽ có cấu
trúc: từ ghép (Credit Cart), tính từ- cụm danh từ (Local Information Office), giới
từ- cụm danh từ (Board of Director).
Tiếp theo là lọc những term đúng sử dụng các phương thức thống kê. Đó
là liên quan lĩnh vực (Domain Relevance) và sự tương ứng trong lĩnh vực
(Domain Consensus) sẽ được mô tả kĩ hơn sau đây.
Tần suất xuất hiện của term trong các văn bản là điều dễ nhận thấy nhất
khi phân tích. Đo lường tính cụ thể của những term trong lĩnh vực đích thông
qua việc phân tích so sánh qua những lĩnh vực khác. Chính xác hơn, ta có n lĩnh
vực {D1, D2. … Dn} và tập các tài liệu liên quan, mối liên quan lĩnh vực của term
t trong lớp Dk được tính bằng:

Trong đó xác suất điều kiện P(t|Dk) được tính:

Với f –t, k là tần suất của term t trong lĩnh vực Dk.
Chúng ta cũng cần đánh giá độ phân tán sử dụng của những term, có
những term có tần suất xuất hiện cao ở một tài liệu những lại hoàn thoàn không
xuất hiện ở những tài liệu khác. Chỉ số DC sẽ đánh giá việc sử dụng phân tán
của từ trong một lĩnh vực. Sự phân tán của term t trong tài liệu d thuộc lĩnh vực
Dk. Entropy nó được thể hiện trong bậc tương ứng của t trong Dk với công thức:

7
Trong đó:

Những term được lọc nhờ sử dụng cả hai chỉ số. Với mỗi term thì trọng số của
nó sẽ được đánh giá bằng chỉ số TW.

Chỉ số α và β được cho trong khoảng (0, 1). Thường thì lấy α = 0.9 và β khoảng
0.25 đến 0.35 nếu số tài liệu thu thập được là lớn.

3.1.2 Phase 2: Dịch ngữ nghĩa


Một tập các terrms được chấp nhận sau phase 1 sẽ được đưa vào một cây gọi
là cây từ vựng. Giống như:

Nếu không có việc phân tích ngữ nghĩa thì Transport Sevice sẽ không có liên
quan gì đến Pubic Trasport Service.
Dịch ngữ nghĩa là việc xử lí xác định khái niệm đúng cho mỗi thành phần
của những term phức tạp. Sau đó xác định mối quan hệ ngữ nghĩa của chúng để
tạo nên nghĩa của term phức tạp. Ví dụ như Bus Service là sự kết hợp của hai
khái niệm Bus và Servie, hai khái niệm này đã được định nghĩa duy nhất (sử
dụng Wordnet ). Khi đó mối quan hệ ngữ nghĩa của hai khái niệm xác định rằng:
Có một dịch vụ có kiểu công việc(service) thực hiện thông qua (thiết bị) đó là bus
cái mà có cùng kiểu với public transport. Từ đó sẽ có mối quan hệ giữa bus
service và pubilc transport service.

8
Phương thức dịch nghĩa này có thể thực hiện được nếu như nghĩa của
các khái niệm được thông qua nghĩa của các thành phần con trong nó. Nhưng
thực sự điều này là không thể, hơn nữa một vài thành phần khái niệm có thể
không nằm trong Ontology ban đầu. Trong trường hợp này thì phải thực hiện
bằng cách khác. Thuật toán đó gọi là: structural semantic interconnection
được sử dụng để học luật và gán nhán cho những cặp khái niệm có mối quan hệ
ngữ nghĩa.

3.1.2.1 Structural semantic interconnection


OntoLearn là một công cụ để mở rộng cũng như cắt bớt Ontology sử
dụng chung. WordNet sẽ được sử dụng như một bảng kê các term và các khái
niệm. Để thêm được một khái niệm mới dưới một hyperonym trong Ontology đã
tồn tại thì phải hiểu cấu trúc của nó. Đưa cho term là một
đa từ có nghĩa trong cây từ vựng T. w1 là cú pháp đầu của t. Quá trình suy diễn
cấu trúc kết hợp với những từ đơn nghĩa wk của WordNet . Nghĩa của t sẽ được
cấu tạo :

Với Synsets(wk) là tập những nghĩa được cung cấp bởi WordNet cho từ wk. Ví
dụ:

Quan hệ cấu trúc ngữ nghĩa là một kiểu nhận dạng mẫu cấu trúc. Có hai cách
biểu diễn cấu trúc đó là dùng Vector hoặc dùng đồ thị ví dụ biểu diễn coach theo
nghĩa thứ 5 trong WordNet là “a vehicle carrying many passengers; used for
public transport”

Đồ thị này gọi là đồ thì ngữ nghĩa (Semantic Graph) được xây dựng nhờ
WordNet.
Thuật toán SSI. Thuật toán SSI là cách tiếp cận lặp lại cơ sở tri thức để ghép
các từ thành một nghĩa. Các vấn đề được chia ra như sau:
• t là một term
• T( ngữ cảnh của t) tập những term chứa t
• I là biểu diễn cấu trúc của T (the semantic context).
• cụ thể cấu trúc của những nghĩa có thể của t

9
(semantic graphs).
• G is a văn phạm mô tả quan hệ cấu trúc (semantic interconnections) giữa
những đối tượng được phân tích.
• Xác định tốt nhất cấu trúc của I giống với một trong những S nào nhất
trong sử dụng G.
• Chọn kết quả tốt nhất.

10
Thuật toán:

11
3.1.2.2 Tạo cây phân cấp trong lĩnh vực.
Khi dùng thuật toán SSI có thể tất cả các term trong cây từ vựng đều
được ghép nghĩa. Sau đó chúng ta phải làm như sau:
 Phân cụm khái niệm: Mõi khái niệm được chia vào một cụm khái niệm
duy nhất dựa trên cơ sở sự giống nhau, sự đồng nghĩa … (ví dụ., manor
house and manorial house, expert guide and skilled guide, bus service
and coach service); chú ý là tìm mối quan hệ giữa các khái niệm chứ
không phải là các từ. Ví dụ, bus#1 và coach#5 là đồng nghĩa, nhưng mối
quan hệ này không được gắn cho từ bus và từ coach.
 Cấu trúc phân cấp: Phân cấp thông tin trong WordNet là để thay thế mối
quan hệ ngữ nghĩa kind-of. Ví dụ: e.g., ferry service kind-of boat service)
 Cụ thể hơn về các phương pháp tạo cây phân cấp sẽ nói rõ hơn ở phần
lí thuyết về các kĩ thuật sử dụng.

3.1.2.3 Thêm mối quan hệ giữa các khái niệm


Để thêm được mối quan hệ giữa các khái niệm ta phải giải quyết:
Lựa chọn bảng tóm tắt các mối quan hệ thích hợp. Học kiểu mẫu mô hình quan
hệ, cái mà giữ mối quan hệ giữa cặp các khái niệm. Áp dụng mô hình cho liên
quan ngữ nghĩa này cho các thành phần của khái niệm phức tạp. Vì mục đích
của chúng ta là tạo nên được cây phân cấp khái niệm nên sẽ không tập chung
vào phần này.
3.1.3 Phase 3: Tích hợp Ontology
Cập nhật vào những Ontology đã tồn tại như WordNet hay các nguồn từ vựng
mà chúng ta đã sử dụng. Phần này cũng chưa cần thiết và cho giai đoạn này
nên không tập chung nghiên cứu.

3.2 Thiết kế hệ thống cho phép truy cập dữ liệu từ Ontology đã


xây dựng.
Ở giai đoạn thực tập này chỉ nghiên cứu cách tạo ra Ontology – Kết
quả của Module thứ hai để giải quyết bài toán đặt ra ban đầu.
Để phát triển thêm ta sẽ nghiên cứu thêm để hệ thống cho phép tự
động chuyển đồi dữ liệu từ Database – Kết quả của việc giải quyết bài
toán của Lương Ngọc Đức, đó là bài toán Trích rút thông tin nhưng dùng
những công cụ phức tạp hơn và trích rút được nhiều thông tin hơn. Việc
tích hợp này sẽ làm cho hệ thống linh động hơn và dữ liệu sẽ được lọc kĩ
hơn.
Còn phần truy vấn cơ sở tri thức có thể đưa ra các hướng khác
nhau để khai thác cơ sở tri thức. Có thể viết ứng dụng xử lí câu truy vấn tự
nhiên hoặc có thể mô hình hóa thành mạng xã hội.
Câu truy vấn vào các file Owl hoặc RDF dựa trên các ngôn ngữ
nhưng điển hình nhất là Ngôn ngữ truy vấn SPARQL:
SELECT ?terrorists
WHERE (?terrorists,<rdf:type>,<people:Terrorist>)
USING
rdf for <http://www.w3.org/1999/02/22-rdf-syntax-ns#>,
rdfs for <http://www.w3.org/2000/01/rdf-schema#>,
events for <http://www.owl-ontologies.com/Events.owl#>,
people for <http://www.owl-ontologies.com/People.owl#>,
locations for <http://www.owl-ontologies.com/Locations.owl#>,
organisations for <http://www.owl-
ontologies.com/Organisations.owl#>,
owl for http://www.w3.org/2002/07/owl#

4. Các kĩ thuật và công nghệ sử dụng.

4.1 Giới thiệu về Ontology


• Các cách tiếp cận xử lí thông tin
– Cách tiếp cận thống kê
– Cách tiếp cận mô tả tri thức
Cách tiếp cận thống kê: Dựa vào sự lặp đi lặp lại của dữ liệu để
đưa ra những luật hay những quy tắc. Khi có một dữ liệu mới thì sẽ áp
dụng những luật đã có để suy ra kết quả.

13
Cách tiếp cận mô tả tri thức: Mô tả cấu trúc của những thông tin
sẽ được xử lí. Dữ liệu trông sẽ như thế nào. Khi có một dữ liệu mới thì
sẽ so sánh cấu trúc dữ liệu của nó rồi đưa ra kết luận
• Ưu và nhược điểm của hai cách tiếp cận
– Cách tiếp cận thống kê: Học được nhiều hơn, nhưng mức độ
chính xác của việc xử lí dữ liệu sẽ thấp hơn. Dư thừa thông
tin, sự nhập nhằng, cần sự lặp lại của thông tin nhiều lần mới
phát hiện ra luật.
– Cách tiếp cận mô tả tri thức: Việc đưa ra được một kết luận
hay việc xử lí cho dữ liệu sẽ chính xác hơn.
Khái niệm: Ontology là một đặc tả khái niệm, ở đó bao gồm một
tập các đối tượng, khái niệm và các thực thể tồn tại trong một vài miền
ứng dụng và có mối quan hệ với nhau.
Mục đích: Cung cấp chia sẽ những hiểu biết về một lĩnh vực cho
cả máy tính và con người.
Các thành phần: bao gồm những thành phần logic của cơ sở tri thức đó
là các luật và những mô tả hình thức về một lĩnh vực. Các thành phần
được suy ra từ:
– Cơ sở dữ liệu
– Suy ra từ máy
– Từ các trang web hay các tài liệu liên quan đến lĩnh vực đó.
Ví dụ: thành phần ontology tri thức cơ sở gia đình có thể nói
rằng: mẹ là một người, người mà có ít nhất 2 con. Dữ liệu thật được lấy
từ trong Database có chứa thông tin rằng: Âu cơ có 100 con. Dựa trên
cơ sở thực tế và định nghĩa hình thức về mẹ. Cơ sở tri thức sẽ suy ra
rằng Âu cơ là một người mẹ.

4.1.1 Cơ sở tri thức và cơ sở dữ liệu

Sự khác nhau căn bản giữa cơ sở tri thức và cơ sở dữ liệu là: Cơ sở tri
thức có những cơ chế suy diễn. Do đó cơ sở tri thức có thể suy ra
những dữ liệu mới từ những dữ liệu đã có nhờ những luật.
Quan niệm về một thế giới mở: Thông tin nếu không tồn tại trong cơ sở
tri thức thì không có nghĩa không tồn tại. Còn đối với CSDL thì nếu
không thấy nghĩa là không có.

4.1.2 Ngôn ngữ xây dựng và triển khai Ontology


Ontology là giả định hình thức về một miền cụ thể -> cần một ngôn ngữ
logic hình thức để mô tả nó.
– Logic vị từ trình tự đầu tiên(first-order predicate logic (FOL))
– XML- RDF ví dụ như RDFS( RDF Schemas) hoặc OWL
(Ontology Web Language).

14
Ở đây ta sẽ dùng mô hình dữ liệu RDF là một đồ thị bao gồm các nút
và các cạnh. Nút tương ứng với một đối tượng và cạnh tương ứng với
thuộc tính. Nhãn trên mỗi nút hay cạnh là 1 URI(Uniform Resource
Identifiers)
a) Các cách biểu diễn thông tin
“The author of a document is Paul”
“Paul is the author of a document”
“A document is authored by Paul”
“The author of a document is Paul”
Trong XML sẽ biểu diễn:
<document href = http://doc_url author = “Paul”/>

<author>
<url> http://doc_url </url>
<name> Paul </name>
</author>

<document>
<author>
<name> Paul </name>
</author>
<url> http://doc_url </url>
</document>
b) Mô hình dữ liệu RDF
Có 3 thành phần chính cấu tạo nên :
• Resource: chứa URI chỉ định danh tới một đối tượng duy nhất
• Property: mối quan hệ hay là các thuộc tính
• Statement: tài nguyên + tính chất+ giá trị

15
Sẽ được biểu diễn như sau trong RDF :
<RDF xmlns = “http://www.w3.org/TR/WD-rdf-syntax#”
xmlns:dc = “http://purl.org/dc/elements/1.0/”
xmlns:p = “http://www.people.org/persons#”>
<Description about = “URI:R”>
<dc:Title> Pinar’s Ontology Presentation </dc:Title>
<dc:Creator>
<Description>
<p:Name> Pinar Oezden </p:Name>
<p:Email> pinar.oezden@jrc.it</p:Email>
<p:Aff resource = “http://www.jrc.it” />
</Description>
</dc:Creator>
</Description>
</RDF>

Mặc dù RDF có thể tích hợp được khối lượng rất lớn dữ liệu nhưng bị
thiếu đi các luật, cái cho phép chúng ta suy ra được kết luận từ những dữ
liệu này.
Do đó OWL – Ontology Web Language đã được phát triển để cung cấp
cho tầng logic. Nó cho phép viết thêm các luật và định nghĩa các thuộc
tính ngược nhau(Disjoin)

4.2 Mạng xã hội


Social Network: là một mô hình trong đó có các node là con
người, tổ chức, thực thể… và mối quan hệ giữa chúng với nhau.

16
Social Network Analysis(SNA) : Sắp xếp và đánh giá mối quan
hệ giữa người, tổ chức, các thông tin, các thực thể.
Mối quan hệ trong mạng xã hội có thể là:
– Người với người: là mẹ của, là vợ của, là xếp của, …
– Người với tổ chức: người sáng lập của, kiểm sóat …
Mối quan hệ giữa các thực thể, sự kiện,.. Trong mạng xã hội là không
rõ ràng nếu nhìn vào mạng xã hội. Việc phân tích sẽ khám phá được
những mối quan hệ ẩn.

Tại sao phải mô hình hóa mạng xã hội?


Giữa những thực thể, sự kiện, và nơi diễn ra có mối quan hệ với nhau
nhưng nếu không mô hình hóa thì ngay khi nhìn vào ta khó mà phát
hiện ra được những mối quan hệ đó. Ví dụ:
Ngọc Đức roommateOf Minh Tú
Minh Tú isMemberOf UniGroup
Minh Tú meetingAt Café Xanh
Ngọc Hương traveledTo Café Xanh
Bởi việc mô hình hóa mạng xã hội sẽ cho ta thấy được các quan hệ
mà ngay khi nhìn vào ta không thấy được đó là
Ngọc Đức isRelatedTo UniGroup,
UniGroup isRelatedTo Café Xanh.

4.3 Ontology và mạng xã hội

Mô hình hóa mạng xã hội bằng ontology vì những lí do:


 Ontology được phát triển để cụ thể hóa và giải thích những khái
niệm hay những mối quan hệ liên quan đến một lĩnh vực.
 Mạng xã hội có cùng mục đích nhưng tập chung vào quan hệ xã
hội và thực thể
 Ontology với cơ chế suy diễn cho phép thu được thông tin qua
việc triển khai luật để đưa ra những tri thức.
 Cơ chế suy diễn sẽ rất tiện lợi thông qua mạng xã hội dựa trên
Ontology để đưa ra đươc những mối quan hệ mới hay những
khái niệm vượt ra khỏi những thứ đã tồn tại trong mạng.

4.4 Ontology Learning từ các loại văn bản


4.4.1 Định nghĩa Ontology Learning
Ontology Learning: Là ứng dụng bao gồm một tập các phương
thức và các kĩ thuật để xây dựng nên Ontology từ những trang hỗn tạp.

17
Sử dụng những nguồn thông tin và tri thức phân tán và hỗn tạp.
Cho phép giảm thời gian và công sức khi phát triển Ontology.
Có thể học Ontology từ:
 Nguồn không có cấu trúc: Bao gồm các kĩ thuật xử lí ngôn ngữ
tự nhiên, phân tích cú pháp và hình thái…
 Nguồn bán cấu trúc: suy ra một ontology từ nguồn có cấu trúc
được định nghĩa từ trước ví dụ XML Schema
 Dữ liệu có cấu trúc: Trích rút khái niệm và mối quan hệ từ tri thức
chứa trong dữ liệu có cấu trúc như Database.

4.4.2 Ontology Learning ‘Layer Cake’

Ontology Learning ‘Layer Cake’

∀x, y (sufferFrom(x, y) → ill(x)) Axioms & Rules

cure (domain:Doctor, range:Disease) Relations

is_a (Doctor, Person) Taxonomy (Concept hierarchies)

Disease:=<I, E, L> Concepts

{disease, illness} Synonyms

disease, illness, hospital Terms

4.4.2.1 Trích rút các Term


Term là nền tảng cho xử lí việc học để tạo nên Ontology.
Trích rút term bao gồm:
Xử lí ngôn ngữ ◊ gán nhãn từ loại, những phân tích hình thái, vv...
Xử lí thống kê ◊ so sánh độ phân tán của những thuật ngữ có trong
tập những văn bản.
Gán nhãn từ loại trên những tài liệu trong lĩnh vực.

18
Xác định những Term có thể bởi việc xây dựng nên những mẫu ví dụ:
Tính từ- Danh từ, danh từ - danh từ, tính từ - danh từ - danh từ…
Xác định duy nhất những từ liên quan đến Term bời việc áp dụng ma
trận xác suất các thuật ngữ.

Huge Selection of Top Brand Computer Terminals Available for


Immediate Delivery. Because Vecmar carries such a large inventory of
high-quality computer terminals, including: ADDS terminals, Boundless
terminals, DEC terminals, HP terminals, IBM terminals, LINK terminals,
NCR terminals and Wyse terminals, your order can often ship same day.
Every computer terminal shipped to you is protected with careful packing,
including thick boxes. All of our shipping options - including international -
are available through major carriers.

– Những từ hay cụm từ được trích rút:


 computer
 terminal
 computer terminal
 ? high-quality computer terminal
 ? top brand computer terminal
 ? HP terminal, DEC terminal, …
Các phương pháp trích rút các cụm thuật ngữ:
1. Phương pháp ngôn ngữ: Xây dựng nên những luật dựa trên phân
tích ngôn ngữ
 Phân tích ngôn ngữ - gán nhãn từ loại, phân tích hình thái…
 Dùng các mẫu: Tính từ - Danh từ, Danh từ - Danh từ, Tính từ
- Danh từ - Danh từ
 Những tên được lờ đi: DEC, HP …
2. Phương pháp thống kê: Phân tích sự đồng xuất hiện của một từ
trong một cụm văn bản.
So sánh tần suất giữa lĩnh vực và những tài liệu chung. Ví dụ:
Computer Terminal chắc chắn trong lĩnh vực Computer, còn Rice sẽ ít
xuất hiện hơn trong lĩnh vực Computer.

3. Sự kết hợp của hai phương pháp:


Những luật ngôn ngữ để tìm ra những thuật ngữ
Dùng thống kê để sắp xếp cũng như lọc những thuật ngữ

19
Ví dụ về phân tích ngôn ngữ
[[He SUBJ] [booked PRED] [[this] [table HEAD]NP:DOBJ:X1]…]… Discourse
[[It SUBJ:X1] [was PRED] still available…]
Analysis
Dependency Structure
[[He SUBJ] [booked PRED] [[this] [table HEAD] NP:DOBJ]S]
(S)
[[the SPEC] [large MOD] [table HEAD] NP] Dependency Structure
(Phrases)
[[the] [large] [table] NP] [[in] [the] [corner] PP] Phrase Recognition
[work~ing V] Morphological Analysis (stemming)

[table N:ARTIFACT] [table N:furniture] Part of Speech & Semantic Tagging


[table] [2005-06-01] [John Tokenization (incl. Named-Entity Rec.)
Smith]

Phân tích xác suất: có các chỉ số sau:


 MI (Mutual Information) – phân tích sự đồng xuất hiện
 TFIDF – trọng số thuật ngữ

tf(w): tần suất thuật ngữ, là số từ xuất hiện trong một tài liệu. Chỉ số
này càng cao thì từ đó càng quan trọng.
df(w): Số tài liệu chứa thuật ngữ, chỉ số này càng bé thì từ đó càng
quan trọng.
N: Tổng số tài liệu sử dụng.
tfIdf(w): Liên quan đến mức độ quan trọng của từ trong tài liệu.

 χ2 (Chi-square) – phân tích sự đồng xuất hiện và trọng số của thuật


ngữ

20
4.4.2.2 Phát hiện từ đồng nghĩa
Bước tiếp theo của Ontology learning là xác định những thuật ngữ
có cùng ngữ nghĩa, hoặc cùng chỉ tới một khái niệm.
 Đồng nghĩa trong một ngôn ngữ:
o terminal – video display – input device
o graphics terminal - video display unit – screen
 Đồng nghĩa trong các ngôn ngữ khác nhau:
o input device (English) – Eingabegerät (German)
o Back to English: input device, input unit, signal conditioning
device
o video display unit (English) – Videosichtgerät (German)

Đối với những từ đồng nghĩa trong một ngôn ngữ ta sử dụng các kỹ thuật:
 Phân loại: Phân loại các từ vào trong các lớp xác định, có thể kế
thừa từ WordNet.
 Gom nhóm: Gom nhóm theo sự sắp xếp giống nhau giữa các từ bởi
việc đánh giá sự đồng xuất hiện của các từ.

Đối với những ngôn ngữ khác nhau;


Sử dụng các cặp đôi tài liệu đi song song với nhau,

4.4.2.3 Concepts: Intension, Extension, Lexicon


Bộ ba kí hiệu:

Dựa trên nghiên cứu cấu trúc ngôn ngữ:

21
Một thuật ngữ có thể biểu diễn khái niệm nếu ta định nghĩa nó.
 Intension: định nghĩa hình thức về một tập các đối tượng mà khái
niệm đó mô tả.
Một bệnh là một sự sút kém về sức khỏe hoặc dối loạn chức năng.
 Extension: Tập các thể hiện cái mà khái niệm này mô tả.
Cúm, ung thư phổi, đau tim…
 Lexical Realizations: Bản thân sự đồng nghĩa của từ đó trong một
ngôn ngữ và các ngôn ngữ khác nhau.
disease, illness, Krankheit, maladie, …

Concepts: Intension
Trích rút khái niệm từ văn bản.
– Định nghĩa không trang trọng:
• Chú thích các khái niệm được sử dụng trong WordNet.
‘Integration Strategy’ : “strategy for the integration of …”
– Định nghĩa trang trọng:
• Cấu trúc logíc xác định tất cả ràng buộc trên lớp thành viên.

Concepts: Extension
Trích rút thể hiện của khái niệm từ văn bản:
– Thường trỏ tới một mẫu Ontology.
– Liên quan tới đánh dấu tri thức (Semantic Metadata)
– Sử dụng Named-Entity Recognition và Information Extraction
– Một thể hiện có thể là: :
• Tên của đối tượng ví dụ: Person, Organization, Country, City, …
• Thể hiện của một sự kiện (Với thể hiện của những người tham gia
và thuộc tính), ví dụ:
Football Match (with Teams, Players, Officials, ...)
Disease (with Patient-Name, Symptoms, Date, …)

Concepts: Lexicon
Trích rút từ đồng nghĩa và thông dịch cho một khái niệm từ văn bản.

22
4.4.2.4 Taxonomy
Taxonomy tập các bảng từ vựng, thuật ngữ được tổ chức trong một
cây phân cấp.

1. Các phương pháp cở bản:


 Sử dụng WordNet
 Mẫu ngôn ngữ
 Từ điển máy
 Phân tích sự đồng xuất hiện
 Tiếp cận ngôn ngữ
Sử dụng WordNet
 Đưa hai thuật ngữ t1 và t2, kiểm tra xem hai từ đó có liên quan đến
nhau trong Wordnet không.
 Senses(t) số nghĩa của t

- Có 4 từ liên kết từ những từ đồng nghĩa của ‘country’ và ‘region’


- ‘country’ có 5 senses
Giá trị isa (country, region) = 0.8

23
Lexico-syntactic patterns – Hearst

 Mục đích: thu được mối quan hệ hyponym từ văn bản


 Sử dụng tập các mẫu được định nghĩa trước:
• Tần suất xảy ra trong nhiều loại văn bản
• Xác định các mối quan hệ
• Hầu như không nhận ra được nếu không có trong những mẫu
đã định nghĩa.
 Độ chính xác đối với Wordnet: 55,45%

NPo such as {NP1, NP2,…, (and | or)} NPn


Vehicles such as cars, trucks and bikes….’
vehicle
is-a is-a
is-a
truc bike car
k

such NP as {NP,} * { (or | and) } NP


‘Such fruits as oranges, nectarines or apples…’
fruit
is-a is-a
is-a
orang apple
e nectarin

NP {, NP} * { , } { or | and } other NP


Swimming, running, or/and other activities…’
activit
is-a

runnin swim

NP { , } including {NP, } * { or | and } NP

24
‘Injuries, including broken bones, wounds and bruises…’
injury
is-a is-a
is-a
broken bone bruise
wound

NP { , } especially {NP, } * { or | and } NP


‘Publications, especially papers and books…’
publication
is-a is-a
p book
aper

Từ điển máy có thể đọc

 Dùng phổ biến từ thập kỉ 80.


 Ý tưởng chính: Khai thác những mục từ trong từ điển để tìm những
từ đồng nghĩa phù hợp cho những từ đã định nghĩa.
Ví dụ:

spring “the season between winter and summer and in which leaves and flow

is_a (spring, season)

Phân tích sự đồng xuất hiện


Term x xếp gộp Term y nếu P(x | y)≥ 1, trong đó

n(x,y) ◊ số tài liệu x và y cùng xuất hiện


n(y) ◊ Số tài liệu chứa y

Tốt nhất nên đưa ra một cách kết hợp giữa các phương pháp trên:

25
2. Cách tiếp cận khác để tạo ra cây phân cấp:
 Xây dựng cây phân cấp tự động hoặc bán tự động cho những thuật
ngữ đã có.
 Nút trung gian có thể được tạo hoặc không tùy theo phương
thức học để tạo cây.

Có nhiều nghiên cứu về học cây phân cấp, đưa ra một vài cách như sau:

Phương pháp Đầu vào và những Tham khảo Nút trung


đặc trưng gian
Mẫu cú pháp Mẫu cú pháp từ vựng Hearst 92 O
từ vựng cho những tài liệu
Mẫu cú pháp từ vựng Richardson et al. O
để định nghĩa 98
Phân tích Head matching Many references X
thành phần heuristic …
các từ Sự quan hệ trong Moldovan et al.00 X
Ontology (WordNet)
Xếp gộp quan Đánh giá sự xuất hiện Sanderson & X
hệ giữa 2 ngữ của 1 từ trong tài liệu Croft 99
cảnh Verb-argument Cimiano et al.05 O
(Distributional relation
hypothesis) Quan hệ giữa Tính từ-Yamamoto et X
Thuật ngữ al.05

26
Những đặc trưng nêu ra là cơ bản nhất và được sử dụng để học cây phân
cấp.
Câu hỏi đặt ra là làm thế nào để kết hợp những đặc trưng trên thành một
phương pháp tối ưu cho việc học cây phân cấp.
Vì vậy sẽ chia bài toán ra thành những bài toán nhỏ và mỗi bài toán thì sử
dụng các phương pháp với những đặc trưng khác nhau.

Đơn giản vấn đề tạo cây phân cấp nhưng là đồ thị thuật ngữ trong trục tọa
độ xy.
Trong trường hợp này, vấn đề là làm cách nào xác định được tọa của
term.
Tọa độ Y có thể được ánh xạ tới một lĩnh vực cụ thể của Term, và tọa độ X
có thể ánh xạ tới sự giống nhau giữa các term.

Sự tương tự của Term: nhau được biết đến như là nhiệm vụ của xử lí
ngôn ngữ tự nhiên và nhiều nghiên cứu về từ
 Ước lượng sự chồng chéo ngữ nghĩa của các Term
 Sim(t1,t2 |D) ≥ 0
 Từ đó kiểm tra chỉ số này để tạo nên cây.
 Ví dụ trong lĩnh vực tài chính:
• Sim(“current asset”, “cache”) > Sim(“fixed asset”,
“cache”)

27
Với năm thuật ngữ trên
Ta sẽ tính toán độ chi tiết và độ tương tự của các term.
Những term càng cụ thể thì càng được đặt xuống cấp sâu hơn và những
term chung chung thì đặt ở trên. Những term được gom nhóm dựa vào độ
giống nhau của chúng.
Hai term t1 và t2 giống nhau khi độ chi tiết term 1 lớn hơn term 2 và độ
tương tự của hai term lớn hơn một giới hạn xác định.

 Đặt liên tiếp các term trong cây phân cấp.


 Thừa nhận không có đồng nghĩa
 Terms được sắp xếp tăng theo sự tăng của độ chi tiết.
 Thêm một term mới giữa 2 term.

 Thêm mới term vào cây


 Bước 1: Chọn những term giống với tnew mới nhất trong cây
phân cấp hiện tại
 Step 2: Chọn con cho tnew từ tập những term đã chọn ở
bước 1. Tính spect của 2 term đó, nếu lớn hơn ngưỡng thì kết
nạp.

28
4.4.2.5 Relations (non-taxonomic)
Trích rút quan hệ và thuộc tính.
 Quan hệ cụ thể
o Part-of
o Qualia (Formal, Constitutive, Telic, Agentive)

29
 Quan hệ chung chung
o Khai thác cấu trúc ngôn ngữ
 Thuộc tính
1. Phát hiện thuộc tính
Attributes ◊ Liên quan đến kiểu dữ liệu.
Sử dụng giới từ of, động từ have hay cấu trúc sở hữu, ví dụ. ‘the color
of the car’, ‘the car’s color’, ‘every car has a color’
Giá trị của thuộc tính được mô tả sử dụng cấu trúc hệ từ , tính từ, hay
mô tả cụ thể cho một thuộc tính.
• ‘the car is red’ (copula + value)
• ‘the red car’ (adjective)
• ‘the baby weights 3 kgr’ (specific expressions)
Phân lọai thuộc tính

Một cách tiếp cận để phát hiện Thuộc tính


 Thẻ bài hoặc gán nhãn từ loại.
 Sử dụng mẫu để trích rút cặp tính từ- danh từ
(\w+{DET})? (\w+{NN}) + is{VBZ} \w + {JJ}
(\w+{DET})? \w + {JJ} (\w+{NN}) +

 Cặp này được đánh trọng số sử dụng xác suất điều kiện.

 Với mỗi từ ta tìm một tính từ tương ứng trong Wordnet


JJ: adjective DET: determiner
NN: noun VBZ: verb, 3rd person singular present

30
5. Tổng kết và hướng làm việc trong tương lai.
Đồ án thực tập tốt nghiệp đã đạt được những kết quả sau:
Đưa ra được kiến trúc hệ thống để giải quyết từng bài toán một, thứ
nhất là bài toán làm sao để tạo được một cơ sở tri thức từ những trang tài
liệu web, bài toán thứ hai là truy vấn vào cơ sở tri thức đã xây dựng đó.
Đồ án cũng nêu ra được một vài cách tiếp cận để giải quyết những bài
toán đó, và nêu ra những kĩ thuật tương ứng với cách tiếp cận đó.
Khó khăn khi làm đồ án này là lĩnh vực này còn mới mẻ ở Việt Nam,
thực ra là đã có những nghiên cứu nhưng vẫn chưa đưa ra được một ứng
dụng cụ thể nào. Ở nước ngoài thì lĩnh vực này đang được nhiều tổ chức
như W3C phát triển và đưa ra những chuẩn ví dụ như RDF, OWL,
SPARQL. Nhưng những ứng dụng thật sự cũng vẫn còn ít. Vì vậy khi làm
đồ án, tài liệu tìm kiếm được thì rất nhiều nhưng mỗi tài liệu nói theo một
cách khác nhau và giải quyết những vấn đề khác nhau. Một khó khăn nữa
là chưa liên lạc được với ai là chuyên ra trong lĩnh vực này, do đó không
biết ở các nước đã nghiên cứu được những gì, đã có những gì được đưa
thành chuẩn, những kiến trúc được đề nghị sử dụng trong quá trình xây
dựng hệ thống.
Hướng làm việc trong tương lai là xây dựng được cơ sở tri thức lớn
về những người làm PhD, không chỉ là người Việt Nam, việc này đem lại
lợi ích rất lớn cho lĩnh vực giáo dục. Tiếp theo là xây dựng nên được trang
Semantic Web để tiện lợi cho việc truy vấn vào cơ sở tri thức. Lúc đó việc
tìm kiếm sẽ chính xác hơn, dễ dàng hơn, và tri thức được chia sẻ nhiều
hơn.

6. Tham khảo.
1. Learning Domain Ontologies from Document Warehouses and
Dedicated Web Sites - Roberto Navigli ∗ Paola Velardi Universit ` a
di Roma “La Sapienza” Universit ` a di Roma “La Sapienza”
2. Ontology Based Knowledge Discovery in Social Networks
Taxonomy Learning using Term Specificity and Similarity- Pum-Mo
Ryu, Key-Sun Choi - Computer Science Division, KAIST Korea
3. Ontology Learning from Text - Paul Buitelaar, Philipp Cimiano,
Marko Grobelnik, Michael Sintek
4. Ontology Learning and Its Application to Automated Terminology
Translation

31

You might also like