这段时间看了andrew .Ng老师的课程,算是机器学习的入门,感觉很不错,结合自己的对机器学习的了解,在这里将这段时间的学习总结一下

在第一讲介绍性的,讲了什么是机器学习,有监督学习(supervised learning)和无监督学习(unsupervised learning),监督学习和非监督学习,其实主要的区别在于,训练集,监督学习使用有标记的训练集,通过学习完成参数优化,从而实现数据样本到期望结果的有效映射,典型的例子就是拟合和回归;而非监督学习,则没有任何标记只求在训练集中挖掘出结构性的知识,发现数据内在的可能联系,典型的如聚类算法就是这非监督学习。

第二讲linear regression,也就是线性回归,算是入门级的机器学习算法,主要介绍了如何针对单变量建立costfunction,并且引入了gradient descent的方法来实现求解costfunction的最小值,这是后面几讲中使用的方法,首先建立模型,求解costfunction,使用gradient descent来求解模型中的参数,使得costfunction最小化,在这里costfunction在我的理解就是拟合完成的模型和实际数据的偏差,使costfunction最小化,也就是使得模型的误差最小化,这里gradient descent是一种求解函数最小值的方法,它的具体形式是由costfunction定的,但是它的思想可以用来求解任何函数的极值,只不过这里gradient descent可能求出来的是函数的局部极小值(local minimum,当然也可以用来就出局部极大值,只不过要稍微修改一下公式而已),在线性回归(linear regression)中,根据andrew.Ng中的说法,在线性回归中,参数和costfunction的映射属于碗型,不存在最小值(这里我并不清楚为什么,他的视频中也没有讲),求解出的一定是全局最小值。在该讲中,他直接定义了costfunction,但是没有给出为什么这么定义,虽然他给出的形式也符合我们的理解,这里我又看了他在Stanford的课堂上的讲义,在讲义中,他给出了costfunction的概率解释,利用的是高斯模型加上统计学上的似然模型,解释的更加清楚,有兴趣的人可以参考一下

第三讲,他主要将了一些线性代数的东西,在这里就不再赘述了。

第四讲,还是将linear regression,不过这次换成了多变量的例子了,其实多变量和单变量的处理,区别并不大,主要是将原来的一些变量,用线性代数的知识进行扩展了,不过这一讲中,重点讲解关于feature scaling,其实这里的feature scaling就是归一化,让样本的特征值处于【-1,1】,从加快参数优化的速度,另外一个讲的就是alpha的选择了,最初在之前的视频的时候,就有过疑问,这里的alpha如果选的大的化,会不会出问题,在这里andrew老师说明了,这里的alpha不能太大的,大的时候会出现震荡或者直接向偏离极值点的方向趋近。关于多项式的回归(polynomial regression),就是引入样本特征的高次函数,这里求解的方式并没有多大变化。这一讲中,还介绍了normal equation的解法,通过normal equation可以直接求解出theta,从而免去了选择alpha的麻烦,是一种无参解法,但是使用normal equation会出现的一个问题是可逆不可逆的问题,这里在实现的过程中,在matlab中,使用伪逆函数pinv,可以在函数即使不可逆的情况下,进行求解.

第五讲,主要介绍了octave的用法,和matlab一样,matlab编程算是基本功,熟练为好,如果能够熟练matlab,那么做课程中的作业应该是轻而易举。

