您好,欢迎访问三七文档
当前位置:首页 > IT计算机/网络 > 数据挖掘与识别 > Hadoop数据挖掘工具Mahout
Hadoop数据挖掘工具MahoutMahout简介数据挖掘基础课程目标Mahout数据金字塔数据统计分析数据挖掘数据挖掘是从大量数据中提取或“挖掘”知识数据挖掘思想来源:假设检验,模式识别,人工智能,机器学习数据挖掘涉及多学科技术的集成,包括数据库技术、统计、机器学习、高性能计算、模式识别、神经网络、数据可视化、信息提取、图象与信号处理和空间数据分析数据挖掘系统的组成数据库、数据仓库、或其它信息库数据库或数据仓库服务器知识库数据挖掘引擎模式评估模块图形用户界面数据挖掘常用方法数据挖掘任务可以分两类:描述和预测特征分析从数据库中的一组数据中提取出关于这些数据的特征式,这些特征式表达了该数据集的总体特征关联规则描述数据库中数据项之间所存在的关系的规则变化和偏差分析偏差分析是探测数据现状、历史记录或标准之间的显著变化和偏离偏差包括很大一类潜在有趣的知识,如分类中的反常实例,模式的例外,观察结果对期望的偏差等分类和预测回归分析聚类数据挖掘常用方法数据分析工具Mahout支持的算法课程目标回归分析回归分析方法反映的是事务数据库中属性值在时间上的特征步骤:确定变量-建立预测模型-进行相关分析-计算预测误差-确定预测值分类器找出数据库中一组数据对象的共同特点并按照分类模式将其划分为不同的类分类预测的方法训练:训练集——特征选取——训练——分类器分类:新样本——特征选取——分类——判定常用算法:决策树、KNN法、SVM法、VSM法、Bayes法、神经网络聚类把一组数据按照相似性和差异性分为几个类别常见算法:K-means聚类,K-medoid聚类、GMM、层次聚类等聚类GMM将k个高斯模型混合在一起,每个点出现的概率是几个高斯混合的结果层次聚类假设有N个待聚类的样本,对于层次聚类来说,基本步骤就是:1、(初始化)把每个样本归为一类,计算每两个类之间的距离,也就是样本与样本之间的相似度2、寻找各个类之间最近的两个类,把他们归为一类(这样类的总数就少了一个)3、重新计算新生成的这个类与各个旧类之间的相似度4、重复2和3直到所有样本点都归为一类,结束整个聚类过程其实是建立了一棵树,在建立的过程中,可以通过在第二步上设置一个阈值,当最近的两个类的距离大于这个阈值,则认为迭代可以终止。常用数据挖掘算法分类数据分析工具常见算法的Map-Reduce化Mahout的起源和特点课程目标频繁模式挖掘数据分析工具常用传统数据分析工具排行传统数据分析工具的困境R,SAS,SPSS等典型应用场景为实验室工具处理数据量受限于内存,因此无法处理海量数据使用Oracle数据库等处理海量数据,但缺乏有效快速专业的分析功能可以采用抽样等方法,但有局限性,比如对于聚类,推荐系统则无法使用抽样解决方向:Hadoop集群和Map-Reduce并行计算常见算法的Map-Reduce化常见算法的Map-Reduce化Mahout起源ApacheMahout起源于2008年,当时是ApacheLucene的子项目使用Hadoop库,可以将其功能有效地扩展到ApacheHadoop云平台ApacheLucene是一个著名的开源搜索引擎,实现了先进的信息搜索、文本挖掘功能一些ApacheLucene的开发者最终转而开发机器学习算法,这些算法也就形成了最初的ApacheMahoutMahout不久又吸收了名为Taste的开源协同过滤算法的项目2010年4月ApacheMahout最终成为Apache的顶级项目Mahout特点Mahout的主要母的是实现针对大规模数据集的可伸缩的机器学习算法(就是算法的M-R化)Mahout的算法运行在Hadoop平台下,通过MapReduce模式实现。但并不严格要求算法的实现基于Hadoop平台,单个节点或非Hadoop平台也可以目标是帮助开发人员快速建立具有机器智能的应用程序目前比较成熟和活跃的主要包括聚类分类推荐引擎频繁项集的挖掘Mahout算法集算法类算法名中文名分类算法LogisticRegression逻辑回归Bayesian贝叶斯SVM支持向量机Perceptron感知器算法NeuralNetwork神经网络RandomForests随机森林RestrictedBoltzmannMachines有限波尔兹曼机聚类算法CanopyClusteringCanopy聚类K-meansClusteringK均值算法FuzzyK-means模糊K均值ExpectationMaximizationEM聚类(期望最大化聚类)MeanShiftClustering均值漂移聚类HierarchicalClustering层次聚类DirichletProcessClustering狄里克雷过程聚类LatentDirichletAllocationLDA聚类SpectralClustering谱聚类关联规则挖掘ParallelFPGrowthAlgorithm并行FPGrowth算法回归LocallyWeightedLinearRegression局部加权线性回归降维/维约简SingularValueDecomposition奇异值分解PrincipalComponentsAnalysis主成分分析IndependentComponentAnalysis独立成分分析GaussianDiscriminativeAnalysis高斯判别分析进化算法并行化了Watchmaker框架推荐/协同过滤Non-distributedrecommendersTaste(UserCF,ItemCF,SlopeOne)DistributedRecommendersItemCF向量相似度计算RowSimilarityJob计算列间相似度VectorDistanceJob计算向量间距离非Map-Reduce算法HiddenMarkovModels隐马尔科夫模型集合方法扩展Collections扩展了java的Collections类ApacheMahout优点Mahout安装Mahout测试课程目标ApacheMahout优点技术社区活跃良好的扩展性和容错性文档化好,实例丰富100%源代码开源易于使用Mahout安装下载:上传并解压Mahout安装环境变量配置,修改.bashrc,添加如下内容:使配置生效$source.bashrc几个重要的环境变量JAVA_HOMEMAHOUT_JAVA_HOMEHADOOP_CONF_DIRMAHOUT_LOCALMAHOUT_CONF_DIRMAHOUT_HEAPSIZEMahout安装验证安装Mahout测试下载测试数据$wget启动hadoop集群$start-dfs.sh$start-mapred.sh上传测试数据到HDFS$hadoopfs-mkdirtestdata$hadoopfs-putsynthetic_control.datatestdataMahout测试运行k-means算法$mahoutorg.apache.mahout.clustering.syntheticcontrol.kmeans.Job启动12个MapReduceJob任务Thanks
本文标题:Hadoop数据挖掘工具Mahout
链接地址:https://www.777doc.com/doc-5161966 .html