Nhận diện đa cảm xúc bằng LLM đang mở rộng bài toán emotion recognition từ một bộ phân loại nhãn cố định thành một bài toán hiểu cảm xúc dựa trên ngữ cảnh. Thay vì chỉ học ánh xạ từ câu văn sang các nhãn như joy, anger hay sadness, mô hình ngôn ngữ lớn (Large Language Model, LLM) còn có thể nhận hướng dẫn bằng ngôn ngữ tự nhiên, xử lý zero-shot hoặc few-shot và mô tả những biểu hiện cảm xúc nằm ngoài taxonomy ban đầu [1].
Đây là bước tiếp theo tự nhiên sau các mô hình LSTM và Transformer classifier. Nếu muốn xem lại các khái niệm nền tảng trước khi đi sâu vào LLM, bạn có thể tham khảo thêm các bài trong chủ đề NLP trên The CS Note và nhóm bài Emotion Recognition.
- Các hệ thống hiện đại đang chuyển từ classifier nhãn cố định sang mô hình pretrained, LLM và instruction-based emotion understanding.
- LLM có thể xử lý multi-label emotion detection bằng zero-shot hoặc few-shot mà không nhất thiết phải fine-tune một classifier riêng.
- Một hướng mới hơn là emotion reasoning và open-vocabulary recognition, nơi đầu ra không còn bị giới hạn hoàn toàn bởi một danh sách cảm xúc đóng.
- LLM linh hoạt hơn nhưng không mặc nhiên chính xác hơn; prompt, taxonomy, ngôn ngữ, calibration và cách đánh giá vẫn quyết định chất lượng hệ thống.
Từ LSTM classifier đến LLM: điều gì thực sự thay đổi?
Trong cách tiếp cận truyền thống, nhận diện cảm xúc thường được mô hình hóa như một bài toán phân loại có giám sát. Ta chuẩn bị tập dữ liệu chứa văn bản và nhãn, token hóa dữ liệu, huấn luyện LSTM hoặc Transformer encoder rồi thêm một lớp phân loại ở cuối.
Ví dụ, với năm cảm xúc:
mô hình multi-label thường tạo năm giá trị sigmoid. Mỗi giá trị biểu diễn score của một emotion, sau đó dùng threshold để quyết định nhãn cuối cùng.
Cách tiếp cận này vẫn rất hữu ích. SemEval-2025 Task 11 tiếp tục sử dụng bài toán multi-label emotion detection và thu hút nhiều hệ thống dựa trên BERT, XLM-RoBERTa cùng các encoder pretrained khác [2]. Shared task bao phủ hơn 30 ngôn ngữ thuộc bảy họ ngôn ngữ, đồng thời có cả thiết lập đơn ngữ, đa ngôn ngữ và emotion intensity [2].
Điểm thay đổi ở thời đại LLM là giao diện giữa bài toán và mô hình. Thay vì luôn phải định nghĩa một classification head rồi huấn luyện trọng số cho task cụ thể, ta có thể mô tả nhiệm vụ trực tiếp bằng instruction.
Chọn tất cả cảm xúc phù hợp trong tập:
anger, fear, joy, sadness, surprise.
Chỉ trả về danh sách nhãn.
Mô hình instruction-tuned có thể thực hiện yêu cầu này ở chế độ zero-shot. Nếu thêm một vài ví dụ vào prompt, bài toán trở thành few-shot learning. Một khảo sát năm 2026 về affective computing trong thời đại LLM xem prompt engineering, instruction tuning và các phương pháp thích nghi mô hình là những thành phần quan trọng của thế hệ hệ thống affective NLP mới [1].
Zero-shot và few-shot emotion detection hoạt động như thế nào?
Zero-shot emotion detection có nghĩa là mô hình nhận mô tả về nhiệm vụ và taxonomy cảm xúc nhưng không nhận ví dụ được gán nhãn ngay trong prompt. Đây là một khác biệt lớn so với supervised classifier, nơi mô hình phải được train trên các cặp văn bản–nhãn trước khi sử dụng.
Ví dụ với câu:
thay vì yêu cầu mô hình sinh một câu trả lời tự do, ta nên giới hạn output bằng một taxonomy rõ ràng:
Return JSON only:
{"emotions": ["..."]}
Nếu mô hình trả về ["joy", "surprise"], hệ thống đang thực hiện multi-label prediction. Không có yêu cầu hai nhãn phải loại trừ lẫn nhau.
Với few-shot prompting, prompt còn chứa một số ví dụ đã gán nhãn:
Labels: ["sadness"]
Text: "I did it! This is amazing!"
Labels: ["joy", "surprise"]
Text: "Why would they do this to me?"
Labels: ["anger", "sadness"]
Những ví dụ này không cập nhật trọng số của neural network. Chúng cung cấp ngữ cảnh trong cửa sổ đầu vào để mô hình suy ra cách thực hiện task. Đây là một dạng in-context learning.
Tuy nhiên, LLM không mặc nhiên giải quyết tốt multi-label emotion detection. Một nghiên cứu tại COLING 2025 so sánh encoder-only, encoder-decoder và decoder-only language models cho emotion understanding đa nhãn cho thấy hiệu năng vẫn còn hạn chế, đặc biệt ở các ngôn ngữ ít tài nguyên; ngay cả tiếng Anh cũng chưa thể xem là bài toán đã được giải quyết hoàn toàn [3].
Một pipeline LLM thực tế nên được thiết kế ra sao?
Một lỗi thường gặp khi dùng LLM là gửi câu hỏi kiểu “Người này đang cảm thấy gì?” rồi sử dụng nguyên văn câu trả lời của model. Cách này rất linh hoạt nhưng khó đánh giá, khó đưa vào database và khó tích hợp với pipeline phía sau.
Một hệ thống thực tế nên tách bài toán thành năm bước:
- Xác định taxonomy cảm xúc hoặc cho phép open vocabulary.
- Mô tả rõ một mẫu có thể mang nhiều cảm xúc.
- Yêu cầu output có cấu trúc.
- Kiểm tra và chuẩn hóa output sau khi model sinh.
- Đánh giá trên tập test có annotation của con người.
Ví dụ dưới đây dùng một instruction model nhỏ qua Hugging Face để minh họa. Đây là code demo cho cơ chế prompting, không phải benchmark chính thức và cũng không có nghĩa model được chọn là lựa chọn tốt nhất cho emotion recognition.
from transformers import pipeline
MODEL_NAME = "Qwen/Qwen2.5-3B-Instruct"
generator = pipeline(
"text-generation",
model=MODEL_NAME,
device_map="auto",
torch_dtype="auto"
)
labels = [
"anger",
"fear",
"joy",
"sadness",
"surprise"
]
text = "I finally passed the exam. I still can't believe it!"
messages = [
{
"role": "system",
"content": (
"You classify emotions in text. "
"A text may contain multiple emotions. "
"Use only the allowed labels."
)
},
{
"role": "user",
"content": (
f"Allowed labels: {labels}\n"
f"Text: {text}\n"
'Return JSON only: {"emotions": ["label"]}'
)
}
]
result = generator(
messages,
max_new_tokens=80,
do_sample=False
)
print(
result[0]["generated_text"][-1]["content"]
)
Ở đây do_sample=False giúp giảm biến thiên không cần thiết trong một bài toán classification. Tuy vậy, deterministic decoding không đảm bảo model luôn trả JSON hợp lệ, vì vậy production pipeline vẫn cần bước validate schema và từ chối những nhãn nằm ngoài danh sách.
Nếu đang tìm hiểu sâu hơn về các mô hình deep learning trước khi chuyển sang LLM, nhóm bài Deep Learning trên The CS Note là một điểm nối phù hợp giữa LSTM, attention và các kiến trúc Transformer.
Emotion reasoning khác classification ở đâu?
Một classifier chỉ cần trả lời nhãn nào?. Emotion reasoning đặt thêm câu hỏi nhãn đó được suy ra từ tín hiệu nào trong ngữ cảnh?. Đây là một hướng đang nhận được nhiều quan tâm khi affective computing chuyển sang sử dụng LLM [1].
Giả sử ta có đoạn hội thoại:
B: “Ừ, họ lại chọn người khác. Tuyệt thật.”
Một hệ thống dựa nhiều vào từ khóa có thể coi “Tuyệt thật” là tín hiệu tích cực. Nhưng trong ngữ cảnh đầy đủ, phát ngôn có thể mang tính mỉa mai và liên quan đến disappointment, sadness hoặc annoyance tùy taxonomy.
LLM có lợi thế ở chỗ nó được pretrained để mô hình hóa ngữ cảnh rộng và có thể nhận cả đoạn hội thoại trong prompt. Ta có thể yêu cầu output chứa cả emotion và evidence:
"emotions": ["disappointment", "sadness"],
"evidence": ["họ lại chọn người khác"]
}
Tuy nhiên cần phân biệt generated explanation với bằng chứng về quá trình suy luận nội tại của model. Việc LLM tạo một lời giải thích hợp lý không chứng minh rằng chính lời giải thích đó là nguyên nhân thực sự tạo ra dự đoán. Trong ứng dụng cần interpretability nghiêm ngặt, explanation phải được đánh giá độc lập thay vì mặc định là faithful.
Từ closed-set đến open-vocabulary emotion recognition
Các dataset truyền thống thường bắt đầu bằng một taxonomy đóng. Nếu hệ thống chỉ có năm nhãn anger, fear, joy, sadness và surprise thì mọi văn bản cuối cùng phải được ánh xạ về năm khái niệm đó.
Điều này thuận lợi cho benchmark nhưng có một giới hạn rõ ràng: trải nghiệm cảm xúc của con người phong phú hơn một danh sách vài nhãn. Những trạng thái như thất vọng, nhẹ nhõm, xấu hổ, hoài nghi, biết ơn hoặc vừa vui vừa lo có thể bị ép về những category rộng hơn.
Open-vocabulary emotion recognition là một hướng nghiên cứu mới nhằm giảm sự phụ thuộc vào tập category cố định. Thay vì bắt buộc dự đoán một trong vài nhãn đã định nghĩa trước, large model có thể tạo hoặc ánh xạ sang các mô tả cảm xúc linh hoạt hơn. Các nghiên cứu gần đây đã bắt đầu xem open-vocabulary recognition như một hướng phát triển của emotion AI trong thời đại large models [4].
| Thiết lập | Đầu ra | Điểm mạnh | Khó khăn |
|---|---|---|---|
| Closed-set classifier | Nhãn cố định | Dễ đánh giá | Taxonomy hạn chế |
| LLM constrained | Nhiều nhãn từ danh sách cho trước | Zero/few-shot linh hoạt | Nhạy với prompt |
| Open vocabulary | Mô tả cảm xúc linh hoạt | Giàu ngữ nghĩa hơn | Khó chuẩn hóa và đánh giá |
Open vocabulary không tự động tốt hơn closed-set classification. Nếu ứng dụng là dashboard thống kê cần chính xác năm category cố định, một classifier được fine-tune tốt có thể phù hợp hơn. Open vocabulary hữu ích khi taxonomy chưa hoàn chỉnh hoặc khi mục tiêu là khám phá những sắc thái cảm xúc không được định nghĩa trước.
Fine-tuning Transformer hay prompting LLM?
Sự xuất hiện của LLM không loại bỏ các Transformer encoder. Trong SemEval-2025, nhiều hệ thống vẫn fine-tune BERT, XLM-RoBERTa và các encoder đa ngôn ngữ cho multi-label emotion detection [2]. Một hệ thống của McGill-NLP thậm chí kết hợp prompting GPT-4o với encoder được fine-tune và báo cáo ensemble tốt hơn baseline RemBERT ở 24 trong 28 ngôn ngữ trong thiết lập của shared task [5].
Kết quả này đáng chú ý vì nó cho thấy xu hướng hiện đại không đơn giản là “classifier cũ, LLM mới”. Một kiến trúc thực tế có thể kết hợp nhiều cách tiếp cận.
| Tiêu chí | Fine-tuned encoder | Prompted LLM |
|---|---|---|
| Cần dữ liệu gán nhãn | Thường cần | Không bắt buộc cho zero-shot |
| Taxonomy mới | Có thể phải fine-tune lại | Có thể thay instruction |
| Output có cấu trúc | Tự nhiên | Cần constrain/validate |
| Chi phí inference | Thường thấp hơn | Có thể cao hơn đáng kể |
| Reasoning / explanation | Không phải đầu ra mặc định | Có thể yêu cầu bằng instruction |
Nếu có hàng chục nghìn mẫu đã gán nhãn, taxonomy ổn định và hệ thống phải xử lý lượng request lớn, fine-tuned encoder vẫn là lựa chọn đáng cân nhắc. Nếu taxonomy thay đổi thường xuyên, dữ liệu ít hoặc cần xử lý nhiều dạng instruction, LLM có thể linh hoạt hơn.
Một hướng thực tế khác là dùng LLM để hỗ trợ tạo hoặc chuẩn hóa annotation, sau đó huấn luyện một classifier nhỏ hơn cho production. Tuy nhiên, nhãn do LLM sinh vẫn cần được kiểm tra chất lượng; không nên xem synthetic annotation như ground truth chỉ vì nó được tạo bởi một model lớn.
Đánh giá LLM emotion recognition khó hơn tưởng tượng
Với classifier truyền thống, đầu ra thường là vector số có kích thước cố định. Ta có thể trực tiếp tính precision, recall và F1. Với LLM, trước khi tính metric còn phải giải quyết vấn đề parsing và chuẩn hóa output.
Nếu gold label là joy nhưng model sinh “happiness”, hệ thống closed-set có thể coi đây là lỗi dù hai từ gần nghĩa. Ngược lại, nếu tự động ánh xạ mọi từ đồng nghĩa về cùng một label, quy trình evaluation có thể vô tình đưa thêm phán đoán chủ quan vào benchmark.
Vì vậy, với benchmark multi-label có taxonomy cố định, cách an toàn nhất vẫn là constrain model về đúng tập nhãn rồi tính micro-F1 và macro-F1:
Ngoài metric tổng hợp, nên kiểm tra từng emotion, từng ngôn ngữ và từng dạng biểu đạt. COLING 2025 cho thấy khoảng cách giữa các ngôn ngữ tài nguyên cao và thấp vẫn đáng kể trong multi-label emotion understanding [3]. SemEval-2025 cũng được thiết kế một phần để nghiên cứu chính vấn đề emotion detection đa ngôn ngữ và cross-lingual này [2].
Những giới hạn cần nhớ khi LLM “đọc” cảm xúc con người
Một LLM dự đoán rằng câu văn thể hiện sadness không có nghĩa hệ thống đã đo được trạng thái tâm lý bên trong của người viết. Mô hình đang suy ra một nhãn dựa trên tín hiệu ngôn ngữ và những pattern học được từ dữ liệu.
Điều này đặc biệt quan trọng khi câu nói mang tính mỉa mai, văn hóa địa phương, tiếng lóng hoặc phụ thuộc vào lịch sử hội thoại. Hai người đọc cùng một câu cũng có thể không đồng ý hoàn toàn về emotion label.
Các khảo sát gần đây về affective computing với LLM nhấn mạnh nhiều vấn đề vẫn còn mở, gồm đánh giá đáng tin cậy, đa ngôn ngữ và đa văn hóa, multimodal affective computing, reasoning và các vấn đề đạo đức [1]. Vì vậy, hệ thống emotion AI không nên được triển khai vào những quyết định nhạy cảm chỉ dựa trên một output duy nhất của model.
Một điểm đáng quan tâm khác là context. Nếu chỉ đưa một message riêng lẻ cho model, ta đang làm utterance-level emotion detection. Nếu đưa cả lịch sử hội thoại, task chuyển gần hơn đến emotion recognition in conversation. Cách định nghĩa input vì vậy có thể quan trọng không kém lựa chọn model.
Hướng đi tiếp theo: multimodal LLM và affective AI
Văn bản chỉ phản ánh một phần cảm xúc con người. Trong hội thoại trực tiếp, cùng một câu có thể mang ý nghĩa rất khác tùy giọng nói, nét mặt và ngữ cảnh hình ảnh. Vì vậy một trong những hướng phát triển rõ rệt hiện nay là chuyển từ textual emotion recognition sang multimodal emotion understanding.
Thay vì chạy riêng một model cho text, một model cho audio và một model cho hình ảnh rồi ghép score ở cuối, multimodal large language models hướng tới việc đưa nhiều loại biểu diễn vào cùng một hệ thống reasoning. Các khảo sát gần đây xem Transformer, cross-modal attention và multimodal large models là những hướng quan trọng của emotion recognition hiện đại [4].
Đây cũng là nơi chuỗi bài về đa cảm xúc có thể tiếp tục: từ LSTM cho chuỗi, sang LLM cho ngữ cảnh và instruction, rồi đến multimodal emotion reasoning kết hợp văn bản, âm thanh và hình ảnh. Bạn có thể theo dõi thêm các nội dung liên quan tại The CS Note.
Kết luận
Nhận diện đa cảm xúc bằng LLM không chỉ là thay LSTM bằng một neural network lớn hơn. Sự thay đổi quan trọng nằm ở cách mô tả bài toán: từ classification head cố định sang instruction, zero-shot, few-shot, structured generation và các nhiệm vụ emotion reasoning linh hoạt hơn.
Dù vậy, classifier dựa trên Transformer vẫn giữ vai trò quan trọng khi taxonomy ổn định và cần inference hiệu quả. Xu hướng hiện tại hợp lý hơn khi được nhìn như một phổ phương pháp — fine-tuned encoder, prompted LLM, ensemble và open-vocabulary recognition — thay vì xem LLM là giải pháp thay thế mọi kỹ thuật trước đó.
References
[1] Y. Zhang et al., “Affective computing in the era of large language models: A survey from the NLP perspective,” Knowledge-Based Systems, vol. 337, 115411, 2026. DOI: 10.1016/j.knosys.2026.115411.
[2] S. H. Muhammad et al., “SemEval-2025 Task 11: Bridging the Gap in Text-Based Emotion Detection,” in Proceedings of the 19th International Workshop on Semantic Evaluation (SemEval-2025), Vienna, Austria, 2025, pp. 2558–2569. ACL Anthology.
[3] T. D. Belay, I. A. Azime, A. A. Ayele, G. Sidorov, D. Klakow, P. Slusallek, O. Kolesnikova, and S. M. Yimam, “Evaluating the Capabilities of Large Language Models for Multi-label Emotion Understanding,” in Proceedings of the 31st International Conference on Computational Linguistics, Abu Dhabi, UAE, 2025, pp. 3523–3540. ACL Anthology.
[4] J. Han, Z. Gao, S. Gao, J. Liu, H. Chen, Z. Zhang, and B. W. Schuller, “Pioneering multimodal emotion recognition in the era of large models: Towards open vocabularies,” AI Open, pp. 194–207, 2026. DOI: 10.1016/j.aiopen.2026.06.001.
[5] V. Verma and D. I. Adelani, “McGill-NLP at SemEval-2025 Task 11: Bridging the Gap in Text-Based Emotion Detection,” in Proceedings of the 19th International Workshop on Semantic Evaluation (SemEval-2025), Vienna, Austria, 2025, pp. 1783–1789. ACL Anthology.
Nội dung gốc thuộc tác giả. Vui lòng không đăng lại toàn văn khi chưa được phép, trừ trường hợp pháp luật hoặc giấy phép áp dụng cho phép. Nội dung của bên thứ ba tuân theo quyền và giấy phép tương ứng.
Nguồn gốc: Nhận diện đa cảm xúc bằng LLM và Emotion Reasoning