CHƯƠNG 1: GIỚI THIỆU VỀ KHAI PHÁ DỮ LIỆU 1. Tổng quan về khai thác dữ liệu 1. Khái niệm Khai thác dữ liệu là một khái niệm ra đời vào những năm cuối của thập kỷ 80, nó là quá trình tìm kiếm, khám phá d ưới nhiều góc độ khác nhau nhằm phát hiện các mối liên hệ, quan hệ giữa các dữ liệu, đối tượng bên trong CSDL, kết quả của việc khai phá là xác định các mẫu hay các mô hình tồn tại bên trong nhưng chúng nằm ẩn ở các CSDL. Về bản chất nó là giai đoạn duy nhất rút trích và tìm ra được các mẫu, các mô hình h ay thông tin mới, tri thức tiềm ẩn có trong CSDL chủ yếu phục vụ cho mô tả và dự đoán.
Đây là giai đoạn quan trọng nhất trong quá trình phát hiện tri thức từ CSDL, các tri thức này hỗ trợ trong việc ra quyết định, điều hành trong khoa học và kinh doanh. Khai thác dữ liệu là tiến trình khám phá tri thức tiềm ẩn trong các CSDL, cụ thể hơn, đó là tiến trình lọc, sản sinh những tri thức hoặc các mẫu tiềm ẩn, chưa biết những thông tin hữu ích từ các CSDL lớn. Khai thác dữ liệu có những điểm khác nhau về mặt ngữ nghĩa so với phát hiện tri thức từ cơ sở dữ liệu nhưng thực tế ta thấy khai thác dữ liệu là chỉ một giai đoạn phát hiện tri thức trong một chuỗi các giai đoạn quá trình phát hiện tri thức trong cơ sở dữ liệu. Tuy nhiên đây là giai đoạn đóng vai trò chủ chốt và là giai đoạn chính tạo nên tính đa ngành của phát hiện tri thức trong cơ sở dữ liệu.
Các kỹ thuật khai thác dữ liệu Kỹ thuật khai thác dữ liệu thường được chia làm 2 nhóm chính: + Kỹ thuật khai thác dữ liệu mô tả Có nhiệm vụ mô tả về các tính chất hoặc các đặc tính chung của dữ liệu trong CSDL hiện có. Các kỹ thuật này gồm có: Phân cụm (clustering), tóm tắt (summerization), trực quan hoá (visualiztion), phân tích sự phát triển và độ lệch (Evolution and deviation analyst), phân tích luật kết hợp (association rules). + Kỹ thuật khai thác dữ liệu dự đoán 6 Có nhiệm vụ đưa ra các dự đoán dựa vào các suy diễn trên dữ liệu hiện thời. Các kỹ thuật này gồm có: Phân lớp (classification), hồi quy (regression)… 1.
Quá trình khai thác dữ liệu Các cơ sở dữ liệu thu được thường chứa rất nhiều thuộc tính nhưng lại không đầy đủ, không thuần nhất, có nhiều lỗi và các giá trị đặc biệt. Vì vậy giai đoạn thu thập và tiền xử lý dữ liệu trở nên rất quan trọng trong quá trình phát hiện tri thức từ cơ sở dữ liệu. Có thể nói giai đoạn này chiếm từ 70%-80% giá thành trong toàn bộ bài toán. Người ta chia giai đoạn và tiền xử lý dữ liệu như: Gom dữ liệu, chọn dữ liệu, làm sạch, mã hoá dữ liệu, làm giàu, đánh giá và trình diễn dữ liệu.
Các công đoạn này được thực hiện theo trình tự nhất định cụ thể như sau: Đánh giá & trình diễn Mã hoá DL Làm giàu DL Làm sạch DL Knowledge Chọn lọc DL Pattern Gom DL Discovery Transforme Cleansed d Data Preprocessed Internet,. Data Data Hình 1. Quá trình khai thác dữ liệu Gom dữ liệu Tập hợp dữ liệu là bước đầu tiên trong quá trình khai thác dữ liệu. Đây là bước được khai thác trong một cơ sở dữ liệu, một kho dữ liệu và thậm chí các dữ liệu từ các 7 nguồn ứng dụng Web.
Chọn lọc dữ liệu Ở giai đoạn này dữ liệu được lựa chọn hoặc phân chia theo một số tiêu chuẩn nào đó. Đây là giai đoạn chọn lọc, trích rút các dữ liệu cần thiết tứ cơ sở dữ liệu tác nghiệp vào một cơ sở dữ liệu riêng. Chúng ta chọn ra những dữ liệu cần thiết cho các giai đoạn sau. Tuy nhiên công việc thu gom dữ liệu vào một cơ sở dữ liệu thường rất kho khăn vì dữ liệu nằm rải rác khắp nơi trong cơ quan, tổ chức cùng một loại thông tin, nhưng được tạo lập theo các dạng hình thức khác nhau.
Ví dụ nơi này dùng kiểu chuỗi, nơi kia lại dùng kiểu số để khai báo một thuộc tính nào đó của khách hàng. Đồng thời chất lượng dữ liệu của các nơi cũng không giống nhau. Vì vậy chúng ta cần chọn lọc dữ liệu thật tốt để chuyển sang giai đoạn tiếp theo Làm sạch Giai đoan thứ ba này là giai đoạn hay bị sao lãng, nhưng thực tế nó là một bước rất quan trọng trong quá trình khai thác dữ liệu. Một số lỗi thường mắc phải trong khi gom dữ liệu là tính không đủ chặt chẻ, logíc.
Vì vậy, dữ liệu thường chứa các giá trị vô nghĩa và không có khả năng kết nối dữ liệu. Giai đoạn này sẽ tiến hành xử lý những dạng dữ liệu không chặt chẽ nói trên. Những dữ liệu dạng này được xem như thông tin dư thừa, không có giá trị. Bởi vậy, đây là một quá trình rất quan trọng vì dữ liệu này nếu không được “làm sạch - tiền xử lý - chuẩn bị trước” thì sẽ gây nên những kết quả sai lệch nghiệm trọng.
Giai đoạn này thực hiện một số chức năng sau: - Nhất quán dữ liệu: Công việc này nhằm giảm bớt tính không nhất quán dữ liệu lấy từ nhiều nguồn khác nhau. Phương pháp thông thường là khử các trường hợp trùng lặp dữ liệu và thống nhất các ký hiệu. Ví dụ một khách hàng có thể có nhiều bản ghi do việc nhập sai tên hoặc do quá trình thay đổi một số thông tin cá nhân gây ra và tạo ra sự nhầm lẫn là có nhiều khách hàng. - Xử lý các giá trị khuyết: Tính không đầy đủ của dữ liệu có thế gây ra hiện tượng dữ liệu chứa các giá trị khuyết.
Đây là hiện tượng khá phổ biến. Người ta sử dụng nhiều phương pháp khác nhau để xứ lý các giá trị khuyết như: Bỏ qua các bộ có giá trị 8 khuyết, điểm bổ sung bằng tay, dùng một hằng chung để bổ sung vào giá trị khuyết, dùng giá trị trung bình của mọi bản ghi trên thuộc tinh khuyết, dùng giá trị trung bình của mọi bản ghi cùng lớp hoặc dùng các giá trị mà tần suất xuất hiện lớn nhất. - Xử lý nhiễu và các ngoại lệ: Thông thường nhiễu dữ liệu có thể là nhiễu ngẫu nhiên hoặc các giá trị bất bình thường. Để làm sạch nhiễu, người ta có thể sử dụng phương pháp làm trơn nhiễu hoặc dùng các giải thuật phát hiện ra các ngoại lệ để xử lý.
Làm giàu dữ liệu Mục đích của giai đoạn này là bổ sung thêm nhiều loại thông tin có liên quan vào cơ sở dữ liệu gốc. Để làm được điêu này, chúng ta phải có các cơ sở dữ liệu khác ở bên ngoài có liên quan tới cơ sở dữ liệu gốc ban đầu. Ta tiến hành bổ sung những thông tin cần thiết, làm tăng khả năng khám phá tri thức. Đây là bước mang tính tư duy trong khai thác dữ liệu.Ở giai đoạn này nhiều thuật toán khác nhau đã được sử dụng để trích ra các mẫu từ dữ liệu.
Thuật toán thường dùng là nguyên tắc phân loại, nguyên tắc kết hợp hoặc các mô hình dữ liệu tuần tự, v. Quá trình làm giàu bao gồm việc tích hợp và chuyển đổi dữ liệu. Các dữ liệu từ nhiều nguồn khác nhau được tích hợp thành một kho thông nhất. Các khuôn dạng khác nhau của dữ liệu cũng được quy đổi, tính toán lại để đưa về một kiểu thống nhất, tiện cho quá trình phân tích.
Mã hoá dữ liệu Tiếp theo là giai đoạn chuyển đổi dữ liệu, dữ liệu đưa ra có thể sử dụng và điều khiển được bởi việc tổ chức lại nó. Dữ liệu đã được chuyển đổi phù hợp với mục đích khai thác. Mục đích của giai đoạn này là chuyển đổi kiểu dữ liệu về những dạng thuật tiện để tiến hành các thuật toán khám phá dữ liệu. Có nhiều cách mã hoá dữ liệu như: - Phân vùng: Dữ liệu là giá trị chuỗi, nằm trong các tập các chuỗi cố đinh.
- Biến đổi giá trị năm thành con số nguyên là số năm đã trôi qua so với năm hiện hành. - Chia giá trị số theo một hệ số để tập các giá trị nằm trong vùng nhỏ hơn. 9 - Chuyển đổi Yes-No thành 0-1. Đánh giá và trình diễn Đây là giai đoạn cuối trong quá trình khai thác dữ liệu.Ở giai đoạn này, các mẫu dữ liệu được chiết xuất ra bởi phần mềm khai thác dữ liệu.
Không phải bất cứ mẫu dữ liệu nào cũng đều hữu ích, đôi khi nó còn bị sai lệch. Vì vậy, cần phải ưu tiên những tiêu chuẩn đánh giá để chiết xuất ra các tri thức cần chiết xuất ra. Nhiêm vụ chính của khai thác dữ liệu Rõ ràng rằng mục đích của khai thác dữ liệu là các tri thức chiết xuất được sẽ được sử dụng cho lợi ích cạnh tranh trên thương trường và các lợi ích trong nghiên cứu khoa học. Do đó, ta có thể coi mục đích chính của khai thác dữ liệu sẽ là mô tả và dự đoán.
Các mẫu mà khai thác dữ liệu phát hiện được nhằm vào mục đích này. Dự đoán liên quan đến việc sử dụng các biến hoặc các trường trong cơ sở dữ liệu để chiết xuất ra các mẫu là các dự đoán những giá trị chưa biết hoặc những giá trị trong tương lai của các biến đáng quan tâm. Mô tả tập trung vào việc tìm kiếm các mẫu mô tả dữ liệu mà con người có thể hiểu được. Để đạt được hai mục đích này, nhiệm vụ chính của khai thác dữ liệu là: - Phân lớp (Classification).
- Mô hình ràng buộc (Dependency modeling). - Dò tìm biến đổi và độ lệch (Change and Deviation Dectection). Phân lớp (Classification) Phân lớp là việc phân loại một mẫu dữ liệu vào một trong số các lớp đã xác định. Mục tiêu của thuật toán phân lớp là tìm ra các mối quan hệ nào đó giữa các thuộc tính dự báo và thuộc tính phân lớp, từ đó sử dụng mối quan hệ này để dự báo lớp cho các bộ dữ liệu mới khác cùng khuông dạng.
10 Hồi quy (Regression) Hồi quy là việc l ọc một hàm ánh xạ từ một mẫu dữ liệu thành một biến dự đoán có giá trị thực. Có rất nhiều ứng dụng khai thác dữ liệu với nhiệm vụ hồi quy, ví dụ như biết các phép đo vi sóng từ xa, đánh giá khả năng tử vong của bệnh nhân biết các kết quả xét nghiệm chẩn đoán, dự đoán nhu cầu tiêu thụ một sản phẩm mới bằng một hàm chỉ tiêu quảng cáo, v. Gom nhóm (Clustering) Là việc mô tả chung để tìm ra các tập xác định các nhóm hay các loại để mô tả dữ liệu.