最近发现了一个全功能AI开发平台,叫做BML(Baidu Machine Learning),这是一个面向企业和个人开发者的机器学习集成开发环境,为经典机器学习和深度学习提供了从数据处理、模型训练、模型管理到模型推理的全生命周期管理服务。
BML全功能AI开发平台官网链接:https://ai.baidu.com/bml/
好不好用要用了才知道,最近刚好有一个项目要用到文本情感倾向性分析,于是我决定用BML平台开发一个情感分析的模型。具体开发流程如下:
一、新建数据集
数据在人工智能项目开发的过程中起着至关重要的作用,数据的好坏决定着最终的模型效果。
这里我使用的是AI Studio上的公开数据集:https://aistudio.baidu.com/aistudio/datasetdetail/12605
在BML平台上点击“创建数据集”,填写数据集名称,并根据自己的场景选择一下数据类型以及标注类型:
点击“完成”后,会在下方看到刚刚新建的数据集:
点击“导入”,将刚刚下载下来的数据集导进来(这个数据是已经标注好的,但是格式与BML平台需要的格式不太一样,因此我把标注去掉了,使用BML的自动标注功能)
我导入的数据格式是这样的:
一共有9655条数据。
导入后,点击“确认并返回”
导入数据需要一定的时间,导入完成后还会给你的手机发一条短信,这个功能很贴心!
导入完成后,点击“标注”,如果数据量较大,可以选择“多人标注”:
进入标注界面后,点击“添加标签”:
标注过程:
标注数据是一个漫长的过程,不过BML平台有智能标注功能,只需要少量的已标注数据,就能帮你自动把其余数据标注完,点击“开启智能标注”:
标注完成后,生成了一个新版本:
数据变少的原因是平台把重复数据给去除了。
二、新建一个项目
首先打开BML管理页面,在这个界面中可以看到当前支持的深度学习任务类型,也可在左侧目录选择不同深度学习方向。
在左侧目录中找到“自然语言处理模型”,点击“文本分类-单文本单标签”,写个名称加段描述就能新建一个项目了。
点击“新建”后,可以在下方找到刚刚创建的项目:
点击“新建任务”可管理本项目的“基本信息”、“配置任务类型”、“添加数据”、“配置网络”等。
三、导入数据集
将第一步创建的数据集导入:
直接选择即可。
四、配置网络
在配置网络的过程中,可以选择使用预训练模型ERNIE2.0对应的三个版本:ERNIE2.0_Base、ERNIE2.0_Large和ERNIE2.0_Tiny,我这里使用性能均衡的预训练模型:
平台提供了脚本编辑的工具,点击“立即编辑”进行脚本编辑:
一般可以在里面配置一些参数,又能力的开发者可以尝试修改里面的网络。
五、配置资源
训练模型需要租用服务器,BML平台直接提供了一个配置好的环境,不需要自己买服务器,然后自己配置环境了,可以说是非常地方便!
这里根据自己的需求选择即可。
点击“提交训练任务”就可以开始训练啦:
训练过程中还能看到训练日志:
并且能可视化地展示出来:
训练结束后还能出一份评估报告:
有一说一,这平台我可太喜欢啦!
六、模型校验
点击“立即发布”:
发布后就可以测试模型了:
预测分类中,0、1、2分别代表消极、积极、中性,输入一段话:“小小度,帮我打开电视可以吗?谢谢你~”,输出结果为积极,可以看到效果还是非常不错的!
七、模型部署
在左侧公有云部署中找到“在线部署”,在部署界面选择我们刚刚发布的模型后,点击“开始部署”:
部署需要一段时间:
部署完成后:
此时就可以通过调用api来使用这个情感分析模型了!
八、总结
从模型开发的时间上看,还是很快的,我平时通过纯代码的方式开发模型至少需要半天的时间,但使用BML平台,只需要大概2~3个小时的时间就能搞定,如果熟练操作的话,应该还能更快。
另一方面,从易用性上,其实只要把数据准备好,剩下的都是手动配置的事了,就算你不懂Python,不懂人工智能也完全可以开发出一套模型,因此,对于人工智能小白来说是非常友好的!
总的来说,如果要我给BML平台打分的话,满分10分我打9分,还有1分留着,怕他们太骄傲了(手动狗头)