Professional Documents
Culture Documents
2.2.1 Tiền xử lý dữ liệu: 2.2 Tổng hợp các phương pháp sử dụng
2.2.1 Tiền xử lý dữ liệu: 2.2 Tổng hợp các phương pháp sử dụng
Tiền xử lý dữ liệu (Data preprocessing) là một bước rất quan trọng trong lĩnh vực
học máy. Đây là bước chúng ta sẽ làm ngay sau khi dữ liệu được làm sạch và việc
phân tích số liệu thăm dò được thực hiện. Khi đã hiểu được tập dữ liệu của mình,
ta có thể sẽ có ý tưởng về việc mô hình hóa dữ liệu. Các mô hình học máy trong
Python đều yêu cầu đầu vào là số, vì vậy nếu tập dữ liệu có các biến phân loại, ta
sẽ cần phải chuyển đổi chúng. Bước tiền xử lý dữ liệu chính là điều kiện tiên quyết
để lập mô hình dữ liệu.
Dữ liệu có thể có nhiều phần không liên quan và bị thiếu. Để xử lý phần này, việc
dọn dẹp dữ liệu được thực hiện. Nó liên quan đến việc xử lý dữ liệu bị thiếu, dữ
liệu bị nhiễu, v.v.
a)Dữ liệu bị thiếu: Tình huống này phát sinh khi một số dữ liệu bị thiếu trong dữ
liệu. Nó có thể được xử lý theo nhiều cách khác nhau.
Cách tiếp cận này chỉ phù hợp khi tập dữ liệu chúng ta có khá lớn và nhiều
giá trị bị thiếu trong một bộ giá trị.
Dữ liệu nhiễu là dữ liệu vô nghĩa mà máy móc không thể giải thích được. Nó có
thể được tạo ra do thu thập dữ liệu bị lỗi, lỗi nhập dữ liệu, v.v. Có thể xử lý theo
các cách sau:
Phương pháp này hoạt động trên dữ liệu đã được sắp xếp để làm mịn nó.
Toàn bộ dữ liệu được chia thành các phân đoạn có kích thước bằng nhau và
sau đó các phương pháp khác nhau được thực hiện để hoàn thành nhiệm vụ.
Mỗi phân đoạn được xử lý riêng biệt. Người ta có thể thay thế tất cả dữ liệu
trong một phân đoạn bằng giá trị trung bình hoặc giá trị ranh giới của nó có
thể được sử dụng để hoàn thành nhiệm vụ.
2.Hồi quy:
Ở đây dữ liệu có thể được làm trơn tru bằng cách điều chỉnh nó với một hàm
hồi quy. Hồi quy được sử dụng có thể là tuyến tính (có một biến độc lập)
hoặc nhiều (có nhiều biến độc lập).
3.Phân cụm:
Cách tiếp cận này nhóm các dữ liệu tương tự trong một cụm. Các ngoại lệ có
thể không bị phát hiện hoặc nó sẽ nằm ngoài các cụm.
Bước này được thực hiện để chuyển đổi dữ liệu ở các dạng thích hợp phù hợp với
quá trình khai thác. Điều này liên quan đến những cách sau:
1.Chuẩn hóa:
Nó được thực hiện để chia tỷ lệ các giá trị dữ liệu trong một phạm vi được
chỉ định (-1,0 đến 1,0 hoặc 0,0 đến 1,0)
3.Discretization:
Điều này được thực hiện để thay thế các giá trị thô của thuộc tính số bằng
các mức khoảng hoặc mức khái niệm.
Ở đây các thuộc tính được chuyển đổi từ cấp thấp hơn lên cấp cao hơn trong
hệ thống phân cấp. Ví dụ -Thuộc tính "thành phố" có thể được chuyển đổi
thành "quốc gia".
Vì khai thác dữ liệu là một kỹ thuật được sử dụng để xử lý lượng dữ liệu khổng lồ.
Trong khi làm việc với khối lượng dữ liệu khổng lồ, việc phân tích trở nên khó
khăn hơn trong những trường hợp như vậy. Để loại bỏ điều này, chúng tôi sử dụng
kỹ thuật giảm dữ liệu. Nó nhằm mục đích tăng hiệu quả lưu trữ và giảm chi phí lưu
trữ và phân tích dữ liệu.
Phép toán tổng hợp được áp dụng cho dữ liệu để xây dựng khối dữ liệu.
Nên sử dụng các thuộc tính có liên quan cao, tất cả các thuộc tính còn lại có
thể bị loại bỏ. Để thực hiện lựa chọn thuộc tính, người ta có thể sử dụng mức
ý nghĩa và giá trị p của thuộc tính. Thuộc tính có giá trị p lớn hơn mức ý
nghĩa có thể bị loại bỏ.
3.Giảm số lượng:
Điều này cho phép lưu trữ mô hình dữ liệu thay vì toàn bộ dữ liệu, ví dụ: Mô
hình hồi quy.
Phân cụm là quá trình gom cụm/ nhóm các đối tượng/ dữ liệu có đặc điểm tương
đồng vào các cụm/nhóm tương ứng. Trong đó:
Các đối tượng trong cùng một cụm sẽ có những tính chất tương tự nhau
Các đối tượng thuộc cụm/nhóm khác nhau sẽ có những tính chất khác
nhau.
Lưu ý: dữ liệu bài toán phân cụm là dữ liệu chưa được gắn nhãn đây là dữ liệu
thường thấy trong thực tế
- Giữa các đối tượng dữ liệu với nhau tìm ra và đo đạc được sự khác biệt của
chúng là nhiệm vụ chính của phân cụm
- Phân cụm là một nhóm phương pháp học không giám sát ( unsupervised learning)
vì không biết được số nhóm
- Phương pháp tốt nhất của phân cụm là tạo ra các cụm có chất lượng cao:
Phân cụm dữ liệu được áp dụng rộng rãi ở các lĩnh vực kinh tế như:
Các thuật toán phân cụm có khả năng nhóm những người có đặc điểm giống hệt
nhau và có triển vọng mua hàng. Ví dụ: sau khi các nhóm được tạo, bạn có thể tiến
hành chiến dịch thử nghiệm trên từng nhóm bằng cách gửi bản sao tiếp thị và theo
phản hồi, bạn có thể gửi thêm thông điệp mục tiêu (bao gồm thông tin về sản phẩm
và dịch vụ) cho họ trong tương lai.
Trong ứng dụng phân khúc khách hàng, các nhóm khách hàng khác nhau được tạo
ra liên quan đến các thuộc tính cụ thể của họ. Trên cơ sở phân tích dựa trên người
dùng, một công ty có thể xác định khách hàng tiềm năng cho sản phẩm hoặc dịch
vụ của họ.
Ví dụ: phân nhóm K-means rất hữu ích cho các nhà tiếp thị để cải thiện cơ sở
khách hàng, làm việc trên các khu vực được nhắm mục tiêu và phân chia khách
hàng trên cơ sở lịch sử mua hàng, sở thích hoặc hoạt động.
Đây là quá trình kiểm tra các cấu trúc xã hội định tính và định lượng bằng cách sử
dụng Lý thuyết Đồ thị (một nhánh chính của toán học rời rạc ) và mạng lưới. Ở
đây, ánh xạ cấu trúc mạng xã hội được sắp xếp theo các nút (tính cách cá nhân, con
người hoặc thực thể khác bên trong mạng) và các cạnh hoặc liên kết (mối quan hệ,
tương tác hoặc giao tiếp) kết nối chúng.
Phân tích phân cụm có thể cung cấp phân tích / trình bày trực quan và toán học về
các mối quan hệ như vậy và đưa ra tóm tắt mạng xã hội.
Ví dụ, để hiểu một mạng và những người tham gia của nó, cần phải đánh giá vị trí
và nhóm các tác nhân trong mạng, nơi các tác nhân có thể là cá nhân, nhóm chuyên
môn, phòng ban, tổ chức hoặc bất kỳ đơn vị cấp hệ thống khổng lồ nào.
Đây là kết quả của việc phân cụm, nó tạo các nhóm đối tượng tương tự trong một
cụm duy nhất và hiển thị cho bạn, tức là cung cấp kết quả của dữ liệu được tìm
kiếm theo hầu hết các đối tượng có liên quan chặt chẽ được nhóm trên dữ liệu
được tìm kiếm
Phương pháp này không cần được xác định trước số cụm nhưng cần xác định điều
kiện dừng
Sử dụng ma trận sai khác ( dissimilarity matrix) và phương pháp single – link
AGNES
-Ở mỗi bước, gom 2 cụm gần nhau thành 1 cụm. Khoảng cách giữa 2 cụm là
khoảng cách giữa 2 điểm gần nhất từ 2 cụm, hoặc khoảng cách trung bình
-Quá trình này lặp lại cho đến khi tất cả các phần tử cùng thuộc một cụm lớn
-Là sơ đồ/ cây biểu diễn sự phân rã các phần tử dữ liệu thành nhiều cấp độ lồng
nhau
DIANA
-Ở mỗi bước chia cụm ban đầu thành 2 cụm. Khoảng cách giữa 2 cụm là khoảng
cách giữa 2 điểm gần nhất từ hai cụm, hoặc khoảng cách trung binhg
-Thực hiện đệ quy trên các cụm mới được tách ra và lặp lại cho đến khi mỗi phần
tử là 1 cụm
Single-link: khoảng cách giữa hai cụm là khoảng cách tối thiểu giữa các
phần tử của hai cụm
Complete-link: khoảng cách giữa hai cụm là khoảng cách tối đa giữa các
phần tử của hai cụm
Average-link: khoảng cách trung bình giữa 1 phần tử trong 1 cụm với 1 phần
tử ở cụm khác
Mean: khoảng cách giữa các điểm trung bình của 2 cụm
Dist( Ci,Cj) = |mi – mj|
với mi và mj là trung bình các phần tử trong cụm Ci và Cj
Centroid: khoảng cách giữa các trọng tâm của 2 cụm
Dist( Ci,Cj) = Dist( ci,cj)
Với ci, cj là trung tâm của cụm Ci,Cj
Medoid: khoảng cách giữa các trung tâm cụm của 2 cụm
Dist( Ci,Cj) = Dist( Mi,Mj)
Medoid là phần tử nằm ở trung tâm cụm
Với M1 và M2 là trung tâm của các phần tử trong cụm C1 và C2
-Các cụm hình thành trên cơ sở tối ưu hóa giá trị hàm độ đo tương tự (độ đo phân
cụm) sao cho:
+Mỗi đối tượng thuộc duy nhất 1 cụm, các phần tử trong cụm có sự tương tự
nhau
K-MEANS
K-Means Clustering là một thuật toán Học tập không giám sát , nhóm các tập dữ
liệu không được gắn nhãn thành các cụm khác nhau. K xác định số lượng cụm
được xác định trước cần được tạo trong quá trình này, như nếu K = 2, sẽ có hai
cụm, và đối với K = 3, sẽ có ba cụm, v.v.
Nó cho phép phân cụm dữ liệu thành các nhóm khác nhau và một cách thuận tiện
để tự khám phá các danh mục của nhóm trong tập dữ liệu chưa được gắn nhãn
Nó là một thuật toán dựa trên centroid, trong đó mỗi cụm được liên kết với một
centroid. Mục đích chính của thuật toán này là giảm thiểu tổng khoảng cách giữa
điểm dữ liệu và các cụm tương ứng của chúng.
Thuật toán lấy tập dữ liệu không được gắn nhãn làm đầu vào, chia tập dữ liệu
thành k-số cụm và lặp lại quá trình cho đến khi nó không tìm thấy cụm tốt nhất.
Giá trị của k nên được xác định trước trong thuật toán này.
Thuật toán phân cụm k- mean chủ yếu thực hiện hai tác vụ:
- Xác định giá trị tốt nhất cho K tâm điểm hoặc tâm bằng một quy trình lặp
lại.
- Gán mỗi điểm dữ liệu cho trung tâm k gần nhất của nó. Những điểm dữ liệu
gần trung tâm k cụ thể sẽ tạo ra một cụm.
Hình : Sơ đồ giải thích hoạt động thuật toán phân cụm K-means
Hoạt động của thuật toán K-Means được giải thích theo các bước dưới đây:
Bước 2: Chọn K điểm hoặc trọng tâm ngẫu nhiên. (Nó có thể khác với tập dữ liệu
đầu vào).
Bước 3: Gán mỗi điểm dữ liệu cho trung tâm gần nhất của chúng, sẽ tạo thành các
cụm K được xác định trước.
Bước 4: Tính toán phương sai và đặt một trung tâm mới của mỗi cụm.
Bước 5: Lặp lại các bước thứ ba, có nghĩa là chỉ định lại mỗi điểm dữ liệu cho
trung tâm gần nhất mới của mỗi cụm.
Bước 6: Nếu có bất kỳ sự phân công lại nào xảy ra, hãy chuyển sang bước-4, sau
đó chuyển đến HOÀN TẤT.
thập. (a) Tập dữ liệu gốc. (b) Các trọng tâm cụm ban đầu ngẫu nhiên. (cf) Hình minh họa về việc chạy hai lần lặp lại của k-means.
Trong mỗi lần lặp, chúng tôi chỉ định mỗi ví dụ đào tạo cho trung tâm cụm gần nhất (được hiển thị bằng cách "sơn" các ví dụ đào tạo
cùng màu với trung tâm cụm được chỉ định); sau đó di chuyển mỗi trung tâm cụm đến trung bình của các điểm được chỉ định cho nó.
Là quá trình phân một đối tượng dữ liệu vào một hay nhiều lớp (loại) đã cho trước
nhờ một mô hình phân lớp.
Mô hình này được xây dựng trên một tập dữ liệu đã được gắn nhãn trước đó (thuộc
về lớp nào).
Quá trình gán nhãn thuộc lớp nào cho đối tượng dữ liệu chính là quá trình phân lớp
dữ liệu.
-Hồi quy logistic: là mô hình xác suất dự đoán giá trị đầu ra rời rạc từ một tập các
giá trị đầu vào (biểu diễn dưới dạng vector)
-Cây quyết định (decision tree): là đồ thị quyết định cùng các kết quả hả dĩ đi kèm
nhằm hỗ trợ quá trinhg ra quyết định
Trong lĩnh vực khai thác dữ liệu cây quyết định là phương pháp nhằm mô tả, phân loại và
tổng quát tập dữ liệu cho trước .
-SVM (support vector machine): là một thuật toán có giám sát, SVM nhân dữ liệu vào,
xem như những vẽtor trog không gian và phân loại chúng vào các lớp khác nhau bằng
cách xây dựng một siêu phẳng tronng không gian nhiều chiều làm mặt phân cách các lớp
dữ liệu.
Ma trận nhầm lẫn ( confusion matrix): là ma trận chỉ ra có bao nhiêu điểm dữ liệu
thực sự thuộc vào một lớp cụ thể, và được dự đoán vào lớp nào.
Precision(độ chính xác): cho biết trong số m mẫu được phân vào lớp i thì có tỷ lệ
bao nhiêu mẫu có đúng (tránh nhầm lẫn với tính chính xác accuracy)
ROC và AUC:
+ROC: là đồ thị được sự dụng phổ biến trong đánh giá mô hình phân loại nhị phân.
Đường cong này được tạo ra bằng cách biểu diễn tỷ lệ dự báo true positive rate
(TPR) dựa trên tỷ lệ dự báo false positive rate (FPR) tại các ngưỡng khác nhau.
+AUC: là diện tích nằm dưới đường cong ROC. Giá trị này là một số dương nhỏ
hơn hoặc bằng 1. Giá trị này càng lớn thì mô hình càng tốt