这是官方给出的文档,需要注意的是,虽然在神经网络中,我们一般输入都是二维的tensor矩阵(batch,input_size),但其实输入的维度是不做限制的。如果是三维的输入,会将前两维的数据先乘一起,然后在做计算,实际上还是单层神经网络的计算。个人理解,这个函数就是改变最后一维,也就是数据的特征维度,通过调整output_size的尺寸来扩张或者是收缩特征。

import torch.nn as nn
import torch
import numpy as npX_2dim=np.array([[1,2,3,4],[2,3,45,6]]) #二维数组(2,4)
X_3dim=np.array([[[1,2,3,4],[2,3,4,6],[3,4,5,5]],[[1,1,5,6],[0,0,6,5],[3,3,5,7]]]) # 三维数组(2,3,4)#转成tensor的形式,因为Linear要求输入是float类型,因此还需要转成float32
X2_tensor=torch.from_numpy(X_2dim.astype(np.float32))
X3_tensor=torch.from_numpy(X_3dim.astype(np.float32))#用来改变最后数组最后一维的维度
#用来缩小或者扩展特征维度
emdeding=nn.Linear(4,3)
Y2=emdeding(X2_tensor)
Y3=emdeding(X3_tensor)#输出
print(Y2)
print(Y3)#Y2
tensor([[ 0.6468,  0.6430,  0.4253],[-2.9180, -3.3393,  6.3075]], grad_fn=<AddmmBackward>)#Y3
tensor([[[0.6468, 0.6430, 0.4253],[1.0562, 0.8781, 0.6216],[0.7615, 0.3500, 0.7439]],[[1.1430, 0.6462, 0.8132],[0.7745, 0.4598, 0.9190],[1.4516, 0.5589, 0.8545]]], grad_fn=<AddBackward0>)

nn.Linear()函数详解及代码使用相关推荐

  1. nn.Linear()函数详解

    nn.Linear()函数详解 torch.nn.Linear(in_features, out_features, bias=True, device=None, dtype=None)[原文地址] ...

  2. pytorch之torch.nn.Conv2d()函数详解

    文章目录 一.官方文档介绍 二.torch.nn.Conv2d()函数详解 参数详解 参数dilation--扩张卷积(也叫空洞卷积) 参数groups--分组卷积 三.代码实例 一.官方文档介绍 官 ...

  3. 【PyTorch】nn.Conv2d函数详解

    文章目录 1. 函数语法格式 2. 参数解释 3. 尺寸关系 4. 使用案例 5. nn.functional.conv2d 1. 函数语法格式 CONV2D官方链接 torch.nn.Conv2d( ...

  4. tf.nn.conv2d()函数详解(strides与padding的关系)

    tf.nn.conv2d()是TensorFlow中用于创建卷积层的函数,这个函数的调用格式如下: def conv2d(input: Any,filter: Any,strides: Any,pad ...

  5. tf.nn.bidirectional_dynamic_rnn()函数详解

    转载自:https://blog.csdn.net/zhylhy520/article/details/86364789 首先我们了解一下函数的参数 bidirectional_dynamic_rnn ...

  6. nn.Flatten()函数详解及示例

    torch.nn.Flatten(start_dim=1, end_dim=- 1) 作用:将连续的维度范围展平为张量. 经常在nn.Sequential()中出现,一般写在某个神经网络模型之后,用于 ...

  7. linux mmap 函数详解,mmap函数详解与代码实操

    icon1.jpg mmap 函数是 unix/linux下的系统调用. 当存在客户-服务程序中复制文件时候,其数据流如下,要经历四次数据复制,开销很大. image.png 果采用共享内存的方式,那 ...

  8. nn.Linear() 函数可二维或三维输入

    nn.Linear PyTorch的nn.Linear()用于设置网络中的全连接层. 常用于处理二维信息,全连接层的输入与输出一般都设置为二维张量,形状通常为[batch_size, size],不同 ...

  9. Pandas获取SQL数据库read_sql()函数及参数一文详解+实例代码

    前言 Pandas常用作数据分析工具库以及利用其自带的DataFrame数据类型做一些灵活的数据转换.计算.运算等复杂操作,但都是建立在我们获取数据源的数据之后.因此作为读取数据源信息的接口函数必然拥 ...

最新文章

  1. (七)日志采集工具sleuth--分布式链路跟踪(zipkin)
  2. ue4加载本地版本_【虚幻4】创建本地数据库
  3. 武科大计算机网络课程设计,【川大】计算机网络课程设计9013,奥鹏2017
  4. 0-2岁的app开发人员必读,Android开发APP前的准备事项
  5. python的代码在哪写_python代码在哪里编写
  6. NeurIPS2021 港大腾讯AI Lab牛津提出:CARE,让CNN和Transformer能在对比学习中“互帮互助”!...
  7. Manjaro下显卡相关的命令搜集
  8. mysql 导出数据字典_python 查询 MySQL 数据库并返回字典集
  9. 20190914:(leetcode习题)验证二叉搜索树
  10. python 制作聊天程序-python实现点对点聊天程序
  11. hbase的快速下载
  12. Telink TLSR9213 使用JTag方式不能正确连接,烧写失败的问题
  13. 抖音网红穿的服装品牌,那些爆款女装号都是怎么拍的呢?
  14. iphone手机html视频播放,iphone5视频格式 传到苹果手机上的视频怎么才能看
  15. 80和443端口的区别
  16. mbit职业测试软件,MBTI职业性格测试(自动计算版)-
  17. vue 播放器视频插件 之 vue-video-player 铺满全屏自动播放
  18. TechnoAP公司发布“脉冲形状鉴别”选件
  19. CSS3垂直水平的居中的几种方法
  20. 打开网络邻居有很多计算机,教你网上邻居无法看到其它共享电脑的解决方法

热门文章

  1. 【redis】发布与订阅
  2. 尚硅谷JVM下篇:性能监控与调优篇_03_JVM监控及诊断工具-GUI篇
  3. 使用Vue_cli搭建SPA项目
  4. 一文搞懂 CSS3 中的渐变到底怎么玩
  5. 如何建立起一套有效的APP监控体系
  6. ens天空盒_这句话是什么意思啊
  7. 如何设置VS的唯美背景
  8. 史上最强最逼真的游戏
  9. 华为python673集_实现Redis Cluster并实现Python链接集群
  10. bezier.CSS_SVG_canvas画_贝兹曲线