1、浏览器中进行机器学习的优势
浏览器中进行机器学习,相对比与服务器端来讲,将拥有以下四大优势:
- 不需要安装软件或驱动(打开浏览器即可使用);
- 可以通过浏览器进行更加方便的人机交互;
- 可以通过手机浏览器,调用手机硬件的各种传感器(如:GPS、电子罗盘、加速度传感器、摄像头等);
- 用户的数据可以无需上传到服务器,在本地即可完成所需操作。
通过这些优势,TensorFlow.js 将给开发者带来极高的灵活性。比如在 Google Creative Lab 在 2018 年 7 月发布的 Move Mirror 里,我们可以在手机上打开浏览器,通过手机摄像头检测视频中用户的身体动作姿势,然后通过对图片数据库中类似身体动作姿势的检索,给用户显示一个最能够和他当前动作相似的照片。在 Move Mirror 的运行过程中,数据没有上传到服务器,所有的运算都是在手机本地,基于手机的 CPU/GPU 完成的,而这项技术,将使 Servreless 与 AI 应用结合起来成为可能。
TensorFlow.js 懒人教程,从安装到训练全解析(内有抽奖送书!) - 知乎
2、环境安装
1、确认 Node.js 版本(v10 或更新的版本)
2、建立TensorFlow.js项目目录
mkdir tfjs
cd tfjs
3、安装TensorFlow.js
# 初始化项目管理文件 package.json
$ npm init -y# 安装 tfjs 库,纯 JavaScript 版本
$ npm install @tensorflow/tfjs# 安装 tfjs-node 库,C Binding 版本
$ npm install @tensorflow/tfjs-node# 安装 tfjs-node-gpu 库,支持 CUDA GPU 加速
$ npm install @tensorflow/tfjs-node-gpu
其中:
- @tensorflow/tfjs这个项目是偏向前端,浏览器而生的
- @tensorflow/tfjs-node是针对后端node,所以如果是在服务器或者PC端运行则应该请使用这个版本
4、确认 Node.js 和 TensorFlow.js 工作正常
如果你看到了上面的 tfjs-core
, tfjs-data
, tfjs-layers
和 tfjs-converter
的输出信息,那么就说明环境配置没有问题了。
然后,在 JavaScript 程序中,通过以下指令,即可引入 TensorFlow.js:
import * as tf from '@tensorflow/tfjs'
console.log(tf.version.tfjs)
//Output: 1.3.1