Vì vậy nhu cầu phân loại, lọc dữ liệu là một nhiệm vụ rất quan trọng có thể hữu ích trong tổ chức cũng như tìm kiếm thông tin trên nguồn tài nguyên lớn.. ðể tổng hợp trích lọc dữ liệu và
Trang 1HỌC VIỆN CÔNG NGHỆ BƯU CHÍNH VIỄN THÔNG
-
NGUYỄN VĂN TẤN
NGHIÊN CỨU XÂY DỰNG PHÂN HỆ TRÍCH LỌC
VÀ PHÂN LOẠI DỮ LIỆU
Chuyên ngành: TRUYỀN DỮ LIỆU VÀ MẠNG MÁY TÍNH
Mã số: 60.48.15
TÓM TẮT LUẬN VĂN THẠC SĨ
HÀ NỘI - 2012
Trang 2Tôi xin gửi lời cám ơn ñến tất cả bạn bè, người thân và ñồng nghiệp tại Trung tâm ñiều hành thông tin - VNPT Hà Nội ñã tạo ñiều kiện và giúp ñỡ, hỗ trợ ñộng viên tôi trong quá trình thực hiện luận văn
Tôi xin chân thành cảm ơn!
Hà nội ngày 10 tháng 10 năm 2012
Học viên
Trang 3CHƯƠNG 1 -MỞ ðẦU
1.1 ðặt vấn ñề
Nhận thức ñược lợi ích và tầm quan trọng của công nghệ thông tin và truyền thông trong việc duy trì và thúc ñẩy sự phát triển bền vững, trong những năm qua lĩnh vực công nghệ thông tin (CNTT) nói chung và hoạt ñộng ứng dụng công nghệ thông tin trong xử lý
dữ liệu nói riêng ñã phát triển nhanh chóng, mạnh mẽ và ngày càng có ý nghĩa quan trọng trong mọi mặt của kinh tế - xãhội
Vì vậy nhu cầu phân loại, lọc dữ liệu là một nhiệm vụ rất quan trọng có thể hữu ích trong tổ chức cũng như tìm kiếm thông tin trên nguồn tài nguyên lớn Phân lớp dữ liệu là một nhiệm vụ rất quan trọng trong việc tổ chức cũng như tìm kiếm dữ liệu trên nhiều nguồn khác nhau Mặt khác, phân lớp dữ liệu là một trong những thành phần cơ bản nhưng quan trọng nhất trong kiến trúc tổng thể của hầu hết các máy tìm kiếm Hiện nay, bài toán này ñã
và ñang nhận ñược nhiều sự quan tâm, nghiên cứu của các nhà khoa học
ðể tổng hợp trích lọc dữ liệu và phân loại dữ liệu cần phải xây dựng công cụ hỗ trợ tác nghiệp xử lý thành thông tin ñể hỗ trợ nhu cầu phân tích của các nhà lãnh ñạo, các nhà chiến lược trong tổ chức và sự ra ñời ứng dụng mới phục vụ cho mục ñích này ñược gọi là “Hệ trích lọc và xử lý dữ liệu” Dữ liệu ñược lưu trữ, xử lý, kết xuất theo các nhóm và loại, các mục ñích cụ thể dưới dạng hướng chủ ñề
1.2 Mục tiêu và phạm vi luận văn
1.2.1. Mục tiêu luận văn
Với xu hướng phát triển mạnh mẽ trong công nghệ thông tin, ñặc biệt là lượng thông tin, nguồn dữ liệu cực kỳ lớn ñã ñòi hỏi phải có hệ thống lọc, xử lý và phân loại dữ liệu Do vậy nhu cầu cần nghiên cứu và xây dựng các công cụ trích lọc, phân loại dữ liệu ñược ñặt ra nhằm nâng cao hiệu quả sử dụng nguồn dữ liệu
Xuất phát từ yêu cầu ñó, tác giả ñặt vấn ñề nghiên cứu xây dựng phân hệ trích lọc và phân tích dữ liệu Mục ñích của ñề tài là hướng tới xây dựng bộ công cụ trích lọc, phân tích
dữ liệu từ các nguồn khác nhau
1.2.2. Phạm vi luận văn
ðối tượng của ñề tài là các nguồn dữ liệu khác nhau trên Web hay Internet Phạm vi nghiên cứu của ñề tài trong lĩnh vực trao ñổi, xử lý dữ liệu trên trang Web và các nguồn RSS, do thời hạn thực hiện luận văn có hạn nên trong phạm vi của luận văn này, sẽ thực hiện nghiên cứu phương pháp rút trích và phân loại trên công cụ GATE Framework 7.0
Trang 41.3 Kết quả ñạt ñược
Nghiên cứu hệ thống trích lọc và phân loại dữ liệu từ nguồn URLs, RSS dụng GATE Framework trên các thư viện số, ñồng thời kết hợp với việc sử dụng cơ sở dữ liệu có sẵn, ñể
dữ liệu trích lọc ñược ñảm bảo tính ñầy ñủ, chính xác cao
Tập trung vào cách rút ra ñược các thực thể và quan hệ dựa vào các API của GATE: Trong ñó tập trung vào rút trích thực thể và quan hệ của các chương trình ñã ñược xây dựng trước
1.4 Bố cục luận văn
Nội dung chính của luận văn ñược bố cục gồm có 3 chương như sau:
Chương 1: Mở ñầu.Nội dung chương này xác ñịnh vấn ñề cần nghiên cứu của luận văn, mục tiêu và phạm vi của luận văn cũng như tóm lược kết quả ñạt ñược của luận văn Chương 2: Khái quát trích lọc.Nội dung chương này phân loại dữ liệu, ñịnh nghĩa và khái niệm trích lọc dữ liệu từ trước ñến nay trên thế giới Nghiên cứu nguyên tắc rút trích, phân loại dữ liệu, phương pháp rút trích hiện nay phạm vi ứng dụng rút trich thông tin,ñặc trưng dữ liệu trong quá trình xử lý rút trích
Chương 3:Kỹ thuật rút trích dữ liệu và phân loại.Nội dung chương này thể hiện mô hình dữ liệu sử SVM và GATE Framework ðặc tả dữ liệu và biểu diễn mô hình
Chương 4: Kết quả rút trích, và phân loại dữ liệu khi sử dụng công cụ GATE Framwork
CHƯƠNG 1-KHÁI QUÁT TRÍCH LỌC, PHÂN LOẠI DỮLIỆU
1.5 ðịnh nghĩa rút trích thông tin
Các ñịnh nghĩa ñược dùng phổ biến trên internet liên quan ñến trích xuất thông tin bao gồm:
Các nghiên cứu hiện nay liên quan ñến rút trích thông tin văn bản tập trung vào:
- Rút trích các thuật ngữ (Terminology Extraction): Tìm kiếm các thuật ngữ chính có liên quan, thể hiện ngữ nghĩa, nội dung, chủ ñề tài liệu hay một tập các tài liệu
- Rút trích các thực thể ñịnh danh (NER):Việc rút trích ra các thực thể ñịnh danh tập trung vào các phương pháp nhận diện các ñối tượng, thực thể như: tên người, tên công ty, tên tổ chức, một ñịa danh, nơi chốn
- Rút trích quan hệ (Relationship Extraction):Cần xác ñịnh mối quan hệ giữa các thực thể ñã nhận biết từ tài liệu Chẳng hạn xác ñịnh nơi chốn cho một tổ chức, công ty hay nơi làm việc của một người nào ñó
Trang 51.6 Nguyên tắc rút trích thông tin
Theo tiến sĩ Diana Maynard hầu hết các hệ thống rút trích thông tin(IE) nói chung thường tiến hành các bước sau:
- Tiền xử lý
- Nhận biết ñịnh dạng tài liệu (Format detection)
- Tách từ (Tokenization)
- Phân ñoạn từ (Word Segmentation)
- Giải quyết nhập nhằng ngữ nghĩa (Sense Disambiguation)
- Tách câu (Sentence Splitting)
- Gán nhãn từ loại (POS Tagging)
- Nhận diện thực thể ñịnh danh (Named Entity Detection)
- Nhận biết thực thể (Entity Detection)
- Xác ñịnh ñồng tham chiếu (Coreference)
1.7 Phương pháp tiếp cận rút trích thông tin
Các phương pháp trích xuất hiện nay có thể chia thành hai cách tiếp cận chính: tiếp cận công nghê tri thức (Knowledge Engineering) và tiếp cận học máy tự ñộng (Automatic Training)
1.8 Phương pháp ñánh giá rút trích thông tin Sadflk
ðể ñánh giá kết quả của thông tin ñược trích xuất, các chuyên gia ñã ñưa ra ñộ ño và ñược sử dụng trong lĩnh vực truy vấn thông tin (IR) ñó là ñộ chính xác “Precision” và ñộ tin cậy “Recall”
ðộ chính xác Precision (P): Là phân số thể hiện tỷ lệ thông tin ñược rút trích ñúng Bao nhiêu phần trăm thông tin ñược rút là ñúng Tỷ lệ giữa số lượng câu trả lời ñúng tìm thấy với tổng số câu trả lời ñúng có thể
ðộ tin cậy Recall (R): Là ñộ ño hay phân số thể hiện khả năng tin cậy của thông tin ñược trích xuất Tỷ lệ giữa tổng số câu trả lời ñúng tìm thấy với tổng số câu trả lời tìm thấy
) (tp tn
tp R
+
) (tp fp
tp P
+
Với: tp là số kết quả ñúng ñược tìm thấy; tn là số kết quả ñúng mà không tìm thấy; fp
Trang 6là số kết quả tìm thấy mà khơng đúng
Người ta đã tìm cách kết hợp hai độ đo này và đề xuất một độ đo mới, đĩ là F-Measure (F)
Thơng số β xác định mức độ tương quan giữa độ chính xác P (Precision) và độ tin cậy
R (Recall) Các chuyên gia về rút trích thơng tin thường sử dụng β = 1 để đánh giá độ đo F Khi đĩ P và R được gán trọng số bằng nhau, hiệu năng của hệ thống được đánh giá thơng qua các giá trị khác nhau của độ chính xác R và độ tin cậy P, từ đĩ cĩ thể so sánh một cách
dễ dàng
Với β = 1 thì F-Mearsure:
) (
2
R P
R P F
+
×
×
=
1.9 Một số phương pháp trích lọc và phân loại dữ liệu hiện nay
1.9.1. Phương pháp rút trích cụm từ khĩa (Keyphrase Extraction)
Việc rút trích trước đây hầu hết dựa vào tiếp cận phân tích cú pháp, tách câu, thống kê tần xuất xuất hiện tf*idf để rút ra các cụm Kết quả rút trích vẫn chưa thực sự tốt, cịn khá nhiều “rác” (cụm vơ nghĩa, cụm khơng thể hiện điện ngữ nghĩa của tài liệu đề cập) Vấn đề xác định chính xác các cụm từ khĩa, cũng như xác định được biên giới của các từ khĩa, cụm
từ khĩa từ tài liệu tiếng Việt hiện nay vẫn là một bài tốn khĩ và vẫn đang được quan tâm nghiên cứu
1.9.2. Phương pháp sinh cụm từ khĩa tự động
Phương pháp gán cụm từ khĩa (Keyphrase Assignment):Tìm kiếm và chọn các cụm từ khĩa từ từ vựng quản lý (Controlled Vocabulary) thích hợp nhất để mơ tả tài liệu Tập dữ liệu huấn luyện là một tập hợp các tài liệu với mỗi cụm từ trong từ vựng và dựa vào đĩ để xây dựng một bộ phân lớp (classifier)
Phương pháp trích xuất cụm từ khĩa (Keyphrase Extraction):Sẽ dùng các kỹ thuật truy vấn thơng tin và xử lý từ vựng để chọn ra các cụm từ khĩa từ chính tài liệu đang xét thay vì dùng các cụm từ định nghĩa trước trong từ vựng quản lý
1.9.3. Phương pháp trích xuất các cụm từ khĩa (KEA)
KEA dùng phương pháp học máy Nạve Bayes để huấn luyện và rút trích các cụm từ khĩa
Trang 7Theo nhận định của các tác giả, KEA là thuật tốn cĩ khả năng độc lập ngơn ngữ.Các bước sau thực hiện thuật tốn KEA: Chi tiết tham khảo (Phụ lục A)
1.9.4. Phương pháp thống kê
Hầu hết các nghiên cứu đầu tiên cho rút trích dữ liệu đều tập trung trên những tài liệu
kỹ thuật (các bài báo khoa học) Các phương pháp cổ điển thường tập trung vào các đặc trưng hình thái để tính điểm cho các câu và rút trích các câu quan trọng để đưa vào tĩm tắt
Sử dụng các đặc trưng như: wordfrequency, stopwords, position, cuewords, title Sử dụng phương pháp kết nối tuyến tính để kết hợp các điểm đặc trưng lại với nhau:
+ Thử nghiệm với 400 dữ liệukỹthuật và kết quảđạt 44%
Phương pháp này cịn gọi là mơ hình túi từ (bag-of-words), sử dụng mơ hình trọng số tần suất thuật ngữ và tần suất câu đảo ngược (TF.IDF) Ở mơ hình này, giá trị IDF được tính trên câu Trongđĩ, TF là số lần xuất hiện của term trong1 câu Và DF là số câu cĩ chứa thuật ngữ
Tuy nhiên, phương pháp dung độ đo TF.IDF khơng được dùng độc lập, mà thường được kết hợp với các phương pháp khác như máy học, đồ thị… để đạt được hiệu quả cao hơn
1.9.6. Phương pháp Nạve-Bayes
Các hướng tiếp cận theo phương pháp này giả định rằng các đặc trưng của dữ liệu độc lập nhau Sử dụngbộ phân lớp Nạve-Bayes để xác định câu nào thuộc về tĩm tắt và ngược lại:
Chos là các câu cần xác định F1…Fk là các đặc trưng đã được chọn, và giả định các thuộc tính độc lập nhau Xác suất của câu s thuộc về tĩm tắt được tính như sau:
Sau khi tính xác suất các câu, n câu cĩ xác suất cao nhất sẽ được rút trích
+ Kết hợp thêm nhiều đặc trưng phong phú hơn: tf.idf(singleword, two-noun word, named-entities), discourse(cohension) (sử dụng Wordnet và kỹ thuật sử lý ngơn ngữ tự nhiên để phân tích sự tham chiếu đối với các thực thể)
Tác giả đưa ra khái niệm về sự phụ thuộc cục bộ (local dependencies) giữa các câu và
Trang 8sử dụng mô hình HMM ñể xác ñịnh sự phụ thuộc này
Các ñặc trưng sử dụng: position, number of term, like lihood of sentence
Mô hình HMM bao gồm 2s+1 trạng thái, trong ñó s là số trạng thái tóm tắt (câu thuộc tóm tắt) và s+1 là câu không thuộc tóm tắt
Mô hình HMM xây dựng ma trận chuyển vị M, coi các ñặc trưng là ña biến và tính xác suất của các câu qua từng trạng thái
SVM là một phương pháp phân loại xuất phát từ lý thuyết học thống kê Ý tưởng của
nó là ánh xạ (tuyến tính hoặc phi tuyến) dữ liệu vào không gian các vector ñặc trưng (space
of feature vectors) mà ở ñó một siêu phẳng tối ưu ñược tìm ra ñể tách dữ liệu thuộc hai lớp khác nhau
Giả sử, chúng ta lựa chọn ñược tập các ñặc trưng là T={t1, t2, …, tn}, x i là vector dữ liệu ñược biểu diễn xi=(wi1, wi2, …, win), win∈R là trọng số của ñặc trưng tn Với tập dữ liệu
huấn luyện Tr={(x1, y1), (x 2 , y 2 ), …, (x l , y l )}, (x i∈R n
), yi∈{+1, -1}, cặp (x i , y i ) ñược hiểu là
vector x i ñược gán nhãn là y i
Nếu coi mỗi x i ñược biểu diễn tương ứng với một ñiểm dữ liệu trong không gian R n thì
ý tưởng của SVM là tìm một mặt hình học (siêu phẳng) f(x) “tốt nhất” trong không gian chiều ñể phân chia dữ liệu sao cho tất cả các ñiểm x + ñược gán nhãn 1 thuộc về phía dương của siêu phẳng (f(x + )>0), các ñiểm x - ñược gán nhãn –1 thuộc về phía âm của siêu phẳng (f(x - )<0)
Trang 9n-Hình 1.2 : H 2 là mặt phẳng tốt nhất
Việc tính toán ñể tìm ra siêu mặt phẳng tối ưu dùng kỹ thuật sử dụng toán tử Lagrange
ñể biến ñổi thành dạng ñẳng thức là rất phức tạp và khó khăn Hiện nay ñã có những bộ thư viện ñã hỗ trợ cho việc tính toán trên như : SVMlight, LIBSVM, jSVM,
Ví dụ: Giả sử ta có một tập các ñiểm ñược gán nhãn dương (+1): {(3,1), (3, -1), (6, 1),
(6, -1)}; và tập các ñiểm ñược gán nhãn âm (-1) trong mặt phẳng R+: {(1, 0), (0, 1), (0, -1), (-1, 0)}
Chúng ta sẽ dùng SVM ñể phân biệt hai lớp (+1 và -1) Bởi vì dữ liệu ñược chia tách một cách tuyến tính, rõ ràng, nên chúng ta sử dụng linear SVM (SVM tuyến tính) ñể thực hiện
Hình 1.3 : Các ñiểm dữ liệu ñược biểu diễn trên R +
Theo quan sát Hình 3.6, chúng ta chọn ra 3 vector hỗ trợ ñể thực thi các phép toán
Trang 10nhằm tìm ra mặt phẳng phân tách tối ưu nhất:
{s1 = (1,0), s2 = (3,1), s3 = (3, -1)}
Hình 1.4 : Các vector hỗ trợ (support vector) ñược chọn
Các vector hỗ trợ ñược tăng cường (augmented) bằng cách thêm 1 Tức là s1 = (1, 0), thì nó sẽ ñược chuyển ñổi thành s%= (1, 0, 1) Theo kiến trúc SVM, công việc của chúng ta
Trang 11
1.10 Phạm vi ứng dụng rút trích thông tin
Khả năng ứng dụng của từ khóa và cụm từ khóa có thể kể ñến như sau:
- Các kho dữ liệu văn bản lớn như các thư viện số phát triển rất nhanh dẫn ñến gia tăng giá trị thông tin tóm tắt
- Hỗ trợ người dùng nhận biết về nội dung của tài liệu và kho tài liệu
- Ứng dụng trong truy vấn thông tin mô tả những tài liệu trả về từ kết quả truy vấn ðịnh hướng tìm kiếm cho người dùng
- Nền tảng cho chỉ mục tìm kiếm
- Là ñặc trưng dùng trong kỹ thuật phân loại, gom cụm tài liệu
Việc gán các keyphrases cho tài liệu: Các cụm từ khóa thường ñược gán bằng tay,
tức các tác giả chủ ñộng gán các cụm từ khóa cho tài liệu họ viết ðối với các bộ chỉ mục chuyên nghiệp thường chọn các cụm từ một từ vựng quản lý
Vấn ñề gặp phải ñối với các tài liệu không có cụm từ khóa Việc gán bằng tay là quá trình tốn nhiều thời gian, công sức, cũng như cần có kiến thức chuyên môn
Rất cần thiết các kỹ thuật rút trích tự ñộng
1.11 Các ñặc trưng dữ liệu
Các ñặc trưng ñộc lập nhau
Các ñặc trưng rời rạc: Vector ñặc trưng di có thể có nhiều thành phần mang giá trị 0 do
có nhiều ñặc trưng không xuất hiện trong dữ liệu di (nếu tiếp cận theo cách sử dụng giá trị nhị phân 1, 0 ñể biểu diễn cho việc có xuất hiện hay không một ñặc trưng nào ñó trong dữ liệu ñang ñược biểu diễn thành vector), do ñó một cách tiếp cận khác là không sử dụng số nhị phân 0, 1 mà sử dụng giá trị số thực ñể phần nào giảm bớt sự rời rạc trong vector dữ liệu
Quá trình phân tích xử lý ngôn ngữ tự nhiên có các mức ñộ sâu xử lý khác nhau như: mức hình thái, mức cú pháp và mức ngữ nghĩa
1.11.1. Mứcñộ hình thái
ðặc trưng về chủ ñề(Thematic): thống kê từ, tần suất từ, stop words, TF.IDF
ðặc trưng về vị trí(Location) :vị trí câu trong dữ liệu hay ñoạn văn(câu ñầu tiên trong
Trang 12mỗi ñoạn, n câu ñầu tiên của dữ liệu), phương pháp tiêu ñề(câu chứa từ có trong tiêu ñề), cue- words hay fixed-phrased (câu chứa những ngữ cố ñịnh)
ðặc trưng về ñịnh dạng (format)
ðặc trưng về chủ ñề trong dữ liệu (Threads of topic)
ðặc trưng về cấu trúc chuỗi từ vựng (Lexical chains)
ðặc trưng về cấu trúc lý luận (Rhetorical structure)
Vì vậy lựa chọn GATE Frame ñể nghiên cứu trích lọc và phân loại dữ liệu từ các nguồn Internet.GATE ñược viết hoàn toàn bằng Java và là phần mềm mã nguồn mở, ngoài
ra, nó còn sử dụng JAPE (Java Annotation Patterns Engine) ñể xây dựng các bộ luật cho việc gán nhãn dữ liệu
CHƯƠNG 2 -KỸ THUẬT TRÍCH LỌC VÀ PHẦN LOẠI DỮ LIỆU GATE Framework
2.1 Biểu diễn dữ liệu cần trích lọc và phân loại
2.1.1. Dữ liệu ñầu vào
a Các ñối tượng dữ liệu có thể là kho tài liệu hay các tài nguyên ngôn ngữ như : danh sách, bộ từ vựng hay một cấu trúc phức tạp như bản thể học
Mỗi ñối tượng dữ liệu có thể bao gồm tối thiểu các thuộc tính như sau:
- Tên: Tên của ñối tượng
- Vị trí lưu trữ: ðường dẫn vật lý ñến tập tin hay thư mục
- ðịnh dạng: Text, doc, pdf, xml, URL, RSS từ nguồn internet
- Tính chất: xử lý tạm thời trong bộ nhớ hay xử lý và lưu trữ thường trực trên thiết bịlưu trữ
- Loại: Kho dữ liệu, danh mục từ, các bản thể học
- Bộ nhãn: Các thành phần trong ñối tượng dữ liệu như từ (word), cụm từ (chunk),