1 pytorch中创建多个空的tensor
神经网络模型搭建中,如果写一些并联的模块,例如inceptionV3等这些具有多个尺度的卷积输出,其结果需要拼接起来,需要使用nn.ModuleList()使自己的代码看起来不是那么的笨拙,并且容易扩展,那么在调用这些模块的时候,需要使用enumerate()去遍历,这时候,想把并联的模块的输出分别保存下来就需要使用一tensor的list:
xx = [torch.tensor([], requires_grad=False) for i in range(self.chan_num)]
这样就可以申请一个包含self.chan_num个tensor的list,可以使用enumerate或者[idx]方法去索引,简单方便,其中参数requires_grad 默认就是false,因为这是中间结果,是不需要梯度更新的。
2 自己写的xx.py中引用函数下面画红线
虽然编译器给画红线,但是功能正常。但是看着十分碍眼,必须根除!
出现问题的原因是项目根目录的问题,如果新文件是在根目录下的子目录,那就会出现这个问题,这时候就要找到根目录,然后从根目录一层一层引用:
随便选中一个文件,在编译器顶部状态栏就会显示其相对路径,我的是pytorch文件夹开始的,所以引用的时候就:
from pytorch.xxxx.xxxx import xxxx
这个时候根据联想的内容即可选择到你写的那个.py文件