Cốt lõi của thị giác máy tính là đọc hiểu dữ liệu hình ảnh. Nhờ công nghệ học sâu và khả năng phát hiện chướng ngại vật, phân đoạn hình ảnh hoặc trích xuất bối cảnh, thị giác máy tính đang tăng trưởng nhanh trong những năm gần đây, giúp kiến tạo xe tự hành, nhà thông minh, các công cụ thực tế tăng cường…. Hầu hết các nghiên cứu và ứng dụng của thị giác máy tính hiện nay đang tập trung nhiều hơn vào hình ảnh, mà ít tận dụng chuỗi hình ảnh (tức khung hình video). Tuy nhiên, với tư cách là một loại dữ liệu giàu giá trị, cho phép hiểu sâu hơn về tình huống và chuỗi hành động, video đang bắt đầu thu hút sự chú ý từ các nhà nghiên cứu và phát triển.

Tác vụ giám sát video liên quan đến hai loại thuật toán chính, gồm: theo dõi đối tượng và phân loại hành động. Bài viết sẽ mang đến những hiểu biết cơ bản về hai thuật toán này, đồng thời cung cấp một bức tranh toàn cảnh về hệ thống phân tích video.

1. Theo dõi đối tượng

Video là một tập hợp các khung hình. Khi phân tích video, chúng ta có thể phân tích luồng video (nguồn cấp hình ảnh trực tiếp) hoặc chuỗi video (video có độ dài cố định).

Optical flow (Luồng quang)

Trong phân tích video, vấn đề then chốt là ước tính lưu lượng quang học. Luồng quang (Optical flow) có nghĩa là tính toán sự thay đổi pixel giữa hai khung hình (minh họa dưới đây)

Nguồn ảnh: Think Autonomous

Đầu ra của luồng quang là vectơ chuyển động giữa khung 1 và khung 2. Có dạng như sau:

Nguồn ảnh: Think Autonomous

Để giải quyết vấn đề luồng quang, về dữ liệu, có thể sử dụng các bộ như KITTI Vision Benchmark Suite hoặc MPI Sintel (cả hai đều chứa dữ liệu luồng quang trung thực, thường khó tìm thấy ở các bộ dữ liệu phổ biến hơn). Còn về cấu trúc mạng, có thể sử dụng mạng nơ ron tích chập (convolutional neural networks – CNN).

FlowNet là một ví dụ về CNN được thiết kế cho các tác vụ luồng quang. FlowNet có thể xuất luồng quang từ hai khung.

Nguồn ảnh: Think Autonomous

Đầu vào của mạng là một tập hợp hai ảnh RGB; độ sâu là 6. Luồng quang thường được biểu thị bằng màu sắc.

Theo dõi đối tượng trực quan (Visual Object Tracking – VOT)

Theo dõi đối tượng trực quan (VOT) là khoa học theo dõi một đối tượng với vị trí cho trước trong khung 1. Ở đây, ta không sử dụng thuật toán phát hiện (detection algorithm), do đó, không xác định được đối tượng ở đây là gì, mà đơn thuần là theo dõi chuyển động của đối tượng dựa trên một hộp giới hạn (bounding box) ban đầu.

Việc theo dõi được thực hiện bằng cách tính toán sự giống nhau giữa khung 0 và 1, hoặc bằng màu sắc. Đối với cách thứ hai, ta phải tính toán màu của đối tượng đã cho, sau đó tính toán nền đại diện cho màu gần nhất với đối tượng. Bước tiếp theo là tiến hành xóa đối tượng khỏi hình ảnh ban đầu để theo dõi.

Nguồn ảnh: Think Autonomous
Nguồn ảnh: Think Autonomous

Đây là một kỹ thuật rất mạnh và chỉ sử dụng thị giác máy tính. Quy trình này có thể được tóm tắt như sau:

Có thể tham khảo votchallenge.net để tìm bộ dữ liệu cho tác vụ này

Bước tiếp theo là áp dụng mạng thần kinh tích chập (CNN) 

Ở đây, cần phân biệt hai mô hình chính là MDNet và GOTURN.

Nguồn ảnh: Think Autonomous
Nguồn ảnh: Think Autonomous

Theo dõi đa đối tượng (Multiple Object Tracking – MOT)

MOT sử dụng thuật toán Deep SORT. Không giống như các trình theo dõi khác (VOT), MOT mang tính dài hạn hơn.

Ở đây, ta có hai loại: Theo dõi dựa trên/không dựa trên phát hiện

Đối với theo dõi dựa trên phát hiện, có 02 tác vụ chính: Phát hiện đối tượng & Liên kết đối tượng

