浏览器玩转机器学习之:Teachable Machine (图像/语音/姿态识别)

Teachable Machine:浏览器玩转机器学习 图像/语音/姿态识别

  • 简介:
  • 先上图:
  • 快速上手:
    • 新建项目
    • 准备数据
    • Model训练
    • Model运行
    • Model导出
  • 对于语音和姿态识别
  • 源码Github:
  • 博主热门文章推荐:


简介:

Google Creative Lab 开发的 Teachable Machine 是Google提供的通过浏览器进行Machine Learning体验的项目,不需要编程,完全免费开源,只需要简单页面操作即可实现丰富的图像、语音、姿态识别的小项目。

通过Creative Lab ,小学生都可以实现一个机器学习项目,
使用Teachable Machine来简单学习、制作一些小机器学习项目还是不错的。。还可以教教小朋友编程,当游戏玩

Teachable Machine是用TensorFlowJS(Tensorflow in Javascript)开发的,以实现在Web浏览器上 对机器学习模型的训练、运行。。。

算法模型上,Teachable Machine使用了Transfer Learning (迁移学习),预训练模型用的是 :

  • Image图片/Pose姿态识别:MobileNet

  • Voice语音识别:Speech Command Recognizer


先上图:

快速上手:

使用非常简单,无需任何编程,直接通过浏览器操作 获取数据、训练、导出等操作。。
浏览器玩转机器学习之:Teachable Machine (图像/语音/姿态识别)_第1张图片

新建项目

浏览器(推荐Chrome)打开 https://teachablemachine.withgoogle.com/

点击GetStarted:
浏览器玩转机器学习之:Teachable Machine (图像/语音/姿态识别)_第2张图片
选择New Project,支持图片、音频、姿势识别
浏览器玩转机器学习之:Teachable Machine (图像/语音/姿态识别)_第3张图片

这里以图像project举例:

浏览器玩转机器学习之:Teachable Machine (图像/语音/姿态识别)_第4张图片

准备数据

直接点击添加目标Class名称和训练数据。

先添加图像类别class(lable)的名称
浏览器玩转机器学习之:Teachable Machine (图像/语音/姿态识别)_第5张图片

然后通过摄像头采集训练数据:
点击WebCam(WebCamera)打开摄像头后,一直点住Hold to Record按钮,摄像头就会不断采集图片, 直到感觉图片够用了就可以松开。。。
浏览器玩转机器学习之:Teachable Machine (图像/语音/姿态识别)_第6张图片

例如石头剪刀布识别:
浏览器玩转机器学习之:Teachable Machine (图像/语音/姿态识别)_第7张图片
浏览器玩转机器学习之:Teachable Machine (图像/语音/姿态识别)_第8张图片
浏览器玩转机器学习之:Teachable Machine (图像/语音/姿态识别)_第9张图片

Model训练

图片数据准备好后,点击Train Model 既开始Traning。。
在Advanced菜单里可以调整训练参数:支持Epoch/BatchSize 和学习率的调整

浏览器玩转机器学习之:Teachable Machine (图像/语音/姿态识别)_第10张图片

训练完成后可以通过 under the hood查看训练过程数据,如Accuracy/Loss曲线、Confusion Matrix混淆矩阵等
浏览器玩转机器学习之:Teachable Machine (图像/语音/姿态识别)_第11张图片

Model运行

Training完成后,通过Preview打开摄像头,就可以测试下刚训练的模型了:
浏览器玩转机器学习之:Teachable Machine (图像/语音/姿态识别)_第12张图片

非常简单吧~
浏览器玩转机器学习之:Teachable Machine (图像/语音/姿态识别)_第13张图片

Model导出

如果感觉模型效果不错,可以直接导出模型,放到自己的项目中使用:
浏览器玩转机器学习之:Teachable Machine (图像/语音/姿态识别)_第14张图片

支持导出为TensorFlow/TensorFlow.js/Tensorflow Lite模型
浏览器玩转机器学习之:Teachable Machine (图像/语音/姿态识别)_第15张图片

对于语音和姿态识别

和图片一样,对于语音和姿态识别,也是通过电脑的Mic和Camera获取语音/视频数据,进行训练和运行:

浏览器玩转机器学习之:Teachable Machine (图像/语音/姿态识别)_第16张图片
浏览器玩转机器学习之:Teachable Machine (图像/语音/姿态识别)_第17张图片

源码Github:

可以在github上查看相关源码和更多介绍:https://github.com/googlecreativelab/teachable-machine

浏览器玩转机器学习之:Teachable Machine (图像/语音/姿态识别)_第18张图片


博主热门文章推荐:

一篇读懂系列:

  • 一篇读懂无线充电技术(附方案选型及原理分析)
  • 一篇读懂:Android/iOS手机如何通过音频接口(耳机孔)与外设通信
  • 一篇读懂:Android手机如何通过USB接口与外设通信(附原理分析及方案选型)

LoRa Mesh系列:

  • LoRa学习:LoRa关键参数(扩频因子,编码率,带宽)的设定及解释
  • LoRa学习:信道占用检测原理(CAD)
  • LoRa/FSK 无线频谱波形分析(频谱分析仪测试LoRa/FSK带宽、功率、频率误差等)

网络安全系列:

  • ATECC508A芯片开发笔记(一):初识加密芯片
  • SHA/HMAC/AES-CBC/CTR 算法执行效率及RAM消耗 测试结果
  • 常见加密/签名/哈希算法性能比较 (多平台 AES/DES, DH, ECDSA, RSA等)
  • AES加解密效率测试(纯软件AES128/256)–以嵌入式Cortex-M0与M3 平台为例

嵌入式开发系列:

  • 嵌入式学习中较好的练手项目和课题整理(附代码资料、学习视频和嵌入式学习规划)
  • IAR调试使用技巧汇总:数据断点、CallStack、设置堆栈、查看栈使用和栈深度、Memory、Set Next Statement等
  • Linux内核编译配置(Menuconfig)、制作文件系统 详细步骤
  • Android底层调用C代码(JNI实现)
  • 树莓派到手第一步:上电启动、安装中文字体、虚拟键盘、开启SSH等
  • Android/Linux设备有线&无线 双网共存(同时上内、外网)

AI / 机器学习系列:

  • AI: 机器学习必须懂的几个术语:Lable、Feature、Model…
  • AI:卷积神经网络CNN 解决过拟合的方法 (Overcome Overfitting)
  • AI: 什么是机器学习的数据清洗(Data Cleaning)
  • AI: 机器学习的模型是如何训练的?(在试错中学习)
  • 数据可视化:TensorboardX安装及使用(安装测试+实例演示)

在这里插入图片描述

你可能感兴趣的