机器学习测试难点——机器学习测试(9)

发表于:2020-10-21 10:21

字体: | 上一篇 | 下一篇 | 我要投稿

 作者:融360 AI 测试团队    来源:51Testing软件测试网原创

分享:
  8.2 机器学习测试难点
  从机器学习的生命周期中不难发现,模型是从数据中抽象出来的用来描述客观世界的数学模型。它基于对历史数据的学习,对新的数据进行预测。目前模型已经被广泛应用于研究或者商业活动中,对研究者或者机构的决策产生重要影响。
  我们希望模型的预测越准确越好。然而影响模型预测能力的因素有很多,比如数据、特征、算法等。实际中很多模型都是由模型开发工程师自己开发并测试的,没有测试工程师对模型的质量进行监督和保障,这样就很难发现其中隐藏的问题。理想情况下,应该由质量保障团队像测试传统软件一样地测试机器学习模型。
图8-3 传统软件与机器学习
图8-4 模型的应用
  如图8-3,8-4所示,机器学习模型与传统软件不同,后者的行为基于不同的输入来预先确定。传统软件中,运算逻辑是一开始就确定好的,给定一个输入便会有相应确定的输出,输出是否正确,我们可以人工根据运算逻辑来检查。而在机器学习中,输入的是数据和数据的标签,输出的是模型,模型用于对新数据进行预测。模型的训练基于大量数据,且训练过程是黑盒形式,无法人工检验其训练效果。
  概括的来说,模型测试的难点集中于以下几点:
  1)数据获取:对模型的训练和验证都需要大量的数据,如何获取到数据是一个最基本的问题。
  2)数据质量:一般来说,数据质量越高,训练出的模型预测效果越好,如何评价和保障数据质量,是模型测试的另一个难点。
  3)特征质量:特征直接影响到了模型的预测效果。特征维数过多,模型可能会过拟合;特征过少,模型可能会欠拟合。
  4)结果验证:由于模型训练是黑盒形式,我们无法确认输入对应输出的逻辑是否准确。
  5)线上服务效果验证:模型的测试不仅仅存在于上线前,通过8.1节我们了解到模型部署上线后,随着时间的变化,模型的预测效果可能会出现偏差。如何实时跟踪这些变化,保证服务正常,也是测试工程师需要关注的重点。
  除此之外,机器学习过程较传统软件来说,问题分析难和抽象度高,且机器学习模型迭代慢、优化慢,因此对测试工程师的技能要求较高。即使对机器学习过程测试有难度,但并不意味着不能做。

查看《机器学习测试入门与实践》全部连载章节
版权声明:51Testing软件测试网获得人民邮电出版社和作者授权连载本书部分章节。
任何个人或单位未获得明确的书面许可,不得对本文内容复制、转载或进行镜像,否则将追究法律责任。
《2023软件测试行业现状调查报告》独家发布~

关注51Testing

联系我们

快捷面板 站点地图 联系我们 广告服务 关于我们 站长统计 发展历程

法律顾问:上海兰迪律师事务所 项棋律师
版权所有 上海博为峰软件技术股份有限公司 Copyright©51testing.com 2003-2024
投诉及意见反馈:webmaster@51testing.com; 业务联系:service@51testing.com 021-64471599-8017

沪ICP备05003035号

沪公网安备 31010102002173号