神经网络(三):神经网络

本文深入探讨了神经元如何构成神经网络,介绍了人工神经网络(ANN)的图形表示,其中神经元按层组织,包括输入层、隐藏层和输出层。隐藏层通过线性模型和激活函数分析数据,而输出层经过softmax处理得到分类结果。文章还简要提及了神经网络的数学基础,包括线性模型和激活函数,并指出参数的分层特性使得训练过程复杂,需要反向传播算法。最后,文章提到了作者的新书和相关视频课程。
摘要由CSDN通过智能技术生成

一、 神经元到神经网络

在之前的文章中(《神经网络(一)》《神经网络(二)》),我们讨论了如何为神经元搭建模型。虽然搭建模型的过程并不复杂,但得到的神经元模型也没有太多的新意,比如使用sigmoid函数作为激活函数,则得到的神经元模型就是逻辑回归。

在人体中,单个神经元能做的事情非常有限,但多个神经元相互交织在一起就组成了人类强大的神经系统。这启发我们需要将多个神经元模型联结起来组成复杂的神经网络,而这正是这篇文章讨论的重点。

二、 图形表示

将多个神经元联结起来最简单且最直观的方法就是将它们首尾相接形成一个没有环的网络(acyclic graph),在这个网络中,一个神经元的输出是另一个神经元的输入。这种类型的神经网络在学术上被称为人工神经网络(Artificial Neural Networks,ANN) 1,它的模型拓扑结构如图1所示。

在神经网络中,神经元是按层(layer)组织的。每一层包含若干个神经元,层内部的神经元是相互独立的,也就是说它们之间并不相连;但相邻的两层之间是全连接的(fully-connected),也就是说任意两个神经元都是直接相连的(当然前提是这两个神经元分别来自相邻的两层)。

神经网络中不同的层按功能分为3类,分别是输入层(input layer)、隐藏层(hidden layer)以及输出层(output layer)。

  1. 神经网络里只有一个输入层,其中的元素在图中标记1里用黑色的点表示:一个黑点表示一个模型的输入,也就是训练数据里的一个自变量,若训练数据有个特征,则输入层里一定有相应的个点。在模型中,输入层对数据不做任何处理,只负责将信息传递给后面的隐藏层(若网络里没有隐藏层,则将信息直接传递给输出层,这时候,神经网络其实就是逻辑回归)。

  2. 神经网络可以有多个隐藏层,比如图1中就有两个隐藏层。隐藏层里的元素就是之前讨论的神经元模型(更具体一点,它们都是sigmoid神经元),因此在图中标记1里用圆圈表示。值得注意的是,一个圆圈包含了线性模型以及激活函数。在多层感知器里,隐藏层的作用是传输并分析数据。

  3. 神经网络里只有一个输出层。输出层里的元素与隐藏层里的不同,它只包含线性模型,因此在图中标记1里用方块表示。虽然输出层的名字里有“输出”二字,但它并不是模型的最终输出,与《神经网络(二)》中的逻辑回归类似,输出层的结果经过softmax函数处理后,才能得到最终的模型结果(如果该神经网络解决的是分类问题)。

图1

正如上面讨论的,不同层里的元素是不一样的,但对于神经网络领域,大家约定俗成地都用圆圈来表示它们,也将它们统称为神经元(虽然这样很容易给初学者造成误解),并将最后一步的softmax函数省略掉,如图1中标记2所示。

  1. 图1中的标记1和标记2表示的同样的神经网络,其中标记2中的图示在神经网络领域是通用的,因此在之后的章节中我们将沿用这样的记号。

  2. 对于神经网络,通常会以它所拥有的层数来命名,但这时输入层是不计算在内的,比如图1中的模型被称为3-层神经网络(3-layer neural networks)。当然这样的命名并不能唯一地标识一个神经网络,比如将图1中的隐藏层1增加到10个神经元,得到的仍然是一个3-层神经网络。

三、 数学基础

神经网络在图形上的表示是比较直观的,但它所代表的数学公式却是极其复杂的。为了更深入地理解神经网络,下面将讨论图形背后的数学基础。

为了讨论方便,我们来看一个非常简单的2-层神经网络(假设这个神经网络用于解决分类问题),如图2所示。

图2

这个网络的输入层有两个圆圈,表示模型所用的两个自变量,分别用 x 1 , x 2 x_1, x_2 x1,x2表示。

隐藏层里的圆圈表示神经元模型,它包含两个部分:线性模型和激活函数。

  1. 对于第 l l l层(从左到右编号)里的第 m m m个神经元(从上到下编号),用记号 i m l i^l_m iml表示相应的线性模型输出(圆圈输入的第一层加工),用记号 o m l o_m^l oml表示激活函数的输出(也是圆圈的输出)。由于这个神经网络里都是sigmoid神经元,因此两者之间的关系如公式(1)所示。

(1) o m l = 1 1 + e − i m l o^l_m = \frac{1}{1 + e^{-i^l_m}}\tag{1} oml=1+ei

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值