无法解释导入到 NN 的文本信息和评分矩阵

数据挖掘 机器学习 神经网络 深度学习 数据集 自动编码器
2022-03-01 09:28:07

我有一个推荐系统,它使用协作贝叶斯方法,使用 pSDAE 从 Citeulike 数据集中推荐科学文章

文本信息(作为 pSDAE 的输入)在文件 mult.dat 中,评级矩阵(作为 MF 部分的输入)在文件 cf-train-1-users.dat 中,并使用以下代码加载:

def get_mult():
    X = read_mult('mult.dat',8000).astype(np.float32)
    return X

def read_user(f_in='cf-train-1-users.dat',num_u=5551,num_v=16980):
    fp = open(f_in)
    R = np.mat(np.zeros((num_u,num_v)))
    for i,line in enumerate(fp):
        segs = line.strip().split(' ')[1:]
        for seg in segs:
            R[i,int(seg)] = 1
    return R

原始数据采用正确的 Excel 格式,引用为 doc-id、title、citeulike-id、raw-title、raw-abstract。

包含 hte 文本信息的 mult.dat 文件如下所示:

63 1:2 1666:1 132:1 901:1 1537:2 8:1 9:1 912:1

trainusers.dat 文件如下所示:

10 1631 3591 10272 14851 4662 13172 12684 5324 3595 3404

这是整个 Recommender 系统的 ipynb 链接:

https://github.com/js05212/MXNet-for-CDL/blob/master/collaborative-dl.ipynb

1个回答

我是 CDL 论文的作者

对于 mult.data 文件,在

63 1:2 1666:1 132:1 901:1 1537:2 8:1 9:1 912:1

63是该文档的单词数,1:2表示单词 1 在文档中出现两次,1666:1表示单词 1666 在文档中出现一次,依此类推。

对于 trainuser.dat,在

10 1631 3591 10272 14851 4662 13172 12684 5324 3595 3404

10是该用户的正样本数,其余是与该用户相关(被喜欢)的 10 个项目的列表。

您可以查看Datasets 集合中的 README 文件以获取有关数据集的更多详细信息。