• 机器学习学习记录【持续更新】——神经网络


    非线性问题

    如果还记得特征组合这一单元的话,你就会发现以下分类问题属于非线性问题:
    在这里插入图片描述
    “非线性”意味着您无法使用形式为线性的模型准确预测标签。也就是说,“决策面”不是直线。之前,我们了解了对非线性问题进行建模的一种可行方法 - 特征组合

    现在,请考虑以下数据集:
    在这里插入图片描述上图所示的数据集问题无法用线性模型解决。

    神经网络的构建过程

    简单的线性结构

    为了了解神经网络可以如何帮助解决非线性问题,我们首先用图表呈现一个线性模型:
    在这里插入图片描述
    每个蓝色圆圈均表示一个输入特征,绿色圆圈表示各个输入的加权和。要提高此模型处理非线性问题的能力,我们可以如何更改它?隐藏层

    隐藏层

    在下图所示的模型中,我们添加了一个表示中间值的“隐藏层”。隐藏层中的每个黄色节点均是蓝色输入节点值的加权和。输出是黄色节点的加权和。
    在这里插入图片描述
    此模型是线性的吗?是的,其输出仍是其输入的线性组合。

    在下图所示的模型中,我们又添加了一个表示加权和的“隐藏层”。
    在这里插入图片描述
    此模型仍是线性的吗?是的,没错。当您将输出表示为输入的函数并进行简化时,您只是获得输入的另一个加权和而已。该加权和无法对复杂的非线性问题进行有效建模。

    激活函数

    要对非线性问题进行建模,我们可以直接引入非线性函数。我们可以用非线性函数将每个隐藏层节点像管道一样连接起来。

    在下图所示的模型中,在隐藏层 1 中的各个节点的值传递到下一层进行加权求和之前,我们采用一个非线性函数对其进行了转换。这种非线性函数称为激活函数

    在这里插入图片描述
    现在,我们已经添加了激活函数,如果添加层,将会产生更多影响。通过在非线性上堆叠非线性,我们能够对输入和预测输出之间极其复杂的关系进行建模。简而言之,每一层均可通过原始输入有效学习更复杂、更高级别的函数

    常见的激活函数有
    在这里插入图片描述在这里插入图片描述
    实际上,所有数学函数均可作为激活函数。假设Fx表示我们的激活函数(ReLU、S 型函数等等)。因此,网络中节点的值由以下公式指定:Fx(wx+b)
    TensorFlow 为各种激活函数提供开箱即用型支持。

    总结

    现在,我们的模型拥有了人们通常所说的“神经网络”的所有标准组件:

    • 一组节点,类似于神经元,位于层中。
    • 一组权重,表示每个神经网络层与其下方的层之间的关系。下方的层可能是另一个神经网络层,也可能是其他类型的层。
    • 一组偏差,每个节点一个偏差。
    • 一个激活函数,对层中每个节点的输出进行转换。不同的层可能拥有不同的激活函数。
  • 相关阅读:
    C#程序调用cmd.exe执行命令
    JS正则表达式之特殊符号
    Java设计模式之策略模式
    Java基础之多态
    Filter过滤器笔记1
    Servlet笔记1
    jsp笔记3(内置对象)
    jsp笔记2(编译指令与动作指令)
    jsp笔记1(基本原理与语法)
    xml文件生成与下载
  • 原文地址:https://www.cnblogs.com/782687539-nanfu/p/12707591.html
Copyright © 2020-2023  润新知