TensorFlow.js 简介:通过 JavaScript 实现机器学习。
如果您还没有听说过 TensorFlow.js,让我来向您介绍一下!
TensorFlow.js是 TensorFlow 平台的一个库。它旨在帮助程序员轻松快速地使用 JavaScript创建和运行机器学习模型!它既可以在浏览器端使用,也可以在 Node.js 的服务器端使用。
那么 TensorFlow.js 库里有什么?
该库提供了预先训练的机器学习模型,您无需任何机器学习知识即可实现。机器学习模型是一种具有可学习参数的函数,可将输入映射到所需的输出。
这些预配置模型可以直接使用,包括图像、音频和文本等常见类别。
您还可以重新训练这些现有模型之一。或者,您可以开发自己的机器学习模型!同样,所有这些都使用 JavaScript!
使用预先训练的模型
首次探索 TensorFlow 时,建议您使用预训练模型。通过 npm 或 script 标签导入到项目中非常简单!
这是名为“姿势估计器”的预训练模型的代码。
import * as posenet from '@tensorflow-models/posenet';
async function estimatePoseOnImage(imageElement) {
// load the posenet model from a checkpoint
const net = await posenet.load();
const pose = await net.estimateSinglePose(imageElement, {
flipHorizontal: false
});
return pose;
}
const imageElement = document.getElementById('cat');
const pose = estimatePoseOnImage(imageElement);
console.log(pose);
令人困惑的是该代码有多短。
有关姿势估计器的详细信息,请查看 github https://github.com/tensorflow/tfjs-models/tree/master/posenet。
训练模型
训练包括几个步骤:
- 将一批数据输入到模型中。
- 要求模型做出预测。
- 将预测值与“真实”值进行比较。
- 决定每个参数改变多少,以便模型将来可以对该批次做出更好的预测。
训练有素的模型将提供从输入到期望输出的精确映射。
TensorFlow 实际应用示例
机器学习激发好奇心,激发乐趣。各种各样激动人心的项目都在使用 TensorFlow.js 构建!其中一个真正让我开怀大笑并想要进一步探索的项目是谷歌员工开发的 MoveMirror 项目。

你打开网络摄像头四处走动,电脑就会实时提取与你姿势相匹配的图片。图像数据库包含超过8万张图片——人们跳舞、练空手道、做饭、散步、滑雪等等。
结论:
TensorFlow.js 提供了一套强大的工具,可在浏览器和 Node.js 中实现机器学习。它通过预制模型实现了机器学习,让您可以立即体验!
对于张量的基本解释:
张量是一种数学概念,它使我们能够表示原本无法描述的物理量。它是一个可以容纳多个维度及其关系的容器。从计算机科学的角度来看,将它们视为一种数据结构会很有帮助。
如果听起来有点令人困惑,别担心!实现或使用 TensorFlow.js 库并不需要深入了解张量。您可以使用基于 TensorFlow.js 的ml5.js 库,轻松上手机器学习,而无需担心张量或优化器。
文章来源:https://dev.to/amberjones/an-intro-to-tensorflow-js-machine-learning-made-accessible-in-javascript-24o0