1.4 练习
- 无论你是一个前端JavaScript开发人员还是Node.js开发人员,根据你在本章学到的知识,集思广益地讨论几个可能的案例,让机器学习应用到你正在开发的系统中,使其更加智能化。有关启示,请参阅表1.1和1.2以及上面题为“TensorFlow.js如何被广泛使用”的小节。其他一些例子:
- 一个销售太阳镜等配饰的时尚网站使用网络摄像头捕捉用户面部图像,并使用运行在TensorFlow.js上的深层神经网络检测面部标志点。然后,检测到的标志用来合成覆盖在用户脸上的太阳镜图像,以模拟网页上的试镜体验。这种体验是真实的,因为模拟的try-on可以在低延迟和高帧速率下运行,这要归功于客户端的推断。用户的数据隐私受到尊重,因为捕获的面部图像永远不会离开浏览器。
- 用React Native(一个用于创建本机移动应用程序的跨平台JavaScript库)编写移动体育应用程序跟踪用户身体锻炼行为。使用HTML5 API,应用程序可以从手机的陀螺仪和加速计访问实时数据。数据通过TensorFlow.js驱动的模型运行,该模型自动检测用户当前的活动类型(例如,休息与步行、慢跑与短跑)。
- 浏览器扩展会自动检测使用该设备的人是儿童还是成人(通过使用每5秒一次的帧速率从网络摄像头捕获的图像和TensorFlow.js支持的计算机视觉模型),并使用该信息相应地阻止或授权访问某些网站。
- 基于浏览器环境使用TensorFlow.js实现的递归神经网络来检测代码注释中的错误。
- 基于Node.js的服务器端应用程序,用于协调货物物流服务,使用实时信号,如承运人状态、货物类型和数量、日期/时间和交通信息,来预测每笔交易的预计到达时间(ETA)。训练和推理都是用Node.js编写的,使用TensorFlow.js,简化了服务器堆栈。