nn_linear function

Linear module

Linear module

Applies a linear transformation to the incoming data: y = xA^T + b

nn_linear(in_features, out_features, bias = TRUE)

Arguments

  • in_features: size of each input sample
  • out_features: size of each output sample
  • bias: If set to FALSE, the layer will not learn an additive bias. Default: TRUE

Shape

  • Input: (N, *, H_in) where * means any number of additional dimensions and H_in = in_features.
  • Output: (N, *, H_out) where all but the last dimension are the same shape as the input and :math:H_out = out_features.

Attributes

  • weight: the learnable weights of the module of shape (out_features, in_features). The values are initialized from U(k,k)U(-\sqrt{k}, \sqrt{k})s, where k=1\mboxin_featuresk = \frac{1}{\mbox{in\_features}}
  • bias: the learnable bias of the module of shape (\mboxout_features)(\mbox{out\_features}). If bias is TRUE, the values are initialized from U(k,k)\mathcal{U}(-\sqrt{k}, \sqrt{k}) where k=1\mboxin_featuresk = \frac{1}{\mbox{in\_features}}

Examples

if (torch_is_installed()) { m <- nn_linear(20, 30) input <- torch_randn(128, 20) output <- m(input) print(output$size()) }
  • Maintainer: Daniel Falbel
  • License: MIT + file LICENSE
  • Last published: 2025-02-14