热门标签 | HotTags
当前位置:  开发笔记 > 人工智能 > 正文

深度卷积网络原理—非线性激活的必要性

假设有如上图所示的神经网络实例图网络描述如下:1)有2个输入,即图中的x1、x22)有3个神经元,即途中的b1、b2、b33)共2层网络。第1层的神经元是b1、b2,第2层的神经元

假设有如上图所示的神经网络实例图

网络描述如下:

1)有2个输入,即图中的x1、x2

2)有3个神经元,即途中的b1、b2、b3

3)共2层网络。第1层的神经元是b1、b2,第2层的神经元是b3.可将中间层称为隐层。例如途中的b1、b2就属于隐层

4)有6个权重(w11到w23)。最终输出为OUT。

 

神经元b1的输出是: x1w11+x2w21+b1

神经元b2的输出是:x1w12+x2w22+b2

 

如果没有非线性激活,那么最终的输出OUT的计算公式是:

OUT=(x1w11 + x2w21 + b1)* w13 + (x1w12 + x2w22 + b2)*w23 + b3

        =x1*(w11w13 + w12w23) + x2 * (w21w13 + w22w23)+(b1w13 +b2w23 +b3)

 

从上面的公式可以看出,虽然用了3个神经元,但这个网络对于x1和x2仍然是线性的,完全等价于1个神经元的效果。

如下图:

 

因此,如果只是把神经元简单的连接在一起,不加入非线性处理,最终得到的仍然是线性函数,无法完成描述各种复杂的现象,可看出在神经元的输出时需要一个非线性函数是必要的。

 

若非线性激活函数对于中间层神经元是f,对于最终输出神经元是g,那么,对于此前的网络,最终的输出会变为:

OUT=g(f(x1w11 + x2w21 +  b1)* w13 + f(x1w12 + x2w22+b2)*w23 + b3)

由于f和g都是非线性的,于是最终可得到非线性的网络输出,即可拟合出复杂的数据。

 


推荐阅读
author-avatar
Tina19Or多多
这个家伙很懒,什么也没留下!
PHP1.CN | 中国最专业的PHP中文社区 | DevBox开发工具箱 | json解析格式化 |PHP资讯 | PHP教程 | 数据库技术 | 服务器技术 | 前端开发技术 | PHP框架 | 开发工具 | 在线工具
Copyright © 1998 - 2020 PHP1.CN. All Rights Reserved | 京公网安备 11010802041100号 | 京ICP备19059560号-4 | PHP1.CN 第一PHP社区 版权所有