测者的测试技术手册:AI的自动化单元测试

谈新技术:AI的自动化单元测试


转载于:https://juejin.im/post/5c10a282f265da616f6fd230

⼈⼯智能测试⽅法--探索   什么是⼈⼯智能   再讲如何 ⼈⼯智能产品之前,我觉得我要先跟不熟悉⼈⼯智能的同学们解释⼀下什么是⼈⼯智能。毕竟想要测试⼀个东西,就要先了解它么。⽤⼀句话来 概括现阶段的⼈⼯智能就是:⼈⼯智能=⼤数据+机器学习。   我理解的现阶段的⼈⼯智能是使⽤机器学习算法在⼤量的历史数据下进⾏训练,从历史数据中找到⼀定的规律并对未来做出的预⾏为。这么说有点拗⼝。 我举个例⼦,我们曾经给银⾏做过反欺诈项⽬。 以前在银⾏⾥有⼀群专家,他们的 就是根据经验向系统中输⼊⼀些规则。例如某⼀张卡在⼀个城市有了⼀笔交 易,之后1⼩时内在另⼀个城市⼜有了⼀笔交易。这些专家根据以前的经验判断这种情况是有盗刷的风险的。他们在系统中输⼊了⼏千条这样的规则,组成了⼀ 个专家系统。 这个专家系统是建⽴在⼈类对过往的数据所总结出的经验下建⽴的。 后来我们引⼊了机器学习算法,对过往所有的历史数据进⾏训练,最后在25 亿个特征中抽取出8000万条有效特征。⼤家可以把这些特征就暂且当成是专家系统中的规则。8000万对不到1万,效果是可以预想的。当时对第⼀版模型上线 后的数据做统计,反欺诈效果提升了7倍, 这就是⼆分类算法典型的业务场景。   为什么叫机器学习呢,因为它给⼈⼀种感觉,机器能像⼈类⼀样从过去的数据中学习到经验,只不过机器的能⼒更强。 如果想再稍微深究⼀下机器学习训 练出来的模型到底是什么,那⼤家可以暂且理解为⼀个⼆分类的模型主要是就是⼀个key,value的 。key就是在数据中抽取出来的特征,value就是这个特征的 权重。 当我们想要预⼀个⽤户的⾏为的时候,就会从⽤户的数据中提取特征并在模型中查找对应的权重。 最后根据这些特征的权重算出⼀个分,也可以说是 ⼀个概率。 如果⼤家看过最强⼤脑这个节⽬的话。应该记得第⼀次⼈机⼤战项⽬是⼈脸识别,第三回合的时候机器给出了两个答案。因为当时做⼈脸识别项⽬ 的志愿者中有⼀对双胞胎。所以机器计算出的这两个⼈的概率只差了0.1%,最后为了谨慎起见机器输出两个答案出来。以⾄于吴恩达先⽣也很纠结到底该选哪 ⼀个答案。   再之后的⼈机对战项⽬⾥我们也能看到虽然⼩度⼀路⾼歌,毫⽆败绩。但是其中是有选错过⼏次的。所以⼤家可以看到我们得到的答案其实是⼀个概率,是 ⼀个根据以往的数据进⾏总结并作出预的⼀个⾏为。并不是100%准确的。即便是阿尔法狗当初也是输过⼀局的。所以其实我们测试的痛点也就来了,你怎么 测试⼀个概率呢。 接下来我们慢慢的来说这个问题。   这个图就是⼀个⼈⼯智能服务的略缩图。 在历史数据上训练出模型,并发布⼀个预服务,这个预服务可能就是⼀个http的接⼝。 然后新的数据过来以 后,根据模型算出⼀个预值。经过刚才的说明,我们看到数据是⼈⼯智能的根本。拥有的数据越多,越丰富,越真实,那么训练出的模型效果越好。    测试思路          训练集与测试集对⽐    数据测试   根据我们之前对⼈⼯智能的定义,我们发现数据是⼈⼯智能的根据。 保证数据的正确定是⾮常必要的。 ⽽且⼏乎所有的机器学习算法对数据的容错能⼒都 很强,即便数据稍有偏差,它们也能通过⼀次⼀次的迭代和对⽐来减少误差。 所以即便我们的数据有⼀点问题最后得出的模型效果可能还不差, 但是这个时候 我们不能认为模型就没问题了。 因为很可能在某些特定场景下就会出现雪崩效应。   再举个例⼦。当初阿尔法狗与李世⽯⼀战成名。如果说前三盘的结果令各路专家⼤跌眼镜的话。那第四盘可能是让所有⼈都⼤跌眼镜了。阿尔法狗连出昏 招,⼏乎是将这⼀局拱⼿相让。那阿尔法狗出bug了?DeepMind团队说,这是⼀个系统问题。那我们来看看这个系统到底有什么问题。根据当时公布出来的数 据我们发现阿尔法狗的养成⽅法是这样的。    阿尔法狗如何养成   1.整理过去⼈类对弈的80多万盘棋局   2.拿1的棋谱,训练⼀只狗狗,能够预⼈类下⼀步会下在哪⾥   3.拿2得到的狗狗,每天⾃⼰和⾃⼰下100万盘棋   4.拿1和3的棋谱,再训练⼀只狗狗,这就是阿尔法狗。   阿尔法狗是基于1亿+盘机器棋局和80万⼈类棋局训练出来的狗狗。问题出在哪?我们看到,训练阿尔法狗所⽤的棋谱,只有80万是⼈类棋局,总数上亿的 棋局是机器对弈的。它下的每⼀步,都是将局⾯导向历史上(也就是80万⼈类棋局和1亿⾃⼰对弈的棋局)胜率最⼤的局⾯。 问题就恰恰出在这⾥,80万和1亿。 相差甚多。那么阿尔法狗选择的所谓胜率最⼤,⼀定是赢⾃⼰的概率最⼤,⽽不是赢⼈类的概率最⼤。这样的标准在顺丰棋尚且不容易出问题,⼀旦遇到逆风 局,它的选择就变成了,选择对⼿犯错概率最⼤的棋,⽽这个对⼿恰恰就是它⾃⼰。这就是为什么当初阿尔法狗在逆风局中下出⼀些匪夷所思的棋。当然这些都 只是⾏业内的⼈的
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值