【问题标题】:Writing a Number Classifier Neural Network in Tensorflow.js在 Tensorflow.js 中编写数字分类器神经网络
【发布时间】:2018-12-30 08:55:40
【问题描述】:
我正在寻找一些关于我刚刚开始的有趣项目的指导。我是 CS 一年级的学生,我对数学非常感兴趣,因此也被机器学习所吸引。我正在尝试编写一个程序,允许用户在 html 画布元素中绘制数字 0-9,然后获取保存的图像并通过我在 tensorflow.js 中编写的神经网络运行它并猜测他们的数字'已经绘制并且还可能绘制条形图、饼图或描述神经网络置信百分比的图表的任何其他组合。我以前见过这样做,但我不太确定它是如何实现的。我来这里的原因是我有点困惑。我使用This Tensorflow.js Link 帮助我编写神经网络,它可以预测 MNIST 数据集中的图像。我还编写了适当的 HTML、CSS 和 JS 来绘制一个配置良好的图像,然后将其保存为画布中的 .png。我不明白的是如何连接这两者并输入用户绘制的保存图像,然后输出猜测,还有一些关于百分比是多少的图表和统计数据以及其他类似的东西。浏览器。非常感谢大家!
【问题讨论】:
标签:
javascript
tensorflow
machine-learning
neural-network
tensorflow.js
【解决方案1】:
TensorFlow.js 有一个将图像转换为张量的方法,所以你可以使用它。
它是tf.browser.fromPixels(),它将ImageData|HTMLImageElement|HTMLCanvasElement|HTMLVideoElement 之一作为参数并将其转换为tf.Tensor3D。
例子:
const canvas = document.querySelector('canvas');
const imageTensor = tf.browser.fromPixels(canvas);
imageTensor.print();
<script src="https://cdn.jsdelivr.net/npm/@tensorflow/tfjs@2.0.0/dist/tf.min.js"></script><canvas width="28" height="28"></canvas>