Mới! Sử dụng ML đơn giản cho Trang tính để áp dụng công nghệ máy học cho dữ liệu trong Google Trang tính của bạn Đọc thêm

Cài đặt

Cài đặt với Pip

Cài đặt TensorFlow Decision Forests bằng cách chạy:

# Install TensorFlow Decision Forests.
pip3 install tensorflow_decision_forests --upgrade

Sau đó, kiểm tra cài đặt bằng cách chạy:

# Check the version of TensorFlow Decision Forests.
python3 -c "import tensorflow_decision_forests as tfdf; print('Found TF-DF v' + tfdf.__version__)"

Xây dựng từ nguồn

Linux

Cài đặt

Yêu cầu

  • Bazel >= 3.7.2
  • Trăn >= 3
  • Git
  • Gói Python: gấu trúc tenorflow numpy

Thay vì cài đặt các phụ thuộc bằng tay, bạn có thể sử dụng TensorFlow Build docker . Nếu bạn chọn tùy chọn này, hãy cài đặt Docker:

biên soạn

Tải xuống TensorFlow Decision Forests như sau:

# Download the source code of TF-DF.
git clone https://github.com/tensorflow/decision-forests.git
cd decision-forests

Tùy chọn: Rừng quyết định TensorFlow phụ thuộc vào Rừng quyết định Yggdrasil . Nếu muốn chỉnh sửa mã Yggdrasil, bạn có thể sao chép Yggdrasil github và thay đổi đường dẫn tương ứng trong third_party/yggdrasil_decision_forests/workspace.bzl .

Tùy chọn: Nếu bạn muốn sử dụng tùy chọn docker, hãy chạy tập lệnh start_compile_docker.sh và tiếp tục bước tiếp theo. Nếu bạn không muốn sử dụng tùy chọn docker, hãy tiếp tục trực tiếp bước tiếp theo.

# Optional: Install and start the build docker.
./tools/start_compile_docker.sh

Biên dịch và chạy thử nghiệm đơn vị của TF-DF bằng lệnh sau. Lưu ý rằng test_bazel.sh được định cấu hình cho python3.8 và trình biên dịch mặc định trên máy của bạn. Chỉnh sửa tệp trực tiếp để thay đổi cấu hình này.

# Build and test TF-DF.
./tools/test_bazel.sh

Tạo và kiểm tra gói pip bằng lệnh sau. Thay thế python3.8 bằng phiên bản python bạn muốn sử dụng. Lưu ý rằng bạn không phải sử dụng cùng một phiên bản Python như trong tập lệnh test_bazel.sh .

Nếu cấu hình của bạn tương thích với manylinux2014 , gói pip tương thích với manylinux2014 sẽ được tạo.

Nếu cấu hình của bạn không tương thích với manylinux2014, thì gói pip không tương thích với manylinux2014 sẽ được tạo và lần kiểm tra cuối cùng sẽ không thành công. Không thành vấn đề nếu bạn muốn sử dụng TF-DF trên máy của mình. Một cách dễ dàng để làm cho bản dựng manylinux2014 tương thích là sử dụng docker đã đề cập ở trên.

# Build and test a Pip package.
./tools/build_pip_package.sh python3.8

Lệnh này sẽ cài đặt gói pip TF-DF và chạy ví dụ trong examples/minimal.py . Gói Pip nằm trong thư mục dist/ .

Nếu bạn muốn tạo gói Pip cho phiên bản Python tương thích khác, hãy chạy:

# Install the other versions of python (assume only python3.8 is installed; this is the case in the build docker).
sudo apt-get update && sudo apt-get install python3.7 python3.9 python3-pip

# Create the Pip package for the other version of python
./tools/build_pip_package.sh python3.7
./tools/build_pip_package.sh python3.9

Ngoài ra , bạn có thể tạo gói pip cho tất cả phiên bản tương thích của python bằng pyenv bằng cách chạy lệnh sau. Xem tiêu đề của tools/build_pip_package.sh để biết thêm chi tiết.

# Build and test all the Pip package using Pyenv.
./tools/build_pip_package.sh ALL_VERSIONS

Hệ điều hành Mac

Cài đặt

Yêu cầu

  • Công cụ dòng lệnh XCode
  • Bazel (khuyên dùng Bazelisk )
  • Trăn >= 3,8
  • Git
  • Pyenv (để xây dựng các gói Pip với nhiều phiên bản Python)