coursera andrew Ng老师的machine learning的课程总结(一)相关推荐

  1. Coursera 吴恩达《Machine Learning》视频 + 作业

    红色石头的个人网站:www.redstonewill.com 吴恩达(Andrew Ng)在 Coursera 上开设的机器学习入门课<Machine Learning>,授课地址是: C ...

  2. 【原】Coursera—Andrew Ng机器学习—Week 9 习题—异常检测

    [原]Coursera-Andrew Ng机器学习-Week 9 习题-异常检测 参考文章: (1)[原]Coursera-Andrew Ng机器学习-Week 9 习题-异常检测 (2)https: ...

  3. 【原】Coursera—Andrew Ng机器学习—课程笔记 Lecture 17—Large Scale Machine Learning 大规模机器学习...

    Lecture17 Large Scale Machine Learning大规模机器学习 17.1 大型数据集的学习 Learning With Large Datasets 如果有一个低方差的模型 ...

  4. Coursera | Andrew Ng (01-week-1-1.3)—用神经网络进行监督学习

    该系列仅在原课程基础上部分知识点添加个人学习笔记,或相关推导补充等.如有错误,还请批评指教.在学习了 Andrew Ng 课程的基础上,为了更方便的查阅复习,将其整理成文字.因本人一直在学习英语,所以 ...

  5. Coursera | Andrew Ng (02-week-3-3.1)—调参处理

    该系列仅在原课程基础上部分知识点添加个人学习笔记,或相关推导补充等.如有错误,还请批评指教.在学习了 Andrew Ng 课程的基础上,为了更方便的查阅复习,将其整理成文字.因本人一直在学习英语,所以 ...

  6. Coursera | Andrew Ng (01-week-2-2.5)—导数

    该系列仅在原课程基础上部分知识点添加个人学习笔记,或相关推导补充等.如有错误,还请批评指教.在学习了 Andrew Ng 课程的基础上,为了更方便的查阅复习,将其整理成文字.因本人一直在学习英语,所以 ...

  7. Coursera | Andrew Ng (01-week-2-2.17)—Jupyter _ ipython 笔记本的快速指南

    该系列仅在原课程基础上部分知识点添加个人学习笔记,或相关推导补充等.如有错误,还请批评指教.在学习了 Andrew Ng 课程的基础上,为了更方便的查阅复习,将其整理成文字.因本人一直在学习英语,所以 ...

  8. Coursera | Andrew Ng (01-week-1-1.2)—什么是神经网络?

    什么是神经网络? 该系列仅在原课程基础上部分知识点添加个人学习笔记,或相关推导补充等.如有错误,还请批评指教.在学习了 Andrew Ng 课程的基础上,为了更方便的查阅复习,将其整理成文字.因本人一 ...

  9. Coursera | Andrew Ng (01-week-1-1.2)—What is a Neural Network?

    什么是神经网络? 该系列仅在原课程基础上部分知识点添加个人学习笔记,或相关推导补充等.如有错误,还请批评指教.在学习了 Andrew Ng 课程的基础上,为了更方便的查阅复习,将其整理成文字.因本人一 ...

最新文章

  1. 小甲鱼python003答案_小甲鱼:Python学习笔记003_函数
  2. 关于 npm 中 lru-cache 之 maxAge 盲点 源码分析
  3. 组态王6.55安装教程
  4. Node.js 框架设计及企业 Node.js 基础建设相关讨论
  5. ES6实用方法Object.assign、defineProperty、Symbol
  6. 九齐NY8B072A单片机使用笔记(一)TIMER0定时器
  7. 王者荣耀总决赛因天气原因延期 玩家获得皮肤碎片等补偿
  8. Redis——学习之路三(初识redis config配置)
  9. python抽取指定url页面的title_Python新手写爬虫全过程记录分析
  10. 对于长时间装载的ASP.NET页面如何在客户端浏览器中显示进度?
  11. C6748和音频ADC连接时候的TDM以及I2S格式问题
  12. haproxy1.7编译安装配置
  13. 并发编程学习之volatile关键字
  14. mysql是slot_技术分享 | MySQL 主机该如何配置 fs.aio-max-nr
  15. Unity 如何获取安卓设备的SN号
  16. python0不能做除数报错_浅谈pandas dataframe对除数是零的处理
  17. android: 禁止多点触控
  18. Android安装步骤
  19. 百度信誉保障服务架构全解析
  20. e站app里站hosts_[装修记 天猫家装e站~大庆站]

热门文章

  1. Unity Shader 之遮挡透明
  2. 【数据库原理及应用】——数据库系统结构和组成(学习笔记)
  3. Java设计模式之设计原则-里氏替换原则 (LSP)
  4. 项目管理协会(PMI)人才三角
  5. php 上午 和下午,“上午”和“下午”的表示法
  6. [项目管理]管理杂谈—三个火枪手
  7. 使用HTML5/CSS3五步快速制作便签贴特效
  8. 随机数生成器【LCG算法】
  9. Kali Linux系统下无线网卡MW310UH的驱动安装教程
  10. 解决【在等待缓存锁:无法获得锁 /var/lib/dpkg/lock-frontend】的问题