本篇我们讨论如何运行或者运用SVM. 在高斯核函数之外我们还有其他一些选择,如:多项式核函数(Polynomial Kernel)字符串核函数(String kernel)卡方核函数( chi-square kernel)直方图交集核函数(histogram intersection kernel)等等... 这些核函数的目标也都是根据训练集和地标之间的距离来构建新特征,这些核函数需要满足Mercer's 定理,才能被支持向量机的优化软件正确处理. 多类分类问题 假设我们利用之前介绍的一对多方法…
12.支持向量机 觉得有用的话,欢迎一起讨论相互学习~Follow Me 参考资料 斯坦福大学 2014 机器学习教程中文笔记 by 黄海广 12.5 SVM参数细节 标记点选取 标记点(landmark)如图所示为\(l^{(1)},l^{(2)},l^{(3)}\),设核函数为 高斯函数 ,其中设预测函数y=1 if \(\theta_0+\theta_{1}f_1+\theta_{2}f_2+\theta_{3}f_3\ge0\) 在实际中需要用 很多标记点 ,那么如何选取 标记点(lan…
12.支持向量机 觉得有用的话,欢迎一起讨论相互学习~Follow Me 参考资料 斯坦福大学 2014 机器学习教程中文笔记 by 黄海广 12.1 SVM损失函数 从逻辑回归到支持向量机 为了描述支持向量机,事实上,我将会从逻辑回归开始展示我们如何一点一点修改来得到本质上的支持向量机. 逻辑回归公式 逻辑回归公式如下图所示, 可以看出逻辑回归公式由两个变量x和\(\theta\)构成,其中x表示输入的数据,而\(\theta\)是可学习的变量,如图中右半部分所示,其图像坐标轴横轴为x.\(h…
主要内容: 一.损失函数 二.决策边界 三.Kernel 四.使用SVM (有关SVM数学解释:机器学习笔记(八)震惊!支持向量机(SVM)居然是这种机) 一.损失函数 二.决策边界 对于: 当C非常大时,括号括起来的部分就接近于0,所以就变成了: 非常有意思的是,在最小化 1/2*∑θj^2的时候,最小间距也达到最大.原因如下: 所以: 即:如果我们要最小化1/2*∑θj^2,就要使得||θ||尽量小,而当||θ||最小时,又因为,所以p(i)最大,即间距最大. 注意:C可以看成是正则项系数λ…
12.支持向量机 觉得有用的话,欢迎一起讨论相互学习~Follow Me 参考资料 斯坦福大学 2014 机器学习教程中文笔记 by 黄海广 12.3 大间距分类背后的数学原理- Mathematics Behind Large Margin classification 向量内积 假设有两个向量\(u=\begin{bmatrix}u_1\\u_2\\ \end{bmatrix}\),向量\(v=\begin{bmatrix}v_1\\v_2\\ \end{bmatrix}\),其中向量的内积…
12.支持向量机 觉得有用的话,欢迎一起讨论相互学习~Follow Me 参考资料 斯坦福大学 2014 机器学习教程中文笔记 by 黄海广 12.2 大间距的直观理解- Large Margin Intuition 人们有时将支持向量机看作是大间距分类器.在这一部分,我将介绍其中的含义,这有助于我们直观理解 SVM 模型的假设是什么样的.以下图片展示的是SVM的代价函数: 最小化SVM代价函数的必要条件 如果你有一个正样本,y=1,则只有在z>=1时代价函数\(cost_1(z)\)才等于0.…
12.支持向量机 觉得有用的话,欢迎一起讨论相互学习~Follow Me 12.6SVM总结 推荐使用成熟的软件包 用以解决 SVM 最优化问题的软件很复杂,且已经有研究者做了很多年数值优化.因此强烈建议使用高优化软件库中的一个,而不是尝试自己落实一些框架.有许多好的软件库,NG用得最多的两个是 liblinear 和 libsvm 归一化处理 Note 无论使用使用何种模型进行拟合,原始输入数据都需要进行归一化处理 需要指定的参数 即使用高度优化的软件包,有些参数还是需要自己做出指定的. 正则…
12.支持向量机 觉得有用的话,欢迎一起讨论相互学习~Follow Me 12.4 核函数与标记点- Kernels and landmarks 问题引入 如果你有以下的训练集,然后想去拟合其能够分开正负样本的非线性判别边界. 一种办法是构造一个复杂多项式特征的集合: \[h_{\theta}(x)=\begin{cases} 1\ \ if\ \ \theta_{0}+\theta_{1}x_1+\theta_{2}x_2+\theta_{3}x_1x_2+\theta_{4}x_{1}^{2…
11. 机器学习系统的设计 觉得有用的话,欢迎一起讨论相互学习~Follow Me 参考资料 斯坦福大学 2014 机器学习教程中文笔记 by 黄海广 11.3 偏斜类的误差度量 Error Metrics for Skewed Classes 偏斜类 Skewed Classes 类偏斜情况表现为训练集中有非常多的同一种类的实例,只有很少或没有其他类的实例 示例 例如我们希望用算法来预测癌症是否是恶性的,在我们的训练集中,只有0.5%的实例是恶性肿瘤.假设我们编写一个非学习而来的算法,在所有情…
一.逻辑回归问题(分类问题) 生活中存在着许多分类问题,如判断邮件是否为垃圾邮件:判断肿瘤是恶性还是良性等.机器学习中逻辑回归便是解决分类问题的一种方法.二分类:通常表示为yϵ{0,1},0:"Negative Class",1:"Possitive Class". 逻辑回归的预测函数表达式hθ(x)(hθ(x)>=0 && hθ(x)<=1): 其中g(z)被称为逻辑函数或者Sigmiod函数,其函数图形如下: 理解预测函数hθ(x)的…
一.初识机器学习 何为机器学习?A computer program is said to learn from experience E with respect to some task T and some performance measure P, if its performance on T, as measured by P, improves with experience E.理解:通过实验E,完成某一项任务T,利用评价标准P对实验结果进行迭代优化! 机器学习主要包括监督学习…
最后一章内容,主要是OCR的实例,很多都是和经验或者实际应用有关:看完了,总之,善始善终,继续加油!! 一.图像识别(店名识别)的步骤: 图像文字识别应用所作的事是,从一张给定的图片中识别文字.这比从一份扫描文档中识别文字要复杂的多. 为了完成这样的工作,需要采取如下步骤: 1.文字侦测(Text detection)——将图片上的文字与其他环境对象分离开来 2.字符切分(Character segmentation)——将文字分割成一个个单一的字符 3.字符分类(Character class…
一.问题动机 异常检测(Anomaly detection)问题是机器学习算法的一个常见应用.这种算法的一个有趣之处在于:它虽然主要用于非监督学习问题,但从某些角度看,它又类似于一些监督学习问题. 给定数据集…
这是我的支持向量机模型的代价函数,在左边这里我画出了关于…
如果你准备研究机器学习的东西,或者构造机器学习应用程序,最好的实践方法不是建立一个非常复杂的系统,拥有多么复杂的变量:而是构建一个简单的算法,这样你可以很快地实现它. 构建一个学习算法的推荐方法为:1. 从一个简单的能快速实现的算法开始,实现该算法并用交叉验证集数据测试这个算法2. 绘制学习曲线,决定是增加更多数据,或者添加更多特征,还是其他选择3. 进行误差分析:人工检查交叉验证集中我们算法中产生预测误差的实例,看看这些实例是否有某种系统化的趋势. 类偏斜情况表现为我们的训练集中有非常多的同一…
到现在为止,我们已经学习了几种不同的学习算法,包括线性回归和逻辑回归,它们能够有效地解决许多问题,但是当将它们应用到某些特定的机器学习应用时,会遇到过拟合(over-fitting)的问题,可能会导致它们效果很差. 在这段视频中,我会解释什么是过度拟合问题,并且在此之后接下来的几个视频中,我们将谈论一种称为正则化(regularization)的技术,它可以改善或者减少过度拟合问题.如果我们有非常多的特征,我们通过学习得到的假设可能能够非常好地适应训练集(代价函数可能几乎为0),但是可能会不能推…
梯度下降算法和线性回归算法比较如图: 对我们之前的线性回归问题运用梯度下降法,关键在于求出代价函数的导数,即: 我们刚刚使用的算法,有时也称为批量梯度下降.实际上,在机器学习中,通常不太会给算法起名字,但这个名字”批量梯度下降”,指的是在梯度下降的每一步中,我们都用到了所有的训练样本,在梯度下降中,在计算微分求导项时,我们需要进行求和运算,所以,在每一个单独的梯度下降中,我们最终都要计算这样一个东西,这个项需要对所有…
http://www.cnblogs.com/xing901022/p/9374258.html 本章讲述的是一个复杂的机器学习系统,通过它可以看到机器学习的系统是如何组装起来的:另外也说明了一个复杂的流水线系统如何定位瓶颈与分配资源. 更多内容参考 机器学习&深度学习 OCR的问题就是根据图片识别图片中的文字: 这种OCR识别的问题可以理解成三个步骤: 文本检测 字符切分 字符识别 文本检测 文本的检测可以用行人的检测来做,思路差不多. 我们定义几个固定大小尺寸的窗口,从照片的左上角开始扫描.…
http://www.cnblogs.com/xing901022/p/9332529.html 本章主要讲解了逻辑回归相关的问题,比如什么是分类?逻辑回归如何定义损失函数?逻辑回归如何求最优解?如何理解决策边界?如何解决多分类的问题? 更多内容参考 机器学习&深度学习 有的时候我们遇到的问题并不是线性的问题,而是分类的问题.比如判断邮件是否是垃圾邮件,信用卡交易是否正常,肿瘤是良性还是恶性的.他们有一个共同点就是Y只有两个值{0,1},0代表正类,比如肿瘤是良性的:1代表负类,比如肿瘤是恶性的…
[1] ML Introduction a. supervised learning & unsupervised learning 监督学习:从给定的训练数据集中学习出一个函数(模型参数),当新的数据到来时,可以根据这个函数预测结果.监督学习的训练集要求包括输入输出,也可以说是特征和目标.训练集中的目标是由人标注的.常用于:训练神经网络.决策树.回归分析.统计分类 无监督学习:输入数据没有被标记,也没有确定的结果.样本数据类别未知,需要根据样本间的相似性对样本集进行分类,试图使类内差距最小化,…
14.降维 觉得有用的话,欢迎一起讨论相互学习~Follow Me 14.5重建压缩表示 Reconstruction from Compressed Representation 使用PCA,可以把 1000 维的数据压缩到100 维特征,或将三维数据压缩到一二维表示.所以,如果如果把PCA任务是一个压缩算法,应该能回到这个压缩表示之前的形式,回到原有的高维数据的一种近似.下图是使用PCA将样本\(x^{(i)}映射到z^{(i)}\)上 即是否能通过某种方法将z上的点重新恢复成使用\(x_{…
Week1: Machine Learning: A computer program is said to learn from experience E with respect to some class of tasks T and performance measure P, if its performance at tasks in T, as measured by P, improves with experience E. Supervised Learning:We alr…
一. 逻辑回归 1.背景:使用逻辑回归预测学生是否会被大学录取. 2.首先对数据进行可视化,代码如下: pos = find(y==); %找到通过学生的序号向量 neg = find(y==); %找到未通过学生的序号向量 plot(X(pos,),X(pos,),,); %使用+绘制通过学生 hold on; plot(X(neg,),X(neg,),); %使用o绘制未通过学生 % Put some labels hold on; % Labels and Legend xlabel('E…
一.准备工作 从网站上将编程作业要求下载解压后,在Octave中使用cd命令将搜索目录移动到编程作业所在目录,然后使用ls命令检查是否移动正确.如: 提交作业:提交时候需要使用自己的登录邮箱和提交令牌,如下: 二.单变量线性回归 绘制图形:rx代表图形中标记的点为红色的x,数字10表示标记的大小. plot(x, y, ); % Plot the data 计算代价函数(Cost Funtion):迭代次数1500,学习速率0.01.  iterations = 1500; alpha = 0.…
一.多变量线性回归问题(linear regression with multiple variables) 搭建环境OctaveWindows的安装包可由此链接获取:https://ftp.gnu.org/gnu/octave/windows/,可以选择一个比较新的版本进行安装,本人win10操作系统,安装版本4.2.1,没有任何问题.注意不要安装4.0.0这个版本.当然安装MATLAB也是可以的,我两个软件都安装了,在本课程中只使用Octave就已经足够用了! 符号标记:n(样本的特征数/属…
一.随机梯度下降算法 之前了解的梯度下降是指批量梯度下降:如果我们一定需要一个大规模的训练集,我们可以尝试使用随机梯度下降法(SGD)来代替批量梯度下降法. 在随机梯度下降法中,我们定义代价函数为一个单一训练实例的代价: 随机梯度下降算法为:首先对训练集随机“洗牌”,然后: 下面是随机梯度下降算法的过程以及和批量梯度下降算法的异同: 随机梯度下降算法是先只对第1个训练样本计算一小步的梯度下降,即这个过程包括调参过程,然后转向第2个训练样本,对第2个训练样本计算一小步的梯度下降,这个过程也包括调参…
一.向量化:低秩矩阵分解 之前我们介绍了协同过滤算法,本节介绍该算法的向量化实现,以及说说有关该算法可以做的其他事情. 举例:1.当给出一件产品时,你能否找到与之相关的其它产品.2.一位用户最近看上一件产品,有没有其它相关的产品,你可以推荐给他. 我们将要做的是:实现一种选择的方法,写出协同过滤算法的预测情况. 我们有关于五部电影的数据集,我将要做的是,将这些用户的电影评分,进行分组并存到一个矩阵中. 我们有五部电影,以及四位用户,那么 这个矩阵…
在之前的基于内容的推荐系统中,对于每一部电影,我们都掌握了可用的特征,使用这些特征训练出了每一个用户的参数.相反地,如果我们拥有用户的参数,我们可以学习得出电影的特征. 但是如果我们既没有用户的参数,也没有电影的特征,这两种方法都不可行了.协同过滤算法可以同时学习这两者. 我们的优化目标便改为同时针对…
假使我们是一个电影供应商,我们有 5 部电影和 4 个用户,我们要求用户为电影打分. 前三部电影是爱情片,后两部则是动作片,我们可以看出Alice 和Bob 似乎更倾向与爱情片, 而 Carol 和 Dave 似乎更倾向与动作片.并且没有一个用户给所有的电影都打过分.我们希望构建一个算法来预测他们每个人可能会给他们没看过的电影打多少分,并以此作为推荐的依据. 下面引入一些标记:…
一.多元高斯分布简介 假使我们有两个相关的特征,而且这两个特征的值域范围比较宽,这种情况下,一般的高斯分布模型可能不能很好地识别异常数据.其原因在于,一般的高斯分布模型尝试的是去同时抓住两个特征的偏差,因此创造出一个比较大的判定边界. 下图中是两个相关特征,洋红色的线(根据ε 的不同其范围可大可小)是一般的高斯分布模型获得的判定边界,很明显绿色的X 所代表的数据点很可能是异常值,但是其…