Trang này được dịch bởi Cloud Translation API.
Switch to English

TensorFlow Addons




TensorFlow Addons là một kho lưu trữ các đóng góp phù hợp với các mẫu API được thiết lập tốt, nhưng triển khai chức năng mới không có sẵn trong TensorFlow cốt lõi. TensorFlow nguyên bản hỗ trợ một số lượng lớn toán tử, lớp, số liệu, tổn thất và trình tối ưu hóa. Tuy nhiên, trong một lĩnh vực chuyển động nhanh như ML, có rất nhiều phát triển mới thú vị không thể được tích hợp vào TensorFlow cốt lõi (vì khả năng ứng dụng rộng rãi của chúng chưa rõ ràng hoặc nó chủ yếu được sử dụng bởi một tập hợp con nhỏ hơn của cộng đồng).

Cài đặt

Công trình ổn định

Để cài đặt phiên bản mới nhất, hãy chạy như sau:

pip install tensorflow-addons

Để sử dụng các addon:

import tensorflow as tf
import tensorflow_addons as tfa

Công trình hàng đêm

Ngoài ra còn có các bản dựng hàng đêm của TensorFlow Addons trong gói pip tfa-nightly , được xây dựng dựa trên phiên bản ổn định mới nhất của TensorFlow. Các bản dựng hàng đêm bao gồm các tính năng mới hơn, nhưng có thể kém ổn định hơn so với các bản phát hành có phiên bản.

pip install tfa-nightly

Cài đặt từ Nguồn

Bạn cũng có thể cài đặt từ nguồn. Điều này yêu cầu hệ thống xây dựng Bazel .

git clone https://github.com/tensorflow/addons.git
cd addons

# If building GPU Ops (Requires CUDA 10.0 and CuDNN 7)
export TF_NEED_CUDA=1
export CUDA_HOME="/path/to/cuda10" (default: /usr/local/cuda)
export CUDNN_INSTALL_PATH="/path/to/cudnn" (default: /usr/lib/x86_64-linux-gnu)

# This script links project with TensorFlow dependency
python3 ./configure.py

bazel build build_pip_pkg
bazel-bin/build_pip_pkg artifacts

pip install artifacts/tensorflow_addons-*.whl

Khái niệm cốt lõi

API tiêu chuẩn hóa trong các gói con

Trải nghiệm người dùng và khả năng bảo trì dự án là những khái niệm cốt lõi trong TF-Addons. Để đạt được những điều này, chúng tôi yêu cầu các bổ sung của chúng tôi phải tuân theo các mẫu API đã thiết lập được thấy trong TensorFlow cốt lõi.

GPU / CPU tùy chỉnh-Ops

Một lợi ích chính của TensorFlow Addons là có các hoạt động được biên dịch trước. Nếu không tìm thấy bản cài đặt CUDA 10 thì op sẽ tự động quay trở lại quá trình thực thi CPU.

Quyền duy trì proxy

Các addon đã được thiết kế để chia nhỏ các gói con và mô-đun con để chúng có thể được duy trì bởi những người dùng có chuyên môn và quan tâm đến thành phần đó.

Quyền duy trì gói phụ sẽ chỉ được cấp sau khi đã đóng góp đáng kể để hạn chế số lượng người dùng có quyền ghi. Các đóng góp có thể ở dạng đóng sự cố, sửa lỗi, tài liệu, mã mới hoặc tối ưu hóa mã hiện có. Quyền duy trì mô-đun con có thể được cấp với một rào cản thấp hơn để gia nhập vì điều này sẽ không bao gồm quyền ghi vào repo.

Để biết thêm thông tin, hãy xem RFC về chủ đề này.

Đánh giá định kỳ các gói con

Với bản chất của kho lưu trữ này, các gói con và mô-đun con có thể ngày càng trở nên ít hữu ích hơn cho cộng đồng theo thời gian. Để giữ cho kho lưu trữ bền vững, chúng tôi sẽ thực hiện đánh giá hai năm một lần đối với mã của mình để đảm bảo mọi thứ vẫn thuộc về kho lưu trữ. Các yếu tố đóng góp vào đánh giá này sẽ là:

  1. Số lượng người bảo trì hoạt động
  2. Lượng sử dụng PMNM
  3. Số lượng sự cố hoặc lỗi được quy cho mã
  4. Nếu một giải pháp tốt hơn bây giờ có sẵn

Chức năng bên trong TensorFlow Addons có thể được phân loại thành ba nhóm:

  • Đề xuất : API được duy trì tốt; sử dụng được khuyến khích.
  • Không khuyến khích : có sẵn một giải pháp thay thế tốt hơn; API được giữ lại vì những lý do lịch sử; hoặc API yêu cầu bảo trì và là khoảng thời gian chờ không được dùng nữa.
  • Không được chấp nhận : sử dụng có rủi ro của riêng bạn; chủ đề được xóa.

Thay đổi trạng thái giữa ba nhóm này là: Được đề xuất <-> Không được khuyến khích -> Không được chấp nhận.

Khoảng thời gian giữa một API được đánh dấu là không dùng nữa và bị xóa sẽ là 90 ngày. Cơ sở lý luận là:

  1. Trong trường hợp TensorFlow Addons phát hành hàng tháng, sẽ có 2-3 bản phát hành trước khi một API bị xóa. Các ghi chú phát hành có thể cung cấp cho người dùng đủ cảnh báo.

  2. 90 ngày mang lại cho người bảo trì nhiều thời gian để sửa mã của họ.

Đóng góp

TF-Addons là một dự án nguồn mở do cộng đồng dẫn dắt. Do đó, dự án phụ thuộc vào đóng góp của công chúng, sửa lỗi và tài liệu. Vui lòng xem hướng dẫn đóng góp để biết hướng dẫn về cách đóng góp. Dự án này tuân thủ quy tắc ứng xử của TensorFlow . Bằng cách tham gia, bạn được mong đợi duy trì mã này.

cộng đồng

Giấy phép

Giấy phép Apache 2.0