当前位置: 首页 > news >正文

向量矩阵范数pytorch

向量矩阵范数pytorch

    • 矩阵按照某个维度求和(dim就是shape数组的下标)
    • 1. torch
      • 1.1 Tensors一些常用函数
    • 一些安装问题
    • cd进不去不去目录
    • PyTorch里面_表示重写内容
  • 在默认情况下,PyTorch会累积梯度,我们需要清除之前的值

范数是向量或矩阵的长度
矩阵的长度 模
二范数是什么
二范数(L2 norm)是一种常见的数学概念,它表示一个向量的模长。在数学中,一个向量的二范数定义为其元素平方和的平方根,即:

矩阵按照某个维度求和(dim就是shape数组的下标)

求和不降维,就keepdims=True
降维求和
axis的值对应着shape的下标
在这里插入图片描述

1. torch

1.1 Tensors一些常用函数

1.1.2 Indexing, Slicing, Joining, Mutating Ops

  1. concat():和cat()功能相同
  2. cat(tensors, dim=0, *, out=None)串接tensors(一串Tensor,非空Tensor在非dim维度必须形状相同),返回结果
  3. reshape(input, shape)
  4. squeeze(input, dim=None, *, out=None)
    去掉input(Tensor)中长度为1的维度,返回这个Tensor。如果有dim就只对指定维度进行squeeze操作。
    返回值与input共享储存空间。

squeeze()函数的功能是维度压缩。返回一个tensor(张量),其中 input 中大小为1的所有维都已删除。

举个例子:如果 input 的形状为 (A×1×B×C×1×D),那么返回的tensor的形状则为 (A×B×C×D)

当给定 dim 时,那么只在给定的维度(dimension)上进行压缩操作。
举个例子:如果 input 的形状为 (A×1×B),squeeze(input, 0)后,返回的tensor不变;squeeze(input, 1)后,返回的tensor将被压缩为 (A×B)

原文链接:https://blog.csdn.net/qq_40305043/article/details/107767652

import torchx = torch.zeros(2, 1, 2, 1, 2)
print(x.size()) #torch.Size([2, 1, 2, 1, 2])
y = torch.squeeze(x)
print(y.size())  # torch.Size([2, 2, 2])
y = torch.squeeze(x, 0)
print(y.size())# torch.Size([2, 1, 2, 1, 2])
y = torch.squeeze(x, 1)  # torch.Size([2, 2, 1, 2])
print(y.size())
y = torch.squeeze(x, 3)  # torch.Size([2, 1, 2, 2])
print(y.size())
y = torch.squeeze(x, [1, 3])  # torch.Size([2, 2, 2])
print(y.size())
  1. unsqueeze(input, dim)
    在input指定维度插入一个长度为1的维度,返回Tensor
import torchx = torch.tensor([1, 2, 3, 4])  #
y = torch.unsqueeze(x, 0)  # 在第0维扩展,第0维为1
z = torch.unsqueeze(x, 1)  # 在第1维扩展,第1维为1
print(x, x.shape)
print(y, y.shape)
print(z, z.shape)
tensor([1, 2, 3, 4]) torch.Size([4])
tensor([[1, 2, 3, 4]]) torch.Size([1, 4])
tensor([[1],[2],[3],[4]]) torch.Size([4, 1])
  1. t(input)
    零维和一维input不变,二维input转置(等如transpose(input, 0, 1)),返回结果
    在这里插入图片描述
  2. transpose(input, dim0, dim1)
    返回input转置的Tensor,dim0和dim1交换。
    返回值与input共享储存空间。
>>> x = torch.randn(2, 3)
>>> x
tensor([[ 1.0028, -0.9893,  0.5809],[-0.1669,  0.7299,  0.4942]])
>>> torch.transpose(x, 0, 1)
tensor([[ 1.0028, -0.1669],[-0.9893,  0.7299],[ 0.5809,  0.4942]])

一些安装问题

pip install d2l==0.17.5
安装不了

cd进不去不去目录

安装d2l的时候,先下载cd到下载到的目录进行安装,发现经不去目录
cd /d 命令与普通的 cd 命令不同,它允许你不仅改变目录,还可以改变驱动器

cd /d D:\python\Anacond_Folder\envs\d2l
pip install d2l-0.15.1-py3-none-any.whl

%matplotlib inline 是 Jupyter Notebook 或 JupyterLab 中的一个魔术命令,用于在 Notebook 中显示 matplotlib 图形的输出。

import random 导入了 Python 的 random 模块,用于生成随机数。

import torch 导入了 PyTorch 库,用于深度学习任务。

from d2l import torch as d2l 导入了 d2l 模块,并将其重命名为 d2l。d2l 是 Dive into Deep Learning (D2L) 图书的一个开源教学库,用于深度学习的代码实现和示例

PyTorch里面_表示重写内容

在默认情况下,PyTorch会累积梯度,我们需要清除之前的值

x.grad.zero_()
y = x.sum()
y.backward()
x.grad

很少对向量函数求导,求导结果理论上来说是一个矩阵

实现某些网络,把参数固定住的时候比较有用

http://www.lryc.cn/news/233811.html

相关文章:

  • NVIDIA Jetson OTA升级
  • 【算法】算法题-20231118
  • 某60区块链安全之整数溢出漏洞实战学习记录
  • 图数据库Neo4J 中文分词查询及全文检索(建立全文索引)
  • element-china-area-data使用问题
  • 248: vue+openlayers 以静态图片作为底图,并在上面绘制矢量多边形
  • thinkphp6(TP6)访问控制器报404(Nginx)
  • 腾讯云轻量应用服务器使用场景列举说明
  • 【漏洞复现】IP-guard WebServer 远程命令执行
  • 23111704[含文档+PPT+源码等]计算机毕业设计springboot办公管理系统oa人力人事办公
  • 在Linux系统上检测GPU显存和使用情况
  • 内网穿透 cpolar
  • ai剪辑矩阵系统源码+无人直播系统源码技术开发
  • 2311rust,到38版本更新
  • 腾讯云4核8G服务器配置价格表,轻量和CVM标准型S5实例
  • Android 屏幕适配
  • Python使用Mechanize库完成自动化爬虫程序
  • 【Shell脚本入门】
  • redis大全
  • linux rsyslog日志采集格式设定五
  • uni-app:如何配置uni.request请求的超时响应时间(全局+局部)
  • AI中文版怎么用,版本分享,GPT官网入口
  • mysql数据库通过binlog恢复数据
  • 【unity插件】UGUI的粒子效果(UI粒子)—— Particle Effect For UGUI (UI Particle)
  • 高教社杯数模竞赛特辑论文篇-2023年C题:基于历史数据的蔬菜类商品定价与补货决策模型(附获奖论文及R语言和Python代码实现)(中)
  • element-ui plus 文件上传组件,设置单选,并支持替换和回显
  • ZYNQ7000---FLASH读写
  • SpringMVC log4j1升级log4j2
  • MATLAB算法实战应用案例精讲-【图像处理】机器视觉(基础篇)(十一)
  • UE的PlayerController方法Convert Mouse Location To World Space