1. Trang chủ
  2. » Giáo Dục - Đào Tạo

Khai thác dữ liệu báo cáo chương ii tiền xử lí dữ liệu

25 5 0
Tài liệu đã được kiểm tra trùng lặp

Đang tải... (xem toàn văn)

Tài liệu hạn chế xem trước, để xem đầy đủ mời bạn chọn Tải xuống

THÔNG TIN TÀI LIỆU

Thông tin cơ bản

Tiêu đề Tiền xử lý dữ liệu
Tác giả Nguyễn Hải Đăng, Lê Phương Lâm, Trần Phan Tuyết Lan, Nguyễn Lê Thùy Linh, Nguyễn Khả Lực
Người hướng dẫn ThS.NCS. Trần Anh Tuấn
Trường học Học viện hàng không Việt Nam
Chuyên ngành Công nghệ thông tin
Thể loại báo cáo
Năm xuất bản 2025
Thành phố TP.Hồ Chí Minh
Định dạng
Số trang 25
Dung lượng 567,21 KB

Nội dung

Đây là quá trình chuẩn bị dữ liệu thô nhằm đảm bảo dữ liệu đạt chất lượngcần thiết để áp dụng vào các phương pháp phân tích hoặc xây dựng mô hình học máy.. Ví dụ: Trong dữ liệu khảo sát,

Trang 1

BỘ GIAO THÔNG VẬN TẢI HỌC VIỆN HÀNG KHÔNG VIỆT NAM

KHOA CÔNG NGHỆ THÔNG TIN

KHAI THÁC DỮ LIỆU BÁO CÁO CHƯƠNG II: TIỀN XỬ LÍ DỮ LIỆU

Giảng viên hướng dẫn: ThS.NCS Trần Anh Tuấn

Sinh viên/ Nhóm sinh viên thực hiện: Nhóm 02

Lớp: 010100087302

TP.Hồ Chí Minh, tháng 01/2025

Trang 2

Danh sách Nhóm:

Trang 3

MỤC LỤC

CHƯƠNG 2 Tiền xử lý dữ liệu 1

2.1 Tại sao phải tiền xử lý dữ liệu 1

2.2 Trích xuất và chuyển đổi kiểu dữ liệu 2

2.3 Làm sạch dữ liệu 6

2.4 Thu gọn và chuyển đổi dữ liệu 9

Trang 4

CHƯƠNG 2 TIỀN XỬ LÝ DỮ LIỆU

2.1 Tại sao phải tiền xử lý dữ liệu

Tiền xử lý dữ liệu (Data Preprocessing) là bước khởi đầu quan trọng trong quy trình xử lý dữ liệu

và phân tích dữ liệu Đây là quá trình chuẩn bị dữ liệu thô nhằm đảm bảo dữ liệu đạt chất lượngcần thiết để áp dụng vào các phương pháp phân tích hoặc xây dựng mô hình học máy Dưới đây làcác lý do chính giải thích tại sao phải thực hiện bước tiền xử lý dữ liệu:

Cải thiện chất lượng dữ liệu

1 Vấn đề: Dữ liệu thô thường chứa các lỗi như giá trị thiếu, dữ liệu không chính xác,

hoặc dữ liệu không nhất quán

2 Lợi ích: Việc tiền xử lý loại bỏ các khuyết điểm này, giúp dữ liệu trở nên sạch hơn

và đáng tin cậy hơn

3 Ví dụ: Trong dữ liệu khảo sát, các giá trị không hợp lệ như "N/A" hoặc "-" trong cột

tuổi cần được xử lý để đảm bảo dữ liệu có thể sử dụng được

Tăng hiệu suất và độ chính xác của mô hình

1 Vấn đề: Dữ liệu không được chuẩn hóa hoặc có nhiều giá trị ngoại lai sẽ ảnh hưởng

tiêu cực đến hiệu suất của thuật toán học máy

2 Lợi ích: Tiền xử lý chuẩn hóa dữ liệu, giảm thiểu sai số và tối ưu hóa hiệu quả của

