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

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

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. X、Y轴抖动的动画

    实现这个动画效果用到了interpolator属性,这样就能让一些控件产生自定义的抖动效果 这是用作interpolator的文件,用来做动画循环 cycle.xml <?xml version ...

  2. Failed to register: Error: fabric-ca request register failed with errors [[{"code":0,"message":"No identity type provided. Please provide identity type"}]]解决方案

    I try to run sample application as stated here : http://hyperledger-fabric.readthedocs.io/en/release ...

  3. serializeArray()与 serialize()

    serialize()序列表表格内容为字符串,用于 Ajax 请求. serializeArray()序列化表格元素 (类似 '.serialize()' 方法) 返回 JSON 数据结构数据. .s ...

  4. Java vs C++ (7)导入

    用法 import VS include Java   import java.util.regex.Pattern; package com.slim; (1)假设少了; 会warning: C++ ...

  5. Go语言之进阶篇爬捧腹网

    1.爬捧腹网 网页规律: https://www.pengfu.com/xiaohua_1.html   下一页 +1 https://www.pengfu.com/xiaohua_2.html 主页 ...

  6. Win7局域网打印机共享设置(详细图文流程)

    本文将向读者说明在Win7下如何实现同个局域网内共享打印机.经过测试,Win7之间和Win7与XP之间均可正常连接. 第一步:取消禁用Guest用户 1. 点击[开始]按钮,在[计算机]上右键,选择[ ...

  7. 开启Remote Desktop的PowerShell

    1) Enable Remote Desktop set-ItemProperty -Path 'HKLM:\System\CurrentControlSet\Control\Terminal Ser ...

  8. 关掉Windows Firewall的PowerShell

    在Windows 8或Windows 2012 R2上, 使用下面的命令: Set-NetFirewallProfile -Profile Domain,Public,Private -Enabled ...

  9. Linq的延迟加载问题

    什么是延迟加载:所谓延迟加载就是当在真正需要数据的时候,才真正执行数据加载操作.可以简单理解为,只有在使用的时候,才会发出sql语句进行查询,数据是分N次读取. 什么是立即加载:所谓立即加载既是所有的 ...

  10. .NET程序性能优化的基本要领

    Bill Chiles(Roslyn编译器的程序经理)写了一篇文章<Essential Performance Facts and .NET Framework Tips>,知名博主寒江独 ...