Pytorch基础(七)——线性层(全连接层)

一、概念

在神经网络中,我们通常用线性层来完成两层神经元间的线性变换。
在这里插入图片描述
按照官网的解释,Linear.weight也即A, 我们可以称之为权重矩阵,对其转置后乘以输入数据(一般都是一维张量),加上Linear.bias即b偏置。

二、Pytorch示例

import torch
from torch import nn

input1 = torch.tensor([[10., 20., 30.]])
linear_layer = nn.Linear(3, 5)
linear_layer .weight.data = torch.tensor([[1., 1., 1.],
                                          [2., 2., 2.],
                                          [3., 3., 3.],
                                          [4., 4., 4.],
                                          [5., 5., 5.]])

linear_layer .bias.data = torch.tensor(0.6)
output = linear_layer(input1)
print(input1)
print(output, output.shape)

输出

tensor([[10., 20., 30.]])
tensor([[ 60.6000, 120.6000, 180.6000, 240.6000, 300.6000]],
       grad_fn=) torch.Size([1, 5])

你可能感兴趣的:(pytorch,pytorch,深度学习,机器学习)