Readme 《Machine Learning by Andrew NG》
本文系列内容是吴恩达老师的机器学习公开课的文本对应。需要具备英文,微积分,线性代数,程序设计的基础。从第二周开始有编程作业,到第九周。总共8个作业。感谢吴恩达老师⸜₍๑•⌔•๑ ₎⸝
2021年9月10日 2021年12月11日。三个月学完了,得分 99.21,代码满分全部向量化实现。将近一个学期。
在自己的coursera账号的profile里出现了机器学习课程完成的标志。 如果要证书的话需要377人民币,想想也算了。这只是一个前导课程,后续更高级的是这门课 Deep Learning Specialization。有机会可以学一下。
这门课最舒畅的时候是向量化实现代码的时候。协同过滤那用了三行代码直接就过了,那种感觉非常棒!
分为11周。总共8个作业,最后一个作业是9周的。后两周没有作业。
官方的Transcript有很多的错误,语法不通,意思不通。所以我根据视频做了修正。修订工作很困难。
如果大家发现什么错误,下面评论区可以指出来。我去改。
第一周的视频的英文记录相对比较重要,他是老师授课风格,授课习惯用词,授课习惯用语的整体展现。同时,因为是第一周,很多新的领域的词语会大幅度出现,因此一个英文文本对于我们是很重要的。
如果仔细阅读了第一周的所有英文资料,那么接下来的几周,我们就有能力去面对一个纯净的英文版视频,即我们可以听着英文,来学习。当然,不懂的词还是要记下来。只不过任务繁重程度较第一周会小一些。之后的内容需要用到我们的脑子了。
有一个现象很好玩。看完一半的课程只花了不到10天。当然不是一直看。但是仅仅第一个星期的文档校对整理,和阅读,花了超过20天。
我们可以通过打印网页,缩放比145,获得纯净版的文本。没有侧边栏。

学习永不停止。
Confused
- 利用线性代数的知识,一次性求出 参数。normal equation.
- 特征缩放,是缩放输入数据,另一种是正则化参数。缩放输入数据使得他们处于同一个规模,加快梯度下降百分之速度。缩放参数是将拟合函数变得更简单,防止过拟合。老师给了很多直觉的东西,但数学上似乎还得去再看 概率论。
- 正则化参数分为线性回归模型和逻辑回归模型。这两个的代价函数还得再看看。
- 神经网络是利用多层的简单逻辑回归线性模型的组合,每层简单的逻辑回归线性模型输出一个sigmoid激活函数预测值,在01之间。输出到下一层的简单逻辑回归线性模型。形成非线性的复杂的逻辑回归。有直觉,但是为什么?
- 神经网络的代价函数并不是一个convex 函数,所以可能出现全局最优解,和局部最优解。但是逻辑回归的代价函数基本同神经网络的代价函数没什么区别。除了神经网络的预测函数是多个预测函数的复合。因此就从convex函数到了non-convex函数。有一点直觉,具体不太清楚。
- SVM, 当C=10000很大时,整个寻找最优解的过程就会更长。同时因为精度提高,会出现错误分类的情况。

