Tài liệu hạn chế xem trước, để xem đầy đủ mời bạn chọn Tải xuống
1
/ 27 trang
THÔNG TIN TÀI LIỆU
Thông tin cơ bản
Định dạng
Số trang
27
Dung lượng
384,21 KB
Nội dung
ĐẠI HỌC QUỐC GIA THÀNH PHỐ HỒ CHÍ MINH TRƯỜNG ĐẠI HỌC CÔNG NGHỆ THÔNG TIN o0o BÁO CÁO TIỂU LUẬN KHAI PHÁ DỮ LIỆU ĐỀ TÀI: PHÂN LỚP VĂN BẢN Bộ Môn : KHAI PHÁ DỮ LIỆU Giảng viên : PGS-TS ĐỖ PHÚC Học viên : NGUYỄN NGỌC TÚ Mã Số Học Viên : CH1101053 Lớp : CH CNTTQM - 06 TP. Hồ Chí Minh, tháng 11 năm 2012 Lời nói đầu Trong sự phát triển không ngừng của xã hội ngày nay, cùng với sự bùng nổ mạnh mẽ của Internet thì mọi thông tin, giai dịch và trao đổi đều được số hóa. Trong đó, văn bản là một hình thức lưu trữ thông tin phổ biến nhất hiện nay. Vì vậy mà lượng văn bản được lưu trữ trong các cơ sở dữ liệu cũng như trên Internet hiện nay là một kho dữ liệu khổng lồ. Cùng với sự phát triển đó là nhu cầu tìm kiếm dữ liệu của con người ngày càng phát triển. Vì thế việc hỗ trợ tìm kiếm, thu thập thông tin, văn bản với nội dung chính xác, nhanh chóng là nhu cầu cần thiết hiện nay cho người sử dụng máy tính cũng như Internet. Vì vậy, vấn đề phân loại văn bản hiện nay là một nhu cầu cần thiết nhằm cung cấp cho người sử dụng một công cụ giúp cho việc tìm kiếm chính xác hơn, nhanh chóng hơn. Lời cảm ơn Tôi xin chân thành cảm ơn sự giúp đỡ nhiệt tình của thầy PGS.TS ĐỖ PHÚC trong suốt thời gian học cũng như quá trình làm đồ án môn học:”KHAI PHÁ DỮ LIỆU”, và cũng xin cảm ơn các bạn trong khoa đã có nhiều đóng góp để tôi hoàn thành môn học này. Tuy nhiên do thời gian hạn hẹp, và sự hiểu biết của chúng em về môn học này chưa được sâu, cho nên đề tài vẫn còn nhiều thiếu sót, nhiều vấn đề chưa được giải quyết hoàn chỉnh và phù hợp với thực tế hiện nay. Vì vậy, tôi mong nhận được sự đóng góp của thầy và các bạn để chương trình được hoàn thiện hơn. Học viên thực hiện Nguyễn Ngọc Tú MỤC LỤC A. ĐẶC TẢ YÊU CẦU CỦA ĐỀ TÀI 1 B. HƯỚNG TIẾP CẬN VÀ PHƯƠNG PHÁP XỬ LÝ 1 I. PHƯƠNG PHÁP BIỂU DIỄN VĂN BẢN 1 1. Mô hình biểu diễn văn bản·························································1 2. Mô hình không gian vector (Vector Space Model)·····························1 3. Gom nhóm từ vựng·································································2 4. Tiền xử lý văn bản··································································3 II. GIẢI QUYẾT VẤN ĐỀ····························································4 1. Biểu diễn dữ liệu····································································4 2. Mã hóa văn bản······································································6 3. Độ tương tự của các tài liệu························································9 III. NỘI DUNG THỰC HIỆN······················································11 1. Biểu diễn dữ liệu···································································11 2. Mã hóa văn bản····································································11 3. Tính khoảng cách giữa 2 vector đặc trưng của 2 văn bản····················14 IV. ĐÁNH GIÁ·········································································16 C. GIAO DIỆN·············································································17 1. Hình 1: Giao diện chính của chương trình·····································17 2. Hình 2: Chọn folder chứa tập tài liệu···········································18 3. Hình 3: Tập các vector đặc trưng được rút trích······························19 4. Hình 4: Chọn một tài liệu để so sánh với tập tài liệu·························20 5. Hình 5: Thể hiện nội dung của tài liệu cần so sánh···························21 6. Hình 6: Kết quả phân lớp 10 tài liệu giống với tài liệu mấu nhất ··········22 TÀI LIỆU THAM KHẢO·······························································23 A. ĐẶC TẢ YÊU CẦU CỦA ĐỀ TÀI Xây dựng chương trình từ một tập văn bản được cho trước, lấy 1 văn bản và so sánh với tất cả các văn bản còn lại tìm ra văn bản có nội dung gần giống với nó nhất theo hướng tiếp cận text data mining. B.HƯỚNG TIẾP CẬN VÀ PHƯƠNG PHÁP XỬ LÝ I. Phương pháp biểu diễn văn bản Vấn đề lớn nhất đối với dữ liệu văn bản, cũng như đối với bất kỳ kiểu dữ liệu nào khác, đó là việc tìm kiếm một sự biểu diễn thích hợp, hay một mô hình cho những dữ liệu đang tồn tại, với những tài nguyên hiện hữu trong một thời gian hữu hạn. Cho nên, hiệu năng của mô hình yêu cầu cả chất lượng lẫn tốc độ. 1. Mô hình biểu diễn văn bản Hầu hêt phần lớn các tiếp cận trong lĩnh vực khai khoáng văn bản khai thác dữ liệu văn bản đều xem văn bản được đặc trưng bởi một tập hợp từ vựng.Cách tiếp cận này thường được gọi là mã hóa kiểu “gói từ” (bag of words), bỏ qua trật tự của từ và những thông tin về cấu trúc câu, nhưng ghi nhận lại số lần mỗi từ xuất hiện Mã hóa như vậy thực ra đã làm đơn giản hóa rất nhiều thông tin phong phú được thể hiện trong văn bản, cách làm này đơn thuần chỉ là sự thống kê từ vựng hơn là sự mô tả trung thực nội dung. Việc phát triển những mô hình tốt hơn nhưng vẫn khả thi về tính toán và cho phép đánh giá được dữ liệu trên thực tế vẫn còn là một vấn đề thách thức. Mặc dù độ phức tạp chỉ dừng lại ở cấp độ từ vựng của ngôn ngữ nhưng việc mã hóa dựa trên từ vựng vẫn tạm được xem là có khả năng cung cấp một tượng thông tin ít nhiều thích đáng về những mối kết hợp giữa từ vựng và văn bản, có thể trong chừng mực nào đó đủ cho việc gom nhóm theo chủ đề cũng như việc tìm kiếm thông tin từ những cơ sở dữ liệu lớn. 2. Mô hình không gian vector (Vector Space Model) Mô hình này biểu diễn văn bản như những điểm (hay những vector) trong không gian Euclide t-chiều, mỗi chiều tương ứng với một từ trong vốn từ vựng. Thành phần thứ i, là di, của vector văn bản cho biết số lần mà từ vị có chỉ mục i xuất hiện trong văn bản. Hơn nữa, mỗi từ có thể có một trọng số tương ứng để mô tả sự quan trọng của nó. Sự tương tự giữa hai văn bản được định nghĩa hoặc là khoảng cách giữa các điểm, hoặc là góc giữa những vector (không quan tâm chiều dài của văn bản). 5 Mặc dù tính đơn giản của nó, mô hình không gian vector và những biến thể của nó cho đến hiện nay vẫn là cách thông thường nhất để biểu diễn văn bản trong khai khoáng văn bản. Một lý giải cho điều này là những tính toán vector được thực hiện rất nhanh, cũng như đã có nhiều thuật toán hiệu quả để tối ưu việc lựa chọn mô hình, thu giảm chiều, và hiển thị trực quan trong không gian vector. Ngoài ra, mô hình không gian vector và những biến thể của nó vẫn còn được đánh giá cao, chẳng hạn như trong lĩnh vực truy tìm thông tin. Một vấn đề hiển nhiên đối với mô hình không gian vector là số chiều lớn: kích thước vốn từ của một sưu liệu văn bản thường là từ vài chục ngàn cho đến vài trăm ngàn từ. Hơn nữa, trong mô hình VSM các từ được xem là độc lập với nhau. Mô tả các văn bản dưới dạng các vector đặc trưng với các chiều là các từ đặc trưng của tập văn bản. • D = {d 1 , d 2 ,….d n }: với di là một văn bản • V = {t 1 , t 2 … t m }: với t i là một từ đặc trưng, nếu nó xuất hiện ít nhất trong 3 văn bản • d j = {w 1j ,w 2j …w mj }: với w ij là trọng số giữa từ đặc trưng t i và văn bản d j . 3. Gom nhóm từ vựng Trong khi xem xét ngữ nghĩa của một văn bản người ta cảm thấy rằng dường như là một số từ thể hiện ngữ nghĩa nhiều hơn là những từ khác. Hơn nữa, có sự phân biệt cơ bản giữa những từ ngữ chức năng và những từ ngữ mang nội dung, trong đó có một số từ ngữ mang nội dung dường như thể hiện nhiều về các chủ đề hơn những từ khác. Bất kể phương pháp nào được dùng để giảm chiều hay để suy ra những chiều tiềm ẩn, việc gán trọng số cho từ vựng chỉ cần đòi hỏi miễn sao nguyên tắc gán trọng số có thể diễn giải được tốt về tầm quan trọng của từ vựng đối với việc biểu diễn văn bản. Trọng số có thể dựa trên mô hình phân bố từ, chẳng hạn như phân bố Poisson, hay sự đánh giá thông tin về các chủ đề thông qua entropy. Một sơ đồ trọng số được dùng thông dụng là tf x idf , với tf là tần suất của một từ vựng trong văn bản, và idf là nghịch đảo của số lượng văn bản mà từ vựng đó xuất hiện. Sơ đồ này dựa trên khái niệm rằng những từ vựng xuất hiện thường xuyên trong các văn bản thì thường ít quan trọng đáng kể về ngữ nghĩa, và những từ hiếm xuất hiện có thể chứa đựng nhiều ngữ nghĩa hơn. 6 Vì trọng số của từ vựng trong mô hình không gian vector ảnh hưởng trực tiếp đến khoảng cách giữa các văn bản, do vậy các kết quả cụ thể phụ thuộc chủ yếu vào phương pháp gán trọng số. Những sơ đồ trọng số toàn cục nói trên chỉ nhằm mô tả tầm quan trọng của một từ bất kể ngữ cảnh riêng của nó, chẳng hạn như những từ lân cận hay vị trí của từ trong cấu trúc văn bản. Thông tin về cấu trúc của văn bản cũng chưa được tận dụng, ví dụ như nhấn mạnh lên những từ tiêu đề hay những từ xuất hiện đầu văn bản. 4. Tiền xử lý văn bản Trích tách các đặc trưng là bước quan trọng nhất trong phân tích khám phá dữ liệu cũng như khai thác văn bản. Tất cả các phương pháp học không kiểm soát đều nhằm tìm kiếm một số cấu trúc nào đó trong tập dữ liệu, và các cấu trúc văn bản cũng được xác định bởi các đặc trưng được chọn để biểu diễn các mục dữ liệu. Tính hữu ích của những phương pháp tiền xử lý khác nhau tùy thuộc vào mục đích ứng dụng. Các phương pháp lựa chọn đặc trưng: Phương pháp đánh giá độ hữu ích của vị từ. Phương pháp xác định từ khóa theo quan điểm Guiraud. Phương pháp xác định cụm từ trên cơ sở ngữ cảnh ngắn. Phương pháp sử dụng ngữ đoạn. … Trong lĩnh vực khai khoáng văn bản hầu như cho đến nay đều sử dụng những phương pháp tiền xử lý khá đơn giản trong việc loại bỏ dữ liệu dữ thừa và chọn lựa đặc trưng. Trong các thực nghiệm như vậy, những tiêu đề văn bản, những chữ số, công thức, và tất cả những ký hiệu phi ngôn ngữ đều bị loại bỏ. Văn bản được xem là đặc trưng bởi một tập hợp các từ vựng có tần số tuyệt đối lớn, những từ ít xuất hiện bị loại bỏ theo một tần số ngưỡng nào đó (thông thường sẽ chọn ngưỡng trong khoảng từ 5% - 60% tùy vào từng trường hợp cụ thể). 7 II. GIẢI QUYẾT VẤN ĐỀ 1. Biều diễn tài liệu Mô hình không gian vector dựa trên số học tuyến tính và xem các tài liệu, các câu truy vấn như các vector có nhiều chiều, Mỗi chiều của vector có giá trị số biểu thị sự tồn tại và tần suất xuất hiện của các từ vựng trong các tài liệu tương ứng hoặc trong toàn bộ tập tài liệu. Để biểu diễn tất cả tài liệu trong cùng một từ vựng( n vị từ trong cùng một không gian vector), ta phải rút tất cả toàn bộ các từ vựng tìm thấy trong mọi tài liệu để hình thành một không gian vector chung. Đặt n là kích thước của tập các thuật ngữ, và n là kích thước của tập các tài liệu. Khi đó tất cả các tài liệu Di ( i = 1,2,…,t) có thể được thể hiện thành các vector n chiều: Di = [ a i1 , a i2 , a i3 , ……., a i n ] Trong đó, các hệ số a i k thể hiện các giá trị tương ứng với từ vựng thứ k trong tài liệu Di. Như vậy các tài liệu và các từ vựng hình thành ma trận thuật ngữ - tài liệu( một mảng 2 chiều). Các hàng của ma trận này thể hiện các tài liệu, và các cột ứng với các từ vựng là các chiều trong không gian vector. Xét một ví dụ về ý tưởng mô hình không gian vector. Ta sẽ trình bày từng bước để chuyển tập các tài liệu thành một ma trận tài liệu – thuật ngữ. trong ví dụ, cách tính a i k như sau: nếu từ vựng k xuất hiện trong tài liệu i , thì hệ số a i k trong vector đại diện bằng 1, còn lại nếu từ vựng không xuất hiện trong tài liệu i, thì hệ số là 0. • Tập các tài liệu: D 1 : The Sample Project Code D 2 : Sample Code Site Contents D 3 : Project of Sample Code D 4 : Sample Word Document Templates D 5 : Sample Word Problems Trigonometric Functions D 6 : Image Models Sample • Tập các từ vựng xuất hiện trong tập tài liệu: The, Sample, Project, Code, Site, Contents, of, Word, Document, Templates, Problems, Trigonometric, Functions, Washington, Models. Tập từ vựng gồm 15 từ, như vậy không gian vector sẽ có 15 chiều. Trong ví dụ này, nếu từ vựng có xuất hiện nhiều lần thì hệ số tương ứng trong tài liệu đó vẫn được tính là 1, ngược lại 0. Ta thấy từ “Code” xuất hiện trong tài liệu thứ nhất và trong tập từ vựng chung, từ này ở vị trí thứ tư, nên trong vector thứ nhất vị trí thứ 4 có giá trị là 1. 8 “Code” cũng xuất hiện trong tài liệu thứ 3, nên vị trí thứ tư của vector thứ 3 cũng có giá trị là 1. Tương tự ta tính cho các phần tử khác. Như vậy, ma trận thuật ngữ tài liệu được hình thành như sau: 1 1 1 1 0 0 0 0 0 0 0 0 0 0 0 0 1 0 1 1 1 0 0 0 0 0 0 0 0 0 0 1 1 1 0 0 1 0 0 0 0 0 0 0 0 0 1 0 0 0 0 0 1 1 1 0 0 0 0 0 0 1 0 0 0 0 0 1 0 0 1 1 1 0 0 0 1 0 0 0 0 0 0 0 0 0 0 0 1 1 Ma trận thuật ngữ - tài liệu Các điểm mạnh và yếu của mô hình Ưu điểm của mô hình: Nền tảng mô hình là số học tuyến tính: sau khi chuyển đổi các tài liệu thành các vector, ta có thể thực hiện các thao tác toán học trên đó một cách dễ dàng, và các công thức toán học áp dụng trên vector là rất phổ biến. Có thể dùng các cấu trúc dữ liệu đơn giản, hiệu quả để lưu trữ dữ liệu: ví dụ như có thể lưu trữ các vector bằng cấu trúc mảng. Tuy nhiên, thường các vector khá thưa, nghĩa là hầu hết các chiều của vector là 0 ( khi xét một tập rất lớn các tài liệu, chưa đựng nhiều từ). Các phương pháp lưu trữ và xử lý đặc biệt có thể được áp dụng cho các vector này để giảm thiểu thời gian tính toán và vùng nhớ. Nhược điểm của mô hình: Thông tin lưu trữ trong cấu trúc của tài liệu bị thiếu hụt: trong mô hình không gian vector cơ bản, chỉ có sự tồn tại của thuật ngữ trong tài liệu là quan trọng, còn thứ tự xuất hiện và số lần xuất hiện lại không được nhắc tới -> sẽ bỏ qua nhiều yếu tố quan trọng gây mất nhiều thông tin để tìm đặc trưng cho từ. Để khắc phục được một số yếu điểm cơ bản của phương pháp này ta có thể áp dụng biện pháp gán trọng số cho các giá trị của các vector đặc trưng theo một số phương pháp khác thay vì ta chỉ đánh trọng số là 0 va 1. 9 Tập dữ liệu Văn bản Rút trích một tập thuật ngữ( từ vựng) -> Hình thành không gian vector chung có ( có vốn từ vựng chung: n vi từ) Thuật ngữ thứ i Gạn trọng số cho thuật ngữ thứ i Tuần suất tf và tần số tài liệu ngược idf của từ vựng thứ i trong văn bản Vector mã hóa văn bản k 1 2 …. xi …. .xn MÃ HÓA( mô hình không gian vector): là quá trình gán trọng số tf-idf cho từng thành phần xi của vector văn bản k K Văn bản k trong tập dữ liệu văn bản ban đầu 2. Mã hóa văn bản Đề xuất mô hình mã hóa văn bản a. Tiền xử lý văn bản - Sau khi các tài liệu văn bản được lấy từ internet về và lưu trữ trong CSDL cục bộ, quá trình tiền xử lý dữ liệu sẽ tiến hành lấy nội dung của các file văn bản bằng cách chuyển tất cả chúng về cùng một loại font chữ. - Tiến hành loại bỏ tất cả những “tag” của HTML trong file văn bản, chuyển tất cả chúng về các file dưới dạng TXT, để chuẩn bị cho giai đoạn trích đặc trưng và mã hóa văn bản. 10 [...]... trích 23 Hình 4: Chọn 1 tài liệu để so sánh với tập tài liệu 24 Hình 5: Thể hiện nội dung của tài liệu cần so sánh 25 Hình 5: Kết quả phân lớp 10 tài liệu giống với tài liệu mẫu nhất 26 TÀI LIỆU THAM KHẢO [1] Hoàng Kiếm, Đỗ Phúc, Rút trích ý chính từ văn bản tiếng Việt hỗ trợ tạo tóm tắt nội dung văn bản [2] Đỗ Phúc, Slide bài giảng Khai phá dữ liệu , năm 2012 [3] Yihua Liao, V Rao Vemuri, Using Text... hay vị trí của từ trong cấu trúc văn bản Thông tin về cấu trúc của văn bản cũng chưa được tận dụng, ví dụ như nhấn mạnh lên những từ tiêu đề hay những từ xuất hiện đầu văn bản 3 Độ tương tự của các tài liệu Giải quyết cho vấn đề tìm kiếm những văn bản có nội dung giống nhau là quá trình mô tả việc xử lý ban đầu của các phương pháp phân nhóm tài liệu trong một tập tài liệu ban đầu Nhân tố góp phần cho... III NỘI DUNG THỰC HIỆN 1 Biểu diễn dữ liệu Với đề tài này, tôi chọn mô hình không gian vector( VSM) để làm mô hình biểu diễn cho các văn bản, nhưng không chọn phương pháp dùng số học tuyến tính cho ma trận hai chiều và đánh trọng số luận lý 0 và 1 Ánh xạ việc sử dụng mảng hai chiều( ma trận thuật ngữ - tài liệu) cho việc biểu diễn cấu trúc dữ liệu Biểu diển cấu trúc dữ liệu: - Để lưu trữ tập hợp các từ... giá trị là 0 ( Có thể dùng các cấu trúc dữ liệu khác với tính chất tương tự) Ánh xạ mảng hai chiều( ma trận thuật ngữ - tài liệu) bằng một mảng 1 chiều ( size = n văn bản) với mỗi phần tử của mảng là một vector đặc trưng có cấu trúc như trên 2 Mã hóa văn bản B1:Xử lý lấy nội dung( body) của file *.HTML chuẩn hóa về dạng chuẩn sau đó lưu vào file *.TXT B2:Từ n văn bản có n file *.TXT ta sẽ lọc bỏ các “... trọng số cho tập tài liệu: Chọn phương pháp gán trọng số tf-idf Có thể chọn một trong 2 công thức này để gán trọng số cho mỗi từ trong vector đặc trưng của mỗi văn bản CT1: Wi j = tf i j * log n( n / df i) CT2: Wi j = ( 1 + log tfi j) * log n/ dfi 3 Tính khoảng cách giữa hai vector đặc trưng của hai văn bản 18 Để xác định được 2 văn bản có nội dung gần giống nhau nhất Chọn phương pháp tính khoảng cách... xử lý b Rút trích đặc trưng Có rất nhiều phương pháp chọn đặc trưng để mã hóa cho văn bản, như những phương pháp chọn đặc trưng là từ vựng (đơn, ghép), những phương pháp tìm cụm từ phổ biến, phương pháp dùng ngữ đoạn( trong tiếng việt) để làm đặc trưng cho văn bản, và một số phương khác Giai đoạn này đóng vai trò hết sức quan trọng trong tiến trình khám phá tri thức Tùy vào việc chúng ta lựa chọn cách... tài liệu Phương pháp sử dụng số lần xuất hiện chính xác của các thuật ngữ trong tài liệu được gọi là đánh trọng tf ( term frequency terms weighting ) Ta gán cho mỗi vị trí k trong vector đại diện tài liệu là số lần xuất hiện của từ k trong tài liệu tương ứng Một phương pháp đánh trọng số sử dụng cả tần xuất của từ và tuần xuất của tài liệu được gọi là đánh trọng số tf-idf, đây có lẽ là phương pháp... ngữ tương ứng trong tài liệu Các giá trị đó được gọi là các trọng số( các trọng số của cùng một thuật ngữ trong các tài liệu khác nhau thì khác nhau) Có nhiều phương pháp khác nhau dùng để đánh trọng số cho các thuật ngữ Phương pháp đơn giản nhất là đánh trọng số luận lý, các trọng số được gán là 0 va 1 phụ thuộc vào sự xuất hiện của các thuật ngữ trong tài liệu Tuy nhiên phương pháp này gây mất nhiều... tài liệu và tần xuất tài liệu ngược( inverse document frequencies): Wi j = tf i j * log n( n / df i) Hoặc Wi j = ( 1 + log tfi j) * log n/ dfi Công thức này gán trọng số cực đại cho những từ chỉ xuất hiện trong một văn bản duy nhất Vì trọng số của từ vựng trong mô hình không gian vector ảnh hưởng trực tiếp đến khoảng cách giữa các văn bản, do vậy các kết quả cụ thể phụ thuộc chủ yếu vào phương pháp... dùng mảng( array) một chiều ( size = 300) để lưu 300 từ vựng chung( có thể ít hoặc nhiều hơn) - Biểu diễn vector đặc trưng( một văn bản) : dùng cấu trúc dữ liệu bảng băm ( hashTable) chỉ để lưu trữ những từ vựng có tồn tại trong “không gian vector thuât ngữ” và có trong văn bản đó( những từ không có ta sẽ không lưu trữ), một thành phần của giá trị băm gồm 2 miền: o Nội dung của từ( String Word ): giá . ĐẠI HỌC QUỐC GIA THÀNH PHỐ HỒ CHÍ MINH TRƯỜNG ĐẠI HỌC CÔNG NGHỆ THÔNG TIN o0o BÁO CÁO TIỂU LUẬN KHAI PHÁ DỮ LIỆU ĐỀ TÀI: PHÂN LỚP VĂN BẢN Bộ Môn : KHAI PHÁ DỮ LIỆU Giảng viên :. phần xi của vector văn bản k K Văn bản k trong tập dữ liệu văn bản ban đầu 2. Mã hóa văn bản Đề xuất mô hình mã hóa văn bản a. Tiền xử lý văn bản - Sau khi các tài liệu văn bản được lấy từ internet. trong phân tích khám phá dữ liệu cũng như khai thác văn bản. Tất cả các phương pháp học không kiểm soát đều nhằm tìm kiếm một số cấu trúc nào đó trong tập dữ liệu, và các cấu trúc văn bản cũng