TensorFlow.js היא ספריית JavaScript להדרכה ופריסה של מודלים של למידת מכונה בדפדפן האינטרנט וב-Node.js. מדריך זה מראה לך כיצד להתחיל עם TensorFlow.js על ידי אימון מודל מינימלי בדפדפן ושימוש במודל לביצוע חיזוי.
הקוד לדוגמה זמין ב- GitHub .
דרישות מוקדמות
כדי להשלים מדריך זה, עליך להתקין את הדברים הבאים בסביבת הפיתוח שלך:
התקן את הדוגמה
קבל את קוד המקור והתקנת תלות:
- שכפל או הורד את מאגר tfjs-examples .
- עבור לספריית
getting-started
:cd tfjs-examples/getting-started
. - תלות בהתקנה:
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, עיין במדריך ההתקנה .
הפעל את הדוגמה
הפעל את הדוגמה ובדוק את התוצאות:
- בספריית
tfjs-examples/getting-started
, הפעלyarn watch
. - נווט אל
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 תוכניות מבלי להתמודד ישירות עם טנזורים
אם ברצונך להתחיל עם למידת מכונה מבלי לנהל אופטימיזציה או מניפולציה של טנזור, בדוק את ספריית ml5.js.
ספריית ml5.js, שנבנתה על גבי TensorFlow.js, מספקת גישה לאלגוריתמים ומודלים של למידת מכונה בדפדפן האינטרנט עם API תמציתי ונגיש.
התקן את TensorFlow.js
ראה כיצד להתקין את TensorFlow.js ליישום בדפדפן האינטרנט או Node.js.
המר מודלים שהוכשרו מראש ל- TensorFlow.js
למד כיצד להמיר מודלים מאומנים מראש מ-Python ל-TensorFlow.js.
למד מקוד TensorFlow.js הקיים
מאגר tfjs-examples
מספק יישומים קטנים לדוגמה עבור משימות ML שונות באמצעות TensorFlow.js.
דמיין את ההתנהגות של מודל TensorFlow.js שלך
tfjs-vis
היא ספרייה קטנה להדמיה בדפדפן האינטרנט המיועדת לשימוש עם TensorFlow.js.
צפה ב-tfjs-vis ב- GitHub ראה הדגמה
הכן נתונים לעיבוד באמצעות TensorFlow.js
ל- TensorFlow.js יש תמיכה בעיבוד נתונים באמצעות שיטות עבודה מומלצות של ML.