Góc nhìn Anderson

Bộ giải mã video được thiết kế cho phân tích AI

mm
Thêm Unite.AI vào các nguồn ưu tiên của bạn trên Google

Mặc dù bộ phim khoa học viễn tưởng The Circle (2017) là một bình luận về các ý nghĩa đạo đức của mạng xã hội hơn là các thực tế của phân tích video bên ngoài, nhưng chiếc camera ‘SeeChange’ không thể tin được nhỏ ở trung tâm của câu chuyện chính là điều thực sự đẩy bộ phim vào thể loại ‘khoa học viễn tưởng’.

Thiết bị camera/surveillance 'SeeChange' từ bộ phim khoa học viễn tưởng The Circle (2017).

Thiết bị camera/surveillance ‘SeeChange’ từ bộ phim khoa học viễn tưởng ‘The Circle’ (2017).

Một thiết bị không dây và di chuyển tự do có kích thước khoảng một viên bi lớn, nó không phải là sự thiếu sót của các tấm pin mặt trời hoặc sự không hiệu quả của việc rút năng lượng từ các nguồn khác (như sóng vô tuyến) mà làm cho SeeChange trở thành một triển vọng không thể tin được, nhưng thực tế là nó sẽ phải nén video 24/7, trên bất kỳ nguồn năng lượng nào mà nó có thể duy trì.

Cung cấp năng lượng cho các cảm biến giá rẻ như này là một lĩnh vực nghiên cứu chính trong tầm nhìn máy tính (CV) và phân tích video, đặc biệt là trong các môi trường không đô thị nơi cảm biến sẽ phải tận dụng tối đa hiệu suất từ các nguồn năng lượng rất hạn chế (pin, năng lượng mặt trời, v.v.).

Trong các trường hợp mà một thiết bị IoT/CV như này phải gửi nội dung hình ảnh đến một máy chủ trung tâm (thường thông qua mạng di động thông thường), các lựa chọn là khó khăn: либо thiết bị cần chạy một số loại mạng nơ-ron nhẹ cục bộ để gửi chỉ các đoạn dữ liệu được tối ưu hóa cho quá trình xử lý phía máy chủ; hoặc nó phải gửi video ‘ngu’ để các tài nguyên đám mây có thể đánh giá.

Mặc dù việc kích hoạt thông qua cảm biến thị giác thông minh (SVS) dựa trên sự kiện có thể giảm thiểu chi phí này, nhưng việc giám sát kích hoạt cũng tiêu tốn năng lượng.

Nắm giữ quyền lực

Hơn nữa, ngay cả với việc kích hoạt không thường xuyên (tức là một con cừu thỉnh thoảng đi vào tầm nhìn), thiết bị không có đủ năng lượng để gửi gigabyte video không nén; cũng không có đủ năng lượng để chạy liên tục các codec nén video phổ biến như H.264/5, những codec này dự kiến sẽ có phần cứng được cắm vào hoặc không xa khỏi phiên bản sạc tiếp theo.

Các đường ống phân tích video cho ba nhiệm vụ tầm nhìn máy tính thông thường. Kiến trúc mã hóa video cần được đào tạo cho nhiệm vụ cụ thể, và thường cho mạng nơ-ron sẽ nhận dữ liệu. Nguồn: https://arxiv.org/pdf/2204.12534.pdf

Các đường ống phân tích video cho ba nhiệm vụ tầm nhìn máy tính thông thường. Kiến trúc mã hóa video cần được đào tạo cho nhiệm vụ cụ thể, và thường cho mạng nơ-ron sẽ nhận dữ liệu. Nguồn: https://arxiv.org/pdf/2204.12534.pdf

Mặc dù codec H.264 được lan truyền rộng rãi có mức tiêu thụ năng lượng thấp hơn so với người kế nhiệm H.265, nhưng nó có hiệu suất nén kém. Người kế nhiệm của nó, H.265, có hiệu suất nén tốt hơn, nhưng tiêu thụ năng lượng cao hơn. Trong khi codec nguồn mở VP9 của Google vượt qua cả hai trong từng lĩnh vực, nhưng nó yêu cầu tài nguyên tính toán cục bộ cao hơn, điều này gây ra các vấn đề bổ sung trong một cảm biến IoT giá rẻ.

