Một ví dụ hay được sử dụng là là việc khai thác vàng từ đá và cát, Dataming được ví như công việc "Đãi cát tìm vàng" trong một tập hợp lớn các dữ liệu cho trước.. - Hiểu được UnderStandi
Trang 1Chương 1
TỔNG QUAN VỀ KHAI PHÁ DỮ LIỆU
Lý thuyết/Thảo luận/Tự nghiên cứu: 20/25/45
TÀI LIỆU THAM KHẢO
[1] Jiawei Han and Micheline Kamber (2006) Data Mining, Concept and Techniques Second Edition Jim Grey, MS Research,
Morgan Kaufmann Publisher
[2] Rajendra Arvind Akerkar and Priti Srinivas Sajja (2010) Knowledge-Based Systems Jones and Bartlett Publisher.
[3] Hà Quang Thụy (2011.) Giáo trình Khai Phá Dữ liệu Web Nhà Xuất bản Giáo dục Việt Nam
[4] Đỗ Thanh Nghị (2011) Khai mỏ dữ liệu Nhà xuất bản Đại học Cần Thơ
[5] Nguyễn Quang Hoan (2007) Trí tuệ nhân tạo: hệ học, mạng nơ ron nhân tạo Học viện Công nghệ Bưu chính Viễn thông [6] Hoàng Kiếm (2007) Các hệ cơ sở tri thức Nhà xuất bản Đại học Quốc gia Tp Hồ Chí Minh
1.1 GIỚI THIỆU VỀ KHAI PHÁ DỮ LIỆU
1.1.1 Tại sao lại cần khai phá dữ liệu
Khoảng hơn một thập kỷ trở lại đây, lượng thông tin được lưu trữ trên các thiết bị điện tử (đĩa cứng, CD-ROM, băng từ v.v…) không ngừng tăng lên Sự tích lũy dữ liệu này xảy ra với một tốc độ bùng nổ Theo đánh giá của IBM, các phương pháp khai thác thông tin truyền thống chỉ thu được khoảng 80% thông tin từ CSDL, phần còn lại bao gồm các thông tin mang
tính khái quát, thông tin có quy luật vẫn đang còn tiềm ẩn bên trong dữ liệu Lượng
thông tin này tuy nhỏ nhưng là thông tin cốt lõi và cần thiết cho tiến trình ra quyết định
Trang 2Theo J Han [1] “Ngập tràn thông tin mà thiếu tri thức”.
Người ta ước đoán rằng lượng thông tin trên toàn cầu tăng gấp đôi sau khoảng hai năm và theo đó số lượng cũng như kích cỡ của các
cơ sở dữ liệu (CSDL) cũng tăng lên một cách nhanh chóng
Câu hỏi đặt ra là liệu chúng ta có thể khai thác được gì từ những “núi” dữ liệu tưởng chừng như “bỏ đi” ấy không? “Necessity is themother of invention” - Data Mining ra đời như một hướng giải quyết hữu hiệu cho câu hỏi vừa đặt ra ở trên
1.1.2 Dữ liệu, Thông tin, Tri thức, Uyên thâm
Dữ liệu, thông tin, tri thức là gì? mối quan hệ giữa chúng?
a) Dữ liệu (NHÓM BIÊN SOẠN ĐIỀN BÀI GIẢNG VÀO CHO ĐỦ)
+Khái niệm dữ liệu1: hằng+biến
Khái niệm dữ liệu2: nguyên liệu thô
Khái niệm dữ liệu 3:
+ Độ đo dữ liệu? Byte
Trang 3- Khác
d) Uyên thâm (Wisdom)
Trang 4Dữ liệu ở mức độ trừu tượng thấp nhất
và cụ thể nhất, thông tin ở mức trên dữ
liệu và tri thức ở mức cao nhất
đạc, thu thập từ các đối tượng Cụ thể, dữ liệu là
giá trị (values) của các thuộc tính (features) của các
đối tượng, được biểu diễn bằng dãy các bits, các con số hay ký hiệu…
tích hợp, như quan hệ
giữa các sự kiện, giữa
các thông tin thu được
phát hiện hoặc học tập
ý nghĩa data ( equiped with
dư thừa, tìm ra phần cốt lõi đặc trưng cho dữ liệu
Trang 51.1.3 Khai phá dữ liệu là gì? Các khái niệm
Khá nhiều định nghĩa về Data Mining và sẽ được đề cập ở phần sau, tuy nhiên cóthể tạm hiểu rằng Data Mining như là một công nghệ tri thức giúp khai thác nhữngthông tin hữu ích từ những kho dữ liệu được tích trữ trong suốt quá trình hoạt độngcủa một công ty, tổ chức nào đó
Khái niệm: Khai phá dữ liệu (Datamining) là một quá trình chắt lọc hay khai phá
tri thức từ một lượng lớn dữ liệu Thuật ngữ Datamining ám chỉ việc tìm kiếm mộttập hợp nhỏ có giá trị từ một số lượng lớn các dữ liệu thô
Một ví dụ hay được sử dụng là là việc khai thác vàng từ đá và cát, Dataming được
ví như công việc "Đãi cát tìm vàng" trong một tập hợp lớn các dữ liệu cho trước
Có nhiều thuật ngữ hiện được dùng cũng có nghĩa tương tự với từ Datamining như
Knowledge Discovery in Database: KDD hoặc Knowledge Mining (khai phá tri thức), knowledge Extraction (chắt lọc tri thức), Data/Patern Analysis (phân tích dữ liệu/mẫu), Data Archaeoloogy (khảo cổ dữ liệu), Datadredging (nạo vét dữ liệu)
Khái niệm KDD([3] trang:11-13): Phát hiện tri thức trong CSDL:KDD là một quá
trình không tầm thường ra những mẫu có giá trị, mới, hữu ích tiềm năng, hiểuđược trong dữ liệu
- Dữ liệu (Data): E tập các bản ghi (ví dụ 23 khách hàng, 3 trường: SỐ NỢ,
THU NHẬP, TÌNH TRẠNG VAY NỢ)
- Mẫu: (Pattern): Người ta sử dụng 1 ngôn ngữ (Langguage: L) để biểu diễn các
tập dữ liệu (sự kiện) con FE Ví dụ trên F, trong ngôn ngữ L có biểu thức “THUNHẬP<T (T là một giá trị trong miền THU NHẬP), NHẬN ĐƯỢC TẤT CẢCÁC GIÁ TRỊ GỌN HƠN liệt kê các trường hợp thỏa điều kiện
- Không tầm thường: nhiều bước (theo thời gian), lặp lại (có thể sông song để
chỉ không gian) mà còn thể hiện tính hiện đại tính công nghệ: Tự động hóa.
- Có giá trị: (không phải hữu ích) Mức độ chân thật của dữ liệu Để xác định
mức có giá trị: dùng hàm đo Mc với
c=C(E, F)
- Tính mới (New) Có thể đo MN được bằng hàm kỳ vọng (trung bình sác xuất).Tổng quát:
n=N(E, F)
Trang 6- Hiểu được (UnderStanding) Có thể đo được bằng hàm MS
Định nghĩa 3: Khai phá dữ liệu là một tập hợp các kỹ thuật được sử dụng để tự
động khai thác và tìm ra các mối quan hệ lẫn nhau của dữ liệu trong một tập hợp
dữ liệu khổng lồ và phức tạp, đồng thời cũng tìm ra các mẫu tiềm ẩn trong tập dữ
Trang 7Hình 1 Phác thảo quá trình
Quá trình phân tích dữ liệu, khám phá dữ liệu và xây dựng mô hình dữ liệu thường lặp lạikhi bạn tập trung vào và nhận ra các thông tin khác nhau để bạn có thể trích ra Bạn cũngphải hiểu cách thiết lập quan hệ, ánh xạ, kết hợp và phân cụm thông tin đó với dữ liệukhác để tạo ra kết quả Quá trình nhận ra dữ liệu nguồn và các định dạng nguồn, rồi ánh xạthông tin đó tới kết quả đã cho của chúng tôi có thể thay đổi sau khi bạn phát hiện ra cácyếu tố và các khía cạnh khác nhau của dữ liệu
Khai phá tri thức được xem như 7 quá trình khác nhau, trong đó khai phá dữ liệu là một bước trong bảy bước của quá trình KDD ([1] trang 6,7)
1 Làm sạch dữ liệu (data cleaning & preprocessing)s: Loại bỏ nhiễu và các dữ liệu khôngcần thiết
2 Tích hợp dữ liệu: (data integration): quá trình hợp nhất dữ liệu thành những kho dữ liệu(data warehouses & data marts) sau khi đã làm sạch và tiền xử lý (data cleaning &preprocessing)
3 Trích chọn dữ liệu (data selection): trích chọn dữ liệu từ những kho dữ liệu và sau đóchuyển đổi về dạng thích hợp cho quá trình khai thác tri thức Quá trình này bao gồm cảviệc xử lý với dữ liệu nhiễu (noisy data), dữ liệu không đầy đủ (incomplete data) v.v…
Trang 84 Chuyển đổi dữ liệu: Các dữ liệu được chuyển đổi sang các dạng phù hợp cho quá trình
Hình ? - Các bước trong Data Mining & KDD
Các nguyên tắc khai phá dữ liệu đã được dùng nhiều năm, nhưng với sự ra đời của Big Data (dữ liệu lớn) làm nó phổ biến hơn Big data gây ra một sự bùng nổ về sử dụng nhiều
kỹ thuật khai phá dữ liệu hơn, một phần vì kích thước thông tin lớn hơn rất nhiều và vìthông tin có xu hướng đa dạng và mở rộng hơn về chính bản chất và nội dung của nó Vớicác tập hợp dữ liệu lớn, để nhận được số liệu thống kê tương đối đơn giản và dễ dàngtrong hệ thống vẫn chưa đủ Với 30 hoặc 40 triệu bản ghi thông tin khách hàng chi tiết,việc biết rằng 2 triệu khách hàng trong số đó sống tại một địa điểm vẫn chưa đủ Bạnmuốn biết liệu 2 triệu khách hàng đó có thuộc về một nhóm tuổi cụ thể không và bạn cũngmuốn biết thu nhập trung bình của họ để bạn có thể tập trung vào các nhu cầu của kháchhàng của mình tốt hơn
1.3 CÁC CHỨC NĂNG VÀ KỸ THUẬT KHAI PHÁ DỮ LIỆU
Khai phá dữ liệu không phải là tất cả về các công cụ hay phần mềm cơ sở dữ liệu mà bạnđang sử dụng Bạn có thể thực hiện khai phá dữ liệu bằng các hệ thống cơ sở dữ liệu bìnhthường và các công cụ đơn giản, bao gồm việc tạo và viết phần mềm riêng của bạn hoặc
sử dụng các gói phần mềm bán ngoài cửa hàng Khai phá dữ liệu phức tạp được hưởng lợi
từ kinh nghiệm trong quá khứ và các thuật toán đã định nghĩa với phần mềm và các góiphần mềm hiện có, với các công cụ nhất định để thu được một mối quan hệ hoặc uy tín lớnhơn bằng các kỹ thuật khác nhau
Ví dụ, IBM SPSS®, có nguồn gốc từ việc phân tích thống kê và khảo sát, có thể xây dựngcác mô hình dự báo hiệu quả bằng cách xem xét các xu hướng trong quá khứ và xây dựngcác dự báo chính xác IBM InfoSphere® Warehouse cung cấp thông tin tìm nguồn cấp dữliệu, thông tin xử lý trước, thông tin khai phá và thông tin phân tích trong một gói duynhất, để cho phép bạn lấy thông tin thẳng từ cơ sở dữ liệu nguồn đến đầu ra báo cáo cuốicùng
Gần đây các tập hợp dữ liệu rất lớn và việc xử lý dữ liệu theo cụm và quy mô lớn có thểcho phép khai phá dữ liệu để sắp xếp và lập báo cáo về các nhóm và các mối tương quancủa dữ liệu phức tạp hơn Bây giờ đã có sẵn rất nhiều công cụ và hệ thống hoàn toàn mới,gồm các hệ thống lưu trữ và xử lý dữ liệu kết hợp
Trang 9Bạn có thể khai phá dữ liệu với nhiều tập hợp dữ liệu khác nhau, gồm các cơ sở dữ liệuSQL truyền thống, dữ liệu văn bản thô, các kho khóa/giá trị và các cơ sở dữ liệu tài liệu.Các cơ sở dữ liệu có phân cụm, như Hadoop, Cassandra, CouchDB và Couchbase Server,lưu trữ và cung cấp quyền truy cập vào dữ liệu theo cách không phù hợp với cấu trúc bảngtruyền thống
Đặc biệt, định dạng lưu trữ cơ sở dữ liệu tài liệu linh hoạt hơn lại gây ra một trọng tâm và
sự phức tạp khác về xử lý thông tin Các cơ sở dữ liệu SQL áp đặt các cấu trúc chặt chẽ vàcứng nhắc vào lược đồ, làm cho việc truy vấn chúng và phân tích dữ liệu trở nên đơn giảntheo quan điểm hiểu rõ định dạng và cấu trúc thông tin
Các cơ sở dữ liệu tài liệu, có một tiêu chuẩn chẳng hạn như cấu trúc thực thi JSON hoặccác tệp có cấu trúc đọc được bằng máy tính nào đó, cũng dễ xử lý hơn, mặc dù chúng cóthể làm tăng thêm sự phức tạp do cấu trúc khác nhau và hay thay đổi Ví dụ, với việc xử lý
dữ liệu hoàn toàn thô của Hadoop, có thể phức tạp để nhận biết và trích ra nội dung trướckhi bạn bắt đầu xử lý và tương quan với nó
Data Mining được chia nhỏ thành một số hướng chính như sau:
Hiện nay có nhiều kỹ thuật khai phá dữ liệu, mô hình truy vấn, mô hình xử lý và thu thập
dữ liệu khác nhau Bạn sẽ sử dụng một kỹ thuật nào để khai phá dữ liệu của mình và kỹthuật nào để kết hợp với phần mềm và cơ sở hạ tầng hiện có của mình? Hãy xem xét các
kỹ thuật và các giải pháp khai phá dữ liệu; phân tích sự khác nhau và tìm hiểu cách xâydựng chúng nhờ sử dụng phần mềm hiện có Hãy khám phá các công cụ khai phá dữ liệukhác nhau, hiểu cách xác định xem kích thước và độ phức tạp của những thông tin của bạn
có thể dẫn đến những rắc rối về xử lý và lưu trữ không và cần phải làm gì
Một số kỹ thuật cốt lõi, được sử dụng trong khai phá dữ liệu, mô tả kiểu hoạt động khaiphá và hoạt động phục hồi dữ liệu Thật không may là các công ty và các giải pháp khácnhau không phải lúc nào cũng dùng chung các thuật ngữ Chính các thuật ngữ này có thểlàm tăng thêm sự mơ hồ và sự phức tạp
Hãy xem xét một số kỹ thuật chính và ví dụ về cách sử dụng các công cụ khác nhau đểdựng lên việc khai phá dữ liệu
1.3.1 Mô tả khái niệm
Mô tả khái niệm (Concept Description): thiên về mô tả, tổng hợp và tóm tắt khái niệm Vídụ: tóm tắt văn bản
Mô tả theo các phương pháp mô tả tri thức: mô tả bằng logic hình thức; mạng ngữ nghĩahoặc chuyê sang dạng ma trận; mô tả bằng luật; mô tả bằng mạng Bayes…
1.3.2 Sự kết hợp
Trang 10Luật kết hợp (Association Rules): là dạng luật biểu diễn tri thứ ở dạng khá đơn giản Vídụ: “60 % nam giới vào siêu thị nếu mua bia thì có tới 80% trong số họ sẽ mua thêm thịt
bò khô” Luật kết hợp được ứng dụng nhiều trong lĩnh vực kính doanh, y học, tin-sinh, tàichính & thị trường chứng khoán v.v…
Sự kết hợp (hay mối quan hệ) là kỹ thuật khai phá dữ liệu được biết đến nhiều hơn, quenthuộc và đơn giản Ở đây, bạn thực hiện một sự tương quan đơn giản giữa hai hoặc nhiềumục, thường cùng kiểu để nhận biết các mẫu Ví dụ, khi theo dõi thói quen mua hàng củangười dân, bạn có thể nhận biết rằng một khách hàng luôn mua kem khi họ mua dâu tây,nên bạn có thể đề xuất rằng lần tới khi họ mua dâu tây, họ cũng có thể muốn mua kem
Việc xây dựng các công cụ khai phá dữ liệu dựa trên sự kết hợp hay mối quan hệ có thểthực hiện đơn giản bằng các công cụ khác nhau Ví dụ, trong InfoSphere Warehouse mộttrình hướng dẫn đưa ra các cấu hình của một luồng thông tin được sử dụng kết hợp bằngcách xem xét thông tin nguồn đầu vào của cơ sở dữ liệu, thông tin về cơ sở ra quyết định
và thông tin đầu ra của bạn Hình 2 cho thấy một ví dụ của cơ sở dữ liệu ví dụ mẫu
Hình 2 Luồng thông tin được sử dụng theo cách kết hợp
1.3.3 Sự phân loại, phân lớp
Trang 11Phân lớp và dự đoán (Classification & Prediction): xếp một đối tượng vào một trongnhững lớp đã biết trước Ví dụ: phân lớp vùng địa lý theo dữ liệu thời tiết Hướng tiếp cậnnày thường sử dụng một số kỹ thuật của Machine Learning như cây quyết định (DecisionTree), mạng nơ ron nhân tạo (neural network) v.v Người ta còn gọi phân lớp là học cógiám sát (học có thầy)
Bạn có thể sử dụng sự phân loại để xây dựng một ý tưởng về kiểu khách hàng, kiểu mặthàng hoặc kiểu đối tượng bằng cách mô tả nhiều thuộc tính để nhận biết một lớp cụ thể Ví
dụ, bạn có thể dễ dàng phân loại các xe ô tô thành các kiểu xe khác nhau (xe mui kín, 4x4,
xe có thể bỏ mui) bằng cách xác định các thuộc tính khác nhau (số chỗ ngồi, hình dạng xe,các bánh xe điều khiển) Với một chiếc xe mới, bạn có thể đặt nó vào một lớp cụ thể bằngcách so sánh các thuộc tính với định nghĩa đã biết của chúng tôi Bạn có thể áp dụng cácnguyên tắc tương tự ấy cho các khách hàng, ví dụ bằng cách phân loại khách hàng theo độtuổi và nhóm xã hội
Hơn nữa, bạn có thể sử dụng việc phân loại như một nguồn cấp, hoặc như là kết quả củacác kỹ thuật khác Ví dụ, bạn có thể sử dụng các cây quyết định để xác định một cáchphân loại Việc phân cụm sẽ cho phép bạn sử dụng các thuộc tính chung theo các cáchphân loại khác nhau để nhận biết các cụm
1.3.4 Việc phân cụm (Clustering)
Phân cụm (Clustering): xếp các đối tượng theo từng cụm (số lượng cũng như tên của cụmchưa được biết trước Người ta còn gọi phân cụm là học không giám sát (học không thầy)
Bằng cách xem xét một hay nhiều thuộc tính hoặc các lớp, bạn có thể nhóm các phần dữliệu riêng lẻ với nhau để tạo thành một quan điểm cấu trúc Ở mức đơn giản, việc phâncụm đang sử dụng một hoặc nhiều thuộc tính làm cơ sở cho bạn để nhận ra một nhóm cáckết quả tương quan Việc phân cụm giúp để nhận biết các thông tin khác nhau vì nó tươngquan với các ví dụ khác, nên bạn có thể thấy ở đâu có những điểm tương đồng và cácphạm vi phù hợp Việc phân cụm có thể làm theo hai cách Bạn có thể giả sử rằng có mộtcụm ở một điểm nhất định và sau đó sử dụng các tiêu chí nhận dạng của chúng tôi để xemliệu bạn có đúng không Đồ thị trong Hình 3 là một ví dụ hay Trong ví dụ này, một ví dụmẫu về dữ liệu kinh doanh so sánh tuổi của khách hàng với quy mô bán hàng Thật hợp lýkhi thấy rằng những người ở độ tuổi hai mươi (trước khi kết hôn và còn nhỏ), ở độ tuổinăm mươi và sáu mươi (khi không còn con cái ở nhà), có nhiều tiền tiêu hơn
Trang 12Hình 3 Việc phân cụm
Trong ví dụ này, chúng ta có thể nhận ra hai cụm, một cụm xung quanh nhóm 2.000 Đô laMỹ/ 20-30 tuổi và một cụm ở nhóm 7.000-8.000 Đô la Mỹ/ 50-65 tuổi Trong trường hợpnày, chúng tôi đã giả thuyết hai cụm và đã chứng minh giả thuyết của chúng tôi bằng một
đồ thị đơn giản mà chúng tôi có thể tạo ra bằng cách sử dụng bất kỳ phần mềm đồ họathích hợp nào để có được cái nhìn nhanh chóng Các quyết định phức tạp hơn cần phải cómột gói phần mềm phân tích đầy đủ, đặc biệt là nếu bạn muốn các quyết định tự động dựa
vào thông tin lân cận gần nhất.
Việc vẽ đồ thị phân cụm theo cách này là một ví dụ đơn giản về cái gọi là nhận ra sự lân cận gần nhất Bạn có thể nhận ra các khách hàng riêng lẻ bằng sự gần gũi theo nghĩa đen
của họ với nhau trên đồ thị Có nhiều khả năng là các khách hàng trong cùng một cụmcũng dùng chung các thuộc tính khác và bạn có thể sử dụng sự mong đợi đó để giúphướng dẫn, phân loại và nếu không thì phân tích những người khác trong tập hợp dữ liệucủa bạn
Bạn cũng có thể áp dụng việc phân cụm theo quan điểm ngược lại; dựa vào một số thuộctính đầu vào, bạn có thể nhận ra các tạo phẩm khác nhau Ví dụ, một nghiên cứu gần đây
về các số PIN 4-chữ số đã tìm ra các cụm giữa các chữ số trong phạm vi 1-12 và 1-31 chocác cặp đầu tiên và thứ hai Bằng cách vẽ các cặp này, bạn có thể nhận ra và xác định cáccụm liên quan đến ngày tháng (các ngày sinh nhật, các ngày kỷ niệm)
1.3.5 Dự báo
Dự báo là một chủ đề rộng và đi từ dự báo về lỗi của các thành phần hay máy móc đếnviệc nhận ra sự gian lận và thậm chí là cả dự báo về lợi nhuận của công ty nữa Được sử
Trang 13dụng kết hợp với các kỹ thuật khai phá dữ liệu khác, dự báo gồm có việc phân tích các xuhướng, phân loại, so khớp mẫu và mối quan hệ Bằng cách phân tích các sự kiện hoặc các
cá thể trong quá khứ, bạn có thể đưa ra một dự báo về một sự kiện
Khi sử dụng quyền hạn thẻ tín dụng, chẳng hạn, bạn có thể kết hợp phân tích cây quyếtđịnh của các giao dịch riêng lẻ trong quá khứ với việc phân loại và các sự so khớp mẫulịch sử để nhận biết liệu một giao dịch có gian lận hay không Rất có thể là việc thực hiệnmột sự so khớp giữa việc mua vé các chuyến bay đến Mỹ và các giao dịch tại Mỹ cho thấygiao dịch này hợp lệ
1.3.6 Khai phá các mẫu tuần tự
Khai phá chuỗi (sequential/temporal patterns): tương tự như khai phá luật kết hợp nhưng
có thêm tính thứ tự và tính thời gian Hướng tiếp cận này được ứng dụng nhiều trong lĩnhvực tài chính và thị trường chứng khoán vì nó có tính dự báo cao
Thường được sử dụng trên các dữ liệu dài hạn, các mẫu tuần tự là một phương pháp có ích
để nhận biết các xu hướng hay các sự xuất hiện thường xuyên của các sự kiện tương tự Ví
dụ, với dữ liệu khách hàng, bạn có thể nhận ra rằng các khách hàng cùng nhau mua một bộsưu tập riêng lẻ về các sản phẩm tại nhiều thời điểm khác nhau trong năm Trong một ứngdụng giỏ hàng, bạn có thể sử dụng thông tin này để tự động đề xuất rằng một số mặt hàngnào đó được thêm vào một giỏ hàng dựa trên tần suất và lịch sử mua hàng trong quá khứcủa các khách hàng
1.3.7 Các cây quyết định
Liên quan đến hầu hết các kỹ thuật khác (chủ yếu là phân loại và dự báo), cây quyết định
có thể được sử dụng hoặc như là một phần trong các tiêu chí lựa chọn hoặc để hỗ trợ việc
sử dụng và lựa chọn dữ liệu cụ thể bên trong cấu trúc tổng thể Trong cây quyết định(thuật toán mô tả ở chương sau), bạn bắt đầu bằng một câu hỏi đơn giản có hai câu trả lời(hoặc đôi khi có nhiều câu trả lời hơn) Mỗi câu trả lời lại dẫn đến thêm một câu hỏi nữa
để giúp phân loại hay nhận biết dữ liệu sao cho có thể phân loại dữ liệu hoặc sao cho cóthể thực hiện dự báo trên cơ sở mỗi câu trả lời Hình 4 cho thấy một ví dụ trong đó bạn cóthể phân loại một điều kiện lỗi gửi đến
Trang 14Hình 4 Cây quyết định
Các cây quyết định thường được sử dụng cùng với các hệ thống phân loại liên quan đếnthông tin có kiểu thuộc tính và với các hệ thống dự báo, nơi các dự báo khác nhau có thểdựa trên kinh nghiệm lịch sử trong quá khứ để giúp hướng dẫn cấu trúc của cây quyết định
và kết quả đầu ra
Trong thực tế, thật hiếm khi bạn sẽ sử dụng một kỹ thuật trong số những kỹ thuật riêngbiệt này Việc phân loại và phân cụm là những kỹ thuật giống nhau Nhờ sử dụng việcphân cụm để nhận ra các thông tin lân cận gần nhất, bạn có thể tiếp tục tinh chỉnh việcphân loại của mình Thông thường, chúng tôi sử dụng các cây quyết định để giúp xâydựng và nhận ra các loại mà chúng tôi có thể theo dõi chúng trong một thời gian dài đểnhận biết các trình tự và các mẫu
Trong tất cả các phương pháp cốt lõi, thường có lý do để ghi lại thông tin và tìm hiểu từthông tin Trong một số kỹ thuật, việc này hoàn toàn rõ ràng Ví dụ, với việc tìm hiểu cácmẫu tuần tự và dự báo, bạn xem xét lại dữ liệu từ nhiều nguồn và nhiều cá thể thông tin đểxây dựng một mẫu
Trong một số kỹ thuật khác, quá trình này có thể rõ ràng hơn Các cây quyết định ít khiđược xây dựng một lần và không bao giờ được coi nhẹ Khi nhận biết thông tin mới, các
sự kiện và các điểm dữ liệu, có thể cần xây dựng thêm các nhánh hoặc thậm chí toàn bộcác cây mới, để đương đầu với các thông tin bổ sung
Bạn có thể tự động hoá một số bước của quá trình này Ví dụ, việc xây dựng một mô hình
dự báo để nhận biết sự gian lận thẻ tín dụng là xây dựng các xác suất để bạn có thể sửdụng cho giao dịch hiện tại và sau đó cập nhật mô hình đó với các giao dịch mới (đã đượcphê duyệt) Rồi thông tin này được ghi lại sao cho có thể đưa ra quyết định một cáchnhanh chóng trong lần tới
1.4 CHUẨN BỊ VÀ TRIỂN KHAI DỮ LIỆU
Khai phá dữ liệu dựa vào xây dựng mô hình và cấu trúc dữ liệu phù hợp để xử lý, nhậnbiết và xây dựng thông tin mà bạn cần Bất kể dạng, cấu trúc nguồn dữ liệu, hãy cấu trúc
Trang 15và tổ chức thông tin theo một định dạng để khai phá dữ liệu diễn ra theo một mô hình cànghiệu quả càng tốt
Hãy xét tổ hợp các yêu cầu kinh doanh để khai phá dữ liệu, nhận ra các biến hiện có(khách hàng, các giá trị, quốc gia) và yêu cầu để tạo ra các biến mới để bạn có thể sử dụngchúng để phân tích dữ liệu trong bước chuẩn bị Bạn có thể tạo nên các biến phân tích của
dữ liệu từ nhiều nguồn khác nhau cho một cấu trúc có thể nhận biết được duy nhất (ví dụ,bạn có thể tạo ra một lớp của một cấp cụ thể và tuổi của khách hàng hoặc một kiểu lỗi cụthể)
Tùy thuộc vào nguồn dữ liệu, cách bạn xây dựng thông tin là bước quan trọng Bước nàydẫn đến một quá trình phức tạp trong nhận biết, tổng hợp, đơn giản hóa hoặc mở rộngthông tin cho phù hợp với dữ liệu đầu vào của bạn (Hình 5)
Hình 5 Chuẩn bị dữ liệu
Dữ liệu nguồn, vị trí và cơ sở dữ liệu của bạn ảnh hưởng đến cách bạn xử lý và tổng hợpthông tin đó
Việc xây dựng trên SQL
Việc xây dựng trên cơ sở dữ liệu SQL thường dễ nhất trong tất cả các cách tiếp cận Bạnhiểu rõ SQL, nhưng không bỏ qua cấu trúc và định dạng thông tin Ví dụ, khi xét hànhngười dùng trong dữ liệu kinh doanh, bạn có thể sử dụng hai định dạng chính trong môhình dữ liệu SQL (và việc khai phá dữ liệu nói chung): định dạng giao dịch và định dạngnhân khẩu học-hành vi
Trang 16Khi sử dụng InfoSphere Warehouse, việc tạo mô hình nhân khẩu học-hành vi cho mụcđích khai phá dữ liệu khách hàng nhằm hiểu việc mua và các mẫu mua sắm gồm việc lấy
dữ liệu SQL nguồn của bạn dựa trên các thông tin giao dịch và các tham số đã biết củakhách hàng, xây dựng lại thông tin đó thành một cấu trúc bảng định sẵn Sau đó,InfoSphere Warehouse sử dụng thông tin này cho phân cụm và khai phá dữ liệu để thuđược thông tin bạn cần Dữ liệu nhân khẩu học của khách hàng và dữ liệu giao dịch doanhthu có thể kết hợp và khôi phục lại vào một định dạng để phân tích dữ liệu cụ thể như
Hình 6
Hình 6 Định dạng cho việc phân tích dữ liệu cụ thể
Ví dụ, với dữ liệu kinh doanh, bạn có thể muốn nhận ra các xu hướng kinh doanh các mặthàng riêng lẻ Bạn có thể chuyển đổi các dữ liệu doanh thu thô của các mặt hàng riêng lẻthành thông tin giao dịch để ánh xạ mã định danh (ID) của khách hàng, dữ liệu giao dịch
và mã định danh sản phẩm Nhờ sử dụng thông tin này, thật dễ nhận ra các trình tự và cácmối quan hệ với các sản phẩm riêng lẻ của các khách hàng riêng lẻ theo thời gian Điều đócho phép InfoSphere Warehouse tính toán thông tin liên tục, chẳng hạn như khi một kháchhàng rất có thể lại mua sản phẩm đó
Bạn có thể xây dựng các điểm phân tích dữ liệu mới từ dữ liệu nguồn Ví dụ, mở rộng(hoặc tinh chỉnh) thông tin sản phẩm của mình bằng cách sắp đặt hay phân loại sản phẩmriêng lẻ vào các nhóm lớn hơn và sau đó phân tích dữ liệu dựa trên các nhóm này thay choviệc phân tích một sản phẩm riêng lẻ Bảng 1 cho thấy cách mở rộng thông tin theo nhữngcách mới
Trang 17Bảng 1 Một bảng các sản phẩm mở rộng (LÀM THÀNH BẢNG)
mã định danh_sản
phẩm tên_sản phẩm nhóm_sản phẩm
kiểu_sản phẩm
1.5 ỨNG DỤNG CỦA KHAI PHÁ DỮ LIỆU
( CÁC CHỮ ĐẦU TIẾNG ANH VIẾT HOA)
Data Mining tuy là một hướng tiếp cận mới nhưng thu hút được rất nhiều sự quantâm của các nhà nghiên cứu và phát triển nhờ vào những ứng dụng thực tiễn của
nó Chúng ta có thể liệt kê ra đây một số ứng dụng điển hình:
• Phân tích dữ liệu và hỗ trợ ra quyết định (data analysis & decision support)
• Điều trị y học (medical treatment)
• Text mining & Webmining
• Tin-sinh (bio-informatics)
Chương 2
HỌC MÁY CHO KHAI PHÁ DỮ LIỆU
Trang 182.1 MỘT SỐ KHÁI NIỆM CƠ BẢN VỀ HỌC ( nhóm biên soan ghi bài giảng vào đây)
2.1.1 Khái niêm về học
2.1.2 Phân loại học
2.1.3 Các ứng dụng cơ bản của học
2.2 CÁC LUẬT HỌC THỐNG KÊ
2.2.1 Thuật toán Quinlan
a)Bài toán và cơ sở dữ liệu rám nắng
2.2.3 Thuật toán k-láng giềng ( theo tài liệu đã cho và tham khảo dướ đây)
HỌC DỰA TRÊN VÍ DỤ: THUẬT TOÁN K HÀNG XÓM GẦN NHẤT
Trang 19trên ví dụ không tạo ra mô hình hay hàm đích cho dữ liệu, thay vào đó, trong quá trình
học thuật toán chỉ lưu lại tất cả các mẫu huấn luyện được cung cấp Khi cần phân loại hay
ra quyết định cho ví dụ mới, thuật toán tìm những mẫu huấn luyện tương tự và xác định nhãn phân loại hay giá trị của ví dụ dựa trên những mẫu này
Do thuật toán không làm gì trong quá trình học mà chỉ lưu lại các mẫu huấn luyện,
phương pháp học dựa trên ví dụ còn được gọi là học lười (lazy learning) hay học bằng cách nhớ (memory-based learning) Học dựa trên ví dụ bao gồm một số kỹ thuật học khác nhau như thuật toán k-hàng xóm gần nhất (k-nearest neighbor), suy diễn theo
trường hợp (case-based reasoning) Điểm khác nhau cơ bản giữa nhứng kỹ thuật này là cách biểu diễn và tính độ tương tự giữa các ví dụ Thuật toán k-hàng xóm gần nhất sử
dụng cách biểu diễn ví dụ đơn gi ả n dưới dạng vec tơ trong không gian Ơclit và sử dụng khoảng cách Ơclit để tính độ t ươ ng tự, trong khi suy diễn theo trường hợp dựa trên việc
biểu diễn các mẫu (gọi là trường h ợ p) ph ức tạp hơn và dùng những kỹ thuật phức tạp
được xây dựng riêng để tính độ tương tự cho các trườ ng h ợ p
Ưu điểm So với phương pháp học dựa trên mô hình, học dựa trên ví dụ có một số
ưu điểm Thứ nhất, do không quy định trước mô hình hay dạng củ a hàm đích, học d ự a trên ví dụ có thể xây dựng những hàm đích rất phức tạp Thứ hai, thay vì x ây dựng hàm
đích chung cho toàn bộ dữ liệu, học dựa trên ví dụ xây dựng hàm đích d ự a trên một số
mẫu gần với ví dụ đang cần dự đoán, do vậy có thể tận dụng được đặc điểm mang tính cục
bộ của dữ liệu để mô tả tốt hơn giá trị ví dụ mới
Nhược điểm Nh ượ c đ i ểm thứ nhấ t c ủ a học dựa trên ví dụ là tốc độ chậm trong giai
đoạn phân loại Do thu ậ t toán phả i so sánh ví dụ mới với toàn bộ tập mẫu để tìm ra
những mẫu tương tự nên thời gia n phân loại tỷ lệ thuậ n với kích th ư ớc tập mẫu Để khắc
phục vấn đề tốc độ, cách thông dụng n hất là sử dụng kỹ thuật đánh chỉ số để tìm kiếm nhanh mẫu tương tự Nhược điểm thứ hai của học dựa trên ví dụ là việ c tí nh độ tương tự được thực hiện với toàn bộ thuộc tính Nếu thuộc tính không li ê n quan tới phân loại của
ví dụ thì khi sử dụng sẽ gây nhiễu, khiến những ví dụ cùng nhãn không tươ ng tự với nhau
Vấn đề chọn và sử dụng những thuộc tính tốt, do vậy, có ảnh hưởng quyết định t ớ i đ ộ
chính xác của phương pháp này
Phương pháp k-hàng xóm gần nhất
K-hàng xóm gần nhất (k-nearest neighbors, viết tắt là k-NN) là phương pháp tiêu
biểu nhất của học dựa trên ví dụ Nguyên tắc của phương pháp này là đặc điểm của mẫu
được quyết định dựa trên đặc điểm của k mẫu giống mẫu đang xét nhất Ví dụ, muốn xác
định nhãn phân loại, ta tìm k mẫu gần nhất và xem những mẫu này mang nhãn gì
Phương pháp k-NN thường làm việc với dữ liệu trong đó các thuộc tính được cho
dưới dạng vec tơ các số thực Như vậy, mỗi mẫu tương ứng với một điểm trong không gian
Ơ clit Giả sử mẫu x có giá trị thuộc tính là < a1(x), a2(x),…, an(x) > Để xác định các mẫu
Trang 20giống x, cần có độ đo khoảng cách giữa các mẫu Do mẫu tương ứng với điểm trong không gian, khoảng cách Ơ clit thường được dùng cho mục đích này Khoảng cách Ơ clit giữa hai
định nhãn cho mẫu đang xét Nếu k = 1, giá trị hàm f ’(x) được chọn bằng giá trị hàm f
của mẫu gần nhất Thông thường k = 1 không cho kết quả tốt do hàng xóm gần nhất có
ảnh hưởng quyết định tới giá trị f ’(x) Trong trường hợp hàng xóm gần nhất là nhiễu sẽ
khiến kết quả bị sai Nhiều nghiên cứu cho thấy giá trị k trong khoảng từ 5 đến 10 là phù
hợp Để xác định giá trị cụ thể của k có thể sử dụng phương pháp kiểm tra chéo như đã trình bày ở phần tỉa cây Giá trị k cho độ chính xác khi kiểm tra chéo tốt nhất sẽ được lựa
chọn cho thuật toán
Một số lưu ý với thuật toán k-NN