Написание нейронной сети классификатора чисел в Tensorflow.js - PullRequest
0 голосов
/ 30 декабря 2018

Я ищу руководство по интересному проекту, который я только начал.Я студент первого курса CS, и я очень интересуюсь математикой, и, следовательно, также увлекаюсь машинным обучением.Я пытаюсь написать программу, которая позволит пользователям рисовать числа 0-9 в элементе HTML-холста, а затем взять это сохраненное изображение и запустить его через нейронную сеть, которую я написал в тензорном потоке.js, и угадать число, которое онинарисовали, а также, возможно, нарисуйте гистограмму, круговую диаграмму или любую другую комбинацию графиков, изображающих проценты достоверности нейронной сети.Я видел это сделано раньше, но я не совсем уверен, как это реализовано.Причина, по которой я пришел сюда, заключается в том, что я немного смущен.Я использовал Эта ссылка Tensorflow.js , чтобы помочь мне написать нейронную сеть, и она может предсказывать изображения в наборе данных MNIST.Я также написал соответствующий HTML, CSS и JS, чтобы нарисовать красиво сконфигурированное изображение, а затем сохранить его как .png с холста.Что я не понимаю, так это как соединить эти два и ввести сохраненное изображение, нарисованное пользователем, а затем вывести предположение, а также ряд графиков и статистических данных о процентном соотношении и других подобных вещах, пока они все еще находятся вбраузер.Спасибо всем большое!

1 Ответ

0 голосов
/ 30 декабря 2018

TensorFlow.js имеет метод для преобразования изображений в тензоры, так что вы можете использовать его.

Это tf.fromPixels(), который принимает один из ImageData|HTMLImageElement|HTMLCanvasElement|HTMLVideoElement в качестве аргумента ипреобразует его в tf.Tensor3D.

Пример:

const canvas = document.querySelector('canvas');
const imageTensor = tf.fromPixels(canvas);

imageTensor.print();
<script src="https://cdn.jsdelivr.net/npm/@tensorflow/tfjs@0.14.1/dist/tf.min.js"></script>
<canvas width="28" height="28"></canvas>
...