tensor默认是不求梯度的,对应的requires_grad是False。

1.指定数值初始化

import torch

#创建一个tensor,其中shape为[2]
tensor=torch.Tensor([2,3])
print(tensor)#tensor([2., 3.]) #创建一个shape为[2,3]的tensor
tensor=torch.Tensor(2,3)#会随机数值,等价于这种方式 tensor=torch.Tensor(size=(2,3))
print(tensor)
'''tensor([[-3.6525e-01, 2.8671e-42, 0.0000e+00],
[ 0.0000e+00, 0.0000e+00, 0.0000e+00]])''' shape=(2,3)
zeros=torch.zeros(size=shape)#全部是0的tensor
print(zeros)
'''
tensor([[0., 0., 0.],
[0., 0., 0.]])
'''
zeros_like=torch.zeros_like(zeros)#返回跟zeros的tensor一个size的全零tensor
ones=torch.ones(shape)#全部是1的tensor
ones_like=torch.ones_like(ones)#返回跟ones的tensor一个size的全一tensor arange=torch.arange(start=0, end=5, step=1) #返回一个从start到end的序列,步进为1
print(arange) #tensor([0, 1, 2, 3, 4])

2.指定分布初始化

import torch
size=[2,3]
rand=torch.rand(size) #[0,1)内的均匀分布随机数
rand_like=torch.rand_like(rand)#返回跟rand的tensor一样size的0-1随机数
randn=torch.randn(size)#返回标准正太分布N(0,1)的随机数
print(randn)
'''
tensor([[-1.0543, 0.9566, -2.4818],
[-0.8597, -0.7725, -1.6121]])
'''

pytorch 创建tensor的几种方法的更多相关文章

  1. java创建线程的三种方法

    这里不会贴代码,只是将创建线程的三种方法做个笼统的介绍,再根据源码添加上自己的分析. 通过三种方法可以创建java线程: 1.继承Thread类. 2.实现Runnable接口. 3.实现Callab ...

  2. Solr创建Core的两种方法

    创建Core的两种方法: 第一种方法: 1.打开dos命令窗口,切换目录到${solr.home}\bin,然后输入:solr create -c corename之后回车: 2.打开solr安装文件 ...

  3. 进程和创建线程的两种方法(threading.Thread)

    进程 如QQ 要以一个整体的形式暴露给操作系统管理,里面包含对各种资源的调用,内存的管理, 网络接口的调用等,进程就是各种资源管理的集合 线程:是操作系统最小的调度单位,是一串指令的结合 进程 要操作 ...

  4. Java中创建数组的几种方法

    Java中创建数组的几种方法 public static void main(String[] args) { //创建数组的第一种方法 int[] arr=new int[6]; int intVa ...

  5. JS动态创建元素(两种方法)

    前言 创建元素有两种方法 1)将需要创建的元素,以字符串的形式拼接:找到父级元素,直接对父级元素的innnerHTML进行赋值. 2)使用Document.Element对象自带的一些函数,来实现动态 ...

  6. js如何动态创建表格(两种方法)

    js如何动态创建表格(两种方法) 一.总结 一句话总结: 1.方法一:写好创建表格的html代码,将之赋值给div的innerHTML. 2.方法二.直接用创建好的table元素的方法insertRo ...

  7. 《Java多线程面试题》系列-创建线程的三种方法及其区别

    1. 创建线程的三种方法及其区别 1.1 继承Thread类 首先,定义Thread类的子类并重写run()方法: package com.zwwhnly.springbootaction.javab ...

  8. Vue 创建组件的两种方法

    地址:https://blog.csdn.net/cofecode/article/details/74634301 创建组件的两种方法 1.全局注册 2.局部注册 var child=Vue.ext ...

  9. 创建JAVASCRIPT对象3种方法

    创建JAVASCRIPT对象3种方法 方法一:直接定义并创建对象实例 var obj = new Object();    //创建对象实例 //添加属性obj.num = 5;   //添加属性 o ...

随机推荐

  1. Linux部署NFS服务共享文件

    NFS(网络文件系统)用于linux共享文件 第1步:配置所需要的环境 使用两台Linux主机 主机名称 操作系统 IP地址 NFS Centos7 192.168.218.139 NFSa Cent ...

  2. mac电脑安装php7

    1.安装 homebrew https://www.jianshu.com/p/abea83253671 /usr/bin/ruby -e "$(curl -fsSL https://raw ...

  3. The 2017 ACM-ICPC Asia Beijing Regional Contest

    传送门 C - Graph 题意: 给出一个\(n\)个点\(m\)条边的无向图.现在有多组询问,每组询问给出区间\([l,r]\),问区间\([l,r]\)中有多少点对是连通的. 思路: 若考虑只有 ...

  4. 爬取沪深a股数据

    首先从东方财富网获取股票代码 再从网易财经下载股票历史数据 import requests import random from bs4 import BeautifulSoup as bs impo ...

  5. CF1253F Cheap Robot(神奇思路,图论,最短路,最小生成树/Kruskal 重构树/并查集)

    神仙题. 先考虑平方级别的暴力怎么做. 明显答案有单调性,先二分 \(c\). 先最短路预处理 \(dis_u\) 表示 \(u\) 到离它最近的充电站的距离(一开始把 \(1\) 到 \(k\) 全 ...

  6. subprocess模块(了解)

    目录 一.subprocess模块 一.subprocess模块 subprocess模块允许你去创建一个新的进程让其执行另外的程序,并与它进行通信,获取标准的输入.标准输出.标准错误以及返回码等.更 ...

  7. java(一)基础知识

    常见DOS命令: dir:列出当前目录下的文件以及文件夹 md:创建目录 rd: 删除目录 cd:进入指定目录 cd .. :返回上一级目录 cd \:返回根目录 del:删除文件 exit:退出do ...

  8. 前端优化,包括css,jss,img,cookie

    前端优化,来自某懒观看麦子学院视频的笔记. 尽可能减少HTTP的请求数 使用CDN 添加Expirs头,或者Cache-control Gzip组件压缩文件内容 将CSS放在页面上方 将脚本放到页面下 ...

  9. git分支合并创建切换

    1. 场景描述 介绍下Git最新内容合并到主干.从主干创建最新分支.idea下切换最新分支,能在2分钟内完成git合并.分支创建以及在idea中完成切换,希望能帮到一些朋友. 2. 解决方案 从以下三 ...

  10. pytorch_13-图像处理之skimage

    之前程序使用的是PIL(Python image library),今天遇到了另一种图像处理包--skimage. skimage即scikit-image,PIL和Pillow只提供最基础的数字图像 ...