前:很久没有推送了,之前把项目代码往CSDN放了一部分,但是由于项目未完成的原因也不好公开。也许项目完成后可以整理到公众号或公开链接,这段时间就推送一些有趣或科普向的东西吧。
随着夏日促销季的到来,Steam上的一批游戏已经被贴上折扣的标签。如果你在搜索框中键入“机器学习”的关键字,会发现这样一款游戏。
它的介绍是这样的:
在全部评测中也获得了“特别好评”的评价。
甚至有人的评论是:
“真·外行 从0开始 机器学习!”
但这真的是一款关于机器学习的游戏吗?
先来看看游戏的内容:
游戏界面大概是图示这样,右边存放着可供选择的模块接口(可供调用的模块或之前制作的模块),当需要完成某项任务时,可以从右侧拖拽需要的模块,把它放置到主屏合适的位置并与输入、输出端(或其他“隐藏层”,如果需要用术语的话)连线,来达到任务要求。每个模块上还标有耗时、样本数和精确度之类的指示,以供游戏者判断整个模型是否能达到虚拟客户提出的要求。
那么这样的游戏,到底跟机器学习有什么关系呢?
在笔者看来,目前的版本只是一款套上了机器学习外壳的益智游戏。
举个栗子,在入门机器学习的时候,会接触到一个最简单的ANN模型——感知机。它只有输入和输出的特征,没有隐藏层。
随着学习的进行,学习者会开始明白,简单的感知机是如何进行修正,从而获得想要的输出结果。
这个修正的过程,才是机器学习在“学习”的部分。
但通过这个游戏,从零入门,能得到的是什么呢?
大概是“如何排列具有特定功能的模型,让我完成需要的任务”之类的事情吧。
不可否认,这样的任务确实是编程过程中的一部分,但这样的任务并没有涉及到机器学习真正重要的部分,“学习”。另一方面,制作者当然可以把这样的过程联系到特定的算法上,可仍会出现这样的问题:
第一:重点转移,玩家想知道什么是机器学习,而游戏教给玩家的是怎样布置传感器。
第二:学习成本,玩家会用完成游戏的时间了解到一个比想要了解的概念更加简单和基础的概念,这种行为将变得无效。
这样的结果,还不如直接阅读定义来的痛快。
所以,用同样的时间去阅读几篇关于机器学习的科普文章,收获和理解都应当会远远超出从游戏中得到的收益。
如果把这个游戏的名字改成“如何玩转传感器”,那大概会更适合。
领取专属 10元无门槛券
私享最新 技术干货