72.6协同过滤 基于物品的协同过滤算法(简称 IemcA算法)是目前业界应用最多的算 法。无论是亚马逊还是Netfⅸ,其推荐系统的基础都是 Items算法。 ItemE算法是给目标用户推荐那些和他们之前喜欢的物品相似的物品。 ItemE算法并不利用物品的内容属性计算物品之间的相似度,而主要通 过分析用户的行为记录来计算物品之间的相似度,该算法基于的假设是 物品A和物品B具有很大的相似度是因为喜欢物品A的用户大多也喜欢物 品B。例如,该算法会因为你购买过《数据挖掘导论》而给你推荐《机器 学习实战》,因为,买过《数据挖掘导论》的用户多数也购买了《机器 学习实战》。 基于模型的协同过滤算法( ModelcF)是通过已经观察到的所有用户给 产品的打分,来推断每个用户的喜好并向用户推荐适合的产品。实际上 ModelCF同时考虑了用户和物品两个方面,因此,它也可以看作是 UserC和| emcF的混合形式 大数据导论》厦门大学计算机科学系 林子雨 ziyulin@xmu.edu.cn
《大数据导论》 厦门大学计算机科学系 林子雨 ziyulin@xmu.edu.cn 7.2.6协同过滤 基于物品的协同过滤算法(简称ItemCF算法)是目前业界应用最多的算 法。无论是亚马逊还是Netflix,其推荐系统的基础都是ItemCF算法。 ItemCF算法是给目标用户推荐那些和他们之前喜欢的物品相似的物品。 ItemCF算法并不利用物品的内容属性计算物品之间的相似度,而主要通 过分析用户的行为记录来计算物品之间的相似度,该算法基于的假设是: 物品A和物品B具有很大的相似度是因为喜欢物品A的用户大多也喜欢物 品B。例如,该算法会因为你购买过《数据挖掘导论》而给你推荐《机器 学习实战》,因为,买过《数据挖掘导论》的用户多数也购买了《机器 学习实战》。 基于模型的协同过滤算法(ModelCF)是通过已经观察到的所有用户给 产品的打分,来推断每个用户的喜好并向用户推荐适合的产品。实际上, ModelCF同时考虑了用户和物品两个方面,因此,它也可以看作是 UserCF和ItemCF的混合形式
7.3大数据处理与分析技术 73.1技术分类 7.32流计算 733图计算 大数据导论》厦门大学计算机科学系 林子雨 ziyulin@xmu.edu.cn
《大数据导论》 厦门大学计算机科学系 林子雨 ziyulin@xmu.edu.cn 7.3 大数据处理与分析技术 7.3.1技术分类 7.3.2 流计算 7.3.3 图计算
7.31技术分类 表大数据计算模式及其代表产品 大数据计算模式 解决问题 代表产品 批处理计算 针对大规模数据的批 Map Reduce、 Spark等 量处理 Flink、 Storm、S4、 Spark 流计算 针对流数据的实时计 Streaming、 Flume、 Streams、 算 Puma、 DStream、 Super mario 银河流数据处理平台等 Pregel、 GraphX、 Graph、 图计算 针对大规模图结构数 Powerτph、Hama、 据的处理 Golden orb等 查询分析计算 大规模数据的存储管 Dremel、Hive、 Cassandra、 理和查询分析 Impala 大数据导论》厦门大学计算机科学系 林子雨 ziyulin@xmu.edu.cn
《大数据导论》 厦门大学计算机科学系 林子雨 ziyulin@xmu.edu.cn 7.3.1技术分类 大数据计算模式 解决问题 代表产品 批处理计算 针对大规模数据的批 量处理 MapReduce、Spark等 流计算 针对流数据的实时计 算 Flink、Storm、S4、Spark Streaming、Flume、Streams、 Puma、DStream、Super Mario 、银河流数据处理平台等 图计算 针对大规模图结构数 据的处理 Pregel、GraphX、Giraph、 PowerGraph、Hama、 GoldenOrb等 查询分析计算 大规模数据的存储管 理和查询分析 Dremel、Hive、Cassandra、 Impala等 表 大数据计算模式及其代表产品
勇7.32流计算 1流计算概念 流计算:实时获取来自不同数据源的海量数据,经过实时分 析处理,获得有价值的信息 : @ 数据采集》实时分析处理》结果反馈 图7-1流计算示意图 大数据导论 厦门大学计算机科学系 林子雨 ziyulin@xmu.edu.cn
《大数据导论》 厦门大学计算机科学系 林子雨 ziyulin@xmu.edu.cn 7.3.2 流计算 流计算:实时获取来自不同数据源的海量数据,经过实时分 析处理,获得有价值的信息。 数据采集 实时分析处理 结果反馈 1.流计算概念 图7-1 流计算示意图
勇7.32流计算 流计算秉承一个基本理念,即数据的价值随着时间的流逝而降低,如用 户点击流。因此,当事件出现时就应该立即进行处理,而不是缓存起来 进行批量处理。为了及时处理流数据,就需要一个低延迟、可扩展、高 可靠的处理引擎 对于一个流计算系统来说,它应达到如下需求: 高性能:处理大数据的基本要求,如每秒处理几十万条数据 海量式:支持TB级甚至是PB级的数据规模 ·实时性:保证较低的延迟时间,达到秒级别,甚至是毫秒级别 分布式:支持大数据的基本架构,必须能够平滑扩展 易用性:能够快速进行开发和部署 可靠性:能可靠地处理流数据 大数据导论》厦门大学计算机科学系 林子雨 ziyulin@xmu.edu.cn
《大数据导论》 厦门大学计算机科学系 林子雨 ziyulin@xmu.edu.cn 7.3.2 流计算 流计算秉承一个基本理念,即数据的价值随着时间的流逝而降低,如用 户点击流。因此,当事件出现时就应该立即进行处理,而不是缓存起来 进行批量处理。为了及时处理流数据,就需要一个低延迟、可扩展、高 可靠的处理引擎 对于一个流计算系统来说,它应达到如下需求: •高性能:处理大数据的基本要求,如每秒处理几十万条数据 •海量式:支持TB级甚至是PB级的数据规模 •实时性:保证较低的延迟时间,达到秒级别,甚至是毫秒级别 •分布式:支持大数据的基本架构,必须能够平滑扩展 •易用性:能够快速进行开发和部署 •可靠性:能可靠地处理流数据