Xây dựng / Đóng gói (CPU của Apple)

Nếu bạn có máy MacOS với CPU Apple, bạn có thể xây dựng theo hướng dẫn sau.

  1. Sao chép ba kho lưu trữ và điều chỉnh đường dẫn.

    git clone https://github.com/tensorflow/decision-forests.git
    git clone https://github.com/google/yggdrasil-decision-forests.git
    git clone --branch boost-1.75.0 https://github.com/boostorg/boost.git
    (cd boost && git submodule update --init --checkout --force)
    # Adjust path TF-DF --> YDF
    perl -0777 -i.original -pe 's/    http_archive\(\n        name = "ydf",\n        urls = \["https:\/\/github.com\/google\/yggdrasil-decision-forests\/archive\/refs\/heads\/main.zip"\],\n        strip_prefix = "yggdrasil-decision-forests-main",\n    \)/    native.local_repository\(\n        name = "ydf",\n        path = "..\/yggdrasil-decision-forests",\n    \)/igs' decision-forests/third_party/yggdrasil_decision_forests/workspace.bzl
    # Adjust path YDF --> Boost
    perl -0777 -i.original -pe 's/    new_git_repository\(\n        name = "org_boost",\n        branch = branch,\n        build_file_content = build_file_content,\n        init_submodules = True,\n        recursive_init_submodules = True,\n        remote = "https:\/\/github.com\/boostorg\/boost",\n    \)/    native.new_local_repository\(\n        name = "org_boost",\n        path = "..\/boost",\n        build_file_content = build_file_content,\n    \)/igs' yggdrasil-decision-forests/third_party/boost/workspace.bzl
    

    Bạn có thể cần điều chỉnh tập lệnh test_bazel.sh theo cách thủ công để sửa mã băm cam kết Tensorflow, vì mã này đôi khi bị hỏng đối với các bản dựng MacOS.

  2. (Tùy chọn) Tạo một môi trường ảo mới và kích hoạt nó

    python3 -m venv venv
    source venv/source/activate
    
  3. Điều chỉnh phụ thuộc TensorFlow cho CPU Apple

    perl -0777 -i.original -pe 's/tensorflow~=/tensorflow-macos~=/igs' decision-forests/configure/setup.py
    
  4. Quyết định phiên bản Python nào bạn muốn sử dụng và chạy

    cd decision-forests
    # This will compile with the latest Tensorflow version in the tensorflow-macos repository.
    RUN_TESTS=1 PY_VERSION=3.9 TF_VERSION=mac-arm64 ./tools/test_bazel.sh
    
  5. Xây dựng các gói Pip

    # First, we deactivate our virtualenv, since the Pip script uses a different one.
    deactivate
    # Build the packages.
    ./tools/build_pip_package.sh ALL_VERSIONS_MAC_ARM64
    
  6. Các gói có thể được tìm thấy trong decision-forests/dist/ .

Biên dịch chéo cho CPU Intel

Nếu bạn có máy MacOS với CPU của Apple, hãy biên dịch chéo TF-DF cho máy MacOS có CPU Intel như sau.

  1. Làm theo Bước 1-3 và 5 của hướng dẫn dành cho CPU Apple, bỏ qua Bước 4 . Bạn có thể cần chạy lệnh bazel --bazelrc=tensorflow_bazelrc clean --expunge để dọn dẹp thư mục bản dựng của mình.

  2. Quyết định phiên bản Python nào bạn muốn sử dụng và chạy

    cd decision-forests
    # This will compile with the latest Tensorflow version in the tensorflow-macos repository.
    RUN_TESTS=0 PY_VERSION=3.9 TF_VERSION=mac-intel-crosscompile ./tools/test_bazel.sh
    
  3. Xây dựng các gói Pip

    # First, we deactivate our virtualenv, since the Pip script uses a different one.
    deactivate
    # Build the packages.
    ./tools/build_pip_package.sh ALL_VERSIONS_MAC_INTEL_CROSSCOMPILE
    
  4. Các gói có thể được tìm thấy trong decision-forests/dist/ .

lưu ý cuối cùng

Biên dịch TF-DF dựa vào gói TensorFlow Pip phần phụ thuộc TensorFlow Bazel. Chỉ một phần nhỏ của TensorFlow sẽ được biên dịch. Biên dịch TF-DF trên một máy trạm mạnh duy nhất mất ~10 phút.

Xử lý sự cố