物联网的核心主题之一是如何生成数据。由于其肉眼无法看出这些数据中的规律,因此需要用到专业的工具和专属的算法来找到各个数据之间的关系与规律,从而实现新的商业价值和产生相应的数据价值。在此就引出了机器学习(ML)这个主题。
机器学习、深度学习、神经网络都是我们所听说的大数据和物联网相关的词汇。当前ML也确实是物联网的核心所在。智能对象所收集上来的数据需要分析,并在此基础上进行智能操作判断。而手动执行这些操作因人工所处理的操作非常缓慢且低效使用几乎是不可能的。机器能快速处理信息,并在达到某个特定的条件时做出及时反应。例如,在智能驾驶中的视觉智能自动驾驶通过识别各种路段的各种情况来了解汽车当前所处环境并做出正确判断。但ML并不是新鲜事物,它诞生于20世纪80年代。

机器学习概述

事实上,机器学习是一系列技术中的一部分,这些技术通常被归为人工智能(AI)的范畴。人工智能包括允许计算机系统使用任何技术来对人类的智力行为进行模仿的所有技术,从极其先进的逻辑技术到最简单的if-then-else决策循环。在任何使用规则进行循环的决策计算机都属于这个领域。
在复杂的情况下,静态的规则不能简单地插入程序中,因为这些数据变换快速且没有规律可言。就如在计算机上进行对汉字的拼写,程序可识别单个字的读音音调但是不能识别词组、词义。这就需要进行对句子、词语进行分组后将其与读音所匹配起来。在这个过程中我们称为机器学习。ML关心的是计算机在接收到数据后给出最优解的过程。ML是一个广阔的领域,但目前可将其分为两大类:监督学习和无监督学习。

监督学习
在监督学习的过程中,需要用当前已知的正确答案将其输入到训练程序中。例如,假设我们真正训练一个系统来识别火车道上是否有人或者其他障碍物。配备基础的摄像头与传感器以做到对物体形状的捕捉,并通过数据的方式返回给计算器系统,系统判断该物体是人、动物或是其他事物。使用监督学习这种技术,将成千上万的物品打上自己的专属标签。这就形成了所谓的训练集。其中算法用户确定各种相同标签的同异。并通过分析计算出一个偏差,以确定新图像是否与相对应标签中的物品为同一种类,这个过程叫做分类。
经过训练后,机器应该能轻松识别物体的形状,并可进行部署。在部署时对成果进行验证,以考量程序是否能达到可接受的范围内,若没有达到,则需要更多的训练。

无监督学习
在某些情况下,监督学习并不是机器帮助人类做出决策的最优解。比如在众多出厂设备中进行对设备偏差的检测,工作量太大,采用人工的方式太过于不切实际,那么我们就可以采用机器记录的方式来让其与元素之间的关系进行组合关联。然后再将这些数据进行分组并找到平均值,且使用函数来分析。
在对设备的“好”与“坏”的区分中因为没有事先设计好答案,所以需要对结果进行手动评估以保证其正确性。这是一个群体的行为变化,计算机可以从中学习到一些不同的东西。当然,温度监控太过简单。在大多数的情况下,参数是多维的。下图显示了这种分组和偏差的识别逻辑示例,图中描绘了了3个参数并发现了4组不同的组合。
fb092d34f3254be79f1e856e36a91765~noop.image?_iz=58558&from=article.jpg
聚类和偏差检测实例


神经网络
处理多个维度的数据需要大量的计算能力,因为很难确定要输入的参数,以及哪些组合变量会引发警告。监督学习需要在进行大量的训练后才能产生效果;这种需要大量人力来进行分类的监督学习使得神经网络的路线发生偏移,监督学习渐渐被无监督学习所取代,因为训练机器的成本通常是被认为昂贵而复杂的。
直至21世纪以来,计算机硬件技术发展迅速,计算机性能变得廉价,这使得神经网络进入大众视野,与此同时算法的效率也取得巨大的进步。
以购物网站推荐算法为例,用户在使用购物网站时通过浏览自己想要的商品从而留下行为数据。这些行为数据通过算法分析得出用户的年龄区间、职业、性别、群体、爱好等,将用户作为画像保存到数据库,之后通过这个画像推荐给用户商品,帮助用户找到满意的物品。这就是神经网络中的算法发挥作用的情景之一。其原理就是模拟人大脑的工作发放。当一个看到另一个人时大脑就会给这个人打上各种各样的标签(印象)并随着接触的深入然后改变对应的标签,最新形成这是一个什么样的人,做什么事情他能接受/不接受。并将其反应记录下来,从而基于常识做出判断。
神经网络之所以效率高,是因为其网络中的每一个单元处理简单的问题,速度相当快,如图1.2所示。
d2ae3efb2b1841ec9f4069e18036de26~noop.image?_iz=58558&from=article.jpg
视觉神经网络如何区分动物

从某种意义上来说,神经网络依赖于权重思想。将信息分为几个关键的部分,将每一组的组成部分进行权重配比。其权重越高则决定其相似度越高(例如:没有明显的直线+脸+微笑=人类这权重种组合)。
当一个层的结果被另外一层所输出时,我们称这个过程为深度学习。深度学习的优点在于其拥有更多判断标准且结果相对上一层更加贴近现实。在每一层中数据都可以被格式化,以便于在送往下一层时数据更加精准。