TỔNG QUAN VỀ DATA MINING
Tổng quan về Datamining
1.1.1 Giới thiệu chung về Datamining
Data Mining là một lĩnh vực mới nổi, chuyên khai thác thông tin và tri thức tiềm ẩn từ các cơ sở dữ liệu lớn, giúp nâng cao khả năng sản xuất và cạnh tranh cho doanh nghiệp Các nghiên cứu và ứng dụng thành công trong khám phá tri thức chứng minh rằng Data Mining phát triển bền vững, mang lại nhiều lợi ích vượt trội so với công cụ phân tích dữ liệu truyền thống Hiện nay, Data Mining được ứng dụng rộng rãi trong nhiều lĩnh vực như thương mại, tài chính, y tế, viễn thông và tin sinh học.
Data Mining là một lĩnh vực nghiên cứu mới nổi trong hơn một thập kỷ qua, với các kỹ thuật chủ yếu được kế thừa từ cơ sở dữ liệu, học máy, trí tuệ nhân tạo, lý thuyết thông tin, xác suất thống kê và tính toán hiệu năng cao Sự phát triển nhanh chóng của Data Mining đã dẫn đến nhiều quan điểm khác nhau về nó Tuy nhiên, ở mức độ trừu tượng, Data Mining được định nghĩa là quá trình tìm kiếm và phát hiện các tri thức mới, tiềm ẩn và hữu dụng trong các cơ sở dữ liệu lớn.
Khám phá tri thức trong CSDL (KDD) là mục tiêu cốt lõi của Data Mining, khiến hai khái niệm này thường được coi là tương đương trong giới khoa học Tuy nhiên, nếu xem xét kỹ lưỡng, Data Mining thực chất là một giai đoạn quan trọng trong quy trình KDD.
1.1.2 Quá trình khám phá tri thức trong CSDL
Quá trình khám phá tri thức trong CSDL gồm các giai đoạn sau:
Trích chọn dữ liệu là quá trình lựa chọn các tập dữ liệu cần khai thác từ các nguồn dữ liệu lớn như cơ sở dữ liệu, kho dữ liệu và kho lưu trữ dữ liệu Quá trình này bao gồm việc tổng hợp, nén dữ liệu, sử dụng histograms, và lấy mẫu Ngoài ra, dữ liệu còn được rời rạc hóa thông qua các phương pháp như histograms, entropy và phân khoảng Kết quả của bước này là dữ liệu trở nên nhất quán, đầy đủ, được rút gọn và rời rạc hóa.
Biến đổi dữ liệu là quá trình chuẩn hóa và làm mịn dữ liệu, giúp đưa dữ liệu về dạng tối ưu nhất để hỗ trợ cho các kỹ thuật khai phá trong các bước tiếp theo.
Khai thác dữ liệu là bước áp dụng các kỹ thuật phân tích, chủ yếu là các phương pháp học máy, để trích xuất thông tin và phát hiện mối liên hệ đặc biệt trong dữ liệu Đây là giai đoạn quan trọng và tốn nhiều thời gian nhất trong quy trình KDD Sau khi các mẫu thông tin và mối liên hệ được phát hiện, chúng sẽ được chuyển đổi và biểu diễn dưới dạng dễ hiểu cho người dùng, như đồ thị, cây, bảng biểu, và luật Đồng thời, bước này cũng thực hiện đánh giá tri thức khám phá được theo những tiêu chí nhất định.
1.1.3 Các kỹ thuật áp dụng trong Datamining
Nếu đứng trên quan điểm của học máy (Machine Learning), thì các kỹ thuật trong Data Mining, bao gồm :
Học có giám sát (Supervised learning):
Học không có giám sát (Unsupervised learning):
Học nửa giám sát (Semi - Supervised learning):
Nếu căn cứ vào lớp các bài toán cần giải quyết, thì Data Mining bao gồm các kỹ thuật áp dụng sau :
Phân lớp và dự đoán (classification and prediction):
Luật kết hợp (association rules):
Phân tích chuỗi theo thời gian (sequential/ temporal patterns Phân cụm (clustering/ segmentation):
Mô tả khái niệm (concept description and summarization):
Hình 2: Các lĩnh vực liên quan đến Khám phá tri thức trong CSDL
Khai phá dữ liệu có nhiều ứng dụng trong thực tế Một trong số ứng dụng điển hình như:
Tài chính và thị trường chứng khoán đóng vai trò quan trọng trong việc phân tích tình hình tài chính và dự báo giá cổ phiếu Việc theo dõi danh mục vốn, giá cả, lãi suất và dữ liệu thẻ tín dụng giúp phát hiện gian lận và đưa ra những quyết định đầu tư chính xác hơn.
Phân tích dữ liệu và hỗ trợ ra quyết định trong điều trị và chăm sóc y tế là rất quan trọng Bài viết này cung cấp thông tin về chuẩn đoán lưu bệnh trong các hệ thống quản lý bệnh viện, đồng thời phân tích mối liên hệ giữa triệu chứng bệnh, chuẩn đoán và phương pháp điều trị, bao gồm chế độ dinh dưỡng và thuốc.
Sản xuất chế biến: Quy trình, phương pháp chế biến và xử lý sự cố
Lĩnh vực khoa học hiện nay bao gồm quan sát thiên văn, phân tích dữ liệu gene và sinh vật học, nhằm tìm kiếm và so sánh các hệ gene cũng như thông tin di truyền Nghiên cứu này giúp khám phá mối liên hệ giữa gene và một số bệnh di truyền, từ đó nâng cao hiểu biết về di truyền học và ứng dụng trong y học.
Mạng viễn thông: Phân tích các cuộc gọi điện thoại và hệ thống giám sát lỗi, sự cố chất lượng dịch vụ…
Lĩnh vực xã hội: bài toán thống kê dân số, bài toán dự báo về dân số…để từ đó đưa ra cách khắc phục thích hợp nhất.
Phân cụm dữ liệu và các thuật toán về phân cụm dữ liệu
1.2.1.Giới thiệu chung về phân cụm dữ liệu
Phân cụm dữ liệu là một lĩnh vực liên ngành đang phát triển mạnh mẽ, bao gồm các lĩnh vực như thống kê, học máy, nhận dạng và khai thác dữ liệu Định nghĩa cơ bản về phân cụm dữ liệu (PCDL) được đưa ra nhằm hiểu rõ hơn về bản chất và ứng dụng của nó trong các lĩnh vực khác nhau.
PCDL là một kỹ thuật trong lĩnh vực khai thác dữ liệu (data mining), giúp phát hiện và tìm kiếm các cụm cũng như mẫu dữ liệu tự nhiên tiềm ẩn trong tập dữ liệu lớn Kỹ thuật này cung cấp thông tin và tri thức hữu ích, hỗ trợ quá trình ra quyết định.
PCDL là quá trình phân chia một tập dữ liệu thành các cụm sao cho các phần tử trong cùng một cụm có đặc điểm tương tự, trong khi các phần tử ở các cụm khác nhau thì khác biệt Số lượng cụm có thể được xác định trước dựa trên kinh nghiệm hoặc được xác định tự động thông qua các phương pháp phân cụm.
Chúng ta có thể minh hoạ vấn đề phân cụm như hình 3 sau đây :
Hình 3: Mô phỏng vấn đề PCDL
Trong hình trên, quá trình phân cụm đã tạo ra bốn cụm khác nhau Các phần tử "gần nhau" hoặc "tương tự" được nhóm lại thành một cụm, trong khi các phần tử khác được tách riêng.
"xa nhau" hay là "phi tương tự" thì chúng thuộc về các cụm khác nhau
1.2.2 Một số thuật toán phân cụm dữ liệu a Họ các thuật toán phân hoạch
- Thuật toán PAM (Partioning Around Medoids)
- Thuật toán CLARA (Clustering LARge Applications)
- Thuật toán CLARANS (Clustering LARge ApplicatioNS) b Các thuật toán phân cụm phân cấp
- Thuật toán CURE c Các thuật toán phân cụm dựa trên mật độ
- Thuật toán DENCLUE d Một số thuật toán phân cụm dữ liệu đặc thù
- Thuật toán EM e Phân cụm dữ liệu mờ
- Thụât toán FCM f Phân cụm song song trên tập dữ liệu hỗn hợp
PHẦN MỀM CLEMENTINE
Giới thiệu chung về Clementine
Clementine, sản phẩm của SPSS Inc, là một công cụ mô hình hóa trong khai thác dữ liệu, giúp người dùng nhanh chóng phát triển và triển khai các mô hình dự đoán dựa trên kinh nghiệm thực tế vào các lĩnh vực cụ thể một cách hiệu quả.
Phần mềm Clementine gồm có 8 tab chính:
1 Tab Favorites : Chỉnh sửa các nút được lựa chọn mặc định
2 Tab Source : Nguồn dữ liệu, nhập dữ liệu vào Clementine
3 Tab Record Ops : Thực hiện các thao tác trên bản ghi dữ liệu như ; lựa chọn, trộn, thêm trường dữ liệu
4 Tab Field Ops : Thực hiện các thao tác trên các trường dữ liệu như lọc, chuyển hóa trường dữ liệu mới, xác định kiểu dữ liệu
5 Tab Graphs ( đồ thị) : bao gồm các nút hiển thị đồ họa trước và sau khi
Modeling ( mô hình hóa) gồm các nút Plot, nút Web, nút Histogram, biểu đồ đánh giá
6 Tab Modeling : Mô hình hóa các thuật toán trong Clementine chẳng hạn như ; nút K-means, C&R Tree, C5.0, Sequence
7 Tab Output :Xuất dữ liệu đầu ra dưới dạng như bản báo cáo (report), SPSS,
8 Tab Export : Xuất dữ liệu đầu ra dưới dạng chẳng hạn như Exel, SPSS,
Quá trình xử lý dữ liệu trong Clementine
Clementine là phần mềm ứng dụng trong khai phá dữ liệu Do đó quy trình xử lý dữ liệu được thể hiện như sau:
Nguồn dữ liệu phong phú bao gồm nhiều định dạng như Excel, SPSS, SQL, giúp người sử dụng dễ dàng nhập dữ liệu để xử lý.
Nguồn dữ liệu, hay còn gọi là dữ liệu thô, là loại dữ liệu chưa được tinh chỉnh và là nguồn gốc, nguồn dữ liệu ban đầu.
Chọn nguồn dữ liệu phù hợp với yêu cầu bài toán là rất quan trọng Dữ liệu cần phải đầy đủ thông tin liên quan đến yêu cầu và đáp ứng các tiêu chí nhất định.
3 Tiền xử lý dữ liệu:
Tiền xử lý dữ liệu là quá trình tinh chỉnh dữ liệu, chỉnh sửa dữ liệu, dữ liệu có thể
Tiền xử lý dữ liệu là quá trình quan trọng nhằm làm sạch dữ liệu bằng cách xử lý dữ liệu không đầy đủ, nhiễu và không nhất quán Quá trình này bao gồm việc rút gọn dữ liệu thông qua các phương pháp như hàm nhóm, tính tổng, nén dữ liệu, sử dụng histograms và lấy mẫu Bên cạnh đó, việc rời rạc hóa dữ liệu cũng được thực hiện dựa trên histograms, entropy và phân khoảng Sau khi hoàn tất các bước này, dữ liệu sẽ trở nên nhất quán, đầy đủ, được rút gọn và rời rạc hóa.
Biến đổi dữ liệu là quá trình chuẩn hóa và làm mịn thông tin, giúp đơn giản hóa và rút gọn dữ liệu, từ đó giải quyết các bài toán một cách nhanh chóng và hiệu quả.
Chuyển đổi dữ liệu ban đầu thành dữ liệu chuẩn nhất có thể, đồng thời có thể thêm hoặc loại bỏ các trường dữ liệu cần thiết.
Biến đổi dữ liệu thành các dữ liệu mới với những thuộc tính mới và các trường dữ liệu mới
Có thể biến đổi thành các loại dữ liệu sau: Range(khoảng cách, hàng), Default ( mặc định), Flag ( dạng cờ), Set ( tập hợp), Ordered Set, Typeless, Discrete …
5 Khai phá dữ liệu Đây được xem là bước quan trọng và tốn nhiều thời gian nhất của toàn quá trình Áp dụng các kỹ thuật phân tích để khai phá dữ liệu
Trong quá trình khai phá dữ liệu, các thuật toán phân hoạch và phân cụm phân cấp như K-means, PAM, CLARA và BIRCH được sử dụng để tối ưu hóa và phân tích dữ liệu hiệu quả.
6 Đánh giá và biểu diễn tri thức Đây là kết quả của toàn bộ quá trình Kết quả được thể hiện dưới các dạng khác nhau như bảng biểu ( Exel, Table, Custom Table ), dạng cây ( C&R Tree, C5.0…), hay dưới dạng đồ thị (Graphboard, Plot, Distribution, histogram, collection, multiplot, Web, Timelot, Evaluation …) giúp đưa ra kết quả gần gũi với người sử dụng, có cái nhìn trực quan hơn đối với yêu cầu được đặt ra
Sau khi công bố kết quả, cần tiến hành đánh giá xem kết quả đó có đáp ứng yêu cầu của bài toán hay không, cũng như có thỏa mãn các tiêu chí hoặc điều kiện nhất định nào đó hay không.
Trong nghiên cứu y tế này, bạn đã thu thập dữ liệu từ một nhóm bệnh nhân mắc cùng một bệnh Trong quá trình điều trị, mỗi bệnh nhân phản ứng với một trong năm loại thuốc khác nhau Nhiệm vụ của bạn là sử dụng khai phá dữ liệu để xác định loại thuốc nào có khả năng hiệu quả nhất cho các bệnh nhân tương lai có tình trạng bệnh tương tự.
Ví dụ này sử dụng các dòng có tên druglearn.str , có sự tham chiếu các dữ liệu tập tin có tên DRUG1n
Các trường dữ liệu được sử dụng trong bản demo này là:
Trường dữ liệu Mô tả
Sex Giới tính : M - Nam, F – Nữ
BP Huyết áp : HIGH, NORMAL, hoặc LOW
Cholesterol Nồng độ Cholesterol : NORMAL hoặc HIGH
Na Nồng độ Natri trong máu
K Nồng độ Kali trong máu
Để đọc dữ liệu, bạn sử dụng nút Var.File Bạn có thể thêm nút Var.File từ bảng màu hoặc truy cập tab Sources để tìm nút cần thiết Sau đó, nhấp đúp vào nút vừa đặt để mở hộp thoại của nó.
Nhấp vào nút hình vuông bên phải hộp Var.File để duyệt đến thư mục cần chọn, sau đó mở thư mục Demo và chọn tập tin có tên DRUG1n.
Nhấp vào tab Data để ghi đè lên và thay đổi giá trị cho một tập tin
Nút Type thể hiện về các loại trường trong dữ liệu Chọn Read Values để xem các giá trị thực tế cho từng tập tin
Sau khi tải tập tin dữ liệu, để tạo bảng lưu trữ các dữ liệu đó, bạn chỉ cần nhấp đúp vào nút Table trong bảng màu hoặc kéo và thả nó vào bài viết.
Nhấn đúp chuột vào nút Table trong bảng màu để tự động kết nối với tập dữ liệu gốc Để xem bảng, bạn có thể nhấn vào nút mũi tên màu xanh trên thanh công cụ để thực thi, hoặc kích chuột phải vào nút Table và chọn Execute.
ÁP DỤNG CLEMENTINE VÀO BÀI TOÁN
Phần mềm SPSS Clementine là công cụ hữu ích trong thống kê và khai phá dữ liệu, giúp các nhà thống kê tìm kiếm thông tin từ kho dữ liệu lớn, đặc biệt trong thống kê dân số, điều này rất quan trọng cho nền kinh tế quốc dân Việc khai phá dữ liệu cần chính xác và nhanh chóng để hỗ trợ Đảng, Nhà nước và các địa phương trong việc xây dựng kế hoạch phát triển kinh tế - xã hội, nâng cao chất lượng cuộc sống SPSS Clementine nổi bật với khả năng xây dựng mô hình khai phá dữ liệu toàn diện, khác biệt so với các phương pháp truyền thống.
Trong bài viết này, tôi đã sử dụng phần mềm SPSS Clementine để xây dựng các mô hình khai phá dữ liệu từ thống kê dân số thành phố Hải Phòng năm 2009, từ đó rút ra những tri thức có thể áp dụng trong thực tiễn Quy trình thực hiện bài toán được trình bày rõ ràng và cụ thể.
Bước đầu tiên là sử dụng hai tập dữ liệu thô, Nguoi.sav và ho.sav, chứa thông tin chi tiết về giới tính, tuổi tác, trình độ chuyên môn kỹ thuật, cũng như tổng số nam và nữ.
Bước 2 : Xử lý dữ liệu : sau quá trình tinh chỉnh dữ liệu được tập dữ liệu mới là : Nguoi100_3.sa v và ho_4.sav
Bước 3 : Biến đổi dữ liệu: làm mịn dữ liệu để đưa dữ liệu về dạng thuận lợi nhất
Bước 4: Khai phá dữ liệu là quá trình áp dụng các kỹ thuật phân tích và thống kê để xử lý thông tin, từ đó phát hiện mối liên hệ giữa các dữ liệu.
Bước 5 : Đánh giá kết quả và giải thích
Bài toán từ file Nguoi100_3.sav yêu cầu thống kê và so sánh tỷ lệ số lượng giữa các nhóm độ tuổi và trình độ chuyên môn Sau khi phân tích dữ liệu, cần vẽ biểu đồ để trực quan hóa kết quả so sánh này.
Từ tập Nguoi100_3.sav , chọn nút Custom Table , màn hình xuất hiện như sau:
Nhấn đúp vào nút Custom Table , trích chọn dữ liệu như hình sau:
Nhấn vào nút Execute để chạy.Kết quả là hình vẽ sau:
Chọn nút Filter , màn hình xuất hiện như hình sau:
Nhấn đúp vào nút Filter , loại bỏ một số trường dữ liệu không cần thiết Để vẽ biểu đồ chọn nút Distribution , màn hình xuất hiện như sau:
Nhấn đúp vào nút Distribution , xử lý dữ liệu, nhấn Execute để chạy
Kết quả là hình vẽ như sau:
Bảng kết quả thống kê và biểu đồ cho thấy tỷ lệ người chưa qua đào tạo chuyên môn kỹ thuật và sơ cấp nghề ở các nhóm độ tuổi là cao Ngược lại, tỷ lệ người có trình độ trung cấp, cao đẳng và cao đẳng nghề lại thấp, trong khi tỷ lệ người có trình độ đại học ở mức bình thường.
File ho.sav chứa các thông tin quan trọng như tổng số người, số lượng nam, số lượng nữ, và số hộ gia đình sở hữu các thiết bị như tivi, máy vi tính, tủ lạnh, điều hòa và xe máy.
Dựa trên các thông tin đã thu thập, chúng ta cần thống kê và so sánh tỷ lệ có và không có các tiện nghi trong đời sống sinh hoạt Qua đó, chúng ta sẽ rút ra những nhận xét quan trọng về mức độ tiện nghi trong cuộc sống hàng ngày.
Ban đầu, chúng tôi có tập dữ liệu thô ho.sav ở định dạng SPSS và tiến hành tinh chỉnh dữ liệu Quá trình tinh chỉnh này được thực hiện trực tiếp trong phần mềm SPSS.
Chọn trường dữ liệu là C57_4 : Máy vi tính
Gán lại trường dữ liệu : 1 – có
Sau quá trình tinh chỉnh :
Từ tab Source , chọn nút SPSS File
Kích đúp vào SPSS File và chọn tập dữ liệu ho_4.sav
Nhấn vào tab Type để thay đổi loại dữ liệu
Từ tab Output chọn Custom Table để xuất dữ liệu:
Kích đúp vào Custom Table và đổi tên Custom Table thành tỷ lệ máy tính như hình vẽ sau:
Làm tương tự đối với tỷ lệ máy điều hòa và tỷ lệ xe máy
Kích đúp vào Custom Table và chọn trường dũ liệu may_vi_tinh và gắp thả chúng vào màn hình bên trong như hình vẽ sau:
Nhấn Execute để chạy, kết quả là bảng như sau:
Tương tự đối với tỷ lệ máy điều hòa
Nhấn Execute để chạy, kết quả như bảng sau:
Tương tự đối với xe máy :
Nhấn Execute để chạy và sử dụng đồ thị để trực quan hóa kết quả thu được Để chọn loại biểu đồ, hãy nhấn vào tab Graphs như hình minh họa.
Kích đúp vào Distribution hoặc gắp thả chúng vào màn hình bên trong
Kích đúp vào Distribution và chon trường dữ liệu như hình vẽ:
Làm tương tự đối với tỷ lệ máy điều hòa
Theo thống kê và biểu đồ, tỷ lệ người dân sử dụng thiết bị dân dụng như máy vi tính, điều hòa và xe máy còn thấp, đặc biệt ở các huyện ngoại thành và vùng sâu Điều này cho thấy nhu cầu sử dụng các thiết bị này của người dân là cao, và đây là yếu tố quan trọng trong việc xác định tiêu chí kinh doanh cho các nhà sản xuất và nhà cung cấp thiết bị dân dụng.