Bằng cách nhấp vào “Chấp nhận tất cả cookie”, bạn đồng ý lưu trữ cookie trên thiết bị của mình để cải thiện khả năng điều hướng trang web, phân tích việc sử dụng trang web và hỗ trợ các nỗ lực tiếp thị của chúng tôi. Thông tin thêm
Cài đặt Cookie
Bằng cách nhấp vào “Chấp nhận tất cả cookie”, bạn đồng ý lưu trữ cookie trên thiết bị của mình để cải thiện khả năng điều hướng trang web, phân tích việc sử dụng trang web và hỗ trợ các nỗ lực tiếp thị của chúng tôi. Thông tin thêm
Khám phá lý do tại sao việc cắt tỉa và lượng tử hóa rất cần thiết để tối ưu hóa các mô hình thị giác máy tính và cho phép hiệu suất nhanh hơn trên các thiết bị biên.
Các thiết bị biên đang ngày càng phổ biến nhờ công nghệ tiên tiến. Từ đồng hồ thông minh theo dõi nhịp tim đến máy bay không người lái giám sát đường phố, các hệ thống biên có thể xử lý dữ liệu theo thời gian thực ngay trong chính thiết bị.
Phương pháp này thường nhanh hơn và an toàn hơn so với việc gửi dữ liệu lên đám mây, đặc biệt là đối với các ứng dụng liên quan đến dữ liệu cá nhân, chẳng hạn như phát hiện biển số xe hoặc theo dõi cử chỉ. Đây là những ví dụ về thị giác máy tính , một nhánh của trí tuệ nhân tạo (AI) cho phép máy móc diễn giải và hiểu thông tin trực quan.
Hình 1. Một ví dụ về phát hiện biển số xe. ( Nguồn )
Tuy nhiên, một điều quan trọng cần cân nhắc là các ứng dụng như vậy đòi hỏi các mô hình Vision AI có khả năng xử lý tính toán nặng, sử dụng tài nguyên tối thiểu và hoạt động độc lập. Hầu hết các mô hình thị giác máy tính được phát triển cho các hệ thống hiệu suất cao, khiến chúng ít phù hợp để triển khai trực tiếp trên các thiết bị biên.
Để thu hẹp khoảng cách này, các nhà phát triển thường áp dụng các tối ưu hóa có mục tiêu để điều chỉnh mô hình sao cho chạy hiệu quả trên phần cứng nhỏ hơn. Những điều chỉnh này rất quan trọng đối với việc triển khai biên trong thế giới thực, nơi bộ nhớ và sức mạnh xử lý bị hạn chế.
Điều thú vị là các mô hình thị giác máy tính như Ultralytics YOLO11 đã được thiết kế với tính năng hiệu quả biên, giúp chúng trở nên tuyệt vời cho các tác vụ thời gian thực. Tuy nhiên, hiệu suất của chúng có thể được cải thiện hơn nữa bằng các kỹ thuật tối ưu hóa mô hình như cắt tỉa và lượng tử hóa, cho phép suy luận nhanh hơn và sử dụng tài nguyên ít hơn trên các thiết bị hạn chế.
Trong bài viết này, chúng ta sẽ xem xét kỹ hơn về cắt tỉa và lượng tử hóa, cách chúng hoạt động và cách chúng có thể giúp các mô hình YOLO hoạt động hiệu quả trong các triển khai biên thực tế. Hãy bắt đầu thôi!
Cắt tỉa và lượng tử hóa: Các kỹ thuật cốt lõi trong tối ưu hóa mô hình
Khi chuẩn bị các mô hình Vision AI để triển khai trên các thiết bị biên, một trong những mục tiêu chính là làm cho mô hình nhẹ và đáng tin cậy mà không ảnh hưởng đến hiệu suất. Điều này thường liên quan đến việc giảm kích thước và nhu cầu tính toán của mô hình để nó có thể hoạt động hiệu quả trên phần cứng có bộ nhớ, công suất hoặc khả năng xử lý hạn chế. Hai cách phổ biến để thực hiện điều này là cắt tỉa và lượng tử hóa.
Cắt tỉa là một kỹ thuật tối ưu hóa mô hình AI giúp thu nhỏ và tăng hiệu quả của mạng nơ-ron. Trong nhiều trường hợp, các phần của mô hình, chẳng hạn như một số kết nối hoặc nút, không đóng góp nhiều vào dự đoán cuối cùng của nó. Cắt tỉa hoạt động bằng cách xác định và loại bỏ những phần ít quan trọng này, giúp giảm kích thước mô hình và tăng tốc hiệu suất.
Mặt khác, lượng tử hóa là một kỹ thuật tối ưu hóa làm giảm độ chính xác của các số mà mô hình sử dụng. Thay vì dựa vào số dấu phẩy động 32 bit có độ chính xác cao, mô hình chuyển sang các định dạng nhỏ hơn, hiệu quả hơn như số nguyên 8 bit. Thay đổi này giúp giảm mức sử dụng bộ nhớ và tăng tốc độ suy luận, quá trình mà mô hình đưa ra dự đoán.
Hình 2. Một cái nhìn về cắt tỉa và lượng tử hóa. ( Nguồn )
Cách thức hoạt động của việc cắt tỉa và lượng tử hóa
Bây giờ chúng ta đã hiểu rõ hơn về cắt tỉa và lượng tử hóa, hãy cùng tìm hiểu cách thức hoạt động của chúng.
Việc cắt tỉa được thực hiện bằng một quy trình được gọi là phân tích độ nhạy. Quy trình này xác định những phần nào của mô hình mạng nơ-ron, chẳng hạn như trọng số, nơ-ron hoặc kênh, đóng góp ít nhất vào dự đoán đầu ra cuối cùng. Những phần này có thể được loại bỏ mà không ảnh hưởng nhiều đến độ chính xác. Sau khi cắt tỉa, mô hình thường được đào tạo lại để tinh chỉnh hiệu suất. Chu trình này có thể được lặp lại để tìm ra sự cân bằng phù hợp giữa kích thước và độ chính xác.
Trong khi đó, lượng tử hóa mô hình tập trung vào cách mô hình xử lý dữ liệu. Quá trình này bắt đầu bằng hiệu chuẩn, trong đó mô hình chạy trên dữ liệu mẫu để tìm hiểu phạm vi giá trị cần xử lý. Các giá trị này sau đó được chuyển đổi từ dạng số dấu phẩy động 32 bit sang các định dạng có độ chính xác thấp hơn như số nguyên 8 bit.
Hình 3. Lượng tử hóa giúp giảm kích thước và độ phức tạp của mô hình. ( Nguồn )
Có một số công cụ giúp việc sử dụng kỹ thuật cắt tỉa và lượng tử hóa trong các dự án AI thực tế trở nên dễ dàng hơn. Hầu hết các nền tảng AI, chẳng hạn như PyTorch và TensorFlow, đều tích hợp sẵn hỗ trợ cho các kỹ thuật tối ưu hóa này, cho phép các nhà phát triển tích hợp chúng trực tiếp vào quy trình triển khai mô hình.
Sau khi mô hình được tối ưu hóa, các công cụ như ONNX Runtime có thể giúp chạy mô hình hiệu quả trên nhiều nền tảng phần cứng khác nhau như máy chủ, máy tính để bàn và thiết bị biên. Ngoài ra, Ultralytics còn cung cấp các tích hợp cho phép xuất mô hình YOLO sang các định dạng phù hợp để lượng tử hóa, giúp giảm kích thước mô hình và tăng hiệu suất dễ dàng hơn.
Tổng quan về tối ưu hóa mô hình YOLO của Ultralytics
Các mô hình YOLO của Ultralytics như YOLO11 được công nhận rộng rãi nhờ khả năng phát hiện đối tượng nhanh chóng, chỉ trong một bước, lý tưởng cho các tác vụ Vision AI thời gian thực. Chúng đã được thiết kế để đủ nhẹ và hiệu quả cho việc triển khai biên. Tuy nhiên, các lớp chịu trách nhiệm xử lý các đặc điểm trực quan, được gọi là lớp tích chập, vẫn có thể đòi hỏi sức mạnh tính toán đáng kể trong quá trình suy luận.
Bạn có thể tự hỏi: nếu YOLO11 đã được tối ưu hóa cho việc sử dụng ở biên, tại sao nó cần được tối ưu hóa thêm? Nói một cách đơn giản, không phải tất cả các thiết bị biên đều giống nhau. Một số chạy trên phần cứng rất tối thiểu, chẳng hạn như bộ vi xử lý nhúng nhỏ xíu tiêu thụ ít điện năng hơn cả bóng đèn LED tiêu chuẩn.
Trong những trường hợp này, ngay cả một mô hình tinh gọn như YOLO11 cũng cần được tối ưu hóa thêm để đảm bảo hiệu suất mượt mà và đáng tin cậy. Các kỹ thuật như cắt tỉa và lượng tử hóa giúp giảm kích thước mô hình và tăng tốc độ suy luận mà không ảnh hưởng đáng kể đến độ chính xác, khiến chúng trở nên lý tưởng cho những môi trường hạn chế như vậy.
Để giúp việc áp dụng các kỹ thuật tối ưu hóa này dễ dàng hơn, Ultralytics hỗ trợ nhiều tích hợp khác nhau có thể được sử dụng để xuất mô hình YOLO sang nhiều định dạng như ONNX, TensorRT, OpenVINO, CoreML và PaddlePaddle. Mỗi định dạng được thiết kế để hoạt động tốt với các loại phần cứng và môi trường triển khai cụ thể.
Ví dụ, ONNX thường được sử dụng trong quy trình lượng tử hóa do khả năng tương thích với nhiều công cụ và nền tảng. Mặt khác, TensorRT được tối ưu hóa cao cho các thiết bị NVIDIA và hỗ trợ suy luận độ chính xác thấp bằng INT8, khiến nó trở nên lý tưởng cho việc triển khai tốc độ cao trên GPU biên.
Các trường hợp sử dụng có tác động của mô hình tối ưu hóa YOLO của Ultralytics
Khi thị giác máy tính tiếp tục mở rộng sang nhiều ứng dụng thực tế khác nhau, các mô hình YOLO được tối ưu hóa cho phép thực hiện các tác vụ như phát hiện đối tượng, phân đoạn thực thể và theo dõi đối tượng trên phần cứng nhỏ hơn, nhanh hơn. Tiếp theo, hãy cùng thảo luận về một vài trường hợp sử dụng mà việc cắt tỉa và lượng tử hóa giúp các tác vụ thị giác máy tính này hiệu quả và thiết thực hơn.
Giám sát thông minh được thúc đẩy bởi YOLO11
Nhiều không gian công nghiệp, cũng như khu vực công cộng, phụ thuộc vào việc giám sát theo thời gian thực để đảm bảo an toàn và bảo mật. Những nơi như nhà ga trung chuyển, khu sản xuất và các cơ sở ngoài trời quy mô lớn cần hệ thống Vision AI có khả năng phát hiện người hoặc phương tiện một cách nhanh chóng và chính xác. Thông thường, những địa điểm này hoạt động với kết nối hạn chế và hạn chế về phần cứng, khiến việc triển khai các mô hình lớn trở nên khó khăn.
Trong những trường hợp như vậy, một mô hình Vision AI được tối ưu hóa như YOLO11 là một giải pháp tuyệt vời. Kích thước nhỏ gọn và hiệu suất nhanh chóng của nó giúp nó hoàn hảo để chạy trên các thiết bị biên tiêu thụ điện năng thấp, chẳng hạn như camera nhúng hoặc cảm biến thông minh. Các mô hình này có thể xử lý dữ liệu hình ảnh trực tiếp trên thiết bị, cho phép phát hiện vi phạm an toàn, truy cập trái phép hoặc hoạt động bất thường theo thời gian thực mà không cần phụ thuộc vào kết nối đám mây liên tục.
Hình 4. YOLO11 có thể được sử dụng để giám sát những nơi công cộng như nhà ga tàu điện ngầm.
Tăng cường an toàn tại các công trường xây dựng với YOLO11
Công trường xây dựng là môi trường làm việc nhịp độ nhanh và khó lường, với máy móc hạng nặng, công nhân di chuyển và hoạt động liên tục. Điều kiện làm việc có thể thay đổi nhanh chóng do thay đổi lịch trình, di chuyển thiết bị, hoặc thậm chí là thay đổi thời tiết đột ngột. Trong môi trường năng động như vậy, an toàn lao động có thể trở thành một thách thức liên tục.
Giám sát thời gian thực đóng vai trò quan trọng, nhưng các hệ thống truyền thống thường dựa vào truy cập đám mây hoặc phần cứng đắt tiền, có thể không khả thi tại chỗ. Đây chính là lúc các mô hình như YOLO11 có thể phát huy tác dụng. YOLO11 có thể được tối ưu hóa để chạy trên các thiết bị biên nhỏ gọn, hiệu quả, hoạt động trực tiếp tại chỗ mà không cần kết nối internet.
Ví dụ, hãy xem xét một công trường xây dựng lớn, chẳng hạn như một dự án mở rộng đường cao tốc, trải dài hàng mẫu Anh. Trong bối cảnh này, việc theo dõi thủ công từng phương tiện hoặc thiết bị có thể khó khăn và tốn thời gian. Một máy bay không người lái được trang bị camera và mô hình YOLO11 được tối ưu hóa có thể hỗ trợ bằng cách tự động phát hiện và bám theo phương tiện, giám sát lưu lượng giao thông và xác định các vấn đề an toàn như truy cập trái phép hoặc hành vi lái xe không an toàn.
Hình 5. Phân tích hình ảnh máy bay không người lái từ một công trường xây dựng. ( Nguồn )
Ưu và nhược điểm của việc cắt tỉa và lượng tử hóa trong thị giác máy tính
Sau đây là một số lợi thế chính mà các phương pháp tối ưu hóa mô hình thị giác máy tính như cắt tỉa và lượng tử hóa mang lại:
Triển khai tiết kiệm chi phí: Các mô hình nhỏ hơn và hiệu quả hơn có thể giảm nhu cầu về phần cứng cao cấp, đắt tiền, giúp AI dễ tiếp cận hơn và có khả năng mở rộng trong nhiều trường hợp sử dụng khác nhau.
Độ trễ thấp hơn: Bằng cách đơn giản hóa kiến trúc mô hình và giảm chi phí tính toán, các kỹ thuật này có thể giúp đạt được thời gian phản hồi nhanh hơn trong các ứng dụng thời gian thực.
Hiệu quả năng lượng: Giảm tải tính toán cũng làm giảm mức tiêu thụ điện năng, điều này đặc biệt hữu ích đối với các hệ thống chạy bằng pin hoặc di động.
Mặc dù việc cắt tỉa và lượng tử hóa mang lại nhiều lợi ích, nhưng chúng cũng đi kèm với một số đánh đổi mà các nhà phát triển nên cân nhắc khi tối ưu hóa mô hình. Dưới đây là một số hạn chế cần lưu ý:
Đánh đổivề độ chính xác : Nếu cắt tỉa quá mạnh hoặc nếu sử dụng lượng tử hóa bit rất thấp, độ chính xác của mô hình, được đo bằng các số liệu như mAP, có thể giảm xuống.
Hạn chế về phần cứng: Không phải tất cả thiết bị đều hỗ trợ các định dạng có độ chính xác thấp hơn như INT8. Điều này có thể hạn chế vị trí và cách thức triển khai một mô hình được tối ưu hóa.
Độ phức tạp khi triển khai: Việc đạt được kết quả tốt thường đòi hỏi sự điều chỉnh cẩn thận, cụ thể theo từng mô hình. Các nhà phát triển có thể cần đào tạo lại mô hình và thực hiện thử nghiệm mở rộng để duy trì hiệu suất đồng thời cải thiện hiệu quả.
Những điểm chính
Cắt tỉa và lượng tử hóa là những kỹ thuật hữu ích giúp mô hình YOLO hoạt động tốt hơn trên các thiết bị biên. Chúng giúp giảm kích thước mô hình, giảm nhu cầu tính toán và tăng tốc độ dự đoán, mà không làm giảm đáng kể độ chính xác.
Các phương pháp tối ưu hóa này cũng mang lại cho các nhà phát triển sự linh hoạt trong việc điều chỉnh mô hình cho các loại phần cứng khác nhau mà không cần phải xây dựng lại hoàn toàn. Với một số điều chỉnh và thử nghiệm, việc áp dụng Vision AI vào các tình huống thực tế sẽ trở nên dễ dàng hơn.
Hãy tham gia cộng đồng đang phát triển của chúng tôi! Khám phá kho lưu trữ GitHub của chúng tôi để tìm hiểu thêm về AI. Bạn đã sẵn sàng bắt đầu các dự án thị giác máy tính chưa? Hãy xem các tùy chọn cấp phép của chúng tôi. Khám phá AI trong nông nghiệp và Vision AI trong chăm sóc sức khỏe bằng cách truy cập trang giải pháp của chúng tôi!