تشغيل نماذج TensorFlow Decision Forests باستخدام TensorFlow.js

تشرح هذه التعليمات كيفية تدريب نموذج TF-DF وتشغيله على الويب باستخدام TensorFlow.js.

تعليمات مفصلة

تدريب نموذج في TF-DF

لتجربة هذا البرنامج التعليمي، تحتاج أولاً إلى نموذج TF-DF. يمكنك استخدام النموذج الخاص بك أو تدريب نموذج باستخدام البرنامج التعليمي للمبتدئين .

إذا كنت تريد ببساطة تدريب نموذج بسرعة في Google Colab، فيمكنك استخدام مقتطف الكود التالي.

!pip install tensorflow_decision_forests -U -qq
import tensorflow as tf
import tensorflow_decision_forests as tfdf
import pandas as pd

# Download the dataset, load it into a pandas dataframe and convert it to TensorFlow format.
!wget -q https://storage.googleapis.com/download.tensorflow.org/data/palmer_penguins/penguins.csv -O /tmp/penguins.csv
dataset_df = pd.read_csv("/tmp/penguins.csv")
train_ds = tfdf.keras.pd_dataframe_to_tf_dataset(dataset_df, label="species")

# Create and train the model
model_1 = tfdf.keras.GradientBoostedTreesModel()
model_1.fit(train_ds)

تحويل النموذج

تفترض التعليمات التالية أنك قمت بحفظ نموذج TF-DF الخاص بك ضمن المسار /tmp/my_saved_model . قم بتشغيل المقتطف التالي لتحويل النموذج إلى TensorFlow.js.

!pip install tensorflow tensorflow_decision_forests 'tensorflowjs>=4.4.0'
!pip install tf_keras

# Prepare and load the model with TensorFlow
import tensorflow as tf
import tensorflowjs as tfjs
from google.colab import files

# Save the model in the SavedModel format
tf.saved_model.save(model_1, "/tmp/my_saved_model")

# Convert the SavedModel to TensorFlow.js and save as a zip file
tfjs.converters.tf_saved_model_conversion_v2.convert_tf_saved_model("/tmp/my_saved_model", "./tfjs_model")

# Download the converted TFJS model
!zip -r tfjs_model.zip tfjs_model/
files.download("tfjs_model.zip")

عند انتهاء تشغيل Google Colab، يقوم بتنزيل نموذج TFJS المحول كملف مضغوط. قم بفك ضغط هذا الملف قبل استخدامه في الخطوة التالية.

يتكون نموذج Tensorflow.js الذي تم فك ضغطه من عدد من الملفات. يحتوي نموذج المثال على ما يلي:

  • الأصول.zip
  • group1-shard1of1.bin
  • model.json

استخدم نموذج Tensorflow.js على الويب

استخدم هذا القالب لتحميل تبعيات TFJS وتشغيل نموذج TFDF. قم بتغيير مسار النموذج إلى حيث يتم تقديم النموذج الخاص بك وقم بتعديل الموتر المعطى لـ ExecuteAsync.

  <script src="https://cdn.jsdelivr.net/npm/@tensorflow/tfjs@4.5.0/dist/tf.min.js"></script>
  <script src="https://cdn.jsdelivr.net/npm/@tensorflow/tfjs-tfdf/dist/tf-tfdf.min.js"></script>
  <script>
    (async () =>{
      // Load the model.
      // Tensorflow.js currently needs the absolute path to the model including the full origin.
      const model = await tfdf.loadTFDFModel('https://path/to/unzipped/model/model.json');
      // Perform an inference
      const result = await model.executeAsync({
            "island": tf.tensor(["Torgersen"]),
            "bill_length_mm": tf.tensor([39.1]),
            "bill_depth_mm": tf.tensor([17.3]),
            "flipper_length_mm": tf.tensor([3.1]),
            "body_mass_g": tf.tensor([1000.0]),
            "sex": tf.tensor(["Female"]),
            "year": tf.tensor([2007], [1], 'int32'),
      });
      // The result is a 6-dimensional vector, the first half may be ignored
      result.print();
    })();
  </script>

أسئلة؟

تحقق من وثائق TensorFlow Decision Forests ووثائق TensorFlow.js .