इंस्टॉल करना

पिप के साथ स्थापना

निम्न चलाकर TensorFlow निर्णय वन स्थापित करें:

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

फिर, चलाकर इंस्टॉलेशन की जाँच करें:

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

स्रोत से निर्माण करें

टेक्निकल डिटेल

TensorFlow निर्णय वन (TF-DF) TensorFlow के लिए कस्टम ऑप्स लागू करता है और इसलिए TensorFlow के ABI पर निर्भर करता है। चूँकि ABI संस्करणों के बीच बदल सकता है, कोई भी TF-DF संस्करण केवल एक विशिष्ट TensorFlow संस्करण के साथ संगत है।

TF-DF के साथ सभी TensorFlow को संकलित और शिपिंग करने से बचने के लिए, libtensorflow साझा लाइब्रेरी के विरुद्ध TF-DF लिंक जो TensorFlow के पिप पैकेज के साथ वितरित किया जाता है। Tensorflow का केवल एक छोटा सा हिस्सा संकलित किया गया है और एक मजबूत वर्कस्टेशन पर संकलन में केवल ~10 मिनट लगते हैं (सभी TensorFlow को संकलित करते समय कई घंटों के बजाय)। यह सुनिश्चित करने के लिए कि यह काम करता है, TensorFlow का संस्करण जो वास्तव में संकलित है और libtensorflow साझा लाइब्रेरी बिल्कुल मेल खाना चाहिए।

tools/test_bazel.sh स्क्रिप्ट उपयोग किए गए पैकेजों के संस्करणों का मिलान सुनिश्चित करने के लिए टीएफ-डीएफ बिल्ड को कॉन्फ़िगर करती है। इस प्रक्रिया के विवरण के लिए, इस स्क्रिप्ट का स्रोत कोड देखें। चूँकि TensorFlow संकलन अक्सर बदलता रहता है, यह केवल नवीनतम TensorFlow संस्करणों और रात्रिकालीन निर्माण का समर्थन करता है।

लिनक्स

डॉकर निर्माण

Linux पर TF-DF बनाने का सबसे आसान तरीका TensorFlow के बिल्ड Build docker का उपयोग करना है। निर्माण के लिए बस निम्नलिखित चरण चलाएँ:

./tools/start_compile_docker.sh # Start the docker, might require root
export RUN_TESTS=1              # Whether to run tests after build
export PY_VERSION=3.9           # Python version to use for build
# TensorFlow version to compile against. This must match exactly the version
# of TensorFlow used at runtime, otherwise TF-DF may crash unexpectedly.
export TF_VERSION=2.16.1        # Set to "nightly" for building with tf-nightly
./tools/test_bazel.sh

यह संकलित C++ कोड को bazel-bin निर्देशिका में रखता है। ध्यान दें कि यह एक प्रतीकात्मक लिंक है जो कंटेनर के बाहर प्रदर्शित नहीं होता है (यानी कंटेनर छोड़ने के बाद निर्माण समाप्त हो जाता है)।

पहियों के निर्माण के लिए, दौड़ें

tools/build_pip_package.sh ALL_VERSIONS INSTALL_PYENV

यह डॉकर के अंदर Pyenv और Pyenv-virtualenv इंस्टॉल करेगा और बिल्डिंग के लिए सभी समर्थित संस्करणों में Python इंस्टॉल करने के लिए इसका उपयोग करेगा। पहियों को dist/ उपनिर्देशिका में रखा गया है।

मैन्युअल निर्माण

डॉकर के बिना टीएफ-डीएफ बनाना कठिन हो सकता है, और टीम शायद इसमें मदद करने में सक्षम नहीं है।

आवश्यकताएं

  • बेज़ेल >= 6.3.0
  • पायथन >=3
  • गिट
  • प्येनव, प्येनव-वर्चुअलएनव (केवल यदि कई पायथन संस्करणों के लिए पैकेजिंग)

इमारत

TensorFlow डिसीज़न फ़ॉरेस्ट को इस प्रकार डाउनलोड करें:

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

वैकल्पिक: TensorFlow निर्णय वन Yggdrasil निर्णय वन पर निर्भर करता है। यदि आप Yggdrasil कोड को संपादित करना चाहते हैं, तो आप Yggdrasil रिपॉजिटरी को क्लोन कर सकते हैं और तदनुसार third_party/yggdrasil_decision_forests/workspace.bzl में पथ बदल सकते हैं।

निम्नलिखित कमांड के साथ टीएफ-डीएफ के यूनिट परीक्षण संकलित करें और चलाएं। ध्यान दें कि test_bazel.sh आपकी मशीन पर डिफ़ॉल्ट कंपाइलर के लिए कॉन्फ़िगर किया गया है। इस कॉन्फ़िगरेशन को बदलने के लिए फ़ाइल को सीधे संपादित करें।

# Build and test TF-DF.
RUN_TESTS=1 PY_VERSION=3.9 TF_VERSION=2.16.1 ./tools/test_bazel.sh

निम्नलिखित कमांड के साथ एक पिप पैकेज बनाएं और उसका परीक्षण करें। Python3.9 को Python के उस संस्करण से बदलें जिसे आप उपयोग करना चाहते हैं। ध्यान दें कि आपको test_bazel.sh स्क्रिप्ट के समान Python संस्करण का उपयोग करने की आवश्यकता नहीं है।

