日韩性视频-久久久蜜桃-www中文字幕-在线中文字幕av-亚洲欧美一区二区三区四区-撸久久-香蕉视频一区-久久无码精品丰满人妻-国产高潮av-激情福利社-日韩av网址大全-国产精品久久999-日本五十路在线-性欧美在线-久久99精品波多结衣一区-男女午夜免费视频-黑人极品ⅴideos精品欧美棵-人人妻人人澡人人爽精品欧美一区-日韩一区在线看-欧美a级在线免费观看

歡迎訪問 生活随笔!

生活随笔

當前位置: 首頁 > 编程资源 > 编程问答 >内容正文

编程问答

pytorch 笔记:torch_geometric (1)创建一张图

發布時間:2025/4/5 编程问答 47 豆豆
生活随笔 收集整理的這篇文章主要介紹了 pytorch 笔记:torch_geometric (1)创建一张图 小編覺得挺不錯的,現在分享給大家,幫大家做個參考.

1 torch_geometric介紹

????????PyTorch geometric 是一個基于pytorch的圖網絡處理庫,里面封裝了處理圖網絡需要用到的基礎結構。

?????????一個單個的圖被描述為torch_geometric.data.Data,他有以下屬性:

  • data.x (節點的特征)? ? ? ? ? ? ? ? ? ? ? ? ? ? shape: [num_nodes, num_node_features]
  • data.edge_index (圖的連接情況)? ? ? ? shape: [2, num_edges]
  • data.edge_attr (邊的特征)? ? ? ? ? ? ? ? ? ?shape: [num_edges, num_edge_features]
  • data.y: 節點標簽,對于node-level級的任務,該數據形狀為[num_nodes, ];對于graph-level級的任務,形狀為[, ]
  • data.ydata.posshape:該矩陣表示節點在空間中的位置信息。 [num_nodes, num_dimensions]

2 創建一張圖

?我們創建一張這樣的有向圖

import torch from torch_geometric.data import Data

2.1 設置點屬性

shape = [num_nodes, num_node_features]

?圖中有四個節點 v1~v4 每個節點兩維特征向量表示,標簽y是其類別

x = torch.tensor([[2,1], [5,6], [3,7], [12,0]]) y = torch.tensor([0, 1, 0, 1])

2.2 設置邊屬性

shape = [2,num_edge]

邊的第一個列表表示源節點索引,第二個列表表示目標節點索引

創建的Data對象與順序無關
?

edge_index = torch.tensor([[0, 1, 2, 0, 3], [1, 0, 1, 3, 2]])

2.3??構建Graph的數據

data = Data(x=x, y=y,edge_index=edge_index) data''' Data(x=[4, 2], edge_index=[2, 5], y=[4]) 說明有向邊有5條、節點有4個、每個節點有兩個特征 '''

3 Data的屬性

3.1 將Data視為字典

keys

data有幾個鍵值

data['x']

查看鍵值為x的內容(即節點的特征)

鍵值對

?3.2 將Data視為圖

??

點數量
邊數量
點的特征數量
有無孤立點

有孤立點的情況:

edge_index = torch.tensor([[0, 1, 1],[1, 0, 1]])x = torch.tensor([[-1], [0], [1]])data = Data(x=x, edge_index=edge_index) data.has_isolated_nodes() #True
有無自環

有自環的情況:

edge_index = torch.tensor([[0, 1, 1],[1, 0, 1]])x = torch.tensor([[-1], [0], [1]])data = Data(x=x, edge_index=edge_index) data.has_self_loops() #True
是否是有向圖

無向圖的情況:

edge_index = torch.tensor([[0, 1, 1, 2],[1, 0, 2, 1]])x = torch.tensor([[-1], [0], [1]])data = Data(x=x, edge_index=edge_index) data.is_directed()#False

總結

以上是生活随笔為你收集整理的pytorch 笔记:torch_geometric (1)创建一张图的全部內容,希望文章能夠幫你解決所遇到的問題。

如果覺得生活随笔網站內容還不錯,歡迎將生活随笔推薦給好友。