NumPy:同时计算许多小矩阵的点积

2023-12-07

我有一长串 3×3 矩阵,例如,

import numpy as np

A = np.random.rand(25, 3, 3)

对于每个小矩阵,我想执行一个外积dot(a, a.T)。列表理解

import numpy as np

B = np.array([
    np.dot(a, a.T) for a in A
    ])

有效,但表现不佳。一个可能的改进可能是做one big dot产品,但我在设置时遇到问题A正确地为它。

有什么提示吗?


您可以获得转置矩阵列表:A.swapaxes(1, 2),以及您想要的产品列表A @ A.swapaxes(1, 2).

import numpy as np

A = np.random.rand(25, 3, 3)

B = np.array([
    np.dot(a, a.T) for a in A
    ])

C = A @ A.swapaxes(1, 2)

(B==C).all()     # => True

The @操作员只是语法糖np.matmul,关于其中文档说“如果任一参数为 N 维(N > 2),则将其视为驻留在最后两个索引中的矩阵堆栈并相应地进行广播。"

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

NumPy:同时计算许多小矩阵的点积 的相关文章

  • 特定代码行的类似装饰器的语法

    链接主题 但不重复 装饰器对代码的特定行而不是整个方法进行计时 https stackoverflow com questions 30433910 decorator to time specific lines of the code
  • Python daysBetweenDate

    我想我可能有一个无限循环 因为每当我运行代码时 我都会收到一条错误消息 它说 程序因使用 13 CPU 秒而关闭 整个代码 应该以日期作为输入并输出第二天 此代码假设所有月份都是 30 天 除了daysBetweenDates功能正常 其他
  • 在 JavaScript 中使用随机数创建长度为 n 的数组

    跟进这个答案 https stackoverflow com a 34693778 1525840为了创建指定长度的数组 我执行了以下命令以获得相应的结果 但填充了随机数 而不是零 var randoms Array 4 fill Math
  • 使用 Pandas 解析时避免 Excel 的科学记数法舍入

    我有一个自动生成的 Excel 文件 其中偶尔包含非常大的数字 例如135061808695 在 Excel 文件中 当您单击单元格时 它会显示完整的数字135061808695然而 在视觉上 使用自动 常规 格式 数字显示为1 35063
  • OpenCV Python 和 SIFT 功能

    我知道有很多关于Python and OpenCV但我没有找到有关这个特殊主题的帮助 我想提取SIFT关键点来自 python OpenCV 中的图像 我最近安装了 OpenCV 2 3 可以访问 SURF 和 MSER 但不能访问 SIF
  • 从多维数组中删除多个值

    我有一个来自 WordPress 的数组get posts 功能 posts array 15 0 gt object WP Post 285 24 ID gt int 253 post author gt string 1 1 post
  • 如何将字符串列表转换为正确的 Python 类型?

    给定一个 python 字符串列表 如何自动将它们转换为正确的类型 意思是 如果我有 hello 3 3 64 1 我希望将其转换为列表 hello 3 3 64 1 其中第一个元素是字符串 第二个元素是 int 第三个元素是 float
  • 与 Array 相比,使用 Ruby NArray 有哪些优点?

    我刚刚遇到了 Ruby 的 NArray 库 请原谅我在问这个问题时的无知 与标准 Ruby Array 实现相比 使用 NArray 库有哪些优点 我已经看到 NArray 是面向数值计算的 但是看看 API 看起来好像只有一些针对数值的
  • 为什么 import numpy 不会自动包含 matlib

    我正在尝试使用水平重复 numpy array xa numpy matlib repmat x 1 3 但是 直接输入此内容会导致错误 我必须添加import numpy matlib为了a numpy matlib repmat x 1
  • 正则表达式 - Python - 删除前导空格

    我使用正则表达式在文本文件中搜索 产品 一词 然后 我使用该搜索的起点和终点来查看该列并提取整数 有些实例 A 列 有我不想要的前导空格 我只想将数字 如 B 列中的数字 打印到文件中 没有前导空格 正则表达式中的正则表达式 有条件的 pr
  • 为什么数组不可赋值? [复制]

    这个问题在这里已经有答案了 据我所知 C 标准禁止使用数组作为可修改的左值 即在赋值的左侧 int lhs 4 rhs 4 0 1 2 3 lhs rhs illegal 现在 我一直想知道为什么会这样 我可以看到上面的语句 以及写入数组的
  • 如何在Python中比较枚举?

    从 Python 3 4 开始 Enum类存在 我正在编写一个程序 其中一些常量具有特定的顺序 我想知道哪种方式最适合比较它们 class Information Enum ValueOnly 0 FirstDerivative 1 Sec
  • 在Python中寻找坐标系中某些点之间的最短路径

    我编写了一个代码 可以在坐标系中的特定宽度和长度范围内生成所需数量的点 它计算并列出我使用欧几里德方法生成的这些点的距离矩阵 我的代码在这里 import pandas as pd from scipy spatial import dis
  • 哪些 2to3 修复程序输出有效的 Python 2 代码?

    2to3 是一个 Python 程序 它读取 Python 2 x 源代码并应用一系列修复程序将其转换为有效的 Python 3 x 代码 考虑一下列出的四十个修复者https docs python org 3 library 2to3
  • 使用不同的 CMD 名称同时运行多个 python 脚本

    我尝试通过 multiprocessing Process 在 test py 中同时调用 a py 和 b py 它起作用了 但过程CMDa py b py 和 test py 的名称相同 均为 usr bin python tmp te
  • API 调用时出现 UnicodeEncodeError (json)

    我正在尝试打印此 API 调用的结果 但收到 UnicodeEncodeError 可能是超级菜鸟问题 但非常感谢任何帮助 import http client import json api key hidden connection h
  • Python - 函数无法在新线程中运行

    我正试图杀死notepad exe使用此函数在 Windows 上进行处理 import thread wmi os print CMD Kill command called def kill c wmi WMI Commands not
  • Python记录多个模块记录器在主程序之外不起作用

    我的目标是从多个模块进行日志记录 同时仅在一个位置 主程序中 配置记录器 如图所示这个答案 https stackoverflow com questions 15727420 using python logging in multipl
  • Python 和 Visual Studio Code - 如何在编辑器中运行特定文件?

    我正在使用 Visual Studio Code 和 Python 编写一个小型应用程序 我的应用程序有两个文件 Main py and MyCustomClass py Main py是应用程序的入口点 MyCustomClass py包
  • 从 Python 脚本创建可执行文件,同时获取较小的输出大小

    我的问题可能已经在某个地方得到了解答 但我仍然找不到直接的答案 我想从 python 代码创建一个独立的可执行文件 我已经尝试过很多解决方案 例如py2exe pyinstaller等等 但我的问题是输出文件大小很大 例如 在pyinsta

