Path: blob/master/site/en-snapshot/js/tutorials/setup.md
25118 views
Setup
Browser Setup
There are two main ways to get TensorFlow.js in your browser based projects:
Using script tags.
Installation from NPM and using a build tool like Parcel, WebPack, or Rollup.
If you are new to web development, or have never heard of tools like webpack or parcel, we recommend you use the script tag approach. If you are more experienced or want to write larger programs it might be worthwhile to explore using build tools.
Usage via Script Tag
Add the following script tag to your main HTML file.
See code sample for script tag setup
// Define a model for linear regression. const model = tf.sequential(); model.add(tf.layers.dense({units: 1, inputShape: [1]}));
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, {epochs: 10}).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(); // Open the browser devtools to see the output });
Installation from NPM
You can use either the npm cli tool or yarn to install TensorFlow.js.
or
See sample code for installation via NPM
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]}));
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, {epochs: 10}).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(); // Open the browser devtools to see the output });
Node.js Setup
You can use either the npm cli tool or yarn to install TensorFlow.js.
Option 1: Install TensorFlow.js with native C++ bindings.
or
Option 2: (Linux Only) If your system has a NVIDIA® GPU with CUDA support, use the GPU package even for higher performance.
or
Option 3: Install the pure JavaScript version. This is the slowest option performance wise.
or
See sample code for Node.js usage
const tf = require('@tensorflow/tfjs');
// Optional Load the binding: // Use '@tensorflow/tfjs-node-gpu' if running with GPU. require('@tensorflow/tfjs-node');
// Train a simple model: const model = tf.sequential(); model.add(tf.layers.dense({units: 100, activation: 'relu', inputShape: [10]})); model.add(tf.layers.dense({units: 1, activation: 'linear'})); model.compile({optimizer: 'sgd', loss: 'meanSquaredError'});
const xs = tf.randomNormal([100, 10]); const ys = tf.randomNormal([100, 1]);
model.fit(xs, ys, { epochs: 100, callbacks: { onEpochEnd: (epoch, log) => console.log(Epoch ${epoch}: loss = ${log.loss}
) } });
TypeScript
When using TypeScript you may need to set skipLibCheck: true
in your tsconfig.json
file if your project makes use of strict null checking or you will run into errors during compilation.