Về việc phân tích luồng cục bộ: bằng thời điểm bạn đã chạy thậm chí mạng nơ-ron nhẹ nhất cục bộ để xác định khung hình (hoặc khu vực của khung hình) nào đáng gửi đến máy chủ, bạn đã thường tiêu tốn năng lượng mà bạn sẽ tiết kiệm bằng cách gửi tất cả khung hình.

Trích xuất các biểu diễn có mặt nạ của gia súc với một cảm biến không thể kết nối lưới. Nó có nên tiêu tốn năng lượng hạn chế của mình vào phân đoạn ngữ nghĩa cục bộ với một mạng nơ-ron nhẹ; bằng cách gửi thông tin hạn chế đến máy chủ để nhận hướng dẫn thêm (giới thiệu độ trễ); hoặc bằng cách gửi dữ liệu 'ngu' (lãng phí năng lượng trên băng thông)?

Trích xuất các biểu diễn có mặt nạ của gia súc với một cảm biến không thể kết nối lưới. Nó có nên tiêu tốn năng lượng hạn chế của mình vào phân đoạn ngữ nghĩa cục bộ với một mạng nơ-ron nhẹ; bằng cách gửi thông tin hạn chế đến máy chủ để nhận hướng dẫn thêm (giới thiệu độ trễ); hoặc bằng cách gửi dữ liệu ‘ngu’ (lãng phí năng lượng trên băng thông)? Nguồn: https://arxiv.org/pdf/1807.01972.pdf

Nó rõ ràng rằng các dự án tầm nhìn máy tính ‘trong tự nhiên’ cần các codec nén video chuyên dụng được tối ưu hóa cho các yêu cầu của các mạng nơ-ron cụ thể trên các nhiệm vụ đa dạng như phân đoạn ngữ nghĩa, phát hiện điểm then chốt (phân tích chuyển động con người) và phát hiện đối tượng, trong số các ứng dụng cuối cùng có thể.

Nếu bạn có thể đạt được sự cân bằng hoàn hảo giữa hiệu suất nén video và truyền输 dữ liệu tối thiểu, bạn đã tiến gần hơn đến SeeChange, và khả năng triển khai các mạng cảm biến giá rẻ trong các môi trường không thân thiện.

AccMPEG

Một nghiên cứu mới từ Đại học Chicago có thể đã tiến gần hơn đến một codec như vậy, dưới dạng AccMPEG – một khuôn khổ mã hóa và truyền video mới hoạt động ở độ trễ thấp, độ chính xác cao cho các mạng nơ-ron sâu (DNN) phía máy chủ, và có yêu cầu tính toán cục bộ thấp đáng chú ý.

Kiến trúc của AccMPEG.

Kiến trúc của AccMPEG. Nguồn: https://arxiv.org/pdf/2204.12534.pdf

Hệ thống này có thể tiết kiệm chi phí so với các phương pháp trước đó bằng cách đánh giá mức độ mà mỗi khối macro 16x16px khối macro có thể ảnh hưởng đến độ chính xác của DNN phía máy chủ. Các phương pháp trước đó thường phải đánh giá độ chính xác này dựa trên mỗi pixel trong hình ảnh hoặc thực hiện các hoạt động cục bộ tốn kém điện để đánh giá các khu vực của hình ảnh có thể quan trọng nhất.

Trong AccMPEG, độ chính xác này được ước tính trong một mô-đun tùy chỉnh gọi là AccGrad, đo lường các cách mà chất lượng mã hóa của khối macro có thể liên quan đến trường hợp sử dụng cuối cùng, chẳng hạn như DNN phía máy chủ đang cố gắng đếm người, thực hiện ước tính bộ xương trên chuyển động con người, hoặc các nhiệm vụ tầm nhìn máy tính thông thường khác.

Khi một khung hình video đến hệ thống, AccMPEG ban đầu xử lý nó thông qua một mô hình chọn chất lượng giá rẻ, có tên AccModel. Bất kỳ khu vực nào không có khả năng đóng góp vào các tính toán hữu ích của DNN phía máy chủ đều cơ bản là trọng lượng, và nên được đánh dấu để mã hóa ở chất lượng thấp nhất có thể, so với các khu vực nổi bật, nên được gửi ở chất lượng tốt hơn.

