JavaScript 中的机器学习
传统上,机器学习应用使用 R 或 Python。
但是 JavaScript 作为一种机器学习语言具有巨大的未来
- JavaScript 是众所周知的。所有开发人员都可以使用它。
- 内置安全。JavaScript 无法访问你的文件。
- JavaScript 比 Python 更快。
- JavaScript 可以使用硬件加速。
- JavaScript 在浏览器中运行
JavaScript 适合机器学习
机器学习可能涉及大量数学。神经网络的性质非常技术化,并且与之相关的术语往往会吓退人们。
这就是 JavaScript 可以提供帮助的地方,它提供易于理解的软件来简化创建和训练神经网络的过程。
借助新的机器学习库,JavaScript 开发人员可以将机器学习和人工智能添加到 Web 应用程序中。
JavaScript 机器学习库
浏览器中的机器学习意味着
- JavaScript 中的机器学习
- 面向 Web 的机器学习
- 面向所有人的机器学习
- 更多平台的机器学习
优点
- 易于使用。无需安装。
- 强大的图形。浏览器支持 WebGL。
- 更好的隐私。数据可以保留在客户端。
- 更多平台。JavaScript 运行在移动设备上。
Brain.js
Brain.js 是一个 JavaScript 库,它通过隐藏数学的复杂性,使神经网络易于理解。
Brain.js 使用简单。你无需详细了解神经网络即可使用 Brain.js。
Brain.js 提供了多种神经网络实现,因为不同的神经网络可以被训练来很好地完成不同的任务。
ml5.js
ml5.js 试图让更广泛的受众更容易接触到机器学习。
ml5 团队致力于以更友好的方式封装机器学习功能。
下面的示例仅使用三行代码即可对图像进行分类
<img id="myImage" src="pic1.jpg" width="100%">
<script>
const classifier = ml5.imageClassifier('MobileNet');
classifier.classify(document.getElementById("myImage"), gotResult);
function gotResult(error, results)
{ ... }
</script>
自己动手试一试 »
尝试将 pic1.jpg 替换为 pic2.jpg、pic3.jpg 和 pic4.jpg。
TensorFlow
TensorFlow Playground 是一个用d3.js编写的 Web 应用程序。
借助 TensorFlow Playground,你可以了解神经网络(NN)而无需学习数学。
在你自己的 Web 浏览器中,你可以创建一个神经网络并查看结果。
TensorFlow.js 以前称为 Tf.js 和 Deeplearn.js。
浏览器中的数学
Math.js 是一个广泛的 JavaScript 和 Node.js 数学库。
Math.js 功能强大且易于使用。它带有一套大型内置函数、灵活的表达式解析器以及用于处理数字、大数、复数、分数、单位、数组和矩阵等多种数据类型的解决方案。
浏览器中的绘图
以下是一些可用于机器学习图和其他 HTML 图表的 JavaScript 库列表
绘制方程
绘制数值
WebGL API
WebGL 是一个 JavaScript API,用于在任何浏览器中渲染 2D 和 3D 图形。
WebGL 可以在任何 PC 的集成和独立显卡上运行。
WebGL 将 3D 图形带入了 Web 浏览器。主要的浏览器供应商 Apple (Safari)、Google (Chrome)、Microsoft (Edge) 和 Mozilla (Firefox) 都是 WebGL 工作组成员。