吴恩达机器学习笔记:第5周-9 神经网络的学习(Neural Networks: Learning)

目录

  • [9.1 代价函数](#9.1 代价函数)

9.1 代价函数

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

假设神经网络的训练样本有𝑚个,每个包含一组输入𝑥和一组输出信号𝑦,𝐿表示神经网络层数,𝑆𝐼表示每层的 neuron 个数(𝑆𝑙表示输出层神经元个数),𝑆𝐿代表最后一层中处理单元的个数。

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

二类分类:𝑆𝐿 = 0, 𝑦 = 0 𝑜𝑟 1 表示哪一类;

𝐾类分类:𝑆𝐿 = 𝑘, 𝑦𝑖 = 1表示分到第 i 类;(𝑘 > 2)

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

J ( θ ) = − 1 m [ ∑ j = 1 n y ( i ) l o g h θ ( x ( i ) ) + ( 1 − y ( i ) ) l o g ( 1 − h θ ( x ( i ) ) ) ] + λ 2 m ∑ j = 1 n θ j 2 J(θ) = -\frac{1}{m}[ \sum_{j=1}^n {y^{(i)}logh_θ (x^{(i)}) + (1-y^{(i)})log(1-h_θ (x^{(i)}))}] +\frac{λ}{2m}\sum_{j=1}^n {θ_j^{2}} J(θ)=−m1[j=1∑ny(i)loghθ(x(i))+(1−y(i))log(1−hθ(x(i)))]+2mλj=1∑nθj2

在逻辑回归中,我们只有一个输出变量,又称标量(scalar),也只有一个因变量𝑦,但是在神经网络中,我们可以有很多输出变量,我们的ℎ𝜃(𝑥)是一个维度为𝐾的向量,并且我们训练集中的因变量也是同样维度的一个向量,因此我们的代价函数会比逻辑回归更加复杂一些,为:
h θ ( x ) ∈ R k , ( h θ ( x ) ) i = i t h o u t p u t h_θ(x)∈ℝ^k,(h_θ(x))_i =i^{th}output hθ(x)∈Rk,(hθ(x))i=ithoutput

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

正则化的那一项只是排除了每一层 θ 0 θ_0 θ0后,每一层的𝜃 矩阵的和。最里层的循环𝑗循环所有的行(由𝑠𝑙 +1 层的激活单元数决定),循环𝑖则循环所有的列,由该层(𝑠𝑙层)的激活单元数所决定。即:ℎ𝜃(𝑥)与真实值之间的距离为每个样本-每个类输出的加和,对参数进行regularization 的 bias 项处理所有参数的平方和。

相关推荐
爱吃泡芙的小白白20 分钟前
深入解析CNN中的Dropout层:从基础原理到最新变体实战
人工智能·神经网络·cnn·dropout·防止过拟合
一只小小的芙厨26 分钟前
寒假集训笔记·树上背包
c++·笔记·算法·动态规划
Eloudy1 小时前
直接法 读书笔记 01 第1章 引言
人工智能·机器学习·hpc
深蓝海拓1 小时前
PySide6从0开始学习的笔记(二十七) 日志管理
笔记·python·学习·pyqt
AEIC学术交流中心1 小时前
【快速EI检索 | SPIE出版】2026年机器学习与大模型国际学术会议(ICMLM 2026)
人工智能·机器学习
xqqxqxxq1 小时前
Java Thread 类核心技术笔记
java·笔记
老师用之于民2 小时前
【DAY21】Linux软件编程基础&Shell 命令、脚本及系统管理实操
linux·运维·chrome·经验分享·笔记·ubuntu
iFeng的小屋2 小时前
【2026年新版】Python根据小红书关键词爬取所有笔记数据
笔记·爬虫·python
山岚的运维笔记2 小时前
SQL Server笔记 -- 第14章:CASE语句
数据库·笔记·sql·microsoft·sqlserver
宵时待雨2 小时前
STM32笔记归纳8:时钟
笔记·stm32·单片机·嵌入式硬件