Liên kết đối tượng có nghĩa là liên kết các phát hiện từ thời điểm t với các phát hiện từ thời điểm t + 1. Điều này phụ thuộc rất nhiều vào chất lượng của trình phát hiện. Một trình phát hiện kém sẽ làm cho bộ theo dõi không thể hoạt động. Mặt khác, một trình theo dõi tốt có thể xử lý cả những khung hình không có bất cứ phát hiện nào.

Ngoài ra, cũng có thể phân biệt giữa theo dõi trực tuyến và ngoại tuyến. Theo dõi trực tuyến thực hiện trên một nguồn cấp dữ liệu trực tiếp. Trong khi đó, theo dõi ngoại tuyến hoạt động trên một video đầy đủ sẵn các khung hình.

Đối với theo dõi trực tuyến, có thể sử dụng: mạng thần kinh tích chập CNN để phát hiện đối tượng; Bộ lọc Kalman để dự đoán vị trí tại thời điểm t từ vị trí tại thời điểm t-1 cho trước; Thuật toán Hungary (The Hungarian Algorithm) để phát hiện liên kết khung. 

Tóm lại, theo dõi đối tượng bao gồm ước tính luồng quang, theo dõi đối tượng trực quan và theo dõi đa đối tượng.

2. Phân loại hành động

Phân loại hành động là nhóm tác vụ thứ hai liên quan đến việc xây dựng hệ thống giám sát dựa trên thị giác máy tính. Phân loại hành động phụ thuộc trực tiếp vào việc phát hiện và theo dõi đối tượng. Sau khi hiểu được một tình huống nhất định, ta có thể phân loại các hành động bên trong hộp giới hạn.

Điều kiện đầu tiên là cần một camera cho phép quan sát đối tượng ở góc độ tốt nhất. Các hành động cần phân loại có thể đơn giản, chẳng hạn như đi bộ, chạy, vỗ tay hoặc vẫy tay, hoặc phức tạp hơn như nấu ăn, bao gồm một loạt các thao tác liền nhau.

Bộ dữ liệu

So với việc theo dõi đối tượng thì dán nhãn dữ liệu trong phân loại hành động trở nên dễ dàng hơn — Trong một số trường hợp, chỉ cần dán một nhãn cho một tập hợp các hình ảnh.

Bạn có thể tham khảo bộ dữ liệu KTH Actions để thu thập video và các nhãn được liên kết. Ngoài ra, UCF Sport Actions, Hollywood2, HMDB hoặc UCF 101 cũng là một số nguồn hữu ích hỗ trợ phân loại hành động.

Luồng quang

Bởi khả năng xác định một vectơ giữa hai khung, luồng quang có thể được sử dụng như đầu vào cho một mạng nơ-ron phân loại.

Nguồn ảnh: Think Autonomous

Phân loại hành động với Học máy (Đầu cuối: End-To-End)

Mạng CNN là một giải pháp mới và hiện đại hơn, giúp phân loại hành động.

Hành động xảy ra trong video, không phải trong hình ảnh. Điều này đồng nghĩa với việc phải đưa rất nhiều khung hình vào hệ thống CNN, sau đó, thực hiện tác vụ phân loại theo không-thời gian. 

Việc phát hiện hay phân loại hành động trên hình ảnh đã đủ khó, bởi các yếu tố chiều kích của ảnh. Tuy nhiên, đối với video, điều đó còn khó hơn.

Dưới đây là một ví dụ về cách thức two-scale model phân loại hành động từ các luồng hình ảnh.

Nguồn ảnh: Think Autonomous

Hệ thống mạng nơ-ron sẽ hoạt động trên 2 đầu vào và xuất ra một hành động. Luồng không gian hoạt động trên single frame; được xếp chồng lên luồng thời gian hoạt động trên multi-frame optical flow. Ở đây cũng sử dụng một bộ phân loại tuyến tính.

Ước lượng tư thế

Ước lượng tư thế (Pose Estimation) là một kỹ thuật học sâu khác được sử dụng để phân loại hành động.

Quy trình ước lượng tư thế bao gồm:

Như vậy, có thể tổng quan các thuật toán phân tích video thông qua sơ đồ dưới đây

Nguồn ảnh: Think Autonomous

