机器学习分类

2018-11-10  本文已影响28人  音符纸飞机

监督/非监督学习

监督学习

K近邻算法
线性回归
逻辑回归
支持向量机(SVM)
决策树和随机森林
神经网络

非监督学习

聚类

K 均值
层次聚类分析(Hierarchical Cluster Analysis,HCA)
期望最大值(Experimental Maximization EM)

可视化和降维

主成分分析(Principal Component Analysis,PCA)
核主成分分析(Kernel PCA)
局部线性嵌入(Locally-Linear Embedding,LLE)
t-分布邻域嵌入算法(t-distributed Stochastic Neighbor Embedding,t-SNE)

关联性规则学习(Associatation rule learning)

Apriori 算法
Eclat 算法

半监督学习

一些算法可以处理部分带标签的训练数据,通常是大量不带标签数据加上小部分带标签数据。这称作半监督学习。

深度信念网络(deep belief networks)

是基于被称为互相叠加的受限玻尔兹曼机(restricted Boltzmann machines,RBM)的非监督组件。

RBM

是先用非监督方法进行训练,再用监督学习方法进行整个系统微调。

强化学习

学习系统在这里被称为智能体(agent),可以对环境进行观察,选择和执行动作,获得奖励(负奖励是惩罚)。然后它必须自己学习哪个是最佳方法(称为策略,policy),以得到长久的最大奖励。策略决定了智能体在给定情况下应该采取的行动。

批量和在线学习

Batch learning

在批量学习中,系统不能进行持续学习:必须用所有可用数据进行训练。这通常会占用大量
时间和计算资源,所以一般是线下做的。首先是进行训练,然后部署在生产环境且停止学
习,它只是使用已经学到的策略。这称为离线学习。

在线学习 Online Learning

在在线学习中,是用数据实例持续地进行训练,可以一次一个或一次几个实例(称为小批量)。每个学习步骤都很快且廉价,所以系统可以动态地学习到达的新数据。
在线学习很适合系统接收连续流的数据(比如,股票价格),且需要自动对改变作出调整。如果计算资源有限,在线学习是一个不错的方案:一旦在线学习系统学习了新的数据实例,它就不再需要这些数据了,所以扔掉这些数据(除非你想滚回到之前的一个状态,再次使用数据)。这样可以节省大量的空间。
在线学习算法也可以当机器的内存存不下大量数据集时,用来训练系统(这称作核外学习,out-of-core learning)。算法加载部分的数据,用这些数据进行训练,重复这个过程,直到用所有数据都进行了训练。
在线学习系统的一个重要参数是,它们可以多快地适应数据的改变:这被称为学习速率。如果你设定一个高学习速率,系统就可以快速适应新数据,但是也会快速忘记老数据(你可不想让垃圾邮件过滤器只标记最新的垃圾邮件种类)。相反的,如果你设定的学习速率低,系统的惰性就会强:即,它学的更慢,但对新数据中的噪声或没有代表性的数据点结果不那么敏感。

基于实例/基于模型的学习

基于实例 (Instance Based)

系统先用记忆学习案例,然后使用相似度测量推广到新的例子。

Model Based

从样本集进行归纳的方法是建立这些样本的模型,然后使用这个模型进行预测。

上一篇下一篇

猜你喜欢

热点阅读