Khai phá dữ liệu là gì?

Một phần của tài liệu Bài Giảng Lưu Trữ Và Phân Tích Dữ Liệu (Trang 48 - 51)

Khai phá dữ liệu là quá trình tự động khám phá thông tin hữu ích trong kho dữ liệu lớn. Các kỹ thuật khai phá dữ liệu được triển khai để cố gắng tìm kiếm các tập dữ liệu lớn một cách cẩn thận nhằm tìm ra các mẫu mới và hữu ích mà có thể vẫn chưa được biết đến. Chúng cũng cung cấp khả năng dự đoán kết quả của một quan sát trong tương lai, chẳng hạn như số tiền khách hàng sẽ chi tiêu tại một cửa hảng trực tuyến hoặc cửa hàng thực.

Không phải tất cả các nhiệm vụ tìm thấy thông tin đều được coi là khai thác dữ liệu. Ví dụ bao gồm các truy vấn như tìm kiếm các hồ sơ trên các trang web có chứa một một bộ từ khóa cụ thể. Điều này là do các tác vụ như vậy có thể được thực hiện thông qua các tương tác đơn giản với hệ thống quản lý cơ sở dữ liệu hoặc hệ thống truy xuất thông tin. Các hệ thống này dựa trên các kĩ thuật khoa học máy tính truyền thống, trong đó bao gồm các cấu trúc lập chỉ mục phức tạp và các thuật toán xử lý truy vấn, để tổ chức và truy xuất thông tin từ các kho dữ liệu lớn một cách hiệu quả. Tuy nhiên, các kĩ thuật khai thác dữ liệu đã được sử dụng để nâng cao hiệu suất của các hệ thống như vậy bằng cách cải thiển chất lượng kết quả tìm kiếm dựa trên mức độ liên quan của chúng với các truy vấn đầu vào.

Vào những năm 1990, “khai phá dữ liệu” là một khái niệm thú vị, mới và phổ biến. Vào khoảng năm 2010, thay vào đó, mọi người bắt đầu nói về “dữ liệu lớn”. Ngày nay, thuật ngữ phổ biến là “khoa học dữ liệu”. Tuy nhiên, trong suốt thời gian này, khái niệm vẫn không thay đổi: sử dụng phần cứng mạnh nhất, hệ thống lập trình mạnh mẽ nhất và các thuật toán hiệu quả nhất để giải quyết các vấn đề trong khoa học, thương mại, chăm sóc sức khỏe, chính phủ, nhân văn và nhiều lĩnh vực khác của nỗ lực của con người.

a. Mô hình

Đối với nhiều người, khai phá dữ liệu là quá trình tạo ra một mô hình từ dữ liệu, thường là bằng quá trình học máy. Tuy nhiên, nhìn chung, mục tiêu của khai phá dữ liệu là một thuật toán. Ví dụ: về hàm băm phân biệt cục bộ và một số thuật toán khai thác luồng, không có thuật toán nào liên quan đến mô hình. Tuy nhiên, trong nhiều ứng dụng

quan trọng, phần khó là tạo mô hình và khi mô hình đã có sẵn, thuật toán sử dụng mô hình rất đơn giản, rõ ràng.

Ví dụ a): Xem xét vấn đề phát hiện email bị tấn công lừa đảo. Cách tiếp cận phổ biến nhất là xây dựng một mô hình email lừa đảo, có thể bằng cách kiểm tra các email mà mọi người gần đây đã báo cáo là tấn công lừa đảo và tìm kiếm các từ hoặc cụm từ xuất hiện thường xuyên bất thường trong các email đó, chẳng hạn như “hoàng tử Nigeria” hoặc “xác minh tài khoản”. Mô hình có thể là trọng số đối với các từ, với trọng số dương đối với các từ xuất hiện thường xuyên trong email lừa đảo và trọng số tiêu cực đối với các từ không xuất hiện. Sau đó, thuật toán để phát hiện email lừa đảo rất đơn giản. Áp dụng mô hình cho từng email, nghĩa là tổng trọng số của các từ trong email đó và nói rằng email đó là lừa đảo nếu và chỉ khi tổng là số dương.

b. Mô hình thống kê

Các nhà thống kê là những người đầu tiên sử dụng thuật ngữ “khai phá dữ liệu”.

Ban đầu, “khai phá dữ liệu” hoặc “nạo vét dữ liệu” là một thuật ngữ vi phạm đến quyền lợi đề cập đến các nỗ lực cố gắng trích xuất thông tin không được dữ liệu hỗ trợ. Ngày nay, “khai phá dữ liệu” đã mang một ý nghĩa tích cực. Giờ đây, các nhà thống kê xem khai phá dữ liệu như việc xây dựng một mô hình thống kê, tức là một phân phối cơ bản mà từ đó dữ liệu hiển thị được rút ra.

