Skip to content
GitLab
Menu
Projects
Groups
Snippets
Loading...
Help
Help
Support
Community forum
Keyboard shortcuts
?
Submit feedback
Contribute to GitLab
Sign in / Register
Toggle navigation
Menu
Open sidebar
OpenDAS
torch-spline-conv
Commits
fd3b2a17
Commit
fd3b2a17
authored
Dec 22, 2023
by
quyuanhao123
Browse files
Update README.md
parent
8911d807
Changes
2
Show whitespace changes
Inline
Side-by-side
Showing
2 changed files
with
77 additions
and
62 deletions
+77
-62
README_.md
README_.md
+77
-0
README_HIP.md
README_HIP.md
+0
-62
No files found.
README_.md
0 → 100644
View file @
fd3b2a17
# <div align="center"><strong>torch-spline-conv-1.2.1</strong></div>
## 简介
torch-spline-conv是基于PyTorch框架的一个软件包,用于实现图卷积神经网络中的Spline卷积操作。图卷积神经网络是一种能够在图结构数据上进行深度学习的模型,适用于节点分类、图分类和图生成等任务。
## 依赖安装
+
pytorch1.10或者pytorch1.13 以及对应的torchvision(建议dtk-22.04.2、dtk-23.04与dtk-23.10)
+
python 3.7-3.10
### 1、使用源码编译方式安装
#### 编译环境准备
提供2种环境准备方式:
1.
基于光源pytorch基础镜像环境:镜像下载地址:
[
https://sourcefind.cn/#/image/dcu/pytorch
](
https://sourcefind.cn/#/image/dcu/pytorch
)
,根据pytorch、python、dtk及系统下载对应的镜像版本。
2.
基于现有python环境:安装pytorch和torchvision,whl包下载目录:
[
https://cancon.hpccube.com:65024/4/main/pytorch
](
https://cancon.hpccube.com:65024/4/main/pytorch
)
,
[
https://cancon.hpccube.com:65024/4/main/vision
](
https://cancon.hpccube.com:65024/4/main/vision
)
,根据python、dtk版本,下载对应pytorch和torchvision的whl包。安装命令如下:
```
shell
pip
install
torch
*
(
下载的torch的whl包
)
pip
install
torchvision
*
(
下载的torchvision的whl包
)
pip
install
setuptools
==
59.5.0 wheel
```
#### 源码编译安装
-
代码下载
```
shell
git clone http://developer.hpccube.com/codes/aicomponent/torch-spline-conv
# 根据编译需要切换分支
```
-
源码编译(进入torch-spline-conv目录):
```
export C_INCLUDE_PATH=/public/software/apps/DeepLearning/PyTorch_Lib/gflags-2.1.2-build/include:$C_INCLUDE_PATH
export CPLUS_INCLUDE_PATH=/public/software/apps/DeepLearning/PyTorch_Lib/gflags-2.1.2-build/include:$CPLUS_INCLUDE_PATH
export C_INCLUDE_PATH=/public/software/apps/DeepLearning/PyTorch_Lib/glog-build/include:$C_INCLUDE_PATH
export CPLUS_INCLUDE_PATH=/public/software/apps/DeepLearning/PyTorch_Lib/glog-build/include:$CPLUS_INCLUDE_PATH
export C_INCLUDE_PATH=$ROCM_PATH/rocrand/include:$C_INCLUDE_PATH
export CPLUS_INCLUDE_PATH=$ROCM_PATH/rocrand/include:$CPLUS_INCLUDE_PATH
export LD_LIBRARY_PATH=$ROCM_PATH/rocrand/lib:$LD_LIBRARY_PATH
export FORCE_ONLY_HIP=1
export CC=hipcc
export CXX=hipcc
python setup.py install
```
#### 注意事项
+
若使用pip install下载安装过慢,可添加pypi清华源:-i https://pypi.tuna.tsinghua.edu.cn/simple/
+
ROCM_PATH为dtk的路径,默认为/opt/dtk
## 验证
```
python
import
torch
from
torch_spline_conv
import
spline_conv
x
=
torch
.
rand
((
4
,
2
),
dtype
=
torch
.
float
)
# 4 nodes with 2 features each
edge_index
=
torch
.
tensor
([[
0
,
1
,
1
,
2
,
2
,
3
],
[
1
,
0
,
2
,
1
,
3
,
2
]])
# 6 edges
pseudo
=
torch
.
rand
((
6
,
2
),
dtype
=
torch
.
float
)
# two-dimensional edge attributes
weight
=
torch
.
rand
((
25
,
2
,
4
),
dtype
=
torch
.
float
)
# 25 parameters for in_channels x out_channels
kernel_size
=
torch
.
tensor
([
5
,
5
])
# 5 parameters in each edge dimension
is_open_spline
=
torch
.
tensor
([
1
,
1
],
dtype
=
torch
.
uint8
)
# only use open B-splines
degree
=
1
# B-spline degree of 1
norm
=
True
# Normalize output by node degree.
root_weight
=
torch
.
rand
((
2
,
4
),
dtype
=
torch
.
float
)
# separately weight root nodes
bias
=
None
# do not apply an additional bias
out
=
spline_conv
(
x
,
edge_index
,
pseudo
,
weight
,
kernel_size
,
is_open_spline
,
degree
,
norm
,
root_weight
,
bias
)
print
(
out
.
size
())
torch
.
Size
([
4
,
4
])
# 4 nodes with 4 features each
```
## Known Issue
-
该库没有基于cpu环境修改,仅支持dcu,请在有dcu卡的环境运行。
-
如需完整使用所有pyg功能,请pip install torch-geometric
## 参考资料
-
[
README_ORIGIN
](
README_ORIGIN.md
)
-
[
https://pypi.org/project/torch-sparse/0.6.13/
](
https://pypi.org/project/torch-sparse/0.6.13/
)
README_HIP.md
deleted
100644 → 0
View file @
8911d807
**编译安装步骤**
-
1. 安装与dtk版本对应的pytorch torchvision whl(可在光合社区下载https://developer.hpccube.com/tool/)以及其他依赖库
例如:
pip install https://cancon.hpccube.com:65024/directlink/4/pytorch/dtk22.10/torch-1.10.0a0+git2040069.dtk2210-cp38-cp38-manylinux2014_x86_64.whl
pip install https://cancon.hpccube.com:65024/directlink/4/vision/dtk22.10/torchvision-0.10.0a0+e04d001.dtk2210-cp38-cp38-manylinux2014_x86_64.whl
pip install -r requirements.txt
-
2. 添加编译时的conda环境及部分库的环境变量
-
2.1 激活对应的conda环境:
source ~/miniconda3/etc/profile.d/conda.sh
conda activate torch1.10_py39_dtk22.10
- 2.2 加载对应的module,包括dtk:
module purge
module load compiler/devtoolset/7.3.1 mpi/hpcx/gcc-7.3.1 compiler/dtk/22.10.1
module list
- 2.3 加载所需的依赖库的环境变量(根据各集群实际路径调整):
export C_INCLUDE_PATH=/public/software/apps/DeepLearning/PyTorch_Lib/gflags-2.1.2-build/include:$C_INCLUDE_PATH
export CPLUS_INCLUDE_PATH=/public/software/apps/DeepLearning/PyTorch_Lib/gflags-2.1.2-build/include:$CPLUS_INCLUDE_PATH
export C_INCLUDE_PATH=/public/software/apps/DeepLearning/PyTorch_Lib/glog-build/include:$C_INCLUDE_PATH
export CPLUS_INCLUDE_PATH=/public/software/apps/DeepLearning/PyTorch_Lib/glog-build/include:$CPLUS_INCLUDE_PATH
export C_INCLUDE_PATH=$ROCM_PATH/rocrand/include:$C_INCLUDE_PATH
export CPLUS_INCLUDE_PATH=$ROCM_PATH/rocrand/include:$CPLUS_INCLUDE_PATH
export LD_LIBRARY_PATH=$ROCM_PATH/rocrand/lib:$LD_LIBRARY_PATH
- 2.4 修改编译器环境变量:
export FORCE_ONLY_HIP=1
export CC=hipcc
export CXX=hipcc
-
3. 编译安装
python setup.py install
Write
Preview
Markdown
is supported
0%
Try again
or
attach a new file
.
Attach a file
Cancel
You are about to add
0
people
to the discussion. Proceed with caution.
Finish editing this message first!
Cancel
Please
register
or
sign in
to comment