TensorFlow.js adalah pustaka JavaScript untuk melatih dan menerapkan model pembelajaran mesin di browser web dan di Node.js. Tutorial ini menunjukkan cara memulai TensorFlow.js dengan melatih model minimal di browser dan menggunakan model tersebut untuk membuat prediksi.
Kode contoh tersedia di GitHub .
Prasyarat
Untuk menyelesaikan tutorial ini, Anda perlu menginstal yang berikut di lingkungan pengembangan Anda:
Instal contohnya
Dapatkan kode sumber dan instal dependensi:
- Kloning atau unduh repositori tfjs-examples .
- Ubah ke direktori persiapan:
cd tfjs-examples/getting-started
getting-started
- Instal dependensi:
yarn install
.
Jika Anda melihat file package.json
, Anda mungkin menyadari bahwa TensorFlow.js bukanlah dependensi. Ini karena contoh memuat TensorFlow.js dari CDN. Berikut HTML lengkap dari 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>
Elemen <script>
di bagian head memuat library TensorFlow.js, dan elemen <script>
di bagian akhir body memuat skrip machine learning.
Untuk cara lain mengambil ketergantungan pada TensorFlow.js, lihat tutorial penyiapan .
Jalankan contohnya
Jalankan contoh dan periksa hasilnya:
- Di
tfjs-examples/getting-started
, jalankanyarn watch
. - Arahkan ke
http://127.0.0.1:1234
di browser Anda.
Anda akan melihat judul halaman dan di bawahnya ada angka seperti 38.31612014770508 . Jumlah pastinya akan bervariasi, tetapi harus mendekati 39.
Apa yang baru saja terjadi?
Saat index.js
dimuat, ia melatih model tf.sequential
menggunakan nilai $ x $ dan $ y $ yang memenuhi persamaan $ 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});
Kemudian memprediksi nilai $ y $ untuk nilai $ x $ 20
yang tidak terlihat dan memperbarui DOM untuk menampilkan prediksi.
// 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();
Hasil dari $ 2 * 20 - 1 $ adalah 39, jadi perkiraan nilai $ y $ seharusnya sekitar 39.
Apa berikutnya
Tutorial ini memberikan contoh minimal penggunaan TensorFlow.js untuk melatih model di browser. Untuk pengenalan lebih dalam tentang model pelatihan dengan JavaScript, lihat panduan TensorFlow.js .
Lebih banyak cara untuk memulai
Berikut adalah lebih banyak cara untuk memulai TensorFlow.js dan web ML.
Tonton kursus ML web TensorFlow.js
Jika Anda seorang pengembang web yang mencari pengantar praktis untuk web ML, lihat kursus video Google Developers Pembelajaran Mesin untuk Pengembang Web. Kursus ini menunjukkan cara menggunakan TensorFlow.js di situs web dan aplikasi Anda.
Kode program ML tanpa berhubungan langsung dengan tensor
Jika Anda ingin memulai pembelajaran mesin tanpa mengelola pengoptimalan atau manipulasi tensor, lihat pustaka ml5.js.
Dibangun di atas TensorFlow.js, library ml5.js menyediakan akses ke algoritme dan model machine learning di browser web dengan API yang ringkas dan mudah diakses.
Instal TensorFlow.js
Lihat cara menginstal TensorFlow.js untuk implementasi di browser web atau Node.js.
Mengonversi model yang telah dilatih sebelumnya ke TensorFlow.js
Pelajari cara mengonversi model terlatih dari Python ke TensorFlow.js.
Belajar dari kode TensorFlow.js yang sudah ada
tfjs-examples
menyediakan implementasi contoh kecil untuk berbagai tugas ML menggunakan TensorFlow.js.
Visualisasikan perilaku model TensorFlow.js Anda
tfjs-vis
adalah library kecil untuk visualisasi di browser web yang dimaksudkan untuk digunakan dengan TensorFlow.js.
Lihat tfjs-vis di GitHub Lihat Demo
Siapkan data untuk diproses dengan TensorFlow.js
TensorFlow.js memiliki dukungan untuk memproses data menggunakan praktik terbaik ML.