Machine Learning——吴恩达机器学习笔记(酷
【1】
ML Introduction
a. supervised learning & unsupervised learning
监督学习:从给定的训练数据集中学习出一个函数(模型参数),当新的数据到来时,可以根据这个函数预测结果。监督学习的训练集要求包括输入输出,也可以说是特征和目标。训练集中的目标是由人标注的。常用于:训练神经网络、决策树、回归分析、统计分类
无监督学习:输入数据没有被标记,也没有确定的结果。样本数据类别未知,需要根据样本间的相似性对样本集进行分类,试图使类内差距最小化,类间差距最大化。常用方法:1.基于概率密度函数的估计;2.基于样本间相似性。常用于:PCA、deep learning、模式识别
b. reinforcement learning
强化学习:
(1)有监督的学习是从一个已经标记的训练集中进行学习,训练集中每一个样本的特征可以视为是对该situation的描述,而其label可以视为是应该执行的正确的action,但是有监督的学习不能学习交互的情景,因为在交互的问题中获得期望行为的样例是非常不实际的,agent只能从自己的经历(experience)中进行学习,而experience中采取的行为并一定是最优的。这时利用RL就非常合适,因为RL不是利用正确的行为来指导,而是利用已有的训练信息来对行为进行评价。
(2)因为RL利用的并不是采取正确行动的experience,从这一点来看和无监督的学习相似,但是无监督的学习的目的可以说是从一堆未标记样本中发现隐藏的结构,而RL的目的是最大化reward signal。
(3)RL与其他机器学习算法不同的地方在于:其中没有监督者,只有一个reward信号;反馈是延迟的,不是立即生成的;时间在RL中具有重要的意义;agent的行为会影响之后一系列的data。
【2】
Linear regression
线性回归:y = θ * x
最小二乘:J(θ) = J(x, y) = 1/2 * ∑(h(x) - y)2
(原理:误差分析的极大似然估计;设误差服从高斯分布,极大似然估计)
Gradient descent
梯度下降:先选择一个初始点,然后逐步向梯度下降最快的方向选取下一个点;梯度下降的结果和初始点的选取有关:
1. 先给定初始点:θ = 0;
2. 不断改进J(θ)变得更小;θ(i) = θ(i) - α*(φ(J(θ)) / φ(θ(i)));
【如果只有一个训练集:θ(i) = θ(i) - α * (he(x) - y)2 * xi,α 决定了训练步长,即每一次下降的距离】
【对于m个样本: θ(i) = θ(i) - α * ∑(he(x(j)) - y(j))2 * xi(j)】Batch Gradient Descent,每一次更新便利所有的样本;
【对于m个样本:for j = 1 to m {
θ(i) = θ(i) - α * ∑(he(x(j)) - y(j))2 * xi(j)
} (for all i)】Incremental Gradient Descent,每次只用一个样本进行更新,依次往下进行。速度会快很多;不会精确的收敛到局部最小值,总体上接近;
矩阵符号:tr (A) = ∑i=1:n Aii,求对角元素之和 trace:
tr (AB) = tr (BA);
tr (ABC) = tr (BCA) = tr (CAB)
grad(AB)A = BT
grad(ABATC)A = CAB + CTABT
矩阵求解:grad(J(θ)) = 0 → XTXθ=XTY → θ = (XTX)-1XTY
【3】
Linear regression 参数学习算法,有固定的参数来进行拟合;
underfitting 欠拟合:拟合太单一,不准确;
overfitting 过拟合;仅仅反映已有的数据集的特征,没有包括实际意义;
Locally weighted regression 局部加权回归:注重对零界点的精准拟合,忽略那些离得远的点的贡献! 非参数学习算法,参数的数目随着训练集数量m的增长而增长:
在所选取的点周围选取点,进行局部的线性拟合成直线,用拟合值作为该点的值,而不是带入全局拟合函数求值:
Fit θ to minimize ∑w(i) * (y(i) - θTx(i))2 , where w(i) = exp(-(x(i)-x)2/2τ) 衰减函数,τ波长函数,控制权值随距离下降的速度;
If |x(i)-x| small, then w(i) ≈ 1
If |x(i)-x| large, then w(i) ≈ 0
(每选择一个新的点进行求值,都需要重新进行一次拟合,对于特别大的训练集来说更新很吃力)
Logistic regression 分类问题
sigmoid function( logistic function) g(z) = 1 / (1 + e-z)
与线性回归不同的是,梯度上升而不是下降;
Preception algorithm 感知器算法
g(z) = { 1, if z >= 0; 0, otherwise}
Newton’s method
4.
Logistic regression
Exponential family
Generalized linear models
5.
Generative learning algorithms
Gaussian Discriminant ****ysis
Naïve Bayes
Laplace smoothing
6.
Naïve Bayes
Neural networks
Support vector machine
7.
Optimal margin classifier
KKT
SVM dual
Kernel
8.
SVM
Kernel
Soft margin
SMO algorithms
9.
Learning theory
Bias/variance
Empirical Risk Minimization (ERM)
Union Bound
Hoeffding Inequality
Uniform convergence
10.
Learning theory
VC dimension
Model selection
Bayesian statistics and regularization
11.
Bayesian statistics and regularization
Online learning
Applying machine learning
12.
Unsupervised learning
Cluster K-means
Mixture of Gaussian
Jensen and Equality
EM (Expectation Maximization)
13.
EM
Mixture of Gaussians
Mixture of naïve Bayes
Factor ****ysis
14
Factor ****ysis
Principal Component ****ysis
15.
PCA
Latent Semitic Indexing (LSI)
SVD
Independent component ****ysis (ICA)
16.
Reinforcement Learning
Markov Decision Processes (MDPs)
Value functions
Value iteration
Policy iteration
17.
MDPs
Approximate policy iteration
18.
State-action reward
Horizon MDPs
Linear dynamical systems
Linear-quadratic regulation (LQR)
Riccati equation
19.
Debugging RL algorithms
LQR
French dynamic programming
Kalman filters
Linear-quadratic Gaussian control (LGG)
20.
POMDPs
Policy search
Reinforced
Pegasus
Machine Learning——吴恩达机器学习笔记(酷的更多相关文章
- Machine Learning|Andrew Ng|Coursera 吴恩达机器学习笔记
Week1: Machine Learning: A computer program is said to learn from experience E with respect to some ...
- Machine Learning|Andrew Ng|Coursera 吴恩达机器学习笔记(完结)
Week 1: Machine Learning: A computer program is said to learn from experience E with respect to some ...
- 吴恩达机器学习笔记(六) —— 支持向量机SVM
主要内容: 一.损失函数 二.决策边界 三.Kernel 四.使用SVM (有关SVM数学解释:机器学习笔记(八)震惊!支持向量机(SVM)居然是这种机) 一.损失函数 二.决策边界 对于: 当C非常 ...
- 吴恩达机器学习笔记(十一) —— Large Scale Machine Learning
主要内容: 一.Batch gradient descent 二.Stochastic gradient descent 三.Mini-batch gradient descent 四.Online ...
- 吴恩达机器学习笔记60-大规模机器学习(Large Scale Machine Learning)
一.随机梯度下降算法 之前了解的梯度下降是指批量梯度下降:如果我们一定需要一个大规模的训练集,我们可以尝试使用随机梯度下降法(SGD)来代替批量梯度下降法. 在随机梯度下降法中,我们定义代价函数为一个 ...
- 吴恩达机器学习笔记54-开发与评价一个异常检测系统及其与监督学习的对比(Developing and Evaluating an Anomaly Detection System and the Comparison to Supervised Learning)
一.开发与评价一个异常检测系统 异常检测算法是一个非监督学习算法,意味着我们无法根据结果变量
- 吴恩达机器学习笔记37-学习曲线(Learning Curves)
学习曲线就是一种很好的工具,我经常使用学习曲线来判断某一个学习算法是否处于偏差.方差问题.学习曲线是学习算法的一个很好的合理检验(sanity check).学习曲线是将训练集误差和交叉验证集误差作为 ...
- [吴恩达机器学习笔记]12支持向量机5SVM参数细节
12.支持向量机 觉得有用的话,欢迎一起讨论相互学习~Follow Me 参考资料 斯坦福大学 2014 机器学习教程中文笔记 by 黄海广 12.5 SVM参数细节 标记点选取 标记点(landma ...
- [吴恩达机器学习笔记]12支持向量机3SVM大间距分类的数学解释
12.支持向量机 觉得有用的话,欢迎一起讨论相互学习~Follow Me 参考资料 斯坦福大学 2014 机器学习教程中文笔记 by 黄海广 12.3 大间距分类背后的数学原理- Mathematic ...
随机推荐
- Eclipse导出可运行的jar包并运行
https://blog.csdn.net/kpchen_0508/article/details/49275407 程序运行的第二种方式:
- 深入浅出SharePoint——使用WinDbg进行调试
- linux 根据端口号查看占用进程的pid
1.netstat -nap | grep 端口号 2.第一种的可以查看端口号对应的pid,但是会出现pid为空的情况,这种时候用:lsof -i:端口号 3.根据pid查看端口号 netstat - ...
- BZOJ1259:[CQOI2007]矩形rect(DFS)
Description 给一个a*b矩形,由a*b个单位正方形组成.你需要沿着网格线把它分成分空的两部分,每部分所有格子连通,且至少有一个格子在原矩形的边界上.“连通”是指任两个格子都可以通过水平或者 ...
- @property 装饰器
property() 函数作用于新式类,返回属性值. class C(object): def __init__(self): self._x = None def getx(self): print ...
- IE8崩溃在CElement::GetUpdatedLayoutWithContext
发了一个我们页游助手的版本时,测试报告在某些机器上点开某网站时崩溃 "0x637e5067指令引用的0x00000008内存,该内存不能为read",查看dump文件,堆栈如下: ...
- random模块 参生随机数
记得要import random模块 随机整数: >>> import random >>> random.randint(0,99) 21 随机选取0到100间的 ...
- windows下使用docker(一)—— 安装
1.下载地址:https://docs.docker.com/docker-for-windows/install/#download-docker-for-windows 2.安装 按照安装向导安装 ...
- js replace替换一段文本中所有的相同字符
在html<textarea>标签中回车换行的代码是: \n,html编辑器的回车换行是:\r\n或是\n. 下图是存入后台的<textarea>的文本,需要在页面上显示出来, ...
- 数据包式套接字:基于UDP协议的Socket网络编程
步骤: 1.利用DatagramPacket封装数据包: 2.利用DatagramSocket发送数据包: 3.利用DatagramSocket接收数据包: 4.利用DatagramPacket处理数 ...