深度学习(一)-感知机+神经网络+激活函数

深度学习概述

深度学习的特点

  • 优点
  1. 性能更好
  2. 不需要特征工程
  3. 在大数据样本下有更好的性能
  4. 能解决某些传统机器学习无法解决的问题
  • 缺点
  1. 小数据样本下性能不如机器学习
  2. 模型复杂
  3. 可解释性弱

深度学习与传统机器学习相同点

深度学习、机器学习是同一问题不同的解决方法
  • 目的相同:都是利用机器自我学习能力,解决软件系统的难题
  • 基本问题相同:回归问题、分类问题、聚类问题
  • 基本流程相同:数据准备 → 模型选择 → 模型构建/训练 → 评估优化 → 预测
  • 问题领域相同:监督学习、非监督学习、半监督学习
  • 应用领域相同:推荐、计算机视觉、自然语言处理、语音处理、强化学习
  • 评价标准相同
  1. 回归问题:均方误差;R2
  2. 分类问题:交叉熵;查准率、召回率、F1综合系数
  3. 模型泛化能力:过拟合、欠拟合

感知机

生物神经元

感知机(Perceptron),又称人工神经元(Artificial neuron),它是生物神经元在计算机中的模拟。下图是一个生物神经元示意图:

感知机

感知机(Perceptron),又称神经元(Neuron,对生物神经元进行了模仿)是神经网络(深度学习)的起源算法,1958年由康奈尔大学心理学教授弗兰克·罗森布拉 特(Frank Rosenblatt)提出,它可以接收多个输入信号,产生一个输出信号。

感知机功能

神经元作为回归器 / 分类器

逻辑和(线性分类)

逻辑或(线性分类)

感知机局限

感知机的局限在于无法处理“异或”问题(非线性问题)

多层感知机

1975年,感知机的“异或”难题才被理论界彻底解决,即通过多个感知机组合来解决该问题,这种模型也叫多层感知机(Multi-Layer Perceptron,MLP)。如下图所示,神经元节点阈值均设置为0.5

神经网络

感知机由于结构简单,完成的功能十分有限。可以将若干个感知机连在一起,形成 一个级联网络结构,这个结构称为“多层前馈神经网络”(Multi-layer Feedforward Neural Networks)。所谓“前馈”是指将前一层的输出作为后一 层的输入的逻辑结构。每一层神经元仅与下一层的神经元全连接。但在同一层之内, 神经元彼此不连接,而且跨层之间的神经元,彼此也不相连。
1989年,奥地利学者库尔特·霍尼克(Kurt Hornik)等人发表论文证明,对于任意复杂度的连续波莱尔可测函数(Borel Measurable Function)f,仅仅需要一个隐含层,只要这个隐含层包括足够多的神经元,前馈神经网络使 用挤压函数(Squashing Function)作为激活函数,就可以以任意精度来近似模拟f。如果想增加f的近似精度,单纯依靠增加神经元的数目即可实现。
这个定理也被称为通用近似定理(Universal Approximation Theorem),该定理表明,前馈神经网在理论上可近似解决任何问题。

神经网络要足够深

多层神经网络计算公式

激活函数

定义

在神经网络中,将输入信号的总和转换为输出信号的函数被称为激活
函数(activation function)

为什么使用激活函数

激活函数将多层感知机输出转换为非线性,使得神经网络可以任意 逼近任何非线性函数,这样神经网络就可以应用到众多的非线性模型中。
如果一个多层网络,使用连续函数作为激活函数的多层网络,称之 为“神经网络”,否则称为“多层感知机”。所以,激活函数是区 、别多层感知机和神经网络的依据。

常见激活函数

阶跃函数
阶跃函数(Step Function)是一种特殊的连续时间函数,是一个从0跳变到1的 过程,函数形式与图像:

sigmoid函数
sigmoid函数也叫Logistic函数,用于隐层神经元输出,取值范围为(0,1),它可以将一个实
数映射到(0,1)的区间,可以用来做二分类,表达式:σ(x) = 1 / (1 + e -x )
  • 优点:平滑、易于求导
  • 缺点:激活函数计算量大,反向传播求误差梯度时,求导涉及除法;反向传播时,很容易就 会出现梯度消失的情况,从而无法完成深层网络的训练

右侧是导数,x越来越大或者越来越小,导数逐渐为0,梯度逐步转换为0 

tanh双曲正切函数
  • 优点:平滑、易于求导;输出均值为0,收敛速度要比sigmoid快,从而可以减少迭代次数
  • 缺点:梯度消失
  • 用途:常用于NLP中

 

ReLU(Rectified Linear Units,修正线性单元)

  • 优点:
(1)更加有效率的梯度下降以及反向传播,避免了梯度爆炸和梯度消失问题
(2)计算过程简单
  • 缺点:小于等于0的部分梯度为0
  • 用途:常用于图像

一般这里x<=0的时候都是给一个特别小的值,不至于让该神经元消失

Softmax
Softmax函数定义如下,其中Vi 是分类器前级输出单元的输出。i 表示类别索引,总的类别个数为 C。
Si 表示的是当前元素的指数与所有元素指数和的比值。通过 Softmax函数就可以将多分类的输出数值 转化为相对概率,而这些值的累和为1,常用于神经网络输出层。 表达式:

将预测结果转换为相对概率

在分类模型中,有几个类别,输出层就有几个神经元

分类模型的输出层激活函数一般都是softmax

总结

  • 感知机:接收多个输入信号,产生一个输出信号,无法解决异或问题
  • 多层感知机:将多个感知机组合
  • 多层前馈网络:若干个感知机组合成若干层的网络,上一层输出作为下一层输入
  • 激活函数:将计算结果转换为输出的值,包括阶跃函数、sigmoid、tanh、ReLU
  • 8
    点赞
  • 4
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值