Trả lời nhanh: Quy trình gán nhãn dữ liệu cho AI gồm 6 bước: chốt bộ nhãn (schema), viết guideline có ví dụ biên, gán thử và đo mức đồng thuận, gán hàng loạt, kiểm soát chất lượng nhiều tầng, rồi đóng băng phiên bản nhãn. Phần quyết định chất lượng là guideline và cách xử lý bất đồng, không phải công cụ.
Điểm chính
- Nhãn sai do định nghĩa mơ hồ phổ biến hơn nhãn sai do gõ nhầm, nên guideline cần ví dụ ca biên.
- Đo bằng hệ số đồng thuận (Cohen’s kappa, Krippendorff’s alpha), không chỉ bằng tỷ lệ phần trăm trùng nhau.
- Bất đồng giữa người gán cần được phân xử và ghi lại, không lấy trung bình.
- Mỗi lô nhãn phải có phiên bản, người gán và ngày gán để truy vết khi mô hình sai.
- Dữ liệu tiếng Việt có bẫy riêng: không dấu, viết tắt, phương ngữ, tên riêng.
Mục lục
- Gán nhãn dữ liệu cho AI gồm những bước nào?
- Bước 1: Chốt bộ nhãn (schema) như thế nào?
- Bước 2: Guideline gán nhãn cần viết gì?
- Bước 3: Gán thử và đo mức đồng thuận ra sao?
- Bước 4: Gán hàng loạt nên tổ chức thế nào?
- Bước 5: Kiểm soát chất lượng gán nhãn gồm những tầng nào?
- Bước 6: Đóng băng và quản lý phiên bản nhãn ra sao?
- Những lỗi thường gặp và cách xử lý
- Nên tự gán, thuê ngoài hay dùng mô hình gán trước?
- Đội gán nhãn cần những vai trò nào?
- Câu hỏi thường gặp
Bài này đi vào cách vận hành một dự án gán nhãn (data labeling) từ lúc có dữ liệu thô đến lúc giao tập huấn luyện cho đội mô hình. Nếu bạn cần khái niệm và các loại nhãn, hãy đọc trước bài gán nhãn dữ liệu và nghề annotator. Ở đây ta tập trung vào thao tác, số đo và lỗi thường gặp.
Gán nhãn dữ liệu cho AI gồm những bước nào?
Các bài đang xếp hạng ở Việt Nam thường chia quy trình thành 5 bước: thu thập, viết quy tắc, gán nhãn, kiểm tra, lưu trữ. Cách chia đó đúng nhưng thiếu hai thứ khiến dự án hỏng giữa chừng: bước gán thử có đo đạc, và bước đóng băng phiên bản. Bài này dùng 6 bước.
Bước 1: Chốt bộ nhãn (schema) như thế nào?
Bộ nhãn là danh sách các giá trị được phép, kèm cấu trúc: một nhãn hay nhiều nhãn trên mỗi mẫu, nhãn phẳng hay nhãn phân cấp, có nhãn “khác” hay không. Quyết định này ảnh hưởng đến mọi bước sau, vì đổi schema giữa chừng nghĩa là gán lại.
Ví dụ minh hoạ: một công ty bán lẻ muốn phân loại tin nhắn khách gửi vào fanpage. Nếu chia ngay 25 nhãn như “hỏi giá”, “hỏi tồn kho”, “đổi trả”, “giao chậm”, người gán sẽ lúng túng ở các tin chứa hai ý. Cách an toàn hơn là bắt đầu với 6–8 nhãn lớn, thêm nhãn “không rõ” và cho phép chọn tối đa hai nhãn. Sau khi gán thử, nhãn nào có nhiều mẫu thì mới tách nhỏ.
Một số câu hỏi cần trả lời bằng văn bản ở bước này:
- Mô hình sẽ dùng nhãn để quyết định việc gì? Nhãn “khiếu nại” dùng để chuyển cho nhân viên hay để thống kê? Hai mục đích cần độ chính xác khác nhau.
- Đơn vị gán là gì: cả tin nhắn, từng câu, hay từng cụm từ? Với trích xuất thực thể (NER), nên chốt luôn quy tắc ranh giới, ví dụ có tính chức danh “Giám đốc” vào tên người không.
- Nhãn nào có thể suy ra từ dữ liệu có sẵn, như mã đơn hàng hay trạng thái trong CRM? Nên điền tự động thay vì cho người gán.
Dữ liệu đầu vào nên được xem trước để biết có trùng lặp, thiếu giá trị hay lệch phân bố hay không. Việc này thuộc về chất lượng dữ liệu đầu vào và làm trước khi gán, vì gán nhãn cho mẫu rác chỉ tốn tiền.
Bước 2: Guideline gán nhãn cần viết gì?
Guideline là tài liệu người gán mở ra khi phân vân. Một guideline dùng được có bốn phần:
- Định nghĩa từng nhãn bằng một câu, kèm điều kiện loại trừ. Ví dụ “giao chậm” chỉ áp dụng khi khách nêu rõ đã quá hạn hứa, không áp dụng khi khách chỉ hỏi bao giờ hàng đến.
- Ví dụ đúng và ví dụ sai cho mỗi nhãn, lấy từ dữ liệu thật của doanh nghiệp.
- Ca biên và quy tắc ưu tiên. Tin nhắn vừa khen vừa phàn nàn thì nhãn nào thắng? Viết ra thứ tự.
- Lịch sử sửa đổi. Mỗi lần thêm quy tắc ghi ngày và lý do, để biết lô nhãn nào gán theo bản nào.
Với dữ liệu tiếng Việt, phần ca biên nên có sẵn mục riêng:
- Văn bản không dấu như “khong nhan duoc hang”, có thể gán nhãn nhưng nên có cờ riêng để sau này đo mô hình trên nhóm này.
- Viết tắt và tiếng lóng như “ko”, “dc”, “ib”, “shop oi”.
- Từ vùng miền và tên riêng trùng từ thường, ví dụ “Hoa” là tên người hay là loại hoa.
- Âm thanh có tiếng nền, nhiều giọng vùng miền: quy ước ghi từ chen ngang, tiếng cười, số điện thoại đọc rời từng chữ số.
Với ảnh và video, guideline cần chỉ rõ cách vẽ khung bao (bounding box) khi vật bị che một phần, khi vật bị cắt ở mép ảnh, và kích thước tối thiểu bao nhiêu pixel thì mới gán. Không viết các quy tắc này thì mỗi người sẽ tự chọn một kiểu.
Bước 3: Gán thử và đo mức đồng thuận ra sao?
Trước khi gán toàn bộ, hãy chọn một lô mẫu cho ít nhất hai người cùng gán độc lập, không trao đổi. Số lượng tuỳ độ khó và số nhãn, nhưng cần đủ để mỗi nhãn xuất hiện nhiều lần. Nhãn hiếm gần như không có mẫu trong lô ngẫu nhiên, nên hãy bổ sung mẫu cho nhãn hiếm.
Đừng chỉ tính tỷ lệ phần trăm hai người trùng nhau. Tỷ lệ này tính cả những lần trùng do may rủi, và bị thổi phồng khi một nhãn chiếm đa số. Theo một hướng dẫn về chất lượng annotation, tỷ lệ trùng thô không nên là con số duy nhất, vì nó không loại trừ trùng ngẫu nhiên và bị đẩy cao khi các lớp mất cân bằng. Cohen’s kappa dành cho đúng hai người gán, nhãn định danh, và mỗi mẫu đều có cả hai người gán.
Ví dụ tính kappa (ví dụ minh hoạ)
Hai người gán 100 tin nhắn với nhãn “khiếu nại” hoặc “không khiếu nại”. Kết quả như hình dưới.
- Tỷ lệ trùng quan sát: (40 + 45) / 100 = 0,85.
- Người A gán khiếu nại 45 lần, người B gán 50 lần. Xác suất trùng do ngẫu nhiên: 0,45 × 0,50 + 0,55 × 0,50 = 0,50.
- Kappa = (0,85 − 0,50) / (1 − 0,50) = 0,70.
Tỷ lệ trùng 85% nghe có vẻ tốt, nhưng kappa chỉ 0,70. Theo cách diễn giải của Landis và Koch (1977), được trích rộng rãi, khoảng 0,61–0,80 là đồng thuận đáng kể (substantial), 0,81–1,00 là gần như hoàn hảo. Đừng áp ngưỡng máy móc: một nguồn cho rằng ngưỡng cần đọc theo độ chủ quan của tác vụ, vì 0,65 cho một phán đoán an toàn nội dung có thể là mạnh, còn 0,75 cho nhãn cơ học thì chưa đủ.
Với nhiều người gán hoặc dữ liệu thiếu, nên dùng Krippendorff’s alpha. Cũng theo nguồn trên, alpha từ 0,800 trở lên thường được coi là đáng tin, còn 0,667–0,800 chỉ cho phép kết luận tạm thời. Kappa còn có nhược điểm khi dữ liệu lệch: kappa dễ cho kết quả khó hiểu với dữ liệu lệch, gọi là “paradox problem”, và không xử lý được giá trị thiếu. Vì vậy, ngoài con số tổng, hãy xem đồng thuận từng nhãn.
Điều quan trọng hơn con số là đọc từng ô lệch. Ở ví dụ trên, 15 mẫu lệch cần được đọc tay. Nếu 10 mẫu là cùng một kiểu (“hỏi đổi hàng nhưng giọng bực”), lỗi nằm ở guideline và bạn sửa quy tắc, không phải đào tạo lại người gán.
Bước 4: Gán hàng loạt nên tổ chức thế nào?
Sau khi guideline đã ổn định, chia dữ liệu thành các lô nhỏ phát cho người gán. Mấy quyết định vận hành đáng cân nhắc:
- Số người gán trên mỗi mẫu. Với nhãn khách quan, một người gán cộng với kiểm tra mẫu là đủ. Với nhãn chủ quan (cảm xúc, độc hại), cần nhiều người. Một hướng dẫn của dayda nêu rằng Amazon SageMaker Ground Truth mặc định giao mỗi tác vụ phân loại hoặc khung bao cho 3–5 người trước khi hợp nhất nhãn.
- Gán trước bằng mô hình. Một xu hướng là mô hình nền tảng đa phương thức tạo nhãn ban đầu, rồi con người cải thiện. Cách này nhanh hơn, nhưng người gán dễ chấp nhận nhãn gợi ý mà không xem kỹ (thiên lệch gán trước, pre-annotation bias). Vì vậy hãy giữ một phần mẫu gán không gợi ý để đối chứng.
- Mẫu vàng (gold task) trộn ngầm. Chèn các mẫu đã có đáp án chuẩn vào lô thường để phát hiện người gán làm cho xong. Người gán sai nhiều mẫu vàng sẽ được nhắc lại guideline.
- Công cụ. Label Studio, CVAT, Doccano là các công cụ mã nguồn mở thường được dùng cho văn bản, ảnh và video. Hãy chọn theo loại dữ liệu bạn cần, ví dụ CVAT mạnh ở ảnh và video, Doccano gọn cho văn bản. Chọn công cụ nào cũng cần xuất được định dạng mà đội mô hình dùng, như COCO hoặc YOLO cho ảnh.
Dữ liệu có thông tin cá nhân như số CCCD, số điện thoại, địa chỉ trong tin nhắn hay bản ghi cuộc gọi cần được che trước khi giao cho người gán, nhất là khi thuê ngoài. Nếu có thể, hãy dùng che giấu dữ liệu thay vì gửi bản gốc. Khi đơn vị thuê ngoài xử lý dữ liệu cá nhân thay bạn, Luật Bảo vệ dữ liệu cá nhân yêu cầu có thoả thuận rõ về phạm vi xử lý. Hãy xác định trước trường nào là dữ liệu định danh để quyết định che hay giữ.
Bước 5: Kiểm soát chất lượng gán nhãn gồm những tầng nào?
Một mô hình QA thực tế gồm ba tầng, mỗi tầng bắt một loại lỗi khác nhau.
Cần nhấn mạnh tầng 3. Khi hai người bất đồng, đừng lấy trung bình hay chọn ngẫu nhiên. Hãy cho một người có chuyên môn (với dữ liệu y tế là bác sĩ, với hợp đồng là pháp chế) xem cả hai nhãn, chọn nhãn đúng, và ghi lại lý do. Lý do đó thường trở thành quy tắc mới trong guideline.
Ngoài ra, nếu mô hình đã có bản đầu, hãy xem những mẫu mô hình dự đoán khác nhãn người gán với độ tự tin cao. Đó thường là nhãn sai, không phải mô hình sai. Cách này rẻ hơn kiểm tra lại toàn bộ.
Bước 6: Đóng băng và quản lý phiên bản nhãn ra sao?
Khi một lô đã qua QA, hãy đóng băng thành một phiên bản không sửa trực tiếp. Mỗi mẫu nên có: mã mẫu, nhãn, người gán, ngày gán, bản guideline áp dụng, và trạng thái (đã phân xử hay không). Xu hướng hiện nay cũng nhấn mạnh điều này: nhãn có truy vết (ai gán, gán gì, lúc nào, bằng cách nào), cùng lược đồ có phiên bản và nhật ký kiểm toán.
Lý do thực tế: khi mô hình sai ở một nhóm, bạn cần biết nhóm đó được gán theo guideline cũ hay mới, và ai đã gán. Không có thông tin này, bạn chỉ có thể gán lại từ đầu. Phần này liên quan đến truy vết dòng dữ liệu: mỗi dự đoán của mô hình nên lần ngược được về phiên bản tập huấn luyện đã dùng.
Nhãn cũng bị trôi theo thời gian (label drift). Ví dụ minh hoạ: nhãn “khiếu nại” năm nay có thể phải bao gồm cả bình luận về chính sách mới mà năm ngoái chưa tồn tại. Khi chính sách thay đổi, ra phiên bản guideline mới và gán lại một mẫu đối chứng để biết nhãn cũ còn dùng được không.
Những lỗi thường gặp và cách xử lý
| Triệu chứng | Nguyên nhân thường gặp | Cách xử lý |
|---|---|---|
| Kappa thấp ở một nhãn, các nhãn khác tốt | Định nghĩa nhãn chồng lấn với nhãn khác | Đọc các ô lệch, viết quy tắc ưu tiên, hoặc gộp hai nhãn |
| Tỷ lệ trùng cao nhưng kappa thấp | Một nhãn chiếm đa số, trùng do may rủi | Báo cáo kappa hoặc alpha và đồng thuận từng nhãn |
| Một người gán lệch hẳn nhóm | Hiểu sai guideline hoặc làm ẩu | Xem kết quả mẫu vàng của người đó, đào tạo lại, kiểm tra lại lô đã gán |
| Mô hình giỏi trên tập thử nhưng kém ngoài thực tế | Tập gán thiếu nhóm khó: không dấu, tiếng lóng, ảnh tối | Bổ sung mẫu nhóm khó, thêm cờ để đo riêng từng nhóm |
| Sửa guideline giữa chừng, nhãn cũ lẫn nhãn mới | Không có phiên bản | Gắn bản guideline vào từng lô, gán lại lô cũ nếu quy tắc thay đổi nhiều |
| Người gán chấp nhận nhãn gợi ý của mô hình | Thiên lệch gán trước | Giữ một phần mẫu gán không gợi ý để so sánh |
Nếu dữ liệu gán không đủ cho nhóm hiếm, có thể bổ sung bằng kỹ thuật tạo thêm mẫu, như tăng cường dữ liệu hay dữ liệu tổng hợp. Hãy gắn cờ cho các mẫu này và không dùng chúng trong tập kiểm tra cuối, vì chúng không phản ánh phân bố thực tế.
Nên tự gán, thuê ngoài hay dùng mô hình gán trước?
| Tiêu chí | Đội nội bộ | Thuê đơn vị ngoài | Mô hình gán trước, người sửa |
|---|---|---|---|
| Phù hợp nhãn cần hiểu nghiệp vụ | Tốt nhất | Cần đào tạo nhiều | Tuỳ chất lượng gợi ý |
| Dữ liệu nhạy cảm | Kiểm soát dễ | Cần che dữ liệu và thoả thuận xử lý | Phụ thuộc nơi chạy mô hình |
| Khối lượng lớn, nhãn đơn giản | Chậm | Mở rộng nhanh | Nhanh nhất nếu gợi ý đúng |
| Rủi ro chính | Thiếu người, chậm | Hiểu sai guideline | Thiên lệch gán trước |
Cách phổ biến là kết hợp: chuyên gia nội bộ viết guideline, phân xử ca khó và giữ tập kiểm tra cuối; đơn vị ngoài hoặc mô hình xử lý khối lượng. Tập kiểm tra cuối nên do người hiểu nghiệp vụ nhất gán và không dùng để huấn luyện.
Nếu đội mô hình có thể dùng mô hình đã huấn luyện sẵn, nhu cầu dữ liệu gán thường giảm. Xem thêm bài học chuyển giao để biết khi nào chỉ cần vài trăm mẫu gán chất lượng cao thay vì hàng chục nghìn mẫu.
Đội gán nhãn cần những vai trò nào?
- Người gán (annotator): thực hiện gán, chịu sự kiểm tra bằng mẫu vàng.
- Người rà soát (reviewer): kiểm tra mẫu ngẫu nhiên, xử lý bất đồng nhỏ.
- Chuyên gia lĩnh vực: viết định nghĩa nhãn, phân xử ca khó.
- Kỹ sư dữ liệu hoặc ML: chuẩn bị lô, tích hợp công cụ, xuất định dạng, tính chỉ số đồng thuận.
Nhiều doanh nghiệp Việt Nam không có vai trò thứ ba và để kỹ sư tự quyết định nghĩa nhãn. Kết quả là nhãn phản ánh cách hiểu của kỹ sư, không phải của người dùng cuối. Hãy chỉ định rõ ai chốt định nghĩa nhãn, thường là chủ nghiệp vụ sử dụng kết quả mô hình.
Nguyên tắc rác vào rác ra áp dụng trực tiếp ở đây, bạn có thể xem phân tích trong bài GIGO từ góc độ gán nhãn.
Câu hỏi thường gặp
Cần gán bao nhiêu mẫu để huấn luyện mô hình?
Không có con số chung. Số mẫu phụ thuộc số nhãn, độ khó phân biệt, kiến trúc mô hình và việc có dùng mô hình huấn luyện sẵn hay không. Cách làm thực tế là gán một lô nhỏ, huấn luyện thử, rồi xem đường cong học: nếu thêm mẫu làm kết quả tăng đáng kể thì gán tiếp, nếu không thì vấn đề nằm ở chất lượng nhãn hoặc mô hình.
Kappa bao nhiêu thì đủ tốt?
Theo bảng Landis và Koch (1977), 0,61–0,80 là đáng kể và trên 0,80 là gần hoàn hảo. Tuy vậy ngưỡng cần đặt theo độ chủ quan của tác vụ: nhãn cảm xúc khó đạt như nhãn đếm xe. Hãy ghi ngưỡng vào tài liệu dự án trước khi gán thử.
Có thể dùng AI để gán nhãn thay người không?
Có thể dùng mô hình để gán trước và để người sửa, cách này đã phổ biến cho ảnh và văn bản. Rủi ro là người sửa chấp nhận gợi ý mà không kiểm. Hãy giữ một phần mẫu gán không gợi ý và đo mức lệch giữa hai nhóm.
Gán nhãn dữ liệu tiếng Việt khác gì tiếng Anh?
Ngoài việc ít công cụ và bộ dữ liệu mẫu hơn, tiếng Việt có văn bản không dấu, viết tắt, phương ngữ và từ ghép nhiều âm tiết khiến ranh giới từ không hiển nhiên. Guideline cần quy ước riêng cho các trường hợp này, và bạn nên gắn cờ để đo mô hình theo từng nhóm.
Khi nào cần gán lại nhãn?
Khi guideline thay đổi quy tắc cốt lõi, khi kappa của một nhãn thấp và đã sửa định nghĩa, hoặc khi thực tế kinh doanh thay đổi làm nhãn cũ không còn đúng. Nhờ phiên bản nhãn, bạn chỉ gán lại các lô bị ảnh hưởng.
Dữ liệu cá nhân có được đưa cho bên thứ ba gán nhãn không?
Điều đó phụ thuộc vào căn cứ xử lý và thoả thuận với bên nhận. Cách ít rủi ro nhất là che hoặc loại bỏ các trường định danh không cần cho việc gán, rồi chỉ gửi phần còn lại. Với trường hợp cụ thể, bạn nên hỏi ý kiến pháp lý.
trang tin công nghệ VBPO cập nhật tin tức và kiến thức công nghệ cho doanh nghiệp Việt Nam. Xem thêm các bài cùng chuyên mục Dữ liệu & phân tích.