Ứng dụng các công nghệ hiện đại, thuật toán AI ưu việt, cùng hạ tầng dữ liệu đặc thù quy mô lớn, VinBigData phát triển hệ thống camera thông minh VinCamAI. Hệ thống sở hữu 04 nhóm tính năng chính, bao gồm: Thống kê lưu lượng – Nhận diện khuôn mặt – Nhận diện vật thể – Phân tích đặc điểm và hành vi. Giải pháp có khả năng nhận diện người ngay cả khi đang đeo khẩu trang với độ chính xác trên 90%. Kết quả nhận diện, phân tích và thống kê mà hệ thống đưa ra có thể đạt chính xác tới 99%. Đặc biệt, so với camera truyền thống, VinCamAI hoạt động hiệu quả hơn từ 17-25% và tích hợp dễ dàng trên đa dạng quy mô như nhà máy, bệnh viện, trường học, trung tâm thương mại, cửa hàng tiện ích…

Ngày nay, việc ra lệnh cho trợ lý ảo để thực hiện một số tác vụ đang dần trở nên phổ biến. Giao tiếp bằng giọng nói chính là cách thức tự nhiên nhất để tương tác, kết nối giữa người và máy. Trải nghiệm bằng giọng nói cũng đem lại sự tiện lợi rõ rệt cho người dùng cuối, giúp họ tiết kiệm thời gian nhập lệnh/truy vấn/tác vụ cần thực hiện.

Vậy công nghệ nào đã giúp máy có thể giao tiếp như người thật? Đây có phải nhân tố chính nằm sau sự ra đời của các sản phẩm trợ lý ảo hay không?

Giống như hầu hết các công nghệ mang tính cách mạng, câu trả lời nằm ở trí tuệ nhân tạo (AI) – đặc biệt là trí tuệ nhân tạo hội thoại (Conversational AI). Bài viết dưới đây sẽ hé mở một số hiểu biết cơ bản về AI hội thoại và những kỹ thuật hỗ trợ máy có thể tương tác với người thông qua giọng nói.

AI đàm thoại là gì?

AI đàm thoại có thể được định nghĩa là một cơ chế thông minh bắt chước các cuộc trò chuyện của con người ngoài đời thực. Công nghệ này được xây dựng trên nền tảng của học máy (ML) và xử lý ngôn ngữ tự nhiên (NLP). Bằng cách cung cấp một lượng lớn dữ liệu, máy tính có thể học bản chất của các tương tác giữa con người, từ đó nhận dạng giọng nói và văn bản đầu vào, đồng thời dịch nghĩa sang một loạt các ngôn ngữ khác mà người dùng mong muốn.

Trợ lý giọng nói có phải là ví dụ của AI hội thoại hay không?

Câu trả lời là có. Trợ lý giọng nói chính là một ví dụ điển hình về AI hội thoại. AI bot hiện nay tiên tiến hơn các chatbot thông thường (đơn thuần chỉ cung cấp câu trả lời được lập trình sẵn cho một số câu hỏi nhất định). Chúng được cấu hình để tạo ra các phản hồi tự nhiên như người thực, hạn chế tối đa cảm giác như trò chuyện giữa người và máy.

Nếu bạn hỏi trợ lý ảo “Thời tiết hôm nay thế nào?” hoặc yêu cầu ứng dụng “phát danh sách nhạc ưa thích tối thứ bảy!”, nó sẽ đưa ra phản hồi phù hợp chỉ trong vài giây và có thể thực hiện tác vụ nhanh hơn so với thao tác chạm/gõ phím thông thường. Tất cả điều này có thể thực hiện được nhờ phần mềm hội thoại tạo ra bằng trí tuệ nhân tạo.

AI hội thoại vận hành như thế nào?

Học máy là một phần không thể thiếu giúp trợ lý ảo có được những năng lực như của con người. Ứng dụng Trí tuệ nhân tạo, học máy tập trung vào việc đào tạo để các hệ thống cải thiện khả năng học hỏi, từ đó thực hiện các tác vụ một cách tốt hơn. Muốn làm được như vậy, cần cung cấp một bộ dữ liệu để máy tự động tiến hành phân tích các mẫu. Một số lĩnh vực khác của học máy như xử lý ngôn ngữ tự nhiên và học sâu cũng được ứng dụng trong việc xây dựng AI đàm thoại. Những công nghệ này trang bị cho trợ lý ảo năng lực tự học, nhằm sử dụng kinh nghiệm thu được từ các lần phản hồi đúng/sai trước đó để cải thiện trong tương lai. 

Tóm tắt quy trình vận hành của AI đàm thoại
Tóm tắt quy trình vận hành của AI đàm thoại

Quy trình hoạt động của AI hội thoại cơ bản gồm các bước: 

Sau khi truy vấn được đưa ra, AI phải hiểu được tiếng nói của người dùng, thông qua công nghệ tự động nhận dạng giọng nói (ASR) giúp chuyển tiếng nói thành văn bản.

