参考:https://docs.dgl.ai/en/latest/api/python/data.html#stanford-sentiment-treebank-dataset
PS:还没看完
utils.get_download_dir () |
获取下载目录的绝对路径。 |
utils.download (url[, path, overwrite, …]) |
下载给定的URL。 |
utils.check_sha1 (filename, sha1_hash) |
检查文件内容的sha1哈希是否与期望的哈希匹配。 |
utils.extract_archive (file, target_dir) |
提取存档文件。 |
utils.split_dataset (dataset[, frac_list, …]) |
将数据集分为训练,验证和测试集。 |
utils.save_graphs (filename, g_list[, labels]) |
将DGLGraphs和图形标签保存到文件 |
utils.load_graphs (filename[, idx_list]) |
从文件加载DGLGraphs |
utils.load_labels (filename) |
从文件加载标签字典 |
class dgl.data.utils.Subset(dataset, indices)
在指定索引处的数据集子集
改编自PyTorch的代码。
参数: |
|
---|
__getitem__(item)
按索引的获取数据点
返回值: | 数据点 |
---|---|
返回类型: | 元组 |
__len__()
获取子集大小
返回值: | 子集中的数据点数 |
---|---|
返回类型: | 整型 |
有关数据集的更多信息,请参见情感分析。
https://nlp.stanford.edu/sentiment/index.html
class dgl.data.SST(mode='train', vocab_file=None)
斯坦福情感树库数据集。
每个样本都是句子的选区树。叶节点表示单词。单词是存储在x特征字段中的int值。非叶节点在x字段中有一个特殊的值pad_word.每个节点还有一个情感注释:5个类(非常消极、消极、中立、积极和非常积极)。情感标签是存储在y特征字段中的int值。
注意:该数据集类 与pytorch的
Dataset
类兼容。
注意:首先将所有样本加载到内存中并进行预处理。
参数: |
|
---|
__getitem__(idx)
利用索引idx,获取树。
参数: | idx(int)–树索引。 |
---|---|
返回值: | 树。 |
返回类型: | dgl.DGLGraph |
__len__()
获取数据集中的树木数量。
返回值: | 树木数量。 |
---|---|
返回类型: | 整型 |
class dgl.data.KarateClub
Zachary的空手道俱乐部是一个大学空手道俱乐部的社会网络,在WayneW.Zachary的论文“小团体冲突与分裂信息流模型”中进行了描述。该网络在2002年由MichelleGirvan和MarkNewman使用后,成为网络中社区结构的一个流行例子。
这个数据集只有一个图,nData‘Label’表示节点是否属于“Mr.Hi”俱乐部。
class dgl.data.CitationGraphDataset(name)
引文图数据集,包括citeseer和pubmeb。节点表示作者,边缘表示引用关系。
参数: | name (str) –名称可以是“ citeseer”或“ pubmed”。 |
---|
class dgl.data.CoraDataset
Cora引文网络数据集。节点表示作者,边缘表示引用关系。
class dgl.data.CoraFull
图的深度高斯嵌入的扩展Cora数据集:通过排名的无监督归纳学习。节点代表纸张,边缘代表引文。
参考:https : //github.com/shchur/gnn-benchmark#datasets
class dgl.data.AmazonCoBuy(name)
Amazon计算机和AmazonPhoto是亚马逊共同购买图(mcauley等人,2015)的一部分,其中节点代表商品,边缘表示两种商品经常一起购买,节点特征是字袋编码的产品评论,类别标签是按产品类别给出的。
参考:https : //github.com/shchur/gnn-benchmark#datasets
参数: | name(str)–数据集的名称,必须为“计算机”或“照片” |
---|
class dgl.data.BitcoinOTC
这就是在一个名为比特币场外交易平台上使用比特币交易的人组成的网络。由于比特币用户是匿名的,因此有必要保持用户声誉的记录,以防止与欺诈和有风险的用户进行交易。比特币OTC的成员在-10(完全不信任)到+10(完全信任)的范围内对其他成员进行1级的分级。
参考: - 比特币OTC信任加权签订网络 - EvolveGCN:进化图卷积网络的动态图形
class dgl.data.ICEWS18(mode)
综合危机预警系统(ICEWS 18)事件数据包括社会政治行为者(即个人、团体、部门和民族国家之间的合作或敌对行动)之间的编码互动。
该数据集包含2018年1月1日到2018年10月31日(24小时时间间隔)以来的事件。
参考: - 复发事件下网络的推理超过时间知识图表 - ICEWS编码事件数据
参数: | mode (str) –加载训练/有效/测试数据。必须是['train','valid','test']之一 |
---|
class dgl.data.QM7b
该数据集由7211个分子和14个回归目标组成。节点表示原子,边缘表示键。边缘数据“h”指的是库仑矩阵的输入。
参考:-QM7b数据集
class dgl.data.GDELT(mode)
事件、语言和音调的全球数据库(GDELT)数据集。这包含了世界各地发生的事件(即在某一天在俄罗斯任何地方举行的每一次抗议都崩溃为一个条目)。
该数据集包含从1/1/2018到1/31/2018(15分钟时间间隔)收集的事件。
参考:- 用于基于时间知识图进行推理的循环事件网络 - 事件,语言和音调的全球数据库(GDELT)
参数: | mode (str) –加载训练/有效/测试数据。必须是['train','valid','test']之一 |
---|
class dgl.data.MiniGCDataset(num_graphs, min_num_v, max_num_v)
数据集类。
数据集包含8种不同类型的图形。
注意:该数据集类与pytorch的
Dataset
类兼容。
参数: |
|
---|
__getitem__(idx)
获取第i个样本。
idx :int 样本索引。
返回值: | 图形及其标签。 |
---|---|
返回类型: | (dgl.DGLGraph,int) |
__len__()
返回数据集中的图数。
num_classes
类数。
有关数据集的更多信息,请参见图核的基准数据集。
class dgl.data.TUDataset(name)
TUDataset包含许多用于图形分类的图形内核数据集。图可能具有节点标签,节点属性,边标签和边属性,它们来自不同的数据集。
参数: | name 数据集名称,如酶,DD,协同合作,MUTAG,可以是 |
---|
数据集名称在https://ls11-www.cs.tu-dortmund.de/staff/morris/graphkerneldatasets上。
__getitem__(idx)
获取第i个样本。参数——— idx:int 样本索引。
返回值: | DGLGraph的节点功能存储在feat字段中,节点标签存储在node_label中(如果可用)。及其标签。 |
---|---|
返回类型: | (dgl.DGLGraph,int) |
图内核数据集的紧凑子集
类dgl.data.
GINDataset
(name,self_loop,degree_as_nlabel = False )[源]
图同构网络(GIN)的数据集改编自https://github.com/weihua916/powerful-gnns/blob/master/dataset.zip。
该数据集包含流行的图形内核数据集的紧凑格式,其中包括:MUTAG、Collab、IMDBBINARY、IMDBMULTI、NCI 1、蛋白质、PTC、REDDITBINARY、REDDITMULTI5K。
此datset类处理上面列出的所有数据集。有关更多图形内核数据集,请参见TUDataset
名称:str
数据集名称,以下之('MUTAG','COLLAB','IMDBBINARY','IMDBMULTI','NCI1','PROTEINS','PTC','REDDITBINARY','REDDITMULTI5K')
self_loop:布尔值
如果为true,则将自身添加到自身边缘
degree_as_nlabel:布尔值
以节点度为标签,如果为true
__getitem__
(idx )[源代码]
获取第i个样本。
idx :int
样本索引。
返回值: | 图形及其标签。 |
---|---|
返回类型: | (dgl.DGLGraph,int) |
__len__
()[来源]
返回数据集中的图数。
classdgl.data.
PPIDataset
(mode )[源代码]
玩具蛋白质-蛋白质相互作用网络数据集。
改编自https://github.com/williamleif/GraphSAGE/tree/master/example_data。
数据集包含24个图。每个图的平均节点数为2372。每个节点具有50个要素和121个标签。
我们使用20张图进行训练,使用2张进行验证,使用2张进行测试。
__getitem__
(item )[来源]
获取第i个样本。
idx :int
样本索引。
返回值: | 图形及其标签。 |
---|---|
返回类型: | (dgl.DGLGraph,ndarray) |
__len__
()[来源]
返回此数据集中的样本数。
要处理分子图,请确保已安装RDKit 2018.09.3。
我们改编了多种实用程序,用于处理DeepChem的分子 。
chem.add_hydrogens_to_mol (* args,** kwargs) |
|
chem.get_mol_3D_coordinates (* args,** kwargs) |
|
chem.load_molecule (* args,** kwargs) |
|
chem.multiprocess_load_molecules (* args,** kwargs) |
为了使用图神经网络,我们需要特征化节点(原子)和边缘(键)。
通用工具:
chem.one_hot_encoding (* args,** kwargs) |
|
chem.ConcatFeaturizer (** kwargs) |
将多个功能的评估结果合并为一个功能。 |
chem.ConcatFeaturizer.__call__ (X) |
使输入数据特征化。 |
原子特征化的实用程序:
chem.atom_type_one_hot (* args,** kwargs) |
|
chem.atomic_number_one_hot (* args,** kwargs) |
|
chem.atomic_number (* args,** kwargs) |
|
chem.atom_degree_one_hot (* args,** kwargs) |
|
chem.atom_degree (* args,** kwargs) |
|
chem.atom_total_degree_one_hot (* args,** kwargs) |
|
chem.atom_total_degree (* args,** kwargs) |
|
chem.atom_implicit_valence_one_hot (* args,...) |
|
chem.atom_implicit_valence (* args,** kwargs) |
|
chem.atom_hybridization_one_hot (* args,** kwargs) |
|
chem.atom_total_num_H_one_hot (* args,** kwargs) |
|
chem.atom_total_num_H (* args,** kwargs) |
|
chem.atom_formal_charge_one_hot (* args,** kwargs) |
|
chem.atom_formal_charge (* args,** kwargs) |
|
chem.atom_num_radical_electrons_one_hot (...) |
|
chem.atom_num_radical_electrons (* args,** kwargs) |
|
chem.atom_is_aromatic_one_hot (* args,** kwargs) |
|
chem.atom_is_aromatic (* args,** kwargs) |
|
chem.atom_chiral_tag_one_hot (* args,** kwargs) |
|
chem.atom_mass (* args,** kwargs) |
|
chem.BaseAtomFeaturizer (** kwargs) |
原子特征化器的抽象类。 |
chem.BaseAtomFeaturizer.feat_size (feat_name) |
获取的特征尺寸feat_name 。 |
chem.BaseAtomFeaturizer.__call__ (摩尔) |
使一个分子中的所有原子特征化。 |
chem.CanonicalAtomFeaturizer (** kwargs) |
原子的默认特征化器。 |
债券特征化的实用程序:
chem.bond_type_one_hot (* args,** kwargs) |
|
chem.bond_is_conjugated_one_hot (* args,** kwargs) |
|
chem.bond_is_conjugated (* args,** kwargs) |
|
chem.bond_is_in_ring_one_hot (* args,** kwargs) |
|
chem.bond_is_in_ring (* args,** kwargs) |
|
chem.bond_stereo_one_hot (* args,** kwargs) |
|
chem.BaseBondFeaturizer (** kwargs) |
债券特征化器的抽象类。 |
chem.BaseBondFeaturizer.feat_size (feat_name) |
获取的特征尺寸feat_name 。 |
chem.BaseBondFeaturizer.__call__ (摩尔) |
使分子中的所有键均化。 |
chem.CanonicalBondFeaturizer (** kwargs) |
债券的默认特征。 |
下面列出了几种从SMILES / RDKit分子对象构造DGLGraph的方法:
chem.mol_to_graph (* args,** kwargs) |
|
chem.smiles_to_bigraph (* args,** kwargs) |
|
chem.mol_to_bigraph (* args,** kwargs) |
|
chem.smiles_to_complete_graph (* args,** kwargs) |
|
chem.mol_to_complete_graph (* args,** kwargs) |
|
chem.k_nearest_neighbors (* args,** kwargs) |
构造DGLHeteroGraphs并对其进行特征化。
chem.ACNN_graph_construction_and_featurization (...) |
如果您的数据集存储在.csv
文件中,您可能会发现使用它会有所帮助
当前支持四个数据集:
classdgl.data.chem.
Tox21
(** kwargs )[源代码]
Tox21数据集。
二十一世纪的毒理学(https://tripod.nih.gov/tox21/challenge/)计划创建了一个测量化合物毒性的公共数据库,该数据库已在2014年Tox21数据挑战赛中使用。该数据集包含对8014种化合物在12个不同靶标上的定性毒性测量结果,包括核受体和应激反应途径。每个目标都会产生一个二进制标签。
多任务预测的一个常见问题是某些数据点未标记为所有任务。Tox21也是如此。在数据预处理中,我们将不存在的标签设置为0,以便可以将它们放置在张量中并用于损失计算中的屏蔽。有关更多详细信息,请参见下面的示例。
所有分子都转换为DGLGraphs。首次构建后,将保存DGLGraphs以便重新加载,因此我们不需要每次都重建它们。
参数: |
|
---|
__getitem__
(项目)
获取带有索引的数据点
参数: | item(int)–数据点索引 |
---|---|
返回值: |
|
__len__
()
数据集长度
返回值: | 数据集长度 |
---|---|
返回类型: | 整型 |
task_pos_weights
获取每个任务的阳性样本的权重
返回值: | numpy数组给出所有任务中正样本的权重 |
---|---|
返回类型: | numpy.ndarray |
classdgl.data.chem.
TencentAlchemyDataset
(** kwargs )[源代码]
该数据集由腾讯量子实验室开发,列出了从GDBMedChem数据库中采样的130、000+种有机分子的12种量子力学特性,其中包括多达12个重原子(C,N,O,S,F和Cl)。这些特性是使用开源的计算化学程序基于Python的化学框架仿真(PySCF)计算出来的。
有关更多详细信息,请检查纸张。
参数: |
|
---|
__getitem__
(item )[来源]
获取带有索引的数据点
参数: | item(int)–数据点索引 |
---|---|
返回值: |
|
__len__
()[来源]
数据集长度
返回值: | 数据集长度 |
---|---|
返回类型: | 整型 |
set_mean_and_std
(mean = None,std = None )[源代码]
设置均值和标准差或从标签进行计算以供将来标准化。
参数: |
|
---|
classdgl.data.chem.
PubChemBioAssayAromaticity
(** kwargs )[源代码]
PubChem BioAssay数据集的子集,用于芳香性预测。
该数据集是通过图注意力机制在推动药物发现的分子表示边界中构建的。并且伴随着预测分子中芳族原子数的任务。
该数据集是通过从PubChem BioAssay数据集中采样3945个具有0-40个芳族原子的分子而构建的。
参数: |
|
---|
__getitem__
(项目)
获取带有索引的数据点
参数: | item(int)–数据点索引 |
---|---|
返回值: |
|
__len__
()
数据集长度
返回值: | 数据集长度 |
---|---|
返回类型: | 整型 |
classdgl.data.chem.
PDBBind
(** kwargs )[源代码]
由MoleculeNet处理的PDBbind数据集。
以下描述主要基于 [1]。PDBBind数据库由实验测量的对生物分子复合物的结合亲和力组成[2], [3]。它提供了配体及其靶蛋白的详细3D笛卡尔坐标,这些坐标来源于实验(例如X射线晶体学)测量。蛋白质-配体复合物的坐标的可用性允许知道蛋白质-配体结合几何结构的基于结构的特征化。[1]的作者 将数据库[4]的“精炼”和“核心”子集( 为数据工件进行更仔细的处理)用作其他基准测试目标。
参考文献
具有已知的三维结构* [3] PDBbind数据库:方法和更新* [4] PDB范围内的绑定数据集合:PDBbind数据库的当前状态
参数: |
|
---|
__getitem__
(item )[来源]
获取与索引关联的数据点。
参数: | item(int)–数据点的索引。 |
---|---|
返回值: |
|
__len__
()[来源]
获取数据集的大小。
返回值: | 数据集中有效配体-蛋白质对的数量。 |
---|---|
返回类型: | 整型 |
我们为一些常见的数据拆分方法提供支持:
类dgl.data.chem.
ConsecutiveSplitter
[源代码]
按输入顺序拆分数据集。
数据集被拆分而没有置换,因此拆分是确定性的。
类dgl.data.chem.
RandomSplitter
[源代码]
随机重新排序数据集,然后拆分它们。
通过排列对数据集进行拆分,因此拆分是随机的。
类dgl.data.chem.
MolecularWeightSplitter
[源代码]
根据分子的重量对分子进行排序,然后将其拆分。
类dgl.data.chem.
ScaffoldSplitter
[源代码]
根据其Bemis-Murcko支架对分子进行分组,然后进行分组。
对分子进行分组,以便组中的所有分子都具有相同的支架(请参阅参考资料)。然后,将数据集按组级别拆分。
参考文献
GW Bemis;马萨诸塞州Murcko,“已知药物的特性。
类dgl.data.chem.
SingleTaskStratifiedSplitter
[源代码]
通过对单个任务进行分层来拆分数据集。
我们根据任务的标记值对分子进行排序,然后重复获取数据点桶以增强训练,验证和测试子集。