Настройка браузера
Есть два основных способа получить TensorFlow.js в ваших браузерных проектах:
Если вы новичок в веб-разработке или никогда не слышали о таких инструментах, как веб-пакет или парцелла, мы рекомендуем вам использовать подход тега скрипта . Если вы более опытны или хотите писать более крупные программы, возможно, стоит изучить использование инструментов сборки.
Использование через тег скрипта
Добавьте следующий тег скрипта в основной HTML-файл.
<script src="https://cdn.jsdelivr.net/npm/@tensorflow/tfjs@2.0.0/dist/tf.min.js"></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
});
Установка из НПМ
Вы можете использовать либо инструмент npm cli , либо пряжу для установки TensorFlow.js.
yarn add @tensorflow/tfjs
или же
npm install @tensorflow/tfjs
См. пример кода для установки через 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
Вы можете использовать либо инструмент npm cli , либо пряжу для установки TensorFlow.js.
Вариант 1. Установите TensorFlow.js с собственными привязками C++.
yarn add @tensorflow/tfjs-node
или же
npm install @tensorflow/tfjs-node
Вариант 2: (только для Linux) Если в вашей системе есть графический процессор NVIDIA® с поддержкой CUDA , используйте пакет графического процессора даже для более высокой производительности.
yarn add @tensorflow/tfjs-node-gpu
или же
npm install @tensorflow/tfjs-node-gpu
Вариант 3. Установите чистую версию JavaScript. Это самый медленный вариант с точки зрения производительности.
yarn add @tensorflow/tfjs
или же
npm install @tensorflow/tfjs
См. пример кода для использования 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 вам может потребоваться установить skipLibCheck: true
в вашем файле tsconfig.json
, если в вашем проекте используется строгая проверка нулей, или вы столкнетесь с ошибками во время компиляции.