一旦θ确定,那么决策边界就确定,向量θ总是垂直于决策边界。
利用Guassian kernel扩充了θ的维度。原来可能是二维的x二维的θ,经过kernel就变成了数据量的维度,若有10000个训练样本,那么整个计算预测的过程就变成了10001维的f以及θ,1是interpretation。初步理解是扩充了项数类似增加新变量,不过整个kernel的图像又是一个正态分布,而另一个老师所讲的理解是原数据变成了一个正态分布,从数轴上凸出来了。类似一种高维映射。不太懂了。
同时课程的Trainscript等日后真的理解再做修正吧。课程网站上的应该是机器翻译,这节错误很多。 - SVM速度快,同时得到的是全局最优解。相比之下,神经网络速度会慢很多,得到的结果常常是局部最优解。当数据量特别大的时候,计算SVM的kernel会非常的困难,i.e. m=100万。这个时候用logistic regression会好很多。ppt上说,用svm的非核版本也不错。但是这里有一个线性和非线性的问题。
- 多分类问题,逻辑回归做了一个手写数据集的分类,当时是做了,但现在有点忘了。是做了10种θ吗?是线性还是非线性?(Week3 OnevsAll, 是做了10次θ的求解,每个θ是一个vector,最后放到一个matrix里了。至于线性还是非线性,逻辑回归就是线性的,但是400维的线性已经非常之复杂了。足以达到90+的正确预测率)
- SVM这周作业,spam相关用了很多正则表达式过滤各种非必要的词语。这个从python开始接触到就一直感觉特别懵。有机会得好好看看,编译原理讲的就是这个东西。
Readme 《Machine Learning by Andrew NG》的更多相关文章
- 学习笔记之Machine Learning by Andrew Ng | Stanford University | Coursera
Machine Learning by Andrew Ng | Stanford University | Coursera https://www.coursera.org/learn/machin ...
- (原创)Stanford Machine Learning (by Andrew NG) --- (week 10) Large Scale Machine Learning & Application Example
本栏目来源于Andrew NG老师讲解的Machine Learning课程,主要介绍大规模机器学习以及其应用.包括随机梯度下降法.维批量梯度下降法.梯度下降法的收敛.在线学习.map reduce以 ...
- (原创)Stanford Machine Learning (by Andrew NG) --- (week 8) Clustering & Dimensionality Reduction
本周主要介绍了聚类算法和特征降维方法,聚类算法包括K-means的相关概念.优化目标.聚类中心等内容:特征降维包括降维的缘由.算法描述.压缩重建等内容.coursera上面Andrew NG的Mach ...
- (原创)Stanford Machine Learning (by Andrew NG) --- (week 7) Support Vector Machines
本栏目内容来源于Andrew NG老师讲解的SVM部分,包括SVM的优化目标.最大判定边界.核函数.SVM使用方法.多分类问题等,Machine learning课程地址为:https://www.c ...
- (原创)Stanford Machine Learning (by Andrew NG) --- (week 9) Anomaly Detection&Recommender Systems
这部分内容来源于Andrew NG老师讲解的 machine learning课程,包括异常检测算法以及推荐系统设计.异常检测是一个非监督学习算法,用于发现系统中的异常数据.推荐系统在生活中也是随处可 ...
- (原创)Stanford Machine Learning (by Andrew NG) --- (week 4) Neural Networks Representation
Andrew NG的Machine learning课程地址为:https://www.coursera.org/course/ml 神经网络一直被认为是比较难懂的问题,NG将神经网络部分的课程分为了 ...
- (原创)Stanford Machine Learning (by Andrew NG) --- (week 1) Linear Regression
Andrew NG的Machine learning课程地址为:https://www.coursera.org/course/ml 在Linear Regression部分出现了一些新的名词,这些名 ...
- (原创)Stanford Machine Learning (by Andrew NG) --- (week 3) Logistic Regression & Regularization
coursera上面Andrew NG的Machine learning课程地址为:https://www.coursera.org/course/ml 我曾经使用Logistic Regressio ...
- (原创)Stanford Machine Learning (by Andrew NG) --- (week 1) Introduction
最近学习了coursera上面Andrew NG的Machine learning课程,课程地址为:https://www.coursera.org/course/ml 在Introduction部分 ...
- Stanford CS229 Machine Learning by Andrew Ng
CS229 Machine Learning Stanford Course by Andrew Ng Course material, problem set Matlab code written ...
随机推荐
- PHP 字符串大小写操作
PHP为我们提供了字符串中大小写字母转换的函数, strtoupper()将指定的字符全部转换为大写: strtolower()将北定的字符都转换成小写: ucwords()将指定字符串中每个单词的首 ...
- 使用Jackson读取xml
找了不少,什么峰的,什么dn的参差不齐的资料,废话不少,问题是导入的包也没有.不多废话,看下面代码直接复用. package bean;import com.fasterxml.jackson.dat ...
- spring同时集成mybatis和ibatis
最近来了一个新项目,说是新的项目,但是需要用到以前旧的模块代码,旧的模块使用架构为ssi 而新项目使用spring mvc +mybatis,考虑到工作量的问题,所以决定使用spring mvc +m ...
- 2. 从0开始学ARM-CPU原理,基于ARM的SOC讲解
关于ARM的一些基本概念,大家可以参考我之前的文章: <到底什么是Cortex.ARMv8.arm架构.ARM指令集.soc?一文帮你梳理基础概念[科普]> 关于ARM指令用到的IDE开发 ...
- 对话框通过EndDialog返回值传值回父窗体
1. 调用对话(模式调用) MyDialog dlg(this); INT_PTR nRet=dlg.DoModal(); //这里接收模态对话框传出来的指针 if(nRet==IDCANCEL) / ...
- 基于Material Design风格开源的Avalonia UI控件库
前言 今天大姚给大家分享一款基于Material Design风格开源.免费(MIT License)的Avalonia UI控件库:Material.Avalonia. 当前项目还处于alpha阶段 ...
- 程序员失业日记4:半个月拿下4个offer
上篇文章很多小伙伴留言也讲到自己被公司裁员,还有的细心的小伙伴说去年九月就被裁了,在看一下文章的发布时间,绷不住了.先和大家说一下,我已经找到工作,因为最近工作一直都很忙,加上自己也比较懒,所以就拖了 ...
- docker高级篇2-分布式存储之三种算法
面试题: 1~2亿条数据需要缓存,请问如何设计这个缓存案例? 答:单机单台100%是不可能的.肯定是分布式缓存的.那么用Redis如何落地? 一般有三种方案: 哈希取余分区:一致性哈希算法分区:哈希槽 ...
- MyBatis日志工厂
目录 日志工厂 标准日志实现 Log4j 使用步骤: 日志工厂 我们在测试SQL的时候,要是能够在控制台输出 SQL 的话,是不是就能够有更快的排错效率? 如果一个 数据库相关的操作出现了问题,我们可 ...
- Jmeter、postman、python 三大主流技术如何操作数据库?
1.前言 只要是做测试工作的,必然会接触到数据库,数据库在工作中的主要应用场景包括但不限于以下: 功能测试中,涉及数据展示功能,需查库校验数据正确及完整性:例如商品搜索功能 自动化测试或性能测试中,某 ...