学习感想
最近两天对吴恩达老师的深度学习课程进行了学习,有了一定的心得体会吧,机器学习并没有想象之中那么神秘,那么不可理解,但是也需要时间精力去消化理解,听老师讲课其实很轻松,觉得自己懂了,做编程作业的时候还是一头雾水。
总的来说,就目前看来,数学功底还是比较重要的,熟练掌握微积分和线性代数的话,无疑是降低了入门门槛;另外,一定的Python编程基础知识也很有必要;还有及时做好笔记,有利于后期理解。
我觉得我应该能坚持下去吧!
学习内容
就目前学习进度而言,机器学习给我的顺序是这样的:
1.导入、处理数据
其实,这里编程的时候是博士已经做好的数据,可以直接使用,在之后的学习过程之中我应该还要考虑如何去处理数据等。
对数据进行一些简单的预处理,以方便后面的使用。
例如将四维数组通过a.reshape(b,-1)来转换成b行的二维数组,可以便于进行后面的向量化编程。
2.定义函数块
一般有初始化参数数据块、训练函数块、预测函数块、整合model函数,还可以添加一些显示模块等。
分块进行函数编写,可以及时检查程序问题。
3.运行测试
运行测试,对超参数进行调整。
总结
- 定义模型结构(例如输入特征的数量)
- 初始化模型的参数
- 循环:
-
计算当前损失(正向传播)
-
计算当前梯度(反向传播)
-
更新参数(梯度下降)