Certified Data Science Practitioner (CDSP DSP-210) 7 Sections22 Lessons20 Weeks
ETL trong Data Science: Nền tảng của mọi mô hình AI
ETL là gì?
ETL là viết tắt của:
- Extract – Trích xuất dữ liệu.
- Transform – Chuyển đổi và làm sạch dữ liệu.
- Load – Nạp dữ liệu vào môi trường đích.
ETL giúp đưa dữ liệu từ nhiều nguồn khác nhau về một cấu trúc thống nhất, đủ sạch và phù hợp để phân tích hoặc xây dựng mô hình Machine Learning.
Trong Blueprint DSP-210, Domain 2 chiếm 21% nội dung kỳ thi, đứng sau EDA và Building Models về tỷ trọng. Người học không nên xem ETL là phần phụ, bởi mô hình tốt không thể bù đắp cho dữ liệu sai, thiếu hoặc không nhất quán.

Quy trình ETL gồm những gì?
| Giai đoạn | Câu hỏi chính | Công việc tiêu biểu | Kết quả |
|---|---|---|---|
| Extract | Dữ liệu nằm ở đâu? | Đọc file, truy vấn cơ sở dữ liệu, gọi API, lấy dữ liệu đám mây | Dữ liệu thô |
| Transform | Dữ liệu có dùng được không? | Làm sạch, chuẩn hóa định dạng, xử lý lỗi, trùng lặp và thiên kiến | Dữ liệu đã xử lý |
| Load | Dữ liệu sẽ được sử dụng ở đâu? | Nạp vào database, DataFrame, công cụ trực quan hóa hoặc API | Dữ liệu sẵn sàng phân tích |
Có thể ghi nhớ đơn giản:
Extract lấy dữ liệu — Transform sửa dữ liệu — Load đưa dữ liệu đến nơi sử dụng.
1. Extract: Trích xuất dữ liệu
Extract là quá trình thu thập dữ liệu từ một hoặc nhiều nguồn.
Các nguồn dữ liệu thường gặp
| Nhóm nguồn | Ví dụ |
|---|---|
| File | CSV, Excel, JSON, XML |
| Cơ sở dữ liệu | SQL, NoSQL |
| Cloud Storage | AWS S3, Google Storage, Azure Data Lake |
| Dịch vụ trực tuyến | REST API |
| Nguồn công khai | Open Data |
| Website | Web Scraping |
| Dữ liệu tạo sinh | Dummy Data, Randomized Data, Synthetic Data |
Blueprint yêu cầu thí sinh nhận biết dữ liệu bên thứ nhất, thứ hai và thứ ba; đồng thời hiểu cách lấy dữ liệu bằng SQL, NoSQL, API, cloud storage và web scraping.
Ba loại nguồn dữ liệu cần nhớ
| Loại | Ý nghĩa | Ví dụ |
|---|---|---|
| First-party data | Dữ liệu do tổ chức trực tiếp sở hữu và thu thập | Lịch sử giao dịch khách hàng |
| Second-party data | Dữ liệu được một đối tác chia sẻ trực tiếp | Dữ liệu từ đối tác bảo hiểm |
| Third-party data | Dữ liệu từ nhà cung cấp hoặc nguồn bên ngoài | Dữ liệu dân số, thị trường |
Không nên trích xuất tất cả dữ liệu chỉ vì có thể truy cập được. Cần đặt câu hỏi: dữ liệu này có thực sự liên quan đến bài toán hay không?
2. Transform: Chuyển đổi và làm sạch dữ liệu
Dữ liệu sau khi thu thập thường chưa thể sử dụng ngay. Nó có thể chứa giá trị thiếu, bản ghi trùng, dữ liệu sai định dạng hoặc các giá trị bất thường.
Các vấn đề dữ liệu thường gặp
| Vấn đề | Ví dụ | Hướng xử lý |
|---|---|---|
| Null/Missing Value | Thiếu tuổi hoặc thu nhập | Điền giá trị hoặc loại bản ghi |
| Duplicate | Một khách hàng xuất hiện nhiều lần | Deduplicate |
| Corrupt Value | Tuổi khách hàng bằng 250 | Kiểm tra, sửa hoặc loại bỏ |
| Incorrect Format | Ngày tháng lưu dưới dạng văn bản | Chuyển đúng kiểu dữ liệu |
| Outlier | Giao dịch lớn bất thường | Điều tra trước khi xử lý |
| Inconsistent Data | “Hà Nội”, “HN”, “Ha Noi” | Chuẩn hóa giá trị |
Trong bài thi, cần phân biệt rõ:
- Dữ liệu bất thường không phải lúc nào cũng sai.
- Outlier không nên tự động bị xóa.
- Việc loại bỏ hay giữ lại dữ liệu phải dựa trên bối cảnh nghiệp vụ.
Tài liệu thực hành CDSP minh họa trường hợp dữ liệu tuổi lớn hơn 150 được xem là không hợp lý và có thể loại bỏ. Tuy nhiên, những trường hợp ít rõ ràng hơn cần tiếp tục điều tra thay vì xóa ngay.
Data Quality: Bốn tiêu chí cần nhớ
Blueprint DSP-210 yêu cầu đánh giá chất lượng dữ liệu theo bốn tiêu chí chính:
| Tiêu chí | Câu hỏi kiểm tra |
|---|---|
| Completeness | Dữ liệu có đầy đủ không? |
| Correctness | Dữ liệu có chính xác không? |
| Consistency | Dữ liệu giữa các nguồn có thống nhất không? |
| Currency | Dữ liệu có còn cập nhật không? |
Một bộ dữ liệu có nhiều bản ghi chưa chắc đã tốt. Dữ liệu lớn nhưng cũ, sai hoặc thiếu tính đại diện vẫn có thể làm mô hình đưa ra kết quả kém tin cậy.
Data Bias trong ETL
Thiên kiến có thể xuất hiện ngay từ khi thu thập và xử lý dữ liệu.
| Loại thiên kiến | Mô tả ngắn |
|---|---|
| Sampling Bias | Mẫu dữ liệu không đại diện cho tổng thể |
| Measurement Bias | Công cụ hoặc cách đo tạo ra sai lệch |
| Exclusion Bias | Một nhóm dữ liệu quan trọng bị loại bỏ |
| Observer Bias | Người thu thập chịu ảnh hưởng bởi nhận định cá nhân |
| Confirmation Bias | Chỉ lựa chọn dữ liệu củng cố giả định có sẵn |
| Prejudicial Bias | Định kiến xã hội được phản ánh trong dữ liệu |
| Bandwagoning | Chấp nhận quan điểm phổ biến mà không kiểm chứng |
Nguồn gây thiên kiến có thể nằm ở quá trình thu thập, gán nhãn, biến đổi, điền dữ liệu thiếu, lựa chọn mẫu hoặc huấn luyện mô hình. Một quy trình ETL đúng kỹ thuật nhưng dùng dữ liệu sai lệch vẫn có thể tạo ra mô hình thiếu công bằng.
3. Load: Nạp dữ liệu
Sau khi được làm sạch và chuyển đổi, dữ liệu phải được đưa đến môi trường phù hợp để sử dụng.
| Đích đến | Mục đích |
|---|---|
| Database | Lưu trữ và truy vấn lâu dài |
| DataFrame | Phân tích bằng Python hoặc R |
| CSV/Text File | Chia sẻ giữa nhiều công cụ |
| Visualization Tool | Tạo báo cáo và dashboard |
| API Endpoint | Cung cấp dữ liệu cho ứng dụng khác |
Khi kết hợp dữ liệu từ nhiều nguồn, cần bảo đảm tồn tại khóa chung hoặc định danh duy nhất. Nếu ghép bảng bằng sai khóa, dữ liệu có thể bị nhân bản, thất thoát hoặc gán nhầm cho đối tượng khác.
Ví dụ ETL trong bài toán ngân hàng
Một ngân hàng muốn xây dựng mô hình dự đoán khách hàng rời bỏ.
Extract
Thu thập dữ liệu từ:
- Hồ sơ khách hàng.
- Thông tin tài khoản.
- Lịch sử giao dịch.
- Thiết bị sử dụng.
- Khiếu nại và tương tác với ngân hàng.
Transform
Thực hiện:
- Loại bản ghi khách hàng trùng lặp.
- Xử lý số dư hoặc thu nhập bị thiếu.
- Chuẩn hóa ngày mở tài khoản.
- Kiểm tra tuổi hoặc số tiền bất hợp lý.
- Mã hóa các biến như nghề nghiệp và loại tài khoản.
- Ẩn thông tin nhận dạng cá nhân khi cần thiết.
Load
Nạp dữ liệu sạch vào:
- DataFrame để thực hiện EDA.
- Database phục vụ lưu trữ.
- Pipeline huấn luyện mô hình Classification.
Kết quả cuối cùng chưa phải là mô hình AI, mà là một bộ dữ liệu đáng tin cậy để mô hình có thể học đúng.
ETL và Data Preprocessing có giống nhau không?
Hai khái niệm có liên quan nhưng không hoàn toàn giống nhau.
| ETL | Data Preprocessing |
|---|---|
| Tập trung thu thập, làm sạch và đưa dữ liệu đến đích | Tập trung chuẩn bị dữ liệu cho mô hình cụ thể |
| Có thể phục vụ nhiều hệ thống | Thường gắn trực tiếp với Machine Learning |
| Bao gồm Extract, Transform, Load | Bao gồm scaling, encoding, imputation, feature selection |
Trong DSP-210, một số kỹ thuật như xử lý dữ liệu lỗi và ghép nguồn thuộc Domain 2; trong khi scaling, encoding và feature engineering được nhấn mạnh thêm ở Domain 3. Vì vậy, cần đọc kỹ mục tiêu câu hỏi thay vì chỉ dựa vào tên kỹ thuật.
Trọng tâm ôn thi CDSP DSP-210
| Nội dung | Điều cần nhớ |
|---|---|
| Nguồn dữ liệu | SQL, NoSQL, API, cloud, open data |
| Kiểu nguồn | First-party, second-party, third-party |
| Làm sạch | Null, duplicate, corrupt value, incorrect format |
| Chất lượng dữ liệu | Completeness, correctness, consistency, currency |
| Thiên kiến | Nhận diện nguồn và biện pháp giảm thiểu |
| Ghép dữ liệu | Common key, unique identifier |
| Nạp dữ liệu | Database, DataFrame, CSV, visualization, API |
| Dữ liệu văn bản | Tokenization, Word2Vec, TF-IDF, GloVe |
| Dữ liệu hình ảnh | Latent representation |
Bẫy thường gặp trong đề thi
Bẫy 1: Xóa mọi outlier
Outlier có thể là lỗi, nhưng cũng có thể là một trường hợp nghiệp vụ quan trọng như giao dịch gian lận.
Bẫy 2: Điền mọi giá trị thiếu bằng mean
Mean không phù hợp với dữ liệu phân loại và dễ bị ảnh hưởng bởi giá trị cực đoan.
Bẫy 3: Ghép bảng mà không kiểm tra khóa
Join sai có thể tạo dữ liệu trùng hoặc làm mất bản ghi.
Bẫy 4: Chỉ kiểm tra số lượng dữ liệu
Dữ liệu nhiều không đồng nghĩa với dữ liệu đầy đủ, chính xác hoặc cập nhật.
Bẫy 5: Xem ETL là công việc một lần
Dữ liệu thay đổi liên tục. Pipeline ETL cần được kiểm tra, giám sát và cải tiến.
Thuật ngữ cần nhớ
| Thuật ngữ | Nghĩa |
|---|---|
| Extract | Trích xuất dữ liệu |
| Transform | Chuyển đổi dữ liệu |
| Load | Nạp dữ liệu |
| Data Cleaning | Làm sạch dữ liệu |
| Data Parsing | Phân tách và diễn giải dữ liệu |
| Deduplication | Loại bỏ dữ liệu trùng |
| Data Quality | Chất lượng dữ liệu |
| Data Provenance | Nguồn gốc và lịch sử dữ liệu |
| Unique Identifier | Định danh duy nhất |
| Data Pipeline | Quy trình xử lý dữ liệu |
Kết luận
ETL là cầu nối giữa dữ liệu thô và dữ liệu có thể sử dụng. Một thuật toán hiện đại không thể tạo ra kết quả đáng tin cậy nếu dữ liệu đầu vào bị sai, thiếu, trùng lặp hoặc thiên lệch.
Đối với kỳ thi CDSP DSP-210, cần nắm chắc ba câu hỏi:
- Dữ liệu được lấy từ đâu?
- Dữ liệu cần được sửa và chuyển đổi như thế nào?
- Dữ liệu sẽ được nạp vào đâu để phân tích và xây dựng mô hình?
Hiểu đúng ba câu hỏi này là nền tảng để tiếp tục sang Exploratory Data Analysis, Feature Engineering và Building Models.