距离上次发文已经有两年之久,大家不会以为我退网了吧,因为这两年我搞人工智能开发去了,功能为人工智能舌象分析,前阵子已经上线,这次有空给大家分享下我开发人工智能软件的过程,都是一把辛酸泪。
大体流程如下:
1、收集舌象图片
2、标注特征和训练
3、开发后端接口
4、开发小程序端
5、总结
1、收集舌象图片
此次需要支持的特征有90多个,按照每个特征至少200张图片算,至少训练的图片需要18000张,那上哪去找这么多舌象图片呢?
当然是通过网络爬取,用到的工具是我之前分享过的PHP爬虫那篇文章,有兴趣的可以去看看那篇文章,文章地址在下方:
至于去哪里下载,还用我说吗,直接百度。
2、标注特征和训练
拿到数据后,需要一张张的去标注特征,每个特征选至少两百张图,标注工具用labimg或者其他开源的工具即可,我用的模型是YOLO ,所以选择labimg标注工具,这里是最痛苦的事情,纯体力活,不知道消耗了多少眼细胞,假设每张图片标注3秒,18000张就需要54000秒,这还是快的,反正我一个标注了三个月,因为中途需要不停的休息,眼睛受不了。想干这行的,我劝你好自为之^_^。
标注完后就需要开始训练,训练用的是darknet,训练环境的搭建大家自己网上搜索即可,很多教程,英文好的可以参考GitHub上的文章,我就是按照GitHub上的说明搭建起来的。
官方建议每个特征的训练迭代次数在1000次以上,我试了,在2000次就可以了,准确率有90%以上。这个过程只有漫长的等待,看数据量和GPU的计算速度,我的跑一天就训练完毕了,avg loss 在1以下。
3、开发后端接口
训练完后就需要接入高级开发语言,开发接口给前端调用,接口只需要接收前端上传的图片和相关的参数即可,我用Java写的接口,具体怎么调用训练完成后的模型,可以参考我在GitHub开源的代码。
SpingBoot、OpenCV、yolo开发人工智能小程序经验分享
4、开发小程序端
小程序AI看舌很早之前就发布过,那个时候只能检测体质,这次可以检测常见疾病的辨证和加入了伤寒论的六经辨证,没有UI设计的,小程序端UI设计可以 用在线的模板或者通过AI生成,框架用微信小程序的框架即可,我用的colorUI,看个人喜好,主要功能就是上传图片 ,展示结果。我们小程序的界面长这样,开发人员的审美不要喷,^_^
5、总结
整个过程由我一个人开发完成,耗时半年之久,都是慢慢熬过来的,想入这行的朋友请三思。
网友评论