Configuração do navegador
Existem duas maneiras principais de obter o TensorFlow.js em seus projetos baseados em navegador:
Se você é novo no desenvolvimento web ou nunca ouviu falar de ferramentas como webpack ou parcel, recomendamos que você use a abordagem de tag de script . Se você é mais experiente ou deseja escrever programas maiores, pode valer a pena explorar o uso de ferramentas de compilação.
Uso via Tag de Script
Adicione a seguinte tag de script ao seu arquivo HTML principal.
<script src="https://cdn.jsdelivr.net/npm/@tensorflow/tfjs@2.0.0/dist/tf.min.js"></script>
Veja amostra de código para configuração de tag de script
// 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
});
Instalação do NPM
Você pode usar a ferramenta npm cli ou o yarn para instalar o TensorFlow.js.
yarn add @tensorflow/tfjs
ou
npm install @tensorflow/tfjs
Veja o código de exemplo para instalação 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
});
Configuração do Node.js
Você pode usar a ferramenta npm cli ou o yarn para instalar o TensorFlow.js.
Opção 1: instale o TensorFlow.js com associações C++ nativas.
yarn add @tensorflow/tfjs-node
ou
npm install @tensorflow/tfjs-node
Opção 2: (Somente Linux) Se o seu sistema tiver uma GPU NVIDIA® com suporte a CUDA , use o pacote GPU mesmo para obter um desempenho superior.
yarn add @tensorflow/tfjs-node-gpu
ou
npm install @tensorflow/tfjs-node-gpu
Opção 3: instale a versão JavaScript pura. Esta é a opção mais lenta em termos de desempenho.
yarn add @tensorflow/tfjs
ou
npm install @tensorflow/tfjs
Veja o código de amostra para uso do Node.js
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
Ao usar o TypeScript, você pode precisar definir skipLibCheck: true
em seu arquivo tsconfig.json
se seu projeto fizer uso de verificação nula estrita ou você encontrará erros durante a compilação.