Cắt bớt trọng lượng không đáng kể

Tài liệu này cung cấp tổng quan về việc cắt tỉa mô hình để giúp bạn xác định cách nó phù hợp với trường hợp sử dụng của bạn.

Tổng quat

Việc cắt tỉa trọng lượng dựa trên độ lớn dần dần loại bỏ trọng lượng của mô hình trong quá trình đào tạo để đạt được độ thưa thớt của mô hình. Các mô hình thưa thớt dễ nén hơn và chúng ta có thể bỏ qua các số 0 trong quá trình suy luận để cải thiện độ trễ.

Kỹ thuật này mang lại những cải tiến thông qua việc nén mô hình. Trong tương lai, hỗ trợ khung cho kỹ thuật này sẽ cung cấp các cải tiến về độ trễ. Chúng tôi đã thấy những cải tiến gấp 6 lần trong việc nén mô hình với độ chính xác tối thiểu.

Kỹ thuật này đang được đánh giá trong các ứng dụng giọng nói khác nhau, chẳng hạn như nhận dạng giọng nói và chuyển văn bản thành giọng nói, và đã được thử nghiệm trên nhiều mô hình phiên dịch và thị giác khác nhau.

Ma trận tương thích API

Người dùng có thể áp dụng cách cắt tỉa bằng các API sau:

  • Xây dựng mô hình: tf.keras với chỉ tuần tự và các mô hình chức năng
  • Phiên bản TensorFlow: TF 1.x cho phiên bản 1.14+ và 2.x.
    • tf.compat.v1 với một gói TF 2.X và tf.compat.v2 với một gói 1.x TF không được hỗ trợ.
  • Chế độ thực thi TensorFlow: cả biểu đồ và háo hức
  • Distributed đào tạo: tf.distribute với chỉ thực hiện đồ thị

Chúng tôi đang trong lộ trình bổ sung hỗ trợ trong các lĩnh vực sau:

Các kết quả

Phân loại hình ảnh

Mô hình Độ chính xác Top-1 không thưa thớt Độ chính xác thưa thớt ngẫu nhiên Sự thưa thớt ngẫu nhiên Độ chính xác thưa thớt có cấu trúc Có cấu trúc thưa thớt
InceptionV3 78,1% 78,0% 50% 75,8% 2 x 4
76,1% 75%
74,6% 87,5%
MobilenetV1 224 71,04% 70,84% 50% 67,35% 2 x 4
MobilenetV2 224 71,77% 69,64% 50% 66,75% 2 x 4

Các mô hình đã được thử nghiệm trên Imagenet.

Dịch

Mô hình BLEU không thưa thớt BLEU thưa thớt Thưa thớt
GNMT EN-DE 26,77 26,86 80%
26,52 85%
26,19 90%
GNMT DE-EN 29.47 29,50 80%
29,24 85%
28,81 90%

Các mô hình sử dụng tập dữ liệu tiếng Đức và tiếng Anh WMT16 với news-test2013 làm bộ phát triển và news-test2015 làm bộ kiểm tra.

Mô hình phát hiện từ khóa

DS-CNN-L là một mô hình phát hiện từ khóa được tạo cho các thiết bị cạnh. Nó có thể được tìm thấy trong ARM phần mềm của kho ví dụ .

Mô hình Độ chính xác không thưa thớt Độ chính xác thưa thớt có cấu trúc (2 x 4 mẫu) Độ chính xác thưa thớt ngẫu nhiên (mục tiêu thưa thớt 50%)
DS-CNN-L 95,23 94,33 94,84

Các ví dụ

Ngoài các Prune với Keras hướng dẫn, xem các ví dụ sau:

  • Đào tạo một mô hình CNN trên tay nhiệm vụ phân loại chữ số MNIST với cắt tỉa: đang
  • Đào tạo một LSTM trên IMDB tình cảm nhiệm vụ phân loại với cắt tỉa: đang

Đối với nền, xem Để mận, hoặc không để mận: khám phá hiệu quả của cắt tỉa cho mô hình nén [ giấy ].