热门标签 | HotTags
当前位置:  开发笔记 > 编程语言 > 正文

nlp项目(一)——推荐系统简介及架构设计

1推荐系统概念什么是推荐系统没有明确需求的用户访问了我们的服务,且服务的物品对用户构成了信息过载,系统通过一定的规则对物品进行排序,并将排在前面的物品展示给用户,这样的系统就是推荐

1 推荐系统概念

  • 什么是推荐系统

    没有明确需求的用户访问了我们的服务, 且服务的物品对用户构成了信息过载, 系统通过一定的规则对物品进行排序,并将排在前面的物品展示给用户,这样的系统就是推荐系统

2 推荐系统设计

 

  • 推荐系统整体架构

nlp项目(一)——推荐系统简介及架构设计

大数据Lambda架构

  • Lambda架构是由实时大数据处理框架Storm的作者Nathan Marz提出的一个实时大数据处理框架。

  • Lambda架构的将离线计算和实时计算整合,设计出一个能满足实时大数据系统关键特性的架构,包括有:高容错、低延时和可扩展等。

  • 分层架构

    • 批处理层

      • 数据不可变, 可进行任何计算, 可水平扩展

      • 高延迟 几分钟~几小时(计算量和数据量不同)

      • 日志收集: Flume

      • 分布式存储: Hadoop

      • 分布式计算: Hadoop、Spark

      • 视图存储数据库

        • nosql(HBase/Cassandra)

        • Redis/memcache

        • MySQL

    • 实时处理层

      • 流式处理, 持续计算

      • 存储和分析某个窗口期内的数据(一段时间的热销排行,实时热搜等)

      • 实时数据收集 flume & kafka

      • 实时数据分析 spark streaming/storm/flink

    • 服务层

      • 支持随机读

      • 需要在非常短的时间内返回结果

      • 读取批处理层和实时处理层结果并对其归并

  • Lambda架构图

nlp项目(一)——推荐系统简介及架构设计

推荐算法架构

  • 召回阶段 (海选)

    • 召回决定了最终推荐结果的天花板

    • 常用算法:

      • 协同过滤

      • 基于内容

  • 排序阶段 (精选)

    • 召回决定了最终推荐结果的天花板, 排序逼近这个极限, 决定了最终的推荐效果

    • CTR预估 (点击率预估 使用LR算法) 估计用户是否会点击某个商品 需要用户的点击数据

  • 策略调整

nlp项目(一)——推荐系统简介及架构设计

  • 推荐系统的整体架构

nlp项目(一)——推荐系统简介及架构设计

nlp项目(一)——推荐系统简介及架构设计
 


推荐阅读
author-avatar
再见傻瓜傻瓜_299
这个家伙很懒,什么也没留下!
PHP1.CN | 中国最专业的PHP中文社区 | DevBox开发工具箱 | json解析格式化 |PHP资讯 | PHP教程 | 数据库技术 | 服务器技术 | 前端开发技术 | PHP框架 | 开发工具 | 在线工具
Copyright © 1998 - 2020 PHP1.CN. All Rights Reserved | 京公网安备 11010802041100号 | 京ICP备19059560号-4 | PHP1.CN 第一PHP社区 版权所有