Tài liệu Luận văn Phương pháp học bán giám sát cho bài toán trích chọn thông tin và ứng dụng trích chọn thực thể tên máy ảnh số: ĐẠI HỌC QUỐC GIA HÀ NỘI
TRƯỜNG ĐẠI HỌC CÔNG NGHỆ
TRƯƠNG THỊ PHƯƠNG THẢO
PHƯƠNG PHÁP HỌC BÁN GIÁM SÁT CHO
BÀI TOÁN TRÍCH CHỌN THÔNG TIN VÀ ỨNG DỤNG
TRÍCH CHỌN THỰC THỂ TÊN MÁY ẢNH SỐ
Ngành: Công nghệ thông tin
Chuyên ngành: Hệ thống thông tin
Mã số: 60.48.05
LUẬN VĂN THẠC SĨ
Cán bộ hướng dẫn khoa học: TS. Nguyễn Trí Thành
Hà Nội - 2011
2
Lời cam đoan
Tôi xin cam đoan kết quả đạt được trong luận văn là sản phẩm nghiên
cứu, tìm hiểu của riêng cá nhân tôi. Trong toàn bộ nội dung của luận
văn, những điều được trình bày hoặc là của cá nhân tôi hoặc là được
tổng hợp từ nhiều nguồn tài liệu. Tất cả các tài liệu tham khảo đều có
xuất xứ rõ ràng và được trích dẫn hợp pháp.
Tôi xin hoàn chịu trách nhiệm và chịu mọi hình thức kỷ luật theo quy
định cho lời cam đoan của mình.
Học viên
Trương Thị Phương Thảo
3
Mục lục
Lời cam đoan ..................................................................................................... 2
Mục lục ........
65 trang |
Chia sẻ: haohao | Lượt xem: 1201 | Lượt tải: 0
Bạn đang xem trước 20 trang mẫu tài liệu Luận văn Phương pháp học bán giám sát cho bài toán trích chọn thông tin và ứng dụng trích chọn thực thể tên máy ảnh số, để tải tài liệu gốc về máy bạn click vào nút DOWNLOAD ở trên
ĐẠI HỌC QUỐC GIA HÀ NỘI
TRƯỜNG ĐẠI HỌC CÔNG NGHỆ
TRƯƠNG THỊ PHƯƠNG THẢO
PHƯƠNG PHÁP HỌC BÁN GIÁM SÁT CHO
BÀI TOÁN TRÍCH CHỌN THÔNG TIN VÀ ỨNG DỤNG
TRÍCH CHỌN THỰC THỂ TÊN MÁY ẢNH SỐ
Ngành: Công nghệ thông tin
Chuyên ngành: Hệ thống thông tin
Mã số: 60.48.05
LUẬN VĂN THẠC SĨ
Cán bộ hướng dẫn khoa học: TS. Nguyễn Trí Thành
Hà Nội - 2011
2
Lời cam đoan
Tôi xin cam đoan kết quả đạt được trong luận văn là sản phẩm nghiên
cứu, tìm hiểu của riêng cá nhân tôi. Trong toàn bộ nội dung của luận
văn, những điều được trình bày hoặc là của cá nhân tôi hoặc là được
tổng hợp từ nhiều nguồn tài liệu. Tất cả các tài liệu tham khảo đều có
xuất xứ rõ ràng và được trích dẫn hợp pháp.
Tôi xin hoàn chịu trách nhiệm và chịu mọi hình thức kỷ luật theo quy
định cho lời cam đoan của mình.
Học viên
Trương Thị Phương Thảo
3
Mục lục
Lời cam đoan ..................................................................................................... 2
Mục lục .............................................................................................................. 3
Danh mục các ký hiệu, các chữ viết tắt............................................................... 4
Danh mục các bảng ............................................................................................ 5
Danh mục các hình vẽ, đồ thị ............................................................................. 6
Mở đầu............................................................................................................... 7
CHƯƠNG 1. GIỚI THIỆU ................................................................................ 8
CHƯƠNG 2. HỆ THỐNG TRÍCH CHỌN THÔNG TIN................................. 14
2.1. Xây dựng hệ thống trích chọn thông tin..................................................... 14
2.1.1. Công nghệ tri thức .................................................................................. 14
2.1.2. Huấn luyện tự động ................................................................................ 14
2.2. Các phương pháp trích chọn ...................................................................... 15
2.2.1. Học có giám sát trích chọn quan hệ ........................................................ 16
2.2.2. Học không giám sát trích chọn quan hệ .................................................. 18
2.2.3. Học bán giám sát trích chọn quan hệ ...................................................... 21
2.2.3.1. DIPRE: Dual Iterative Pattern Relation Extraction .............................. 22
2.2.3.2. Hệ thống SNOWBALL ....................................................................... 26
2.3. Nhận xét .................................................................................................... 32
CHƯƠNG 3. MÔ HÌNH HỌC BÁN GIÁM SÁT TRÍCH CHỌN THỰC THỂ
VÀ ỨNG DỤNG.............................................................................................. 33
3.1. Mô tả bài toán............................................................................................ 33
3.2. Mô hình giải quyết bài toán ....................................................................... 33
3.3. Mô hình hệ thống ...................................................................................... 35
3.3.1. Pha tiền xử lí .......................................................................................... 36
3.3.2. Pha sinh các mẫu .................................................................................... 43
3.3.3. Pha sinh các bộ quan hệ mới................................................................... 48
CHƯƠNG 4. THỰC NGHIỆM ........................................................................ 50
4.1. Môi trường thực nghiệm............................................................................ 50
4.2. Dữ liệu thực nghiệm .................................................................................. 50
4.3. Đánh giá hệ thống...................................................................................... 51
4.4. Thực nghiệm ............................................................................................. 51
Kết luận và hướng phát triển tương lai ............................................................. 61
Tài liệu tham khảo............................................................................................ 62
Phụ lục. Mối quan hệ ngữ nghĩa trong WordNet .............................................. 64
4
Danh mục các ký hiệu, các chữ viết tắt
IE Information Extraction
NE Named Entity
MUC Message Understanding Conferences
NER Named Entity Recognition
IR Information Retrieval
DIPRE Dual Iterative Pattern Relation Extraction
5
Danh mục các bảng
Bảng 1: Các luật của AutoSlog......................................................................... 18
Bảng 2: Năm bộ quan hệ hạt giống của hệ thống DIPRE.................................. 24
Bảng 3: Ví dụ các sự kiện được mô tả dưới dạng bộ - 7 ................................... 24
Bảng 4: Ví dụ về việc sinh các mẫu DIPRE ..................................................... 26
Bảng 5: Năm bộ quan hệ hạt giống của hệ thống Snowball .............................. 27
Bảng 6: Một số lớp thường dùng trong WordNet ............................................. 45
Bảng 7: Cấu hình của máy PC dùng trong thực nghiệm ................................... 50
Bảng 8: Các công cụ sử dụng trong thực nghiệm.............................................. 50
Bảng 9: Các thư viện sử dụng trong thực nghiệm ............................................. 50
Bảng 10: Dữ liệu kiểm thử và dữ liệu huấn luyện............................................. 51
Bảng 11: Tập các quan hệ hạt giống ban đầu.................................................... 51
Bảng 12: Một số cặp ở lần lặp đầu tiên ............................ 52
Bảng 13: Giá trị Precision, Recall và F1 sau các vòng lặp ................................ 52
Bảng 14: Giá trị Precision, Recall, F1 của hệ thống theo giá trị sup................ 54
Bảng 15: Giá trị của Precision, Recall, F1 thực nghiệm trên tập 5000 .............. 55
Bảng 16: Kết quả so sánh giữa thực nghiệm 1 và 2 .......................................... 55
Bảng 17: Kết quả trích chọn khi áp dụng giải thuật DIPRE trên Tập 1200 ....... 56
Bảng 18: Kết quả trích chọn khi áp dụng giải thuật DIPRE trên Tập 5000 ....... 56
Bảng 19: Bảng thống kê kết quả trích chọn khi áp dụng giải thuật DIPRE cho
bài toán trích chọn tên máy ảnh số ................................................................... 56
Bảng 20: Kết quả thực nghiệm 5 với số lượng các cặp tìm được ...................... 58
Bảng 21: Kết quả thực nghiệm 5 - Một số mẫu có độ chính xác cao và xuất hiện
nhiều ................................................................................................................ 58
Bảng 22: Kết quả thực nghiệm 5 - Thống kê các loại máy ảnh phổ biến nhất ... 59
Bảng 23: Kết quả thực nghiệm 5 - Thống kê số lượng máy ảnh theo hãng sản
xuất .................................................................................................................. 60
Bảng 24: Các quan hệ ngữ nghĩa trong WordNet ............................................. 64
6
Danh mục các hình vẽ, đồ thị
Hình 1: Minh họa về một hệ thống trích chọn thông tin...................................... 8
Hình 2: Ví dụ về khai phá quan điểm ............................................................... 10
Hình 3: Sơ đồ hoạt động của hệ thống AutoSlog .............................................. 17
Hình 4: Sơ đồ hoạt động của hệ thống AutoSlog – TS...................................... 19
Hình 5: Ví dụ về AutoSlog - TS ....................................................................... 21
Hình 6: Mô hình hoạt động của hệ thống DIPRE ............................................. 22
Hình 7: Mô hình hoạt động của hệ thống Snowball .......................................... 27
Hình 8: Các sự kiện tìm được dựa vào bộ quan hệ hạt giống ............................ 28
Hình 9: Mô hình hệ thống trích chọn tên máy ảnh số ....................................... 35
Hình 10: Mô hình của pha tiền xử lí ................................................................. 36
Hình 11: Mô hình thuật toán sinh mẫu từ một bộ quan hệ ................................ 43
Hình 12: Giá trị của Precision, Recall, F1 thực nghiệm trên tập 1200 .............. 53
Hình 13: Giá trị Precision, Recall, F1 của hệ thống theo giá trị sup ................ 54
Hình 14: Kết quả thực nghiệm 3 (a) và thực nghiệm 4 (b) đối với giá trị F1..... 57
7
Mở đầu
Trích chọn thực thể là bài toán cơ bản nhất trong các bài toán trích chọn
thông tin nhưng lại đóng vai trò khá quan trọng. Thực thể tên ngày càng được
ứng dụng trong nhiều bài toán trong khai phá dữ liệu web cũng như nhiều các
bài toán trong xử lý ngôn ngữ tự nhiên. Do đó việc xây dựng các giải thuật trích
chọn các thực thể tên này từ web là bài toán có ý nghĩa quan trọng. Luận văn tập
trung vào tìm hiểu việc xây dựng một mô hình trích chọn thực thể tên và ứng
dụng vào trích chọn thực thể tên máy ảnh trên web.
Cấu trúc luận văn gồm 4 chương:
Chương 1: Giới thiệu một cách khái quát nhất bài toán trích chọn thông tin,
tính ứng dụng thực tiễn của bài toán.
Chương 2: Trình bày một số các khái niệm liên quan đến bài toán trích
chọn thông tin, các phương pháp trích chọn thông tin. Với mỗi phương pháp
trình bày một mô hình minh họa. Đây là cơ sở luận quan trọng để luận văn đề
xuất một mô hình áp dụng với bài toán trích chọn thực thể. Cụ thể luận văn lựa
chọn hướng tiếp cận học bán giám sát.
Chương 3: Ứng dụng phương pháp học bán giám sát vào hệ thống trích
chọn tên máy ảnh kĩ thuật số.
Chương 4: Kết quả thực nghiệm của luận văn, đánh giá phương pháp và kết
quả đạt được.
Phần kết luận: Tóm lược những nội dung chính đạt được của luận văn đồng
thời cũng chỉ ra những điểm cần khắc phục và đưa ra những định hướng nghiên
cứu trong tương lai.
8
CHƯƠNG 1. GIỚI THIỆU
Với sự bùng nổ của Internet và các phương tiện lưu trữ đã tạo ra một lượng
thông tin khổng lồ. Bên cạnh đó nhu cầu về tốc độ xử lý thông tin cũng như tính
chính xác ngày càng tăng. Hiện nay, các máy tìm kiếm (search engine) thực hiện
việc tìm những trang web phù hợp với yêu cầu câu hỏi người dùng.
Mặc dù chất lượng của các máy tìm kiếm đã được cải thiện nhưng kết quả
trả về chỉ là những tài liệu có liên quan, chúng không dễ dàng gì rút ra được các
mối quan hệ tiềm ẩn và tạo được các câu trả lời cho các truy vấn phức tạp, chẳng
hạn như “danh sách các công ty liên doanh” hoặc “danh sách các nhà lãnh đạo
quốc tế trên toàn thế giới”. Người ta phân loại câu trả lời các truy vấn ở dạng: có
phân tích các tài liệu liên quan để tập hợp những thông tin cần thiết. Nếu nhiều
mối quan hệ như “Công ty A liên doanh với công ty B” được lưu trong các tài
liệu thì nó tự động tổng hợp và cấu trúc hóa, điều này rất tốt không chỉ cho các
hệ thống truy vấn thông tin mà còn cho các hệ thống hỏi đáp tự động và tóm tắt
văn bản. Do đó khai thác được những tri thức đó sẽ mang lại nhiều thông tin bổ
ích. Đó là lĩnh vực mà “trích chọn thông tin” nghiên cứu.
Trích chọn thông tin (Information Extraction - IE) là công việc trích ra các
thông tin có cấu trúc từ các văn bản không có cấu trúc. Nói cách khác, một hệ
thống trích chọn thông tin rút ra những thông tin đã được định nghĩa trước về
các thực thể và mối quan hệ giữa các thực thể từ một văn bản dưới dạng ngôn
ngữ tự nhiên và điền những thông tin này vào một văn bản ghi dữ liệu có cấu
trúc hoặc một dạng mẫu được định nghĩa trước đó. Không giống như hiểu toàn
bộ văn bản, các hệ thống trích chọn thông tin chỉ cố gắng nhận biết một số thông
tin đáng quan tâm ở một lĩnh vực nào đó. Ví dụ hệ thống trích chọn các bộ quan
hệ từ các tài liệu web, bổ sung chúng vào cơ sở
dữ liệu.
Canon has posted a firmware update for
its EOS 7D digital SLR.
Pentax has announced the Optio RS1500
compact camera with interchangeable,
user designable covers.
Casio and Ricoh have released firmware
updates for the Exilim EX-H20G and
G700SE digital cameras respectively
Hình 1: Minh họa về một hệ thống trích chọn thông tin
Producer Camera
Canon EOS 7D
Pentax Optio RS1500
Casio Exilim EX-H20G
Ricoh G700SE
9
Có rất nhiều mức độ cũng như nội dung công việc trích chọn thông tin khác
nhau. Một số bài toán trích chọn có thể liệt kê như sau:
Trích chọn là thực thể tên (Named Entity –NE). Một thực thể tên là một
thực thể được đặt một tên riêng, ví dụ như “Barack Obama” là một thực
thể tên người, “Microsoft Corporation” là thực thể tên công ty/ tổ chức
[7, 17].
Trích chọn thông tin là đi tìm những quan hệ giữa các đối tượng có tên
được chỉ định trước. Ví dụ: từ một câu “Bill Gates là chủ tịch của
Microsoft”, chúng ta muốn hệ thống có thể đưa ra được kết quả: Bill
Gates là một tên người, Microsoft là tên một tổ chức và Bill Gates ông
chủ của Microsoft. Một số quan hệ khác có thể là: quan hệ sát nhập
(affiliation); quan hệ vai trò (role); quan hệ về vị trí, địa điểm (location);
quan hệ toàn thể-bộ phận (part-whole); quan hệ nhân quả (cause-effect);
các mối quan hệ xã hội … giữa các cặp thực thể. Ví dụ, câu “George
Bush được bầu làm tổng thống của Mỹ.” Thì quan hệ, “George Bush”
(Person) là “tổng thống” của “Mỹ”, có thể được rút ra. [5]
Trích chọn sự kiện cho miền dữ liệu tin tức dưới dạng khung mẫu
(template). Mỗi khung mẫu bao gồm tập hợp các slot cần được lấp đầy
bởi một hoặc nhiều giá trị. Những giá trị này có thể bao gồm văn bản
thuần túy, các con trỏ trỏ tới các đối tượng khung mẫu khác [4, 9]. Ví
dụ: “4 Apr. Dallas - Early last evening, a tornado swept through northwest
Dallas. The twister occurred without warning at about 7:15 pm and destroyed
two mobile homes. The Texaco station at 102 Main St. was also severely
damaged, but no injuries were reported.” Đoạn văn bản tóm tắt câu chuyện
về thảm họa tự nhiên lốc xoáy, trích chọn các thông tin về ngày và thời
gian xảy ra, và thiệt hại tài sản hay thương tích về con người do sự kiện
gây ra. Hệ thống có thể trích chọn ra khung mẫu sau:
Event: tornado
Date: 4/3/97
Time: 19:15
Location: “northwest Dallas”: Texas: USA
Damage: “mobile homes” (đối tượng bị thiệt hại – Damaged
Object)
“Texaco station” (đối tượng bị thiệt hại)
Khai phá quan điểm (opinion mining): trong lĩnh vực này ta cần trích
chọn ra các nhận định của người dùng về một đối tượng nào đó [14].
Hình 2 chỉ ra một trong các quan điểm mà ta có thể trích ra là thông tin
10
người dùng nhận thấy “the colors of pictures” được chụp bởi sản phẩm
Powershot là “great”.
Hình 2: Ví dụ về khai phá quan điểm
Ngoài ra tùy vào từng ứng dụng cụ thể mà ta có thể cần trích chọn các
đối tượng khác trong văn bản, chẳng hạn trích chọn các nguyên nhân
dẫn đến một loại bệnh nào đó [10], …
Con người, thời gian, địa điểm, các con số, ... là những đối tượng cơ bản
trong một văn bản dù ở bất kì ngôn ngữ nào. Do đó thực thể tên là một đối
tượng được quan tâm rất nhiều và ngày càng trở nên quan trọng, nó đang được
khai thác và ứng dụng trong nhiều bài toán trong lĩnh vực xử lý ngôn ngữ tự
nhiên (Natural Language Processing) cũng như khai phá văn bản và khai phá
web (Web Mining).
Mục đích chính của bài toán nhận biết các loại thực thể là xác định những
đối tượng này từ đó phần nào giúp cho chúng ta trong việc hiểu văn bản. Rõ
ràng trước khi có thể xác định được các mối quan hệ giữa các thực thể ta phải
xác định được đâu là các thực thể tham gia vào mối quan hệ đó. Ví dụ về một số
ứng dụng của thực thể tên trong lĩnh vực xử lý ngôn ngữ tự nhiên và khai phá dữ
liệu văn bản, web là:
Dịch máy (Machine Translation): khi chúng ta phát hiện ra được một
thực thể tên trong một văn bản thì khi dịch sang ngôn ngữ mới ta
thường để nguyên thực thể tên đó chứ không dịch [12].
I just bought a Powershot a
few days ago. I took some
pictures using the camera.
Here are my feelings:
(1) colors are so great even
when flash is used
(2) easy to grip since the body
has a grip handle
Opinion holder (writer)
Suject
Part
Attribute
Evaluation
Condition
Opinion unit 1
Opinion holder (writer)
Suject
Part
Attribute
Evaluation
Condition <body has a grip
handle>
Opinion unit 2
11
Tóm tắt văn bản: Khi xác định được nội dung của một văn bản nói về
một thực thể tên nào đó thì chúng ta sẽ gán trọng số cao cho các câu có
đề cập đến thực thể tên, cách này có thể làm tăng chất lượng của hệ tóm
tắt [11].
Phân lớp văn bản: khi tìm ra được một thực thể tên thường thuộc một
phân lớp văn bản nào đó, thì đó sẽ là một thông tin quan trọng để giúp
làm tăng chất lượng của các giải thuật phân lớp. Chẳng hạn như tin nói
về tổng thống Obama thường hay xuất hiện ở thể loại tin tức là: Thế giới
[15].
Tìm kiếm thực thể: đây là một hướng phát triển mới của các máy tìm
kiếm. Khi nhu cầu người dùng tăng cao thì người ta muốn các máy tìm
kiếm trở nên thông minh hơn, và người ta mong muốn có một hệ thống
tìm kiếm có thể trả về các thực thể người ta cần chứ không phải là các
văn bản chứa các thực thể như những máy tìm kiếm hiện tại [13].
Hệ thống hỏi đáp [16], chẳng hạn giúp trả lời các câu hỏi liên quan đến
thực thể như “Ai là người đầu tiên đặt chân lên mặt trăng?”
- Tên lửa được phóng ra từ đâu?
- Ai là chủ nhân và điều khiển tên lửa đó?
- Khối lượng chất nổ trong tên lửa?
- Chất nổ sử dụng là gì?
Ứng dụng trong phân tích một đối tượng nào đó. Ví dụ như trong một
tài liệu văn bản mô tả bằng ngôn ngữ tự nhiên, ta có thể tìm hiểu sự di
chuyển của các giám đốc điều hành từ vị trí này đến vị trí khác ở các
công ty khác nhau dựa vào các thực thể kiểu: Tên nhà điều hành, Tên
công ty cũ, Vị trí cũ, Tên công ty mới, Vị trí mới, Ngày chuyển đi.
Thông tin này có ích trong việc phân tích, chẳng hạn như các phân tích
liên kết, trình bày tiến trình thời gian, địa vị, và vẽ đồ thị của xu hướng.
Ngày nay những thông tin trích chọn cũng được sử dụng để hỗ trợ và
tăng cường các loại khác của các ứng dụng xử lý văn bản như các hệ
thống truy vấn thông tin, hệ thống hỏi đáp, phân loại văn bản…
…
Muốn khai thác được thực thể tên vào các bài toán cụ thể thì công việc đầu
tiên là phải nhận dạng ra được các thực thể tên có trong văn bản. Do đó bài toán
nhận dạng thực thể tên (Named Entity Recognition – NER) ngày càng trở nên
bài toán mang tính chất rất quan trọng và rất cần làm tăng chất lượng của nó.
Luận văn tập trung vào bài toán trích chọn thực thể tên và quan hệ của nó trong
văn bản.
12
Nhận dạng thực thể có tên là một công việc của xử lý ngôn ngữ tự nhiên
trên máy tính, được giới thiệu lần đầu tiên tại hội nghị MUC lần thứ 6 [8], bao
gồm các nhiệm vụ: nhân dạng tên người (PERSON), địa danh (LOCATION), tổ
chức (organization) (ENAMEX); ngày tháng (date), thời gian (time) (TIME); và
tỷ lệ (percentage), tiền tệ (monetary) (NUMEX). Giờ các thực thể tên được mở
rộng hơn như tên các loại bệnh, tên các loại protin, tiêu đề bài báo, tên các cuộc
hành trình…
WWW chứa đựng một nguồn thông tin khổng lồ, và cực kỳ phân tán, từ cơ
sở dữ liệu DNA đến danh sách các nhà hàng ưu thích. Tuy nhiên dữ liệu rải rác
trong hàng ngàn nguồn thông tin với nhiều định dạng khác nhau. Nếu các mẩu
thông tin này có thể được trích chọn từ WWW và tích hợp vào một dạng có cấu
trúc, chúng sẽ tạo thành một nguồn thông tin chưa từng có. Nó sẽ bao gồm một
thư mục quốc tế lớn nhất của con người, các cơ sở dữ liệu lớn và đa dạng nhất
các sản phẩm, và nhiều nguồn tài nguyên hữu ích khác. Chúng ta sẽ trích chọn
một quan hệ từ hàng nghìn nguồn dữ liệu, để lấy được những mẩu quan hệ trong
WWW. Nhưng một thực tế là khối lượng thông tin quá lớn, việc trích chọn thủ
công là điều không tưởng, bởi ta không chỉ làm việc trên khoảng 10 tài liệu mà
phải thực hiện trên hàng nghìn tài liệu. Vậy mục đích ở đây là để khai phá các
nguồn thông tin và trích chọn các thông tin liên quan từ chúng một cách tự động,
hay sự cực tiểu sự can thiệp của con người.
Kết quả của việc trích chọn thực thể tên phụ thuộc vào mục đích được xác
định trước như tên người, tổ chức, địa điểm, biểu thức của thời đại, số lượng, giá
trị tiền tệ, tỷ lệ phần trăm…, người dùng có thể thu lượm được một loạt các tri
thức ẩn dưới các thực thể tên đó. Ở đây luận văn tập trung vào việc trích chọn
tên máy ảnh kĩ thuật số có sử dụng giải thuật học bán giám sát.
Thị trường máy ảnh kỹ thuật số hiện có không dưới 10 nhãn hiệu nổi tiếng
trên thế giới như Sony, Canon, Fujifilm, Olympus đến Konica, Nikon, Samsung,
Pentax... Nhiều nhà sản xuất chuyên về công nghệ thông tin cũng tham gia vào
thị trường này như Epson, HP... cho thấy đây là một thị trường đầy hứa hẹn.
Cuộc đua giữa các nhà sản xuất vô cùng sôi động thông qua việc liên tục đưa ra
thị trường các sản phẩm có kiểu dáng mới, độ phân giải máy cao, giá mềm.
Cuộc cạnh tranh của các nhà sản xuất vẫn đang tiếp tục gia tăng, đem lại
cho người tiêu dùng những sản phẩm có chất lượng ngày càng cao với giá ngày
càng thấp. Doanh số trên thị trường máy ảnh kỹ thuật số lại bắt đầu có xu hướng
tăng lên. Nguyên nhân là do đâu? Hàng năm, số lượng các loại máy ảnh mới ra
đời ngày càng nhiều, người tiêu dùng đang bắt đầu thay thế những chiếc máy
ảnh kỹ thuật số đã cũ của mình. Nhiều người thậm chí còn mua những chiếc
13
máy ảnh thứ hai, thứ ba cho gia đình. Điều này đòi hỏi người dùng cần phải luôn
luôn cập nhật thông tin mỗi khi muốn mua một loại máy ảnh mới, đồng thời đòi
hỏi các nhà kinh doanh phải biết chính xác các thông tin liên quan đến các loại
máy ảnh mới để đưa ra các chính sách buôn bán cho phù hợp.
Tuy nhiên các thông tin trên mạng rất đa dạng và không có sự phân loại,
người dùng dễ bị ngột thở bởi rất nhiều các luồng thông tin và các dạng thông
tin, việc lấy ra các thông tin cần thiết cho nhu cầu sử dụng của mình là rất khó
khăn. Một nhu cầu đơn giản của người dùng là xác định tên máy ảnh này do
hãng nào sản xuất từ hàng nghìn các thông tin trên mạng Internet.
Một ứng dụng khác của việc trích chọn tên các máy ảnh số là tìm thêm các
thông số kỹ thuật liên quan đến từng loại máy ảnh để so sánh, đánh giá sản
phẩm giữa các nhà sản xuất. Hoặc có thể ứng dụng vào bài toán khai phá quan
điểm.
14
CHƯƠNG 2. HỆ THỐNG TRÍCH CHỌN THÔNG TIN
2.1. Xây dựng hệ thống trích chọn thông tin
Có hai hướng tiếp cận: Công nghệ tri thức (Knowledge Engineering) và
Huấn luyện tự động (Automation Training).
2.1.1. Công nghệ tri thức
Cần một kỹ sư tri thức (Knowledge Engineer): một người quen thuộc với
hệ thống truy tìm thông tin (Information Retrieval –IR), hình thức hóa các quy
tắc cho hệ thống, hoặc tự bản thân hoặc kết hợp với một chuyên gia trong miền
ứng dụng này sẽ viết các quy tắc cho các thành phần của hệ thống IR để đánh
dấu hoặc trích lọc thông tin sau khi tìm kiếm [5].
Kỹ sư tri thức sẽ phải truy cập đến một kho văn bản có kích thước vừa phải
của các miền liên quan. Rõ ràng rằng các kỹ năng của kỹ sư tri thức đóng một
yếu tố lớn trong mức độ thực hiện cần đạt đến của toàn bộ hệ thống.
Ngoài việc đòi hỏi kỹ năng và kiến thức chi tiết của một hệ thống trích
chọn thông tin cụ thể, Với cách tiếp cận này thì hệ thống hoạt động theo một chu
trình. Để xây dựng một hệ thống hoạt động tốt phải luôn luôn có sự tương tác
giữa người viết luật và hệ thống cùng với kho ngữ liệu huấn luyện và tập luật
luôn luôn được cập nhật để cho hệ thống có thể hoạt động tốt nhất. Việc xây
dựng một hệ thống thực hiện cao thường là một quá trình lặp đi lặp lại nhiều lần,
nhờ vào một tập các quy tắc được viết ra, hệ thống sẽ chạy qua một tập dữ liệu
văn bản được huấn luyện và đầu ra được kiểm tra xem nơi nào các quy tắc này
được tạo ra. Kỹ sư tri thức sau đó tạo ra những cải biến cho các quy tắc và lặp
lại quá trình.
Ưu điểm: thích hợp với hệ thống làm việc một cách thủ công, phụ thuộc
nhiều vào kỹ năng và kinh nghiệm của người viết ra luật.
Nhược điểm: yêu cầu một chu trình kiểm tra và sửa lỗi khá là khó khăn,
phụ thuộc vào rất nhiều nguồn tài nguyên ngôn ngữ như bộ từ điển phù hợp, khả
năng của người viết luật. Nếu một nhân tố nào bị mất mát, hệ thống có thể trở
lên không còn chắc chắn nữa.
Thích hợp với những hệ thống có sẵn nguồn tài nguyên về ngôn ngữ (bộ từ
điển) và con người (người viết luật), dữ liệu huấn luyện ít hoặc tốn kém, các đặc
tả trích chọn thay đổi nhiều theo thời gian.
2.1.2. Huấn luyện tự động
Trong hướng tiếp cận này, chúng ta không cần thiết phải có kiến thức chi
tiết về việc hệ thống trích chọn thông tin xem làm việc như thế nào, hay các quy
tắc được viết ra sao. Chỉ cần thiết phải có một ai đó biết một cách đầy đủ về
15
miền và công việc này để lấy được kho dữ liệu văn bản, và chú thích những văn
bản phù hợp cho thông tin được trích chọn.
Các chú thích này sẽ tập trung vào một khía cạnh đặc biệt của quá trình xử
lý của hệ thống. Một bộ đoán nhận tên sẽ được huấn luyện bằng việc chú thích
kho dữ liệu văn bản cùng với các tên phù hợp với miền liên quan.
Sau khi tập dữ liệu huấn luyện phù hợp đã được chú thích, thuật toán huấn
luyện được sử dụng, hệ thống sẽ sử dụng kết quả trả về phục vụ cho quá trình
phân tích văn bản mới. Một cách sử dụng bộ quan hệ huấn luyện khác là để
tương tác với người dùng trong suốt quá trình xử lý. Người sử dụng được phép
chỉ ra liệu rằng các giả thuyết của hệ thống về văn bản có đúng không, nếu
không đúng, hệ thống sẽ thay đổi các quy tắc của chính nó để điều tiết thông tin
mới [5].
Hướng tiếp cận này bao gồm các hướng tiếp cận nhánh như sau:
- Hệ thống học có giám sát
- Hệ thống học không giám sát
- Hệ thống học bán giám sát
Ưu điểm: nhấn mạnh đến việc tạo dữ liệu huấn luyện. Có thể dễ dàng tạo ra
được những chú thích để tạo ra bộ quan hệ huấn luyện. Miễn là ai đó quen thuộc
với các miền liên quan đều có thể chú thích văn bản, hệ thống có thể được tùy
biến đến một miền đặc biệt mà không cần sự can thiệp từ bất kỳ nhà phát triển
nào. Ví dụ: nhận dạng tên: dễ dàng để tìm được những người có thể viết chú
thích để tạo ra một số lượng lớn các dữ liệu huấn luyện.
Nhược điểm: Phụ thuộc vào tập huấn luyện. Nếu việc chú thích đòi hỏi ở
mức cao hơn trực giác của con người, nghĩa là đòi hỏi một sự phức tạp hay các
kiến thức về chuyên môn, thì khó mà tìm ra được các chú thích, và khó có thể
tạo ra dữ liệu chú thích đầy đủ cho một tập huấn luyện tốt.
Thực tế rằng, việc thu thập tập dữ liệu huấn luyện với chất lượng tốt có khi
khá tốn kém, hoặc việc thu thập dữ liệu huấn luyện không tốn kém về mặt thời
gian và con người nhưng lại tốn kém trong giai đoạn viết các luật cho hệ thống.
Thích hợp: với hệ thống không có sẵn tài nguyên về ngôn ngữ và kỹ năng
của người viết luật, dữ liệu huấn luyện phong phú và không tốn kém, các bản
đặc tả ổn định. Nếu bản đặc tả thay đổi theo thời gian, thì hệ thống sẽ chú thích
lại tất cả những dữ liệu huấn luyện đã tồn tại bằng những đặc tả mới và sau đó
huấn luyện lại. Đây là một công việc khá khó khăn.
2.2. Các phương pháp trích chọn
Vì các giải thuật dựa trên luật đòi hỏi tri thức của các chuyên gia và khả
năng thích ứng với các miền dữ liệu mới là hạn chế, nên luận văn sẽ tập trung
16
vào các giải thuật học máy. Phần này sẽ giới thiệu một số giải thuật học máy
trong trích chọn thông tin.
2.2.1. Học có giám sát trích chọn quan hệ
a. Giới thiệu:
Một hướng tiếp cận thường sử dụng trong nhiều hệ thống trích chọn có
giam sát là để huấn luyện hệ thống trên một tập tài liệu được gán nhẵn thủ công,
dựa vào đó hệ thống có thể áp dụng các kĩ thuật máy học để sinh ra các mẫu
trích chọn. Nhược điểm của phương pháp này là phụ thuộc vào tập dữ liệu được
gán nhãn, bao gồm số lượng lớn các thao tác thủ công để tạo ra nó.
Mục tiêu của học có giám sát là tìm hiểu một mô hình để phân loại các thể
hiện một cách tự động. Học có giám sát được biết đến nhiều nhất là việc phân
lớp. Ví dụ, nếu một người muốn xây dựng một hệ thống giúp ai đó mua một
chiếc ô tô, nó có thể lựa chọn hãng, màu, năm sản xuất như các đặc trưng. Hệ
thống phải có một danh sách các ví dụ thể hiện cùng với các giá trị riêng biệt
cho mỗi đặc tính. Mỗi thể hiện sẽ được đánh giá bởi một chuyên gia và được
xếp vào một lớp nào đó phục vụ để phân loại các thông tin, với bài toán mua xe
ô tô, các lớp có thể là mua hoặc không mua. Với các thể hiện này, nhãn lớp đó
tạo thành một tập huấn luyện để có thể được sử dụng như là đầu vào cho một
chương trình học có giám sát.
Học có giám sát có thể được dùng để học các mẫu từ tập huấn luyện (dưới
dạng một tập tài liệu được gán nhãn) mà không cần sự trợ giúp của con người.
Tuy nhiên, thành công của hệ thống lại phụ thuộc vào độ tin cậy của dữ liệu
huấn luyện. Mặc dù học có giám sát tiết kiệm nhiều thời gian của các chuyên
gia, nhưng chi phí ẩn cho việc gán nhãn của tập huấn luyện thì lại rất lớn.
b. Hệ thống AutoSlog
AutoSlog [18] là một hệ thống cấu trúc từ điển, sinh ra các mẫu trích chọn
một cách tự động sử dụng các luật heuristic trên một miền chuyên biệt nào đó.
AutoSlog sử dụng thuật toán học có giám sát, sử dụng tập tài liệu đã được chú
thích trong đó danh sách các cụm từ cần được trích chọn phải được gán nhãn,
coi đây như đầu vào của thuật toán (Ví dụ, trong miền khủng bố, các cụm danh
từ chỉ thủ phạm, mục tiêu, nạn nhân có thể được gán nhãn).
Ví dụ một câu đã được gán nhãn: “It was officially reported that a policeman
nạn nhân
was wounded today when urban guerrillas attacted the guards at a power substation
thủ phạm nạn nhân
located in downtown San Salvador.”
địa điểm
17
Hoạt động của hệ thống AutoSlog được mô tả trong hình 3.
Hình 3: Sơ đồ hoạt động của hệ thống AutoSlog
Cho một cụm danh từ đã được gán nhãn và một đoạn văn bản nguồn,
AutoSlog đầu tiên sẽ xác định câu chứa cụm danh từ trên. Nếu có nhiều hơn một
câu và việc chú thích không chỉ ra cái nào là thích hợp thì AutoSlog sẽ lựa chọn
câu đầu tiên. AutoSlog sẽ gọi bộ phân tích câu được gọi là CIRCUS để xác định
các biên mệnh đề và các thành phần ngữ pháp. AutoSlog cần duy nhất một phân
tích cú pháp nông để nhận diện chủ ngữ, động từ, đối tượng trực tiếp, và các
cụm giới từ của mỗi mệnh đề, vì thế bất kì phân tích nào đều có thể được sử
dụng. AutoSlog sử dụng tập các luật heuristic, tập các luật này được lắp vào cho
câu đã xác định ở trên, những luật nào phù hợp sẽ sinh ra các mẫu trích chọn
trên cơ sở các từ đặc trưng trong câu. Trong hầu hết các trường hợp, họ giả sử
rằng động từ quyết định vai trò. Các luật nhận dạng vài dạng thức của động từ
như chủ động, bị động, nguyên thể. Tập các luật heuristics được trình bày trong
bảng 1.
Ví dụ, có câu “Luke Johnson was killed in Iraq by insurgents.”. Giả sử rằng Luke
Johnson được gán nhãn như một nạn nhân liên quan, AutoSlog phân tích câu đó
và nhận dạng Luke Johnson như một chủ thể. Các luật chủ thể heuristic được
kiểm tra và nhận thấy duy nhất luật #1 passive – verb phù hợp với mệnh đề
trên. Luật này được so khớp với các từ chuyên dụng trong câu đó để tạo ra mẫu
trích chọn was killed. Mẫu này sẽ được sử dụng để trích chọn cụm danh
từ ở bất kì nơi nào mà động từ killed xuất hiện trong cấu trúc bị động và chủ thể
của nó sẽ được trích chọn như một nạn nhân.
18
Tương tự, nếu insurgents được gán nhãn là thủ phạm, AutoSlog sẽ sinh ra
mẫu was killed by dựa trên luật #12. Mẫu này sẽ sinh ra tất cả các cụm danh
từ đi sau giới từ by và gắn với dạng thức bị động của động từ killed.
Mẫu luật heuristic Các mẫu học được từ các luật
1 passive-verb was murdered
2 active-verb bombed
3 verb infinitive attempted to kill
4 aux noun was victim
5 Passive-verb Killed
6 Active-verb Bombed
7 Infinitive To kill
8 Verb infinitive Tried to attack
9 Gerund Killing
10 Noun aux Fatality was
11 Noun preposition Bomb against
12 Passive-verb preposition Killed with
13 Active-verb preposition Was aimed at
Bảng 1: Các luật của AutoSlog
Tuy nhiên các luật heuristic của AutoSlog không được hoàn hảo, dẫn đến
việc tạo ra một số các mẫu không mong muốn. Do đó con người phải xem xét lại
các mẫu được sinh ra, quyết định xem mẫu nào sẽ được giữ lại để phục vụ cho
quá trình trích chọn sau này.
2.2.2. Học không giám sát trích chọn quan hệ
a. Giới thiệu:
Với số lượng gần như vô hạn của văn bản không có nhãn có thể truy cập
vào các trang web và các nguồn khác, các phương pháp học không giám sát có
thể khai thác văn bản không được chú thích làm cho nó trở lên có giá trị, giảm
bớt chi phi cho việc chú thích, gán nhãn cho tài liệu như ở phương pháp học có
giám sát.
Hướng tiếp cận cơ bản của học không giám sát bao gồm các bước. Thứ
nhất, các hệ thống học không giám sát được bắt đầu với một số mẫu hoặc sự
kiện đã được gán nhãn. Sau đó, hệ thống sẽ tìm kiếm trên tập dữ liệu lớn chưa
được chú thích để tìm các mẫu tiềm năng trên cơ sở các mẫu ban đầu. Sau khi
các mẫu mới được tìm thấy, hệ thống có thể sử dụng chúng để khai phá thêm
các sự kiện bổ xung. Hệ thống sẽ thêm các sự kiện đó vào tập hạt giống. Sau đó,
19
hệ thống được huấn luyện lại dựa trên tập hạt giống mở rộng mới. Quá trình này
lặp cho đến khi không còn mẫu nào được tìm thầy nữa.
b. AutoSlog – TS
AutoSlog – TS [18] là sự mở rộng của AutoSlog, không đòi hỏi việc gán
nhãn, tự động sinh các mẫu trích chọn cho mọi cụm danh từ. Thay vào đó,
AutoSlog TS học từ hai tập văn bản không được gán nhãn: một tập liên quan
đến miền quan tâm, một tập không liên quan đến miền. Ví dụ, nếu một hệ thống
muốn học các mẫu trích chọn cho miền khủng bố, người dùng sẽ cung cấp một
tập văn bản mô tả các sự kiện khủng bố và một tập không liên quan các sự kiện
khủng bố. AutoSlog – TS tạo ra mọi mẫu có thể trong tập văn bản, sau đó tính
toán thống kê dựa trên tần xuất xuất hiện của mỗi mẫu trong tập các văn bản liên
quan so với tập các văn bản không liên quan. Sau đó hệ thống sẽ tạo ra một danh
sách xếp hạng các mẫu trích chọn được cùng với số liệu thống kê để chỉ ra mẫu
nào hỗ trợ nhiều nhất với miền đang xét.
AutoSlog TS sử dụng tập gồm 15 luật heuristic, bao gồm 13 luật của
AutoSlog ở bảng 1, cộng thêm 2 mẫu heuritic mới: active-verb dobj
( attacked embassy); infinitive preposition (to sell for
). Hai mẫu thêm vào này được tạo ra cho các miền kinh doanh từ các kinh
nghiệm đã có.
Hình 4: Sơ đồ hoạt động của hệ thống AutoSlog – TS
Hoạt động của hệ thống AutoSlog được thể hiện trong hình 4.
20
Giai đoạn 1:
+ phân tích ngữ pháp để xác định các cụm danh từ
+ với mỗi cụm danh từ, các luật heuristic sinh ra các mẫu (gọi là các nút
khái niệm - concept node trong CIRCUS)
+ có thể sinh ra các luật phức tạp. Giả sử có câu “terrorists bombed the US
embassy”, và cụm danh từ terrorists đã được gán nhãn thủ phạm thì cả luật
active-verb và active-verb dobj đều được áp dụng vào Ta có các mẫu
được sinh ra là: bombed
bombed embassy
Giai đoạn này tạo ra một số lượng lớn các mẫu trích chọn, đến hàng chục
nghìn mẫu riêng biệt, các mẫu này có khả năng trích chọn mọi cụm danh từ
trong tập tài liệu.
Giai đoạn 2: Tiến hành quá trình huấn luyện tập dữ liệu lần 2 sử dụng
các mẫu trích chọn mới.
Với mỗi mẫu trích chọn được, AutoSlog TS sẽ tính toán hai giá trị tần xuất:
total_freqi là số lần xuất hiện của mẫu thứ I trong toàn bộ tập tài liệu, và
rel_freqi là số lần xuất hiện của mẫu thứ I trong tập tài liệu liên quan. Sau đó hệ
thống sẽ tính toán giá trị thống kê:
freqtotal
freqrel)patterns|relevantPr(
i
i
i
Sau đó, hệ thống xếp hạng các mẫu theo thứ tự độ quan trọng trong miền
theo công thức:
)patterns|relevantPr(*)freq_rel(log)pattern(FlogR iii 2
Hình 5 chỉ ra một số ví dụ về đầu vào và đầu ra của AutoSlog TS.
Relevant Text
CNN reported that three people died today in Bogota in a terrorist event.
Armed guerrillas shot 3 judges with a machine gun. They died in an attack at
the court house. The FMLN claimed responsibility for the death of the judges
and claimed that the death of more judges would soon follow.
Irrelevant Text
The Los Angeles Times reported that Marlon Brando died today in
California. Marlon Brando died at the UCLA Hospital at the age of 80. Sources
claimed that he had been diagnosed with pulmonary fibrosis.
Total_Freq Rel_Freq Prob RlogF Pattern
4 3 0.750 1.189 died in
2 2 1.000 1.000 death of
21
3 2 0.667 0.667 claimed
4 2 0.500 0.500 died
1 0 0.000 0.000 was diagnosed with
1 0 0.000 0.000 was diagnosed
1 0 0.000 0.000 age of
1 1 1.000 0.000 follow
1 1 1.000 0.000 responsibility for
1 1 1.000 0.000 claimed
1 1 1.000 0.000 claimed responsibility
3 1 0.333 0.000 died at
1 1 1.000 0.000 shot with
1 1 1.000 0.000 shot
1 1 1.000 0.000 shot judges
1 1 1.000 0.000 shot
2 1 0.500 0.000 reported
Hình 5: Ví dụ về AutoSlog - TS
2.2.3. Học bán giám sát trích chọn quan hệ
Những hướng tiếp cận trước đây chủ yếu là học có giám sát. Hướng tiếp
cận này khó khăn ở chỗ cần phải có ngữ liệu đã được gán nhãn hỗ trợ quá trình
học. Brin đã đưa ra phương pháp lặp tương hỗ (bootstrapping) cho việc trích
chọn quan hệ [3]. Kĩ thuật này nhận đầu vào là một tập nhỏ các hạt giống (seed)
của một mối quan hệ cụ thể đã được xác định trước, từ đó tiến hành cho học để
trích xuất ra một tập các mẫu quan hệ ngữ nghĩa và tiến hành sinh thêm các quan
hệ mới. Kết quả thu được là một tập dữ liệu lớn biểu diễn mối quan hệ được
quan tâm.
Hướng tiếp cận này cần một tập dữ liệu hạt giống nhỏ ban đầu. Và nó cũng
không rõ ràng trong việc xây dựng tập khởi đầu này như thế nào, chọn lựa dữ
liệu ra sao, số lượng bao nhiêu là đủ.
Sử dụng phương pháp học bán giám sát, một hệ thống có thể học từ việc
pha trộn giữa dữ liệu có gán nhãn và dữ liệu không được gán nhãn. Trong nhiều
ứng dụng thì đó là một tập nhỏ dữ liệu được gán nhãn cùng với tập lớn dữ liệu
không được gán nhãn. Không tốt khi sử dụng chỉ một tập nhỏ dữ liệu được gán
nhãn để huấn luyện hệ thống bởi tỉ lệ giữa số lượng các ví dụ huấn huận với số
lượng các đặc trưng là nhỏ, kết quả huấn luyện sẽ không chính xác. Vì thế, hệ
thống cần kết hợp giữa dữ liệu có gán nhãn và dữ liệu không gán nhãn trong
suốt quá trình huấn luyện để cải thiện việc thực hiện.
22
Hệ thống có thể trích chọn các mẫu từ dữ liệu đã được gán nhãn, và gán
nhãn các dữ liệu chưa được chú thích một cách tự động bằng việc sử dụng các
mẫu. Và kết quả, tất cả các dữ liệu sẽ được gán nhãn trong khi huấn luyện.
2.2.3.1. DIPRE: Dual Iterative Pattern Relation Extraction
Segrey Brin đã đưa ra một ý tưởng là rút trích ra các cặp (title, author) của
cuốn sách. Đặc điểm của cặp được rút trích này là chúng có quan hệ với nhau –
tên sách và tên tác giả viết cuốn sách. Ví dụ: cặp (The Comedy of Errors,
W.Shakespeare) thể hiện quyển sách The Comedy of Errors do W.Shakespeare viết
ra.
Điểm nổi bật trong nghiên cứu này là thuật toán DIPRE, một kỹ thuật trích
chọn các quan hệ cùng với việc tạo để sử dụng tính đối ngẫu của mẫu – quan hệ.
D = một CSDL lớn thông tin không có cấu trúc như là www
R = r1, ….rn là các quan hệ đích.
Một bộ dữ liệu t, của R xuất hiện một hoặc nhiều lần trong D, là một quan
hệ. Ví dụ trong [3], tập quan hệ đích R là bảng chứa các cặp (author, title).
Tính đối ngẫu giữa mẫu và quan hệ: từ một tập các mẫu tốt, ta có thể xây
dựng một tập các bộ quan hệ tốt. Ngược lại, chúng ta mong muốn đưa ra một tập
các bộ quan hệ tốt, chúng ta có thể xây dựng một tập các mẫu tốt.
Giải thuật DIPRE làm việc theo mô tả trong hình 6.
Hình 6: Mô hình hoạt động của hệ thống DIPRE
Quy trình rút trích dựa theo thuật toán DIPRE:
1. Lấy R’ là một tập nhỏ của tập quan hệ đích (danh sách 5 quyển sách với
tác giả).
2. O FindOccurrences(R’; D): thủ tục tìm sự xuất hiện của các cặp quan
hệ hạt giống của R’ trong tập D.
Là đoạn văn bản chứa đồng thời tên tác giả và tiêu đề của quyển sách trong
văn bản (sự kiện chứa tên tác giả và tên sách).
Với bộ quan hệ tìm được, giữ ngữ cảnh xung quanh tên tác giả và tên sách
(url và văn bản xung quanh).
3. P GenPatterns(O): Sinh các mẫu từ các sự kiện đã tìm được
Initial Seed Tuples
Occurrences of Seed Tuples
Generate Extraction Patterns
Generate New Seed Tuples
23
Thủ tục này phải sinh ra các mẫu cho các tập sự kiện cùng với ngữ cảnh
tương tự. Các mẫu cần phải có tỉ lệ lỗi thấp. Tỉ lệ bao phủ càng cao càng tốt.
4. R’ MD(p): Tìm kiếm CSDL cho bộ quan hệ phù hợp với bất kỳ mẫu
nào.
5. Nếu R’ đủ lớn thì dừng, không thì trở lại bước 2.
a. Quy ước
Bộ quan hệ: cặp (title, author). Ví dụ: cặp (The Robots of Dawn, Issac
Asimov) là một bộ quan hệ.
Một sự kiện là một bộ - 7: (author, title, order, url, prefix, middle,
suffix)
Trong đó;
+ url là url của tài liệu chứa cặp (title, author)
+ Prefix: gồm m ký tự đứng trước author (hoặc title nếu title
đứng trước)
+ Middle: là phần văn bản nằm giữa author và title
+ Suffix: gồm m ký tự đứng sau title (hoặc author)
Ví dụ: Cho cặp quan hệ (Charles Dickens, Great Expectations), trong miền
www.books.com có đoạn thể hiện “The famous writer Charles Dickens wrote Great
Expectations book” thì tương ứng ta có sự kiện: (The famous writer, Charles Dickens,
wrote, Great Expectations, book, true, www.books.com/TopRated).
Mẫu là một bộ - 5: (order, urlprefix, prefix, middle, suffix)
Trong đó:
+ Order có giá trị Boolean, chỉ thứ tự xuất hiện của author và title
trong câu,
+ Các phần tử còn lại là một chuỗi ký tự.
Ví dụ: Mẫu có dạng title by author ( , thì:
+ Order = true
+ Urlprefix = www.books.com
+ Prefix =
+ Middle = by
+ Suffix = (
Một cặp (title, author) được trích chọn nếu có một URL trên web hợp
với urlprefix* và nội dung của nó có chứa đoạn hợp với biểu thức
chính quy “*prefix, author, middle, title, suffix*”, đồng thời khi đó
biến order = true. Biểu thức chinh quy cho author và title lần lượt là:
[A-Z][A-Za-z .,&]5;30[A-Za-z.]
[A-Z0-9][A-Za-z0-9 .,:'#!?;&]4;45[A-Za-z0-9?!]
24
b. Bộ quan hệ ban đầu
Title Author
The Robots of Dawn Issac Asimov
Startide Rising David Brin
Chaos: Making a New Science James Gleick
Great Expectations Clarles Dickens
The Comedy of Errors W. Shakespeare
Bảng 2: Năm bộ quan hệ hạt giống của hệ thống DIPRE
c. Tìm các sự kiện dựa trên tập bộ quan hệ ban đầu
Ở công đoạn này, hệ thống cần trải qua hai lần lọc fgrep: fgrep author và
fgrep title. Lần thứ nhất tìm các dòng tương ứng với author hợp lệ, lần thứ hai
tìm các dòng tương ứng với Title hợp lệ. Sau đó kiểm tra sự phù hợp giữa author
và title này trên một dòng, nhận dạng chúng rồi đưa ra các sự kiện tương ứng.
www.sff.net/locus/c3.html --> có sự kiện:
The Robots of Dwan by Isaac Asimov (Bantam Spectra,
Jan 90)
www.sff.net/locus/c5.html --> có sự kiện:
Startide Rising by David Brin (Pulphouse, Jul 90)
--> có sự kiện
Foundation by Isaac Asimov (1951)
--> có sự kiện:
Nightfall by Isaac Asimov (1941)
Các sự kiện mô tả theo bộ - 7 được thể hiện trong bảng 3 dưới đây.
Title Author Order url Prefix Middle suffix
The Robots
of Dwan
Issac
Asimove
F www.sff.net
/locus/c3.ht
ml
by
(Bantam
Spectra, Jan
90)
Startide
Rising
David
Brin
F www.sff.net
/locus/c5.ht
ml
by
(Pulphouse,
Jul
90)
Foundation Isaac
Asimov
F www.scifi.o
rg/bydecade
/1950.html
by
(1951)
Nightfall Isaac
Asimov
F www.scifi.o
rg/bydecade
/1940.html
by
(1941)
Bảng 3: Ví dụ các sự kiện được mô tả dưới dạng bộ - 7
25
d. Sinh ra các mẫu
*Thủ tục sinh ra một mẫu GenOnePattern(O)
1. Xác minh các thành phần order và middle của tất cả các thể hiện có
trùng nhau không. Nếu không, không thể sinh ra các mẫu phù hợp với tất cả
chúng. Gán giá trị cho outpattern.order và outpattern.middle tương ứng là order
và middle.
2. Tìm tiền tố chung dài nhất của tất cả các url. Giá trị của
outpattern.urlprefix chính là tiền tố này.
3. Outpattern.prefix là giá trị hậu tố chung dài nhất của tất cả các prefix.
4. Outpattern.suffix là giá trị tiền tố chung dài nhất của tất cả các suffix.
Thành phần Order và Middle của các sự kiện phải giống nhau. Nếu không
ta không thể sinh ra được mẫu phù hợp với tất cả các sự kiện.
Outpattern.order order
Outpattern.middle middle
Outpattern.urlprefix prefix dài nhất của các url
Outpattern.prefix suffix dài nhất của tất cả các prefix
Outpattern.suffix prefix dài nhất của tất cả các suffix
Ví dụ về thủ tục sinh mẫu được thể hiện trong bảng 4.
Tính đặc trưng của mẫu: Một mẫu sinh ra như trên có thể quá chung chung
hoặc quá chuyên biệt. Chúng ta không quan tâm đến các mẫu quá chuyên biệt vì
như vậy sẽ có rất nhiều mẫu được sinh ra, khi kết hợp chúng sẽ tạo ra quá nhiều
quyển sách. Tuy nhiên một mẫu quá chung chung có khả năng không đưa ra
được thực thể là tên sách.
Để giải quyết vấn đề này, ta sẽ gắn mỗi mẫu với một độ đo specificity
specificity(p) = |p.middle||p.urlprefix||p.prefix||p.sufix|
trong đó: p.middle, p.urlprefix, p.prefix, p.sufix là middle, urlprefix, prefix,
sufix của mẫu p; |s| chỉ độ dài của xâu s.
Hệ thống sẽ loại bỏ các mẫu có độ specificity quá thấp, tuy nhiên
specificity(P)n > t với n là số lượng các quyển sách trong các thể hiện tương ứng
với mẫu P (n>1) và t là một ngưỡng nào đó.
* Thuật toán sinh nhiều mẫu GenPatterns(O).
1. Nhóm tất các sự kiện o trong O theo trường order và middle. Gọi các
nhóm này là O1, …, OK.
2. Với mỗi nhóm Oi, p GenOnePattern(Oi). Nếu p thoả mãn điều kiện về
độ “riêng biệt” thì đưa ra p. Nếu không:
Nếu tất cả các sự kiện o trong Oi có cùng url, ta không thể mở rộng
được urlprefix thì loại bỏ Oi đó.
26
Còn không, phân chia các sự kiện o trong Oi thành các nhóm nhỏ có
cùng đặc tính url. Lặp lại thủ tục trên ở bước 2 cho các nhóm con.
Pattern
Order Urlprefix Prefix Middle Suffix
F www.sff.net/locus/c* by (
F www.scifi.org/bydecade/19* by (19
… … … …
Pattern
www.sff.net/locus/c*
title by author (
www.scifi.org/bydecade/19*
title by author (19
Bảng 4: Ví dụ về việc sinh các mẫu DIPRE
2.2.3.2. Hệ thống SNOWBALL
Các tài liệu văn bản thường chứa dữ liệu cấu trúc có giá trị ẩn trong các câu
tiếng Anh đơn thuần. Dữ liệu này được sử dụng tốt nhất nếu có sẵn như một
bảng quan hệ, chúng ta có thể sử dụng chúng để trả lời một cách chính xác các
câu truy vấn hoặc để chạy các công việc khai phá dữ liệu. Cũng dựa trên tư
tưởng của DIPRE, Eugene Agichtein và Luis Gravano giới thiệu những chiến
lược mới để sinh các mẫu và trích chọn các bộ quan hệ từ các tài liệu văn bản
đơn giản - hệ thống Snowball, để rút trích cặp quan hệ <Organization,
Location> - tên tổ chức và địa điểm [2]. Tại mỗi vòng lặp của quá trình trích
chọn, Snowball đánh giá chất lượng của những mẫu và bộ quan hệ mà không
cần sự can thiệp của con người, chỉ giữ lại những mẫu và bộ quan hệ tin cậy
nhất cho vòng lặp kế tiếp.
Một tập hợp các mục trong bài báo có thể chứa thông tin về vị trí của các
trụ sở các tổ chức. Nếu chúng ta cần tìm vị trí của các trụ sở này, chúng ta cố
gắng sử dụng các kỹ thuật tìm kiếm truyền thống để tìm các tài liệu chứa câu trả
lời cho truy vấn của mình. Chúng ta sẽ có câu trả lời chính xác hơn nếu chúng ta
có sẵn một bảng danh sách tất cả các cặp tổ chức – vị trí được đề cập trong tập
tài liệu của chúng ta. Một bộ trong bảng chỉ trụ sở
của tổ chức Organization là vị trí Location.
Hệ thống Snowball dựa trên ý tưởng DIPRE: trích chọn quan hệ cấu trúc
(bảng) từ tập các tài liệu HTML. Phương pháp này hoạt động tốt nhất trong môi
trường giống như WWW, các bộ quan hệ dạng bảng được trích chọn có xu
hướng xuất hiện các ngữ cảnh lặp lại trong tập tài liệu. Snowball khai thác các
27
cấu trúc giảm bớt và vốn có trong tập hợp để trích chọn được quan hệ đích với
tập huấn luyện nhỏ nhất từ người dùng, thêm vào đó người dùng có thể cung cấp
thêm một biểu thức chính quy mà các thực thể phải phù hợp. Snowball tìm các
thể hiện của cặp trong các tài liệu văn bản. Sau đó
Snowball sẽ kiểm tra ngữ cảnh xung quanh bộ quan hệ ban đầu. Ví dụ từ câu
“computer servers at Microsoft’s headquarters in Redmond” để xây dựng lên một mẫu
có dạng ‘s headquarters in .
Hình 7: Mô hình hoạt động của hệ thống Snowball
Mô hình hoạt động của hệ thống Snowball được thể hiện trong hình 7. Xuất
phát từ bộ quan hệ huấn luyện ban đầu, tìm các sự kiện liên quan, sinh các mẫu
và trích chọn bộ quan hệ từ các tài liệu văn bản, đánh giá chất lượng của mẫu và
bộ quan hệ được sinh ra tại mỗi vòng lặp của quá trình trích chọn, chỉ các mẫu
và bộ quan hệ thật sự tin cậy mới được giữ lại cho Snowball dùng cho lần lặp
tiếp theo của hệ thống. Snowball cũng có thêm chiến lược đánh giá chất lượng
của mỗi mẫu và cặp quan hệ, nếu cái nào đủ tin cậy thì mới được sử dụng cho
các vòng lặp tiếp theo. Việc sinh và lọc các mẫu và bộ quan hệ cải thiện chất
lượng của các bảng được trích chọn một cách đáng kể. Tuy nhiên Snowball cần
đến sự hỗ trợ của NER.
Hệ thống Snowball độc đáo với cách biểu diễn pattern mềm dẻo, cộng với
sự hỗ trợ của NER nên có kết quả thu được tốt nhất.
a. Bộ quan hệ hạt giống
MICROSOFT REDMOND
EXXON IRVING
IBM ARMONK
BOEING SEATTLE
INTEL SANTA CLARA
Bảng 5: Năm bộ quan hệ hạt giống của hệ thống Snowball
b. Tìm các sự kiện liên quan
Dựa vào bộ quan hệ hạt giống ban đầu ta có thể tìm được các sự kiện liên
quan như sau. Với mỗi cặp , Snowball tìm các mẩu tin
Initial Seed Tuples
Occurrences of Seed Tuples
Tag Entities
Generate Extraction Patterns
Generate New Seed Tuples
28
trong tập các tài liệu chứa Organization và Location xuất hiện gần nhau, phân
tích văn bản để kết nối Organization và Location để sinh ra các mẫu.
Ví dụ các sự kiện tìm được dựa vào các bộ quan hệ hạt giống được thể hiện
trong hình 8.
Hình 8: Các sự kiện tìm được dựa vào bộ quan hệ hạt giống
c. Gắn các thực thể có tên
Sự cải thiện so với DIPRE là các mẫu Snowball có thêm các thẻ gắn các
thực thể được đặt tên. Ví dụ từ sự kiện 2 như trên ta có thể đưa ra mẫu có dạng
- based . Tuy nhiên mẫu này không phải phù hợp
với bất kỳ cặp chuối ký tự nào được liên kết bởi – based, ví dụ: a producer of
apple-based jelly. chỉ phù hợp với những chuỗi được xác định thuộc
loại Location. chỉ phù hợp với những chuỗi được xác định
thuộc loại Organization.
Các thực thể trong các tài liệu văn bản được xác định loại tên, hệ thống sẽ
bỏ qua các thực thể không mong muốn, chỉ tập trung vào các mẩu tin chứa thực
thể Location và Organization, và phân tích ngữ cảnh bao quanh mỗi cặp của các
thực thể như vậy để kiểm tra xem họ được kết nối bởi cụm từ mong muốn và do
đó sẽ phù hợp với các mẫu.
d. Sinh các mẫu
ĐN1: Một mẫu Snowball là bộ 5: trong đó
tag1 và tag2 là các thẻ thực thể được gắn tên; left, middle, right là các véctơ
cùng với trọng số (0 1) của các thuật ngữ. Trọng số này chỉ sự quan trọng của
mỗi thuật ngữ trong ngữ cảnh tương ứng.
Ví dụ một mẫu trong Snowball: },LOCATION, {,
}, ORGANIZATION,{}>
Sau khi xác định 2 thực thể tag1 và tag2, Snowball tạo 3 vectơ lS, rS, mS từ
S bằng việc phân tích ngữ cảnh bên trái, phải, giữa xung quanh các thực thể đó.
Với mỗi vectơ có các từ với trọng số khác không xuất hiện trong ngữ cảnh
29
tương ứng; lS, rS được giới hạn bởi m từ cách bên trái và phải của mỗi cặp thực
thể (m = 10). Trọng số của mỗi thuật ngữ trong mỗi vectơ là một hàm của tần số
xuất hiện của thuật ngữ đó trong ngữ cảnh tương ứng.
Thông thường gán các thuật ngữ của vectơ middle cao hơn trọng số của
vectơ left và right.
VD:
’s headquarters in
-based
,
* Phân cụm các sự kiện tương tự nhau:
ĐN2: Độ đo sự phù hợp Match(tP, tS) giữa hai bộ tP và ts trong đó: tP=< lP,
t1, mP, t2, rP > với 2 thẻ t1, t2 và tS = với 2 thẻ t1’ và t2’ được
định nghĩa là:
0
SPSPSP
SP
r.rm.ml.l
)t,t(Match
Snowball sinh ra các bộ 5 cho mỗi sự kiện xuất hiện trong tập hợp, sau đó
phân cụm các bộ này sử dụng thuật toán phân cụm đơn giản, sử dụng hàm
Match phía trên để tính toán sự tương tự giữa các vectơ và ngưỡng sim. Mẫu
cuối cùng được sinh ra bằng việc lấy các phần tử đại diện của các cụm. Mẫu mới
SSS rtmtl ,,,, 21
Ví dụ ta có hai bộ quan hệ trong một cụm như sau:
1 - , }, ORGANIZATION, { <central
0.5> }, LOCATION, {}>
2 - , }, ORGANIZATION, {
}, LOCATION, {}>
Tương ứng ta có mẫu Snowball:
,
LOCATION, {}>
2.5.2.5. Sinh các bộ quan hệ mới
Sử dụng các mẫu vừa sinh ra, quét trên toàn bộ tập hợp để lấy ra những bộ
quan hệ mới. Thủ tục sinh bộ quan hệ mới từ các mẫu là:
Sub GenerateTuples(Patterns)
For each text_segment in corpus
(1) {;} = CreateOccurrence(text_segment);
tC = ;
SimBest = 0;
For each p in Patterns
30
(2) sim = Match(; p);
if (sim >= sim)
(3) UpdatePatternSelectivity(p, TC);
if(sim >= SimBest)
SimBest = sim;
PBest = p;
if(SimBest >= sim)
CandidateTuples[TC].Patterns[PBest] = SimBest;
return CandidateTuples;
Đầu tiên Snowball xác định các câu chứa các thẻ organization và location.
Từ những mẩu tin văn bản chứa cặp , Snowball sinh ra bộ - 5 t = <lc; t1;
mc; t2; rc >. Bộ được lấy ra nếu có một mẫu tP mà Match(t, tp) > = sim với
sim là ngưỡng tương tự trong cụm.
e. Đánh giá độ tin cậy của mẫu và bộ quan hệ
Sinh ra các mẫu chất lượng là một thách thức lớn. Ví dụ hệ thống có thể
sinh ra mẫu như sau: , LOCATION, {}> từ đoạn
văn bản “Intel, Santa Clara, announced...” Mẫu này phù hợp với bất kì chuỗi nào
bao gồm một tổ chức theo sau một dấu phẩy, theo sau là một địa điểm. Đánh giá
độ tin cậy confidence của mẫu này, ta có thể thấy mẫu này mà có xu hướng tạo
ra bộ quan hệ sai. Do đó ta có thể đánh trọng số cho các mẫu này dựa trên cơ sở
tính chọn lọc của chúng, và tin tưởng rằng chúng sẽ tạo ra các bộ quan hệ phù
hợp. Do đó, một mẫu không có tính chọn lọc sẽ được gắn trọng số thấp. Các bộ
quan hệ được tạo ra bởi mẫu như vậy sẽ bị loại bỏ, trừ khi họ được hỗ trợ bởi
các mẫu chọn lọc khác.
Tương tự, một bộ quan hệ không tốt có thể sinh ra các mẫu xa lạ, có thể trả
về các bộ quan hệ sai hơn nhiều trong lần lặp Snowball kế tiếp. Để ngăn chặn
điều này, chúng ta phải giữ lại các bộ quan hệ có độ tin cậy confidence cao. Độ
tin cậy của một bộ quan hệ là một hàm của tính chọn lọc và số lượng các mẫu
sinh ra nó. Độ tin tưởng của một bộ quan hệ cao nếu nó được sinh ra bởi vài
mẫu có tính chọn lọc tương đối cao.
Sau quá trình lọc ban đầu, chúng ta sẽ loại bỏ tất cả các mẫu có độ
supported nhỏ hơn Sup của bộ quan hệ ban đầu. Sau đó chúng ta sẽ cập nhật
confidence của mỗi mẫu trong bước 3 của thuật toán, kiểm tra mỗi mẫu tiền
năng t = được sinh bởi mẫu đó. Nếu mẫu t’ có độ tin cậy cao các bộ quan
hệ sinh ra trong suốt quá trình lặp trước đó của hệ thống cho cùng một tổ chức o
như trong t, thì chính hàm này so sánh vị trí l và l’. Nếu hai vị trí này giống
nhau, thì bộ t được xem là một phù hợp positive của mẫu. Ngược lại, sự phù hợp
là negative.
31
* ĐN3: Độ tin cậy confidence của một mẫu P là:
)..(
.)(
negativePpositiveP
positivePPconf
với P.positive là số lượng các bộ quan hệ phù hợp positive cho mẫu P và
P.negative là số lượng các bộ quan hệ phù hợp negative cho P.
MICROSOFT REDMOND
EXXON IRVING
IBM ARMONK
BOEING SEATTLE
INTEL SANTA CLARA
Xét mẫu P = , LOCATION, {}> với các sự
kiện phù hợp:
1 - Boeing, Seattle, said… positive
2 - Intel, Santa Clara, cut prices… positive
3 - invest in Microsoft, New York-based Negative analyst Jane Smith
said… negative
Mẫu P có độ tin cậy là conf(P) = 67.0
12
2
* ĐN4: Độ tin cậy RlogF của một mẫu P là:
ConfRlogF(P) = Conf(P). log2(P.Positive)
Xem xét bộ quan hệ T và tập mẫu P = {Pi} được sử dụng để sinh ra T. Giả
sử ta biết xác xuất Prob(Pi) cùng với mỗi mẫu Pi sinh ra các bộ quan hệ hợp lệ.
P
i
iPobTob
0
))(Pr1(1)(Pr
Độ đo Conf(Pi) được thiết kế để ước lượng Prob(Pi), xác xuất của mẫu Pi
sinh ra một bộ quan hệ hợp lệ.
* ĐN5: Độ tin cậy của một bộ quan hệ:
P
i
iii PCMatchPConfTConf
1
))),().((1(1)(
với P = {Pi} là tập các mẫu sinh ra T và Ci là ngữ cảnh hỗ trợ cùng với sự
kiện của T phù hợp với Pi với độ phù hợp Match(Ci, Pi)
Một bộ quan hệ sẽ có độ tin cậy cao nếu được sinh ra bởi nhiều mẫu Pi có
độ tin cậy cao.
Sau khi tính toán độ tin cậy của các bộ quan hệ thích hợp, Snowball sẽ loại
bỏ những bộ quan hệ có độ tin cậy thấp. Các bộ quan hệ này có thể gây ra sự
nhiễu trong quá trình sinh các mẫu mới, có thể đưa ra những bộ quan hệ không
hợp lệ, làm giảm sút sự thực hiện của hệ thống. Do đó bộ quan hệ được sử dụng
32
cho lần lặp tiếp theo là {T / Conf(T) > t} với là một ngưỡng xác định trước nào
đó.
Thường t = 0.8; sim = 0.6 để đánh giá cho hệ thống Snowball.
2.3. Nhận xét
Cả ba loại học không giám sát, có giám sát và bán giám sát đều thể hiện
được những ưu và nhược điểm riêng của mình.
Đối với học có giám sát, chất lượng trích chọn của hệ thống trên những
miền dữ liệu cụ thể là rất tốt, tuy nhiên chi phí đối với việc xây dựng tập dữ liệu
là rất tốn kém, do đó khả năng mở rộng miền ứng dụng là khó khăn.
Đối với phương pháp học không giám sát cho khả năng học với lượng dữ
liệu lớn hơn và tốc độ nhanh tuy nhiên mô hình học lại phức tạp hơn học có
giám sát.
Trong khi đó, học bán giám sát được xem như là một phương pháp tối ưu
để giảm thiểu chi phí cũng như tài nguyên xây dựng. Phương pháp này kết hợp
được ưu điểm, giảm bớt những nhược điểm của phương pháp học có giám sát và
học không giám sát.
33
CHƯƠNG 3. MÔ HÌNH HỌC BÁN GIÁM SÁT TRÍCH CHỌN
THỰC THỂ VÀ ỨNG DỤNG
Trên cơ sở phân tích ưu và nhược điểm của các phương pháp trích chọn
quan hệ, luận văn đã lựa chọn phương pháp học bán giám sát trích chọn thực thể
tên. Trong chương này luận văn đề xuất một mô hình trích chọn thực thể mới
sau đó áp vào trích chọn tên máy ảnh kĩ thuật số. Cụ thể luận văn sẽ đề xuất một
mô hình mới dựa trên thuật toán trích chọn quan hệ DIPRE.
3.1. Mô tả bài toán
Cho một tập tài liệu là các văn bản dạng thô, trích chọn ra các cặp quan hệ
, trong đó một bộ trong bảng chỉ ra
máy ảnh “camera” do hãng “producer” sản xuất. Chẳng hạn, với cặp <DSLR-
A900, Sony> có trong bảng danh sách, nghĩa là loại máy ảnh DSLR-A900 do
hãng Sony tạo ra.
Cụ thể, bài toán được phát biểu như sau:
Đầu vào:
- Tập dữ liệu D: gồm các tệp văn bản được lấy từ các trang web liên quan
đến máy ảnh.
- Tập quan hệ đích R: mỗi phần tử là một quan hệ gồm một cặp <camera,
producer>. Mỗi quan hệ r R xuất hiện một hoặc nhiều lần trong tập tài liệu D.
- Tập quan hệ hạt giống R’: một tập nhỏ của quan hệ đích
Đầu ra: Tập quan hệ đích R gồm tất cả các cặp
xuất hiện trong tập dữ liệu D.
Ví dụ, có câu “Fujifilm release FinePix Z35 digital compact” ta trích ra được
một cặp quan hệ .
3.2. Mô hình giải quyết bài toán
Bài toán dựa trên bài toán của Brin về việc tìm ra cặp quan hệ (tên sách, tên
tác giả) của cuốn sách, đặc biệt là kỹ thuật DIPRE [3]. Cứ sau mỗi vòng lặp lại
sinh ra những cặp thực thể mới và mẫu (patterns) mới. Các vòng lặp tiếp theo sử
dụng kết quả của vòng lặp trước đó để thu được kết quả mới. Quá trình đó cứ
tiếp tục quay vòng cho đến khi đạt được một yêu cầu đưa ra. Cụ thể:
Bước 1: Xuất phát từ các cặp quan hệ hạt giống trong R’, tìm tất
cả các thể hiện là các câu chứa đồng thời tên nhà sản xuất P và tên máy
ảnh C.
Bước 2: Hệ thống sẽ phân tích ngữ cảnh xung quanh các câu tìm được ở
bước 1, trích chọn ra các mẫu.
34
Bước 3: Từ tập các mẫu thu được, hệ thống sẽ đối chiếu với tập dữ liệu
ban đầu để kiểm tra xem chúng có thể trích chọn ra được các hạt giống
mới nào không; nếu cặp chưa có trong tập quan hệ
đích thì thêm cặp hạt giống mới này vào tập quan hệ đích R, coi đây là
quan hệ hạt giống sử dụng cho các vòng lặp tiếp theo.
Bước 4: Quay lại bước 2 để tìm ra những hạt giống và mẫu mới cho tới
khi số lượng tập quan hệ R gần như không thay đổi, hay số lượng các
cặp quan hệ mới phát hiện ra thêm là rất ít.
Bài toán mà luận văn đề cập đến là trích chọn cặp quan hệ tên máy ảnh –
nhà sản xuất, với mỗi loại máy ảnh sẽ có một hãng sản xuất ra nó. Do vậy cách
biểu diễn nó trên tài liệu sẽ có một quy luật nào đó. Nhận thấy rằng, ngữ cảnh ở
giữa cặp thực thể tên máy ảnh số và nhà sản xuất thường ở một dạng nhất định,
quy luật có thể lặp lại nhiều lần ở các tài liệu khác nhau. Ví dụ như: “Sony has
announced the SLT A35, the latest addition to its innovative range of fixed-mirror
DSLRs”, “Panasonic has announced the DMC-G3 Micro Four Thirds mirrorless
interchangeable lens camera”. Cấu trúc “has announced the” có xu hướng xuất hiện
nhiều lần trong các bài báo giới thiệu về các loại máy ảnh. Do đó mẫu này có
khả năng dẫn đến các trích dẫn khác như: “Pentax has announced the Optio
RS1500 compact camera with interchangeable, user designable covers” hay “Samsung
has announced the ST93 compact camera”… Từ các cặp quan hệ mới này, ta có thể
sử dụng để sinh ra các mẫu trích chọn mới.
Và có một đặc điểm thuận lợi nữa để giải quyết bài toán đã đề xuất là tên
các loại máy ảnh thường ở dạng kí tự in hoa, có thể bao gồm cả chữ và số; tập
các hãng sản xuất máy ảnh là hữu hạn, ta có thể liệt kê một cách dễ dàng.
Trong bài toán trích chọn tên máy ảnh số:
Bộ quan hệ: cặp
Một mẫu là bộ - 4: (order, tag1, middle, tag2); trong đó tag1 và tag2 là
thực thể và . Order là thứ tự xuất hiện của tag1và
tag2 trong câu. Middle là ngữ cảnh ở giữa giới hạn bởi tag1và tag2.
Một bộ quan hệ sẽ được trích chọn vào bảng quan
hệ đích nếu có một thể hiện trong văn bản phù hợp với một trong hai
biểu thức:
camera middle producer
hoặc producer middle camera
35
3.3. Mô hình hệ thống
Hình 9: Mô hình hệ thống trích chọn tên máy ảnh số
Xuất phát từ tập tài liệu HTML, sau pha tiền xử lí, ta sẽ thu được tập các
câu chứa tên các hãng sản xuất máy ảnh, việc trích chọn sẽ sử dụng tập các câu
này. Dựa vào 5 quan hệ hạt giống ban đầu, hệ thống sẽ tiến hành tìm kiếm các
câu chứa đồng thời tên hãng sản xuất và tên máy ảnh trong bộ quan hệ hạt
giống, phân tích ngữ cảnh xung quanh các bộ quan hệ, sinh ra các mẫu, dựa vào
các mẫu này, hệ thống sẽ sinh ra được các bộ quan hệ mới, đưa vào bảng quan
hệ đích. Bảng quan hệ đích này lại trở thành bảng quan hệ hạt giống mới, và quá
trình trích chọn lại bắt đầu ở vòng lặp mới. Mỗi vòng lặp luôn có sự đánh giá
các mẫu được sinh ra để việc trích chọn ra các bộ quan hệ mới càng nhiều cáng
tốt và phải bảo đảm sự chính xác cao. Quá trình trích chọn sẽ dừng lại khi không
có một bộ quan hệ mới nào được sinh ra. Chi tiết mô hình hệ thống được mô tả
trong hình 9.
Tuy nhiên, để việc trích chọn hiệu quả, hệ thống sẽ được tích hợp thêm tập
các tri thức của con người, bao gồm 2 bộ từ điển:
- Tập tên các hãng sản xuất máy ảnh: P ={Canon, Casio, Concord, Contax,
Cool-icam, Creative, Fujifilm, GE, Gateway, HP, Kodak, Konica, Kyocera,
Minolta, Mustek, Nikon, Olympus, Panasonic, Pentax, Polaroid, Ricoh,
Samsung, Sanyo, Sealife, Sharp, Sigma, Sony, Toshiba}
- Tập các thuộc tính liên quan đến tên các nhà sản xuất máy ảnh:
{PowerShot, EOS, Exilim, Optio, Lumix, Finepix, FineCam, DC-Cam, CoolPix,
Tài liệu
html
Các câu chứa
tên các hãng sản
xuất máy ảnh
Pha sinh các
bộ quan hệ
mới
Tập các thuộc tính
đi kèm với tên máy
ảnh
Pha tiền xử lí Tìm các sự
kiện liên quan
Pha sinh các
mẫu
Bảng quan hệ
đích
<camera,
Tập hãng sản
xuất máy ảnh
36
Digimax, DSC, Cyber-Shot, DMC, EasyShare, SD, GXR, Alpha, Tough, Stylus,
IXUS, DSLR, Mju}
3.3.1. Pha tiền xử lí
Hình 10: Mô hình của pha tiền xử lí
Trong pha này, nhận đầu vào một tập các trang web trên một miền ứng
dụng quan tâm là máy ảnh kĩ thuật số, sau quá trình xử lý hệ thống thu được một
tập các câu tiềm năng có thể chứa các quan hệ cần trích chọn, chứa tên các hãng
sản xuất máy ảnh đang xem xét. Công việc trích chọn sau này chỉ thực hiện trên
tập các câu tiềm năng thu được sau pha này.
a. Bước 1: Loại bỏ các thẻ html
Trong một trang web, không chỉ chứa nội dung trang web, còn chứa các
thông tin khác như dòng quảng cáo, các đường liên kết đến hình ảnh, đến các
trang web khác… Tất cả các thông tin đó không phải đều có lợi cho hệ thống
trích chọn. Các thông tin này thường được đánh dấu trong các thẻ html. Việc cần
làm là loại bỏ các thẻ hmtl, chỉ giữa lại nội dung của các trang web.
Nội dung trong các trang web thường được đánh dấu trong cặp thẻ và
. Tuy nhiên tiêu đề của các bài báo thường cũng ẩn chứa những thông tin có
giá trị, cụ thể trong tiêu đề của các bài báo nói về máy ảnh, thường trong đó
chứa cặp quan hệ tên máy ảnh và hãng sản xuất, do đó ngoài việc giữ lại nội
dung của trang web, ta cần giữ lại cả tiêu đề của các trang web đó.
Đọc từng file có trong tập các trang web, với mỗi file, từng dòng được đọc,
nếu dòng đó chứa thẻ bắt đầu bằng thẻ và kết thúc là thẻ hoặc nếu
trong dòng văn bản đó chứa thì ghi lại nội dung chứa trong cặp thẻ đó vào
file văn bản sau khi đã loại bỏ các dấu \t, chuyển các kí tự html về dạng chuẩn.
Giải thuật:
Đầu vào: tập các tài liệu HTML
Đầu ra: tập tài liệu ở dạng trơn (plain text)
B1: Loại bỏ thẻ html
B2: Tách câu
B3: Loại bỏ các câu
không liên quan
37
void StripHTML()
for each file_html in corpus_html
for each line in file_html
if line Contain ()
{
RemoveTag(line);
Write(file_text, line);
}
if (line Contain ()) or (line Contain ())
{
RemoveTag(line);
Write(file_text, line);
}
return file_text;
b. Bước 2: Tách câu
Việc trích chọn các loại tên máy ảnh kĩ thuật số giới hạn trong một câu, có
nghĩa nếu tên hãng sản xuất và tên máy ảnh xuất hiện trong cùng một câu thì ta
sẽ đưa chúng vào bảng quan hệ đích, và thông thường mỗi câu ta chỉ trích chọn
một bộ quan hệ mà thôi. Do đó, khi có một tập các tài liệu, công việc đầu tiên hệ
thống cần phải làm là tách các câu trong một đoạn thành các câu đơn lẻ, và việc
trích chọn chỉ thực hiện trên từng câu đơn lẻ.
Thông thường, trong một đoạn văn bản, các câu thường được ngăn cách bởi
một trong các dấu ngắt ‘.’, ‘!’, ‘?’. Nếu chúng ta có một đoạn văn bản đưa vào
một biến xâu input, cách đơn giản để cắt chúng thành các câu là ta sẽ sử dụng
input.Split(‘.’, ’!’, ’?’), cách này rất hiệu quả với các tài liệu văn bản tiếng Việt.
Tuy nhiên với tiếng Anh các dấu ngắt đó có thể đánh dấu kết thúc một câu
nhưng cũng có thể xuất hiện giữa câu ví dụ như dấu “.” trong văn bản thường để
ngăn cách hàng thập phân trong số thực, ngăn cách địa chỉ IP,... trong khi hệ
thống trích chọn đang thực hiện trên tập tài liệu tiếng Anh, do đó việc sử dụng
các dấu ngắt và phương thức Split để tách câu không đem lại hiệu quả thực sự.
Chẳng hạn như câu: “The Coolpix P80 comes with a 10.1 MP sensor. The
camera features an electronic viewfinder to allow accurate composition throughout the
zoom range and also includes a large 2.7 inch monitor with anti-reflection coating and a
wide viewing angle.”
Nếu sử dụng phương thức Split thì kết quả trả về gồm 4 thành phần:
1. The Coolpix P80 comes with a 10
2. 1 MP sensor
38
3. The camera features an electronic viewfinder to allow accurate composition
throughout the zoom range and also includes a large 2
4. 7 inch monitor with anti-reflection coating and a wide viewing angle
trong khi ta cần đầu ra chỉ gồm có 2 câu:
5. The Coolpix P80 comes with a 10.1 MP sensor
6. The camera features an electronic viewfinder to allow accurate composition
throughout the zoom range and also includes a large 2.7 inch monitor with anti-
reflection coating and a wide viewing angle
Để thực hiện việc này, hệ thống sẽ quét trên toàn bộ đoạn văn bản đầu vào,
mỗi khi gặp các kí tự ngắt câu, ta cần quyết định xem liệu chúng có phải đánh
dấu điểm kết thúc của câu hay không. Một đặc điểm dễ nhận ra đó là nếu một
trong các dấu ‘.’, ‘!’, ‘?’ đánh dấu kết thúc câu thì liền sau chúng là một dấu
cách và kí tự tiếp theo phải là một trong các kí tự in hoa.
Ta sẽ sử dụng biểu thức quy tắc để tách các câu.
"(?<=[A-Za-z0-9][\.\!\?])\s+(?=[A-Z])"
Biểu thức này được diễn giải là: bắt bằng một nhóm các kí tự chữ hoa, chữ
thường và số, tiếp theo các là kí tự dấu ngắt ‘.’, ‘!’, ‘?’, kết thúc là một dấu cách;
nhóm thứ 2 bắt đầu là các kí tự viết hoa từ A đến Z.
Biểu thức so khớp tất cả các chuỗi con nào có chứa các dấu ‘.’, ‘!’, ‘?’ và
sau nó là một kí tự chữ hoa, nếu so khớp là đúng, kết quả trả về là một chuỗi con
từ vị trí đầu câu đến trước dấu. ! hoặc ?.
Giải thuật tách câu:
Đầu vào: Đoạn văn bản
Đầu ra: Danh sách các câu đơn trong đoạn văn bản
void SplitSentences(sSourceText)
sTemp = sSource Text ;
if sTemp Start_with {‘A’..’Z’} and sTemp Contain {‘.’, ‘?’, ‘!’} and Next_Char in
{‘A’..’Z’}
splitSentences = sTemp.Split();
for each single_sentence in splitSentences
{
RemoveSpace(single_sentence);
return single_sentence;
}
Để tiết kiệm không gian lưu trữ và thời gian tìm kiếm, hệ thống loại bỏ các
từ dừng - những từ xuất hiện thường xuyên trong văn bản mà sự xuất hiện của
nó không có ý nghĩa gì trong việc tìm kiếm và trích chọn thông tin.
39
Sau khi tách các câu, hệ thống tiến hành tách các từ trong mỗi câu, với mỗi
từ vừa tách, kiểm tra xem từ đó có phải là từ dừng không, nếu đúng loại bỏ từ đó
ra khỏi văn bản.
Mỗi bài báo thường có những định dạng khác nhau, bài này có từ viết hoa
nhưng bài kia thì không, có động từ ở dạng nguyên thể, nhưng cũng động từ đó
ở bài báo khác lại ở thì bị động, chẳng hạn như “announces”, “announed”… Đặc
biệt liên quan đến tên các hãng sản xuất, tên các thuộc tính kèm theo, ví dụ cặp
từ “Panasonics” và “Panasonic”, hoặc “PowerShot” và “powershot” thực chất ý
nghĩa của chúng đều giống nhau, nhưng cách viết khác nhau, điều này sẽ gây
nhiễu cho quá trình tìm kiếm và kết quả trích chọn thường không chính xác.
Hệ thống tiến hành chuyển hóa tất cả các từ trong văn bản thành các kí tự
chữ thường, chuyển tất cả các thể hiện về tên máy ảnh, tên thuộc tính kèm theo
về một dạng thống nhất chung, chuyển tất cả các động từ ở các thời khác nhau
về dạng nguyên thể của nó.
Giải thuật chuyển các từ về dạng gốc của nó: Các động từ thường có các
dạng: nguyên thể, V_ed, V_ing, V_s
- Nếu động từ có dạng V_s: Nếu động từ kết thúc bằng:
+ “sses” “ss”
caresses caress
+ “ies” “i” nếu trước nó có nhiều hơn 1 kí tự, còn lại ies ie
ties tie
skies ski
+ “s”: xóa bỏ “s” nếu kí tự trước nó là một phụ âm rồi kế trước là một
nguyên âm
caress caress
cats cat
+ “ss”, “us”: giữ nguyên
- Nếu động từ có dạng V_ed hoặc V_ing: Nếu động từ kết thúc bằng:
+ “eed” “ee”
agreed agree
+ Xóa “ed” hoặc “ing”, và sau khi xóa từ còn lại:
+) kết thúc bằng: “at”, “bl”, “iz” thì thêm “e”
luxuriaitng luxuriate
+) kết thúc bằng một kí tự kép khác ‘l’, ‘s’, ;z’ thì xóa một kí tự cuối
hopping hop
+) là âm tiết ngắn thì thêm “e”
hoped hope
40
Giải thuật chuẩn hóa các từ về dạng gốc:
Đầu vào: Một từ
Đầu ra: Từ gốc của nó
void Stemmer(verb)
1. k = Length(verb);
if (verb[k] = ‘s’)
{
if (verb End_With “sses” ) k = k - 2;
else if (verb End_With “ies” ) and (Length(verb) > 4) k = k - 2;
else k = k - 1;
else if (verb[k-1] != ‘s’) k = k - 1;
}
2. if (verb End_With “eed”) k = k - 1;
3. if (verd End_With “ed”) or (verb End_With “ing”)
{
Remove(verb, “ed”, “ing”);
k = Length(verb);
if (verb End_With {at”, “bl”, “iz”})
Add(verb, “e”);
else if (verb End_With double(k))
{
k = k – 1;
ch = verb[k];
if (ch in {“l”, “s”, “z”}) k = k + 1;
}
else if Is_short_word(verb)
add(verb, “e”);
}
3. return verb;
Tuy nhiên dựa vào đặc điểm của một tên máy ảnh, ví dụ có dạng DMC-
FX500, thường có dạng một chuỗi kí tự gồm các kí tự chữ cái được viết hoa,
kèm theo là các kí tự số. Do đó ta dễ dàng kiểm tra được một xâu có phải là một
tên máy ảnh xác định hay không, loại bỏ những trường hợp không thỏa mãn để
kết quả trích chọn sẽ chính xác hơn. Nếu ta chuyển toàn bộ các kí tự về dạng
chữ thường thì việc kiểm tra một chuỗi có phải là tên máy ảnh hay không sẽ khó
khăn hơn, nên việc chuẩn hóa các từ về dạng chữ thường không áp dụng với tên
của hãng máy ảnh, tên máy ảnh và tên các thuộc tính kèm theo máy ảnh.
41
Giải thuật loại bỏ từ dừng, chuẩn hóa các từ trong câu:
Đầu vào: Một câu văn bản
Đầu ra: Một câu mới loại bỏ các từ dừng, các động từ ở dạng gốc.
void Token(sentence)
1. filter = ; tokens =
tokens = sentence.Split();
for each token in tokens
{
if (not Is_Stop_Word(token)) filter = filter {token};
}
2. s = “”;
for each token in filter
{
for each attribute in set_attributes
{
if (Lower(token) = Lower(attribute))
token = attribute;
}
for each producer in set_producers
{
if (Lower(token) contain Lower(producer))
token = producer;
}
if (not Check_Camera(token) and not Check_Producer(token) and
not Check_Attribute(token))
Stemmer(Lower(token);
s = s + token;
}
3. return s;
c. B3: Loại bỏ các câu không liên quan
Công việc tiếp theo là tìm các câu tiềm năng, những câu có khả năng chứa
các cặp quan hệ cần trích chọn. Vì số lượng tập tài liệu là khá lớn, số lượng câu
sau khi tách cũng rất nhiều, trong các câu có những câu không giúp ích gì trong
quá trình trích chọn. Việc trích chọn ra được bộ quan hệ đích chỉ thực hiện khi
tên hãng sản xuất và tên máy ảnh đứng gần nhau trong cùng một câu, do đó ta
chỉ quan tâm đến những câu nào chứa một trong các tên hãng sản xuất máy ảnh,
42
các câu còn lại ta sẽ loại bỏ khỏi CSDL, tránh mất thời gian trong việc tìm kiếm
và trích chọn.
Hệ thống tiến hành quét trên tất cả các câu, nếu chúng chứa một trong các
tên các hãng máy ảnh có trong tập P, giữ lại các câu đó, loại bỏ các câu không
thỏa mãn.
Chẳng hạn ta có đoạn bài báo: “Samsung has released the TL110 and TL105
ultra compact cameras. The 14.2 megapixel TL110 (ST70 in Europe) and 12 megapixel
TL105 (ST60) offer 2.7 inch LCDs, wide angle zoom lenses starting at 27mm equivalent
and offer 720p HD video recording using H.264 compression. Both include scene modes
such as Fisheye, Lomo and a DeFog Clear/Fog Lifting mode that claims to cut through
haze to take clearer images.“, sau pha tiền xử lí, kết quả thu được là câu “Samsung
release TL110 TL105 ultra compact cameras”.
Giải thuật:
Đầu vào: Tập các tài liệu dạng text
Đầu ra: Các câu chứa tên các hãng sản xuất máy ảnh
void ExploreDirectory( )
1. set_sentences = ;
paragraph = “”;
2. for each file_text in corpus_text
{
read_to_end(file_text, paragraph);
for each single_sentence in SplitSentences(paragraph)
{
s = token(single_sentence);
for each pro in producers
if (s Contain pro) set_sentences = set_sentences {s};
}
}
return set_sentences;
43
3.3.2. Pha sinh các mẫu
Hình 11: Mô hình thuật toán sinh mẫu từ một bộ quan hệ
a. Bước1: Sinh các mẫu
Dựa vào các quan hệ trong tập hạt giống ban đầu, tìm tất cả các thể hiện
chứa các quan hệ hạt giống đó, trích chọn ra các mẫu. Giả sử với một cặp quan
hệ hạt giống nào đó, ta lấy toàn bộ ngữ cảnh giữa P và C đưa vào vectơ
mc. Tuy nhiên ta giới hạn chỉ giữ lại những vectơ mc có độ dài không quá 5 từ.
Mẫu mc nếu P đứng trước C trong câu, hoặc
mc nếu P đứng sau C trong câu, được sinh ra.
Bộ quan hệ Thể hiện
Fujifilm release finepix Z35 digital compact
Casio release EX-Z1000 firmware update
release
b. Bước 2: Làm giàu tập mẫu
Tuy nhiên, để việc sinh ra các bộ quan hệ mới có hiệu quả, tập các mẫu
càng nhiều càng tốt. Trong bước này luận văn đề xuất sử dụng WordNet [1, 6].
WordNet là dự án từ điển đơn ngữ (tiếng Anh) thiên về ngữ nghĩa, do
Princeton University phát triển. WordNet đã tạo ra một tập hợp từ vựng khá lớn,
theo đó các từ được sắp xếp trong dãy của những tập hợp đồng nghĩa (synonym
set viết tắt là synset), giúp cho việc xác định nghĩa của từ và để phân biệt được
nghĩa đang xét với các nghĩa khác. Nguyên lí tổ chức chung của WordNet là
mạng lưới quan hệ ngữ nghĩa. [Phụ lục]
WordNet phân biệt giữa danh từ, động từ, tính từ, trạng từ bởi chúng theo
các quy tắc ngữ pháp khác nhau. Mọi synset (tập các từ đồng nghĩa) đều chứa
một nhóm các từ đồng nghĩa; ý nghĩa khác nhau của một từ được đặt vào các
Tập các mẫu
WordNet
B2: Làm giàu tập mẫu B1: Sinh các mẫu
Google
B3: Thẩm định các mẫu
44
synset khác nhau. Nghĩa của một từ được trình bày bởi một danh sách các dạng
thức của từ đó có thể được sử dụng để biểu thị nó.
Chẳng hạn, thông tin tập đồng nghĩa của từ “introduce” được miêu tả trong
WordNet như sau:
The verb introduce has 10 senses (first 8 from tagged texts)
1. (22) introduce, present, acquaint -- (cause to come to know personally; "permit
me to acquaint you with my son"; "introduce the new neighbors to the community")
2. (11) introduce, innovate -- (bring something new to an environment; "A new word
processor was introduced")
3. (9) insert, enclose, inclose, stick in, put in, introduce -- (introduce; "Insert your
ticket here")
4. (7) bring in, introduce -- (bring in a new person or object into a familiar
environment; "He brought in a new judge"; "The new secretary introduced a nasty
rumor")
5. (1) introduce -- (bring in or establish in a new place or environment; "introduce a
rule"; "introduce exotic fruits")
6. (1) insert, infix, enter, introduce -- (put or introduce into something; "insert a
picture into the text")
7. (1) introduce, bring out -- (bring before the public for the first time, as of an actor,
song, etc.)
8. (1) introduce -- (put before (a body); "introduce legislation")
9. precede, preface, premise, introduce -- (furnish with a preface or introduction;
"She always precedes her lectures with a joke"; "He prefaced his lecture with a critical
remark about the institution")
10. inaugurate, usher in, introduce -- (be a precursor of; "The fall of the Berlin Wall
ushered in the post-Cold War period")
Trong đó mỗi một mục là một nghĩa (sense) của từ “introduce”. Như vậy
chúng ta có thể khai thác để sử dụng WordNet vào làm giàu tập mẫu.
Giả sử ta có mẫu announce , sử dụng Wordnet, tìm tất
cả các từ đồng nghĩa với “announce”, giả sử là {present, declare, post, introduce,
communicate, launch, inform...}. Khi đó ta có các mẫu mới:
present
declare
post
introduce
communicate
launch …
Ở đây, hệ thống chỉ làm giàu các mẫu trong trường hợp mẫu này có độ dài
bằng 1, nghĩa là mẫu chỉ là một động từ, còn các trường hợp còn lại, ta bỏ qua
giai đoạn làm giàu.
45
Giả sử ta đưa vào trong WordNet một từ text nào đó, ta cần xác định tập từ
đồng nghĩa của text. Trước tiên, WordNet kiểm tra xem từ đó có trong cơ sở dữ
liệu WordNet không, nếu có sẽ tiến hành xác định từ loại của text.
WnLexicon.WordInfo wordinfo = WnLexicon.Lexicon.FindWordInfo(text, true);
Một mảng xâu chứa các từ đồng nghĩa của text sẽ được trả về dựa vào
thông tin về loại từ đã xác định.
string[] synonyms = WnLexicon.Lexicon.FindSynonyms(text,
wordinfo.partOfSpeech, true);
Việc tìm các từ đồng nghĩa có thể được thực hiện thông qua một số giao
diện lập trình được WordNet cung cấp như trong bảng 6.
Tên hàm Tham số Thông tin trả về
findtheinfo
findtheinfo_ds
word
syntantic category
search type
sense number
Các kết quả tìm kiếm đã được định
dạng trong bộ đệm hoặc cấu trúc dữ
liệu.
is_defined word
pos
Tìm từ word có trong từ điển với kiểu
từ loại pos.
morphstr
morphword
word
pos
Dạng thức cơ bản của từ word hoặc
null nếu không tìm thấy bất kì sự phù
hợp nào trong CSDL.
bin_search word
streamreader
Tìm kiếm từ trong file index, trả về
chỉ mục của bản ghi chứa từ đó.
search() word
morph
pos
searchtype
sn
Thực hiện việc tìm kiếm từ word theo
loại từ pos, kiểu tìm kiếm searchtype,
sử dụng MorphStr nếu morph nhận
giá trị true. Trả về tất cả các ý nghĩa
của từ nếu sn có giá trị bằng 0.
Bảng 6: Một số lớp thường dùng trong WordNet
Tuy nhiên việc xây dựng tập đồng nghĩa cho động từ gặp nhiều khó khăn
do khó xác định từ đồng nghĩa. Ta thấy trong tiếng Anh, có một số động từ đồng
nghĩa như begin – commence, end – terminate, buy – purchase, hide – conceal…
nhưng thực chất việc dùng lẫn lộn các động từ đồng nghĩa này không phải lúc
nào cũng đúng.
Do đó việc thay thế một động từ nào đó bằng từ đồng nghĩa của nó không
phải luôn đúng trong mọi ngữ cảnh trong văn bản. Ở đây hệ thống cần phải thẩm
định xem tập mẫu vừa làm giàu liệu có khả năng sinh ra bộ quan hệ nào hay
không.
46
c. Bước 3: Thẩm định các mẫu
Các mẫu tiềm năng sẽ góp phần sinh ra các quan hệ đúng, chính xác. Tuy
nhiên, sau thao tác làm giàu tập mẫu, sẽ có những mẫu có xu hướng tạo ra các
quan hệ không chính xác, gây nhiễu cho quá trình trích chọn. Do đó, với mỗi
mẫu vừa sinh ra, ta cần đánh giá độ tin cậy của mẫu đó. Các mẫu có xu hướng
được sử dụng nhiều sẽ tiềm ẩn khả năng tạo ra nhiều quan hệ tiềm năng. Vì tập
dữ liệu được lấy từ các trang web, nên ta sẽ sử dụng công cụ tìm kiếm Google
để thẩm định các mẫu.
Ví dụ với câu Pentax announce Optio E90 budget camera … tương ứng với
mẫu announce , ta tra cứu cụm Pentax * Optio E90, nếu cụm từ
“Pentax announce Optio E90” xuất hiện ít nhất 1 lần trong 10 kết quả tìm kiếm đầu
tiên mẫu announce được đánh giá là có tiềm năng đưa
mẫu đó vào tập các mẫu để sinh ra các cặp mới.
Để lấy được các kết quả tìm kiếm khi nhập vào một khóa trong Google, hệ
thống sử dụng Google Search API for.NET 0.4 alpha dựa trên Google Ajax Search
API.[19]
The Google Web search API cho phép chúng ta đặt kết quả tìm kiếm
Google vào các trang web của mình, ta có nhúng một hộp tìm kiếm động đơn
giản và hiển thị kết quả tìm kiếm bao gồm các đoạn trích dẫn và các url vào
trong các trang web hoặc sử dụng các kết quả một cách sáng tạo theo nhu cầu
mục đích của từng cá nhân.
Hỗ trợ 8 dịch vụ tìm kiếm là:
1. Tìm kiếm web 3. Tìm kiếm video
2. Tìm kiếm tin tức 5. Tìm kiếm địa phương
4. Tìm kiếm blog 6. Các bản đồ Google
Google AJAX Search API được tạo bởi nhiều lớp đối tượng:
- GSearchControl - Lớp này cung cấp giao diện người sử dụng và phối hợp
với một số đối tượng tìm kiếm, trong đó mỗi đối tượng tìm kiếm được thiết kế
để thực hiện các công việc tìm kiếm và trả về một lớp cụ thể của kết quả (Web
Search, Local Search vv.)
- GSearch - Lớp cơ sở này là lớp mà từ đó tất cả đối tượng tìm kiếm kế
thừa. Nó định nghĩa các giao diện mà tất cả các dịch vụ tìm kiếm phải thực hiện.
- GResult - Lớp cơ sở đóng gói các kết quả tìm kiếm được tạo ra bởi các
đối tượng tìm kiếm.
- GsearchOptions - Lớp này thiết lập hành vi của các đối tượng tìm kiếm
khi thêm vào một điều khiển tìm kiếm.
47
Hệ thống sử dụng dịch vụ tìm kiếm web, giới hạn 10 kết quả tìm kiếm đầu
tiên, việc tìm kiếm trên các trang web tiếng Anh. Kết quả trả về gồm CacheUrl
Content; Title; Url; VisibleUrl., tuy nhiên ta chỉ quan tâm đến các kết quả trích
dẫn, do đó hệ thống chỉ giữ lại phần Content trong kết quả tìm kiếm để thẩm
định các mẫu.
Giải thuật sinh ra các mẫu từ bộ quan hệ nào đó trong tập các
bộ quan hệ hạt giống.
Đầu vào: các bộ quan hệ hạt giống , tập các câu trong CSDL
Đầu ra: tập các mẫu sinh bởi
void Generate_Pattern_One_Tuple(pro, cam)
1. list_pattern = ;
2. for each sentence in set_sentences
if (sentence Contain )
pattern = Cut_Middle(s, pro, cam);
3. synonym = generate_synonym(pattern);
for each syn in synonym
string = pro + " " + syn + " " + cam;
for each result in Search_google(pro + " * " + cam)
if (result Contain string)
list_pattern = list_pattern {syn};
4. return list_pattern;
Tuy nhiên không phải bất kì mẫu nào được sinh ra hệ thống đều đưa vào
tập mẫu của mình, chỉ có những mẫu có tiềm năng tạo ra nhiều bộ quan hệ thì
mới được giữ lại.
Với mỗi mẫu được sinh ra, tạm thời ta lưu vào một danh sách, đánh dấu số
lượng các bộ quan hệ hỗ trợ để sinh ra mẫu đó. Kết thúc, ta sẽ kiểm tra, nếu số
lượng bộ quan hệ hỗ trợ vượt qua ngưỡng sup nào đó, ta sẽ thêm mẫu đó vào tập
mẫu trích chọn. Trong thực nghiệm sup có giá trị bằng 2.
Do đó hệ thống loại bỏ tất cả các mẫu được hỗ trợ bởi ít hơn 2 bộ quan hệ
hạt giống.
Thuật toán sinh ra tất cả các mẫu dựa vào các bộ quan hệ hạt giống, chỉ giữ
lại các mẫu được hỗ trợ bởi ít nhất sup bộ quan hệ.
Đầu vào: Tập các bộ quan hệ hạt giống
Đầu ra: Tập các mẫu tiền năng
set_patterns = ;
Void Generate_Pattern()
1. for each in set_tuples
48
list_pattern = generate_pattern_one_tuple(cam, pro);
2. for each pattern in list_pattern
If (Count_Appear(pattern, list_pattern) >= sup ) and (not set_patterns
Contain pattern)
set_patterns = set_patterns {pattern};
3. return set_pattern;
3.3.3. Pha sinh các bộ quan hệ mới
Quét tất cả các câu có chứa tên các hãng sản xuất máy ảnh, nếu câu có chứa
mẫu pattern, hệ thống phân tích ngữ cảnh phía trước before, ngữ cảnh phía sau
after của pattern trong câu:
Nếu before phù hợp với tên nhà sản xuất và after phù hợp với tên máy
ảnh (tương ứng với thể hiện middle ) thì ta thêm
cặp vào trong bảng kết quả.
Hoặc nếu before phù hợp với tên máy ảnh và after phù hợp với tên nhà
sản xuất (tương ứng với thể hiện middle ) thì ta
thêm cặp vào bảng kết quả đích.
Thuật toán được trình bày như sau:
Đầu vào: Một mẫu nào đó trong tập các mẫu đã được sinh ra ở pha trước
Đầu ra: Các bộ quan hệ mới
void Generate_Tuple(pattern)
for each s in set_sentences
if (s Contain pattern)
before copy_before(s, pattern);
after copy_after(s, pattern);
1. if Check_Camera(after) and Check_Producer(before) and after
set_tuples)
set_tuples = set_tuples {};
2. if Check_Camera(before) and Check_Producer(after) and before
set_tuples)
set_tuples = set_tuples {};
3. return set_tuples;
Chẳng hạn với câu “Fujifilm announce introduction Finepix S1000fd” và mẫu
“announce introduction” thì quan hệ ta có thể trích chọn được là <Finepix S1000fd,
Fujifilm>. Hoặc với câu “Panasonic release DMC-FS25 digtal camera” và mẫu
“release” thì hệ thống phải trích chọn ra được bộ quan hệ <DMC-FS25,
Panasonic>.
49
Trong tập văn bản, có những thể hiện tên máy ảnh đi liền với tên hãng sản
xuất, ví dụ ta có câu “Canons 40D update version 1” thì ta trích chọn được bộ quan
hệ . Những thể hiện dạng này, ngữ cảnh giữa tên máy ảnh và tên
hãng sản xuất là rỗng, do đó ta sẽ có thủ tục để trích chọn ra các bộ quan hệ có
thể hiện hoặc thể hiện .
Để thực hiện việc này, hệ thống sẽ kiểm tra tất cả các câu thu được sau
pha tiền xử lí, với mỗi tên hãng sản xuất producer máy ảnh:
Lấy ngữ cảnh bên phải after của nó (tương ứng với thể hiện
)
Hoặc lấy ngữ cảnh bên trái before của nó (tương ứng với thể hiện
)
Sau đó kiểm tra liệu after hoặc before có khả năng là tên một loại máy
ảnh hay không, nếu đúng, đưa cặp hoặc
vào tập quan hệ đích.
Giải thuật:
Đầu vào: Tập các câu tiền năng chứa tên các hãng máy ảnh
Đầu ra: Các bộ quan hệ sinh bởi mẫu
void Generate_Empty_Tuple();
for each s in set_sentences
for each producer in set_producers
after copy_after(s, producer);
1. If (Check_Camera(after) and after set_tuples)
set_tuples = set_tuples {};
2. else If (Check_Camera(before) and before set_tuples)
set_tuples = set_tuples {};
3. return set_tuples;
50
CHƯƠNG 4. THỰC NGHIỆM
4.1. Môi trường thực nghiệm
Thực nghiệm được tiến hành trên máy PC có cấu hình phần cứng như bảng
7. Công cụ phát triển là ngôn ngữ C#, cụ thể được liệt kê trong bảng . Ngoài ra
còn sử dụng một số thư viện chẳng hạn như thư viện truy cập WordNet bằng
giao diện C#, công cụ truy vấn Google như liệt kê trong bảng 9.
Thành phần Chỉ số
Bộ xử lí Intel(T) Core™2 Dual T5870 @ 2.00GHz
Bộ nhớ trong 2GB
Ổ cứng 80GB
Hệ điều hành Microsoft Windows XP2
Bảng 7: Cấu hình của máy PC dùng trong thực nghiệm
STT Tên phần mềm Tác giả Nguồn
1 Visual studio
2008
Microsoft Corporation
2 WordNet 2.1 Princeton University
Bảng 8: Các công cụ sử dụng trong thực nghiệm
STT Tên thư viện Tác giả Nguồn
1 WordNet.Net Troy Simpson,
Malcolm Crowe
2 Google Search
API for.NET
0.4 alpha
for-dotnet/ #Google_Search_API_for
_.NET_0.4_alpha
Bảng 9: Các thư viện sử dụng trong thực nghiệm
4.2. Dữ liệu thực nghiệm
Dữ liệu dùng trong thực nghiệm được lấy từ hai địa chỉ, nơi chứa nhiều
thông tin liên quan đến máy ảnh kĩ thuật số, đó là:
1.
2.
Dữ liệu thực nghiệm được chia thành 2 tập:
Tập 1200 (tập kiểm thử) bao gồm 1263 trang web, chuyển các trang
này thành các tài liệu, sau đó tiến hành gán nhãn bằng tay. Tập dữ
liệu này được dùng để đánh giá chất lượng giải thuật.
Tập 5000 bao gồm 4934 trang web, cũng tiến hành chuyển các
trang này thành các tài liệu dạng thô. Tập này dùng để sinh ra tập
51
các mẫu trích chọn, sau đó áp dụng tập mẫu này vào tập 1200 để
sinh ra các bộ quan hệ trong tập 1200.
Thông tin chi tiết về hai tập dữ liệu này được liệt kê ở trong bảng 10.
Dữ liệu Nguồn Số lượng
587
Tập 1200
676
2016
Tập 5000
2918
Bảng 10: Dữ liệu kiểm thử và dữ liệu huấn luyện
4.3. Đánh giá hệ thống
Hệ thống được đánh giá chất lượng qua các độ đo: Precision (độ chính
xác) và Recall (độ hồi tưởng) và F1 được tính theo công thức dưới đây:
oducedPr_Answers
Answers_CorrectPrecision
Correct_Possible_Total
Answers_CorrectcallRe
callReecisionPr
callRe*ecisionPr*F
2
1
Để thẩm định các cặp quan hệ được tạo ra, luận văn tạo ra một file kết
quả, chứa tất cả các cặp quan hệ có thể được tạo ra trong
tập dữ liệu kiểm thử - tập 1200, từ đó so sánh với các cặp quan hệ do hệ thống
trích chọn, tính toán được giá trị Precision, Recall và F1 qua các vòng lặp.
4.4. Thực nghiệm
FinePix A345 Fujifilm
NX10 Samsung
PowerShot S3IS Canon
PowerShot SD780 Canon
DSC-T30 Sony
Bảng 11: Tập các quan hệ hạt giống ban đầu
Thực nghiệm 1
Thực nghiệm thứ nhất chúng tôi tiến hành trên tập dữ liệu kiểm thử (Tập
1200). Bắt đầu với 5 quan hệ ở bảng 11, hệ thống tạo ra được 10 mẫu. Trong 10
mẫu này chúng tôi chỉ giữ lại các mẫu được hỗ trợ bởi ít nhất 2 cặp quan hệ hạt
giống, và dùng các mẫu này để trích chọn các cặp quan hệ mới. Các mẫu rút
trích được trong lần lặp đầu tiên là: post firmware update
release firmware update
52
Tại vòng lặp đầu tiên sử dụng các mẫu vừa được tạo cùng với mẫu
và , hệ thống sinh ra được 457 cặp quan
hệ mới, trong đó có 415 cặp quan hệ chính xác trên tổng số 746 cặp quan hệ có
thể lấy ra được từ tập CSDL ban đầu. Một số cặp quan hệ được trích chọn ở
vòng lặp đầu tiên được liệt kê trong bảng 12.
Tên hãng sản xuất Tên máy ảnh
Nikon CoolPix S230
Fujifilm FinePix JZ500
Pentax Optio RS1000
Nikon CoolPix L110
Olympus FE-5010
Panasonic Lumix ZS1
Olympus C8080
Olympus SP-800UZ
Kodak DC215
Canon EOS 500D
Canon 430EX
Sony TRV30
Kodak DVC325
Nikon CoolPix S8100
Canon S600
Kodak EasyShare CX6230
Nikon CoolPix S630
Nikon CoolPix 900
Bảng 12: Một số cặp ở lần lặp đầu tiên
Từ vòng lặp thứ 4, số lượng cặp quan hệ được tạo ra không thay đổi. Giá
trị của Precision và Recall, F1 qua mỗi vòng lặp được chỉ ra ở bảng 13.
Số lần lặp Precision Recall F1
1 90.81 55.93 69.22
2 87.32 81.67 84.40
3 85.87 86.79 86.33
4 85.36 87.20 86.27
Bảng 13: Giá trị Precision, Recall và F1 sau các vòng lặp
Hướng tiếp cận của hệ thống xuất phát từ các mẫu có độ hồi tưởng thấp,
độ chính xác cao, kết hợp các tri thức để lọc kết quả. Ở vòng lặp đầu tiên, tuy
rằng số lượng các cặp quan hệ trích chọn được còn ít (457 trên tổng số 746 bộ
quan hệ), nhưng độ chính xác của các bộ quan hệ đó lại khá cao (khoảng 90%),
53
do đó kết quả nhận được có giá trị độ hồi tưởng thấp. Tại các vòng lặp tiếp theo,
số lượng các bộ quan hệ trích chọn được tăng dần, tuy nhiên độ chính xác lại có
xu hướng giảm dần. Từ vòng lặp số 4, số lượng các bộ quan hệ mà hệ thống
trích ra được không thay đổi, lúc này giá trị độ hồi tưởng đã vượt quá 87%, còn
giá trị độ chính xác dao động quanh khoảng 85%. Biểu đồ mô tả độ chính xác và
độ hồi tưởng được trình bày ở hình 12.
50
55
60
65
70
75
80
85
90
95
1 2 3 4
Số lần lặp
%
Precision
Recall
F1
Hình 12: Giá trị của Precision, Recall, F1 thực nghiệm trên tập 1200
Hệ thống trích chọn còn sử dụng một tham số là sup để đánh giá độ chất
lượng của các mẫu được sinh ra, hệ thống chỉ sử dụng các mẫu được sinh bởi từ
sup bộ quan hệ hạt giống trở lên. Bảng 14 phía dưới thể hiện số lượng các bộ
quan hệ mà hệ thống trích chọn được, số lượng các bộ quan hệ chính xác tùy
thuộc vào các giá trị khác nhau của sup.
Từ kết quả chúng tôi nhận thấy rằng, nếu giá trị sup càng lớn, số lượng
các bộ quan hệ trích chọn được lại giảm. Là do giá trị sup càng tăng, số lượng
các mẫu trích chọn được và được sử dụng cho vòng lặp tiếp theo càng ít, chỉ
những mẫu được sinh bởi càng nhiều bộ quan hệ mới được dùng để trích chọn
các bộ quan hệ mới, những mẫu ít chất lượng hơn sẽ bị loại bỏ, do đó những bộ
quan hệ được sinh bởi những mẫu kém chất lượng hơn sẽ không được hệ thống
54
trích chọn và đưa vào bảng quan hệ đích. Do đó, độ chính xác có xu hướng tăng,
còn độ hồi tưởng có xu hướng giảm dần.
Số lượng các bộ quan hệ
trích chọn được
Giá trị các độ đo
sup
Tổng số Chính xác Precision Recall F1
1 802 662 82.54 89.22 85.75
2 758 647 85.36 87.20 86.27
3 703 612 87.06 82.48 84.71
4 639 569 89.05 76.68 82.40
5 637 567 89.01 76.42 82.24
Bảng 14: Giá trị Precision, Recall, F1 của hệ thống theo giá trị sup
Biểu đồ thể hiện sự tương quan giữa các giá trị Precision, Recall, F1 phụ
thuộc vào giá trị của sup được trình bày ở hình 13.
70
75
80
85
90
95
100
1 2 3 4 5 tsup
%
Precision
Recall
F1
Hình 13: Giá trị Precision, Recall, F1 của hệ thống theo giá trị sup
Thực nghiệm 2
Thực nghiệm tiếp theo chúng tôi cho hệ thống chạy thử trên Tập 5000 để
thu các tập mẫu được sinh ra. Sau đó chúng tôi dùng tập mẫu này để trích chọn
các cặp quan hệ trong Tập 1200.
55
Kết quả cho thấy, khi thực nghiệm với Tập 5000, số lượng mẫu thu được
khá lớn là 435 mẫu (so với 100 mẫu khi thực nghiệm trên Tập 1200), tuy nhiên
số lượng các bộ quan hệ sinh ra lại tăng không đáng kể.
Kết quả cụ thể của thực nghiệm được liệt kê ở bảng 15 và 16.
Số lần lặp Precision Recall F1
1 83.18 88.01 85.53
2 82.98 90.03 86.36
3 81.86 90.03 85.75
4 81.86 90.03 85.75
Bảng 15: Giá trị của Precision, Recall, F1 thực nghiệm trên tập 5000
Số lượng các bộ quan
hệ trích chọn được
Giá trị các độ đo
Thực nghiệm
Tổng số Chính xác Precision Recall F1
Thực nghiệm 1 758 647 85.36 87.20 86.27
Thực nghiệm 2 816 668 81.86 90.03 85.75
Bảng 16: Kết quả so sánh giữa thực nghiệm 1 và 2
So sánh kết quả của thực nghiệm này với thực nghiệm thứ nhất chúng tôi
thấy chất lượng không chênh lệch nhau là mấy. Việc sử dụng huấn luyện để
trích chọn ra tập các mẫu, với số lượng các tài liệu lớn hơn, các mẫu trích chọn
được sẽ nhiều hơn và có tính chuyên biệt hơn, do đó kết quả sẽ tốt hơn với việc
không sử dụng tập 1200 (thu được nhiều bộ quan hệ chính xác hơn). Tuy nhiên
số lượng các bộ quan hệ trích chọn ra được tăng không đáng kể, là do dữ liệu
trên tập 1200 và 5000 đều lấy từ 2 địa chỉ website, các bài viết trên mỗi địa chỉ
thường có định dạng giống nhau nhau, những mẫu chất lượng sinh ra bởi tập
5000 cũng được sinh ra ở tập 1200, những mẫu còn lại trong tập 5000 có tính
khả dụng kém hơn nên khi áp dụng các mẫu này cho tập 1200, số lượng bộ quan
hệ sinh ra không đáng kể. Thậm chí, số lượng mẫu tăng, bộ quan hệ sinh ra có
tăng, kèm theo đó là độ chính xác của các bộ sinh ra thấp, làm cho giá trị
Precision cuối cùng thấp hơn, giá trị F1 vì thế thấp hơn so với thực nghiệm 1.
Để đánh giá tính hiệu quả của giải mà luận văn đã đề xuất, chúng tôi cũng
cài đặt giải thuật DIPRE.
Thực nghiệm 3
Chúng tôi cho giải thuật DIPRE thực hiện trên tập 1200. Ở vòng lặp đầu
tiên, số lượng bộ quan hệ trích chọn được là vô cùng nhỏ - 14 bộ quan hệ, trong
đó chỉ có 11 bộ quan hệ là chính xác. Ở các vòng lặp tiếp theo, số lượng bộ quan
hệ trích chọn được có tăng, nhưng với số lượng thấp. Cụ thể, kết quả thực
nghiệm được chỉ ra ở bảng 17.
56
Số lần lặp Precision Recall F1
1 71.43 1.28 2.51
2 50.00 4.85 8.84
3 47.62 8.93 15.04
4 42.54 14.54 21.67
7 41.16 18.11 25.15
Bảng 17: Kết quả trích chọn khi áp dụng giải thuật DIPRE trên Tập 1200
Thực nghiệm 4
Chúng tôi cũng tiến hành thực nghiệm đối với giải thuật DIPRE thực hiện
trên tập 5000, thu thập các mẫu, sau đó sử dụng tập mẫu này để trích chọn các
bộ quan hệ trên tập 1200. Kết quả khả quan hơn thực nghiệm 3, kết quả cụ thể
được trình bày trong bảng 18.
Số lần lặp Precision Recall F-score
1 36.10 34.44 35.25
2 33.67 38.52 35.93
3 31.88 39.16 35.15
4 31.15 39.41 34.80
Bảng 18: Kết quả trích chọn khi áp dụng giải thuật DIPRE trên Tập 5000
Kết quả thực nghiệm với DIPRE thống kê trên số lượng các bộ quan hệ
trích chọn được trình bày trong bảng 19.
Số lượng các bộ quan hệ trích chọn được
Thực nghiệm
Tổng số Chính xác
Thực nghiệm 3 345 142
Thực nghiệm 4 992 309
Bảng 19: Bảng thống kê kết quả trích chọn khi áp dụng giải thuật DIPRE cho
bài toán trích chọn tên máy ảnh số
Dựa vào kết quả thực nghiệm 3 và 4 đối với giải thuật DIPRE, nhận thấy
giải thuật do luận văn đề xuất hiệu quả hơn rất nhiều so với giải thuật DIPRE áp
dụng cho bài toán trích chọn tên máy ảnh số.
Biểu đồ so sánh kết quả trích chọn của giải thuật DIPRE và giải thuật do
luận văn đề xuất được chỉ ra ở hình 14.
57
0
10
20
30
40
50
60
70
80
90
100
1 2 3 4
Số lần lặp
%
Luận văn
DIPRE
(a)
0
10
20
30
40
50
60
70
80
90
100
1 2 3 4 Số lần lặp
%
Luận văn
DIPRE
(b)
Hình 14: Kết quả thực nghiệm 3 (a) và thực nghiệm 4 (b) đối với giá trị F1
Thực nghiệm 5
Chúng tôi tiến hành thực nghiệm trích chọn các cặp
trên Tập 1200; giá trị sup = 2; độ dài lớn nhất của mỗi mẫu = 10.
58
Kết quả thực nghiệm được thống kê trong bảng 20.
Tổng số cặp hệ thống trích chọn được Tổng số cặp
trong CSDL Chính xác Không chính xác Tổng
746 648 111 758
Bảng 20: Kết quả thực nghiệm 5 với số lượng các cặp tìm được
Trong thực nghiệm này, chúng tôi tiến hành thống kê những mẫu có chất
lượng nhất, có khả năng trích chọn ra được nhiều tên máy ảnh nhất. Danh sách
các mẫu này cùng với một số bộ quan hệ được sinh bởi chúng được trình bày
trong bảng 21, trong đó mẫu chất lượng nhất là mẫu .
Mẫu Ví dụ
Nikon D3
Samsung NX10
update firmware Canon EOS 7D
Ricoh CX3
unveil Toshiba PDR-M3
Panasonic Lumix DMC-ZS7
introduce Canon PowerShot SX210
Fujifilm FinePix S3
launch Panasonic Lumix DMC-TS2
Fujifilm FinePix XP10
release Canon PowerShot S1
Panasonic Lumix DMC-FX66
announce firmware update
Canon EOS 5D
Panasonic DMC-G1
release firmware update
Panasonic DMC-LX3
Nikon CoolPix P90
post firmware update Olympus E-P1
Pentax K-7
announce price Panasonic DMC-GH1
Nikon D100
Bảng 21: Kết quả thực nghiệm 5 - Mộ
Các file đính kèm theo tài liệu này:
- LUẬN VĂN- PHƯƠNG PHÁP HỌC BÁN GIÁM SÁT CHO BÀI TOÁN TRÍCH CHỌN THÔNG TIN VÀ ỨNG DỤNG TRÍCH CHỌN THỰC THỂ TÊN MÁY ẢNH SỐ.pdf