传统数据挖掘/机器学习库存在的问题

        缺少一个活跃的技术社区
        扩展性差
        文档化差,缺少实例
        不开源。商业化库
        通常由研究机构开发
        实施性差

Apache Mahout长处


        技术社区活跃
        扩展性好
        文档化好。实例丰富
        100%源码开源
        易于使用

Apache Mahout是什么


        基于MapReduce开发的数据挖掘/机器学习库
        良好的扩展性和容错性
        充分利用了MapReduceHDFS的扩展性和容错性
        属于Hadoop生态系统重要组成部分
        Apache Software License 2
        实现了大部分经常使用的数据挖掘算法
        聚类算法
        分类算法
        推荐算法

Mahout提供的算法

http://cwiki.apache.org/confluence/display/MAHOUT/Algorithms


聚类算法介绍


        将类似的对象划分成多个类的过程
        “物以类聚,人以群分”
        以k-means聚类算法为例介绍
                给定聚类个数k
                依照数据特征,将其分为k个类别

分类的基本流程


        有监督机器学习算法
        需提供样本,依据样本得到分类模型
        分类三步骤
                步骤1:训练样本。得到分类模型;
                步骤2:对分类模型进行測试,并尝试调优
                步骤3:将分类模型用于线上产品中


推荐算法介绍


        诞生于电子商务系统中;
        依据用户的兴趣特点和购买行为,向用户推荐用户感兴趣的信息和商品;
        以协同过滤推荐算法为例进行介绍
                推荐系统中应用最早和最为成功的技术之中的一个
                如果:为一用户找到他真正感兴趣的内容的好方法是首先找到与此用户有相似兴趣的其它用户,然后将他们感兴趣的内容推荐给此用 户

协同过滤推荐算法—基本元素


    Item
        可以被推荐给使用者的项目
    User
        可以推Item做评分,能为系统推荐Item的使用者
    Preference
        User对Item的评分
        { userId, itemId, rating }

User-Item矩阵


User-based

watermark/2/text/aHR0cDovL2Jsb2cuY3Nkbi5uZXQv/font/5a6L5L2T/fontsize/400/fill/I0JBQkFCMA==/dissolve/70/gravity/Center" alt="" width="800">

Item-based



User-based 与 Item-based

    User-based
        基于使用者间的相似性推荐项目
    Item-based
        基于项目间的相似性推荐给使用者
    各有优劣
        User-based的推荐效果好
        Item-based的计算效率高

Taste: Mahout自带的一个推荐系统实现


        Taste 是 Apache Mahout提供的一个协同过滤算法的高效实现。
        基于 Java 实现的可扩展的,高效的推荐引擎。
        实现了最主要的基于用户的和基于内容的推荐算法,也提供了扩展接口。使用户能够方便的定义和实现自己的推荐算法。
        Taste 的设计使它能满足企业对推荐引擎在性能、灵活性和可扩展性等方面的要求。

总结
        1.数据挖掘/机器学习算法对技术人员有较高要求。
        2.Mahout提供了一个通用数据挖掘/机器学习库。但对技术人员要求仍很高。


