Настройка Node.js

Для среды Node.js вы можете установить его с помощью npm:

npm install @tensorflow/tfjs

2. Построение простой модели нейронной сети

Давайте создадим простую нейронную сеть, которая прогнозирует выходные данные базовой линейной функции, y = 2x - 1. Мы будем использовать TensorFlow.js для создания и обучения этой модели.

Шаг 1: Определите модель

Мы начнем с определения последовательной модели (линейного набора слоев) с одним плотным слоем:

// Import TensorFlow.jsimport * as tf from \\'@tensorflow/tfjs\\';// Create a simple sequential modelconst model = tf.sequential();// Add a single dense layer with 1 unit (neuron)model.add(tf.layers.dense({units: 1, inputShape: [1]}));

Здесь мы создали модель с одним плотным слоем. В слое имеется один нейрон (единицы измерения: 1), и он ожидает один входной объект (inputShape: [1]).

Шаг 2. Скомпилируйте модель

Далее мы компилируем модель, указав оптимизатор и функцию потерь:

// Compile the modelmodel.compile({  optimizer: \\'sgd\\',  // Stochastic Gradient Descent  loss: \\'meanSquaredError\\'  // Loss function for regression});

Мы используем оптимизатор стохастического градиентного спуска (SGD), который эффективен для небольших моделей. Функция потерьmeanSquaredError подходит для таких задач регрессии, как эта.

Шаг 3. Подготовьте данные для обучения

Теперь мы создадим некоторые обучающие данные для функции y = 2x - 1. В TensorFlow.js данные хранятся в тензорах (многомерных массивах). Вот как мы можем сгенерировать некоторые обучающие данные:

// Generate some synthetic data for trainingconst xs = tf.tensor2d([0, 1, 2, 3, 4], [5, 1]);  // Inputs (x values)const ys = tf.tensor2d([1, 3, 5, 7, 9], [5, 1]);  // Outputs (y values)

В этом случае мы создали тензор xs с входными значениями (0, 1, 2, 3, 4) и соответствующий выходной тензор ys со значениями, рассчитанными с использованием y = 2x - 1.

Шаг 4. Обучение модели

Теперь мы можем обучить модель на наших данных:

// Train the modelmodel.fit(xs, ys, {epochs: 500}).then(() => {  // Once training is complete, use the model to make predictions  model.predict(tf.tensor2d([5], [1, 1])).print();  // Output will be close to 2*5 - 1 = 9});

Здесь мы обучаем модель в течение 500 эпох (итерации по обучающим данным). После обучения мы используем модель для прогнозирования выходных данных для входного значения 5, которое должно возвращать значение, близкое к 9 (y = 2*5 - 1 = 9).

3. Запуск модели в браузере

Чтобы запустить эту модель в браузере, вам понадобится HTML-файл, включающий библиотеку TensorFlow.js и ваш код JavaScript:

            TensorFlow.js Example              

Simple Neural Network with TensorFlow.js

А в файле app.js вы можете включить приведенный выше код построения модели и обучения.

","image":"http://www.luping.net/uploads/20241022/17295980466717925ed5c04.jpg","datePublished":"2024-11-05T22:45:47+08:00","dateModified":"2024-11-05T22:45:47+08:00","author":{"@type":"Person","name":"luping.net","url":"https://www.luping.net/articlelist/0_1.html"}}
«Если рабочий хочет хорошо выполнять свою работу, он должен сначала заточить свои инструменты» — Конфуций, «Аналитики Конфуция. Лу Лингун»
титульная страница > программирование > Начало работы с машинным обучением в JavaScript: руководство для начинающих с TensorFlow.js

Начало работы с машинным обучением в JavaScript: руководство для начинающих с TensorFlow.js

Опубликовано 5 ноября 2024 г.
Просматривать:632

Getting Started with Machine Learning in JavaScript: A Beginner’s Guide with TensorFlow.js

Машинное обучение (МО) быстро изменило мир разработки программного обеспечения. До недавнего времени Python был доминирующим языком в сфере машинного обучения благодаря таким библиотекам, как TensorFlow и PyTorch. Но с появлением TensorFlow.js разработчики JavaScript теперь могут погрузиться в захватывающий мир машинного обучения, используя знакомый синтаксис для создания и обучения моделей непосредственно в браузере или на Node.js.

В этой записи блога мы рассмотрим, как начать работу с машинным обучением с использованием JavaScript. Мы рассмотрим пример построения и обучения простой модели с использованием TensorFlow.js.

Почему TensorFlow.js?

