开发软件: Eclipse/Idea + mysql【java网站端】 + Pycharm 【算法端】
开发技术: 网站端SSM可升级Springboot + Python + 基于协同过滤的CF算法实现 + Word2Vec文档转向量技术
解决物品冷启动问题:
利用Word2Vec可以计算物品所有标签词之间的关系程度,可用于计算物品之间的相似度,word2vec是google在2013年开源的一个NLP(Natural Language Processing自然语言处理) 工具,它的特点是将所有的词向量化,这样词与词之间就可以定量的去度量他们之间的关系,挖掘词之间的联系。Doc2Vec是建立在Word2Vec上的,用于直接计算以文档为单位的文档向量,这里我们将一个物品的所有标签词,作为整个文档,这样可以计算出每个物品的向量,通过计算向量之间的距离,来判断用于计算物品之间的相似程度。
协同过滤推荐算法,(英文名:Collaborative Filtering,简称CF),乃初代推荐算法也。
核心思想:物以类聚,人以群分,“协同过滤”本质上是一种集体智慧。
“跟你喜好相似的人喜欢的东西你也很有可能喜欢” :基于用户的协同过滤推荐(User-based CF)
“跟你喜欢的东西相似的东西你也很有可能喜欢 ”:基于物品的协同过滤推荐(Item-based CF)
基于内存的协同过滤推荐算法依据用户和物品两个不同的维度又被分为:
基于用户的协同过滤推荐,User-based CF
基于物品的协同过滤推荐,Item-based CF
实现协同过滤推荐有以下几个步骤:
找出最相似的人或物品:TOP-N相似的人或物品
通过计算两两的相似度来进行排序,即可找出TOP-N相似的人或物品
根据相似的人或物品产生推荐结果
利用TOP-N结果生成初始推荐结果,然后过滤掉用户已经有过记录的物品或明确表示不感兴趣的物品