神经网络 代价函数

神经网络 代价函数

首先引入一些便于稍后讨论的新标记方法:

假设神经网络的训练样本有 m m m个,每个包含一组输入 x x x和一组输出信号 y y y, L L L表示神经网络层数, S I S_I SI表示每层的neuron 个数( S l S_l Sl表示输出层神经元个数), S L S_L SL代表最后一层中处理单元的个数。

将神经网络的分类定义为两种情况:二类分类和多类分类,

二类分类: S L = 0 , y = 0   o r   1 S_L=0, y=0\, or\, 1 SL=0,y=0or1表示哪一类;

K K K类分类: S L = k , y i = 1 S_L=k, y_i = 1 SL=k,yi=1表示分到第 i i i类; ( k > 2 ) (k>2) (k>2)

我们回顾逻辑回归问题中我们的代价函数为:

J ( θ ) = − 1 m [ ∑ i = 1 m y ( i ) log ⁡ h θ ( x ( i ) ) + ( 1 − y ( i ) ) log ⁡ ( 1 − h θ ( x ( i ) ) ) ] + λ 2 m ∑ j = 1 n θ j 2 J(\theta) = -\frac{1}{m} \left[\sum_{i=1}^{m}y^{(i)}\log{h_\theta(x^{(i)})} + (1 - y^{(i)})\log\left(1 - h_\theta(x^{(i)})\right)\right] + \frac{\lambda}{2m}\sum_{j=1}^{n}\theta_j^2 J(θ)=−m1[i=1∑my(i)loghθ(x(i))+(1−y(i))log(1−hθ(x(i)))]+2mλj=1∑nθj2

在逻辑回归中,我们只有一个输出变量,又称标量(scalar ),也只有一个因变量 y y y,但是在神经网络中,我们可以有很多输出变量,我们的 h θ ( x ) h_\theta(x) hθ(x)是一个维度为 K K K的向量,并且我们训练集中的因变量也是同样维度的一个向量,因此我们的代价函数会比逻辑回归更加复杂一些,为: \newcommand{\subk}[1]{ #1_k }
h θ ( x ) ∈ R K h_\theta\left(x\right)\in \mathbb{R}^{K} hθ(x)∈RK ( h θ ( x ) ) i = i t h output {\left({h_\theta}\left(x\right)\right)}_{i}={i}^{th} \text{output} (hθ(x))i=ithoutput

J ( Θ ) = − 1 m [ ∑ i = 1 m ∑ k = 1 K y k ( i ) log ⁡ ( h Θ ( x ( i ) ) ) + ( 1 − y k ( i ) ) log ⁡ ( 1 − h Θ ( x ( i ) ) ) ] + λ 2 m ∑ l = 1 L − 1 ∑ i = 1 s l ∑ j = 1 s l + 1 ( Θ j i ( l ) ) 2 J(\Theta) = -\frac{1}{m} \left[ \sum_{i=1}^{m} \sum_{k=1}^{K} y_k^{(i)} \log (h_\Theta(x^{(i)})) + \left( 1 - y_k^{(i)} \right) \log \left( 1 - h_\Theta \left( x^{(i)} \right) \right) \right] + \frac{\lambda}{2m} \sum_{l=1}^{L-1} \sum_{i=1}^{s_l} \sum_{j=1}^{s_{l+1}} \left( \Theta_{ji}^{(l)} \right)^2 J(Θ)=−m1[i=1∑mk=1∑Kyk(i)log(hΘ(x(i)))+(1−yk(i))log(1−hΘ(x(i)))]+2mλl=1∑L−1i=1∑slj=1∑sl+1(Θji(l))2

这个看起来复杂很多的代价函数背后的思想还是一样的,我们希望通过代价函数来观察算法预测的结果与真实情况的误差有多大,唯一不同的是,对于每一行特征,我们都会给出 K K K个预测,基本上我们可以利用循环,对每一行特征都预测 K K K个不同结果,然后在利用循环在 K K K个预测中选择可能性最高的一个,将其与 y y y中的实际数据进行比较。

正则化的那一项只是排除了每一层 θ 0 \theta_0 θ0后,每一层的 θ \theta θ 矩阵的和。最里层的循环 j j j循环所有的行(由 s l + 1 s_{l+1} sl+1 层的激活单元数决定),循环 i i i则循环所有的列,由该层( s l s_l sl层)的激活单元数所决定。即: h θ ( x ) h_\theta(x) hθ(x)与真实值之间的距离为每个样本-每个类输出的加和,对参数进行regularizationbias项处理所有参数的平方和。

相关推荐
Moshow郑锴1 小时前
人工智能中的(特征选择)数据过滤方法和包裹方法
人工智能
TY-20251 小时前
【CV 目标检测】Fast RCNN模型①——与R-CNN区别
人工智能·目标检测·目标跟踪·cnn
CareyWYR2 小时前
苹果芯片Mac使用Docker部署MinerU api服务
人工智能
失散133 小时前
自然语言处理——02 文本预处理(下)
人工智能·自然语言处理
mit6.8243 小时前
[1Prompt1Story] 滑动窗口机制 | 图像生成管线 | VAE变分自编码器 | UNet去噪神经网络
人工智能·python
sinat_286945193 小时前
AI应用安全 - Prompt注入攻击
人工智能·安全·prompt
迈火4 小时前
ComfyUI-3D-Pack:3D创作的AI神器
人工智能·gpt·3d·ai·stable diffusion·aigc·midjourney
Moshow郑锴5 小时前
机器学习的特征工程(特征构造、特征选择、特征转换和特征提取)详解
人工智能·机器学习
CareyWYR6 小时前
每周AI论文速递(250811-250815)
人工智能
AI精钢6 小时前
H20芯片与中国的科技自立:一场隐形的博弈
人工智能·科技·stm32·单片机·物联网