阅读数:422
已有1条回答
管理员
属于机器学习常见流程的是数据获取、特征提取、模型训练和验证、线下测试、线上测试。
1、数据获取:首先从线上拉取用户真实数据,用现有模型过一遍这些数据得到一些有用的信息作为标注人员的一个参考,加快标注速度;标注完成后,数据入库并解决冲突,冲突即是同一个query,两次标注结果不一致,解决冲突的办法一般是人工check,得到一个更准确的标注;
2、特征抽取:NLP任务一般需要抽取数据的特征,如ngram、词典特征、词向量特征、上游模块的输出等。一般离线和在线均需要特征抽取,所以离在线的这部分代码是共用的,避免在线特征抽取和离线不一致。抽取特征时有个小技巧是把能想到的特征均抽取出来,并保存成文本文件,避免重复的执行特征抽取的步骤,在实验的时候用mask的方式去屏蔽掉那些对模型没用的特征,因为针对神经网络这样的模型,值为0的特征一般不影响最终结果(如tanh/ReLU等,但sigmoid激活层可能会影响)。这样抽取出来的特征的格式一般还不能满足机器学习框架的要求,通过脚本转化成机器学习框架要求的格式即可。
3、模型训练和验证:常用的模型训练和验证步骤是:首先以一个简易的算法开始,快速的进行实现,并在交叉验证集上进行验证;然后画出它的学习曲线,通过学习曲线确定是否更多的数据或者更多的特征会对模型的优化有帮助。接着人为地检测交叉验证集中被错误的进行分类的或者预测的样本的共同特征,从实际入手对模型进行调整,不断调整并验证在交叉验证集上的误差,寻找最优的结果,优化模型。
4、线下测试:指在模型验证有提升后,在测试集上测试模型的性能指标。线下测试可以将模型集成在应用程序里测试,也可以单独测试模型。线下测试的指标一般跟具体的业务需求相关,包括:准确率(accuracy)、精确率(precesion)、召回率(recall)、F1值等。
5、线上测试:是模型上线后的测试,是跟业务紧密相关的一个指标。在实际工作中,一般先将版本上线至一个复制小流量环境,打到这个环境的流量同时也打到线上环境,然后同时取出线上环境的结果和复制小流量环境的结果,抽出两者的diff,人工做gsb(goodbadsame),即针对有diff的case,人工标注小流量好(good),还是线上好(bad),或者两者打平(same),如果good多于bad,说明gsb通过,可以上线供用户体验。这种方法与A/Btesting类似。模型上到线上后,可以通过用户行为反馈模型的好坏,如用户点击、pv等。
猜你喜欢
Redmi Note 12 Turbo怎么取消桌面壁纸轮播
4s店会不会把新车里面的东西换掉(不会换掉)
gt3和watch3的区别
威尔法和埃尔法区别(威尔法和埃尔法哪个好)
小米Civi3怎么解除风险管控
小米平板6Max怎么设置充满电提示音
支付宝没有营业执照可以申请商家码吗
华为Nova11红外遥控怎么设置
华为nova10Z能测血氧吗
拼多多退货寄出地址怎么改
iPhone 14 Pro玩王者荣耀网络不稳定怎么办
花生米鱼饵钓鱼效果好吗,如何泡制花生米鱼饵
最新学习
微信接龙怎么往下接
vivo S15 Pro来电闪光灯提醒设置方法
iPhone 14a2884是什么意思
捷豹轿车的顶级产品 捷豹xj价格多少
苹果关闭辅助人工语音
mp3转换成文字
豆浆可以微波炉加热吗
iPhone 14 Pro是不是曲面屏
瑞风商务车油耗(瑞风商务车油耗高怎么办)
丰田chr和奕泽怎么选?丰田chr和奕泽哪个好?
vivoY100怎么进行数据传输
路虎揽胜运动版油箱多少升 油箱容量104L(百公里油耗11.2L)