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

Python中常见的矩阵乘法操作

在Python中,特别是在使用NumPy或类似库(如SciPy、TensorFlow、PyTorch)进行矩阵和数组操作时,不同的操作符具有特定的含义和用途。以下是对 @*、和点操作(即点积)的详细解释:

@ 操作符(矩阵乘法)

  • 用于矩阵乘法。
  • 对应NumPy中的 numpy.matmul() 函数或 numpy.dot() 函数(对于二维数组)。
     

* 操作符(元素乘法)

  • 用于数组的元素逐个相乘(也称为Hadamard积)。
  • 对应NumPy中的广播机制,对形状相同的数组进行逐元素乘法。
     

点操作(点积/内积)

  • 点积通常用于向量,但在NumPy中可以通过 numpy.dot() 函数实现,对于一维数组(向量),它就是点积。
  • 对于二维数组(矩阵),numpy.dot() 执行的是矩阵乘法,和 @ 操作符等价。
  • 例子(向量点积):
    import numpy as np  a = np.array([1, 2])  
    b = np.array([3, 4])  
    c = np.dot(a, b)  
    # c 结果为 11 (即 1*3 + 2*4)

  • 例子(矩阵乘法,与 @ 等价):

    import numpy as np  A = np.array([[1, 2], [3, 4]])  
    B = np.array([[5, 6], [7, 8]])  
    C = np.dot(A, B)  
    # C 结果为:  
    # [[19 22]  
    #  [43 50]]

总结

  • @:用于矩阵乘法。
  • *:用于数组的元素逐个相乘。
  • 点操作(numpy.dot()
    • 对于一维数组,执行点积(内积)。
    • 对于二维数组(矩阵),执行矩阵乘法,和 @ 等价。

这些操作符和函数在数组和矩阵计算中非常常用,选择合适的操作符可以大大提高代码的简洁性和可读性。


http://www.mrgr.cn/news/64901.html

相关文章:

  • 模块功能的描述方法
  • 深度学习相关资料
  • SpringBoot源码(四):run() 方法解析(一)
  • 【99.9%解决】vue3+vite+typescript+vscode使用@alias路径别名配置不正确导致红色波浪线的解决办法
  • ZDS 数字股票 布局全球视野,开启智能金融新篇章
  • React v19 革新功能:2024 年需要了解的所有信息
  • linux 系统扩容
  • 客户端时间 与 服务器时间
  • Flink本地模式安装详解
  • Linux第二周作业
  • Android13开发IPV4地址固定
  • 操作系统——计算机系统概述——1.4操作系统结构
  • 【数据结构】二叉树——前中后序遍历
  • 聚类算法综述
  • RC高通滤波器Bode图分析(传递函数零极点)
  • 【Jenkins】 上传docker包并推送到远程仓库
  • 基于YOLO11/v10/v8/v5深度学习的危险驾驶行为检测识别系统设计与实现【python源码+Pyqt5界面+数据集+训练代码】
  • ZYNQ7045之YOLO部署——FPGA-ZYNQ Soc实战笔记1
  • C#中const与readonly的区别:定义、赋值与用途
  • Observability:OpenTelemetry Elastic 分发简介
  • 全网最全的前端学习路线和编程指南
  • 微服务架构深入理解 | 技术栈
  • 基于java+SpringBoot+Vue的古典舞在线交流平台设计与实现
  • 高频电子线路---调幅方法与检波
  • dup函数-文件描述符
  • n1book web1信息收集