1、简介
基于监督学习的神经网络算法需要大量数据作为输入,模型完全由数据驱动,数据质量是算法模型有效的必要条件。如何高效的采集到数据,以及正确的标注及分析是极其重要的,如果第一步有问题,后续的所有工作都是徒劳。
本文将介绍 AFCI 数据采集板,AFCI 上位机数据采集工具,和简单分析数据质量的一些方法,以及需要注意的一些事项。
2、数据采集与清洗
2.1. 打开串口
单击①找到相应的串口号,并通过②选择合适的波特率,点击③打开串口。
3、数据预处理
采集好的数据文件格式为 csv,数据预处理模块会根据一定的规则将这些 csv 文件重新整理成固定的格式,供后续模型训练使用。
4、模型训练和验证
4.1. 训练模型
在创建好数据集后,可以使用训练模块进行训练。
5、通讯协议
在 Note 界面下,可以查阅工具串口通讯协议和 Release 信息。
6、总结
数据采集和标注是做好神经网络的第一步,需要格外仔细,不然其中如果有脏数据混入,通过肉眼是十分困难加以清理的,脏数据过多会导致模型泛化能力变差。
数据清理的一个办法是用模型对所有数据进行验证,然后挑选出验证结果失败的数据,Plot 出来后通过肉眼分辨剔除,其工作量是非常巨大和繁琐的,最好的办法是在数据收集的过程中就保证数据的有效性。
对于数据流的处理上位机必须和固件保持一致,如果有问题,需要将两边的数据处理流dump 出来进行比较和调试。
另外,训练过程中使用 GPU 将明显提升训练速度,可以参考上位机的 Readme 安装cuda 库。