当前位置: 首页 > news >正文

一流高职院校建设计划项目网站北京和隆优化是干嘛的

一流高职院校建设计划项目网站,北京和隆优化是干嘛的,一站式免费建站平台,html教程菜鸟教程语法文章目录 导入数据集访问数据集 ndata edata节点信息边信息构造模型并训练构造dgl graph并查看图信息构造特征获取子图保存与加载模型自定义GNN moduleBuilt-in message and reduce function节点和边apply APIUser Defined FunctionLink PredictionGraph Classification(undone…

文章目录

  • 导入数据集
  • 访问数据集 ndata edata
    • 节点信息
    • 边信息
  • 构造模型并训练
  • 构造dgl graph并查看图信息
    • 构造特征
  • 获取子图
  • 保存与加载模型
  • 自定义GNN module
    • Built-in message and reduce function
    • 节点和边apply API
    • User Defined Function
  • Link Prediction
  • Graph Classification(undone)

import numpy as np
import pandas as pd
from matplotlib import pyplot as plt
import seaborn as sns
import scipy as sp
import sklearn as sk
import time
import gc%matplotlib inline
%config InlineBackend.figure_format = 'retina'import warnings
warnings.filterwarnings("ignore")
plt.rcParams['figure.figsize'] = (10.0, 8.0)
pd.set_option('display.max_columns', 10)
pd.set_option('display.max_rows', None)
pd.set_option('display.min_rows', 14)
pd.set_option('display.max_colwidth',100)
# pd.reset_option('display.max_columns')
import dgl
import torch
import torch.nn as nn
import torch.nn.functional as Ffrom importlib import reload
Using backend: pytorch

导入数据集

import dgl.datadataSet = dgl.data.CoraGraphDataset()
Using backend: pytorchLoading from cache failed, re-processing.
Finished data loading and preprocessing.NumNodes: 2708NumEdges: 10556NumFeats: 1433NumClasses: 7NumTrainingSamples: 140NumValidationSamples: 500NumTestSamples: 1000
Done saving data into cached files.

访问数据集 ndata edata

# 数据集名称
dataSet.name
'cora_v2'
# 查看有哪些图
dataSet.graph
<networkx.classes.digraph.DiGraph at 0x7fdf0458e290>
# 查看label个数
dataSet.num_classes
7
# 一个数据集可能有多个graph 通过下标访问graph
dataSet[0]
Graph(num_nodes=2708, num_edges=10556,ndata_schemes={'train_mask': Scheme(shape=(), dtype=torch.bool), 'val_mask': Scheme(shape=(), dtype=torch.bool), 'test_mask': Scheme(shape=(), dtype=torch.bool), 'label': Scheme(shape=(), dtype=torch.int64), 'feat': Scheme(shape=(1433,), dtype=torch.float32)}edata_schemes={})

节点信息

  • 为什么训练集 验证集 测试集的节点数量之和不等于节点总数?
dataSet[0].ndata.keys()
dict_keys(['train_mask', 'val_mask', 'test_mask', 'label', 'feat'])
# 训练集 mask
dataSet[0].ndata['train_mask']
tensor([ True,  True,  True,  ..., False, False, False])
# 训练集包含140个节点
dataSet[0].ndata['train_mask'].sum()
tensor(140)
# 验证集包含500个节点
dataSet[0].ndata['val_mask'].sum()
tensor(500)
# 测试集
dataSet[0].ndata['test_mask']
tensor([False, False, False,  ...,  True,  True,  True])
# 所有节点的分类
dataSet[0].ndata['label']
tensor([3, 4, 4,  ..., 3, 3, 3])
# 所有节点的features
dataSet[0].ndata['feat']
tensor([[0., 0., 0.,  ..., 0., 0., 0.],[0., 0., 0.,  ..., 0., 0., 0.],[0., 0., 0.,  ..., 0., 0., 0.],...,[0., 0., 0.,  ..., 0., 0., 0.],[0., 0., 0.,  ..., 0., 0., 0.],[0., 0., 0.,  ..., 0., 0., 0.]])

边信息

dataSet[0].edata
{}

构造模型并训练

  • dgl_1_gcn.py

构造dgl graph并查看图信息

# src_ids = [0, 0, 0]
src_ids = torch.tensor([0, 0, 0])
# dest_ids = [1, 2, 3]
dest_ids = torch.tensor([1, 2, 3])
graph = dgl.graph((src_ids, dest_ids), num_nodes = 4)'''
dgl.graph params:data: (src nodes id, dest nodes id) 一一对应
num_nodes: 节点个数构造有向图,边直接由起始节点和终止节点决定,边的id由定义顺序决定
'''
'\ndgl.graph params:\n\ndata: (src nodes id, dest nodes id) 一一对应\nnum_nodes: 节点个数\n\n构造有向图,边直接由起始节点和终止节点决定,边的id由定义顺序决定\n'
# 查看边
graph.edges()
(tensor([0, 0, 0]), tensor([1, 2, 3]))
graph.num_edges()
3
# 给定起始和终止节点查看边id
graph.edge_id(2, 0)
---------------------------------------------------------------------------DGLError                                  Traceback (most recent call last)<ipython-input-23-71bec222622a> in <module>1 # 给定起始和终止节点查看边id
----> 2 graph.edge_id(2, 0)~/anaconda3/envs/DeepLearning/lib/python3.7/site-packages/dgl/heterograph.py in edge_id(self, u, v, force_multi, return_uv, etype)2713         dgl_warning("DGLGraph.edge_id is deprecated. Please use DGLGraph.edge_ids.")2714         return self.edge_ids(u, v, force_multi=force_multi,
-> 2715                              return_uv=return_uv, etype=etype)2716 2717     def edge_ids(self, u, v, force_multi=None, return_uv=False, etype=None):~/anaconda3/envs/DeepLearning/lib/python3.7/site-packages/dgl/heterograph.py in edge_ids(self, u, v, force_multi, return_uv, etype)2835                 raise DGLError("Error: (%d, %d) does not form a valid edge." % (2836                     F.as_scalar(F.gather_row(u, idx)),
-> 2837                     F.as_scalar(F.gather_row(v, idx))))2838             return F.as_scalar(eid) if is_int else eid2839 DGLError: Error: (2, 0) does not form a valid edge.
graph.edge_id(0, 2)
1
# 查看点
graph.nodes()
tensor([0, 1, 2, 3])
graph.num_nodes()
4
# 全图出度之和
graph.num_src_nodes()
4
# 全图入度之和
graph.num_dst_nodes()
4
# 某个点的出度
graph.out_degrees(1)
0
# 某个点的入度
graph.in_degrees(1)
1
# 邻接矩阵
graph.adj()
tensor(indices=tensor([[0, 0, 0],[1, 2, 3]]),values=tensor([1., 1., 1.]),size=(4, 4), nnz=3, layout=torch.sparse_coo)
graph.adjacency_matrix_scipy()
<4x4 sparse matrix of type '<class 'numpy.int64'>'with 3 stored elements in Compressed Sparse Row format>
g, _= dgl.load_graphs('./data/graph.bin', [0])
g = g[0]
g
Graph(num_nodes=4, num_edges=3,ndata_schemes={'feat': Scheme(shape=(3,), dtype=torch.float32)}edata_schemes={'feat': Scheme(shape=(4,), dtype=torch.float32)})
g.srcdata
{'feat': tensor([[ 1.0556,  0.1928,  1.0018],[ 2.2849, -1.3030,  1.3342],[ 1.8428,  0.2911, -0.0281],[-0.3295,  0.4281, -1.9331]])}
g.srcdata.update({'a': torch.tensor([1, 2, 3, 4])})
# g.srcdata['a'] = torch.tensor([1, 2, 3, 4])
g.srcdata
{'feat': tensor([[ 1.0556,  0.1928,  1.0018],[ 2.2849, -1.3030,  1.3342],[ 1.8428,
http://www.yayakq.cn/news/936413/

相关文章:

  • 网站动画广告条怎么做的商超运营与管理
  • 网站开发 京东app开发属于什么行业
  • 合肥做网站工作室一站式做网站平台
  • wordpress全站注明网站建设广东
  • 怎么给网站做推广wordpress免费汉化主题
  • 有品质的网站推广公司德州企业网站优化公司
  • 建站工具搭建网站高端品牌汽车
  • 小璇seo优化网站四川成都私人网站建设
  • 360建筑网 官方网站中国建设银行客户端下载官方网站
  • 广东做网站优化公司报价郑州全面恢复正常
  • 做淘宝网站怎么弄好玩的微信小程序游戏排行榜前十名
  • wordpress 当前栏目东莞网站优化的具体方案
  • 谁可以做开码网站一品在线视频观看
  • 九江 网站建设公司公司网页打不开是什么原因
  • 怀化职院网站水利建设经济定额站网站
  • 应用网站建设网页制作基础教程第2版葛艳玲答案
  • 哪个网站专门做邮轮旅游的运行网站需要多少钱
  • 网站建设优化方案seoapp推广
  • 张家港建网站公司好的室内设计网站
  • 阿里百秀网站福建省建设人才市场网站
  • 做互联网网站赚钱吗苏州网站建设网站
  • 网站栏目怎么网站设计需要哪些技术
  • 延吉手机网站建设开发可编辑wordpress主题
  • 建设网站怎么建设分类深圳做步步高的公司网站
  • 广州做网站优化哪家专业网站开发规格
  • 下载站推广门户网站报价方案
  • 免费网站空间怎么做网站百度推广怎么弄
  • 商城网站设计配色思想企业门户网站建设专业品牌
  • 好看又免费的图片素材网站网站定制开发 广州
  • 用shopify 做网站建材网站建设公司