mô hình

3 Ví dụ: Trong bài toán phân loại email, việc loại bỏ các từ không liên quan như "the"

hay "a" (stop words) giúp cải thiện kết quả phân tích

Giảm độ phức tạp và khối lượng tính toán

1 Vấn đề: Dữ liệu thô thường có kích thước lớn hoặc chứa các thông tin dư thừa,

không cần thiết

2 Lợi ích: Giảm kích thước dữ liệu hoặc trích xuất các đặc trưng cần thiết giúp tiết

kiệm thời gian và tài nguyên tính toán

Trang 5

3 Ví dụ: Trong xử lý ảnh, giảm độ phân giải của hình ảnh có thể giúp giảm tải cho các

mô hình xử lý ảnh phức tạp

Đảm bảo tính nhất quán và khả năng tái sử dụng

1 Vấn đề: Dữ liệu đến từ nhiều nguồn khác nhau, thường không đồng nhất về định

dạng và cấu trúc

2 Lợi ích: Chuẩn hóa và đồng nhất dữ liệu giúp việc phân tích dễ dàng hơn và đảm

bảo khả năng sử dụng lâu dài

3 Ví dụ: Kết hợp dữ liệu từ nhiều bảng cơ sở dữ liệu với các định dạng ngày tháng

khác nhau (DD/MM/YYYY và MM-DD-YYYY) yêu cầu chuyển đổi về một chuẩnchung

Tuân thủ các tiêu chuẩn pháp lý và quy định

1 Vấn đề: Dữ liệu nhạy cảm như thông tin tài chính hoặc cá nhân yêu cầu tuân thủ các

tiêu chuẩn bảo mật và quyền riêng tư

2 Lợi ích: Tiền xử lý giúp mã hóa hoặc ẩn danh dữ liệu để đáp ứng các yêu cầu về bảo

mật

3 Ví dụ: Trong dữ liệu y tế, thông tin cá nhân như tên bệnh nhân có thể bị ẩn danh để

đảm bảo tuân thủ luật bảo vệ dữ liệu (GDPR)

2.2 Trích xuất và chuyển đổi kiểu dữ liệu

1 Trích xuất dữ liệu từ nhiều nguồn

Phương pháp tiêu biểu: Trích xuất từ cơ sở dữ liệu SQL

o Thực hiện:

1 Xác định cơ sở dữ liệu và các bảng cần trích xuất

2 Viết câu lệnh SQL để lấy dữ liệu, bao gồm các trường và điều kiện lọc cầnthiết

3 Sử dụng thư viện hoặc công cụ (như pymysql hoặc SQLAlchemy trongPython) để kết nối và lấy dữ liệu

Trang 6

o Ví dụ:

Một công ty cần trích xuất dữ liệu đơn hàng từ cơ sở dữ liệu:

1 Bảng orders có các cột: order_id, customer_id, order_date, total_amount

2 Thực hiện trong Python:

import pymysqlconn = pymysql.connect(host='localhost', user='user',password='password', database='sales_db')

query = "SELECT order_id, customer_id, order_date, total_amount FROMorders WHERE total_amount > 1000"

data = pd.read_sql(query, conn)print(data.head())

3 Kết quả:

order_id customer_id order_date total_amount

0 101 1 2023-01-01 1200

1 102 2 2023-01-03 1500

2 Chuyển đổi kiểu dữ liệu

Phương pháp tiêu biểu: Chuyển đổi định dạng ngày tháng

o Thực hiện:

1 Xác định cột cần chuyển đổi

2 Sử dụng các công cụ hoặc thư viện như pandas để thực hiện chuyển đổi

3 Đảm bảo tất cả giá trị được chuyển về định dạng thống nhất

o Ví dụ:

Cột "Ngày sinh" có các định dạng khác nhau như: 01-01-1990, 1990/01/02, January

3, 1990

Trang 7

 Python code:

