Tách người nói (speaker diarization) là bài toán trả lời câu hỏi “ai nói lúc nào” trong một bản ghi có nhiều người: máy chia âm thanh thành các đoạn, nhóm các đoạn có giọng giống nhau lại, và gắn nhãn “người nói 1”, “người nói 2”… Kết hợp với nhận dạng giọng nói, nó cho ra bản chép lời có tên người nói từng lượt, nền của mọi biên bản họp tự động.
Cần phân biệt ngay: tách người nói không biết tên ai, nó chỉ biết các đoạn nào cùng một giọng. Gắn “người nói 2” với “chị Hà” là bước khác, do người dùng làm hoặc do hệ thống so với giọng mẫu đã đăng ký, việc sau đụng tới dữ liệu sinh trắc học. Bài này giải thích cơ chế, chỉ số đo, những tình huống máy hay nhầm trong họp tiếng Việt và cách sắp xếp buổi họp để có biên bản đúng người. Xác thực danh tính bằng giọng là chủ đề của trang AI Định Danh, ở đây không bàn.
Máy tách người nói qua những bước nào
Các hệ thống khác nhau về chi tiết, nhưng phần lớn đi theo một chuỗi bước tương tự. Hiểu chuỗi này giúp đoán được lỗi xuất hiện ở đâu.
- Phát hiện có tiếng nói: đánh dấu đoạn nào có người nói, đoạn nào là im lặng, nhạc hay tiếng ồn. Bước này sai thì đoạn ho, tiếng gõ bàn có thể thành một “người nói” riêng.
- Chia đoạn: cắt dòng tiếng nói thành các mảnh ngắn, thường vài giây, ở những chỗ có khả năng đổi người.
- Trích đặc trưng giọng: mỗi mảnh được biến thành một vectơ số tóm tắt “màu giọng”, gọi là nhúng giọng nói. Hai mảnh cùng một người có vectơ gần nhau.
- Phân cụm: gom các vectơ gần nhau thành nhóm, mỗi nhóm là một người nói. Nếu không biết trước có bao nhiêu người, máy phải tự đoán số nhóm.
- Tinh chỉnh ranh giới và xử lý nói chồng: sửa lại chỗ đổi người cho khớp, và ở hệ thống tốt hơn, cho phép một thời điểm thuộc về hai người.
- Ghép với bản chép lời: gắn từng chữ của bước nhận dạng vào người nói tương ứng theo thời gian.
Những năm gần đây có các mô hình đầu cuối làm gộp nhiều bước, nhất là phần xử lý nói chồng. Nhưng chuỗi bước trên vẫn là cách nghĩ hữu ích: lỗi “thêm người ảo” thường đến từ bước một và bốn, lỗi “gộp hai người làm một” đến từ bước ba và bốn, lỗi “chữ cuối câu bị gán cho người sau” đến từ bước sáu.
Nhúng giọng nói: máy nhận ra “màu giọng” bằng gì
Nhúng giọng nói là một dãy số, thường vài trăm chiều, do một mạng nơ-ron tạo ra từ vài giây âm thanh. Mạng được huấn luyện trên rất nhiều người nói để hai đoạn của cùng một người cho ra vectơ gần nhau, còn của hai người khác nhau thì xa nhau, bất kể họ nói câu gì. Vì vậy nhúng giọng nói về nguyên tắc không phụ thuộc ngôn ngữ, mô hình học trên nhiều thứ tiếng vẫn dùng được cho tiếng Việt.
Tuy vậy, “màu giọng” chịu ảnh hưởng của cả kênh ghi âm: cùng một người nói qua micro bàn và qua điện thoại cho hai vectơ khác nhau khá nhiều. Trong họp kết hợp trực tiếp và trực tuyến, máy có thể coi giọng của một người khi nói tại phòng và khi người đó vào lại qua điện thoại là hai người khác nhau. Ngược lại, hai người cùng giới, cùng lứa tuổi, cùng giọng vùng, ngồi cùng phía bàn có thể bị gộp làm một.
Tiếng Việt có một đặc điểm ít được nghĩ tới: cao độ thay đổi liên tục theo thanh điệu. Nếu mô hình nhúng giọng được huấn luyện chủ yếu trên ngôn ngữ không có thanh, nó có thể nhạy hơn bình thường với biến động cao độ, khiến cùng một người khi nói câu nhiều thanh sắc và khi nói câu nhiều thanh huyền cho vectơ lệch nhau. Đây là giả thuyết hợp lý về cơ chế, chưa phải kết luận đã được đo cho mọi mô hình; cách biết chắc là thử trên dữ liệu của mình.
Đo bằng tỷ lệ lỗi tách người nói (DER)
Chỉ số chuẩn cho bài toán này là tỷ lệ lỗi tách người nói (Diarization Error Rate, DER). Nó cộng ba phần thời gian: thời gian có người nói mà máy bỏ sót, thời gian máy báo có người nói trong khi không có ai (báo động giả), và thời gian máy gán nhầm người. Tổng đó chia cho tổng thời gian có người nói trong bản đúng. Vì máy chỉ đặt nhãn “người nói 1, 2, 3” chứ không biết tên, khi tính DER phải ghép nhãn của máy với người thật theo cách khớp nhiều nhất trước.
Có hai quy ước cần hỏi khi đọc một con số DER. Thứ nhất, có “vùng đệm” quanh chỗ đổi người không: nhiều đánh giá bỏ qua một khoảng ngắn quanh ranh giới vì ngay cả người chép cũng không chắc chỗ đổi chính xác. Thứ hai, có tính những đoạn nói chồng không: bỏ đoạn nói chồng làm con số đẹp hơn hẳn nhưng xa thực tế.
DER đo theo thời gian, không theo chữ. Với biên bản, thứ người dùng quan tâm hơn là bao nhiêu câu bị gán nhầm người. Một cách đo gần với nhu cầu thật là đếm trên bản chép: trong 100 lượt phát biểu, bao nhiêu lượt gán đúng người. Hai con số thường đi cùng chiều nhưng không trùng nhau.
Tình huống máy hay gán nhầm người trong họp
Bảng dưới gom những tình huống quen thuộc khi họp ở cơ quan, công ty Việt Nam, kèm cách giảm lỗi.
| Tình huống | Máy thường làm gì | Cách giảm |
|---|---|---|
| Nói chồng, chen ngang, “dạ”, “vâng” liên tục | Gán cả đoạn cho một người hoặc cắt vụn | Chủ trì điều phối lượt nói; chấp nhận bỏ qua tiếng đệm ngắn |
| Hai người giọng giống nhau | Gộp làm một người | Ngồi xa nhau, dùng micro riêng, xưng tên khi nói |
| Một người nói rất ít | Không thành nhóm riêng, bị gộp vào người khác | Khai số người dự họp nếu công cụ cho phép |
| Người đổi từ ngồi bàn sang nói qua điện thoại | Tách thành hai người | Gộp tay khi soát |
| Tiếng ho, cười, tiếng ồn lớn | Thêm người nói ảo | Lọc đoạn ngắn; xoá nhãn thừa khi soát |
| Phát lại video, ghi âm trong cuộc họp | Thêm người nói hoặc chép lẫn nội dung video | Tạm dừng ghi hoặc đánh dấu đoạn đó |
Tình huống tiếng đệm như “dạ”, “vâng”, “ừ” rất phổ biến trong họp tiếng Việt, nhất là khi cấp dưới nghe cấp trên nói. Những tiếng này ngắn, chen giữa câu của người khác, và thường không cần có trong biên bản. Nhiều quy ước chép lời cho phép bỏ qua, miễn không phải là câu trả lời có nghĩa đồng ý cho một quyết định.
Gắn tên thật cho người nói: hai cách và cái giá
Gắn tay sau khi tách. Cách phổ biến và an toàn nhất: máy trả “người nói 1, 2, 3”, người soát nghe vài câu đầu của mỗi nhóm rồi đổi thành tên. Ngữ cảnh tiếng Việt giúp nhiều ở bước này: câu “dạ em báo cáo anh Tuấn” cho biết người nói vừa rồi không phải anh Tuấn và có thể là người ít tuổi hơn.
Đăng ký giọng mẫu. Một số hệ thống cho phép mỗi người ghi trước một đoạn giọng mẫu, sau đó tự động nhận ra họ trong các cuộc họp. Tiện, nhưng đây là lưu trữ đặc trưng giọng nói để nhận diện người, tức dữ liệu sinh trắc học, cần đồng ý riêng rõ ràng, giới hạn mục đích và chính sách xoá.
Đoán tên bằng chatbot từ nội dung. Có người đưa bản chép cho chatbot đoán “người nói 2 là ai” dựa vào cách xưng hô. Kết quả hay sai và nghe rất tự tin. Chỉ nên dùng như gợi ý để người soát kiểm lại, và phải che thông tin trước khi dán.
Không gắn tên. Với một số cuộc họp, biên bản chỉ cần ghi quyết định và việc cần làm, không cần ghi ai nói câu nào. Bỏ bước gắn tên vừa tiết kiệm công vừa giảm rủi ro dữ liệu.
Sắp xếp buổi họp để có biên bản đúng người
Chất lượng tách người nói phụ thuộc cách tổ chức buổi họp không kém gì phụ thuộc công cụ. Những việc dưới đây làm được ngay ở phòng họp bình thường.
- Báo trước buổi họp có ghi âm, chép lời và gắn tên người nói; nói rõ ai được xem bản chép.
- Mỗi người xưng tên trong câu đầu tiên khi phát biểu, ít nhất là lần đầu: “Hà bên kế toán xin báo cáo”.
- Với họp trực tuyến, ưu tiên chức năng chép lời của nền tảng nếu nó gắn theo tài khoản người dùng, vì khi đó nhãn người nói lấy từ kênh của từng người, không phải đoán từ giọng.
- Họp trực tiếp quan trọng: dùng micro riêng cho người chủ trì và người báo cáo chính, ghi mỗi micro một kênh.
- Chủ trì giữ lượt nói rõ ràng, hạn chế hai người cùng nói.
- Sau họp, người soát nghe lại chỗ đổi người ở các đoạn có quyết định, sửa nhãn trước khi gửi biên bản.
Bước ghi nhiều kênh nghe có vẻ phức tạp nhưng là cách mạnh nhất: khi mỗi người có kênh riêng, bài toán tách người nói gần như biến mất, chỉ còn lọc tiếng lọt từ micro bên cạnh.
Riêng tư khi dùng tách người nói
Bản thân việc tách người nói trong một bản ghi không cần lưu giọng mẫu, nhúng giọng chỉ dùng tạm trong lúc xử lý. Nhưng nhiều dịch vụ lưu lại để cải thiện hoặc để nhận ra người đó ở cuộc họp sau. Trước khi bật tính năng “nhận diện người nói” hay “ghi nhớ giọng”, hãy đọc điều khoản: dịch vụ lưu gì, lưu ở đâu, bao lâu, có dùng để huấn luyện không, có xoá theo yêu cầu không.
Trong tổ chức, nên quyết định ở cấp chính sách, không để từng người tự bật. Người tham gia họp có quyền biết giọng mình có đang bị lưu để nhận diện hay không. Các quy định bảo vệ dữ liệu cá nhân của Việt Nam xếp dữ liệu sinh trắc học vào nhóm cần bảo vệ chặt hơn; văn bản đã được cập nhật trong thời gian gần đây, cần tra bản hiện hành hoặc hỏi bộ phận pháp chế.
Với bản ghi đã tách người nói, việc chia sẻ cũng cần cẩn thận hơn bản chép thường: biên bản ghi rõ ai nói câu gì có thể bị trích ra khỏi ngữ cảnh. Giới hạn người được xem bản đầy đủ, gửi rộng chỉ phần quyết định.
Một nguyên tắc dễ nhớ: chỉ gắn tên khi biên bản thật sự cần, chỉ lưu giọng mẫu khi người đó đồng ý riêng, và luôn có cách để ai đó rút lại đồng ý.
Câu hỏi thường gặp
Tách người nói có nhận ra được giọng của một người qua nhiều cuộc họp không?
Tách người nói thông thường chỉ làm việc trong một bản ghi và gắn nhãn tạm. Muốn nhận ra cùng một người qua nhiều cuộc họp, hệ thống phải lưu đặc trưng giọng của người đó, tức là đã chuyển sang nhận diện người nói, cần đồng ý riêng và chính sách lưu trữ rõ ràng.
Có cần khai trước số người dự họp không?
Không bắt buộc, nhưng nếu công cụ cho phép thì nên khai. Khi biết trước số người, máy không phải tự đoán số nhóm, nên ít khi gộp hai người làm một hoặc thêm người ảo. Nếu chỉ biết khoảng, có công cụ cho khai số tối thiểu và tối đa.
Vì sao máy tách một người thành hai trong cùng buổi họp?
Thường do người đó đổi tư thế hoặc vị trí so với micro, đổi kênh từ phòng họp sang điện thoại, hoặc giọng thay đổi mạnh khi xúc động. Đặc trưng giọng của các đoạn đó lệch xa nhau nên bị xếp vào hai nhóm. Người soát có thể gộp tay hai nhãn.
Họp trực tuyến có cần tách người nói không?
Thường không cần nhiều, vì nền tảng họp biết âm thanh đến từ tài khoản nào. Chỉ cần tách khi nhiều người ngồi chung một phòng và dùng chung một tài khoản, khi đó phần âm thanh của phòng đó vẫn phải tách bằng giọng như họp trực tiếp.
Tách người nói có hoạt động với tiếng Việt kém hơn tiếng Anh không?
Phần nhận ra màu giọng ít phụ thuộc ngôn ngữ, nên khác biệt thường không lớn như ở bước nhận dạng chữ. Tuy vậy kiểu hội thoại có nhiều tiếng đệm, chen ngang và thanh điệu có thể ảnh hưởng ở mức nào đó. Thử với vài cuộc họp thật của đơn vị là cách biết chắc.
Có nên dùng tách người nói để chấm điểm ai nói nhiều, ai nói ít trong họp không?
Về kỹ thuật làm được, nhưng nên cân nhắc kỹ. Thời gian nói không đo được đóng góp, và dùng số liệu đó để đánh giá nhân viên dễ gây căng thẳng, thiên lệch với người ít nói hoặc giọng bị máy nghe kém. Nếu làm, cần thông báo rõ và không dùng làm căn cứ duy nhất.