基础详解-part1


import torch

x=torch.arange(12)
x
x.shape
x.numel() #数组中元素的总数
# 修改形状
x.reshape(3,4)
torch.zeros((2,3,4))
# 两层,三行,四列
print(torch.tensor([[2,1,4,3],[1,2,3,4],[4,3,2,1]]).shape)#二维 # 两个框表示二维,三个表示三维
print(torch.tensor([[[2,1,4,3],[1,2,3,4],[4,3,2,1]]]).shape)#三维

标准算术运算

x=torch.tensor([1.0,2,4,8])
y=torch.tensor([2,2,2,2])
print(x+y)
print(x-y)
print(x*y)
print(x/y)
print(x**y) #x的y阶
print(torch.exp(x)) #计算输入张量x中每个元素的指数值;通俗讲是e的x次方(e大约等于2.71828) # 多个张量连接
x=torch.arange(12,dtype=torch.float32).reshape((3,4))
y=torch.tensor([[2.0,1,4,3],[1,2,3,4],[4,3,2,1]])
torch.cat((x,y),dim=0),torch.cat((x,y),dim=1)
#torch.cat((x, y), dim=0):在第0维(行)上拼接 x 和 y。这将创建一个6行4列的张量,其中前3行是 x,后3行是 y。
# torch.cat((x, y), dim=1):在第1维(列)上拼接 x 和 y。这将创建一个3行8列的张量,其中前4列是 x,后4列是 y。 x.sum()

广播机制:广播允许在某些情况下,即使数组或张量的形状不完全相同,也可以进行元素级的运算

a=torch.arange(3).reshape((3,1))
b=torch.arange(2).reshape((1,2))
print(a,b)
print(a+b) x[-1],x[1:3]
x[1,2]=9
x
x[0:2,:]=12
x

内存问题

#id()类似于指针
before=id(y)
y=y+x
id(y)==before
z=torch.zeros_like(y)
print('id(z):',id(z))
z[:]=x+y
print('id(z):',id(z))
before=id(x)
x+=y
id(x)==before
numpy
a=x.numpy()
b=torch.tensor(a)
type(a),type(b)
# 将大小为1的张量转换为python标量
a=torch.tensor([3.5])
a,a.item(),float(a),int(a)
# a.item():将张量中的单个元素转换为Python的标量值

