初识神经网络基础概念

神经网络多数是用在深度学习上,对于机器学习,仅仅涉及一部分

  • 神经网络应用场景
  • 神经网络的起源
  • 神经网络的基本结构

神经网络的应用(聚类可以使用神经网络)

  • 语言识别、声纹识别
  • 图像应用:
    1. 大规模(大数据量)图片识别(聚类/分类)
    2. 基于图片的搜索服务
    3. 目标检测
  • NLP(自然语言),知识图谱
  • 游戏、机器人、推荐系统等
  • 数据挖掘(聚类、分类、回归等问题)

神经网络来源之人的思考
初识神经网络基础概念_第1张图片


神经网络来源之“神经元”
初识神经网络基础概念_第2张图片

  • 输入: x 1 x_1 x1 x 2 x_2 x2 x 3 x_3 x3和截距+1
  • 输出:函数 h w , b ( x ) h_{w,b}(x) hw,b(x),其中w和b是参数: h w , b ( x ) = f ( w T x , b ) = f ( ∑ i = 1 3 w i x i + b ) h_{w,b}(x) = f(w^Tx,b) = f( \sum_{i=1}^3w_ix_i+b) hw,b(x)=f(wTx,b)=f(i=13wixi+b)
  • 注意:函数 f f f被称为“激活函数”(传递函数)【可以想象突触】
  • 常用激活函数有 s i g m o i d ( 逻 辑 回 归 函 数 ) sigmoid(逻辑回归函数) sigmoid() t a n h ( 双 曲 正 切 函 数 ) tanh(双曲正切函数) tanh()
  • S S SS SS函数: t a n h ( z ) = f ( z ) = e z − e − z e z + e − z tanh(z) = f(z) = \frac{e^z-e^{-z}}{e^z+e^{-z}} tanh(z)=f(z)=ez+ezezez; f ′ ( z ) = 1 − ( f ( z ) ) 2 f'(z)=1-(f(z))^2 f(z)=1(f(z))2
  • S S S函数: s i g m o i d ( z ) = f ( z ) = 1 1 + e − z sigmoid(z) = f(z) = \frac{1}{1+e^{-z}} sigmoid(z)=f(z)=1+ez1; f ′ ( z ) = f ( z ) ( 1 − f ( z ) ) f'(z)=f(z)(1-f(z)) f(z)=f(z)(1f(z))
    初识神经网络基础概念_第3张图片
  • 当激活函数的返回值是两个固定的值得时候,可以称为此时的神经网络为感知器
  • S i g m o i d Sigmoid Sigmoid===> f ( n ) = { 0 , z<=0 1 , z>0 f(n) =\begin{cases} 0, & \text{z<=0} \\1, & \text{z>0}\end{cases} f(n)={0,1,z<=0z>0
  • T a n h Tanh Tanh===> f ( n ) = { − 1 , z<=0 1 , z>0 f(n) =\begin{cases} -1, & \text{z<=0} \\1, & \text{z>0}\end{cases} f(n)={1,1,z<=0z>0
  • 因为感知器的返回值只有两种情况,所以感知器只能解决二类线性可分的问题,感知器比较适合应用到模式分类的问题中。

神经网络之线性神经网络

  • 线性神经网络是一种简单的神经网络,可以包含多个神经元
  • 激活函数就是一个线性函数,可以返回多个值
  • 线性神经网络和感知器一样,只适合线性可分类问题
  • 但是效果比感知器要好,而且可以做多分类问题

神经网络之深度神经网络

  • 增多中间层(隐层)的神经网络就叫做深度神经网络(DNN)(下图中隐层的数量为3)
  • 可以认为深度学习是神经网络的一个发展
    初识神经网络基础概念_第4张图片

神经网络之DNN问题

  • 一般讲,可以通过增加神经元和网络层次来提高神经网络的学习能力,使其得到的模型更加能够符合数据的分布场景
  • 但是实际应用场景中,神经网络的层次一般情况不会太大,因为太深的层次有可能产生一些求解问题
  • 在DNN的求解中有可能存在两个问题:梯度消失和梯度爆炸
  • 我们在求解梯度的时候会用到链式求导法则,导致梯度消失
  • 如果每一层都小于1的话,则梯度越往前乘越小,导致梯度消失,而如果连乘的数字在每层都是大于1的,则梯度越往前乘越大,导致梯度爆炸

你可能感兴趣的:(深度学习)