यदि आपका कॉन्फ़िगरेशन multiplelinux2014 के साथ संगत है, तो एक manylinux2014 संगत पिप पैकेज तैयार किया जाएगा।

यदि आपका कॉन्फ़िगरेशन मैनीलिनक्स2014 के साथ संगत नहीं है, तो एक गैर manylinux2014 संगत पिप पैकेज तैयार किया जाएगा, और अंतिम जांच विफल हो जाएगी। इससे कोई फर्क नहीं पड़ता कि आप अपनी मशीन पर टीएफ-डीएफ का उपयोग करना चाहते हैं। बिल्ड multiplelinux2014 को संगत बनाने का एक आसान तरीका ऊपर उल्लिखित डॉकर का उपयोग करना है।

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

यह कमांड TF-DF पाइप पैकेज स्थापित करेगा और examples/minimal.py में उदाहरण चलाएगा। पिप पैकेज dist/ निर्देशिका में स्थित है।

यदि आप पायथन के अन्य संगत संस्करण के लिए एक पिप पैकेज बनाना चाहते हैं, तो चलाएँ:

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

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

वैकल्पिक रूप से , आप निम्न कमांड चलाकर pyenv का उपयोग करके पायथन के सभी संगत संस्करण के लिए पाइप पैकेज बना सकते हैं। अधिक विवरण के लिए tools/build_pip_package.sh का हेडर देखें।

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

मैक ओएस

स्थापित करना

आवश्यकताएं

  • XCode कमांड लाइन उपकरण
  • बेज़ेल (अनुशंसित बेज़ेलिस्क )
  • होमब्रू पैकेज: जीएनयू कोरुटिल्स, जीएनयू सेड, जीएनयू ग्रेप
  • पायनेव (कई पायथन संस्करणों के साथ पिप पैकेज बनाने के लिए)

आर्म64 सीपीयू

ARM64 CPU वाले MacOS सिस्टम के लिए, इन चरणों का पालन करें:

  1. अपना वातावरण तैयार करें

    git clone https://github.com/tensorflow/decision-forests.git
    python3 -m venv venv
    source venv/bin/activate
    
  2. तय करें कि आप किस Python संस्करण और TensorFlow संस्करण का उपयोग करना और चलाना चाहते हैं

    cd decision-forests
    bazel clean --expunge            # Remove old builds (esp. cross-compiled).
    export RUN_TESTS=1               # Whether to run tests after build.
    export PY_VERSION=3.9            # Python version to use for build.
    # TensorFlow version to compile against. This must match exactly the version
    # of TensorFlow used at runtime, otherwise TF-DF may crash unexpectedly.
    export TF_VERSION=2.16.1
    ./tools/test_bazel.sh            # Takes ~15 minutes on a modern Mac.
    
  3. बिल्ड को पैकेज करें.

    # Building the packages uses different virtualenvs through Pyenv.
    deactivate
    # Build the packages.
    ./tools/build_pip_package.sh ALL_VERSIONS
    
  4. पैकेज decision-forests/dist/ में पाए जा सकते हैं।

इंटेल सीपीयू के लिए क्रॉस-कंपाइलिंग

यदि आपके पास Apple CPU के साथ MacOS मशीन है, तो Intel CPU के साथ MacOS मशीनों के लिए TF-DF को निम्नानुसार क्रॉस-कंपाइल करें।

  1. अपना वातावरण तैयार करें

    git clone https://github.com/tensorflow/decision-forests.git
    python3 -m venv venv
    source venv/source/activate
    
  2. तय करें कि आप किस पायथन संस्करण का उपयोग करना और चलाना चाहते हैं

    cd decision-forests
    bazel clean --expunge            # Remove old builds (esp. cross-compiled).
    export RUN_TESTS=0               # Cross-compiled builds can't run tests.
    export PY_VERSION=3.9            # Python version to use for build.
    # TensorFlow version to compile against. This must match exactly the version
    # of TensorFlow used at runtime, otherwise TF-DF may crash unexpectedly.
    export TF_VERSION=2.16.1
    export MAC_INTEL_CROSSCOMPILE=1  # Enable cross-compilation.
    ./tools/test_bazel.sh            # Takes ~15 minutes on a modern Mac.
    
  3. बिल्ड को पैकेज करें.

    # Building the packages uses different virtualenvs through Pyenv.
    deactivate
    # Build the packages.
    ./tools/build_pip_package.sh ALL_VERSIONS_MAC_INTEL_CROSSCOMPILE
    
  4. पैकेज decision-forests/dist/ में पाए जा सकते हैं। ध्यान दें कि उनका परीक्षण नहीं किया गया है और वितरण से पहले उनका परीक्षण करना समझदारी होगी।

खिड़कियाँ

एक विंडोज़ बिल्ड अतीत में सफलतापूर्वक तैयार किया गया है, लेकिन इस बिंदु पर इसका रखरखाव नहीं किया गया है। विंडोज़ पर संकलन के लिए (संभवतः पुराने) पॉइंटर्स के लिए tools/test_bazel.bat और tools/test_bazel.sh देखें।

विंडोज़ उपयोगकर्ताओं के लिए, YDF आधिकारिक विंडोज़ बिल्ड और TF-DF की अधिकांश कार्यक्षमता (और अधिक!) प्रदान करता है।