先检查了几个极端情况。如果速度差异非常大,相互作用再强一点也未必能让所有人同步;如果分布有两个明显群体,还可能先形成两拨不同节奏。她最终没有写一个漂亮的“仍成立”,而是写出了成立需要的范围,并指出超出范围以后可能出现其他集体状态。
考试结束以后,江遥比上午更累。不是因为题目数量多,而是她能明显感到自己脑子里同时存在两种要求:一边不断寻找更好的表示,一边又不断质问这个表示凭什么成立。以前前一种声音远大于后一种,现在两者终于开始像真正的对手。
与此同时,原既白正在县城做第一次由程序主动生成的模型测试。
叶老师前几天要求他们把“动态测试”说清楚,不能只写一句根据模型调整。原既白和宋弈讨论了整整两个晚上,最后把目标缩得非常具体:不再由人提前列一长串“可能出问题的变化”,而是让程序自己反复修改图片中人认为不重要的部分,看看什么时候模型会突然改答案。主体尽量不动,先换背景,再轻微改变压缩、亮度、边缘和局部纹理;如果某个方向特别容易让模型摇摆,就继续沿着那个方向试。
宋弈听完设计以后说:“不就是让机器专门找机器麻烦?”
原既白想了想:“差不多。”
这句话比他们报告里任何专业描述都准确。以前的测试像老师自己出十道题,看看学生会不会;现在他们想做的是一个会观察学生薄弱处、然后不断换方式追问的考官。第一次跑起来以后效果却很差,程序很快学会了一种最没价值的办法:把图片改得越来越难看,最后连人都快认不出主体,模型当然会犯错。宋弈看着屏幕上一只被扭曲得像坏掉塑料袋的豆子,笑得趴在桌上:“恭喜,证明了把东西毁掉以后模型认不出来。”
原既白自己也笑了。
问题却很真实。如果只告诉程序“找一个能让模型出错的变化”,它会选择最容易的路,根本不在乎这个变化对人来说有没有意义。这和他们此前机器学习任务里的问题几乎一模一样:目标写成什么,系统就会努力去赢什么,而不是自动理解设计者心里真正想要什么。
他们不得不加入第二条约束:变化以后,人仍然应该认为这是同一个对象。可“人仍然认为一样”又没法直接写成一句程序。宋弈建议用图像相似度,原既白试了以后发现仍然会漏掉很多情况;两张像素差别很大的图片,人可能一眼认为是同一颗豆子,只是背景不同,而两张像素很接近的图片,也可能恰好把一个关键结构改掉。
本章未完,请点击下一页继续阅读!