• 白话机器学习


    在机器学习里面,有一大类叫做神经网络。神经网络里面,大名鼎鼎的有卷积神经网络CNN,循环神经网络RNN。其中,卷积神经网络在图形图像处理方面,有着很出色的成果。例如识别图像的功能,通过基于CNN的深度学习技术,现在机器已经可以识别出很多东西了。下面这个图是电视剧《三生三世 十里桃花》的剧照,使用Tensorflow和ImageNet,机器告诉我们,这张图是 kimono(和服)的可能性是 0.86。gown(长外衣;外罩)0.05.
    图像识别技术

    如果是一些简单的图片,例如键盘,鼠标,水杯等,识别准确度还是蛮靠谱的。
    Paste_Image.png

    神经网络的如果要用图来表示的话,应该就是下面这个样子的。最左边的是输入,最右边的是输出。然后中间有很多隐藏层。

    感知机示意图

    这个图中隐藏层只有一层,但是大部分用于真实计算的神经网络,都会有很多隐藏层。

    复杂神经网络

    无论是简单的,还是复杂的神经网络,其中最小的单元就是感知器。
    对于感知器的介绍,可以参考网络上的文章:
    零基础入门深度学习(1) - 感知器 
    感知器

    既然是白话,那么我们就用讲故事的方法来说一下。(假设读者已经阅读了上面的文章)
    假设有一次考试,分为语文,数学,英语,满分都是100分。但是,语文,数学,英语占的权重(weight)不一样。同时,我们还需要根据考试难度,在最后总分上面,进行一些加分或者减分的调整(bias)。最后,根据一个标准(激活函数 Step Function)来定考试合格或者不合格(output)。

    如果教务处说,我们是外国语学校,对于英语成绩比较看重,则我们给予这样的英语比较高的权重。
    X1:语文成绩 W1:0.3
    X2:数学成绩 W2:0.2
    X3:英语成绩 W3: 0.5

    然后,由于这次考试难度比较高,则每个人都加5分 (这个其实叫做 偏置项 bias)

    X0 = 1 W0 = 5

    成绩 = X0 * W0 + X1 * W1 + X2 * W2 + X3 * W3
    然后,如果成绩为60分及以上则为合格。(激活函数 Step Function)
    如果 成绩 >= 60 ,则合格
    成绩 < 60 ,则不合格

    OK,这样一个简单的感知机就做成了。在权重(W0,W1,W2,W3)和 Step Function(合格标准)定下来的时候,它可以根据输入(各科成绩),求得输出(是否合格)了。

    例如:

    语文成绩 50 * 0.3 = 15
    数学成绩 40 * 0.2 = 8
    英语成绩 80 * 0.5 = 40
    附加分 5
    成绩 15 + 8 + 40 + 5 = 68 =>合格

    语文成绩 80 * 0.3 = 24
    数学成绩 50 * 0.2 = 10
    英语成绩 40 * 0.5 = 20
    附加分 5
    成绩 24 + 10 + 20 + 5 = 59 => 不合格

    当然,一般来讲,感知机往往是激活函数(StepFunction)是事先决定的,作为训练数据的输入,输出是已知的,权重则是需要通过机器学习来获得的。我们的例子中,合格标准是事先决定的,60分及格,然后给出一部分数据:某些人的语文成绩,数学成绩,英语成绩 ,是否合格,然后通过机器学习,将各科的权重计算出来,获得一个模型。然后利用这个模型,通过输入 语文成绩,数学成绩,英语成绩,来判定是否合格。

    当然,如果在训练数据比较少的时候,这个权重可能计算的不是很准确,数据越多,权重越准确。

    语文成绩 50 数学成绩 40 数学成绩 40 附加分 5 合格
    语文成绩 80 数学成绩 50 数学成绩 40 附加分 5 不合格

    能够满足这样条件的权重有很多很多,所以机器学习的结果可能不是很好。
    但是如果有足够的数据,则权重的计算结果则会非常理想。

    最后再回来说一下,为什么叫感知机,其实最简单的,最原始的时候,感知机的输出就是 0(不合格) 或者 1(合格).结果能被感知,或者不能被感知。当然,随着研究的深入,则输出形式也越来越丰富了,不仅限于是否,也可以是数值或者其他形式的东西。例如,感知机做线性回归的时候,则是数值作为输出。

    关注公众号 TensorFlow教室 深度学习,机器学习,自然语言处理。

  • 相关阅读:
    rip协议
    IP地址的计算以及子网掩码的计算
    jQuery知识点
    JavaScript 语言编程学习路线
    JS中AJAX知识
    .以及JDK1.5ConcurrentHashMap新特性
    Java程序执行顺序
    观察者设计模式
    Servlet中Filter的学习
    JDBC和连接池知识点
  • 原文地址:https://www.cnblogs.com/TextEditor/p/6598412.html
Copyright © 2020-2023  润新知