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()

PyTorch nn.Linear layer output nan 在格式良好的输入和权重上

nn.linear()

pytorch中的神经网络子模块(线性模块)——torch.nn.Linear