【代码pycharm】动手学深度学习v2-05 线性代数

课程链接-05 线性代数
可以先看完特定轴求和再去看p2

import torch
x=torch.tensor([3.0])
y=torch.tensor([2.0])
#标量
print('1.标量只有一个元素:\n',x+y,x*y,x/y,x**y)
x2=torch.arange(4)
#向量
print('2.向量视为标量值组成的列表:\n',x2)
print('3.访问张量元素,长度,形状:\n',x2[3],len(x2),x2.shape)
# 矩阵
A=torch.arange(20).reshape(5,4)
print('4.创建矩阵:\n',A)
print('5.矩阵的转置:\n',A.T)
#矩阵计算
A2=torch.arange(20,dtype=torch.float32).reshape(5,4)
B2=A2.clone()# 通过分配新内存,将A的一个副本分配给B
print('6.矩阵相加\n',A2+B2)# 矩阵相加
print('7.矩阵相乘:\n',A2*B2)# 矩阵相乘
#矩阵和标量计算
a3=2
X3=torch.arange(24).reshape(2,3,4)
print('8.标量+矩阵:\n',a3+X3)
print('9.标量*矩阵:\n',a3*X3)
#矩阵求和
A3=torch.arange(40).reshape(2,5,4)
print('10.矩阵求和:\n',A3,A3.sum())A3_sum_axis0=A3.sum(axis=0)# 沿着 axis0 的方向进行求和
print('11.沿着 axis0 的方向进行求和\n',A3_sum_axis0,A3_sum_axis0.shape)
A3_sum_axis1=A3.sum(axis=1)# 沿着axis1的方向进行求和
print('12.沿着 axis1 的方向进行求和\n',A3_sum_axis1,A3_sum_axis1.shape)
A3_sum_axis01=A3.sum(axis=[0,1])# 沿着两个方向求和
print('13.沿着两个方向进行求和\n',A3_sum_axis01,A3_sum_axis01.shape)#求均值
A4=torch.arange(20,dtype=torch.float32).reshape(5,4)
print('14.求均值\n',A4.mean(dtype=float))
print('15.求均值\n',A4.mean(axis=0,dtype=float))#保持维度不变,方便使用广播机制
sum_A4=A.sum(axis=1,keepdims=True)
print('16.保持维度不变\n',sum_A4)
print('17.某个轴的累积总和\n',A4.cumsum(axis=0))#向量的点积
X5=torch.arange(4,dtype=torch.float32)
Y5=torch.ones(4,dtype=torch.float32)
print('18.向量的点积\n',torch.dot(X5,Y5))#矩阵和向量的乘积
print('19.矩阵和向量的乘积\n',torch.mv(A4,X5))
#矩阵和矩阵的乘积
B=torch.ones(4,3)
print('20.矩阵和矩阵的乘积\n',torch.mm(A4,B))#向量范数
# L2范数:所有元素平方求和开根号
u=torch.tensor([3.0,-4.0])
print('21.L2范数\n',torch.norm(u))
# L1范数:每个元素的绝对值求和
print('22.L1范数\n',torch.abs(u).sum())
#矩阵范数
# F范数:每个矩阵元素的平方求和开根号
k=torch.ones(4,9)
print('23.F范数\n',torch.norm(k))

运行结果
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.rhkb.cn/news/473896.html

如若内容造成侵权/违法违规/事实不符,请联系长河编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

SpringBoot源码解析(四):解析应用参数args

SpringBoot源码系列文章 SpringBoot源码解析(一):SpringApplication构造方法 SpringBoot源码解析(二):引导上下文DefaultBootstrapContext SpringBoot源码解析(三):启动开始阶段 SpringBoot源码解析(四):解析应用参数args 目录…

ZSTD 内存泄漏问题

优质博文:IT-BLOG-CN Zstandard(简称zstd)是一种无损压缩算法,由Facebook开发并开源。它旨在提供高压缩比和高解压速度的平衡,适用于多种数据压缩需求。 特点 【1】高压缩比: zstd能够在保持较高压缩比的…

前端:HTML (学习笔记)【1】

一,网络编程的三大基石 1,URL (1)url —— 统一资源定位符: 网址——整个互联网中可以唯一且准确的确定一个资源的位置。 【项目外】 网址——https://www.baidu.com/ …

【C++动态规划】3148. 矩阵中的最大得分|1819

本文涉及知识点 C动态规划 LeetCode 3148. 矩阵中的最大得分 给你一个由 正整数 组成、大小为 m x n 的矩阵 grid。你可以从矩阵中的任一单元格移动到另一个位于正下方或正右侧的任意单元格(不必相邻)。从值为 c1 的单元格移动到值为 c2 的单元格的得…

STM32完全学习——使用标准库点亮LED

一、使用标准库建立工程 (1)首先我们在ST的网站上面,下载标准库 (2)将标准外设库加入到项目中 我们一般只会使用到红色标注的那个文件夹,我们一般也只会将这个文件夹导入到工程里面,其他的还有…

解决微信小程序自定义tabbar点击两次才能跳转

