开发者
基于鲲鹏环境移植生科软件scCapsNet_mask
基于鲲鹏环境移植生科软件scCapsNet_mask
发表于2024/09/10
460

一、软件介绍

scCapsNet-mask:scCapsNet 的更新版本,在与 scRNA-seq 数据相关的功能分析中具有扩展的适用性

二、软件语言

python

三、获取源码

https://github.com/wanglf19/scCapsNet_mask/archive/refs/heads/master.zip

下载scCapsNet_mask-master.zip。放到目录/path/to

四、系统环境

处理器:鲲鹏920系列

操作系统:openEuler 22.03 SP2

yum源:openEuler官方网络源

编译器:python3.7.16

五、编译步骤

5.1 安装anaconda3

下载anaconda3https://mirrors.tuna.tsinghua.edu.cn/anaconda/archive/Anaconda3-2023.03-1-Linux-aarch64.sh

sh Anaconda3-2023.03-1-Linux-aarch64.sh

无需修改,一直下一步,默认安装在/root/anaconda3(本文安装在/home目录下)

source /home/anaconda3/etc/profile.d/conda.sh

5.2 创建虚拟环境,安装python3.7.16

conda create -n python3.7.16 -y

conda activate python3.7.16

conda install python=3.7.16

5.3 安装scCapsNet_mask所需依赖

cd /path/to

wget https://github.com/lhelontra/tensorflow-on-arm/releases/download/v1.14.0-buster/tensorflow-1.14.0-cp37-none-linux_aarch64.whl

pip3 install tensorflow-1.14.0-cp37-none-linux_aarch64.whl --trusted-host mirrors.huaweicloud.com -i https://mirrors.huaweicloud.com/repository/pypi/simple

pip3 install keras==2.2.4 --trusted-host mirrors.huaweicloud.com -i https://mirrors.huaweicloud.com/repository/pypi/simple

pip3 install scikit-learn==0.24.2 --trusted-host mirrors.huaweicloud.com -i https://mirrors.huaweicloud.com/repository/pypi/simple

pip3 install matplotlib==3.4.3 --trusted-host mirrors.huaweicloud.com -i https://mirrors.huaweicloud.com/repository/pypi/simple

pip3 install seaborn --trusted-host mirrors.huaweicloud.com -i https://mirrors.huaweicloud.com/repository/pypi/simple

pip3 install protobuf==3.20.0 --trusted-host mirrors.huaweicloud.com -i https://mirrors.huaweicloud.com/repository/pypi/simple

5.4 修改keras部分代码

vim /home/anaconda3/envs/python3.7/lib/python3.7/site-packages/keras/engine/saving.py

大约550行、1006行、1010行左右,分别是:

data = [n if isinstance(n, str) else n.decode('utf8') for n in group.attrs[name]]

original_keras_version = f.attrs['keras_version'] if isinstance(f.attrs['keras_version'], str) else f.attrs['keras_version'].decode('utf8')

original_backend = f.attrs['backend'] if isinstance(f.attrs['backend'], str) else f.attrs['backend'].decode('utf8')

如下图:

111.jpg

111.jpg

六、验证与测试

cd /path/to

unzip scCapsNet_mask-master.zip

cd scCapsNet_mask

python scCapsNet_mask.py --inputdata=data/PBMC_data.npz --inputcelltype=data/PBMC_celltype.npy --num_classes=8 --dim_capsule=16 --pc_slice=30 --epochs=10

运行结束时提示Plotting and saving......

弹出2个窗口生成2张图Figure_1.pngFigure_2.png,可手动保存。

111.jpg

111.jpg

python scCapsNet_mask.py --inputdata=data/retina_data.npz --inputcelltype=data/retina_celltype.npy --num_classes=15 --dim_capsule=32 --pc_slice=20

同理,运行结束时提示Plotting and saving......

弹出2个窗口生成2张图Figure_1.pngFigure_2.png,可手动保存。

111.jpg

111.jpg

并在当前目录下的results文件夹内生成2个文件training_n8_r30_dim16_e10_b400_.weighttraining_n15_r30_dim32_e15_b400_.weight

收藏举报
Level 1
0
帖子
0
粉丝
0
获赞