自定义博客皮肤VIP专享

*博客头图:

格式为PNG、JPG,宽度*高度大于1920*100像素,不超过2MB,主视觉建议放在右侧,请参照线上博客头图

请上传大于1920*100像素的图片!

博客底图:

图片格式为PNG、JPG,不超过1MB,可上下左右平铺至整个背景

栏目图:

图片格式为PNG、JPG,图片宽度*高度为300*38像素,不超过0.5MB

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+

Gold_Spring的专栏

为IT梦而奋斗

  • 博客(25)
  • 收藏
  • 关注

原创 在Windows上构建和安装Hadoop 2.0或更新的版本

介绍为Windows构建hadoop内核开始一个单节点(伪分布式)集群总结1、介绍Hadoop version 2.2 onwards includes native support for Windows. The official Apache Hadoop releases do not include Windows binaries (yet, as of January 2014

2015-04-26 19:12:38 1002

原创 进行推荐二

引言 探索相似性度量:基于用户推荐程序的另一个重要部分是UserSimilarity实现。基于用户的推荐程序非常依赖这个组件。如果对用户之间的相似性缺乏可靠并有效的定义,这类推荐方法是没有意义的。这也适用于基于用户推荐程序的近亲——基于物品的推荐程序,它同样依赖于相似性。这一个组件非常重要。基于皮尔逊相关系数的相似度皮尔逊相关系数是一个介于-1到1之间的数,它度量两个一一对应的数列之间的线性相关程

2015-04-26 11:04:03 721

原创 进行推荐一

引言 前面提到的两种典型的推荐算法,他们均在Mahout中得到实现:基于用户的推荐程序和基于物品的推荐程序。两种算法均依赖于两个事物(用户或物品)之间的相似性度量,或者说等同性定义。相似性的定义有多种:包括基于皮尔逊相关系数(Pearson correlation)、对数似然值(log likehood)、斯皮尔曼相关系数(Spearman correlation)、谷本系数(Tanimoto c

2015-04-26 00:21:07 561

原创 构造器和多态

引言 通常,构造器不同于其他种类的方法。涉及到多态时仍是如此。尽管构造器并不具备多态性(因为他们实际上是static方法,只不过该static声明是隐式的),但还是非常有必要理解构造器怎样通过多态在复杂的层次机构中运作的。目录构造器的调用顺序继承和清理构造器内部的多态方法的行为总结1、构造器的调用顺序基类的构造器总是在导出类的构造过程中被调用,而且按照继承层次逐渐向上链接每个基类的构造器

2015-04-24 13:06:42 942

原创 polymorphism——可扩展性

现在,让我们回到“乐器”(instrument)示例。由于有多态机制,我们可根据自己的需求对系统添加任意多的新类型,而不需要更改tune()方法。在一个设计良好的oop程序中,大多数或者所有方法都会遵循tune()的模型,而且只与基类接口通信。这样的程序是可扩展性的,因为可以从通用的基类继承出新的数据类型,从而新添加一些功能。那么操作基类的接口的方法不需要任何改动就可以应用于新类。考虑一下“乐器”的

2015-04-22 16:53:31 571

原创 推荐数据的表示

引言推荐的质量很大程度上取决于数据的数量和质量。拥有高质量的数据当然是件好事,而且通常越多越好。 但是,推荐算法天生是数据密集型的,其计算涉及对大量信息的访问。因此,数据的数量和表示方式很大程度上影响执行性能。智能地选择数据结构能够极大地改善性能,数据达到一定规模的时候,这并非小事。目录Mahout如何表示推荐数据DataModel的实现和用法无偏好值时的数据处理1、Mahout如何表示推

2015-04-20 16:59:42 735

原创 运行第一个推荐引擎

引言Mahout包含一个推荐引擎,其中有几种类型实际来自于传统的基于用户和基于物品的推荐程序。它也包含了其他几个算法实现,但是现在我们先看一个简单的基于用户的推荐程序。 目录创建输入创建一个推荐程序分析输出评估一个推荐程序训练数据与评分运行RecommenderEvaluator评估结果评估查准率和查全率运行RecommenderIRStatsEvaluator评估GroupL

2015-04-19 22:04:11 930

原创 SLF4J warning or error messages and their meanings

引言JAVA简易日志门面(Simple Logging Facade for Java,缩写SLF4J),是一套包装Logging 框架的界面程式,以外观模式实现。可以在软件部署的时候决定要使用的 Logging 框架,目前主要支援的有Java Logging API、log4j及logback等框架。以MIT 授权方式发布。 SLF4J 的作者就是 log4j 的作者 Ceki Gülcü,他宣

2015-04-19 11:36:25 1417

原创 推荐系统——基本概念

序帕洛阿尔托研究中心的Tapestry系统(Goldberg et al.1992)引入了协同过滤的思想和概念,展示了如何将显示标注数据和隐式行为数据注入可查询的数据库中,以及用户如何利用这些数据进行个性化过滤。Grouplens系统(Resnick et al.1994)展示了协同过滤方法既能跨网计算又能自动完成,GroupLens针对Usenet新闻消息进行自动协同过滤。MIT的Ringo

2015-04-18 17:38:31 3576

原创 使用Eclipse构建Maven项目

前言 Apache Maven,是一个软件(特别是Java软件)项目管理及自动构建工具,由Apache软件基金会所提供,基于项目对象模型(缩写:POM)概念,Maven利用一个中央信息片断能管理一个项目的构建、报告和文档等步骤。曾是Jakarta项目的子项目,现在为独立Apache项目。 Maven项目使用称为项目对象模型(Project object Model,POM)来配置的。项目对象模型

2015-04-17 21:34:28 880

原创 Mahout分布式程序开发 聚类Kmeans

前言 Mahout是基于Hadoop用于机器学习的程序开发框架,Mahout封装了3大类的机器学习算法,其中包括聚类算法。Kmeans是我们经常会提到的聚类算法之一,特别是处理未知数据集的时候,都会先聚类一下,看看数据集会有些什么样的规则。 本文主要讲解,基于Mahout程序开发,实现分布式的Kmeans算法。目录聚类算法KmeansMahout开发环境介绍用Mahout实现聚类算法Kme

2015-04-17 19:35:27 2065

原创 Hadoop编程调用HDFS

前言 HDFS 全称Hadoop分步文件系统(Hadoop Distributed File System),是Hadoop的核心部分之一。要实现MapReduce的分步式算法时,数据必需提前放在HDFS上。因此,对于HDFS的操作就变得非常重要。Hadoop的命令行,提供了一套完整命令接口,就像Linux命令一样方便使用。 不过,有时候我们还需要在程序中直接访问HDFS,我们可以通过API的方

2015-04-14 21:43:26 821

原创 Mahout分布式程序开发 基于物品的协同过滤ItemCF

前言 Mahout是Hadoop家族中一员,从血缘就继承了Hadoop程序的特点,支持HDFS访问和MapReduce分布式计算法。随着Mahout的发展,从0.7版本开始,Mahout做了重大的升级。移除了部分算法的单机内存计算,只支持基于Hadoop的MapReduce平行计算。目录mahout开发环境介绍Mahout基于Hadoop的分布式计算环境介绍用Mahout实现协同过滤Item

2015-04-14 20:50:30 1784

原创 从源代码剖析Mahout推荐引擎

前言 Mahout框架中cf.taste包实现了推荐算法引擎,它提供了一套完整的推荐算法工具集;同时规范了数据结构,并标准化了程序开发过程。应用推荐算法时,代码也就7-8行,简单地有点像R了,为了使用简单的目标,Mahout推荐引擎必然要做到精巧地程序设计。 本文介绍了Mahout推荐引擎的程序设计。目录Mahout推荐引擎概况标准化的程序开发过程数据模型相似度算法工具集近邻算法工具集

2015-04-14 20:23:55 523

原创 Mahout推荐算法API详解

前言 用Mahout来构建推荐系统,是一件既简单又困难的事情。简单是因为Mahout完整地封装了“协同过滤”算法,并实现了并行化,提供非常简单的API接口;困难是我们不了解算法细节,很难根据业务的场景进行算法配置和调优。 本文将深入算法的API去解释Mahout推荐算法底层的一些事。目录Mahout推荐算法介绍算法评判标准:召回率与准确率Recommender.java的API接口测试程

2015-04-12 21:37:59 880

原创 R实现MapReduce的协同过滤算法

基于物品推荐的协同过滤算法介绍R本地程序实现R基于Hadoop分布式程序实现1.基于物品推荐的协同过滤算法介绍文字说明部分: 越来越多的互联网应用,都开始使用推荐算法(协同过滤算法)。根据用户活跃度和物品流行度,可以分为”基于用户的协同过滤算法”和”基于物品的协同过滤算法”。基于用户的协同过滤算法,是给用户推荐和他兴趣相似的其他用户喜欢的物品。基于物品的协同过滤算法,是给用户推荐和他之前

2015-04-12 20:26:46 753

原创 Mahout学习路线图

前言Mahout是Hadoop家族中与众不同的一个成员,是基于一个Hadoop的机器学习和数据挖掘的分布式计算框架。Mahout是一个跨学科产品,同时也是我认为Hadoop家族中,最有竞争力,最难掌握,最值得学习的一个项目之一。 Mahout为数据分析人员,解决了大数据的门槛;为算法工程师,提供基础的算法库;为Hadoop开发人员,提供了数据建模的标准;为运维人员,打通了和Hadoop连接。 M

2015-04-12 19:49:48 664

原创 Hive学习路线

前言 Hive是Hadoop家族中一款数据仓库产品,Hive最大的特点就是提供了类SQL的语法,封装了底层的MapReduce过程,让有SQL基础的业务人员,也可以直接利用Hadoop进行数据的操作。就是这一点,解决了原始数据分析人员对于大数据分析的瓶颈。目录Hive介绍Hive学习路线图我的使用经历Hive的使用案例1.Hive介绍Hive起源于Facebook,它使得针对Hadoop

2015-04-11 21:34:24 1115

原创 Hadoop家族产品学习路线

目录Hadoop家族产品Hadoop家族学习路线图1.Hadoop家族产品截止到2013年,根据cloudera的统计,Hadoop家族产品已经达到20个! http://blog.cloudera.com/blog/2013/01/apache-hadoop-in-2013-the-state-of-the-platform/ 一句话介绍产品:Apache Hadoop: 是Apa

2015-04-11 21:09:51 629

原创 转机

package polymorphism.music;//Note to play on musical instrumentpublic enum Note { MIDDLE_C, C_SHARP, B_FLAT;//Etc;}///:~package polymorphism.music;//:polymorphism/music/Intrument.javaim

2015-04-11 20:21:57 487

原创 用R解析Mahout用户推荐协同过滤算法(UserCF)

前言 用R全面解析Mahout的基于用户推荐协同过滤算法(UserCF),改进的采用欧式距离,并用R语言实现,与Mahout的结果进行对比。 Mahout是Hadoop家族用于机器学习的一个框架,包括三个部分,推荐,聚类,分类! 我在这里做的是推荐部分。推荐系统在现在的互联网应用中很常见,比如,亚马逊会推荐你买书,豆瓣会给你一个书评,影评。 目录Mahout的模型介绍R语言模型实现算法

2015-04-11 13:51:10 684

原创 用Maven构建Hadoop项目

前言 Hadoop的MapReduce环境是一个复杂的编程环境,所以我们要尽可能地简化构建MapReduce项目的过程。Maven是一个很不错的自动化项目构建工具,通过Maven来帮助我们从复杂的环境配置中解脱出来,从而标准化开发过程。所以,写MapReduce之前,让我们先花点时间把刀磨快! 目录Maven介绍Maven安装(win)Hadoop开发环境介绍用Maven构建Hadoop

2015-04-11 13:17:59 682

原创 用Maven创建Mahout项目

Hadoop家族系列文章,主要介绍Hadoop家族产品,常用项目包括Hadoop,Pig,HBase,Sqoop,Mahout,Zookeeper,Avro,Ambari,Chukwa新增加的项目包括YARN,Hcatalog,Oozie,Cassandra,Hama,Whirr,Flume,Bigtop,Crunch,Hue等。 前言 基于Hadoop的项目,不管是MapReduce开发,还是

2015-04-11 00:11:14 621

原创 多态

在面向对象的程序设计语言中,多态是继数据抽象和继承之后的第三种基本特征。 多态通过分离做什么和怎么做,从另一个角度将接口和实现分离开来。多态不但能够改善代码的组织结构和可读性,还能够创建可扩展的程序——即无论在项目最初创建时还是在需要添加新功能是都可以“生长”的程序!故,多态也称作动态绑定、后期绑定或运行时绑定。 封装:通过合并特征和行为来创建新的数据类型; 实现隐藏:通过将细节

2015-04-09 21:12:28 909 1

原创 用import改变行为之条件编译

欢迎使用Markdown编辑器写博客本Markdown编辑器使用StackEdit修改而来,用它写博客,将会带来全新的体验哦:Markdown和扩展Markdown简洁的语法代码块高亮图片链接和图片上传LaTex数学公式UML序列图和流程图离线写博客导入导出Markdown文件丰富的快捷键快捷键加粗 Ctrl + B 斜体 Ctrl + I 引用 Ctrl

2015-04-04 13:42:26 2579 1

空空如也

空空如也

TA创建的收藏夹 TA关注的收藏夹

TA关注的人

提示
确定要删除当前文章?
取消 删除