SecXOps 关键技术 模型更新
模型更新
定义内涵
本节的模型更新是指在模型训练完成并正式上线后,由运维人员采集并提供新的数据对
原有模型进行再训练、更新参数的过程。
技术背景
随着时间的推移,由于周期性事件、突变等状况的发生,当下的数据集和之前用于训练
模型的数据集分布可能不再一致,这种现象被称为数据分布漂移。由于数据分布漂移现象的
存在,基于过往数据训练的模型在推理上的准确性受到了影响,不再适用于当下数据上的任
务,因此需要对模型进行更新。
在监控到生产数据分布发生变化后,ModelOps 提供两种主流模型更新服务:
● 全量更新。在所有数据上对模型进行重新训练,这种更新方式保障模型学习到更全面
的分布,最大限度提高模型准确率。
● 增量更新 / 微调。在新数据上对模型进行微调,这种更新方式对计算资源的需求更小,
模型的更新速度也更快,但在实际应用场景中,微调无法像全量更新那样提供更好的
模型性能 [22]。
思路方案
和模型推理类似,SecXOps 支持封装模型更新模块,通过模块对应的镜像创建容器,将
](http://github5.com/search?f=p&wd=关键技术)
代码、数据和模型挂载到容器中,进行模型的更新操作。
SecXOps 为模型更新服务开发了一个 python 的 SDK,允许用户通过调用 SDK 中的函数,
将训练过程的评价指标输出,在前端进行可视化的展示,如下图所示
图上的横坐标表示用户选择输出的轮次序号,纵坐标表示输出的指标,这里的指标提供
多种选择,如精确度、召回率等等。通过折线图的对比,用户可以实时观测到更新结果,并
选择在合适的位置停止。用户可以通过模块中封装的相关参数,选择保存模型的方式,保存
下来的模型最终会存储在原有模型的仓库中,作为一个新的版本
参考资料
绿盟SecXOps安全智能分析技术白皮书
友情链接
GB-T 34953.2-2018 信息技术 安全技术匿名