机器学习
Ricardo.M.Jiang
这个作者很懒,什么都没留下…
展开
-
机器学习系统设计与建议
当我们在运用训练好了的模型来预测未知数据的时候发现有较大的误差,我们下一步可以 做什么? 1. 获得更多的训练实例——通常是有效的,但代价较大,下面的方法也可能有效,可 考虑先采用下面的几种方法。 2. 尝试减少特征的数量 3. 尝试获得更多的特征 4. 尝试增加多项式特征 5. 尝试减少归一化程度 λ 6. 尝试增加归一化程度 λ 我们不应该随机选择上面的某种方法来改进我们原创 2016-12-10 17:25:18 · 1354 阅读 · 0 评论 -
机器学习实战之K近邻算法
k近邻算法概述 简单地说,K近邻算法采用测量不同特征值之间的距离方法进行分类。 优 点 :精度高、对异常值不敏感、无数据输入假定。 缺点:计算复杂度高、空间复杂度高。 适用数据范围:数值型和标称型。它的工作原理是:存在一个样本数 据集合,也称作训练样本集,并且样本集中每个数据都存在标签,即我们知道样本集中每一数据 与所属分类的对应关系。输人没有标签的新数据后,将新数据的每个特征与样本原创 2017-01-21 20:27:38 · 2673 阅读 · 0 评论 -
机器学习之推荐系统
我们从一个例子开始定义推荐系统的问题。 假使我们是一个电影供应商,我们有 5 部电影和 4 个用户,我们要求用户为电影打分。 基于内容的推荐系统 在一个基于内容的推荐系统算法中,我们假设对于我们希望推荐的东西有一些数据,这 些数据是有关这些东西的特征。 在我们的例子中,我们可以假设每部电影都有两个特征,如 x1x_1 代表电影的浪漫程度,x2x_2 代表电影的动作程度。 其中 i:原创 2016-12-17 23:38:04 · 4721 阅读 · 0 评论 -
大规模机器学习
如果我们有一个低方差的模型,增加数据集的规模可以帮助你获得更好的结果。我们应 该怎样应对一个有 100 万条记录的训练集? 以线性回归模型为例,每一次梯度下降迭代,我们都需要计算训练集的误差的平方和, 如果我们的学习算法需要有 20 次迭代,这便已经是非常大的计算代价。 首先应该做的事是去检查一个这么大规模的训练集是否真的必要,也许我们只用 1000 个训练集也能获得较好的效果,我们可以绘制学习原创 2016-12-18 14:43:29 · 1008 阅读 · 0 评论 -
SVM实现邮件分类
首先学习一下svm分类的使用。 主要有以下步骤: Loading and Visualizing DatajTraining Linear SVM Implementing Gaussian KernelTraining SVM with RBF Kernel 选择最优的C, sigma参数 画出边界线 线性keneral实现 C = 1原创 2016-12-16 17:20:53 · 4523 阅读 · 2 评论 -
降维算法学习
降维的动机首先,让我们谈论降维是什么。作为一种生动的例子,我们收集的数据集,有许多, 许多特征,我绘制两个在这里。 假设我们未知两个的特征 x1:长度:用厘米表示;X2,是用英寸表示同一物体的长度。 所以,这给了我们高度冗余表示,也许不是两个分开的特征 x1 和 X2,这两个基本的长 度度量,也许我们想要做的是减少数据到一维,只要有一个数就可以测量这个长度。 有几个不同的的原原创 2016-12-14 09:42:28 · 2435 阅读 · 0 评论 -
机器学习之异常检测
问题的动机 什么是异常检测呢?为了解释这个概念,让我举一个例子吧: 假想你是一个飞机引擎制造商,当你生产的飞机引擎从生产线上流出时,你需要进行 QA (质量控制测试),而作为这个测试的一部分,你测量了飞机引擎的一些特征变量,比如引擎 运转时产生的热量,或者引擎的振动等等。 这里的每个点、每个叉,都是你的无标签数据。这样,异常检测问题可以定义如下:我 们假设后来有一天,你有一个新的飞原创 2016-12-16 09:40:48 · 17163 阅读 · 1 评论 -
神经网络学习
代价函数 首先引入一些便于稍后讨论的新标记方法: 假设神经网络的训练样本有 m 个,每个包含一组输入 x 和一组输出信号 y,L 表示神经 网络层数,SlS_l 表示每层的 neuron 个数(SLSL 表示输出层神经元个数),SLS_L 代表最后一层中处理 单元的个数。将神经网络的分类定义为两种情况:二类分类和多类分类, 二类分类:SLS_L=1, y=0 or 1 表示哪一类; K 类分类原创 2016-12-07 21:55:55 · 885 阅读 · 0 评论 -
手写数字识别实现
本文主要实现手写数字识别,利用多类逻辑回归与神经网络两种方法实现 Multi-class Classification数据源 There are 5000 training examples in ex3data1.mat, where each training example is a 20 pixel by 20 pixel grayscale image of the digi原创 2016-12-12 14:50:28 · 6159 阅读 · 1 评论 -
神经网络入门
我们之前学的,无论是线性回归还是逻辑回归都有这样一个缺点,即:当特征太多时, 计算的负荷会非常大。 普通的逻辑回归模型,不能有效地处理这么多的特征,这时候我们 需要神经网络。 神经元和大脑 神经网络是一种很古老的算法,它最初产生的目的是制造能模拟大脑的机器。 神经网络逐渐兴起于二十世纪八九十年代,应用得非常广泛。但由于各种原因,在 90 年代的后期应用减少了。但是最近,神经网络又东山再原创 2016-12-05 16:41:14 · 1168 阅读 · 0 评论 -
逻辑回归与正则化
在分类问题中,你要预测的变量 y 是离散的值,我们将学习一种叫做逻辑回归 (Logistic Regression) 的算法,这是目前最流行使用最广泛的一种学习算法。在分类问题中,我们尝试预测的是结果是否属于某一个类(例如正确或错误)。分类问 题的例子有:判断一封电子邮件是否是垃圾邮件;判断一次金融交易是否是欺诈;之前我们 也谈到了肿瘤分类问题的例子,区别一个肿瘤是恶性的还是良性的。我们可以用逻辑回原创 2016-12-04 16:19:38 · 12120 阅读 · 3 评论 -
多变量线性回归
目前为止,我们探讨了单变量/特征的回归模型,现在我们对房价模型增加更多的特征, 例如房间数楼层等,构成一个含有多个变量的模型,模型中的特征为(x1,x2,…,xn)增添更多特征后,我们引入一系列新的注释: n 代表特征的数量 x(i)x^{(i)}代表第 i 个训练实例,是特征矩阵中的第 i 行,是一个向量(vector)。 xijx^i_j 代表特征矩阵中第 i 行的第 j 个特征,也就是第原创 2016-12-04 11:03:40 · 8816 阅读 · 0 评论 -
机器学习入门
机器学习是什么? 第一个机器学 习的定义来自于 Arthur Samuel。他定义机器学习为,在进行特定编程的情况下,给予计算机 学习能力的领域。 上述是个有点不正式的定义,也比较古老。另一个年代近一点 的定义,由 Tom Mitchell 提出,来自卡内基梅隆大学,Tom 定义的机器学习是,一个好的学 习问题定义如下,他说,一个程序被认为能从经验 E 中学习,解决任务 T,达到性能度量值原创 2016-12-04 10:59:48 · 1574 阅读 · 0 评论 -
聚类算法学习
聚类是一种非监督学习方法 在一个典型的监督学习中,我们有一个有标签的训练集,我们的目标是找到能够区分正 样本和负样本的决策边界,在这里的监督学习中,我们有一系列标签,我们需要据此拟合一 个假设函数。与此不同的是,在非监督学习中,我们的数据没有附带任何标签,我们拿到的 数据就是这样的: 在这里我们有一系列点,却没有标签。因此,我们的训练集可以写成只有 x(1),x(2)…..一直 到原创 2016-12-12 10:26:15 · 1165 阅读 · 0 评论 -
支持向量机学习
与逻辑回归和神经网络相比,支持向量机,或者简称 SVM,在学习复杂的非线性 方程时 供了一种更为清晰,更加强大的方式 如果我们用一个新的代价函数来代替,即这条从 0 点开始的水平直线,然后是一条斜 线,像上图。那么,现在让我给这两个方程命名,左边的函数,我称之为cost1(z)cos t_1(z) ,同时, 右边函数我称它为cost0(z)cost_0(z)。这里的下标是指在代价函数中原创 2016-12-11 11:08:08 · 1750 阅读 · 0 评论 -
机器学习实战之决策树
你是否玩过二十个问题的游戏,游戏的规则很简单:参与游戏的一方在脑海里想某个事物,其他参与者向他提问题,只允许提20个问题,问题的答案也只能用对或错回答。问问题的人通过 推断分解,逐步缩小待猜测事物的范围。决策树的工作原理与20个问题类似,用户输人一系列数 据,然后给出游戏的答案。 现在我们已经大致了解了决策树可以完成哪些任务,接下来我们将学习如何从一堆原始数据中构造决策树。首先我们讨论构造决策原创 2017-01-22 20:11:25 · 3057 阅读 · 0 评论