import pandas as pddata = {'Ngày sinh': ['01-01-1990', '1990/01/02', 'January 3, 1990']}

df = pd.DataFrame(data)df['Ngày sinh'] = pd.to_datetime(df['Ngày sinh'])print(df)

3 Mã hóa dữ liệu phân loại

Phương pháp tiêu biểu: One-Hot Encoding

o Thực hiện:

1 Xác định các cột dữ liệu phân loại cần mã hóa

2 Sử dụng công cụ (như pandas.get_dummies()) để tạo các cột nhị phân đạidiện cho từng giá trị phân loại

o Ví dụ:

Cột "Giới tính" với giá trị "Nam" và "Nữ":

data = {'Tên': ['A', 'B', 'C'], 'Giới tính': ['Nam', 'Nữ', 'Nam']}

df = pd.DataFrame(data)df_encoded = pd.get_dummies(df, columns=['Giới tính'])print(df_encoded)

Trang 8

4 Chuẩn hóa và tỷ lệ hóa dữ liệu

Phương pháp tiêu biểu: Chuẩn hóa dữ liệu số

df = pd.DataFrame(data)df['Điểm chuẩn hóa'] = (df['Điểm'] - df['Điểm'].min()) / (df['Điểm'].max() -df['Điểm'].min())

print(df)

 Kết quả:

Trang 9

Điểm Điểm chuẩn hóa

0 50 0.00

1 75 0.50

2 100 1.00

5 Tích hợp dữ liệu từ nhiều nguồn

Phương pháp tiêu biểu: Gộp dữ liệu dựa trên khóa chính

o Thực hiện:

1 Xác định khóa chính chung giữa các bảng dữ liệu

2 Dùng các công cụ (như pandas.merge() trong Python) để kết hợp dữ liệu

o Ví dụ:

Bảng "Khách hàng" và "Đơn hàng":

customers = {'ID': [1, 2], 'Tên': ['A', 'B']}

orders = {'CustomerID': [1, 2], 'Số lượng': [5, 10]}

df_customers = pd.DataFrame(customers)df_orders = pd.DataFrame(orders)

merged = pd.merge(df_customers, df_orders, left_on='ID',right_on='CustomerID')

Trang 10

Phương pháp tiêu biểu: Vector hóa từ (Word Embedding)

o Thực hiện:

1 Sử dụng thư viện NLP như gensim hoặc spaCy

2 Áp dụng thuật toán như Word2Vec để chuyển đổi văn bản thành vector số

o Ví dụ:

Đoạn văn bản: "Tôi thích học Python."

Sau khi vector hóa:

['Tôi': [0.2, 0.1, 0.3], 'thích': [0.4, 0.6, 0.5], 'học': [0.7, 0.8, 0.9], 'Python':[0.3, 0.5, 0.6]]

2.3 Làm sạch dữ liệu

Làm sạch dữ liệu là một phần không thể thiếu trong quy trình tiền xử lý, đảm bảo dữ liệu đầu vàođạt chất lượng cao để áp dụng vào phân tích hoặc xây dựng mô hình Dưới đây là các nội dung chitiết liên quan đến loại dữ liệu cần xử lý và phương pháp xử lý

1 Các loại dữ liệu cần xử lý

Dữ liệu nhiễu (Noise):

1 Khái niệm: Dữ liệu không liên quan hoặc chứa sai lệch ảnh hưởng đến độ chính

xác của phân tích

2 Ví dụ: Trong dữ liệu cảm biến, giá trị nhiệt độ đột ngột tăng lên 1000°C (không hợp

lý)

Dữ liệu thiếu (Missing Data):

1 Khái niệm: Các giá trị bị bỏ trống trong tập dữ liệu.

2 Ví dụ: Trong dữ liệu khảo sát, một số người không trả lời câu hỏi về "tuổi".

Trang 11

Dữ liệu bất thường (Outliers):

1 Khái niệm: Giá trị vượt xa phạm vi thông thường của dữ liệu.

