0:06 - 1:00 为什么使用 Edge Impulse常见机器学习开发方式传统机器学习通常会使用TensorFlowScikit-learn这些框架功能强大但学习成本高需要写大量代码对嵌入式开发者不太友好Edge Impulse 的作用Edge Impulse核心特点图形化界面不需要深入学习AI框架自动完成训练流程适合嵌入式AI/TinyML可以快速部署到单片机核心思想“让嵌入式工程师不用精通AI框架也能做机器学习项目”1:01 - 1:58 Edge Impulse 项目流程创建项目流程进入平台后创建项目给项目命名打开项目Edge Impulse 的完整机器学习流程左侧面板展示整个AI流程数据采集 ↓ Impulse机器学习流水线 ↓ 训练模型 ↓ 部署到嵌入式设备这里的 Impulse可以理解为“数据处理 特征提取 AI模型”的组合流程1:31 - 2:04 API Key 与数据上传API Key作用连接手机连接单片机上传数据实时测试HMAC Key用于自动上传数据脚本化数据采集自动训练流程适合自动化AI训练批量数据采集2:04 - 3:00 Edge Impulse 支持的数据上传方式方法1直接上传文件支持音频图像JSONCSV原始传感器数据方法2命令行工具上传适合自动化脚本上传方法3开发板实时上传例如Arduino Nano 33 BLE Sense可以实时上传加速度计陀螺仪麦克风IMU数据方法4手机上传手机可以作为传感器设备AI测试设备非常适合入门实验。3:06 - 3:23 手机连接 Edge Impulse流程设备页面 ↓ 连接新设备 ↓ 显示二维码 ↓ 手机扫码 ↓ 连接成功连接后手机会出现在设备列表中。3:29 - 6:33 Arduino Nano 连接流程进入 Bootloader 模式方法快速按两次 Reset 键。现象黄色LED闪烁。3:55 - 5:00 安装开发环境需要安装1. Node.jsNode.js作用运行 Edge Impulse CLI 工具。2. Arduino CLIArduino CLI作用命令行管理Arduino。5:01 - 5:14 安装 Edge Impulse CLI命令npm install -g edge-impulse-cli作用安装edge-impulse-daemon数据上传工具设备连接工具5:14 - 5:42 烧录 Edge Impulse 固件流程下载固件 ↓ 解压 ↓ 运行脚本 ↓ 自动烧录烧录完成后按一次 Reset 重启开发板。5:47 - 6:33 连接开发板到云端命令edge-impulse-daemon功能登录账户选择COM口选择项目上传数据6:54 - 8:59 手势识别项目项目目标制作“魔法棒”手势识别识别左右挥动上下挥动画圆7:15 - 8:24 为什么训练和部署必须用同类传感器核心原则训练用什么传感器部署最好也用什么传感器。原因不同IMU精度不同噪声不同灵敏度不同否则模型可能失效。7:49 - 8:06 FFT 为什么重要这里第一次提到傅里叶变换FFT作用把时域信号转换成频域信号用于提取振动频率周期特征动作节奏这是 TinyML 中非常重要的特征提取方法。8:59 - 11:16 数据采集流程四个类别需要采集类别动作left-right左右up-down上下circle画圆idle静止9:10 - 11:16 数据采集要求每类约200秒数据因为每次采样10秒。所以200秒 ÷ 10秒 ≈ 20个样本采集时的重要原则保持一致性包括握持方式动作速度动作频率否则模型会变难训练。数据质量非常重要如果图像不规律没有重复模式噪声太大就应该删除重新采集。12:43 - 14:33 数据集划分机器学习通常分数据集作用Training训练模型Validation调参Test最终考试推荐比例类型比例Train60~80%Validation10~20%Test10~20%13:08 - 13:42 验证集的作用验证集用于验证模型训练的结果好坏如果模型在验证集上表现不好就调整超参数学习率网络大小Epoch数量等等13:42 - 14:19 为什么测试集不能提前使用因为如果一直根据测试集调参模型会“偷偷记住测试集”导致测试结果失真。14:52 - 17:47 数据集代表性问题极其重要这是机器学习最核心的问题之一。贵宾犬例子如果训练集全是贵宾犬。模型可能学到卷毛垂耳而不是“狗”的本质特征。本质问题模型不会真正“理解”。它只是找统计规律。16:47 - 17:47 糟糕数据集案例问题1. 背景统一模型会误认为黑背景 狗。2. 全是狗头导致看见全身狗反而不会识别。3. 没有卡通图模型无法泛化到插画动画卡通17:35 经典原则垃圾进 垃圾出 (Garbage In, Garbage Out)数据差模型一定差。17:59 - 20:40 数据不平衡问题例子99% 空地1% 有狗模型最终会永远预测“空地”准确率还能有99%。这叫朴素分类器Naive Classifier特点什么都预测成最大类别准确率虚高实际没用19:19 - 19:49 解决方法方法1更多数据永远有效。方法2平衡数据集例如四分类每类约25%20:40 - 21:47 Edge Impulse 自动平衡数据集按钮Rebalance Dataset自动80% Train20% Test22:06 - 23:52 什么是特征Feature定义Feature可测量的属性。例如加速度计X Y Z就是3个特征。23:52 - 24:20 为什么单时刻数据是坏特征因为动作本质是随时间变化。单一时间点无法反映动作过程。25:15 - 25:41 时间窗口思想非常重要解决方案使用时间窗口Window例如2秒数据。25:24 - 25:41 本项目的数据规模采样率62.5Hz2秒62.5×2125每轴125个点。3轴125×3375总输入375维。25:48 - 27:53 深度学习的缺点虽然神经网络可以自动学习特征。但代价算力大内存大数据量需求大推理慢对于嵌入式压力非常大。27:53 - 28:56 手工特征提取RMS均方根对125个点提取一个统计值。优点降低维度保留整体特征减少计算量28:58 - 29:57 FFT 特征提取FFT 的本质把时间变化转换成频率成分为什么FFT适合动作识别因为动作具有频率。例如左右挥动大约1Hz。FFT后会在1Hz出现峰值。本节核心总结Edge Impulse 是什么一个面向嵌入式AI/TinyML的低代码机器学习平台。本节最重要的几个概念概念核心Feature特征Dataset数据集Train/Validation/Test数据划分FFT频域特征Overfitting过拟合Data Balance数据平衡Time Window时间窗口TinyML小型嵌入式AI你现在应该真正理解的重点AI项目真正最重要的东西不是模型。而是数据质量 特征提取很多时候数据集决定上限特征工程决定效果模型只是最后一步这其实是很多AI初学者最容易忽略的地方。