首页
学习
活动
专区
工具
TVP
发布
精选内容/技术社群/优惠产品,尽在小程序
立即前往
您找到你想要的搜索结果了吗?
是的
没有找到

CS231n:6 训练神经网络(一)

神经网络最初受到生物神经系统启发得来,并逐渐脱离生物神经系统,演变成一个工程问题,并在机器学习任务中实现了很好的结果。不过,我们还是简单地介绍一下生物神经系统。大脑的最基本的计算单元是神经元。人类的神经系统中有大约860亿个神经元,并且由大约1e14-1e15个突触 (synapses)相连。如下图左是一张生物神经元的示意图,右边是一个神经元的数学建模。每个神经元会接受来自 树突(dendrites)的输入信号,然后沿着轴突(axon)产生输出信号。轴突最终会产生分支并和其他神经元的树突通过突触相连。在神经元的数学模型中,来自其他神经元轴突的信号(比如 )与当前神经元的树突通过突触基于突触上的强度(比如 )进行乘法形式的交互(比如 )。这一方法中,突触的强度 w 是可以学习的,通过控制强度(以及方向,比如正面影响还是负面影响)来影响其他某个神经元。在这一基础模型中,树突将所有输入的信号带到细胞体中,并将它们全部相加。如果最终的总和大于某个门槛值,那么这个神经元将会被激活,将会沿着轴突发出激活信号。在计算模型中,我们假设准确的激活时间不重要,只有激活的频率表示通信的信息。基于这一频率编码的解释,我们建模出了激活频率,即激活函数 f ,用于表示轴突发出激活信号的频率。在历史上,最常用的激活函数时sigmoid函数,它会将输入压缩在0-1的范围内,以实数的形式输出。后面我们将看到关于这个函数的细节。

02

斯坦福CS231n - CNN for Visual Recognition(5)-lecture5激活函数、神经网络结构

在线性分类中,我们使用s=Wxs=Wx计算类别的评分函数,其中WW为一个矩阵,xx为一个列向量,输出表示类别的评分向量。而在神经网络中,最常用的是s=W2max(0,W1x)s=W_2max(0,W_1x),其中函数max(0,−)max(0,-)是非线性的,也可以使用其他的一些非线性函数。如果没有非线性函数,那么对于分类的评分计算将重新变成关于输入的线性函数。因此,非线性函数是改变的关键。参数W1,W2W_1,W_2通过随机梯度下降来学习,他们的梯度在反向传播过程中,通过链式法则求导得出。类似地,一个三层地神经网络评分函数为s=W3max(0,W2max(0,W1x))s=W_3max(0,W_2max(0,W_1x))

01
领券