2 Ví dụ: Một giao dịch ngân hàng trị giá 1 triệu USD khi các giao dịch khác chỉ từ

1000 - 10,000 USD

Dữ liệu không nhất quán:

1 Khái niệm: Dữ liệu có định dạng hoặc ý nghĩa không đồng nhất.

2 Ví dụ: "Hà Nội" và "HN" chỉ cùng một địa danh nhưng biểu diễn khác nhau.

Dữ liệu trùng lặp (Duplicate Data):

1 Khái niệm: Các bản ghi lặp lại trong tập dữ liệu.

2 Ví dụ: Một khách hàng xuất hiện hai lần với thông tin giống nhau.

2 Phương pháp làm sạch dữ liệu

Làm sạch dữ liệu là bước quan trọng nhằm loại bỏ các giá trị lỗi, không nhất quán, hoặc thiếu sót

để đảm bảo dữ liệu đạt chất lượng tốt nhất Dưới đây là các phương pháp xử lý chính được trìnhbày với cách thực hiện chi tiết và ví dụ minh họa cho một phương pháp tiêu biểu

2.1 Xử lý dữ liệu nhiễu (Noise)

Phương pháp tiêu biểu: Lọc trung bình (Mean Filter)

o Thực hiện:

1 Xác định khoảng thời gian hoặc phạm vi áp dụng bộ lọc

2 Tính giá trị trung bình của dữ liệu trong phạm vi đã chọn

3 Thay thế giá trị nhiễu bằng giá trị trung bình

o Ví dụ:

Trong dữ liệu cảm biến đo nhiệt độ:

Trang 12

1 Chuỗi dữ liệu gốc: [20, 21, 1000, 22, 23] (1000 là giá trị nhiễu).

2 Áp dụng lọc trung bình với phạm vi 3 giá trị liền kề:

o Loại bỏ hoàn toàn giá trị nhiễu

2.2 Xử lý dữ liệu thiếu (Missing Data)

Phương pháp tiêu biểu: Điền giá trị trung bình (Mean Imputation)

o Thực hiện:

1 Tính giá trị trung bình của cột dữ liệu có giá trị thiếu

2 Thay thế các giá trị bị thiếu bằng giá trị trung bình vừa tính

o Ví dụ:

Trong tập dữ liệu nhân viên:

 Dữ liệu gốc (cột "Lương"): [15, 20, NaN, 25, NaN]

 Giá trị trung bình: (15 + 20 + 25) / 3 = 20

 Dữ liệu sau xử lý: [15, 20, 20, 25, 20]

Các phương pháp khác:

o Điền giá trị trung vị (Median Imputation)

o Điền giá trị chế độ (Mode Imputation)

Trang 13

o Dự đoán giá trị thiếu bằng thuật toán học máy (kNN, hồi quy).

2.3 Xử lý dữ liệu bất thường (Outliers)

Phương pháp tiêu biểu: Khoảng tứ phân vị (IQR Method)

o Thực hiện:

1 Tính các giá trị Q1 (phân vị thứ nhất) và Q3 (phân vị thứ ba)

2 Tính khoảng tứ phân vị: IQR = Q3 - Q1

3 Xác định giới hạn:

Giới hạn dưới: Q1 - 1.5 * IQR.

Giới hạn trên: Q3 + 1.5 * IQR.

4 Loại bỏ các giá trị nằm ngoài giới hạn

o Sử dụng thuật toán phát hiện bất thường (Isolation Forest, DBSCAN)

o Gắn cờ các giá trị bất thường để kiểm tra thủ công

2.4 Xử lý dữ liệu không nhất quán

Phương pháp tiêu biểu: Chuẩn hóa định dạng (Standardization)

Trang 14

o Thực hiện:

1 Xác định các mẫu không nhất quán trong dữ liệu

2 Quy đổi các mẫu đó về một định dạng chuẩn

o Ánh xạ giá trị bằng bảng quy đổi

o Sử dụng công cụ tự động phát hiện mẫu không nhất quán

