https://blog.csdn.net/yyl424525/article/details/100831452
本文分享一下图卷积网络GCN里用到的一些数据集的格式
Cora、Citeseer、Pubmed
1 | ├── gcn |
三种数据都由以下八个文件组成,存储格式类似:
1 | ind.dataset_str.x => the feature vectors of the training instances as scipy.sparse.csr.csr_matrix object; |
- Semi-Supervised Classification with Graph Convolutional Networks论文中的GCN是半监督学习,因此训练数据集中有的有标签有的没有标签
以Cora为例
原始数据集链接:http://linqs.cs.umd.edu/projects/projects/lbc/
数据集划分方式:https://github.com/kimiyoung/planetoid (Zhilin Yang, William W. Cohen, Ruslan
Salakhutdinov, Revisiting Semi-Supervised Learning with Graph Embeddings, ICML 2016)
Cora数据集由机器学习论文组成,是近年来图深度学习很喜欢使用的数据集。在数据集中,论文分为以下七类之一:
- 基于案例
- 遗传算法
- 神经网络
- 概率方法
- 强化学习
- 规则学习
- 理论
论文的选择方式是,在最终语料库中,每篇论文引用或被至少一篇其他论文引用。整个语料库中有2708篇论文。
在词干堵塞和去除词尾后,只剩下1433个独特的单词。文档频率小于10的所有单词都被删除。cora数据集包含1433个独特单词,所以特征是1433维。0和1描述的是每个单词在paper中是否存在。
变量data是个scipy.sparse.csr.csr_matrix,类似稀疏矩阵,输出得到的是矩阵中非0的行列坐标及值
数据格式示例
1 | (1)--------------------------------------ind.cora.x |
allx是训练集中的所有训练实例,包含有标签的和无标签的,从0-1707,共1708个
ally是allx对应的标签,从1708-2707,共1000个
citeseer的测试数据集中有一些孤立的点(test.index中没有对应的索引,15个),可把这些点当作特征全为0的节点加入到测练集tx中,并且对应的标签在ty中
输入是一张整图,因此将tx和allx拼起来作为feature
没有标签的数据的y值:[0,0,0,0,0,0,0]
数据集中的特征也是稀疏的,用LIL稀疏矩阵存储,格式如下
1 | A=np.array([[1,0,2,0],[0,0,0,0],[3,0,0,0],[1,0,0,4]]) |
Tox21 数据集
此数据集来源于一个PubChem网站的一个2014年的竞赛:https://tripod.nih.gov/tox21/challenge/about.jsp
PubChem是美国国立卫生研究院(NIH)的开放化学数据库,是世界上最大的免费化学物信息集合。
PubChem的数据由数百个数据源提供,包括:政府机构,化学品供应商,期刊出版商等。
21世纪的毒理学(Tox21)计划是NIH,环境保护局和食品药品管理局的联邦合作计划,旨在开发更好的毒性评估方法。目标是快速有效地测试某些化合物是否有可能破坏人体中可能导致不良健康影响的过程。Tox21数据集是其中一个比赛用到的数据集,包含了12个毒理试验测定的化学合成物质的结构信息
每个毒理实验测试的都是PUBCHEM_SID从144203552-144214049共10486个化合物,包括环保化合物、一些上市药物等物质的活性结果。
例如,p53实验的测定结果可以在线查看。
- PubChem AID:生物活性鉴定记录ID
- PubChem SID:物质ID
- PubChem CID:化合物ID
数据集可在此下载:https://tripod.nih.gov/tox21/challenge/data.jsp#
训练集和测试集都是由多个分子结构构成的sdf格式的文件。
一个分子的信息存储格式如下:
- 第一行:一般作为分子名字,如NCGC00255644-01,有时为空格
- 第二行:注释,Marvin 07111412562D
- 第三行:一般是空行
- 第四行:是原子个数 键的个数等的起始行。
- M END所在行结束原子个数 键的个数等信息。
下面是属性值,属性个数不定
- 属性1
- 属性1值
- 空行
- 属性2
- 属性2值
- 空行
- (以四个美元符号结束一个分子的信息存储。)
- 在训练集中,标签为”Active“,“1”表示活性,“0”表示没有活性
- 在测试集中,没有标签”Active“
训练集中一个分子的信息存储格式如下:
1 | NCGC00255644-01 |
测试集中一个分子的信息存储格式如下:
1 | NCGC00261443 |
目标应该就是根据训练集的分子结构信息和是否是活性的标签去预测测试集中的分子结构的活性。训练集中可能是一个分子构成一张图,里面的原子和健构成节点和边,但是没有找到关于数据集中原子和健部分的数据更具体介绍,不知道每一行数据的意义。