pytorch
StarfishCu
15级中科大少年班学院数学方向转计算机方向,本校硕转博
展开
-
csr_matrix,coo_matrix转化成torch.sparse matrix
11111原创 2022-12-10 16:54:37 · 470 阅读 · 0 评论 -
igraph load 无法读取保存的graph attr
FUCK U IGRAPHLOAD原创 2022-09-20 11:03:58 · 143 阅读 · 0 评论 -
python-igraph无法保存特征矩阵 & python-igraph图转dgl图或pyg图
煞笔igraph吃枣药丸原创 2022-09-19 18:08:14 · 315 阅读 · 0 评论 -
针对DGL的few-shot数据集划分方法
DGL few-shot原创 2022-09-06 20:50:50 · 425 阅读 · 0 评论 -
pytorch:对list中的tensor做cat
list中的tensor做cat原创 2022-09-06 11:42:33 · 1146 阅读 · 0 评论 -
pytorch 模型参数不更新,模型不训练,loss不变,参数没有梯度
模型不更新bug原因查找原创 2022-07-25 10:12:48 · 6077 阅读 · 4 评论 -
记录pytorch机器学习踩过的大坑 每次开新工程前先看一遍
pytorch机器学习踩过的坑开坑前必看原创 2022-07-19 16:42:12 · 771 阅读 · 1 评论 -
CONDA虚拟环境下GPU加速pytorch程序大坑记录!
大坑:前几天在服务器上的虚拟环境上使用gpu同时运行两个处理大数据集的程序,结果跑着跑着突然中断。原因很玄幻,是虚拟环境下的与运行的程序相关的包丢失了:pytorch,dgl等等都丢失了。而在程序刚开始运行时候这些包都存在。直接原因及推测根本原因:直接原因是两个程序在同一anaconda建立的虚拟环境下运行。推测根本原因因为程序要处理的数据集很大,会占用大量cpu和gpu空间,在同一虚拟环境下运行会导致冲突?只是推测,如果有知道的朋友欢迎告诉我具体原因解决方案:只需要建立两个相同配置的虚拟环境,原创 2021-04-22 10:01:16 · 517 阅读 · 0 评论 -
DGL获得adj,edge_list
DGL有内置函数adglgraph.adj可以获得adjmatrix,但问题是adjmatrix是sparse.tensor格式,无法直接调用我们想要的adj:u=[0,0,0,1]v=[1,1,2,2]graph=dgl.DGLGraph((u,v))print('graph',graph)adj=graph.adjacency_matrix(transpose=True)print('adj',adj)>>>graph DGLGraph(num_nodes=3, num_原创 2021-03-16 13:02:51 · 2722 阅读 · 1 评论 -
pytorch 矩阵运算实现“笛卡尔加”
问题定义见下图:给定A,B,求A“笛卡尔加”B(笛卡尔加类似于笛卡尔积,只是在合并时做了加法运算)用for语句解决这个问题当然非常简单,但是for的性能损失太大(我在神经网络里,分别用for和矩阵运算实现了“笛卡尔加”,最终for的时间开销为8h+,矩阵运算为5min+),记录一下怎么用矩阵运算解决:step扩充A,B为(3,3,4)维度,得到_A , _B._A=([A1,A2,A3],[A1,A2,A3],[A1,A2,A3]) _B同理。将_A的前两维转置后+_B即可得到AB的“笛卡尔加”原创 2021-01-11 16:38:25 · 1235 阅读 · 2 评论 -
用tensor创建tensor
用两个长度相同的一维tensor(x,y),生成一个新的二维tensor(z),使z的第一行即x,第二行为y:代码中的edge_index_pattern即z,dataset[“pattern”].edges(form=‘uv’)[0]即x,dataset[“pattern”].edges(form=‘uv’)[1]即y由于不能直接使用tensor,所以需要先将tensor转为list即可 edge_index_pattern=torch.tensor([dataset["pattern"].e原创 2021-01-04 17:01:14 · 606 阅读 · 0 评论 -
生成有feature的pattern-graph数据集
如果完全仿照generate_label的方式生成feature:def generate_features(number_of_items, feature_dim, num_of_features):#考虑cora数据集,num_of_features代表一个维度里features有几个可选值(从0开始,例如:0,1,2...),feature_dim代表feature有几个维度 features = np.zeros([number_of_items,feature_dim],dtype=i原创 2020-12-26 19:10:34 · 726 阅读 · 1 评论 -
Can Graph Neural Networks Count Substructures复现实验记录
相比上一篇Nerual Subgraph Isomophism Counting的实验说明,这篇文章的实验说明很不详细,这里只关注subgraph部分,也就是synthetic文件夹下的代码,记录下复现过程:记录data文件夹中本来是没有lrp_save_path文件夹的,需要手动建立(这个代码里没有建立文件夹的代码)。还需要在synthetic文件夹下建立save_model和results文件夹。然后运行main_synthetic.py即可。...原创 2020-12-21 14:39:46 · 369 阅读 · 0 评论 -
Neural Subgraph Isomorphism Counting复现记录
train.py:2020/12/19 16:28:17: [ data_type: train best mean loss: 401.561 (epoch: 050) ]2020/12/19 16:28:17: [ data_type: dev best mean loss: 236.555 (epoch: 073) ]2020/12/19 16:28:17: [ data_type: test best mean loss: 267.581 (epoch: 045) ]原创 2020-12-19 17:10:38 · 267 阅读 · 1 评论 -
Graph Embedding预处理:对图中部分节点进行训练
Graph Embedding优化:只对目标节点进行训练原理代码创建子图代码main代码(以gcn为例)其实我们在训练时候,并不需要将整个图都扔进神经网络进行训练,因为需要的只是训练集中的train_mask节点,将整个图都进行训练其实浪费了很多的时间空间复杂度,所以我们可以预先离线抽取出我们需要的目标节点及在计算中需要用到的n级邻居节点,然后再进行训练,可以节省很多的时空复杂度。原理无论是GCN还是GAT,每层网络本质上的工作就是以某种方式将节点特征及其邻居的特征加到一起获得一个新的特征值。每多加一原创 2020-12-08 15:34:03 · 561 阅读 · 0 评论 -
GAT学习:PyG实现GAT(自定义GAT层)网络(四)
PyG实现自定义GAT层完整代码代码分析本系列中的第三篇介绍了如何调用pyg封装好的GAT函数,当然同样的,对于科研需求,我们同样需要学会如何自定义网络层以满足研究需求。完整代码import torchimport mathfrom torch_geometric.nn import MessagePassingfrom torch_geometric.utils import add_self_loops,remove_self_loops,softmaxfrom torch_geometr原创 2020-12-01 15:39:41 · 2862 阅读 · 1 评论 -
GCN学习:Pytorch-Geometric教程(二)
PyG教程二数据转换图上的学习方法数据转换PyTorch Geometric带有自己的变换,该变换期望将Data对象作为输入并返回一个新的变换后的Data对象。 可以使用torch_geometric.transforms.Compose将变换链接在一起,并在将处理后的数据集保存到磁盘之前(pre_transform)或访问数据集中的图形之前(transform)应用变换。让我们看一个示例,其中我们对ShapeNet数据集(包含17,000个3D形状点clouds和来自16个形状类别的每个点标签)应用原创 2020-09-29 16:55:52 · 3487 阅读 · 1 评论 -
torch_scatter.scatter详解
scatter方法通过src和index两个张量来获得一个新的张量。torch_scatter.scatter(src: torch.Tensor, index: torch.Tensor, dim: int = - 1, out: Optional[torch.Tensor] = None, dim_size: Optional[int] = None, reduce: str = 'sum') → torch.Tensor原理如图,根据index,将index相同值对应的src元素进行对应定义的计原创 2020-09-28 17:01:13 · 14556 阅读 · 4 评论