# KamNet_pytorch ## 项目简介 KamNet 是一种面向球形液体闪烁体探测器的前沿神经网络模型。它利用 S² 和 SO(3) 群上的等变卷积操作,使模型对三维旋转具有不变性,适用于几何深度学习和非欧数据建模研究。 --- ## 环境部署 ### 1. 拉取镜像 ```bash docker pull harbor.sourcefind.cn:5443/dcu/admin/base/pytorch:2.5.1-ubuntu22.04-dtk25.04.2-py3.10 ``` ### 2. 创建容器 ```bash docker run -it \ --network=host \ --hostname=localhost \ --name=kamnet \ -v /opt/hyhal:/opt/hyhal:ro \ -v $PWD:/workspace \ --ipc=host \ --device=/dev/kfd \ --device=/dev/mkfd \ --device=/dev/dri \ --shm-size=512G \ --privileged \ --group-add video \ --cap-add=SYS_PTRACE \ -u root \ --security-opt seccomp=unconfined \ harbor.sourcefind.cn:5443/dcu/admin/base/pytorch:2.5.1-ubuntu22.04-dtk25.04.2-py3.10 \ /bin/bash ``` --- ## 测试步骤 ### 1. 拉取代码 ```bash git clone http://developer.sourcefind.cn/codes/bw-bestperf/kamnet_pytorch.git cd kamnet_pytorch/ ``` ### 2. 安装依赖 ```bash pip install joblib cython rtree shapely pyembree "trimesh[easy]" -i https://mirrors.aliyun.com/pypi/simple/ --trusted-host mirrors.aliyun.com cd KamNet/lie_learn && pip install e . #可能耗时较长 cd ../ && cd s2cnn && python setup.py install ``` ### 3、获取优化包 ``` curl -f -C - -o rocblas-install-1117-bug110157.tar.gz https://wuzh01.hpccube.com:65015/efile/s/d/bWFtaW5nMTAx/75c4336061c1be03 #设置环境变量 CURRENT_DIR=$(pwd) export LD_LIBRARY_PATH=$CURRENT_DIR/rocblas-install/lib:$LD_LIBRARY_PATH #验证环境变量设置 echo $LD_LIBRARY_PATH | tr ':' '\n' | head -3 ``` ## 训练 ```bash cd KamNet_pytorch/s2cnn/examples/mnist # 生成球面MNIST数据集 python3 gendata.py # 进入缺失文件的目录 cd /usr/local/lib/python3.10/dist-packages/lie_learn/representations/SO3/pinchon_hoggan/ # 从官方仓库手动下载缺失的矩阵文件 wget https://raw.githubusercontent.com/AMLab-Amsterdam/lie_learn/master/lie_learn/representations/SO3/pinchon_hoggan/J_dense_0-150.npy # numa绑定,查看机器numa亲和度 export HIP_VISIBLE_DEVICES=0 numactl --cpunodebind=3 python run_new.py --network original ``` --- ## 贡献指南 欢迎对KamNet项目进行贡献!请遵循以下步骤: 1. Fork 本仓库,并新建分支进行功能开发或问题修复。 2. 提交规范的 commit 信息,描述清晰。 3. 提交 Pull Request,简述修改内容及目的。 4. 遵守项目代码规范和测试标准。 5. 参与代码评审,积极沟通改进方案。 --- ## 许可证 本项目遵循 MIT 许可证,详见 [LICENSE](./LICENSE) 文件。 --- 感谢您的关注与支持!如有问题,欢迎提交 Issue 或联系维护团队。