Thuật ngữ

Cắt tỉa

Khám phá cách cắt tỉa tối ưu hóa các mô hình AI bằng cách giảm kích thước trong khi vẫn giữ được độ chính xác, cho phép hiệu suất nhanh hơn, hiệu quả hơn cho các ứng dụng thực 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 là một kỹ thuật trong học máy được sử dụng để giảm kích thước của mạng nơ-ron bằng cách loại bỏ các trọng số không cần thiết hoặc toàn bộ nơ-ron đóng góp tối thiểu vào hiệu suất của mô hình. Quá trình này giúp 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, bộ nhớ và mức tiêu thụ năng lượng, đồng thời vẫn duy trì được mức độ chính xác chấp nhận được.

Tại sao việc cắt tỉa lại quan trọng?

Việc cắt tỉa là cần thiết trong các tình huống mà tài nguyên tính toán bị hạn chế, chẳng hạn như thiết bị biên, ứng dụng di động hoặc hệ thống nhúng. Bằng cách tập trung vào các thành phần quan trọng nhất của mô hình, việc cắt tỉa cho phép suy luận nhanh hơn, giảm yêu cầu lưu trữ và giảm thiểu mức tiêu thụ điện năng. Những lợi ích này đặc biệt có giá trị khi triển khai các mô hình trong các ứng dụng thời gian thực, chẳng hạn như các mô hình được hỗ trợ bởi Ultralytics YOLO để phát hiện đối tượng.

Việc cắt tỉa cũng đóng vai trò quan trọng trong việc tối ưu hóa mô hình vì nó có thể bổ sung cho các kỹ thuật như lượng tử hóa mô hình và điều chỉnh siêu tham số để nâng cao hiệu suất mà không cần dữ liệu bổ sung hoặc đào tạo lại từ đầu.

Cách cắt tỉa hoạt động như thế nào

Việc cắt tỉa thường liên quan đến việc đánh giá tầm quan trọng của trọng số, nơ-ron hoặc lớp trong mạng nơ-ron. Các số liệu như độ lớn trọng số, đóng góp vào đầu ra hoặc độ nhạy với mất mát được sử dụng để xác định các thành phần có thể loại bỏ an toàn. Sau khi cắt tỉa hoàn tất, mô hình có thể được tinh chỉnh để khôi phục bất kỳ tổn thất độ chính xác nhỏ nào do việc loại bỏ các thành phần.

Có ba cách cắt tỉa phổ biến:

  • Weight Pruning : Loại bỏ các trọng số riêng lẻ trong các lớp có tác động tối thiểu đến dự đoán của mô hình. Phương pháp này có độ chi tiết cao và có thể áp dụng trên toàn bộ mạng.
  • Cắt tỉa nơ-ron : Loại bỏ toàn bộ nơ-ron hoặc kênh bằng cách phân tích sự đóng góp của chúng vào đầu ra của mạng. Cách tiếp cận này ít chi tiết hơn nhưng đơn giản hóa cấu trúc mạng.
  • Cắt tỉa có cấu trúc : Tập trung vào việc loại bỏ các thành phần lớn hơn, chẳng hạn như toàn bộ lớp hoặc bản đồ đặc điểm, để giảm đáng kể kích thước mô hình trong khi vẫn duy trì khả năng diễn giải.

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

Việc cắt tỉa đã được ứng dụng trong nhiều ngành công nghiệp và trường hợp sử dụng khác nhau, bao gồm:

  1. Xe tự lái : Các mô hình được cắt tỉa được sử dụng trong hệ thống phát hiện và theo dõi đối tượng theo thời gian thực, đảm bảo ra quyết định nhanh chóng và chính xác trong xe tự hành. Tìm hiểu thêm về AI trong xe tự lái .

  2. Chăm sóc sức khỏe : Các mô hình được cắt tỉa được triển khai trong các công cụ hình ảnh y tế cho các nhiệm vụ như phát hiện khối u, trong đó hiệu quả tính toán là rất quan trọng để đưa ra chẩn đoán kịp thời. Khám phá điều này trong AI trong chăm sóc sức khỏe .

  3. Nông nghiệp thông minh : Cắt tỉa cho phép các mô hình nhẹ chạy trên máy bay không người lái hoặc thiết bị IoT để theo dõi cây trồng và phát hiện sâu bệnh. Xem cách thức hoạt động của AI trong nông nghiệp .

  4. Đồ điện tử tiêu dùng : Các thiết bị như điện thoại thông minh tận dụng các mô hình được cắt giảm cho các tính năng như nhận dạng khuôn mặt hoặc trợ lý giọng nói, đòi hỏi phải xử lý nhanh trên thiết bị.

Cắt tỉa trong các ứng dụng AI/ML trong thế giới thực

Ví dụ 1: Nâng cao hiệu suất AI Edge

Trong môi trường điện toán biên, chẳng hạn như máy bay không người lái hoặc hệ thống giám sát, các mô hình được cắt tỉa là vô giá. Ví dụ, sử dụng các kỹ thuật cắt tỉa trên các mô hình Ultralytics YOLO có thể giảm đáng kể kích thước mô hình trong khi vẫn duy trì độ chính xác của nó, cho phép phát hiện đối tượng nhanh hơn trực tiếp trên các thiết bị mà không cần dựa vào tài nguyên đám mây.

Ví dụ 2: Ứng dụng di động

Các mô hình được cắt tỉa được triển khai rộng rãi trong các ứng dụng di động, nơi hiệu quả năng lượng và tương tác nhanh chóng của người dùng là ưu tiên. Ví dụ, các ứng dụng di động sử dụng AI cho thực tế tăng cường hoặc dịch thuật thời gian thực sử dụng các phiên bản cắt tỉa của các mô hình học sâu để đảm bảo hiệu suất mượt mà.

Cắt tỉa so với các kỹ thuật liên quan

Trong khi cắt tỉa tập trung vào việc giảm kích thước của một mô hình đã được đào tạo, nó khác với các kỹ thuật liên quan như lượng tử hóa mô hình hoặc chưng cất kiến thức . Lượng tử hóa làm giảm độ chính xác của trọng số mô hình (ví dụ, chuyển đổi từ 32 bit sang 8 bit), trong khi chưng cất kiến thức chuyển kiến thức từ một mô hình lớn sang một mô hình nhỏ hơn. Các kỹ thuật này có thể được kết hợp với cắt tỉa để tối đa hóa hiệu quả.

Bắt đầu với việc cắt tỉa

Việc cắt tỉa có thể được thực hiện thủ công hoặc bằng các công cụ tự động tích hợp vào các khuôn khổ học máy như PyTorch . Đối với người dùng muốn thử nghiệm việc cắt tỉa, các nền tảng như Ultralytics HUB cung cấp các công cụ trực quan để đào tạo và tối ưu hóa các mô hình, giúp hợp lý hóa quy trình làm việc dễ dàng hơn.

Bằng cách kết hợp tính năng cắt tỉa vào quy trình học máy, bạn có thể mở khóa tiềm năng triển khai các mô hình AI hiệu suất cao, tiết kiệm tài nguyên trên nhiều ứng dụng khác nhau.

Đọc tất cả