Ví dụ b): Giả sử dữ liệu của chúng ta là một tập hợp các số. Dữ liệu này đơn giản hơn nhiều so với dữ liệu được khai phá dữ liệu, nhưng nó sẽ dùng làm ví dụ. Một nhà thống kê có thể quyết định rằng dữ liệu đến từ một phân phối Gaussian và sử dụng một công thức để tính toán các tham số khả dĩ nhất của Gaussian này. Giá trị trung bình và độ lệch chuẩn của phân phối Gaussian này hoàn toàn đặc trưng cho phân phối và sẽ trở thành mô hình của dữ liệu.

c. Học máy (ML)

Có một số người coi khai phá dữ liệu đồng nghĩa với học máy. Không nghi ngờ gì rằng một số khai phá dữ liệu sử dụng các thuật toán từ máy học một cách thích hợp.

Các nhà thực nghiệm học máy sử dụng dữ liệu làm tập hợp đào tạo, để đào tạo thuật toán thuộc một trong nhiều loại được sử dụng cho học máy, chẳng hạn như lưới Bayes, máy vectơ hỗ trợ, cây quyết định, mô hình Markov ẩn và rất nhiều mô hình khác. Có những trường hợp sử dụng dữ liệu theo cách này có ý nghĩa. Trường hợp điển hình mà học máy là một cách tiếp cận tốt là khi chúng ta không biết dữ liệu nói gì về vấn đề mà chúng ta đang cố gắng giải quyết. Ví dụ, không rõ điều gì về những bộ phim khiến một số khán giả xem phim thích hay không thích nó. Do đó, khi trả lời "thử thách Netflix"

để đưa ra một thuật toán dự đoán xếp hạng phim của người dùng, dựa trên một mẫu phản hồi của họ, các thuật toán máy học đã tỏ ra khá thành công.

Tuy nhiên, học máy có thể không có tính cạnh tranh trong các trường hợp mà chúng ta có thể mô tả trực tiếp hơn các mục tiêu của việc khai phá. Một trường hợp thú vị là nỗ lực của WhizBang! Một nhóm startup có tên là Labs sử dụng công nghệ học máy để xác định hồ sơ của mọi người trên Web. Nó không thể làm tốt hơn các thuật toán

được thiết kế bằng tay để tìm kiếm một số từ và cụm từ rõ ràng xuất hiện trong sơ yếu lý lịch điển hình. Vì tất cả những ai đã xem hoặc viết sơ yếu lý lịch đều biết khá rõ sơ yếu lý lịch chứa những gì, nên không có gì bí ẩn về điều gì khiến một trang Web trở thành sơ yếu lý lịch. Do đó, không có lợi thế nào để học máy so với việc thiết kế trực tiếp một thuật toán để khám phá sơ yếu lý lịch. Một vấn đề khác với một số phương pháp học máy là chúng thường mang lại một mô hình, mặc dù nó có thể khá chính xác, nhưng không thể giải thích được. Trong một số trường hợp, khả năng giải thích là không quan trọng. Ví dụ: nếu bạn hỏi Google tại sao nó lại phân loại một gmail là spam, nó thường trả lời đại loại như “có vẻ như các thư khác mà mọi người đã xác định là spam”.

Tức là, email phù hợp với bất kỳ mô hình thư rác nào mà Google đã phát triển ngày đó, chắc chắn là sử dụng một kỹ thuật từ kho thuật toán máy học. Lời giải thích đó có lẽ là thỏa đáng. Chúng tôi thực sự không quan tâm đến những gì Google làm, miễn là Google đưa ra quyết định spam/không spam chính xác. Mặt khác, hãy xem xét một công ty bảo hiểm ô tô tạo ra một mô hình rủi ro liên quan đến mỗi người lái xe và ấn định phí bảo hiểm khác nhau cho mỗi người, theo mô hình đó. Nếu phí bảo hiểm của bạn tăng lên, bạn có thể muốn được giải thích về những gì mô hình mới đang hoạt động và lý do tại sao nó thay đổi ước tính rủi ro của bạn. Thật không may, trong nhiều phương pháp học máy, đặc biệt là “học sâu”, trong đó mô hình liên quan đến lớp trên lớp các phần tử nhỏ, mỗi phần tử đưa ra quyết định dựa trên đầu vào từ lớp trước, có thể không đưa ra được lời giải thích mạch lạc về những gì mô hình đang làm.

d. Các phương pháp tiếp cận tính toán để lập mô hình

Ngược lại với cách tiếp cận thống kê, các nhà khoa học máy tính có xu hướng xem việc khai phá dữ liệu như một bài toán thuật toán. Trong trường hợp này, một mô hình dữ liệu chỉ đơn giản là câu trả lời cho một truy vấn phức tạp về dữ liệu đó. Ví dụ:

với tập hợp các số của Ví dụ b), có thể tính toán trung bình và độ lệch chuẩn của chúng.

