楼主: yusb
668 0

[经管数据集] 基于知识图谱的推荐系统项目完整代码(附带数据集) [推广有奖]

已卖:21097份资源
好评率:99%
商家信誉:一般

巨擘

0%

还不是VIP/贵宾

-

威望
1
论坛币
40750 个
通用积分
2588.9809
学术水平
20 点
热心指数
31 点
信用等级
7 点
经验
5792 点
帖子
20226
精华
0
在线时间
11776 小时
注册时间
2020-12-8
最后登录
2026-1-14

楼主
yusb 在职认证  发表于 2023-11-18 19:16:36 |AI写论文

+2 论坛币
k人 参与回答

经管之家送您一份

应届毕业生专属福利!

求职就业群
赵安豆老师微信:zhaoandou666

经管之家联合CDA

送您一个全额奖学金名额~ !

感谢您参与论坛问题回答

经管之家送您两个论坛币!

+2 论坛币
基于知识图谱的推荐系统项目完整代码(附带数据集)

基于知识图谱的推荐系统项目完整代码数据集在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中发现如何调超参数模型效果都不理想,可能是由于数据过于简单或者不真实所造成。



二维码

扫码加我 拉你入群

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

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

关键词:推荐系统 数据集 Embedding relations knowledge

您需要登录后才可以回帖 登录 | 我要注册

本版微信群
扫码
拉您进交流群
GMT+8, 2026-1-15 04:05