2.5 Xử lý dữ liệu trùng lặp (Duplicate Data)

Phương pháp tiêu biểu: Loại bỏ bản ghi trùng (Remove Duplicates)

Trang 15

o Sử dụng thuật toán phát hiện trùng lặp gần (Fuzzy Matching).

2.4 Thu gọn và chuyển đổi dữ liệu

Thu gọn và chuyển đổi dữ liệu là bước quan trọng trong tiền xử lý, giúp giảm kích thước dữ liệu,tối ưu hóa tài nguyên tính toán, và chuyển đổi dữ liệu thô thành dạng dễ phân tích hơn Quá trìnhnày tập trung vào việc trích xuất các đặc trưng quan trọng và tổ chức dữ liệu theo cách phù hợpvới mục tiêu phân tích

1 Thu gọn dữ liệu

Tập dữ liệu được biến đổi đảm bảo các toàn vẹn, nhưng nhỏ hoặc ít hơn nhiều về số lượng dữ liệu

so với ban đầu

Có 5 chiến lược thu gọn dữ liệu:

 Kết hợp khối dữ liệu (data cube aggregation)

 Lựa chọn tập thuộc tính (Attribute subset selection)

 Giảm số chiều dữ liệu (Dimensionality reduction)

 Giảm biểu diễn số lớn (Numerosity reduction)

 Rời rạc hóa dữ liệu (discretization) và tạo lược đồ khái niệm (concept hierarchygeneration)

Trang 16

Kết hợp khối dữ liệu (data cube aggregation): Các thao tác gộp nhóm sẽ được áp dụng trên dữ

liệu để tạo ra một data cube

 Dạng dữ liệu: additive, semi-additive (numerical)

 Kết hợp dữ liệu bằng các hàm nhóm: average, min, max, sum, count, …

Dữ liệu ở các mức trừu tượng khác nhau Mức trừu tượng càng cao giúp thu giảm lượng dữ liệucàng nhiều

Lựa chọn tập thuộc tính (Attribute subset selection): Các thuộc tính thừa hoặc không thích

hợp sẽ được phát hiện và loại bỏ

 Giảm kích thước tập dữ liệu bằng việc loại bỏ những thuộc tính/chiều/đặc trưng dư thừa

 Mục tiêu: tập ít các thuộc tính nhất vẫn đảm bảo phân bố xác suất (probability distribution)của các lớp dữ liệu đạt được gần với phân bố xác suất ban đầu với tất cả các thuộc tính

Trang 17

Giảm số chiều dữ liệu (Dimensionality reduction): Các cơ chế mã hóa (encoding) sẽ được áp

dụng để làm giảm kích thước dữ liệu

Rời rạc hóa dữ liệu (discretization) và tạo lược đồ khái niệm (concept hierarchy generation):

Trang 18

 Các giá trị dữ liệu thô ứng với các thuộc tính được thay thế bằng các khoảng (range) hoặccác mức khái niệm (conceptual levels) cao hơn.

 Rời rạc hóa dữ liệu được xem là một dạng thức của việc giảm biểu diễn số lớn và rất hữudụng trong việc tạo lược đồ khái niệm

 Rời rạc hóa dữ liệu và tạo lược đồ khái niệm được xem là những công cụ mạnh mẽ cho khaiphá dữ liệu Chúng cho phép thực hiện công việc khai phá ở những cấp độ trừu tượng khácnhau

 Các trị thuộc tính có thể được phân hoạch theo một phân cấp (hierarchical) hay ở nhiềumức phân giải khác nhau (multiresolution)

Dữ liệu đạt được có ý nghĩa và dễ được diễn dịch hơn, đòi hỏi ít không gian lưu trữ hơn.

Các phương pháp rời rạc hóa dữ liệu cho các thuộc tính số:

o Phân nhóm (Binning)

o Phân tích biểu đồ tần suất (Histogram analysis)

o Gộp khoảng dựa trên kiểm định ² 𝜒

(Interval merging by 2 analysis)

