当前位置: 首页> 教育> 幼教 > 四川网站建设多少钱_世界工厂网官网下载_收录查询工具_软件测试培训班多少钱

四川网站建设多少钱_世界工厂网官网下载_收录查询工具_软件测试培训班多少钱

时间:2025/7/12 6:03:02来源:https://blog.csdn.net/programmer9/article/details/145419453 浏览次数:0次
四川网站建设多少钱_世界工厂网官网下载_收录查询工具_软件测试培训班多少钱

年也过了,也不能一直玩,该学习还是要学习。
过年前我算是把环境配置好,然后把项目跑起来了,现在的问题是我看不懂这个代码什么意思
代码还是要一行一行看,每一行都看懂了,全文自然就知道了
1

from pathlib import Path
import argparse
import yaml
import torch
import os
import random
import numpy as np
import torch.backends.cudnn as cudnn

这个就是导入一堆库,这里面就torch最麻烦,因为不但要配torch还要配cuda,而且通过命令是无法执行完成的。因为太大了,在下载的过程中会出现各种各样的问题,因此把torch下载到本地,然后再安装是唯一的办法。
2

from train import BasicTrainfrom model.model import PLSNet
from dataloader import init_dataloader

这一部分导入的不是python的官方库,而是本地的.py文件。这里就是导入了train.py,model.py,dataloader.py文件
3

if __name__ == '__main__':os.environ["CUDA_VISIBLE_DEVICES"] = "1"parser = argparse.ArgumentParser()parser.add_argument('--config_filename', default='setting/abide_PLSNet.yaml', type=str,help='Configuration filename for training the model.')parser.add_argument('--repeat_time', default=100, type=int)args = parser.parse_args()torch.cuda.set_device(0)# 控制随机性seed = 0random.seed(seed)np.random.seed(seed)if torch.cuda.is_available():torch.cuda.manual_seed_all(seed)torch.manual_seed(seed)torch.cuda.manual_seed(seed)torch.cuda.manual_seed_all(seed)# cudnn.benchmark = Falsecudnn.deterministic = Truefor i in range(args.repeat_time):main(args)

if name == ‘main’:这一句其实我觉得莫名其妙,不习惯,就当做路人npc算了。
os.environ[“CUDA_VISIBLE_DEVICES”] = "1"我查了一圈,原来这个是用来指定gpu的,可是我电脑上只有一个gpu啊
在这里插入图片描述
我在控制台界面输入nvidia-smi得到的结果就是我只有一个gpu,而且编号为0,那这一句应该改一下os.environ[“CUDA_VISIBLE_DEVICES”] = “0”
,也不知道我之前怎么运行成功的

    parser = argparse.ArgumentParser()parser.add_argument('--config_filename', default='setting/abide_PLSNet.yaml', type=str,help='Configuration filename for training the model.')parser.add_argument('--repeat_time', default=100, type=int)args = parser.parse_args()

我这个项目的readme里面告诉我在控制台界面要执行命令
python main.py --config_filename setting/abide_RGTNet.yaml
为什么控制台能够识别–config_filename呢,就是因为parser是一个对象,argumentparser这个对象的一个实例。
add_argument是一个方法,添加了参数,比如此处就定义了–config_filename和–repeat_time这两个参数
我终于懂args到底是干嘛用的了,args.config_filename和args.repeat_time,就是用来访问这两个参数的。
4

    torch.cuda.set_device(0)# 控制随机性seed = 0random.seed(seed)np.random.seed(seed)if torch.cuda.is_available():torch.cuda.manual_seed_all(seed)torch.manual_seed(seed)torch.cuda.manual_seed(seed)torch.cuda.manual_seed_all(seed)# cudnn.benchmark = Falsecudnn.deterministic = True

这一段是用到了torch方法。torch.cuda.set_device(0)这个是最简单的,就是选中gpu设备,我也没啥好选的,只有一个gtx960M
seed = 0
random.seed(seed)
np.random.seed(seed)
if torch.cuda.is_available():
torch.cuda.manual_seed_all(seed)

torch.manual_seed(seed)
torch.cuda.manual_seed(seed)
torch.cuda.manual_seed_all(seed)这几句话一个意思都是为了结果可以复现,如果不设定一个固定的seed,那么每次运行的结果都不一样,没有可参考性
cudnn.deterministic = True原来这个也是为了结果具有可重复性

5

    for i in range(args.repeat_time):main(args)

此处是重复执行100次main主函数
6yaml文件是配置文件
fold: 0

time_seires: /data/CodeGoat24/FBNETGEN/ABIDE_pcp/abide.npy

time_seires: /data/CodeGoat24/FBNETGEN_ho/ABIDE_pcp/abide.npy

time_seires: ./data/CodeGoat24/FBNETGEN_AAL/ABIDE_pcp/abide.npy

time_seires: /data/CodeGoat24/FBNETGEN_cc400/ABIDE_pcp/abide.npy

model:
type: PLSNet
extractor_type: attention
embedding_size: 8
window_size: 4

cnn_pool_size: 16

num_gru_layers: 4

dropout: 0.5

train:
lr: 1.0e-4
weight_decay: 1.0e-4
epochs: 500
pool_ratio: 0.7
optimizer: adam
stepsize: 200

group_loss: true
sparsity_loss: true
sparsity_loss_weight: 0.5e-4
log_folder: result

uniform or pearson

pure_gnn_graph: pearson
这个配置文件里的神经网络我看不懂了,我得去看个视频

关键字:四川网站建设多少钱_世界工厂网官网下载_收录查询工具_软件测试培训班多少钱

版权声明:

本网仅为发布的内容提供存储空间,不对发表、转载的内容提供任何形式的保证。凡本网注明“来源:XXX网络”的作品,均转载自其它媒体,著作权归作者所有,商业转载请联系作者获得授权,非商业转载请注明出处。

我们尊重并感谢每一位作者,均已注明文章来源和作者。如因作品内容、版权或其它问题,请及时与我们联系,联系邮箱:809451989@qq.com,投稿邮箱:809451989@qq.com

责任编辑: