Рубрики
Без рубрики

Представляем Tensorspace.js. – способ 3D визуализации нейронных сетей в браузерах

Chenhua ZHU, представляя Tensorspace.js – путь к 3D визуализации нейронных сетей в браузерах воспроизведения абстракции абораций Tiger Cat Imageurations всегда были чем-то высокими, недоступными и таинственными, прежде чем я взял свой первый глубокий класс обучения. Для меня они были просто магии: Neural Network Applications могут выполнять задачи на

Ченхуа Чжу

Нейронные сети всегда были чем-то высокими, недоступными и таинственными, прежде чем я взял свой первый глубокий класс обучения. Для меня они были просто Magic: Neural Network Applications могут выполнять задачи по обнаружению объекта, классификации изображений и даже прогноз данных в нашей повседневной жизни.

«Что вычисляет модель?» «Почему мы должны использовать эту конкретную сеть для этой задачи?» «Как другие могли придумать, как это такая структура?»

Может быть, у вас есть те же вопросы, что и у меня. Мои друзья, и я обнаружил, что иногда это действительно трудно понять и объяснить нейронные сети. Затем мы придумали некоторые идеи:

Почему бы не визуализировать нейронную сеть? Как насчет 3D-модели? Это может быть интерактивным!

Поскольку такая вещь не существовала, что мы сможем найти, мы думали, почему бы не создать самих себя? Через 6 месяцев я горжусь тем, что представляю наши усилия: Tensorspace.js Отказ

Что такое tensorspace.js?

Поскольку мы хотели иметь возможность легко представить модели в большинстве веб-браузеров, мы выбираем JavaScript для реализации структуры.

От рис. 1 Выше вы можете легко проверить структуру модели: каждый «куб» представляет собой объект «слоя» в нейронной сети.

Далее вы можете вообще взаимодействовать с моделью, нажав, перетаскивая и прокрутив. Различные углы могут обеспечить разные точки зрения модели. Некоторые объекты являются расширяемыми, что позволяет наблюдать больше деталей.

Кроме того, мы разработали гибридный архитектуру для Tensorspace.js для поддержки различных библиотек, таких как Tensorflow, Keras и Tensorflow.js (больше, чтобы прийти в будущее).

TENSORSPACE.JS может не только показывать основную структуру модели, но и представляет процессы внутренних абстракций функций, промежуточных манипуляций данных и конечных средств выводов.

Таким образом, Tensorspace.js:

  • Интерактивный – использует KERAS-API для создания интерактивных моделей в браузерах.
  • Интуитивно понятное – Визуализирует информацию из промежуточных выводов.
  • Интегративный – Поддерживает предварительно обученные модели от Tensorflow, Keras и Tensorflow.js.

Как работает tensorspace.js?

Следующая часть представляет как построить модель TensorSpace. Я использую модель распознавания рукописного распознавания LENET. Вы можете найти все примеры файлов из репо здесь: Tensorspace – Helloworld Отказ

Общий рабочий процесс должен создать или предварительно обработать предварительно обученную модель с несколькими промежуточными выходами. Затем, основываясь на структуре нейронной сети, мы можем построить модель Tensorspace. Последнее, мы загружаем и инициализируем модель, которая может принимать входные данные для выводов.

После правильного Установка TENSORSPACE.JS и правильно Предварительная обработка предварительно обученных моделей Мы можем легко создать модель Tensorspace Lenet рукописного распознавания Tensorspace. Для удобства мы используем Предварительная Tensorspace Совместимая модель и Извлеченный файл который является рукописным «5» в качестве ввода модели.

let container = document.getElementById( "container" );
// Create sequential modellet model = new TSP.models.Sequential( container );
// Add LeNet Layersmodel.add( new TSP.layers.GreyscaleInput({ shape: [28, 28, 1] }) );model.add( new TSP.layers.Padding2d({ padding: [2, 2] }) );model.add( new TSP.layers.Conv2d({ kernelSize: 5, filters: 6, strides: 1 }) );model.add( new TSP.layers.Pooling2d({ poolSize: [2, 2], strides: [2, 2] }) );model.add( new TSP.layers.Conv2d({ kernelSize: 5, filters: 16, strides: 1 }) );model.add( new TSP.layers.Pooling2d({ poolSize: [2, 2], strides: [2, 2] }) );model.add( new TSP.layers.Dense({ units: 120 }) );model.add( new TSP.layers.Dense({ units: 84 }) );model.add( new TSP.layers.Output1d({    units: 10,    outputs: ["0", "1", "2", "3", "4", "5", "6", "7", "8", "9"]}) );
// Load preprocessed modelmodel.load({    type: "tfjs",    url: './lenetModel/mnist.json'});
// Initialize the model in the browsermodel.init(function() {    // Predict input "5"    model.predict( image_5 ); });

Вот и все!

Вы можете попробовать это в кодепене:

Вид в кодепене Отказ

Легко построить другие предварительно обработанные модели таким же образом. Если вы заинтересованы, пожалуйста, ознакомьтесь с нашими Детская площадка Для более интересных демонстраций, таких как Yolov2-Tiny, Acgan и Resnet-50.

Когда вы должны использовать это?

Если вы хотите представить свою модель другую, объясните некоторые подробные функции модели или построить демонстрацию с нуля, я думаю, что TensorSpace может быть хорошим инструментом для интуитивно и четко описать модель. Это весело взаимодействовать и изучить модель, которую вы только что построили.

Заключение

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

Для получения дополнительной информации о TensorSpace.js, пожалуйста, проверьте:

Оригинал: “https://www.freecodecamp.org/news/tensorspace-js-a-way-to-3d-visualize-neural-networks-in-browsers-2c0afd7648a8/”