IT数码 购物 网址 头条 软件 日历 阅读 图书馆
TxT小说阅读器
↓语音阅读,小说下载,古典文学↓
图片批量下载器
↓批量下载图片,美女图库↓
图片自动播放器
↓图片自动播放器↓
一键清除垃圾
↓轻轻一点,清除系统垃圾↓
开发: C++知识库 Java知识库 JavaScript Python PHP知识库 人工智能 区块链 大数据 移动开发 嵌入式 开发工具 数据结构与算法 开发测试 游戏开发 网络协议 系统运维
教程: HTML教程 CSS教程 JavaScript教程 Go语言教程 JQuery教程 VUE教程 VUE3教程 Bootstrap教程 SQL数据库教程 C语言教程 C++教程 Java教程 Python教程 Python3教程 C#教程
数码: 电脑 笔记本 显卡 显示器 固态硬盘 硬盘 耳机 手机 iphone vivo oppo 小米 华为 单反 装机 图拉丁
 
   -> 大数据 -> 尚硅谷电商推荐系统笔记 -> 正文阅读

[大数据]尚硅谷电商推荐系统笔记

项目提取码:1234

1、数据导入mongodb

DataLoader

product和rating表,通过spark加载进来数据(RDD格式)转化为DataFrame格式存入MongoDB中

2、统计推荐模块

StatisticsRecommender

1、加载Rating表,通过spark sql 做不同的统计
2、历史热门商品,按照评分个数统计,存储到RateMoreProducts表中
3、近期热门商品,通过商品时间戳排序,对最近2个月的商品进行评价数统计,存储到RateMoreRecentlyProducts表中
4、优质商品推荐,计算所有商品的平均评分,进行排序,存储到AverageProducts表中

3、基于LFM(隐语义模型)的离线推荐模块

OfflineRecommender

LFM隐语义模型

1、加载Rating表[userId,productId,score]
2、取出用户数据和商品数据,userId,productId
3、通过ALS训练
4、获得预测评分矩阵,得到用户的推荐列表
5、从预测评分矩阵中提取得到用户推荐列表
6、利用商品的特征向量,计算商品的相似度列表
7、两两配对商品,计算余弦相似度
8、存储两两商品的余弦相似度,存储为ProductRec表

ALS模型评估与参数选择

5、实时推荐模块

OnlineRecommender

6、实时推荐系统联调

KafkaStream

7、基于内容的离线推荐模块

ContentRecommender

TF-IDF

  • 一句话:字词的重要性随着它在文件中出现的次数成正比增加,但同时会随着它在语料库中出现的频率成反比下降。

  • TF-IDF = TF * IDF

1、读入Produc表,对tags列进行分词
2、定义一个分词器,分词结束计算每个词的频次
3、定义一个IDF工具,计算TF-IDF
4、两两配对商品,计算余弦相似度
5、存储为ContentBasedProductRecs表

8、基于ItemCf的离线推荐模块

  • ItemCFRecommender
  • 基于物品的协同过滤(Item-CF)

如果两个商品有同样的受众(感兴趣的人群),那么它们就是有内在相关性的。所以可以利用已有的行为数据,分析商品受众的相似程度,进而得出商品间的相似度。

关于系统的启动方法

启动mongo

sudo mongod --dbpath=/var/lib/mongodb

启动zookeeper

/usr/local/zookeeper/zookeeper-3.4.11/bin/zkServer.sh start

启动kafka

/usr/local/kafka_2.11-0.10.2.1/bin/kafka-server-start.sh -daemon /usr/local/kafka_2.11-0.10.2.1/config/server.properties

启动redis

redis-server 

redis客户端

redis-cli

运行OnlineRecommend

创建生产者

./bin/kafka-console-producer.sh --broker-list localhost:9092 --topic recommender

产生数据

4867|8195|4.0|1556433066

启动kakfaStream/Application

启动flume

./bin/flume-ng agent -c ./conf/ -f ./conf/log-kafka.properties -n agent -Dflume.root.logger=INFO,console

启动tomcat7 进入系统

至此系统完成全部启动

  大数据 最新文章
实现Kafka至少消费一次
亚马逊云科技:还在苦于ETL?Zero ETL的时代
初探MapReduce
【SpringBoot框架篇】32.基于注解+redis实现
Elasticsearch:如何减少 Elasticsearch 集
Go redis操作
Redis面试题
专题五 Redis高并发场景
基于GBase8s和Calcite的多数据源查询
Redis——底层数据结构原理
上一篇文章      下一篇文章      查看所有文章
加:2021-10-08 11:51:37  更:2021-10-08 11:54:21 
 
开发: C++知识库 Java知识库 JavaScript Python PHP知识库 人工智能 区块链 大数据 移动开发 嵌入式 开发工具 数据结构与算法 开发测试 游戏开发 网络协议 系统运维
教程: HTML教程 CSS教程 JavaScript教程 Go语言教程 JQuery教程 VUE教程 VUE3教程 Bootstrap教程 SQL数据库教程 C语言教程 C++教程 Java教程 Python教程 Python3教程 C#教程
数码: 电脑 笔记本 显卡 显示器 固态硬盘 硬盘 耳机 手机 iphone vivo oppo 小米 华为 单反 装机 图拉丁

360图书馆 购物 三丰科技 阅读网 日历 万年历 2024年11日历 -2024/11/24 0:50:50-

图片自动播放器
↓图片自动播放器↓
TxT小说阅读器
↓语音阅读,小说下载,古典文学↓
一键清除垃圾
↓轻轻一点,清除系统垃圾↓
图片批量下载器
↓批量下载图片,美女图库↓
  网站联系: qq:121756557 email:121756557@qq.com  IT数码