o Phân tích cụm (Cluster analysis)

o Rời rạc hóa dựa trên Entropy (Entropy-based discretization)

Dữ liệu được chuyển đổi hoặc hợp nhất thành các dạng phù hợp cho việc khai phá Chuyển dạng

dữ liệu liên quan tới các vấn đề sau đây:

Làm trơn (Smoothing): Loại bỏ các nhiễu (noisy) khỏi dữ liệu Các kỹ thuật sử dụng bao

gồm: đóng thùng (binning), hồi quy (regression), phân cụm (clustering)

Gộp nhóm (Aggregation): Các thao tác tóm tắt hay gộp nhóm được áp dụng với dữ liệu.

Chuyển dữ liệu ở mức chi tiết này sang dữ liệu ở mức kém chi tiết hơn Hỗ trợ việc phântích dữ liệu ở nhiều độ mịn thời gian khác nhau Bước này thường được sử dụng để xâydựng data cube cho phân tích dữ liệu từ nhiều nguồn

Khởi tạo dữ liệu (Generalization of the data): Dữ liệu thô được thay thế bởi các khái

niệm ở mức cao hơn thông qua việc sử dụng lược đồ khái niệm

Trang 19

Xây dựng thuộc tính (Attribute construction): Các thuộc tính mới được xây dựng và

thêm vào từ tập thuộc tính đã có sẵn để hỗ trợ quá trình khai phá (tăng độ chính xác và sự

dễ hiểu của cấu trúc trong dữ liệu theo nhiều chiều (high-dimensional data)) Bằng cáchkết hợp các thuộc tính, phát hiện ra các thông tin bị thiếu liên quan đến mối quan hệ giữacác thuộc tính dữ liệu (hữu ích cho quá trình khai phá)

Chuẩn hóa (Normalization): Dữ liệu thuộc tính được chuyển đổi tương ứng với các

phạm vi biểu diễn nhỏ hơn như [-1,1] hoặc [0,1] (một miền trị nhất định được định nghĩatrước)

⮕Chuẩn hóa min-max: thực hiện việc chuyển đổi tuyến tính dựa trên dữ liệu gốc Gọi minA,

maxA là giá trị lớn nhất và nhỏ nhất của thuộc tính A Chuẩn hóa min-max sẽ ánh xạ một giá trị vcủa A tương ứng với một giá trị v’ trong khoảng [new minA, new maxA] thông qua công thức:

⮕Chuẩn hóa z-score: các giá trị ứng với thuộc tính A được chuẩn hóa dựa trên giá trị trung bình

và độ lệch chuẩn của A Một giá trị v của A sẽ được chuẩn hóa tương ứng với một giá trị v’ thôngqua công thức:

Trang 20

Chuẩn hóa z-score rất hữu dụng khi:

 Không biết giá trị lớn nhất và nhỏ nhất thực tế của thuộc tính A

 Các giá trị kỳ dị (outliers) chi phối chuẩn hóa min-max

⮕Chuẩn hóa thập phân (decimal scaling): dịch chuyển dấu phẩy thập phân của các giá trị ứng với

thuộc tính A Số vị trí di chuyển phụ thuộc vào giá trị tuyệt đối lớn nhất của A Một giá trị v của Ađược chuẩn hóa thập phân tương ứng với một giá trị v’ theo công thức

Phương pháp tiêu biểu: Tổng hợp dữ liệu (Data Aggregation)

Mô tả: Kết hợp các giá trị trong tập dữ liệu dựa trên một hoặc nhiều thuộc tính để tạo ra tập

dữ liệu nhỏ hơn nhưng vẫn giữ được ý nghĩa chính

Thực hiện:

1 Xác định các cột hoặc thuộc tính cần tổng hợp

2 Chọn hàm tổng hợp phù hợp, như trung bình, tổng, hoặc đếm

Ngày đăng: 16/01/2025, 21:10

TÀI LIỆU CÙNG NGƯỜI DÙNG

TÀI LIỆU LIÊN QUAN

w