用红外线技术,记录障碍物与摄像头的距离,如果人类站在客厅里的摄像头前,它会检测到它与人类身体的距离比后侧墙壁更近,并且还能确定人类身体的大致轮廓。
但人有男女老少、高矮胖瘦,特别是在玩游戏时还可能会摆出一些奇形怪状的姿势,这个数据在沈教授研究所获得的,所以该算法需要对人体的各处特定部位进行定位和识别。
苹果科技公司的算法,可以达到对静态图像的识别,动态图像识别需要更强大的分析处理能力,强行为会导致游戏卡顿、延迟,不过沈教授的研究所可是让这方面的研究得到了很好发展。
可能很多人类还是想不到,算法是如何确定那些特定身体部位,所对应的图像中的像素点呢?
事实上可通过一个简单的问题算法来实现,类似于“猜单词游戏”。第1个问题是:这个单词位于词典的前半部分还是后半部分?答案如果是“前半部分”,词典此时被一分为二。
则开始第2个问题:这些字母位于“前半部分”的前半部还是后半部?此时词典被分为几个部分。
依此类推逐渐缩小范围。当提问到第几个问题之后,词典将会被划分为几个不同的区域,总数达到100多万时,远超过牛津词典中收录的词汇数目约30万。
如果我们想知道某一像素点属于身体的哪一部分,该怎样设计问题算法呢?
在过去我们都是通过苦思冥想或突发的灵感去设计一系列巧妙的问题。
那是否能够通过计算机编程的手段,通过大量的数据交互与训练,选择、甄别出更好、更高效的问题集合呢?答案是“能”,它就是“机器学习”。
机器学习会从一些我们认为可能解决问题的候选问题开始,所以不算是零**学习。
学习的过程就是将最初的想法逐渐优化,从而形成有效的解决方案。那么什么样的问题可以帮助大多数机械区分手臂和头。
算法自己找到了最优的问题集合,但程序员并不真正清楚它是如何得到这样的结果的。
他们可以查看决策树中任何一个结点及其前后结点上所询问的问题,但树中的问题超过百万个,每个问题又略有不同,所以很难采用逆向工程法得出算法具体是怎样解决问题的。
试想一下,数量超过百万的问题如果全靠人工编程实现,即使再厉害、再勇敢的程序员也会闻之色变、望而生畏,然后望风而逃。
但计算机却擅长做这种工作,这种量化的工作也是
本章未完,请点击下一页继续阅读!