C1 - week1- Neural Networks and Deep Learning
0.专栏前言
本专栏基于吴恩达老师在Coursera上的深度学习课程,主要目的如下:
- 记录课程核心内容
- 讨论课程中的思考题与编程题
- 记录自己在学习过程中的心得体会
- 在写博客过程中复习、加深理解,提供撰写博客能力
学习基础,线性代数基本知识,python基础语法以及矩阵操作,有机器学习及微积分知识更佳(但不是必须)。
希望看到博客的大家能指出文章中的不足之处,如有些内容写的不清楚、有些该写的内容被省略了、排版问题、画图问题等等,本人仍在学习过程,感激不尽。
1.什么是神经网络
以房价预测为例:我们已知的数据有房屋的大小、卧室个数、邮政编码(对应地理位置)、周围富裕程度与其价格。我们假定房价与可居住人口、步行化程度(可理解为与市中心距离)和周围学校质量相关。
那么简单的关联如下:
-
房屋大小 + 卧室数量 -> 可居住人口
-
邮政编码(地理位置)-> 步行化程度
-
邮政编码 + 周围富裕程度 -> 周围学校质量
-
可居住人口 + 步行化程度 + 周围学校质量 -> 房价
图示如下,蓝色连线表示某种相关性,灰色圆圈表示映射关系。
这个例子中,x是房屋大小、卧室数量、邮政编码、富裕程度四个输入,y是你尝试预测的价格,中间的圆圈就是一个个神经元,把这些单个的神经元叠加在一起,我们就建立起了一个简单的神经网络。我们将房屋大小与卧室数量通过某种运算计算出可居住人口,通过邮政编码计算出步行化程度,通过邮政编码和富裕程度计算出房屋周围学校质量,再通过这三个计算出的值来预测房价。每一个神经元对应一种映射关系(可理解为一种计算的公式),通过不同层次的神经元,将最初的输入一层层映射,最终得到需要的值。
转化为更专业的神经网络示意图如下:
神经网络的神奇之处在于,当你实现它之后,你要做的只是输入x,就能得到输出y,它可以自己计算你训练集中样本的数目以及中间所有的过程。我们只需要按照规则实现好神经网络,它会根据训练集中的(x, y)数据,自己学习到中间神经元的映射方式,之后它就可以根据你给定的x给出预测的y。
而至于深度学习的神经网络究竟该如何实现,请阅读下一周的内容。