স্থাপন

পিপ দিয়ে ইনস্টলেশন

চালানোর মাধ্যমে টেনসরফ্লো ডিসিশন ফরেস্ট ইনস্টল করুন:

# 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 কম্পাইল এবং শিপিং এড়াতে, TF-DF লিঙ্কগুলি libtensorflow শেয়ার্ড লাইব্রেরির সাথে যা TensorFlow এর পিপ প্যাকেজের সাথে বিতরণ করা হয়। Tensorflow এর শুধুমাত্র একটি ছোট অংশ সংকলন করা হয়েছে এবং একটি শক্তিশালী ওয়ার্কস্টেশনে সংকলন করতে শুধুমাত্র ~10 মিনিট সময় লাগে (সমস্ত টেনসরফ্লো কম্পাইল করার সময় একাধিক ঘন্টার পরিবর্তে)। এটি কাজ করে তা নিশ্চিত করার জন্য, TensorFlow-এর সংস্করণ যা আসলে কম্পাইল করা হয়েছে এবং libtensorflow শেয়ার করা লাইব্রেরির সাথে অবশ্যই মিল থাকতে হবে।

tools/test_bazel.sh স্ক্রিপ্ট টিএফ-ডিএফ বিল্ড কনফিগার করে যাতে ব্যবহৃত প্যাকেজগুলির সংস্করণগুলি মিলে যায়। এই প্রক্রিয়ার বিস্তারিত জানার জন্য, এই স্ক্রিপ্টের সোর্স কোড দেখুন। যেহেতু TensorFlow সংকলন প্রায়ই পরিবর্তিত হয়, তাই এটি শুধুমাত্র সাম্প্রতিকতম TensorFlow সংস্করণ এবং রাতের বেলায় বিল্ডিং সমর্থন করে।

লিনাক্স

ডকার বিল্ড

লিনাক্সে TF-DF তৈরি করার সবচেয়ে সহজ উপায় হল TensorFlow এর বিল্ড বিল্ড ডকার ব্যবহার করা। নির্মাণের জন্য শুধুমাত্র নিম্নলিখিত পদক্ষেপগুলি চালান:

./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

এটি bazel-bin ডিরেক্টরিতে কম্পাইল করা C++ কোড রাখে। মনে রাখবেন যে এটি একটি প্রতীকী লিঙ্ক যা কন্টেইনারের বাইরে উন্মুক্ত হয় না (অর্থাৎ কন্টেইনার ছাড়ার পরে বিল্ডটি চলে যায়)।

চাকা নির্মাণের জন্য, চালান

tools/build_pip_package.sh ALL_VERSIONS INSTALL_PYENV

এটি ডকারের ভিতরে Pyenv এবং Pyenv-virtualenv ইনস্টল করবে এবং বিল্ডিংয়ের জন্য সমস্ত সমর্থিত সংস্করণে পাইথন ইনস্টল করতে এটি ব্যবহার করবে। চাকাগুলি dist/ সাবডিরেক্টরিতে স্থাপন করা হয়।

ম্যানুয়াল বিল্ড

ডকার ছাড়া টিএফ-ডিএফ তৈরি করা কঠিন হতে পারে এবং দলটি সম্ভবত এটিতে সহায়তা করতে সক্ষম নয়।

প্রয়োজনীয়তা

  • Bazel >= 6.3.0
  • পাইথন >= 3
  • গিট
  • Pyenv, Pyenv-virtualenv (শুধুমাত্র অনেক Python সংস্করণের জন্য প্যাকেজিং হলে)

বিল্ডিং

নিম্নরূপ 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 এ।

নিম্নলিখিত কমান্ডের সাহায্যে TF-DF-এর ইউনিট পরীক্ষা কম্পাইল করুন এবং চালান। মনে রাখবেন 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 প্রতিস্থাপন করুন। মনে রাখবেন test_bazel.sh স্ক্রিপ্টের মতো আপনাকে পাইথনের একই সংস্করণ ব্যবহার করতে হবে না।

আপনার কনফিগারেশন manylinux2014 এর সাথে সামঞ্জস্যপূর্ণ হলে, একটি manylinux2014 সামঞ্জস্যপূর্ণ পিপ প্যাকেজ তৈরি করা হবে।

আপনার কনফিগারেশন manylinux2014 এর সাথে সামঞ্জস্যপূর্ণ না হলে, একটি নন manylinux2014 সামঞ্জস্যপূর্ণ পিপ প্যাকেজ তৈরি করা হবে, এবং চূড়ান্ত চেক ব্যর্থ হবে। আপনি আপনার নিজের মেশিনে TF-DF ব্যবহার করতে চান তাহলে এটা কোন ব্যাপার না। বিল্ড manylinux2014 সামঞ্জস্যপূর্ণ করার একটি সহজ উপায় হল উপরে উল্লিখিত ডকার ব্যবহার করা।

# 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 কমান্ড লাইন টুল
  • ব্যাজেল (প্রস্তাবিত ব্যাজেলিস্ক )
  • হোমব্রু প্যাকেজ: GNU coreutils, GNU sed, GNU grep
  • Pyenv (একাধিক পাইথন সংস্করণ সহ পিপ প্যাকেজ তৈরির জন্য)

আর্ম 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 এর বেশিরভাগ কার্যকারিতা (এবং আরও!) অফার করে।