文档详情

大数据挖掘工具资料收集之mahout.docx

发布:2017-08-18约1.11万字共11页下载文档
文本预览下载声明
基本介绍简介Apache Mahout 是 ApacheSoftware Foundation (ASF) 旗下的一个开源项目,提供一些可扩展的机器学习领域经典算法的实现,旨在帮助开发人员更加方便快捷地创建智能应用程序。Mahout 是机器学习和数据挖掘的一个分布式框架,区别于其他的开源数据挖掘软件,它是基于hadoop之上的; 所以hadoop的优势就是Mahout的优势。Mahout用map-reduce实现了部分数据挖掘算法,不过还有很多算法由于各种原因是无法用map-reduce并行实现的。主要功能Mahout 典型的 4 种使用场景的算法。? 推荐引擎算法:通过分析用户的使用行为的历史记录来推算用户最可能喜欢的商品、服务、套餐的相关物品。实现时可以基于用户的推荐(通过查找相似的用户来推荐项目)或基于项目的推荐(计算项目之间的相似度并做出推荐)。? 聚类算法:通过分析将一系列相关的物品等划分为相关性相近的群组。? 分类算法:通过分析一组已经分类的物品,将其他未分类的其他物品按同样规则归入相应的分类。? 相关物品分析算法:识别出一系列经常一起出现的物品组(经常一起查询、放入购物 车等)。具体算法集具体算法集如下表所示:算法类算法名中文名分类算法Logistic Regression逻辑回归Bayesian贝叶斯SVM支持向量机Perceptron感知器算法Neural Network神经网络Random Forests随机森林Restricted Boltzmann Machines有限波尔兹曼机聚类算法Canopy ClusteringCanopy聚类K-means ClusteringK均值算法Fuzzy K-means模糊K均值Expectation MaximizationEM聚类(期望最大化聚类)Mean Shift Clustering均值漂移聚类Hierarchical Clustering层次聚类Dirichlet Process Clustering狄里克雷过程聚类Latent Dirichlet AllocationLDA聚类Spectral Clustering谱聚类关联规则挖掘Parallel FP Growth Algorithm并行FP Growth算法回归Locally Weighted Linear Regression局部加权线性回归降维/维约简Singular Value Decomposition奇异值分解Principal Components Analysis主成分分析Independent Component Analysis独立成分分析Gaussian Discriminative Analysis高斯判别分析进化算法并行化了Watchmaker框架 推荐/协同过滤Non-distributed recommendersTaste(UserCF, ItemCF, SlopeOne)Distributed RecommendersItemCF向量相似度计算RowSimilarityJob计算列间相似度VectorDistanceJob计算向量间距离非Map-Reduce算法Hidden Markov Models隐马尔科夫模型集合方法扩展Collections扩展了java的Collections类系统架构利用开放源码项目并竭力使项目的代码与自己的代码协同工作的人越多,基础架构就越充实。对于 Mahout 来说,这种演进方式促成了多项改进。最显著的一项就是经过重大改进、一致的命令行界面,它使得在本地和 Apache Hadoop 上提交和运行任务更加轻松。这个新脚本位于 Mahout 顶层目录(下文中将称之为 $MAHOUT_HOME)下的 bin 目录中。任何机器学习库都有两个关键组件,即可靠的数学库和一个有效的集合包。数学库(位于 $MAHOUT_HOME 下的数学模块中)提供了多种功能:范围从表示向量、矩阵的数据结构、操作这些数据结构的相关操作符一直到生成随机数的工具和对数似然值等有用的统计数据。Mahout 的集合库包含的数据结构与 Java 集合提供的数据结构相似(Map、List 等),不同之处在于它们原生地支持 Java 原语,例如 int、float 和 double,而非其 Object 对应部分 Integer、Float 和 Double。这一点非常重要,因为在处理拥有数百万项特征的数据集时,需要精打细算地考虑每个位。此外,在较大的规模上,原语及其 Object 对应部分之间的封包成本将成为严重的问题。Mahout 还引入了一种新的集成模块,其中包含的代码旨在补充或扩展 Mahout 的核心功能,但并非所有用户在所有情况下都需要使用这种模块。例如,推荐机制
显示全部
相似文档