TinyML与传统ML、边缘AI的区别与联系从一次“模型跑死”的现场说起上周帮一个做智能门锁的团队调模型,他们用MobileNetV2在STM32F4上做人脸检测。板子一上电,串口疯狂打印“HardFault”,复位后连RTOS都起不来。我一看代码,好家伙,直接把一个4MB的TFLite模型塞进了256KB的Flash里——这就像把一头大象塞进冰箱,冰箱门都关不上。这种“模型跑死”的现场,我见过不下二十次。根源在于很多人把TinyML、传统ML和边缘AI混为一谈,以为“在边缘跑个模型”就是TinyML。今天这篇笔记,咱们就从底层硬件和实际部署的角度,把这三个概念掰扯清楚。传统ML:活在服务器里的“温室花朵”传统机器学习,说白了就是“数据送过来,模型算完,结果返回去”。你训练一个随机森林分类器,跑在8核Xeon上,内存32GB,训练完直接序列化成pickle文件,丢到Flask API里。用户发个请求,服务器算完,返回JSON。这种模式有几个隐含前提:模型体积无所谓,几百MB甚至几个GB都行推理功耗无所谓,服务器电源是220V交流电延迟容忍度高,几百毫秒甚至几秒都行网络连接稳定,数据能上传,结果能下载这里踩过坑:我见过有人把训练好的XGBoost模型直接往树莓派上搬,结果发现加载模型就要5秒,推理一次300ms。树莓派还算好的,换成ESP32直接内存溢出。传统ML的假设是“算力无