全部版块 我的主页
论坛 提问 悬赏 求职 新闻 读书 功能一区 经管文库(原现金交易版)
669 0
2023-11-18
基于知识图谱的推荐系统项目完整代码(附带数据集)

基于知识图谱的推荐系统项目完整代码数据集在data文件夹下数据集为txt模式,分为训练集、验证集以及测试集


本系统是一个基于knowledge graph embedding的商品推荐系统,以下是对该系统的详细介绍,
基本代码都是自己所写,TransE和Rescal方法实现部分是照着论文与相关代码自己进行的复现
,并且相关代码中都有我写的一些注释。


1.generate_data.py是用于生成模拟数据,在进行真实使用时可以参照所生成模拟数据的格式进行数据录入

2.data文件夹下需要有entities.txt以及relations.txt两个数据,他们分别是实体(people和items)的名称以及索引号,以及关联的名称以及索引号,关联也可以有多种,
然后该文件夹下还应该有train.txt,valid.txt和test.txt,作为模型训练的依托,其中的neg.txt可要可不要,这个文件并不参与模型的训练过程

3.dataset.py文件主要是模型训练中处理数据的代码,model.py是我复现的两种knolwedge graph embedding的方法,在训练中进行调用

4.main.py是主函数,其中要修改成Rescal方法可以将TransE替换成Rescal,其他的地方可以设置训练所用的超参数

5.run.py是用于对模型的超参数进行设置,采用的是五折交叉验证,在求打分验证时可以采用不同的scoring函数,注释后面写有“Rescal”的

6.use.py是用所有样本进行训练,对所有负样本地方打分并排序,取前100个打分进行输出(数量可选)

7.run.sh是在linux系统下使用的,如是windows系统,可以直接吧代码中os.system('bash run.sh')改为os.system('pythonmain.py'),具体超参数在main中设置即可

8.如果在run.py中发现如何调超参数模型效果都不理想,可能是由于数据过于简单或者不真实所造成。



附件列表
4efe63462b01a75a6efda5881f8f63c.png

原图尺寸 10.76 KB

4efe63462b01a75a6efda5881f8f63c.png

二维码

扫码加我 拉你入群

请注明:姓名-公司-职位

以便审核进群资格,未注明则拒绝

相关推荐
栏目导航
热门文章
推荐文章

说点什么

分享

扫码加好友,拉您进群
各岗位、行业、专业交流群