基于内容的推荐算法(CB):
读取Hbase倒排表中数据20w+索引数据,以token(关键词)为rowkey,每个itemID为column,score为value
通过spark进行基于内容的离线相似度计算,得到每个物品的相关推荐物品列表,按score排序后取TOP20,(itemA–>itemB:score,itemC:score)
总用时12min
得到605219个item的相关推荐物品列表:
部分item推荐结果展示:
import json
from pyspark import SparkContext, SparkConf
from pyspark.sql import SparkSession
import math
def func(i_ts):
"""
对token的value做归一化
:param i_ts: