文件数据读取
``
判断路径是否为目录,是输出True,不是输出Flase
os.path.isdir(path)#path为路径
#随机种子
seed = 111
np.random.seed(seed)
torch.manual_seed(seed)
kfold = KFold(n_splits=5, shuffle=True, random_state=seed)#交叉验证,五折交叉验证,打乱,随机种子
nn.Parameter
nn.Parameter的作用是:将一个不可训练的类型Tensor转换成可以训练的类型parameter,并且会向宿主模型注册该参数,成为一部分。即model.parameters()会包含这个parameter。从而,在参数优化的时候可以自动一起优化,这就不需要我们单独对这个参数进行优化啦。
xavier_uniform_
使用均匀分布 用值填充输入张量
结果张量将具有从 U ( − a , a ) \mathcal{U}(-a, a)U(−a,a) 采样的值,其中a为
xavier_uniform_(self.gammas)#参数初始化
w = torch.empty(3, 5)
print('w : \n', w)
torch.nn.init.xavier_uniform_(w, gain=torch.nn.init.calculate_gain('relu'))
print('w : \n', w)
"""
w :
tensor([[2.0745e+02, 8.0435e-43, 2.0750e+02, 8.0435e-43, 2.0745e+02],
[8.0435e-43, 2.0745e+02, 8.0435e-43, 2.0749e+02, 8.0435e-43],
[2.0749e+02, 8.0435e-43, 2.0746e+02, 8.0435e-43, 2.0746e+02]])
w :
tensor([[ 1.1688, 0.7073, 0.7911, 1.0184, -1.0733],
[-0.6422, -0.2361, 0.8469, 0.9965, 0.5175],
[ 1.0156, -0.4253, -0.8516, 0.2226, 0.8598]])
"""
LayerNorm()
self.layer_norm1 = LayerNorm(d_model)#标准化