MỞ ĐẦU Xã hội hiện đại là một xã hội của thông tin và xử lý thông tin, cùng với sự phát triển của mạng Internet, nguồn thông tin hiện nay vô cùng đa dạng, phong phú và nhiều về số lượng. Tuy nhiên, để sử dụng hiệu quả nguồn thông tin, cần phải có phương pháp, thuật toán, quy trình, rồi đến cả những phần mềm, những công cụ để khai phá dữ liệu nói chung và khai phá văn bản nói riêng. Nghiên cứu về khai phá dữ liệu, khai phá văn bản ngày càng phát triển, đem lại những tiềm năng to lớn cho con người. Đặc biệt, khai phá văn bản trên Internet được chú ý, do đây là nguồn thông tin chia sẻ cực lớn.
Cũng do khối lượng thông tin chia sẻ rất lớn mà việc tìm kiếm thông tin trên đó cũng gặp một số trở ngại. Trong phạm vi của đề tài luận văn, em xin được trình bày về một số vấn đề sau: - Tìm hiểu chung về khai phá dữ liệu và một số kỹ thuật khai phá dữ liệu - Tìm hiểu chung về khai phá văn bản và các bài toán khai phá văn bản, giới thiệu kỹ thuật phân tích khái niệm hình thức, ứng dụng trong khai phá văn bản. - Vấn đề tìm kiếm thông tin, làm mịn kết quả tìm kiếm văn bản, hướng nghiên cứu đề xuất. Với hiểu biết của bản thân, và thời gian nghiên cứu, nội dung luận văn mới dừng lại ở nghiên cứu lý thuyết và thuật toán.
Chính vì vậy, em rất mong nhận được góp ý và hướng dẫn thêm của các thầy cô và các bạn, để việc nghiên cứu được thực hiện triệt để và mang tính ứng dụng cụ thể hơn nữa. Tổng quan về khai phá dữ liệu và các kỹ thuật dùng trong khai phá dữ liệu 1.1 Tổng quan về khai phá dữ liệu Khai phá dữ liệu (Data mining-DM) là một khái niệm ra đời vào những năm cuối của thập kỷ 80. Nó bao hàm một loạt các kỹ thuật nhằm phát hiện ra các thông tin có giá trị tiềm ẩn trong các tập dữ liệu lớn (các kho dữ liệu). Về bản chất, khai phá dữ liệu liên quan đến việc phân tích các dữ liệu và sử dụng các kỹ thuật để phát hiện ra các mẫu, các quy luật trong tập dữ liệu.
Năm 1989, Fayyad, Piatestsky-Shapiro và Smyth đã dùng khái niệm Phát hiện tri thức trong cơ sở dữ liệu (Knowledge Discovery in Database – KDD) để chỉ toàn bộ quá trình phát hiện các tri thức có ích từ các tập dữ liệu lớn. Trong đó, khai phá dữ liệu là một bước đặc biệt trong toàn bộ quá trình, sử dụng các giải thuật đặc biệt để chiết xuất ra các mẫu từ cơ sở dữ liệu. Các giải thuật khai phá dữ liệu thường được mô tả như những chương trình hoạt động trực tiếp trên file dữ liệu. Với các phương pháp học máy và thống kê trước đây, thường thì bước đầu tiên là các giải thuật nạp toàn bộ file dữ liệu vào trong bộ nhớ.
Khi chuyển sang các ứng dụng công nghiệp liên quan đến việc khai phá các kho dữ liệu lớn, mô hình này không thể đáp ứng được. Không chỉ bởi vì nó không thể nạp hết dữ liệu vào trong bộ nhớ mà còn vì khó có thể chiết xuất dữ liệu ra các file đơn giản để phân tích được. Quá trình xử lý khai phá dữ liệu bắt đầu bằng cách xác định chính xác vấn đề cần giải quyết. Sau đó sẽ xác định các dữ liệu liên quan dùng để xây dựng giải pháp.
Bước tiếp theo là thu thập các dữ liệu có liên quan và xử lý chúng thành dạng sao cho giải thuật khai phá dữ liệu có thể hiểu được. Về lý thuyết thì có vẻ rất đơn giản nhưng khi thực hiện thì đây thực sự là một quá trình rất khó khăn, gặp phải nhiều vướng 5 mắc như: các dữ liệu phải được sao ra nhiều bản (nếu được chiết xuất vào các tệp), quản lý các tệp dữ liệu, phải lặp đi lặp lại nhiều lần toàn bộ quá trình (nếu mô hình dữ liệu thay đổi),… Sẽ là quá cồng kềnh với một giải thuật khai phá dữ liệu nếu phải truy cập vào toàn bộ nội dung của cơ sở dữ liệu và làm những việc như trên. Vả lại, điều này cũng không cần thiết. Có rất nhiều các giải thuật khai phá dữ liệu thực hiện dựa trên những thống kê tóm tắt khá đơn giản của cơ sở dữ liệu, khi mà toàn bộ thông tin trong cơ sở dữ liệu là quá dư thừa đối với mục đích của việc khai phá dữ liệu.
Bước tiếp theo là chọn thuật toán khai phá dữ liệu thích hợp và thực hiện việc khai phá dữ liệu để tìm được các mẫu (pattern) có ý nghĩa dưới dạng biểu diễn tương ứng với các ý nghĩa đó (thường thì được biểu diễn dưới dạng các luật phân loại, cây quyết định, phát hiện luật kết hợp, biểu thức hồi quy,…). Thống kê Xác định Thu thập Xác định Giải thuật dữ liệu và tiền Data Mining xử lý DL Dữ liệu Luật trực tiếp Hình 1.1 Sơ đồ mô tả quá trình khai phá dữ liệu Các kĩ thuật khai phá dữ liệu được chia thành hai nhóm chính, nhóm dự báo, và nhóm mô tả. Trong nhóm dự báo gồm một số kỹ thuật chính là phân loại, hồi quy, phân tích loạt thời gian, cây quyết định, mạng neural. Nhóm này có tên gọi như vậy vì các kỹ thuật này sẽ có khả năng dự báo tính chất của một tập dữ liệu sau khi hệ thống đã được huấn luyện với các tập dữ liệu mẫu.
Nhóm thứ hai là nhóm mô tả, gồm có các kỹ thuật chính sau: Gom cụm, Tổng kết, Phát hiện luật kết hợp, Phát hiện trình tự. Nhóm này có tên là mô tả vì sau khi thực hiện kỹ thuật trên tập 6 dữ liệu, hệ thống sẽ đưa ra được các đặc trưng của các tập dữ liệu. Phân loại các kỹ thuật khai phá văn bản được thể hiện trong hình dưới đây. Một số kỹ thuật sẽ được đề cập rõ hơn ở các phần sau.2 Phân loại các kỹ thuật khai phá văn bản 1.2 Khai phá dữ liệu sử dụng cây quyết định 1.1 Khái niệm khai phá dữ liệu sử dụng cây quyết định Cây quyết định: Cây quyết định là một mô tả tri thức dạng đơn giản nhằm phân các đối tượng dữ liệu thành một số lớp nhất định.
Các nút của cây được gán nhãn là tên các thuộc tính, các cạnh được gán các giá trị có thể của các thuộc tính, các lá miêu tả các lớp khác nhau. Các đối tượng được phân lớp theo các đường đi trên cây, qua các cạnh tương ứng với giá trị của thuộc tính của đối tượng tới lá. Hình sau đây mô tả một mẫu đầu ra có thể của quá trình khai phá dữ liệu khách hàng xin vay vốn. Nợ < n Nợ >= n Không cho vay Thu nhập < t Thu nhập >= t Không cho vay Cho vay Hình 1.3 Mẫu kết với phương pháp cây quyết định 7 Cây quyết định là một công cụ mạnh và khá phổ biến trong việc phân loại và dự đoán.
Điều đáng chú ý ở phương pháp dựa trên cây nằm ở chỗ , đối lập với mạng neural, thì cây quyết định thể hiện các luật. Các luật được thể hiện rõ ràng, do đó, con người có thể hiểu chúng thông qua một ngôn ngữ truy cập cơ sở dữ liệu như là SQL, nhờ đó các bản ghi thuộc một chủng loại nhất định sẽ được phát hiện. Quy nạp dùng cây quyết định là một phương pháp quy nạp truyền thống để tìm ra tri thức trên tập phân loại. Các yêu cầu chính để khai phá dữ liệu sử dụng cây quyết định là: • Mô tả giá trị -thuộc tính: đối tượng hoặc trường hợp phải được diễn đạt thành các thuật ngữ hoặc một tập hợp cố định các đặc điểm, thuộc tính.
• Các lớp định trước: Các chủng loại sẽ dùng gán cho các trường hợp phải được thiết lập trước đó (dữ liệu có giám sát). • Các lớp rời rạc: Một trường hợp phải thuộc hoặc không thuộc về một lớp nhất định, và có nhiều trường hợp hơn là số lớp. • Dữ liệu đầy đủ: Thường có quá trình học với hàng trăm hoặc hàng nghìn trường hợp. • Mô hình phân loại “Logical”: Việc phân loại chỉ được thể hiện theo cây quyết định hoặc tập luật.
Tạo luật: Các luật được tạo ra nhằm suy diễn một số mẫu dữ liệu có ý nghĩa về mặt thống kê. Các luật có dạng Nếu P thì Q với P là mệnh đề đúng với phần dữ liệu trong cơ sở dữ liệu, Q là mệnh đề dự đoán. Ví dụ ta có một mẫu phát hiện được bằng phương pháp tạo luật: Nếu giá 1 cân táo thấp hơn 5000 đồng thì số lượng táo bán ra sẽ tăng 5%. Những luật như thế này được sử dụng rất rộng rãi trong việc miêu tả tri thức trong hệ chuyên gia.
Chúng có thuận lợi là dễ hiểu đối với người sử dụng.2 Điểm mạnh của cây quyết định • Dùng cây quyết định có thể tạo ra các luật dễ hiểu. • Cây quyết định sẽ thực hiện việc phân loại mà không đòi hỏi tính toán quá nhiều. • Cây quyết định có thể xử lý cả các biến liên tiếp và các biến theo chủng loại. • Cây quyết định cung cấp một chỉ thị rõ ràng cho khía cạnh nào là quan trọng cho việc dự đoán và phân loại.
Khả năng tạo các luật dễ hiểu: Cây quyết định có thể tạo nên các luật, mà từ đó dễ chuyển thành ngôn ngữ tự nhiên hoặc SQL, và đây chính là điểm mạnh của kỹ thuật này. Thậm chí kể cả khi xuất hiện một vùng phức tạp hoặc một vùng dễ được chia tách thành các miền chữ nhật, dẫn đến cây quyết định bị phức tạp hơn, và lớn hơn, vẫn dễ dàng đi theo từng đường dẫn của cây. Do đó có thể giải thích rõ ràng cho bất kỳ phân lớp hoặc dự báo nào. Khả năng thao tác trên các miền hướng theo luật.
Nghe có vẻ là hiển nhiên, nhưng quy nạp luật nói chung, và cây quyết định nói riêng, là cách lựa chọn tuyệt vời trong khi làm việc với các miền nơi phát hiện ra các luật. Cây quyết định là một lựa chọn tự nhiên khi bạn nghi ngờ có sự hiện diện của các luật ẩn chứa. Dễ dàng tính toán được thời gian phân loại. Một cây quyết định có thể có nhiều dạng, trong thực tế, thuật giải được sử dụng để tạo cây quyết định thường sinh ra các cây với hệ số phân nhánh nhỏ và có kiểm thử đơn giản tại mỗi nút.
Các kiểm thử đặc trưng bao gồm so sánh số học, tập thành viên, và kết nối đơn giản.