简介

Cora数据集包含2708篇科学出版物, 5429条边,总共7种类别。数据集中的每个出版物都由一个 0/1 值的词向量描述,表示字典中相应词的缺失/存在。 该词典由 1433 个独特的词组成。意思就是说每一个出版物都由1433个特征构成,每个特征仅由0/1表示。

说明

这个数据集是经过预处理的:

原始版本下载:

  • http://www.cs.umd.edu/~sen/lbc-proj/LBC.html
  • 数据集包含以下文件:

    • ind.cora.x : 训练集节点特征向量,保存对象为:scipy.sparse.csr.csr_matrix,实际展开后大小为: (140, 1433)

    • ind.cora.tx : 测试集节点特征向量,保存对象为:scipy.sparse.csr.csr_matrix,实际展开后大小为: (1000, 1433)

    • ind.cora.allx : 包含有标签和无标签的训练节点特征向量,保存对象为:scipy.sparse.csr.csr_matrix,实际展开后大小为:(1708, 1433),可以理解为除测试集以外的其他节点特征集合,训练集是它的子集

    • ind.cora.y : one-hot表示的训练节点的标签,保存对象为:numpy.ndarray

    • ind.cora.ty : one-hot表示的测试节点的标签,保存对象为:numpy.ndarray

    • ind.cora.ally : one-hot表示的ind.cora.allx对应的标签,保存对象为:numpy.ndarray

    • ind.cora.graph : 保存节点之间边的信息,保存格式为:{ index : [ index_of_neighbor_nodes ] }

    • ind.cora.test.index : 保存测试集节点的索引,保存对象为:List,用于后面的归纳学习设置。

    需要说明有以下几点:

    1)为什么训练集节点数这么少,只有140个节点?

    答:用的训练集越少,取得的效果越好,说明自己的方法越好。

    (ps:你用这么少的训练集,我如果用的比你多,即使最后准确率也比你高,也没法说我方法比你更好,因为有两个变量:训练集大小和模型。)

    (ps:这是因为最初的那个人用的少,后面的人为了对比,只能用这么大的训练集。一个字:卷。)

    2)为什么训练集(140)+测试集节点数(1000) != 所有节点数 (2708) ?

    答:训练集为什么这么少,问题1已经解答;测试集估计是为了凑整数,用了1000。

    3)剩下的节点去哪了?

    答:ind.cora.allx文件, 有没有发现测试集节点加上这个文件的节点数正好为2708。 ind.cora.allx + ind.cora.tx = all (2708)。不过不用担心节点浪费的问题, 因为训练的时候是将整张图都输入进去的,所有的节点都会参与训练过程,唯一的区别就是,训练的时候只用训练集节点去更新梯度,其他节点仅作为特征。

  • 转载自百度PaddlePaddle对Cora数据集的介绍

内容来源于网络如有侵权请私信删除

文章来源: 博客园

原文链接: https://www.cnblogs.com/irikin/p/16281463.html

你还没有登录,请先登录注册
  • 还没有人评论,欢迎说说您的想法!