入门卷积神经网络学习(三) **函数

什么是**函数

输入信号的总和会被函数h(x)转换,转换后的值就是输出y。
函数h(x)就被称为**函数。
入门卷积神经网络学习(三) **函数
举个例子:输入信号x1,x2.经过权重w1,w2偏置b的计算总和为a.a通过**函数h()输出y.

那么我们为什么要用**函数呢?

因为如果没有**函数,那么我们的输出信号仅仅是一个线性函数。它没有办法解决复杂的数据。
**函数的主要作用是为隐含层(中间层)引入非线性。加入非线性,多层神经网络的预测能力李就得到了显著的提高,对于后向传播算法,**函数必须可微。
所以神经网络的**函数必须是非线性函数。

**函数有哪些常用的?

1.sigmoid函数

sigmoid函数:h(x)=1/ 1 + exp(-x). exp(-x)表示e的-x次方。
入门卷积神经网络学习(三) **函数
由图就可以直接理解非线性。线性函数的值只能返回0或1这种整数,而非线性函数却可以返回0.11565.这种实数,所以说非线性函数流动的是一种连续的实数值信号。
但是sigmoid函数存在梯度消亡问题。这个以后再说。

ReLU函数

ReLU函数是一种很直观的函数。
R(x)= max(0,x),即如果x <0,R(x)= 0,如果x> = 0,则R(x)= x。
但他的局限性在于他只能在隐藏层使用。
入门卷积神经网络学习(三) **函数
在机器学习和计算机科学领域,最简单、相容的技术和方法才是首选,才是表现最好的。因此,它可以避免和纠正梯度消失问题。现如今,几乎所有深度学习模型现在都使用ReLu函数。