动手学深度学习-python基础知识介绍part1的更多相关文章

  1. 对比《动手学深度学习》 PDF代码+《神经网络与深度学习 》PDF

    随着AlphaGo与李世石大战的落幕,人工智能成为话题焦点.AlphaGo背后的工作原理"深度学习"也跳入大众的视野.什么是深度学习,什么是神经网络,为何一段程序在精密的围棋大赛中 ...

  2. 小白学习之pytorch框架(2)-动手学深度学习(begin-random.shuffle()、torch.index_select()、nn.Module、nn.Sequential())

    在这向大家推荐一本书-花书-动手学深度学习pytorch版,原书用的深度学习框架是MXNet,这个框架经过Gluon重新再封装,使用风格非常接近pytorch,但是由于pytorch越来越火,个人又比 ...

  3. 【动手学深度学习】Jupyter notebook中 import mxnet出错

    问题描述 打开d2l-zh目录,使用jupyter notebook打开文件运行,import mxnet 出现无法导入mxnet模块的问题, 但是命令行运行是可以导入mxnet模块的. 原因: 激活 ...

  4. 动手学深度学习9-多层感知机pytorch

    多层感知机 隐藏层 激活函数 小结 多层感知机 之前已经介绍过了线性回归和softmax回归在内的单层神经网络,然后深度学习主要学习多层模型,后续将以多层感知机(multilayer percetro ...

  5. 动手学深度学习1- pytorch初学

    pytorch 初学 Tensors 创建空的tensor 创建随机的一个随机数矩阵 创建0元素的矩阵 直接从已经数据创建tensor 创建新的矩阵 计算操作 加法操作 转化形状 tensor 与nu ...

  6. 《动手学深度学习》系列笔记—— 1.2 Softmax回归与分类模型

    目录 softmax的基本概念 交叉熵损失函数 模型训练和预测 获取Fashion-MNIST训练集和读取数据 get dataset softmax从零开始的实现 获取训练集数据和测试集数据 模型参 ...

  7. 动手学深度学习14- pytorch Dropout 实现与原理

    方法 从零开始实现 定义模型参数 网络 评估函数 优化方法 定义损失函数 数据提取与训练评估 pytorch简洁实现 小结 针对深度学习中的过拟合问题,通常使用丢弃法(dropout),丢弃法有很多的 ...

  8. 动手学深度学习6-认识Fashion_MNIST图像数据集

    获取数据集 读取小批量样本 小结 本节将使用torchvision包,它是服务于pytorch深度学习框架的,主要用来构建计算机视觉模型. torchvision主要由以下几个部分构成: torchv ...

  9. 【零基础学深度学习】动手学深度学习2.0--tensorboard可视化工具简单使用

    1 引言 老师让我将线性回归训练得出的loss值进行可视化,于是我使用了tensorboard将其应用到Pytorch中,用于Pytorch的可视化. 2 环境安装 本教程代码环境依赖: python ...

  10. mxnet 动手学深度学习

    http://zh.gluon.ai/chapter_crashcourse/introduction.html 强化学习(Reinforcement Learning) 如果你真的有兴趣用机器学习开 ...

随机推荐

  1. HEUCPC2021

    stral Reflection 在 \([1,n]\)上支持如下操作: 操作一:学习一个新的技能--清除 \([l,r]\)内所有的陨石 操作二:给定一个点集\(k\)代表陨石出现在这些位置,询问最 ...

  2. CSS3 transform转换

    1.先说说css的坐标系: x轴的正方向就是水平向右的方向 y轴的正方向就是垂直向下的方向 z轴的正方向就是屏幕到用户的方向 2.位移 说明:位移是转换属性中的一个值,包含2d与3d 属性值 说明 t ...

  3. C#/.NET/.NET Core技术前沿周刊 | 第 17 期(2024年12.09-12.15)

    前言 C#/.NET/.NET Core技术前沿周刊,你的每周技术指南针!记录.追踪C#/.NET/.NET Core领域.生态的每周最新.最实用.最有价值的技术文章.社区动态.优质项目和学习资源等. ...

  4. IOS CABasicAnimation实现旋转动画

    IOS CABasicAnimation实现旋转动画 定义一个CABasicAnimation lazy var rotateAnimation: CABasicAnimation = { let a ...

  5. 安卓导出已安装app的apk

    安卓导出已安装应用APK 有时候想看看别人的APK里面的资源文件或者是逆向,首先就得先搞到APK文件 两种方法获取手机上已安装应用的APK文件 通过adb命令 首先把目标手机连接上电脑 在终端输入 a ...

  6. Qt编写安防视频监控系统65-子模块9数据调试

    一.前言 数据调试模块,用于显示通信串口的数据,自定义不同颜色显示,可以勾选过滤某个串口进行数据查看,也可以选择所有数据,还可以勾选暂停显示复选框用来暂停打印显示信息.数据调试可以很方便的查看串口收发 ...

  7. MySQL版本是8.0.3,数据库连接字符串都检查无误,驱动类名加不加cj都试过了,URL是否加时区、是否加useSSL都试过了,都无法正常登录进去!

    我在运行library这个web程序登录时(我的MySQL版本是8.0.3,数据库连接字符串都检查无误,驱动类名加不加cj都试过了,URL是否加时区.是否加useSSL都试过了,都无法正常登录进去!) ...

  8. 基于开源IM即时通讯框架MobileIMSDK:RainbowChat-iOS端v6.1版已发布

    关于MobileIMSDK MobileIMSDK 是一套专门为移动端开发的开源IM即时通讯框架,超轻量级.高度提炼,一套API优雅支持UDP .TCP .WebSocket 三种协议,支持iOS.A ...

  9. Python 抽象基类 ABC :从实践到优雅

    今天我们来聊聊 Python 中的抽象基类(Abstract Base Class,简称 ABC).虽然这个概念在 Python 中已经存在很久了,但在日常开发中,很多人可能用得并不多,或者用得不够优 ...

  10. 监听sessionStorage中值的变化

    应用场景:将登录接口所返回的用户信息存入sessionStorage,在其他地方需要使用到用户信息,但不知道什么时候接口请求完,此时可以监听sessionStorage中值的变化. 应用:Event自 ...