Hiểu ngôn ngữ tự nhiên (NLU) giúp hệ thống diễn giải, phân tích cảm xúc và ý định đằng sau truy vấn. Các hệ thống tiên tiến thậm chí có thể hiểu được nội dung những câu thoại không tuân thủ nguyên tắc ngữ pháp hoặc khi người dùng nói tắt. 

Dựa trên ý định của người dùng, học máy sẽ tạo ra phản hồi phù hợp. Theo thời gian, phản hồi của máy sẽ ngày một tốt lên, bằng cách học hỏi các biến thể khác nhau của cùng một truy vấn, một mục đích.

Sau khi tổng hợp tất cả thông tin này, máy tạo ra phản hồi có thể hiểu được dựa trên công nghệ tạo ngôn ngữ tự nhiên (NLG). Dù là yêu cầu hoàn thành tác vụ hay trả lời một truy vấn, hệ thống cũng có thể hoàn tất quy trình này tương tự như con người. 

Với công nghệ chuyển văn bản thành giọng nói (TTS), trợ lý ảo sẽ trò chuyện, giao tiếp tự nhiên với con người.

Vì sao AI hội thoại quan trọng đối với doanh nghiệp?

1. Nâng cao trải nghiệm khách hàng

Với tương tác tự nhiên, đơn giản chỉ bằng giọng nói, trợ lý ảo giúp đem lại trải nghiệm “không chạm” tiện lợi và an toàn đối với người dùng cuối. Đồng thời, ứng dụng trợ lý ảo góp phần xây dựng hệ sinh thái thông minh, đồng bộ, tối ưu cho khách hàng.

2. Tối ưu hóa các tác vụ lặp lại

RPA (Robotics Process Automation) ra đời, giúp tự động hóa các tác vụ lặp lại. Tuy nhiên, RPA gặp hạn chế đáng kể trong việc hướng đến trải nghiệm khách hàng. Trong những trường hợp này, AI hội thoại là giải pháp hữu ích hơn, vừa hỗ trợ tương tác với khách hàng một cách tự nhiên, thân thiện, vừa giải phóng một khối lượng lớn công việc cho đội ngũ nhân sự. 

3. Xây dựng cơ sở dữ liệu về khách hàng

AI hội  thoại là một cơ chế giao tiếp không cấu trúc, giúp thu thập thông tin trong mọi tương tác để cải tiến thuật toán. Điều này mang đến cho doanh nghiệp một cái nhìn cụ thể về khách hàng mục tiêu, từ đó tiếp tục xây dựng và cải thiện các sản phẩm, dịch vụ hướng khách hàng.

Với hơn 10,000 giờ phân tích các dữ liệu tiếng Việt chất lượng, được phân loại và chọn lọc kỹ càng, Trợ lý giọng nói tiếng Việt ViVi (phát triển bởi VinBigData) có khả năng phản hồi câu thoại nhanh chóng và chính xác. Công nghệ chuyển đổi giọng nói thành văn bản với tỷ lệ WER nhỏ hơn 6% và sẽ tiếp tục được cải thiện, nhờ quy trình không ngừng làm giàu, làm mới và xử lý dữ liệu. Đặc biệt, từ cơ sở dữ liệu lớn và đặc thù, lần đầu tiên tại Việt Nam, trợ lý ảo có thể hiểu ngôn ngữ từng vùng miền, giúp đem lại trải nghiệm sử dụng đầy thuận tiện, dễ dàng cho người sử dụng. Đồng thời, sở hữu giọng đọc tự nhiên và chất lượng từ MC Hoài Anh, ViVi có thể giao tiếp một cách tự nhiên và thân thiện, với tông giọng lên xuống để biểu hiện cảm xúc.

Nếu bạn đang xây dựng hệ thống nhận dạng tiếng nói hoặc AI đàm thoại, vậy thì chắc chắn sẽ cần đến các bộ dữ liệu huấn luyện và thử nghiệm các mô hình. Tuy nhiên, có thể tìm kiếm dữ liệu chất lượng về nhận dạng tiếng nói ở đâu? Làm thế nào để tìm được các bản ghi âm giọng nói đáp ứng chính xác thông số kỹ thuật đào tạo mà bạn cần?

Thực tế có hàng trăm bộ dữ liệu tiếng nói được chia sẻ trên Internet. Song, để có được dữ liệu giọng nói phù hợp với chính sản phẩm/giải pháp đang phát triển, bạn sẽ cần thu thập dữ liệu của riêng mình. Dưới đây là 04 phương pháp gợi ý giúp bạn xây dựng bộ dữ liệu đào tạo cho các mô hình học máy. Đi kèm với mỗi phương pháp là những phân tích về ưu, nhược điểm của chúng.

