Thuật ngữ

Cắt tỉa

Tối ưu hóa các mô hình AI bằng cách cắt tỉa—giảm độ phức tạp, tăng hiệu quả và triển khai nhanh hơn trên các thiết bị biên mà không làm giảm hiệu suất.

Xe lửa YOLO mô hình đơn giản
với Ultralytics TRUNG TÂM

Tìm hiểu thêm

Cắt tỉa, trong bối cảnh trí tuệ nhân tạo và học máy, đề cập đến các kỹ thuật được sử dụng để giảm độ phức tạp của mô hình bằng cách loại bỏ các kết nối hoặc tham số ít quan trọng hơn. Quá trình này nhằm mục đích hợp lý hóa mô hình, giúp mô hình hiệu quả hơn về mặt tính toán và sử dụng bộ nhớ, mà không làm giảm đáng kể độ chính xác của mô hình. Cắt tỉa đặc biệt có giá trị khi triển khai mô hình trên các thiết bị hạn chế về tài nguyên hoặc khi muốn tăng tốc độ suy luận.

Sự liên quan của việc cắt tỉa

Tầm quan trọng chính của việc cắt tỉa nằm ở việc tối ưu hóa mô hình. Khi các mô hình học sâu phát triển về kích thước và độ phức tạp để đạt được độ chính xác cao hơn, chúng trở nên tốn kém về mặt tính toán và bộ nhớ. Điều này đặt ra những thách thức cho việc triển khai, đặc biệt là trên các thiết bị biên như điện thoại thông minh hoặc hệ thống nhúng, vốn có tài nguyên hạn chế. Việc cắt tỉa giải quyết vấn đề này bằng cách tạo ra các mô hình nhỏ hơn, nhanh hơn, dễ triển khai hơn và yêu cầu ít năng lượng tính toán hơn, do đó cho phép suy luận theo thời gian thực trong nhiều ứng dụng khác nhau. Đây là một bước quan trọng trong việc tối ưu hóa các mô hình để triển khai mô hình , giúp AI dễ tiếp cận và thiết thực hơn trên nhiều nền tảng khác nhau.

Ứng dụng của việc cắt tỉa

Kỹ thuật cắt tỉa được áp dụng trên nhiều lĩnh vực khác nhau trong AI và học máy. Sau đây là một vài ví dụ cụ thể:

  • Tầm nhìn máy tính di động: Hãy xem xét các mô hình YOLO Ultralytics được sử dụng trong các ứng dụng di động cho các tác vụ như phát hiện đối tượng . Việc cắt tỉa có thể làm giảm đáng kể kích thước của các mô hình này, cho phép chúng chạy hiệu quả trên điện thoại thông minh mà không làm hao pin hoặc ảnh hưởng đến hiệu suất. Điều này rất cần thiết cho các ứng dụng thời gian thực như hệ thống bảo mật di động hoặc ứng dụng thực tế tăng cường. Ví dụ, triển khai một YOLO mô hình trên Edge TPU trên Raspberry Pi có thể giúp tăng tốc độ suy luận và giảm mức tiêu thụ điện năng.

  • Hệ thống lái xe tự động: Trong xe tự lái, phát hiện vật thể nhanh chóng và chính xác là tối quan trọng. Xe tự hành dựa vào các mô hình phức tạp để xử lý dữ liệu cảm biến theo thời gian thực. Việc cắt tỉa các mô hình này có thể giảm độ trễ suy luận , đảm bảo hệ thống AI của xe đưa ra quyết định nhanh hơn. Điều này rất quan trọng đối với sự an toàn và khả năng phản hồi trong môi trường lái xe năng động. Các mô hình được tối ưu hóa thông qua việc cắt tỉa cũng có thể được triển khai bằng TensorRT để tăng tốc hiệu suất hơn nữa trên NVIDIA GPU thường được sử dụng trong các hệ thống tự động.

Các loại và kỹ thuật

Có nhiều cách cắt tỉa khác nhau, được phân loại thành:

  • Cắt tỉa trọng số: Điều này liên quan đến việc loại bỏ các trọng số hoặc kết nối riêng lẻ trong mạng nơ-ron có tác động tối thiểu đến đầu ra của mô hình. Các kỹ thuật như cắt tỉa dựa trên độ lớn sẽ loại bỏ các trọng số có giá trị tuyệt đối nhỏ nhất.
  • Cắt tỉa bộ lọc: Phương pháp có cấu trúc hơn này loại bỏ toàn bộ bộ lọc (và bản đồ tính năng liên quan) khỏi các lớp tích chập. Cắt tỉa bộ lọc thường dẫn đến giảm kích thước mô hình đáng kể hơn và tăng tốc độ so với cắt tỉa trọng số, vì nó trực tiếp làm giảm số lượng tính toán.

Việc cắt tỉa cũng có thể được áp dụng ở các giai đoạn khác nhau của quá trình phát triển mô hình:

  • Cắt tỉa trước khi đào tạo: Cắt tỉa được thực hiện trên một mô hình được đào tạo trước. Đây là một cách tiếp cận phổ biến vì các mô hình được đào tạo trước thường có các tham số dư thừa.
  • Cắt tỉa trong quá trình đào tạo: Cắt tỉa được tích hợp vào chính quá trình đào tạo. Điều này có thể dẫn đến đào tạo hiệu quả hơn và có khả năng hiệu suất mô hình tốt hơn sau khi cắt tỉa.
  • Cắt tỉa sau đào tạo: Cắt tỉa được áp dụng sau khi mô hình đã được đào tạo đầy đủ. Đây là cách tiếp cận đơn giản nhất và thường liên quan đến các kỹ thuật như lượng tử hóa để giảm thêm kích thước mô hình và tăng tốc suy luận, đôi khi được sử dụng kết hợp với các định dạng như ONNX .

Tóm lại, cắt tỉa là một kỹ thuật tối ưu hóa mô hình quan trọng cho phép triển khai các mô hình AI hiệu quả và hiệu suất cao trong môi trường hạn chế về tài nguyên và các ứng dụng nhạy cảm với độ trễ. Bằng cách giảm độ phức tạp của mô hình, cắt tỉa góp phần làm cho AI trở nên thiết thực hơn và có thể áp dụng rộng rãi hơn.

Đọc tất cả