加入收藏 | 设为首页 | 会员中心 | 我要投稿 西双版纳站长网 (https://www.0691zz.com.cn/)- 数据计算、IT业界、服务器、教程、云日志!
当前位置: 首页 > 运营中心 > 建站资源 > 经验 > 正文

机器学习过程的三个坑,看看你踩过哪一个

发布时间:2019-08-12 18:11:18 所属栏目:经验 来源:大数据文摘
导读:大数据文摘出品 编译:Vicky、曹培信 几十年来,机器学习领域一直饱受坦克问题(tank problem)的折磨。 故事发生在上个世纪60年代(此研究已知的最早文献,此处感谢软件工程师Jeff Kaufman),事件的细节已湮没在时间的迷雾当中,不过故事大概是这样子的: 研
副标题[/!--empirenews.page--]

机器学习过程的三个坑,看看你踩过哪一个

大数据文摘出品

编译:Vicky、曹培信

几十年来,机器学习领域一直饱受“坦克问题(tank problem)”的折磨。

故事发生在上个世纪60年代(此研究已知的最早文献,此处感谢软件工程师Jeff Kaufman),事件的细节已湮没在时间的迷雾当中,不过故事大概是这样子的:

研究者们编写了个算法来从军方提供的照片中识别坦克。该模型成功地在测试图中找到了坦克,但随后使用真实的照片时却失败了。

原因是什么呢?口口相传的具体细节各不相同,但算法用来测试的图片包含了其他信息,比如在晨光中或从云层下显现的坦克影响了机器判断是一个重要的原因。所以说,并不是坦克的存在决定了算法,其它因素也很重要。

类似的情况在当今也引起了反省。许多机器学习的论文未能完成足够多的实验,审查标准不够一致,并且行业内激烈的竞争也鼓励一些研究人员,一旦得到了他们想要的答案就偷工减料跳过检查。所以在无数领域的科学家正急于用机器学习解决问题时,谷歌的Patrick Riley却呼吁大家在研究中制定更加明确的标准。

不可否认的是机器学习正在推动着整个科学界的发展,尤其是它发现及预测的模式正在从各个领域辅助研究者们,从搜寻分子制造的新方法和在试验中发现微小信号,到改进医疗诊断与揭示基本粒子,皆有其身影。

然而,机器学习工具也会变成“智障”,比如假正例、死胡同与各种错误。而且由于许多算法都太过复杂,以至于无法检查所有参数或者准确了解输入的方式,随着这些算法被更加广泛地应用,错误的结论和科学成果所引发的风险将会呈螺旋式上升。

这些问题并不是一朝一夕的事,所以预测每次分析中出现的所有问题或困境也是不可能的,但至少,那些在自己的领域使用机器学习的研究者们,应该去熟悉一些常见的陷阱,以及如何检测或避免那些陷阱。

为了说明这点,这里列举三个Google Accelerate Science团队所面临并且克服的机器学习的三大问题。

机器学习三大陷阱

1. 不适当地拆分数据

在建模时,机器学习从业者通常将数据分成训练集和测试集,用训练集训练模型,用测试集评估模型的性能。研究员通常会随机拆分数据,但是现实生活里真正随机的数据少之又少。他们可能包含了时间趋势,例如收集数据方法的变化,或是收集信息的各种选择。

例如,这种历史模式隐藏在分子数据集中,而机器学习算法正在对这些数据集进行虚拟筛选,以寻找候选药物。这里的挑战在于预测一个分子如何会被有效地被人体吸收或减少炎症。筛选从有关分子的数据开始,这些分子具有或不具有预期的效果,但是收集数据的背景或许会与机器学习模型的使用方式有所不同。

一个模型可能是用一组公开可用的分子数据集训练的,然后用于测试另一组专有的分子数据集。而当有希望的候选项被检测和丢弃时,化学家的关注点往往从某些分子群转移到另一些分子群。 因此,研究人员经常高估模型在实践中的表现。 这会导致期望值的膨胀,并且在选择不适合的分子上浪费时间和金钱。 许多模型制造者都落入这个陷阱。

换句话说,你要解决的问题才应该影响你如何分割数据。为了预测向一个分子中添加两个原子的效果,测试集中的每个分子在训练集中应该至少存在两个原子的差别。 如果你想对不同的化学分子有更好的预测,测试集中的每个分子都应该不同于训练集中的任何东西。 分割数据的“正确”方法可能并不显眼,但是仔细考虑和尝试几种方法或有意想不到的收获。

2. 隐藏变量

在一个理想的实验当中,研究者只改变他们感兴趣的变量,并让其他变量保持不变,而这种控制在现实当中几乎是不可能的。仪器的精确度会随着时间而改变,试剂的批次会有所不同,一个实验条件会先于另一个进行表现出来,甚至天气都有可能影响结果。在机器学习模型中,这些不受控制的变量都将是有害无益的。

举个例子,谷歌的一个团队一直在加利福尼亚州的福特·希尔兰赫 (Foothill Ranch, California) 的核聚变初创公司TAE Technologies工作,进行优化生产高能等离子体的实验。他们在这里建了模型来试图理解等离子机的设备装置。这里存在着上百个从“何时接通电极”到“设置在磁体上的电压为多少”等控制参数,然后记录了一系列包括温度和光谱在内的测量值。

他们历经数月,从数千次运行的等离子机中提取了数据,其中的设定会随着我们的设备调整、部件磨损和多种尝试有所变化。当我们得到了一个在给定的设置下,无论等离子能量是否会变高,预测结果都很不错的模型时,大家都很高兴,不过很快就打脸了。

当他们以实验时间为唯一输入而不是机器的所有设置来训练模型,也得到了相似的预测效果。为什么?因为模型锁定的就是时间趋势,而不是物理现象。也就是说,机器运转良好的时间段和不良的时间段分别出现,所以,从实验完成的时间可以看出等离子体是否是高能量的。此外,通过控制参数的设置可以粗略预测实验何时进行ーー这些参数的变化也存在时间趋势。也就是说,除了时间规律,模型什么物理规律都没管。

隐藏变量也会来源于实验布局。像我们在解读显微镜图像方面与许多机构合作,其中包括纽约市的纽约干细胞基金会研究所。这些图像包括了在培养皿上进行的生物实验,通常是一些包含细胞和液体的网格孔。我们的目标是发现拥有某些特征的孔,比如化学处理后细胞外观的变化。但是生物变异意味着每个培养皿本身总是会看起来有稍许不同,并且单个培养皿也可能存有差异。如果外围孔有更多液体蒸发,或者培养皿有被倾斜,那边缘看起来通常会与中心不一样。

机器学习算法能轻而易举地注意到这些变化。比如说模型可能刚辨认出了哪些孔处在培养皿的边缘 ,一种检查模型的简易方法就是让模型去预测其他方面,如培养皿的位置、哪一块培养皿,或者图片来源的批次。如果算法能做到这一点,那你最好对结果持怀疑态度。

最重要的一点是,要使用多个模型来检测那些意外变量与隐藏变量。可以用一个模型侧重你关心的问题,比如离子是高能还是低能,细胞是否健康,其他模型则用来清除干扰因子。如果后者结果很强,那么请将数据标准化,做些进一步的实验,或者调整一下结论。

3. 曲解目标

(编辑:西双版纳站长网)

【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容!

热点阅读