大数据(十一) - Mahout的更多相关文章

  1. ApacheCN 大数据译文集(二) 20211206 更新

    Hadoop3 大数据分析 零.前言 一.Hadoop 简介 二.大数据分析概述 三.MapReduce 大数据处理 四.基于 Python 和 Hadoop 的科学计算和大数据分析 五.基于 R 和 ...

  2. CRL快速开发框架系列教程十一(大数据分库分表解决方案)

    本系列目录 CRL快速开发框架系列教程一(Code First数据表不需再关心) CRL快速开发框架系列教程二(基于Lambda表达式查询) CRL快速开发框架系列教程三(更新数据) CRL快速开发框 ...

  3. 大数据入门第十九天——推荐系统与mahout(一)入门与概述

    一.推荐系统概述 为了解决信息过载和用户无明确需求的问题,找到用户感兴趣的物品,才有了个性化推荐系统.其实,解决信息过载的问题,代表性的解决方案是分类目录和搜索引擎,如hao123,电商首页的分类目录 ...

  4. 王家林的“云计算分布式大数据Hadoop实战高手之路---从零开始”的第十一讲Hadoop图文训练课程:MapReduce的原理机制和流程图剖析

    这一讲我们主要剖析MapReduce的原理机制和流程. “云计算分布式大数据Hadoop实战高手之路”之完整发布目录 云计算分布式大数据实战技术Hadoop交流群:312494188,每天都会在群中发 ...

  5. 成都大数据Hadoop与Spark技术培训班

    成都大数据Hadoop与Spark技术培训班   中国信息化培训中心特推出了大数据技术架构及应用实战课程培训班,通过专业的大数据Hadoop与Spark技术架构体系与业界真实案例来全面提升大数据工程师 ...

  6. 大数据实时处理-基于Spark的大数据实时处理及应用技术培训

    随着互联网.移动互联网和物联网的发展,我们已经切实地迎来了一个大数据 的时代.大数据是指无法在一定时间内用常规软件工具对其内容进行抓取.管理和处理的数据集合,对大数据的分析已经成为一个非常重要且紧迫的 ...

  7. PayPal高级工程总监:读完这100篇论文 就能成大数据高手(附论文下载)

    100 open source Big Data architecture papers for data professionals. 读完这100篇论文 就能成大数据高手 作者 白宁超 2016年 ...

  8. Azure HDInsight 和 Spark 大数据实战(一)

    What is HDInsight? Microsoft Azure HDInsight 是基于 Hortonoworks Data Platform (HDP) 的 Hadoop 集群,包括Stor ...

  9. Hadoop 大数据第一天

    大数据第一天 1.Hadoop生态系统 1.1 Hadoop v1.0 架构 MapReduce(用于数据计算) HDFS(用于存储数据) 1.2 Hadoop v2.0 架构 MapReduce(用 ...

随机推荐

  1. 《Python自然语言处理》

    <Python自然语言处理> 基本信息 作者: (美)Steven Bird    Ewan Klein    Edward Loper 出版社:人民邮电出版社 ISBN:97871153 ...

  2. [C#技术] DataSet(DataTable)轻松的通过Sum、Aver、Count等统计出相关结果

    我们在使用Sql ******这些数据库时,可以轻松的通过Sum.Aver.Count等统计出相关结果,那么,在已经把数据检索出来的DataSet(DataTable)中呢?特别是通过Web Serv ...

  3. Kubeadm安装Kubernetes环境

    Kubeadm方式号称一键安装部署,很多人也试过并且顺利成功,可到了我这里因为折腾系统问题,倒腾出不少的坑出来. kubeadm好处是自动配置了必要的服务,以及缺省配置了安全的认证,etcd,apis ...

  4. Memcache的安装与配置

    因为单位要求修复Memcached的DDOS漏洞,整理了本文.之前的文章防止Memcached的DDOS攻击另外一个思路 提到了解决方案,我们使用的版本较低,因此需要对 Memcached 进行升级, ...

  5. [转]mysql在已有无分区表增加分区,mysql5.5才有,可以是innodb_file_per_table关闭状态.

    FROM : http://blog.csdn.net/sunvince/article/details/7752662 mysql5.1的时候新增的partition,解决了比较简单的shardin ...

  6. 【转】PHP笔试题2010年

    From : http://www.51projob.com/a/PHP/20120905/602.html 下午,还有一场比较大的面试等着我[虽然接到pps的录用电话,可是心里还是想去verycd试 ...

  7. jcseg-1.8.7版本发布 - 多配置适应+完整开发帮助文档

    jcseg是使用java开发的一款开源中文分词器, 并且提供了最新版本的lucene和solr分词接口. jcseg 1.8.7版本发布了: 1. 更改了内部设计, 加入JcsegTaskConfig ...

  8. nodejs中thiskeyword的问题

    再分析详细内容之前,必需要好好阅读下面下面两篇blog 学习Javascript闭包(closure) Javascript的this使用方法 这两篇文章是阮一峰老师对Javascript的闭包和th ...

  9. Hadoop streaming 排序、分桶参数设置

    编写hadoop任务经常需要用到partition和排序.这里记录一下几个参数. 1. 概念 Partition:分桶过程,用户输出的key经过partition分发到不同的reduce里,因而par ...

  10. HDU—— 5159 Building Blocks

    Problem Description After enjoying the movie,LeLe went home alone. LeLe decided to build blocks. LeL ...