在每个页面的js文件下加上此代码,selected属性代表每一个页面的下标,在不同的js文件下,要对应不同的selected值 代码: onShow() { // 确保 TabBar 存在并且设置选中项 if (this.getTabBar && this.getTabBar()) { this.…

学习threejs,使用AnimationMixer实现变形动画

👨‍⚕️ 主页: gis分享者 👨‍⚕️ 感谢各位大佬 点赞👍 收藏⭐ 留言📝 加关注✅! 👨‍⚕️ 收录于专栏:threejs gis工程师 文章目录 一、🍀前言1.1 ☘️THREE.AnimationMixer 动画…

Solana应用开发常见技术栈

编程语言 Rust Rust是Solana开发中非常重要的编程语言。它具有高性能、内存安全的特点。在Solana智能合约开发中,Rust可以用于编写高效的合约代码。例如,Rust的所有权系统可以帮助开发者避免常见的内存错误,如悬空指针和数据竞争。通过合理利…

【汇编语言】数据处理的两个基本问题(二) —— 解密汇编语言:数据长度与寻址方式的综合应用

文章目录 前言1. 指令要处理的数据有多长?1.1 通过寄存器指明数据的尺寸1.1.1 字操作1.1.2 字节操作 1.2 用操作符X ptr指明内存单元的长度1.2.1 访问字单元1.2.2 访问字节单元1.2.3 为什么要用操作符X ptr指明 1.3 其他方法 2. 寻址方式的综合应用2.1 问题背景&…

【算法】【优选算法】前缀和(下)

目录 一、560.和为K的⼦数组1.1 前缀和1.2 暴力枚举 二、974.和可被K整除的⼦数组2.1 前缀和2.2 暴力枚举 三、525.连续数组3.1 前缀和3.2 暴力枚举 四、1314.矩阵区域和4.1 前缀和4.2 暴力枚举 一、560.和为K的⼦数组 题目链接:560.和为K的⼦数组 题目描述&#x…

分布式cap理论学习

【分布式】CAP理论详解 一致性(Consistency) 代表数据在任何时刻,任何分布式节点,看到的都是符合预期的。有点类似于幂等,无论访问哪个节点,得到结果数据一致。 可用性(Availability) 强调的是任意时刻一定能读到数据&#xff…

主机型入侵检测系统(HIDS)——Elkeid在Centos7的保姆级安装部署教程

一、HIDS简介 主机型入侵检测系统(Host-based Intrusion Detection System 简称:HIDS);HIDS作为主机的监视器和分析器,主要是专注于主机系统内部(监视系统全部或部分的动态的行为以及整个系统的状态)。 HIDS使用传统的C/S架构,只需要在监测端安装agent即可,且使用用户…

Python蓝桥杯刷题1

1.确定字符串是否包含唯一字符 题解:调用count函数计算每一个字符出现的次数,如果不等于1就输出no,并且结束循环,如果等于1就一直循环直到计算到最后一个字符,若最后一个字符也满足条件,则输出yes import…

【ARM】MDK在debug模式下的Registers窗口包含哪些内容

【更多软件使用问题请点击亿道电子官方网站】 1、 文档目标 解决客户对于Debug模式下,对于Registers窗口包含的内容了解。 2、 问题场景 Registers窗口是在进入到debug模式下后,就会出现一个窗口。窗口中包含了很多寄存器信息。但是对于具体内容不了解…

河道无人机雷达测流监测系统由哪几部分组成?

在现代水利管理中,河道无人机雷达监测系统正逐渐成为一种重要的工具,为河道的安全和管理提供了强大的技术支持。那么,这个先进的监测系统究竟由哪几部分组成呢? 河道无人机雷达监测系统工作原理 雷达传感器通过发射电磁波或激光束…

浅谈数据仓库的架构及其演变

一、数据仓库分层架构 数据仓库分层一般分为三层,分别为数据仓库ODS层(数据进出口贴源层)、CDM层(数据公共层)和ADS层(数据应用层)。 1. ODS层:这是数据仓库的最底层,直接…

event_base

build default event_base event_base_new()函数分配并且返回一个新的具有默认设置的event_base。函数会检测环境变量,返回一个到event_base的指针。如果发生错误,则返回NULL。选择各种方法时,函数会选择OS支持的最快方法。 event_base_new…

PyTorch使用教程-深度学习框架

PyTorch使用教程-深度学习框架 1. PyTorch简介 1.1-什么是PyTorch ​ PyTorch是一个广泛使用的开源机器学习框架,特别适合深度学习的应用。它以其动态计算图而闻名,允许在运行时修改模型,使得实验和调试更加灵活。PyTorch提供了强大的GPU加…

数据科学与SQL:如何计算排列熵?| 基于SQL实现

目录 0 引言 1 排列熵的计算原理 2 数据准备 3 问题分析 4 小结 0 引言 把“熵”应用在系统论中的信息管理方法称为熵方法。熵越大,说明系统越混乱,携带的信息越少;熵越小,说明系统越有序,携带的信息越多。在传感…

28.<Spring博客系统⑤(部署的整个过程(CentOS))>

引入依赖 Spring-boot-maven-plugin 用maven进行打包的时候必须用到这个插件。看看自己pom.xml中有没有这个插件 并且看看配置正确不正常。 注&#xff1a;我们这个项目打的jar包在30MB左右。 <plugin><groupId>org.springframework.boot</groupId><artif…