随机推荐

  • 为 git-diff 输出中的空白着色

    关于代码格式 我是纯粹主义者 我经常删除不必要的空格 仅包含 ws 的行 行尾的 ws 等 我什至将 vim 设置为显示那种红色的线条 我的问题是 使用 git diff 我经常看到这样的东西 else else 即使我有 git diff
  • 我可以将 mono64 与 Visual Studio for Mac 结合使用吗?

    我是 Mono 开发 但不是 NET 开发 的新手 下载了 Visual Studio for Mac 并尝试从 Alea GPU 运行示例解决方案 它抱怨它需要 mono64 但我没有看到像在 Windows 中那样选择 64 位架构的选
  • C语言中的空函数指针是什么意思?

    假设我们有一个函数指针 void func0 void 其还定义为 void func0 void printf 0 n 但是 假设在某些时候我们尝试以某种方式访问 函数指针 那么当我进入代码时 如果 MS VS 调试器显示 func0 实
  • 取消格式化磁盘大小字符串

    有什么方法可以转换字符串吗1K to 1000 1M to 1000000等等 用一个 Bash 命令 我想避免成为第 100 万第 30 个人为此创建超过 10 行或超过 100 个字符的单行 hack 就像是iso2int 5MB Ed
  • Hibernate使用Oracle序列时不生成标识符

    我有以下映射 Entity SequenceGenerator name sacpSequenceGenerator sequenceName SACP SEQ public class Sacp private Integer id Id
  • 使用类成员函数作为回调?

    我需要将一个成员函数传递给第三方外部方法 box self intersection d mycallback The box self intersection d是第三方外部静态方法 我无法修改它 mycallback是我想将其传递到的
  • 在 IE7 中垂直居中块

    我试图在 IE7 中垂直居中一个块 如果可能的话 也可以在 IE6 中 让我弄清楚一件事 我不是垂直居中实际元素 而是元素内的文本 这是我的 CSS 和 HTML 适用于 IE8 及以上版本 但不适用于以下版本 a display tabl
  • 仅当第一个非空 android 时才关注第二个编辑文本

    目前我有两个编辑文本 假设我想对空编辑文本检查进行验证 运行时验证的更好方法是什么 我的代码是 final EditText ev1 EditText findViewById R id editText1 final EditText e
  • MapFragment Google Maps API v2 内存不足错误/内存泄漏

    在过去的几天里 我读了很多类似的帖子 但没有一个专门回答这个问题 在使用混合地图进行大约 2 分钟的激进地图平移和缩放后 我开始遇到 OOM 问题 该应用程序似乎还在崩溃后保留了内存 因为在第一次失败后达到 OOM 所需的时间更少 我将代码
  • 单实例并在系统托盘中通知

    我正在开发该应用程序 C 2 0 我已经在其中实现了单个实例 一切安好 如果我再次运行该应用程序 它会显示消息框 提示 实例已在运行 实际上我不想通过消息框显示消息 我想使用已运行实例的气球提示来显示此消息 它在系统托盘中有通知图标 我怎样
  • 推断精确值打字稿

    如何让打字稿从传递的参数推断返回值 const toggle
  • 如何将带有awaitdata的可尾游标移动到末尾,以便我只获得新的更新

    我正在尝试使用 node js 驱动程序查看 MongoDB oplog 理论上它是有效的 但它的启动时间相当长 因为它似乎正在扫描整个集合 我在 MongoDB 文档中找到了这个 由于可尾游标不使用索引 因此查询的初始扫描可能会很昂贵 但
  • Firebase 云函数 - null user.displayName onCreate

    我正在尝试编写一个函数 在用户创建时发送欢迎电子邮件 我跟着去this教程 其中说可以访问新创建的用户displayName with user displayName 尽管它不断返回null为我 我意识到发生这种情况的可能原因 如果我错了
  • 内核栈和用户空间栈

    内核堆栈和用户堆栈有什么区别 为什么使用内核栈 如果在 ISR 中声明局部变量 它将存储在哪里 每个进程都有自己的内核堆栈吗 那么进程如何在这两个堆栈之间进行协调呢 内核堆栈和用户堆栈有什么区别 简而言之 除了使用内存中的不同位置 因此堆栈
  • Java 资源管理:了解 Findbugs 结果

    Findbugs 给我带来了一个打开两个Closeable实例 但我不明白为什么 Source public static void sourceXmlToBeautifiedXml File input File output throw
  • SKTexture:加载图像资源时出错

    这似乎工作得很好 当我创建一个具有完全相同的内容 只是新图像 的新项目时 它不起作用 我什至尝试过 var mainChartxt SKTexture imageNamed mainC png 它仍然给我同样的错误 SKTexture Er
  • Ubuntu 18.04 中 Python 3 环境中的 PyFMI

    我的目标是能够在 Ubuntu 18 04 中运行 OpenModelica 生成的 FMU 然后在 Python 3 环境中使用 PyFMI 运行它们 我按照此处的 PyFMI 安装大纲进行操作https jmodelica org py
  • 如何将 JavaFX 进度条绑定到存储在对象中的双精度值

    我还在学习中 希望你能帮助我 我有一个对象myObject存储一个双精度值 表示计算进度的百分比 当myObject初始化时 值为0D 并且经常在myObject本身内部更新 直到达到100D 我想bind这个双值到ajavaFX进度条 这
  • Samsung Galaxy S4(1080X1920) 的 AVD 显示黑屏

    经过大量搜索后 我发现了这个链接 http developer sonymobile com knowledge base sdks sony add on sdk install the sony add on sdk 按照说明的步骤 我
  • NumPy:同时计算许多小矩阵的点积

    我有一长串 3 3 矩阵 例如 import numpy as np A np random rand 25 3 3 对于每个小矩阵 我想执行一个外积dot a a T 列表理解 import numpy as np B np array