1, Các bộ dữ liệu tiếng nói mở cho cộng đồng

Trước tiên, hãy tận dụng những tài nguyên miễn phí trên Internet. Các bộ dữ liệu nhận dạng tiếng nói được mở cho cộng đồng là một lựa chọn tuyệt vời để khởi đầu. Những bộ dữ liệu này được thu thập từ các dự án nghiên cứu công khai và chia sẻ mã nguồn với mục tiêu thúc đẩy đổi mới sáng tạo trong cộng đồng xử lý ngôn ngữ và tiếng nói.

Một số nguồn bạn có thể tham khảo bao gồm:

Ưu điểm:

Hạn chế: 

2, Tập dữ liệu tiếng nói được đóng gói sẵn

Trong trường hợp không thể tự xây dựng bộ dữ liệu riêng, đồng thời cảm thấy các bộ dữ liệu nguồn mở là không phù hợp, bạn có thể cân nhắc đến việc mua các bộ dữ liệu được đóng gói sẵn. Dữ liệu này đã được nhà cung cấp thu thập và tổng hợp, phục vụ mục tiêu của từng khách hàng.

Ưu điểm:

Hạn chế:

3, Bộ dữ liệu thu thập từ xa 

Để xây dựng ứng dụng điều khiển bằng giọng nói, bạn sẽ cần một bộ dữ liệu với ngôn ngữ chuyên ngành đặc thù. Ví dụ: đối với lĩnh vực ngân hàng, bạn sẽ cần các mẫu giọng nói liên quan đến hoạt động giao dịch, sao kê, tiết kiệm,… Không phải bất kỳ bộ dữ liệu nào cũng đáp ứng được yêu cầu này. Đó là khi bạn phải tự thu thập dữ liệu riêng hoặc thông qua các nhà cung cấp giải pháp dữ liệu. 

Để thu thập dữ liệu giọng nói, có hai lựa chọn: thu thập từ xa hoặc trực tiếp.

Thu thập dữ liệu giọng nói từ xa
Người tham gia dự án có thể thu giọng qua các thiết bị di động, tiến hành dán nhãn hoặc phiên âm và gửi bộ dữ liệu về các nhà phát triển

Với lựa chọn thứ nhất, dữ liệu giọng nói được thu thập từ xa thông qua các ứng dụng dành cho thiết bị di động hoặc nền tảng trình duyệt web từ một nhóm đáng tin cậy. Những người tham gia được tuyển chọn trực tuyến dựa trên hồ sơ ngôn ngữ và nhân khẩu học. Sau đó, họ được yêu cầu ghi lại các mẫu giọng nói bằng cách đọc lời nhắc trên màn hình hoặc bằng giao tiếp qua nhiều tình huống khác nhau.

Đối với hầu hết các dự án thu thập dữ liệu, đây là lựa chọn tối ưu nhất bởi giá cả phải chăng, khả năng mở rộng và tùy chỉnh theo nhu cầu của nhà phát triển.

Ưu điểm

Hạn chế:

4, Bộ dữ liệu thu âm trực tiếp

Thu âm trực tiếp thường đòi hỏi một khoản đầu tư lớn hơn so với thu thập dữ liệu từ xa. Tuy nhiên, đây lại là lựa chọn tốt nhất để đáp ứng yêu cầu của những nhà phát triển khó tính.

Ưu điểm

Hạn chế:

Với hơn 10,000 giờ phân tích các dữ liệu tiếng Việt chất lượng, được phân loại và chọn lọc kỹ càng, Trợ lý giọng nói tiếng Việt ViVi (phát triển bởi VinBigData) có khả năng phản hồi câu thoại nhanh chóng và chính xác. Mô hình AI giúp chuyển đổi giọng nói thành văn bản với tỷ lệ WER nhỏ hơn 6%. Đặc biệt, lần đầu tiên tại Việt Nam, trợ lý ảo có thể hiểu ngôn ngữ đặc thù từng vùng miền, giúp đem lại trải nghiệm sử dụng đầy thuận tiện, dễ dàng cho người sử dụng. Đồng thời, sở hữu giọng đọc tự nhiên và chất lượng từ MC Hoài Anh, ViVi có thể giao tiếp một cách tự nhiên và thân thiện, với tông giọng lên xuống để biểu hiện cảm xúc.

Trải nghiệm ViVi tại đây.