התחל עם TensorFlow.js

TensorFlow.js היא ספריית JavaScript להדרכה ופריסה של מודלים של למידת מכונה בדפדפן האינטרנט וב-Node.js. מדריך זה מראה לך כיצד להתחיל עם TensorFlow.js על ידי אימון מודל מינימלי בדפדפן ושימוש במודל לביצוע חיזוי.

הקוד לדוגמה זמין ב- GitHub .

דרישות מוקדמות

כדי להשלים מדריך זה, עליך להתקין את הדברים הבאים בסביבת הפיתוח שלך:

התקן את הדוגמה

קבל את קוד המקור והתקנת תלות:

  1. שכפל או הורד את מאגר tfjs-examples .
  2. עבור לספריית getting-started : cd tfjs-examples/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> בראש טוען את ספריית 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 כדי להכשיר מודל בדפדפן. למבוא מעמיק יותר למודלים לאימון עם JavaScript, עיין במדריך TensorFlow.js.

דרכים נוספות להתחיל

הנה דרכים נוספות להתחיל עם TensorFlow.js ו-web ML.

צפה בקורס TensorFlow.js web ML

אם אתה מפתח אתרים שמחפש מבוא מעשי ל-Web ML, בדוק את קורס הווידאו של Google Developers Learning Machine for Web Developers. הקורס מראה לך כיצד להשתמש ב- TensorFlow.js באתרים ובאפליקציות שלך.

עבור לקורס ML web

קוד ML תוכניות מבלי להתמודד ישירות עם טנזורים

אם ברצונך להתחיל עם למידת מכונה מבלי לנהל אופטימיזציה או מניפולציה של טנזור, בדוק את ספריית ml5.js.

ספריית ml5.js, שנבנתה על גבי TensorFlow.js, מספקת גישה לאלגוריתמים ומודלים של למידת מכונה בדפדפן האינטרנט עם API תמציתי ונגיש.

בדוק את ml5.js

התקן את TensorFlow.js

ראה כיצד להתקין את TensorFlow.js ליישום בדפדפן האינטרנט או Node.js.

התקן את TensorFlow.js

המר מודלים שהוכשרו מראש ל- TensorFlow.js

למד כיצד להמיר מודלים מאומנים מראש מ-Python ל-TensorFlow.js.

דגם Keras GraphDef Model

למד מקוד TensorFlow.js הקיים

מאגר tfjs-examples מספק יישומים קטנים לדוגמה עבור משימות ML שונות באמצעות TensorFlow.js.

הצג tfjs-examples ב-GitHub

דמיין את ההתנהגות של מודל TensorFlow.js שלך

tfjs-vis היא ספרייה קטנה להדמיה בדפדפן האינטרנט המיועדת לשימוש עם TensorFlow.js.

צפה ב-tfjs-vis ב- GitHub ראה הדגמה

הכן נתונים לעיבוד באמצעות TensorFlow.js

ל- TensorFlow.js יש תמיכה בעיבוד נתונים באמצעות שיטות עבודה מומלצות של ML.

צפה בתיעוד

,

TensorFlow.js היא ספריית JavaScript להדרכה ופריסה של מודלים של למידת מכונה בדפדפן האינטרנט וב-Node.js. מדריך זה מראה לך כיצד להתחיל עם TensorFlow.js על ידי אימון מודל מינימלי בדפדפן ושימוש במודל לביצוע חיזוי.

הקוד לדוגמה זמין ב- GitHub .

דרישות מוקדמות

כדי להשלים מדריך זה, עליך להתקין את הדברים הבאים בסביבת הפיתוח שלך:

התקן את הדוגמה

קבל את קוד המקור והתקנת תלות:

  1. שכפל או הורד את מאגר tfjs-examples .
  2. עבור לספריית getting-started : cd tfjs-examples/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> בראש טוען את ספריית 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 כדי להכשיר מודל בדפדפן. למבוא מעמיק יותר למודלים לאימון עם JavaScript, עיין במדריך TensorFlow.js.

דרכים נוספות להתחיל

הנה דרכים נוספות להתחיל עם TensorFlow.js ו-web ML.

צפה בקורס TensorFlow.js web ML

אם אתה מפתח אתרים שמחפש מבוא מעשי ל-Web ML, בדוק את קורס הווידאו של Google Developers Learning Machine for Web Developers. הקורס מראה לך כיצד להשתמש ב- TensorFlow.js באתרים ובאפליקציות שלך.

עבור לקורס ML web

קוד ML תוכניות מבלי להתמודד ישירות עם טנזורים

אם ברצונך להתחיל עם למידת מכונה מבלי לנהל אופטימיזציה או מניפולציה של טנזור, בדוק את ספריית ml5.js.

ספריית ml5.js, שנבנתה על גבי TensorFlow.js, מספקת גישה לאלגוריתמים ומודלים של למידת מכונה בדפדפן האינטרנט עם API תמציתי ונגיש.

בדוק את ml5.js

התקן את TensorFlow.js

ראה כיצד להתקין את TensorFlow.js ליישום בדפדפן האינטרנט או Node.js.

התקן את TensorFlow.js

המר מודלים שהוכשרו מראש ל- TensorFlow.js

למד כיצד להמיר מודלים מאומנים מראש מ-Python ל-TensorFlow.js.

דגם Keras GraphDef Model

למד מקוד TensorFlow.js הקיים

מאגר tfjs-examples מספק יישומים קטנים לדוגמה עבור משימות ML שונות באמצעות TensorFlow.js.

הצג tfjs-examples ב-GitHub

דמיין את ההתנהגות של מודל TensorFlow.js שלך

tfjs-vis היא ספרייה קטנה להדמיה בדפדפן האינטרנט המיועדת לשימוש עם TensorFlow.js.

צפה ב-tfjs-vis ב- GitHub ראה הדגמה

הכן נתונים לעיבוד באמצעות TensorFlow.js

ל- TensorFlow.js יש תמיכה בעיבוד נתונים באמצעות שיטות עבודה מומלצות של ML.

צפה בתיעוד