美文网首页
更好的理解机器学习

更好的理解机器学习

作者: zerowl | 来源:发表于2019-05-29 18:03 被阅读0次
    人工智能、机器学习与深度学习关系
    人工智能+机器学习+深度学习关系图.png
    人工智能的简洁定义:

      努力将通常由人类完成的智力任务自动化。因此,人工智能是一个综合性的领域,不仅包括机器学习与深度学习,还包括更多不涉及学习的方法。

    机器学习:
    技术定义

      在预先定义好的可能性空间中,利用反馈信号的指引来寻找输入数据的有用表示。

    机器学习概念来源:

      机器学习的概念来自于图灵的这个问题:对于计算机而言,除了“我们命令它做的任何事情”之外,它能否自我学习执行特定任务的方法?计算机能否让我们大吃一惊?如果没有程序员精心编写的数据处理规则,计算机能否通过观察数据自动学会这些规则?

      图灵的这个问题引出了一种新的编程范式。在经典的程序设计(即符号主义人工智能的范式)中,人们输入的是规则(即程序)和需要根据这些规则进行处理的数据,系统输出的是答案(如下图)。利用机器学习,人们输入的是数据和从这些数据中预期得到的答案,系统输出的是规则。这些规则随后可应用于新的数据,并使计算机自主生成答案。


    机器学习一种新的编程范式.png

      机器学习系统是训练出来的,而不是明确地用程序编写出来的。将与某个任务相关的许多示例输入机器学习系统,它会在这些示例中找到统计结构,从而最终找到规则将任务自动化。

    机器学习三要素:
    • 输入数据点。例如,你的任务是语音识别,那么这些数据点可能是记录人们说话的声音文件。如果你的任务是为图像添加标签,那么这些数据点可能是图像。
    • 预期输出的示例。对于语音识别任务来说,这些示例可能是人们根据声音文件整理生成的文本。对于图像标记任务来说,预期输出可能是“狗”“猫”之类的标签。
    • 衡量算法效果好坏的方法。这一衡量方法是为了计算算法的当前输出与预期输出的差距。衡量结果是一种反馈信号,用于调节算法的工作方式。这个调节步骤就是我们所说的学习。
    例子

      机器学习模型都是为输入数据寻找合适的表示——对数据进行变换,使其更适合手头的任务(比如分类任务)。

      假设我们想要开发一个算法,输入一个点的坐标 (x, y),就能够判断这个点是黑色还是白色。这里我们需要的是一种新的数据表示,可以明确区分白点与黑点。可用的方法有很多,这里用的是坐标变换。


    坐标变换.png

      在这个新的坐标系中,点的坐标可以看作数据的一种新的表示。这种表示很棒!利用这种新的表示,用一条简单的规则就可以描述黑 / 白分类问题:“x>0 的是黑点”或“x<0 的是白点”。这种新的表示基本上解决了该分类问题。

      在这个例子中,我们人为定义了坐标变换。但是,如果我们尝试系统性地搜索各种可能的坐标变换,并用正确分类的点所占百分比作为反馈信号,那么我们做的就是机器学习。机器学习中的学习指的是,寻找更好数据表示的自动搜索过程。

    总结

      所有机器学习算法都包括自动寻找这样一种变换:这种变换可以根据任务将数据转化为更加有用的表示。这些操作可能是前面提到的坐标变换,也可能是线性投影(可能会破坏信息)、平移、非线性操作(比如“选择所有 x>0 的点”),等等。

    相关文章

      网友评论

          本文标题:更好的理解机器学习

          本文链接:https://www.haomeiwen.com/subject/xerytctx.html