Hướng dẫn gán nhãn là tài liệu nói cho người gán biết mỗi nhãn nghĩa là gì, kèm ví dụ đúng, ví dụ sai, ví dụ ranh giới và luật ưu tiên khi một mẫu khớp nhiều nhãn; với dữ liệu tiếng Việt, phần quan trọng nhất là các ca mà cách nói của người Việt làm nghĩa bề mặt khác nghĩa thật, như mỉa mai, nói giảm, "cũng được", "tạm". Không có hướng dẫn, mỗi người gán tự quyết theo cảm nhận, và bộ dữ liệu ghi lại ý kiến của từng người thay vì một khái niệm.
Bài này dùng một ví dụ xuyên suốt: gán nhãn bình luận khách hàng của một cửa hàng bán đồ gia dụng trực tuyến (ví dụ giả định) theo ba chiều là cảm xúc chung, khía cạnh được nhắc đến và mức cần xử lý. Cách viết áp được cho các bài toán khác như phân loại ý định trong tổng đài, đánh giá câu trả lời của chatbot hay gắn thẻ thực thể. Đây không phải bài định nghĩa gán nhãn là gì; trang AI Hiểu đã có phần đó.
Khung của một bản hướng dẫn gán nhãn
Một bản hướng dẫn dùng được thường có sáu phần. Phần mở đầu nói mục đích của bộ dữ liệu bằng một đoạn ngắn, vì người gán hiểu dữ liệu dùng để làm gì sẽ tự xử lý ca lạ hợp lý hơn. Phần thứ hai liệt kê các nhãn, mỗi nhãn một định nghĩa một hai câu. Phần thứ ba là ví dụ cho từng nhãn, chia ba loại: rõ ràng, ranh giới, và trông giống nhưng không phải.
Phần thứ tư là luật ưu tiên khi một mẫu khớp nhiều nhãn. Phần thứ năm là danh sách ca đặc biệt: mẫu không phải tiếng Việt, mẫu rỗng nghĩa, mẫu chứa thông tin cá nhân, mẫu có nội dung độc hại, mẫu người gán không hiểu. Phần cuối là nhật ký thay đổi, ghi mỗi lần sửa hướng dẫn: sửa gì, vì sao, từ ngày nào. Nhật ký này cho phép biết những nhãn gán trước một ngày nhất định có thể cần xem lại.
Độ dài hợp lý là vài trang cho bài toán đơn giản và vài chục trang cho bài toán phức tạp. Hướng dẫn dài quá mà không có mục lục và ví dụ tìm nhanh thì người gán sẽ không đọc; ngắn quá thì không trả lời được ca khó. Mẹo hay dùng là đặt bảng tóm tắt một trang ở đầu và phần chi tiết phía sau.
Định nghĩa nhãn bằng lời, không bằng một từ
Nhãn "tích cực" không phải định nghĩa. Định nghĩa phải nói rõ căn cứ vào đâu để chọn. Bảng dưới là phần định nghĩa nhãn cảm xúc cho ví dụ cửa hàng đồ gia dụng.
| Nhãn | Định nghĩa | Ví dụ rõ | Ví dụ ranh giới |
|---|---|---|---|
| Hài lòng | Người viết thể hiện ý muốn mua lại, giới thiệu, hoặc khen mà không kèm phàn nàn đáng kể | "Nồi nấu nhanh, rửa dễ, sẽ mua thêm cái nhỏ" | "Ổn áp nha shop" — ngắn nhưng rõ ý khen, gán Hài lòng |
| Trung tính | Không thể hiện đánh giá, hoặc khen chê cân bằng không nghiêng bên nào | "Đã nhận hàng" | "Cũng được" — xem luật ưu tiên số 3 |
| Không hài lòng | Có phàn nàn về sản phẩm, giao hàng hoặc phục vụ, kể cả khi có câu khen xã giao | "Hàng móp, gọi không ai nghe" | "Giao nhanh, mà nồi bị xước" — có phàn nàn cụ thể, gán Không hài lòng |
| Không xác định | Không đánh giá được do lạc đề, ngôn ngữ khác, hoặc nội dung không đọc hiểu | "Shop ơi còn màu xanh không" | Câu hỏi kèm phàn nàn — gán theo phần phàn nàn |
Để ý định nghĩa "Không hài lòng" đã chứa sẵn một quyết định thiết kế: phàn nàn cụ thể thắng lời khen xã giao. Quyết định đó xuất phát từ mục đích bộ dữ liệu (tìm bình luận cần xử lý), không phải từ ngôn ngữ học. Một bộ dữ liệu khác với mục đích khác có thể quyết ngược lại, và cũng đúng.
Những ca khó đặc thù của tiếng Việt
Mỉa mai. "Đóng gói kỹ ghê, mở ra thấy vỡ làm ba." Chữ khen, ý chê. Hướng dẫn cần nói rõ: gán theo ý người viết muốn truyền đạt, không theo từ ngữ bề mặt; dấu hiệu mỉa mai thường là lời khen đi liền với sự thật trái ngược, hoặc các từ như "ghê", "dữ", "quá trời" đặt sai chỗ.
"Cũng được", "tạm", "tạm ổn". Người Việt hay nói giảm, nên "cũng được" có thể là hài lòng vừa phải hoặc thất vọng lịch sự. Không có đáp án ngôn ngữ học duy nhất, nên hướng dẫn phải quyết bằng luật: ví dụ, đứng một mình thì gán Trung tính, đi kèm so sánh với kỳ vọng ("tưởng ngon hơn, cũng được") thì gán Không hài lòng.
Từ địa phương và cách viết vùng miền. "Hổng", "hông", "bển", "răng", "rứa", "mô" có thể làm người gán ở vùng khác đọc sai sắc thái. Hướng dẫn nên có một bảng từ địa phương hay gặp trong dữ liệu kèm nghĩa, và khuyến khích người gán đánh dấu mẫu mình không chắc thay vì đoán.
Biểu tượng cảm xúc và dấu câu. Một bình luận "ok :)" khác "ok." khác "ok..." về sắc thái. Hướng dẫn cần quyết biểu tượng cảm xúc có được tính là tín hiệu không, và khi chữ và biểu tượng mâu thuẫn thì theo bên nào.
Xưng hô và lịch sự. Lời lẽ lịch sự ("dạ shop cho em hỏi…") không có nghĩa là hài lòng; lời lẽ suồng sã không có nghĩa là giận. Nhắc người gán tách giọng điệu khỏi nội dung đánh giá.
Viết luật ưu tiên và quy tắc khi không chắc
Luật ưu tiên trả lời câu hỏi "khớp hai nhãn thì chọn nhãn nào". Viết thành danh sách đánh số để người gán áp theo thứ tự.
- Nếu bình luận có phàn nàn cụ thể về sản phẩm, giao hàng hay phục vụ, gán Không hài lòng, bất kể có lời khen kèm theo.
- Nếu bình luận chỉ khen hoặc thể hiện ý mua lại, giới thiệu, gán Hài lòng.
- Nếu chỉ có "cũng được", "tạm", "bình thường" đứng một mình, gán Trung tính; nếu đi kèm so sánh với kỳ vọng hay với lần trước theo hướng kém đi, gán Không hài lòng.
- Nếu là câu hỏi, xác nhận đã nhận hàng, hoặc nội dung không liên quan, gán Không xác định.
- Nếu đã đọc lại hai lần vẫn phân vân giữa hai nhãn, chọn nhãn có số nhỏ hơn trong danh sách này và bật cờ "không chắc".
- Nếu bình luận chứa số điện thoại, địa chỉ, tên người cụ thể, vẫn gán nhãn bình thường và bật cờ "có dữ liệu cá nhân" để khâu che xử lý.
Cờ "không chắc" là thông tin quý. Tỷ lệ cờ bật cao ở một nhãn nào đó là dấu hiệu định nghĩa nhãn đó chưa rõ; các mẫu có cờ là nguồn ví dụ ranh giới tốt nhất cho phiên bản hướng dẫn sau. Đừng phạt người gán vì bật cờ.
Vòng thử, đọc lệch và sửa hướng dẫn
Không ai viết đúng hướng dẫn ngay lần đầu. Quy trình thường là: viết bản nháp, cho hai ba người gán cùng một mẫu khoảng một hai trăm câu, so kết quả, ngồi lại bàn từng câu bị gán lệch. Mỗi câu lệch được xếp vào một trong ba loại: người gán chưa đọc kỹ hướng dẫn, hướng dẫn chưa nói đến ca này, hoặc hướng dẫn nói nhưng mơ hồ. Loại thứ hai và thứ ba dẫn đến sửa hướng dẫn.
Lặp vòng này cho tới khi độ đồng thuận ổn định ở mức chấp nhận được với bài toán. Thường sau hai ba vòng, số câu lệch giảm rõ, và những câu còn lệch là những câu thật sự có nhiều cách hiểu hợp lý. Với những câu đó, có hai cách: chấp nhận và giữ nhiều nhãn (ghi phân bố ý kiến), hoặc loại khỏi tập kiểm tra vì không có đáp án đúng.
Khi hướng dẫn đổi giữa chừng, phải quyết làm gì với nhãn đã gán theo bản cũ. Nếu thay đổi ảnh hưởng nhiều nhãn, gán lại phần bị ảnh hưởng; nếu chỉ bổ sung ca hiếm, có thể chỉ rà các mẫu có cờ. Nhật ký thay đổi giúp quyết định nhanh.
Người gán: chọn, hướng dẫn, chăm sóc
Người gán tốt không cần là chuyên gia ngôn ngữ học, nhưng cần đọc tiếng Việt nhạy, kiên nhẫn và hiểu bối cảnh dữ liệu. Với dữ liệu có nhiều tiếng địa phương, nên có người gán từ các vùng khác nhau. Với dữ liệu chuyên ngành như y tế, pháp luật, cần người có nền chuyên môn, ít nhất cho tập kiểm tra.
Buổi hướng dẫn đầu tiên nên dành thời gian gán thử cùng nhau, nói to lý do chọn nhãn, hơn là chỉ đọc tài liệu. Sau đó định kỳ chèn vào hàng chờ một số mẫu vàng đã có đáp án do nhóm thống nhất, để theo dõi chất lượng từng người mà không cần kiểm toàn bộ.
Gán nhãn là việc lặp lại và mỏi mắt; chất lượng tụt rõ khi làm liên tục nhiều giờ. Chia ca ngắn, trả công theo thời gian thay vì chỉ theo số lượng, và với dữ liệu có nội dung độc hại hay gây khó chịu, cho người gán quyền bỏ qua và có hỗ trợ. Đó vừa là đạo đức, vừa là cách giữ nhãn tốt.
Nhãn nhiều chiều: khía cạnh và mức cần xử lý
Bộ dữ liệu ví dụ còn hai chiều nhãn khác ngoài cảm xúc. Chiều khía cạnh trả lời "bình luận nói về cái gì": chất lượng sản phẩm, giao hàng, đóng gói, giá và khuyến mãi, phục vụ, đổi trả. Một bình luận có thể nhắc nhiều khía cạnh, nên đây là nhãn chọn nhiều, và hướng dẫn phải nói rõ thế nào là "nhắc đến": chỉ khi có đánh giá về khía cạnh đó, hay cả khi chỉ kể sự việc. Ví dụ "giao hôm thứ ba" là kể, "giao chậm ba ngày" là đánh giá.
Chiều mức cần xử lý là nhãn có thứ bậc: không cần, nên xem, cần xử lý trong ngày. Nhãn thứ bậc dễ trôi theo cảm tính hơn nhãn danh mục, nên mỗi bậc cần tiêu chí cụ thể, ví dụ "cần xử lý trong ngày" khi có hàng hỏng, thiếu hàng, nghi lừa đảo hoặc khách nói sẽ khiếu nại. Không nên để người gán quyết dựa trên giọng điệu gay gắt hay không.
Khi có nhiều chiều nhãn, quyết định trước người gán làm tất cả các chiều trong một lượt hay mỗi lượt một chiều. Một lượt nhanh hơn nhưng các chiều dễ ảnh hưởng nhau, ví dụ đã chọn Không hài lòng thì có xu hướng nâng mức xử lý. Tách lượt tốn công hơn nhưng nhãn độc lập hơn. Với tập kiểm tra, tách lượt thường đáng công.
Câu hỏi thường gặp
Bản hướng dẫn gán nhãn nên dài bao nhiêu?
Đủ để trả lời các ca khó thường gặp. Bài toán vài nhãn có thể chỉ vài trang, bài toán nhiều lớp phức tạp có thể vài chục trang. Nên có bảng tóm tắt một trang ở đầu để người gán tra nhanh, phần chi tiết và ví dụ ranh giới để phía sau.
Có nên cho người gán xem nhãn do mô hình gợi ý sẵn không?
Gợi ý sẵn giúp nhanh hơn nhưng dễ làm người gán thuận theo máy, nhất là với ca khó. Nếu dùng, nên có một phần mẫu gán độc lập không gợi ý để đo xem nhãn có bị kéo theo mô hình không.
Câu mỉa mai nên gán theo chữ hay theo ý?
Với hầu hết bài toán đọc ý kiến, gán theo ý người viết muốn truyền đạt. Hướng dẫn nên nêu dấu hiệu nhận ra mỉa mai và cho người gán bật cờ khi không chắc, thay vì để mỗi người tự quyết.
Làm gì với mẫu mà nhiều người gán hiểu khác nhau dù đã sửa hướng dẫn?
Có thể giữ phân bố nhãn của nhiều người thay vì ép một nhãn, hoặc loại mẫu khỏi tập kiểm tra vì không có đáp án duy nhất. Đây là dấu hiệu bài toán vốn có nhiều cách hiểu hợp lý, không phải lỗi người gán.
Có cần người gán ở nhiều vùng miền không?
Nên có, nếu dữ liệu chứa nhiều cách nói địa phương. Người quen giọng một vùng đọc sắc thái của vùng đó chuẩn hơn. Ít nhất hướng dẫn nên có bảng từ địa phương hay gặp và cho phép đánh dấu mẫu chưa hiểu.
Có thể dùng chatbot để gán nhãn thay người không?
Có thể dùng để gán nháp hoặc gán phần dễ, nhưng phải kiểm bằng tập mẫu do người gán và đo mức khớp. Không nên dùng nhãn của mô hình làm tập kiểm tra cho mô hình khác. Dữ liệu gửi lên dịch vụ ngoài phải che thông tin cá nhân trước.