با TensorFlow.js شروع کنید

با مجموعه‌ها، منظم بمانید ذخیره و دسته‌بندی محتوا براساس اولویت‌های شما.

TensorFlow.js یک کتابخانه جاوا اسکریپت برای آموزش و استقرار مدل های یادگیری ماشین در مرورگر وب و در Node.js است. این آموزش به شما نشان می‌دهد که چگونه با آموزش یک مدل حداقل در مرورگر و استفاده از مدل برای پیش‌بینی، با TensorFlow.js شروع کنید.

کد نمونه در GitHub موجود است.

پیش نیازها

برای تکمیل این آموزش، باید موارد زیر را در محیط توسعه خود نصب کنید:

نمونه را نصب کنید

کد منبع را دریافت کنید و وابستگی ها را نصب کنید:

  1. مخزن tfjs-examples را کلون یا دانلود کنید.
  2. به دایرکتوری get-started تغییر دهید: cd tfjs-examples/getting-started getting-started
  3. نصب وابستگی ها: yarn install .

اگر به فایل package.json نگاه کنید، ممکن است متوجه شوید که TensorFlow.js یک وابستگی نیست. دلیل آن این است که مثال، TensorFlow.js را از یک CDN بارگیری می کند. در اینجا HTML کامل از index.html آمده است:

<html>
  <head>
    <script src="https://cdn.jsdelivr.net/npm/@tensorflow/tfjs@latest"> </script>
  </head>
  <body>
    <h4>Tiny TFJS example<hr/></h4>
    <div id="micro-out-div">Training...</div>
    <script src="./index.js"> </script>
  </body>
</html>

عنصر <script> در head کتابخانه TensorFlow.js را بارگیری می کند و عنصر <script> در انتهای بدنه اسکریپت یادگیری ماشین را بارگیری می کند.

برای سایر روش‌های وابستگی به TensorFlow.js، به آموزش راه‌اندازی مراجعه کنید.

مثال را اجرا کنید

مثال را اجرا کنید و نتایج را بررسی کنید:

  1. در tfjs-examples/getting-started ، yarn watch را اجرا کنید.
  2. در مرورگر خود به http://127.0.0.1:1234 بروید.

شما باید عنوان صفحه و زیر آن عددی مانند 38.31612014770508 را ببینید . عدد دقیق متفاوت خواهد بود، اما باید نزدیک به 39 باشد.

چه اتفاقی افتاده؟

هنگامی که index.js بارگذاری می شود، یک مدل tf.sequential را با استفاده از مقادیر $ x $ و $ y $ که معادله $ y = 2x - 1 $ را برآورده می کند، آموزش می دهد.

// Create a simple model.
const model = tf.sequential();
model.add(tf.layers.dense({units: 1, inputShape: [1]}));

// Prepare the model for training: Specify the loss and the optimizer.
model.compile({loss: 'meanSquaredError', optimizer: 'sgd'});

// Generate some synthetic data for training. (y = 2x - 1)
const xs = tf.tensor2d([-1, 0, 1, 2, 3, 4], [6, 1]);
const ys = tf.tensor2d([-3, -1, 1, 3, 5, 7], [6, 1]);

// Train the model using the data.
await model.fit(xs, ys, {epochs: 250});

سپس یک مقدار $ y $ را برای مقدار $ x $ 20 پیش بینی می کند و DOM را برای نمایش پیش بینی به روز می کند.

// Use the model to do inference on a data point the model hasn't seen.
// Should print approximately 39.
document.getElementById('micro-out-div').innerText =
    model.predict(tf.tensor2d([20], [1, 1])).dataSync();

نتیجه $ 2 * 20 - 1 $ 39 است، بنابراین مقدار $ y $ پیش بینی شده باید تقریباً 39 باشد.

بعدش چی

این آموزش یک نمونه حداقلی از استفاده از TensorFlow.js برای آموزش یک مدل در مرورگر ارائه می دهد. برای آشنایی بیشتر با مدل‌های آموزشی با جاوا اسکریپت، به راهنمای TensorFlow.js مراجعه کنید.

راه های بیشتر برای شروع

در اینجا راه های بیشتری برای شروع با TensorFlow.js و web ML وجود دارد.

برنامه های ML را بدون سروکار داشتن مستقیم با تانسورها کدنویسی کنید

اگر می‌خواهید بدون مدیریت بهینه‌سازها یا دستکاری تانسور، یادگیری ماشین را شروع کنید، کتابخانه ml5.js را بررسی کنید.

کتابخانه ml5.js که در بالای TensorFlow.js ساخته شده است، دسترسی به الگوریتم ها و مدل های یادگیری ماشین را در مرورگر وب با یک API مختصر و قابل دسترسی فراهم می کند.

ml5.js را بررسی کنید

TensorFlow.js را نصب کنید

نحوه نصب TensorFlow.js را برای پیاده سازی در مرورگر وب یا Node.js ببینید.

TensorFlow.js را نصب کنید

مدل های از پیش آموزش دیده را به TensorFlow.js تبدیل کنید

با نحوه تبدیل مدل های از پیش آموزش دیده از پایتون به TensorFlow.js آشنا شوید.

مدل کراس مدل GraphDef

از کدهای موجود TensorFlow.js بیاموزید

مخزن tfjs-examples پیاده سازی های کوچکی را برای وظایف مختلف ML با استفاده از TensorFlow.js فراهم می کند.

tfjs-examples را در GitHub مشاهده کنید

رفتار مدل TensorFlow.js خود را تجسم کنید

tfjs-vis یک کتابخانه کوچک برای تجسم در مرورگر وب است که برای استفاده با TensorFlow.js در نظر گرفته شده است.

tfjs-vis را در GitHub مشاهده نسخه نمایشی مشاهده کنید

داده ها را برای پردازش با TensorFlow.js آماده کنید

TensorFlow.js از پردازش داده ها با استفاده از بهترین شیوه های ML پشتیبانی می کند.

مشاهده مستندات