机器学习笔记
ALL--IN
在追求技术的道路上,不断前行~
展开
-
机器学习01简介
Machine Learning 是人工智能的核心,主要使用归纳、综合而不是演绎。让计算机模拟人类行为,以获取新的知识或技能重新组织已有的知识结构使之不断改善自身性能一个程序能从经验 E 中学习,解决任务 T,达到性能度量值P,有了经验 E 后,经过 P 评判,程序在处理 T 时的性能有所提升。主题:1、监督学习:回归、支持向量机、核函数、神经网络2转载 2017-02-12 11:46:58 · 244 阅读 · 0 评论 -
机器学习02线性回归、多项式回归、正规方程
单变量线性回归(Linear Regression with One Variable)预测器表达式:选择合适的参数(parameters)θ0 和 θ1,其决定了直线相对于训练集的准确程度。建模误差(modeling error):训练集中,模型预测值与实际值之间的差距。目标:选出使建模误差平方和最小的模型参数,即损失函数最小。转载 2017-02-12 11:51:09 · 884 阅读 · 0 评论 -
机器学习03Logistic回归
逻辑回归 (Logistic Regression)目前最流行,使用最广泛的一种学习算法。分类问题,要预测的变量 y 是离散的值。逻辑回归算法的性质是:它的输出值永远在 0 到 1 之间。逻辑回归模型的假设是:其中:X 代表特征向量g 代表logistic function,是一个常用的Sigmoid function。S转载 2017-02-12 16:19:09 · 229 阅读 · 0 评论 -
机器学习04正则化
正则化(Regularization)过拟合问题(Overfitting):如果有非常多的特征,通过学习得到的假设可能能够非常好地适应训练集 :代价函数可能几乎为 0),但是可能会不能推广到新的数据。第一个模型是一个线性模型,欠拟合,不能很好地适应我们的训练集;第三个模型是一个四次方的模型,过于强调拟合原始数据,而丢失了算法的本质:预测新数据。我们可以看转载 2017-02-12 19:36:17 · 218 阅读 · 0 评论 -
机器学习05神经网络--表示
神经网络:表示(Neural Networks: Representation)如今的神经网络对于许多应用来说是最先进的技术。对于现代机器学习应用,它是最有效的技术方法。神经网络模型是许多逻辑单元按照不同层级组织起来的网络, 每一层的输出变量都是下一层的输入变量。下图为一个 3 层的神经网络:第一层为输入层(Input Layer)转载 2017-02-12 22:40:50 · 239 阅读 · 0 评论 -
机器学习06神经网络--学习
代价函数标记方法:神经网络的训练样本有 m 个每个包含一组输入 x 和一组输出信号 yL 表示神经网络层数Sl表示每层的 neuron 个数(SL 表示输出层神经元个数)将神经网络的分类定义为两种情况:二类分类:SL=1, y=0 or 1 表示哪一类; K 类分类:SL=K, yi = 1 表示分到第 i 类;(K>2)转载 2017-02-13 23:39:52 · 363 阅读 · 0 评论 -
机器学习07应用机器学习的建议
决定下一步做什么(Deciding What to Try Next)确保在设计机器学习系统时,能够选择一条最合适、最正确的道路。具体来讲,将重点关注的问题是:假如你在开发一个机器学习系统,或者想试着改进一个机器学习系统的性能。你应如何决定接下来应该选择哪条道路?1. 获得更多的训练实例——通常有效,但代价较大,下面的方法也可能有效,可考虑先采用下面的几种方法。转载 2017-02-14 06:55:07 · 234 阅读 · 0 评论 -
机器学习08机器学习系统设计
首先要做什么 一个垃圾邮件分类器算法为例:为了解决这样一个问题,首先要做的决定是如何选择并表达特征向量 x。可以选择一个由 100 个最常出现在垃圾邮件中的词所构成的列表,根据这些词是否有在邮件中出现,来获得我们的特征向量(出现为 1,不出现为 0),尺寸为 100×1。 为了构建这个分类器算法,我们可以做很多事,例如: 1. 收集更多的数据,让我们有更多的垃圾转载 2017-02-14 11:38:23 · 277 阅读 · 0 评论 -
机器学习09支持向量机
支持向量机(Support Vector Machines)在监督学习中,许多学习算法的性能都非常类似,因此,重要的不是你该选择使用学习算法 A 还是学习算法 B,而更重要的是,应用这些算法时,所创建的大量数据在应用这些算法时,表现情况通常依赖于你的水平。比如:你为学习算法所设计的特征量的选择,以及如何选择正则化参数,诸如此类的事。还有一个更加强大的算法广泛的应用于工业界和学术转载 2017-02-15 08:42:53 · 263 阅读 · 0 评论 -
机器学习10聚类
无监督学习在非监督学习中,我们需要将一系列无标签的训练数据,输入到一个算法中, 然后让它找这个数据的内在结构。 我们可能需要某种算法帮助我们寻找一种结构。图上的数据看起来可以分成两个分开的点集(称为簇),一个能够找到我圈出的这些点集的算法,就被称为聚类算法。这将是我们介绍的第一个非监督学习算法。 当然, 此后还将提到其他类型的非监督学习算法,它们可以找到其他类型的结转载 2017-02-15 15:19:09 · 319 阅读 · 0 评论 -
机器学习11主成分分析
降维(Dimensionality Reduction):动机一:数据压缩(Data Compression)数据压缩不仅允许们压缩数据,因而使用较少的计算机内存或磁盘空间,它还可以加快学习算法。 可以把任何维度的数据降到任何想要的维度, 例如将 1000 维的特征降至 100 维。动机二:数据可视化(Visualization)如果要将这个 50 维的数据可视原创 2017-02-15 22:57:29 · 411 阅读 · 0 评论 -
机器学习12推荐系统
推荐系统(Recommender Systems) 推荐系统根据浏览用户过去买过什么书,或过去评价过什么电影来判断并推荐新产品给用户。这些系统会为像亚马逊和网飞这样的公司带来很大一部分收入。因此,对推荐系统性能的改善,将对这些企业的有实质性和直接的影响。对机器学习来说,特征是很重要的,你所选择的特征,将对你学习算法的性能有很大的影响。因此,在机器学习中有一种大思想,它针转载 2017-02-16 20:09:20 · 194 阅读 · 0 评论 -
机器学习13大规模数据集
大型数据集的学习(Learning With Large Datasets)如果我们有一个低方差的模型, 增加数据集的规模可以帮助你获得更好的结果。 我们应该怎样应对一个有 100 万条记录的训练集? 以线性回归模型为例,每一次梯度下降迭代,我们都需要计算训练集的误差的平方和,如果我们的学习算法需要有 20 次迭代,这便已经是非常大的计算代价。 首先应该做的事是去检查一个这么大规模转载 2017-02-16 22:35:13 · 2643 阅读 · 0 评论 -
主成分分析法 (PCA) 用于数据可视化实验 -- Matlab版
第一步:下载数据集。https://www.csie.ntu.edu.tw/~cjlin/libsvmtools/datasets/multiclass.html#pendigits第二步:改变数据格式。注:此数据集的各特征值均为像素,即属于同一量纲,故无需归一化步骤。原格式为:8 1:88 2:92 3:2 4:99 5:16 6:66 7:94 8:37 9原创 2017-02-16 11:04:18 · 4893 阅读 · 1 评论