TensorFlow.js — это библиотека с открытым исходным кодом, которая позволяет определять, обучать и запускать модели машинного обучения полностью на JavaScript. Он работает как в браузере, так и на Node.js, что делает его невероятно универсальным для широкого спектра приложений машинного обучения.

Вот несколько причин, почему TensorFlow.js интересен:

  1. Обучение в реальном времени: модели можно запускать прямо в браузере, обеспечивая интерактивность в режиме реального времени.
  2. Кроссплатформенность: один и тот же код может выполняться как в серверной, так и в клиентской среде.
  3. Аппаратное ускорение: для ускорения графического процессора используется WebGL, что ускоряет вычисления.

Давайте посмотрим, с чего начать!

1. Настройка TensorFlow.js

Прежде чем углубиться в код, вам необходимо установить TensorFlow.js. Вы можете включить его в свой проект с помощью тега

Настройка браузера

Чтобы использовать TensorFlow.js в браузере, просто включите следующий тег

Настройка Node.js

Для среды Node.js вы можете установить его с помощью npm:

npm install @tensorflow/tfjs

2. Построение простой модели нейронной сети

Давайте создадим простую нейронную сеть, которая прогнозирует выходные данные базовой линейной функции, y = 2x - 1. Мы будем использовать TensorFlow.js для создания и обучения этой модели.

Шаг 1: Определите модель

Мы начнем с определения последовательной модели (линейного набора слоев) с одним плотным слоем:

// Import TensorFlow.js
import * as tf from '@tensorflow/tfjs';

// Create a simple sequential model
const model = tf.sequential();

// Add a single dense layer with 1 unit (neuron)
model.add(tf.layers.dense({units: 1, inputShape: [1]}));

Здесь мы создали модель с одним плотным слоем. В слое имеется один нейрон (единицы измерения: 1), и он ожидает один входной объект (inputShape: [1]).

Шаг 2. Скомпилируйте модель

Далее мы компилируем модель, указав оптимизатор и функцию потерь:

// Compile the model
model.compile({
  optimizer: 'sgd',  // Stochastic Gradient Descent
  loss: 'meanSquaredError'  // Loss function for regression
});

Мы используем оптимизатор стохастического градиентного спуска (SGD), который эффективен для небольших моделей. Функция потерьmeanSquaredError подходит для таких задач регрессии, как эта.

Шаг 3. Подготовьте данные для обучения

Теперь мы создадим некоторые обучающие данные для функции y = 2x - 1. В TensorFlow.js данные хранятся в тензорах (многомерных массивах). Вот как мы можем сгенерировать некоторые обучающие данные:

// Generate some synthetic data for training
const xs = tf.tensor2d([0, 1, 2, 3, 4], [5, 1]);  // Inputs (x values)
const ys = tf.tensor2d([1, 3, 5, 7, 9], [5, 1]);  // Outputs (y values)

В этом случае мы создали тензор xs с входными значениями (0, 1, 2, 3, 4) и соответствующий выходной тензор ys со значениями, рассчитанными с использованием y = 2x - 1.

Шаг 4. Обучение модели

Теперь мы можем обучить модель на наших данных:

// Train the model
model.fit(xs, ys, {epochs: 500}).then(() => {
  // Once training is complete, use the model to make predictions
  model.predict(tf.tensor2d([5], [1, 1])).print();  // Output will be close to 2*5 - 1 = 9
});

Здесь мы обучаем модель в течение 500 эпох (итерации по обучающим данным). После обучения мы используем модель для прогнозирования выходных данных для входного значения 5, которое должно возвращать значение, близкое к 9 (y = 2*5 - 1 = 9).

3. Запуск модели в браузере

Чтобы запустить эту модель в браузере, вам понадобится HTML-файл, включающий библиотеку TensorFlow.js и ваш код JavaScript:



    TensorFlow.js Example

Simple Neural Network with TensorFlow.js

А в файле app.js вы можете включить приведенный выше код построения модели и обучения.

Заявление о выпуске Эта статья воспроизведена по адресу: https://dev.to/pawandeore/getting-started-with-machine-learning-in-javascript-a-beginners-guide-with-tensorflowjs-2ol2?1 Если есть какие-либо нарушения, пожалуйста, свяжитесь с Study_golang@163 .comdelete
Последний учебник Более>

Изучайте китайский

Отказ от ответственности: Все предоставленные ресурсы частично взяты из Интернета. В случае нарушения ваших авторских прав или других прав и интересов, пожалуйста, объясните подробные причины и предоставьте доказательства авторских прав или прав и интересов, а затем отправьте их по электронной почте: [email protected]. Мы сделаем это за вас как можно скорее.

Copyright© 2022 湘ICP备2022001581号-3