神经网络与深度学习笔记逻辑回归与梯度下降
Posted 沧夜2021
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了神经网络与深度学习笔记逻辑回归与梯度下降相关的知识,希望对你有一定的参考价值。
前言
完成coursera
上吴恩达老师的深度学习专项课程第一课神经网络与深度学习已经有一段时间了。由于笔记中的各类公式就没有开始动笔总结并发布。
好在最近也在很痛苦地学习LaTex,就企图与LaTex一起更新算了。假期快结束,后面时间其实也是很紧张的。==不该浪的,不该浪的
值得一提的是,我非常不建议在非coursera
平台学习吴恩达老师的课程。coursera
的课程大多数都可以申请奖学金资助,只要你是学生基本都会通过审批。至于coursera
的视频播放问题,在大多数情况下改电脑的host
都可以解决,再加上腾讯布局的长鹅教育加速器在后期也会逐渐发力。实在没有理由再去b站那些平台听课。但,最重要的一点是,学习实际上是一个反馈的过程,这个反馈最好的方式就是费曼学习法。
coursera
的平台作业能够实时反馈你的学习情况,遇到不会的可以回去重新听一遍。然而b站实际上没有这种功能,尽管大多数up主会在他们的评论区贴出作业,但是没有coursera
的实时反馈,那些作业实际上给自己的帮助也不是太高,更不提在coursera
上类似jupyter notebook的线上系统做作业,进而不用在自己电脑上安装相关环境的优势。
另外就是,不要高估自己自主学习的能力,那些b站的作业链接大多人也不会点开,点开了也不一定做,做了也不一定会认真写,看几下就去面向百度做作业比比皆是。对于编程类的实践作业课程,b站真的不是最适合的。
结构化数据与非结构化数据的区别
结构化数据
结构化数据,如果你觉得不好记住,不妨就这样记着,能够用传统的数据库行列存储的数据都是结构化数据
非结构化数据
非结构化数据,包括文档、文本、图片、XML、html、报表、图像和音视频这些,是传统的数据库行列不能存储的数据
在第一周的测验中有着相关的题目
神经网络与深度学习第一周测验 Introduction to Deep Learning
题目大概意思是:
猫的识别图像是"结构化"数据的示例,是因为它在计算机中表示为结构化数组。真/假?
这当然是错的,猫的图像是个图片,不是结构化数据
图片的矩阵表示
借着上面的猫的图像,我们来看看在计算机中,图片的二进制表示(本文大多数公式是使用LaTex敲的,感兴趣可以学习LaTex)
一张图片中有红绿蓝三个矩阵,来完整描述一个图片的像素值。如果这张图片是64×64的,那么它的像素值就是64×64×3。在x中我们可以表示成下面的样子用于图像数据的输入,x在这种情况下就是64×64×3维的。记得这是小x,与后面的大X要区分开。
x
=
[
255
⋮
233
⋮
⋮
]
\\mathbf{x}=\\begin{bmatrix} 255\\\\ \\vdots\\\\ 233\\\\ \\vdots\\\\ \\vdots\\\\ \\end{bmatrix}
x=⎣⎢⎢⎢⎢⎢⎢⎢⎡255⋮233⋮⋮⎦⎥⎥⎥⎥⎥⎥⎥⎤
输入输出格式
于是对于输入x,输出y,我们有:
(
x
,
y
)
x
∈
R
n
x
,
x
是
n
(
x
)
维
向
量
,
y
∈
{
0
,
1
}
(x,y)\\qquad x\\in R^{n_x},\\quad x是n(x)维向量,\\quad y\\in\\{0,1\\}
(x,y)x∈Rnx,x是n(x)维向量,y∈{0,1}
对于m个训练样本
{
(
x
(
1
)
,
y
(
1
)
)
,
(
x
(
2
)
,
y
(
2
)
)
,
⋯
(
x
(
m
)
,
y
(
m
)
)
}
\\{(x^{(1)},y^{(1)}),(x^{(2)},y^{(2)}),\\cdots (x^{(m)},y^{(m)}) \\}
{(x(1),y(1)),(x(2),y(2)),⋯(x(m),y(m))}
有
X
=
[
⋮
⋮
⋮
⋮
⋮
⋮
⋮
⋮
x
(
1
)
x
(
2
)
x
(
3
)
⋯
x
(
m
)
⋮
⋮
⋮
⋮
⋮
⋮
⋮
⋮
]
⏟
n
(
x
)
×
m
维
矩
阵
}
n
x
\\mathbf{X}= \\left. \\underbrace{\\begin{bmatrix} \\vdots & \\vdots & \\vdots &\\quad & \\vdots \\\\ \\vdots & \\vdots & \\vdots &\\quad & \\vdots \\\\ x^{(1)} & x^{(2)} & x^{(3)} & \\cdots & x^{(m)} \\\\ \\vdots & \\vdots & \\vdots &\\quad & \\vdots \\\\ \\vdots & \\vdots & \\vdots &\\quad & \\vdots \\\\ \\end{bmatrix}}_{n(x)\\times m维矩阵 }\\right\\}_{n_x}
X=n(x)×m维矩阵
⎣⎢⎢⎢⎢⎢⎢⎢⎢⎡⋮⋮x(1)⋮⋮⋮⋮x(2)⋮⋮⋮⋮x(3)⋮⋮⋯⋮⋮x(m)⋮⋮⎦⎥⎥⎥⎥⎥⎥⎥⎥⎤⎭⎪⎪⎪⎪⎪⎪⎪⎪⎪⎪⎪⎪⎪⎬⎪⎪⎪⎪⎪⎪⎪⎪⎪⎪⎪⎪⎪⎫nx
这样对x的输入进行表示较为简单
与此对应的y的输出应该为
Y
=
[
y
(
1
)
y
(
2
)
y
(
3
)
⋯
y
(
m
)
]
⏟
1
×
m
大
小
的
矩
阵
\\mathbf{Y}= \\underbrace{\\begin{bmatrix} y^{(1)} & y^{(2)} & y^{(3)} & \\cdots & y^{(m)} \\\\ \\end{bmatrix}}_{1\\times m大小的矩阵}
Y=1×m大小的矩阵
[y(1)y(2)y(3)⋯y(m)]
X与Y的形状为
X.shape(nx,m)
Y.shape(1,m)
Logistic Regression逻辑回归
现在我们使用$ \\hat{y} $ 表示对真实值
y
y
y 的估计
y
^
=
P
{
y
=
1
∣
x
}
0
≤
y
^
≤
1
\\hat{y} = P\\{y = 1| x \\} \\qquad 0\\le \\hat{y} \\le 1
[机器学习] ML重要概念:梯度(Gradient)与梯度下降法(Gradient Descent)