TensorFlow.js adalah pustaka JavaScript dengan akselerasi perangkat keras sumber terbuka untuk melatih dan menerapkan model pembelajaran mesin.
Kembangkan ML di Browser
Gunakan API yang fleksibel dan intuitif untuk membuat model dari awal menggunakan pustaka aljabar linier JavaScript tingkat rendah atau API lapisan tingkat tinggi.
Kembangkan ML di Node.js
Jalankan TensorFlow asli dengan API TensorFlow.js yang sama pada runtime Node.js.
Jalankan model yang ada
Gunakan pengonversi model TensorFlow.js untuk menjalankan model TensorFlow yang sudah ada langsung di browser.
Latih kembali model yang ada
Latih ulang model ML yang sudah ada menggunakan data sensor yang terhubung ke browser atau data sisi klien lainnya.
Repositori ini berisi logika dan skrip yang menggabungkan beberapa paket.
Lebah:
Backend/Platform:
Jika Anda peduli dengan ukuran paket, Anda dapat mengimpor paket tersebut satu per satu.
Jika Anda mencari dukungan Node.js, lihat direktori Node TensorFlow.js.
Lihat contoh repositori dan tutorial kami.
Pastikan untuk memeriksa galeri semua proyek yang terkait dengan TensorFlow.js.
Pastikan juga untuk memeriksa repositori model kami tempat kami menghosting model terlatih di NPM.
Ada dua cara utama untuk mendapatkan TensorFlow.js di proyek JavaScript Anda: melalui tag skrip atau dengan menginstalnya dari NPM dan menggunakan alat build seperti Parcel, WebPack, atau Rollup.
Tambahkan kode berikut ke file HTML:
< html >
< head >
<!-- Load TensorFlow.js -->
< script src =" https://cdn.jsdelivr.net/npm/@tensorflow/tfjs/dist/tf.min.js " > </ script >
<!-- Place your code in the script tag below. You can also use an external .js file -->
< script >
// Notice there is no 'import' statement. 'tf' is available on the index-page
// because of the script tag above.
// Define a model for linear regression.
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.
const xs = tf . tensor2d ( [ 1 , 2 , 3 , 4 ] , [ 4 , 1 ] ) ;
const ys = tf . tensor2d ( [ 1 , 3 , 5 , 7 ] , [ 4 , 1 ] ) ;
// Train the model using the data.
model . fit ( xs , ys ) . then ( ( ) => {
// Use the model to do inference on a data point the model hasn't seen before:
// Open the browser devtools to see the output
model . predict ( tf . tensor2d ( [ 5 ] , [ 1 , 1 ] ) ) . print ( ) ;
} ) ;
</ script >
</ head >
< body >
</ body >
</ html >
Buka file HTML itu di browser Anda, dan kodenya akan berjalan!
Tambahkan TensorFlow.js ke proyek Anda menggunakan benang atau npm. Catatan: Karena kami menggunakan sintaksis ES2017 (seperti import
), alur kerja ini mengasumsikan Anda menggunakan browser modern atau bundler/transpiler untuk mengonversi kode Anda menjadi sesuatu yang dipahami oleh browser lama. Lihat contoh kami untuk melihat bagaimana kami menggunakan Parcel untuk membuat kode kami. Namun, Anda bebas menggunakan alat pembuatan apa pun yang Anda sukai.
import * as tf from '@tensorflow/tfjs' ;
// Define a model for linear regression.
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.
const xs = tf . tensor2d ( [ 1 , 2 , 3 , 4 ] , [ 4 , 1 ] ) ;
const ys = tf . tensor2d ( [ 1 , 3 , 5 , 7 ] , [ 4 , 1 ] ) ;
// Train the model using the data.
model . fit ( xs , ys ) . then ( ( ) => {
// Use the model to do inference on a data point the model hasn't seen before:
model . predict ( tf . tensor2d ( [ 5 ] , [ 1 , 1 ] ) ) . print ( ) ;
} ) ;
Lihat tutorial, contoh, dan dokumentasi kami untuk lebih jelasnya.
Kami mendukung porting model terlatih dari:
Silakan lihat di bawah ini:
TensorFlow.js adalah bagian dari ekosistem TensorFlow. Untuk informasi lebih lanjut:
tfjs
di Forum TensorFlow.Terima kasih, BrowserStack, karena telah memberikan dukungan pengujian.