[FIT-LAB Spring 2026] Tìm hiểu về NLP (Buổi 7)
By Việt Nguyễn AI
Share:
Dưới đây là bản tóm tắt chi tiết nội dung bài giảng về tiền xử lý dữ liệu và xây dựng mô hình học máy (Machine Learning) từ video:
Key Concepts
- Tiền xử lý dữ liệu (Data Preprocessing): Các kỹ thuật chuẩn hóa dữ liệu (Min-Max Scaler, Standard Scaler), mã hóa dữ liệu (One-Hot Encoding, Ordinal Encoding).
- Column Transformer: Framework dùng để áp dụng các phương pháp tiền xử lý khác nhau cho các cột dữ liệu khác nhau trong cùng một tập dữ liệu.
- Mô hình học máy (Machine Learning Models): Linear Regression (Hồi quy tuyến tính), Random Forest (Rừng ngẫu nhiên).
- Đánh giá mô hình (Evaluation Metrics): MAE, MSE, $R^2$ (cho bài toán hồi quy); Accuracy, Precision, Recall, F1-score, Confusion Matrix (cho bài toán phân loại).
- Xử lý ngôn ngữ tự nhiên (NLP): Bag of Words (BoW), N-grams, TF-IDF, Tokenization, Lemmatization, Stemming.
1. Tiền xử lý dữ liệu (Data Preprocessing)
- Quy trình: Sử dụng các lớp (class) trong
scikit-learnvới 3 phương thức chính:fit(đo đạc dữ liệu),transform(biến đổi dữ liệu), vàfit_transform(kết hợp cả hai). - Nguyên tắc: Với tập Train, dùng
fit_transformđể học các tham số (min, max, mean, std). Với tập Test/Validation, chỉ dùngtransformđể đảm bảo tính khách quan, tránh rò rỉ dữ liệu (data leakage). - Kỹ thuật:
- Min-Max Scaler (Normalization): Đưa dữ liệu về khoảng [0, 1].
- Standard Scaler: Chuẩn hóa về phân phối chuẩn tắc (trung bình = 0, độ lệch chuẩn = 1).
- One-Hot Encoding: Dùng cho dữ liệu định danh (nominal) như chủng tộc (race), tạo ra các cột mới với giá trị 0 hoặc 1.
- Ordinal Encoding: Dùng cho dữ liệu có thứ tự (ordinal) như trình độ học vấn. Lưu ý: Phải chỉ định tham số
categoriesđể máy hiểu thứ tự ưu tiên, nếu không máy sẽ tự sắp xếp theo bảng chữ cái (alphabet), dẫn đến sai lệch logic.
2. Framework Column Transformer
- Mục đích: Cho phép áp dụng các bộ tiền xử lý khác nhau cho từng nhóm cột (ví dụ: cột số dùng Scaler, cột định danh dùng Encoder).
- Cấu trúc: Là một danh sách các bộ (tuple), mỗi bộ gồm: (Tên, Bộ biến đổi, Danh sách cột).
- Lợi ích: Giúp quy trình tiền xử lý trở nên gọn gàng, đồng bộ và dễ dàng áp dụng cho cả tập train và test.
3. Xây dựng và Đánh giá mô hình
- Hồi quy (Regression): Sử dụng
Linear Regression(đơn giản, hiệu quả với dữ liệu có tương quan tuyến tính) hoặcRandom Forest Regressor(phức tạp hơn). - Phân loại (Classification): Chuyển đổi bài toán bằng cách thay đổi cột
target. Sử dụngClassification Reportđể xem toàn diện các chỉ số Precision, Recall, F1-score. - Confusion Matrix: Ma trận nhầm lẫn giúp xác định các class nào thường bị dự đoán nhầm lẫn với nhau.
- Lưu ý về Random Forest: Mỗi lần chạy có thể ra kết quả khác nhau do quá trình lấy mẫu (bootstrapping) ngẫu nhiên. Cần sử dụng
random_stateđể cố định kết quả.
4. Xử lý ngôn ngữ tự nhiên (NLP)
- Bag of Words (BoW): Đếm tần suất xuất hiện của từ. Nhược điểm: Mất thông tin về thứ tự từ.
- N-grams: Cải thiện BoW bằng cách kết hợp các từ liên tiếp (Unigram, Bigram, Trigram). Giúp giữ lại một phần thông tin về thứ tự nhưng làm tăng kích thước từ điển (vocabulary).
- TF-IDF (Term Frequency - Inverse Document Frequency):
- TF: Tần suất từ trong văn bản (chia cho độ dài văn bản để chuẩn hóa).
- IDF: Nghịch đảo tần suất văn bản. Từ xuất hiện ở mọi văn bản sẽ có IDF thấp (không quan trọng), từ xuất hiện hiếm sẽ có IDF cao (quan trọng).
- Quy trình tiền xử lý văn bản:
- Loại bỏ dấu câu.
- Chuyển về chữ thường (lowercase).
- Tokenization (tách từ).
- Loại bỏ Stopwords (từ không mang ý nghĩa như "the", "a", "và").
- Lemmatization/Stemming (đưa từ về gốc).
- Thư viện:
NLTK(cho tiếng Anh),underthesea(thư viện chuyên dụng cho tiếng Việt, xử lý tốt các từ ghép và đặc thù ngôn ngữ Việt).
Tổng kết
- Không phải lúc nào mô hình phức tạp (như Random Forest) cũng tốt hơn mô hình đơn giản (như Linear Regression); hiệu quả phụ thuộc vào tính chất dữ liệu.
- Trong NLP, việc chọn phương pháp biểu diễn văn bản (BoW, TF-IDF) và tiền xử lý đúng ngôn ngữ là yếu tố quyết định đến hiệu suất của mô hình.
- Các mô hình Machine Learning truyền thống thường giả định các đặc trưng độc lập, do đó kém hiệu quả hơn Deep Learning khi xử lý các dữ liệu có tính thứ tự cao như văn bản hoặc hình ảnh.
Chat with this Video
AI-PoweredHi! I can answer questions about this video "[FIT-LAB Spring 2026] Tìm hiểu về NLP (Buổi 7)". What would you like to know?
Chat is based on the transcript of this video and may not be 100% accurate.