针对深度学习入门新手目标不明确 知识体系杂乱的问题 拟开启快速入门深度学习系列文章的创作
旨在帮助大家快速的入门深度学习
写在前面:
本系列按照吴恩达系列课程顺序发布(说明一下为什么不直接看原笔记 因为内容太多 没有大量时间去阅读 所有作者需要一次梳理清楚 并整理思路 方便后续学习
对于入门的建议就是 在看文章的时候 如果有不懂的概念及时的搜索一下
本人学识有限 以上内容均根据本人理解 如有不对的地方大家多多指正 欢迎交流
本系列吴恩达深度学习入门系列作为起点 可能会穿插代码或者公式的推导
本系列也是对本人自2月25日以来学习深度学习内容的梳理与总结
希望我们都可以亲手杀死曾经那个颓废的自己!
---------------------------------------------------------------------------------------------------------------------------------
1.神经网络
我们常用深度学习来表示神经网络的训练过程
什么是神经网络呢
这里的例子是预测房价
如图 我输入一个x 经过某种变换 得到了y 这是不是很想函数
对于本例 输入面积X 得到房价Y 蓝色曲线可以看出 我们就是通过这样一条曲线去拟合了这种X映射Y的关系
这条蓝色曲线也被称之为ReLU激活函数 全称是Rectified Linear Unit 即修正线性单元 这也是最常见的激活函数
对这种情况进行扩展
当输入成为了四种 结果会变成怎样呢
如图 我们假设第一个节点代表着家庭人口 你可以看到家庭人口由size bedromms zipcode wealth四种因素决定着
这里想说明的是 对于给定的输入 又会间接的导致其他的结果 经过一层一层的前进 最终预测出结果
顺便说一下 以上的学习过程均基于监督学习(训练集有对应标签)
2.结构化和非结构化数据
如图 结构化数据指标准的数据库数据 如房的信息 用户的年龄性别等的广告推荐
非结构化数据指文本 图像 语音这些 通常处理更加复杂
对于神经网络的性能问题
基于这张图 横轴代表输入数据 纵轴代表性能
总结一下
随着数据量的增大 越是大规模的神经网络 性能会越好 当然大规模神经网络也代表着更大的计算参数 计算负担
而在小的数据集上面 性能是无法确定的 可能更合适的会更好
顺便提一下 从sigmoid到relu激活函数的改进 虽然是一个简单的算法改进 却从根本上解决了问题
由于relu激活函数在右半部分都是导数不为零的 在梯度下降(后面有讲)算法中不会让梯度为0 梯度为0的时候
参数更新会非常慢 影响训练速度
关于深度学习的发展 取决于数据规模 算力 算法
对于深度学习的改进 是在想法 改代码 实验验证改进效果的循环往复中进步的
根据吴恩达老师的课程安排 这就是第一周 神经网络与深度学习的全部内容了
谢谢大家!