pytorch nn.Linear(对输入数据做线性变换:y=Ax+b)(全连接层?)
Posted Dontla
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了pytorch nn.Linear(对输入数据做线性变换:y=Ax+b)(全连接层?)相关的知识,希望对你有一定的参考价值。
Linear layers
class torch.nn.Linear(in_features, out_features, bias=True)
对输入数据做线性变换:y=Ax+b
参数:
- in_features - 每个输入样本的大小
- out_features - 每个输出样本的大小
- bias - 若设置为False,这层不会学习偏置。默认值:True
形状:
- 输入: (N,in_features)
- 输出: (N,out_features)
变量:
- weight -形状为(out_features x in_features)的模块中可学习的权值
- bias -形状为(out_features)的模块中可学习的偏置
例子:
import torch
from torch import autograd
from torch import nn
m = nn.Linear(20, 30) # 20个神经元变30个神经元?
input = autograd.Variable(torch.randn(128, 20))
output = m(input)
print(output.size()) # torch.Size([128, 30])
参考文章:https://pytorch-cn.readthedocs.io/zh/latest/package_references/torch-nn/#linear-layers
以上是关于pytorch nn.Linear(对输入数据做线性变换:y=Ax+b)(全连接层?)的主要内容,如果未能解决你的问题,请参考以下文章
关于对PyTorch中nn.Linear的官方API文档解读
如何在 Pytorch 的“nn.Sequential”中展平输入
pytorch 笔记:torch.nn.Linear() VS torch.nn.function.linear()