Quá trình này đưa ra ba thách thức: liệu quá trình có thể được thực hiện đủ nhanh để đạt được độ trễ chấp nhận được mà không sử dụng tài nguyên tính toán cục bộ tốn năng lượng? Liệu một mối quan hệ tối ưu giữa tốc độ khung hình và chất lượng có thể được thiết lập? Và liệu một mô hình có thể được đào tạo nhanh cho một DNN phía máy chủ cụ thể?

Đào tạo Logistics

Ideally, một codec tầm nhìn máy tính sẽ được đào tạo trước trên các hệ thống cắm vào đến các yêu cầu chính xác của một mạng nơ-ron cụ thể. Tuy nhiên, mô-đun AccGrad có thể được trực tiếp suy dẫn từ một DNN với chỉ hai lần truyền tới, với tiết kiệm 10 lần chi phí tiêu chuẩn.

AccMPEG đào tạo AccGrad chỉ trong 15 kỷ của ba lần truyền tới mỗi lần qua DNN cuối cùng, và có thể được đào tạo lại ‘trực tiếp’ sử dụng trạng thái mô hình hiện tại của nó như một mẫu, ít nhất là cho các nhiệm vụ tầm nhìn máy tính tương tự.

AccModel sử dụng bộ trích xuất tính năng trước được đào tạo MobileNet-SSD, phổ biến trong các thiết bị cạnh giá rẻ. Ở mức 12 GFLOPS, mô hình này chỉ sử dụng một phần ba của các phương pháp ResNet18 thông thường. Ngoài việc chuẩn hóa và kích hoạt, kiến trúc chỉ bao gồm các lớp convolution, và chi phí tính toán của nó tỷ lệ với kích thước khung hình.

AccGrad loại bỏ nhu cầu về suy luận DNN cuối cùng, cải thiện việc triển khai.

AccGrad loại bỏ nhu cầu về suy luận DNN cuối cùng, cải thiện việc triển khai.

Tốc độ khung hình

Kiến trúc này chạy tối ưu ở 10fps, điều này sẽ làm cho nó phù hợp cho các mục đích như giám sát nông nghiệp, giám sát suy giảm tòa nhà, phân tích giao thông từ trên cao và suy luận bộ xương đại diện trong chuyển động con người; tuy nhiên, các kịch bản di chuyển nhanh, chẳng hạn như giao thông từ trên thấp (xe hơi hoặc người), và các tình huống khác trong đó tốc độ khung hình cao là có lợi, không phù hợp với cách tiếp cận này.

Một phần của phương pháp tiết kiệm này nằm ở tiền đề rằng các khối macro lân cận có khả năng có giá trị tương tự, cho đến khi một khối macro rơi xuống độ chính xác ước tính. Các khu vực thu được bằng cách tiếp cận này được xác định rõ ràng hơn và có thể được tính toán với tốc độ nhanh hơn.

Cải thiện hiệu suất

Các nhà nghiên cứu đã thử nghiệm hệ thống trên một bảng Jetson Nano 60 đô la với một GPU Maxwell 128 lõi đơn, và các thiết bị tương đương giá rẻ khác. OpenVINO được sử dụng để bù đắp một số yêu cầu năng lượng của các DNN cục bộ rất thưa thớt đến CPU.

Mô hình AccModel ban đầu được đào tạo ngoại tuyến trên một máy chủ với 8 GPU GeForce RTX 2080S. Mặc dù đây là một mảng tính toán mạnh mẽ cho việc xây dựng mô hình ban đầu, nhưng việc đào tạo lại nhẹ mà hệ thống này cho phép, và cách một mô hình có thể được điều chỉnh đến các tham số dung sai nhất định trên các DNN khác nhau đang thực hiện các nhiệm vụ tương tự, có nghĩa là AccMPEG có thể trở thành một phần của hệ thống cần sự giám sát tối thiểu trong tự nhiên.

 

Được xuất bản lần đầu vào ngày 1 tháng 5 năm 2022.

Nhà văn về học máy, chuyên gia lĩnh vực tổng hợp hình ảnh con người. Cựu trưởng nhóm nội dung nghiên cứu tại Metaphysic.ai, cho đến khi nó được併 nhập vào Brahma.ai của DNEG.
Portfolio site: martinanderson.ai
Contact: martin@martinanderson.ai