Data Mining
Khai phá dữ liệu tìm kiếm mẫu, mối liên hệ, cụm và điểm bất thường trong các tập dữ liệu lớn bằng thống kê và machine learning; đây là bước phân tích trong KDD.
Khai phá dữ liệu là quá trình khám phá các mẫu hữu ích trong tập dữ liệu lớn, chẳng hạn các mục thường xuất hiện cùng nhau, nhóm tự nhiên, quy tắc dự đoán và bản ghi bất thường, bằng cách sử dụng thống kê, machine learning và kỹ thuật cơ sở dữ liệu. Theo định nghĩa chính thức, khai phá dữ liệu là bước phân tích trong quy trình khám phá tri thức trong cơ sở dữ liệu (KDD), được Usama Fayyad, Gregory Piatetsky-Shapiro và Padhraic Smyth mô tả năm 1996 như một chuỗi gồm chọn lọc dữ liệu, tiền xử lý dữ liệu, chuyển đổi, khai phá và diễn giải kết quả.
Quy trình khai phá dữ liệu#
Mô hình quy trình được sử dụng rộng rãi là CRISP-DM, Quy trình chuẩn liên ngành về khai phá dữ liệu, lần đầu được một liên minh gồm Teradata, Daimler và NCR giới thiệu năm 1999. Sáu giai đoạn của quy trình được lặp lại khi một giai đoạn sau phát hiện thiếu sót ở giai đoạn trước:
Chuẩn bị dữ liệu, bao gồm làm sạch dữ liệu, kết hợp các nguồn và feature engineering, thường là giai đoạn dài nhất; quá trình xây dựng model sẽ đưa team quay lại bước này khi phát hiện một mẫu chỉ là hệ quả của các bản ghi bị thiếu hoặc trùng lặp.
Các kỹ thuật cốt lõi#
- Học luật kết hợp: Tìm các mục hoặc sự kiện thường xuất hiện cùng nhau, như trong phân tích giỏ hàng. Thuật toán Apriori của Rakesh Agrawal và Ramakrishnan Srikant năm 1994 giúp áp dụng kỹ thuật này vào các cơ sở dữ liệu giao dịch lớn.
- Phân cụm bằng k-means hoặc DBSCAN: Nhóm các bản ghi tương tự mà không cần nhãn, chẳng hạn phân khúc khách hàng hoặc nhóm hình ảnh tương tự, như một hình thức học không giám sát.
- Phân loại bằng cây quyết định: Học các quy tắc để gán bản ghi vào các danh mục đã biết, chẳng hạn chấp thuận hoặc đánh dấu hồ sơ vay, dựa trên dữ liệu lịch sử đã gán nhãn.
- Phát hiện bất thường: Đánh dấu các bản ghi khác biệt rõ rệt so với phần còn lại, chẳng hạn giao dịch thẻ gian lận hoặc máy móc có chỉ số cảm biến lệch khỏi mức bình thường.
- Khai phá mẫu tuần tự: Tìm các mẫu có thứ tự, chẳng hạn đường dẫn trang thường dẫn đến giao dịch mua hàng nhất.
Luật kết hợp được đánh giá bằng ba chỉ số. Support là tỷ lệ giao dịch chứa cả hai mục, confidence là tỷ lệ giao dịch có mục A đồng thời chứa mục B, còn lift lấy confidence chia cho mức độ phổ biến riêng của B; vì vậy lift lớn hơn 1 nghĩa là A và B xuất hiện cùng nhau thường xuyên hơn mức ngẫu nhiên dự đoán. Ví dụ này tính điểm cho mọi cặp sản phẩm trong tám giỏ hàng bằng pandas:
from itertools import permutations
import pandas as pd
# Eight shopping baskets, one column per product
baskets = pd.DataFrame(
[[1, 1, 0, 1], [1, 1, 0, 0], [0, 1, 1, 0], [1, 1, 1, 1], [1, 0, 0, 1], [0, 0, 1, 0], [1, 1, 0, 1], [0, 1, 1, 0]],
columns=["bread", "butter", "milk", "jam"],
).astype(bool)
# Score every rule "A -> B" and keep frequent rules that beat chance
for a, b in permutations(baskets.columns, 2):
support = (baskets[a] & baskets[b]).mean() # share of baskets with both items
confidence = support / baskets[a].mean() # share of A baskets that also hold B
lift = confidence / baskets[b].mean() # confidence relative to B's base rate
if support >= 0.25 and lift > 1:
print(f"{a} -> {b}: support {support:.2f}, confidence {confidence:.2f}, lift {lift:.2f}")Kết quả in ra bốn luật. Luật bánh mì → bơ có confidence cao, ở mức 0.80, nhưng lift chỉ là 1.07 vì bơ vốn đã có trong ba trên bốn giỏ hàng; trong khi đó, luật bánh mì → mứt có cùng confidence nhưng lift là 1.60. Luật sữa → bơ có confidence 0.75 và lift chính xác bằng 1.00, nên bị bộ lọc loại bỏ.
Khai phá dữ liệu trong Thị giác máy tính#
Các bộ sưu tập hình ảnh và video được khai thác để tìm ví dụ quan trọng nhất đối với model. Khai thác hard negative chọn các vùng nền mà detector chấm nhầm là object rồi dùng chúng để huấn luyện lại; học chủ động khai thác các tập dữ liệu chưa gán nhãn để tìm những hình ảnh mà model ít chắc chắn nhất. Khai thác log phát hiện của hệ thống đã triển khai cho thấy các loại lỗi lặp lại trên dây chuyền sản xuất hoặc giờ cao điểm trong cửa hàng; còn embedding giúp team phân cụm hàng triệu hình ảnh theo nội dung để tìm bản trùng lặp và khoảng trống dữ liệu.
Ultralytics Platform khai thác tập dữ liệu theo cách này bằng bảng Clustering, tính embedding cho từng hình ảnh rồi chiếu tập dữ liệu thành biểu đồ phân tán 2D tương tác, trong đó các hình ảnh tương tự về mặt thị giác nằm gần nhau; nhờ vậy người dùng có thể tô màu điểm theo split, class hoặc cluster, phát hiện bản trùng lặp và điểm ngoại lai, đồng thời khoanh vùng để kiểm tra, gán nhãn lại hoặc di chuyển các hình ảnh đó.
Khai phá dữ liệu và các thuật ngữ liên quan#
- Machine learning: Xây dựng các model có khả năng khái quát hóa cho dữ liệu mới. Khai phá dữ liệu áp dụng nhiều thuật toán tương tự nhưng nhằm mô tả các mẫu trong dữ liệu hiện có.
- Phân tích dữ liệu: Hoạt động rộng hơn nhằm trả lời câu hỏi bằng dữ liệu, bao gồm khai phá dữ liệu, báo cáo và diễn giải.
- Trực quan hóa dữ liệu: Trình bày dữ liệu và các mẫu được khai phá bằng đồ họa để mọi người có thể đọc hiểu.
- Web scraping: Thu thập dữ liệu từ website. Trong cách dùng phổ biến, thuật ngữ này đôi khi được gọi là khai phá dữ liệu, nhưng theo nghĩa kỹ thuật, khai phá là bước phân tích diễn ra sau khi thu thập.










