机器学习 数据挖掘

数据挖掘和机器学习的区别和联系(参看周志华:数据挖掘与机器学习)

统计学往往醉心于理论的优美而忽视实际的效用

统计学界提供的很多技术通常都要在机器学习界进一步研究,变成有效的机器学习算法之后才能再进入数据挖掘领域

从数据分析的角度来看,绝大多数数据挖掘技术都来自机器学习领域,但机器学习研究往往并不把海量数据作为处理对象,因此,数据挖掘要对算法进行改造,使得算法性能和空间占用达到实用的地步。同时,数据挖掘还有自身独特的内容,即关联分析。

大体上看,数据挖掘可以视为机器学习和数据库的交叉,它主要利用机器学习界提供的技术来分析海量数据,利用数据库界提供的技术来管理海量数据。

例如,网络安全是计算机界的一个热门研究领域,特别是在入侵检测方面,不仅有很多理论成果,还出现了不少实用系统。
那么,人们如何进行入侵检测呢?首先,人们可以通过检查服务器日志等手段来收集大量的网络访问数据,这些数据中不仅包含正常访问模式还包含入侵模式。然后,人们就可以利用这些数据建立一个可以很好地把正常访问模式和入侵模式分开的模型。这样,在今后接收到一个新的访问模式时,就可以利用这个模型来判断这个模式是正常模式还是入侵模式,甚至判断出具体是何种类型的入侵。显然,这里的关键问题是如何利用以往的网络访问数据来建立可以对今后的访问模式进行分类的模型,而这正是机器学习和数据挖掘技术的强项。

模型持久化的意义何在?

在机器学习过程中,一般用来训练模型的过程比较长,所以我们一般会将训练的模型进行保存(持久化),然后进行评估,预测等等,这样便可以节省大量的时间。

 ######################################################################

 【为什么要降维】
*维数灾难:在给定精度下,准确地对某些变量的函数进行估计,所需样本量会随着样本维数的增加而呈指数形式增长。
*降维的意义:克服维数灾难,获取本质特征,节省存储空间,去除无用噪声,实现数据可视化
-------------------------
数据降维分为特征选择和特征提取两种方法

特征选择

参考http://dataunion.org/14072.html

lasso   实现指标集合精简的目的 利用AIC准则、BIC准则达到降维的目的

       基本思想是在回归系数的绝对值之和小于一个常数的约束条件下,使残差平方和最小化,从而能够产生某些严格等于0的回归系数,得到解释力较强的模型。

           参考网址http://bbs.pinggu.org/thread-1415582-1-1.html

Elastic Net  Lasso的一种有效改进方法

特征提取

参考网址http://www.douban.com/note/469279998/ 

参考网址 http://www.kuqin.com/shuoit/20140925/342326.html

监督学习     常见应用场景(分类问题和回归问题)、常见算法(逻辑回归[Logistic Regression]和反向传递神经网络[Back Propagation Neural Network])

非监督学习  数据不被特别标识,学习模型是为了推断出数据的一些内在结构。

         常见应用场景(关联规则的学习以及聚类等)、常见算法(Apriori算法以及k-Means算法)

半监督学习  输入数据部分被标识,部分没有被标识

        这些算法首先对未标识数据进行建模,在此基础上再对标识的数据进行预测。如图论推理算法[Graph Inference]或者拉普拉斯支持向量机[Laplacian SVM]等

强化学习    输入数据作为对模型的反馈

        常见应用场景(动态系统以及机器人控制)、常见算法(Q-Learning以及时间差学习[Temporal difference learning])

回归算法    常见的回归算法包括:最小二乘法(Ordinary Least Square),逻辑回归(Logistic Regression),逐步式回归(Stepwise Regression),多元自适应回归                            样条(Multivariate Adaptive Regression Splines)以及本地散点平滑估计(Locally Estimated Scatterplot Smoothing)

基于实例的算法  先选取一批样本数据,然后根据某些近似性把新数据与样本数据进行比较,通过这种方式来寻找最佳的匹配。

         常见的算法包括:k-Nearest Neighbor(KNN), 学习矢量量化(Learning Vector Quantization),以及自组织映射算法(Self-Organizing Map)

正则化方法    对简单模型予以奖励而对复杂算法予以惩罚。

         常见的算法包括:Ridge Regression, Least Absolute Shrinkage and Selection Operator(LASSO),以及弹性网络(Elastic Net)

决策树学习    常见的算法包括:分类及回归树,ID3,C4.5, 随机森林,多元自适应回归样条(MARS)以及梯度推进机(Gradient Boosting Machine)

贝叶斯方法

基于核的算法

聚类算法

关联规则学习

人工神经网络

深度学习

降低维度算法

集成算法

######################################################

降维

参考网址http://blog.sina.com.cn/s/blog_69d515b10100k8pn.html

    http://www.36dsj.com/archives/26723

    http://dataunion.org/20803.html

机器学习领域中所谓的降维就是指采用某种映射方法,将原高维空间中的数据点映射到低维度的空间中。降维的本质是学习一个映射函数 f : x->y,其中x是原始数据点的表达,目前最多使用向量表达形式。 y是数据点映射后的低维向量表达,通常y的维度小于x的维度(当然提高维度也是可以的)。f可能是显式的或隐式的、线性的或非线性的。

数据降维的方法很多。从不同的角度入手可以有着不同的分类。

  • 根据数据的特性:线性降维和非线性降维。

  两种经典且广泛使用的线性变化方法:主成分分析(PCA)和线性判别分析(LDA)。PCA是丢失原始数据信息最少的一种线性降维方式,而LDA是为了使得降维后的数据点尽可能地容易被区分。[谱(spectral)方法,最后转化成为一个求矩阵特征向量的问题]

     非线性降维算法主要有多维度MDS,线性局部嵌入(LLE),局部线性投影(LLP),Laplacian特征映射,Hessian特征映射和等距映射(Isomap)。LLE能够使降维后的数据较好地保持原有流形结构,可以说是流形学习方法最经典的工作之一(首先假设数据不是分布在闭合的球面或者椭球面上)。

  • 根据是否考虑和利用数据的监督信息可:无监督降维、有监督降维和半监督降维
  • 根据保持数据的结构:全局保持降维、局部保持降维和全局与局部保持一致降维等。

支持向量机

SMO算法的工作原理:

每次循环中选择两个alpha进行优化处理。一旦找到一对合适的alpha,就增大其中一个减小另一个。合适即1)两个alpha在间隔边界之外2)两个alpha还没进行过区间优化或者不在边界上。

原文地址:https://www.cnblogs.com/sxbjdl/p/5084791.html