Chuyển đến nội dung chính

Bài đăng

Đang hiển thị bài đăng từ Tháng 4, 2026

Các lỗi phổ biến khi xây Sentiment Analysis

Các lỗi phổ biến khi xây sentiment analysis thường không nằm ở việc chọn Logistic Regression hay Transformer, mà xuất hiện sớm hơn ở dữ liệu, cách định nghĩa nhãn và quy trình đánh giá. Một mô hình có thể đạt metric khá tốt trên tập test nhưng vẫn xử lý sai hàng loạt câu thực tế nếu pipeline được thiết kế không đúng. Đặc biệt với tiếng Việt, phủ định, tiếng lóng, câu nhiều ý và sự khác biệt giữa từng domain khiến bài toán phân tích cảm xúc khó hơn việc tìm các từ như “tốt” hoặc “tệ”. Dưới đây là những lỗi đáng chú ý nhất khi xây dựng hệ thống. 1. Thiết kế nhãn không rõ ràng Một trong những lỗi đầu tiên là bắt đầu gán nhãn dữ liệu mà chưa xác định rõ positive, neutral và negative thực sự có nghĩa gì trong bài toán. Ví dụ với câu: “Camera đẹp nhưng pin khá yếu.” Câu này nên là positive, negative hay neutral? Nếu người gán nhãn A chọn positive còn người B chọn negative thì mô hình sẽ học từ dữ liệu không nhất quán. Trước khi annotation, nên xây label guideline với ví ...

Phân tích cảm xúc tiếng Việt trong NLP: Các case study

Phân tích cảm xúc tiếng Việt (Vietnamese Sentiment Analysis) là bài toán NLP xác định thái độ hoặc quan điểm được thể hiện trong văn bản, phổ biến nhất là tích cực, tiêu cực và trung lập . Bài toán tưởng đơn giản như một phép phân loại văn bản, nhưng khi áp dụng vào review sản phẩm, mạng xã hội hay hội thoại chăm sóc khách hàng, ngữ cảnh, phủ định và cách dùng tiếng Việt khiến kết quả phức tạp hơn đáng kể. Thay vì chỉ nhìn vào kiến trúc mô hình, bài viết này tập trung vào cách xây dựng hệ thống qua một số case study thực tế : xác định đúng mục tiêu, thiết kế nhãn, chuẩn bị dữ liệu, chọn mô hình và phân tích lỗi. Bài toán sentiment analysis thực sự dự đoán điều gì? Ở dạng cơ bản, hệ thống nhận một đoạn văn bản và trả về một nhãn cảm xúc. Ví dụ: “Máy chạy nhanh, pin tốt và màn hình đẹp.” → Tích cực “Giao hàng chậm, sản phẩm còn bị trầy.” → Tiêu cực “Sản phẩm được giao vào sáng thứ Hai.” → Trung lập Tuy nhiên, một câu có thể chứa nhiều quan điểm cùng lúc. Câu “Camera đẹ...

POS Tagging trong tiếng Việt

POS tagging trong tiếng Việt là quá trình gán nhãn từ loại cho từng từ hoặc token trong câu, chẳng hạn danh từ, động từ, tính từ hay đại từ. Đây là một bước xử lý quan trọng trong nhiều hệ thống NLP vì cùng một từ có thể đảm nhiệm vai trò ngữ pháp khác nhau tùy ngữ cảnh. Ví dụ, với câu “Lan đang học xử lý ngôn ngữ tự nhiên” , một bộ gán nhãn có thể xác định “Lan” là danh từ riêng, “đang” là phụ từ và “học” là động từ. Kết quả này giúp các bước xử lý phía sau hiểu cấu trúc câu tốt hơn. POS tagging là gì? POS là viết tắt của Part-of-Speech , nghĩa là từ loại. POS tagging nhận một chuỗi token làm đầu vào và dự đoán một nhãn ngữ pháp cho mỗi token. Input: Lan đang học NLP Output minh họa: Lan/Np   đang/R   học/V   NLP/Np Tên nhãn phụ thuộc vào tagset , tức tập nhãn mà mô hình được huấn luyện sử dụng. Một hệ thống có thể dùng N cho danh từ, V cho động từ và A cho tính từ, trong khi hệ thống khác dùng bộ nhãn chi tiết hơn. Vì vậy, khi sử dụng một thư viện h...

GloVe Word Embedding: Học vector từ ma trận đồng xuất hiện

Sau Word2Vec và FastText, GloVe (Global Vectors for Word Representation) đưa ra một cách tiếp cận khác để học vector từ. Thay vì chủ yếu dự đoán từ dựa trên từng cửa sổ ngữ cảnh, GloVe khai thác thống kê đồng xuất hiện (co-occurrence) được tổng hợp trên toàn bộ tập văn bản. Ý tưởng quan trọng của GloVe là: nếu hai từ thường xuất hiện trong những môi trường tương tự, cấu trúc thống kê đó phải được phản ánh trong không gian vector. Vì vậy, để hiểu GloVe, cần bắt đầu từ ma trận đồng xuất hiện trước khi đi đến hàm tối ưu. Tóm tắt nội dung GloVe bắt đầu từ số lần các từ xuất hiện gần nhau trong toàn bộ tập văn bản. Mô hình học các vector sao cho tích vô hướng giữa hai vector phản ánh logarit tần suất đồng xuất hiện . Khác FastText, GloVe chuẩn không dựa vào n-gram ký tự; trọng tâm của nó là cấu trúc thống kê toàn cục của từ . GloVe: từ thống kê đồng xuất hiện đến vector từ Thông tin toàn cục trong tập văn bản được nén vào không gian embedding. T...

Kỹ thuật Stemming, Lematization trong NLP

Stemming và lemmatization trong NLP là hai kỹ thuật dùng để chuẩn hóa từ về một dạng đơn giản hơn trước khi đưa vào các bước xử lý tiếp theo. Cả hai đều giúp giảm số lượng biến thể từ trong dữ liệu, nhưng cách hoạt động và chất lượng đầu ra khác nhau đáng kể. Hiểu rõ sự khác biệt giữa stemming và lemmatization giúp bạn chọn đúng kỹ thuật cho các bài toán như tìm kiếm văn bản, phân loại tài liệu, sentiment analysis hoặc xây dựng hệ thống NLP truyền thống. Stemming là gì? Stemming là quá trình cắt bỏ tiền tố hoặc hậu tố của từ theo một tập luật đơn giản để đưa từ về dạng gốc gần đúng, gọi là stem . Kết quả không nhất thiết phải là một từ có nghĩa trong từ điển. Ví dụ với tiếng Anh: playing → play played → play studies → studi relational → relat Có thể thấy studi hay relat không phải dạng từ chuẩn. Stemming chỉ quan tâm đến việc gom các biến thể có hình thức giống nhau về cùng một biểu diễn, thay vì đảm bảo kết quả đúng về mặt ngôn ngữ học. Các thuật toán stemming ...