Lưu ý rằng các giá trị này có thể không phải là các tham số của Gaussian phù hợp nhất với dữ liệu, mặc dù chúng gần như chắc chắn sẽ rất gần nhau nếu kích thước của dữ liệu lớn và nguồn dữ liệu thực sự là Gaussian. Có nhiều cách tiếp cận khác nhau để mô hình hóa dữ liệu. Chúng tôi đã đề cập đến khả năng xây dựng một quy trình ngẫu nhiên theo đó dữ liệu có thể được tạo ra. Hầu hết các cách tiếp cận khác để lập mô hình có thể được mô tả là

1. Tóm tắt dữ liệu một cách ngắn gọn và gần đúng, hoặc

2. Trích xuất các tính năng nổi bật nhất của dữ liệu và bỏ qua phần còn lại.

e. Tóm tắt

Một trong những hình thức tóm tắt thú vị nhất là ý tưởngPageRank, đã làm nên thành công của Google. Trong hình thức khai thác Web này, toàn bộ cấu trúc phức tạp của Web được tóm tắt bằng một số duy nhất cho mỗi trang. Con số này, “PageRank”

của trang, là (đơn giản hóa đôi chút) xác suất mà một người đi bộ ngẫu nhiên trên biểu đồ sẽ ở trang đó vào bất kỳ thời điểm nào. Đáng chú ý, xếp hạng này phản ánh rất rõ

“tầm quan trọng” của trang - mức độ mà những người tìm kiếm điển hình muốn trang

đó trả lại như một câu trả lời cho truy vấn tìm kiếm của họ. Một dạng tóm tắt quan trọng khác là phân cụm. Ở đây, dữ liệu được xem như các điểm trong không gian đa chiều.

Các điểm “gần” trong không gian này được gán cho cùng một cụm. Bản thân các cụm được tóm tắt, có lẽ bằng cách cho biết tâm của cụm và khoảng cách trung bình từ tâm của các điểm trong cụm. Các tóm tắt cụm này sau đó trở thành tóm tắt của toàn bộ tập dữ liệu.

f. Trích xuất đặc trưng

Mô hình dựa trên đặc điểm điển hình tìm kiếm các ví dụ điển hình nhất của một hiện tượng và thể hiện dữ liệu bằng các ví dụ này. Nếu bạn đã quen thuộc với lưới Bayes, một nhánh của học máy và chủ đề mà chúng tôi không đề cập trong cuốn sách này, bạn sẽ biết mối quan hệ phức tạp giữa các đối tượng được thể hiện như thế nào bằng cách tìm ra các phụ thuộc thống kê mạnh nhất giữa các đối tượng này và chỉ sử dụng những đối tượng đó để đại diện cho tất cả kết nối thống kê. Một số loại trích xuất đối tượng địa lý quan trọng từ dữ liệu quy mô lớn sẽ nghiên cứu là:

1. Các Tập hợp thường xuyên. Mô hình này có ý nghĩa đối với dữ liệu bao gồm

“giỏ” các nhóm mặt hàng nhỏ, như trong vấn đề giỏ thị trường mà chúng ta sẽ thảo luận trong ví dụ phần tiếp theo. Chúng tôi tìm kiếm các nhóm mặt hàng nhỏ xuất hiện cùng nhau trong nhiều giỏ, và những “tập phổ biến”là đặc điểm của dữ liệu mà chúng tôi tìm kiếm. Ứng dụng ban đầu của kiểu khai phá này là những chiếc giỏ đi chợ thực sự: những bộ mặt hàng, chẳng hạn như bánh hamburger và tương cà, mà mọi người có xu hướng mua cùng nhau khi thanh toán tại quầy thu ngân của một cửa hàng hoặc siêu thị.

2. Mục Tương tự. Thông thường, dữ liệu của bạn trông giống như một tập hợp các tập hợp và mục tiêu là tìm các cặp tập hợp có điểm chung tương đối lớn trong số các phần tử của chúng. Một ví dụ là coi khách hàng tại một cửa hàng trực tuyến như Amazon là tập hợp các mặt hàng họ đã mua. Để Amazon giới thiệu thứ khác mà họ có thể thích, Amazon có thể tìm kiếm những khách hàng “tương tự” và giới thiệu thứ mà nhiều khách hàng này đã mua. Quá trình này được gọi là “lọc cộng tác”. Nếu khách hàng có quan điểm duy nhất, tức là họ chỉ mua một loại thứ, thì việc phân nhóm khách hàng có thể hiệu quả. Tuy nhiên, vì khách hàng có xu hướng quan tâm đến nhiều thứ khác nhau, nên sẽ hữu ích hơn nếu tìm kiếm một số lượng nhỏ khách hàng khác có cùng sở thích với họ và đại diện cho dữ liệu bằng các kết nối này.

Một phần của tài liệu Bài Giảng Lưu Trữ Và Phân Tích Dữ Liệu (Trang 48 - 51)

Tải bản đầy đủ (PDF)

(199 trang)