NumPy的np.dot函数:计算点积与矩阵乘积的利器

np.dot 是 NumPy 库中的一个函数,用于计算两个数组的点积。它支持多种类型的输入数组,包括向量和矩阵,并返回它们的点积或矩阵乘积。

对于两个向量(一维数组),np.dot 返回它们的点积,即对应元素的乘积之和。对于矩阵和向量的乘积,或者两个矩阵的乘积,np.dot 执行标准的线性代数矩阵乘法。

下面是一些 np.dot 的基本用法示例:

两个向量的点积

复制代码

python复制代码

|---|----------------------------|
| | import numpy as np |
| | |
| | a = np.array([1, 2, 3]) |
| | b = np.array([4, 5, 6]) |
| | |
| | result = np.dot(a, b) |
| | print(result) # 输出:32 |

矩阵与向量的乘积

复制代码

python复制代码

|---|-----------------------------------|
| | A = np.array([[1, 2], [3, 4]]) |
| | b = np.array([5, 6]) |
| | |
| | result = np.dot(A, b) |
| | print(result) # 输出:[17 39] |

两个矩阵的乘积

复制代码

python复制代码

|---|-----------------------------------|
| | A = np.array([[1, 2], [3, 4]]) |
| | B = np.array([[5, 6], [7, 8]]) |
| | |
| | result = np.dot(A, B) |
| | print(result) |
| | # 输出: |
| | # [[19 22] |
| | # [43 50]] |

请注意,当计算两个矩阵的乘积时,左侧矩阵的列数必须等于右侧矩阵的行数,否则 NumPy 会抛出一个错误。

np.dot 在进行数组运算时非常高效,因为它利用了底层的优化算法。在处理大型数组或进行复杂的数学运算时,使用 np.dot 通常比手动实现这些运算要快得多。

相关推荐
汤姆小白15 小时前
08-应用部署
人工智能·python·机器学习·numpy·transformer
AI科技星1 天前
全域三极公理统一篇——所有分析、代数、拓扑、算子理论同源归一,回归0/1/∞创世本源闭环《全域数学vs传统数学:人类文明进阶200讲》第91讲
人工智能·线性代数·机器学习·数据挖掘·回归·乖乖数学·全域数学
文祐1 天前
C语言利用数组计算矩阵乘法
c语言·开发语言·矩阵
AI科技星2 天前
线性算子不是空间映射函数,是全域双螺旋场之间拉伸、旋转、耦合、坍缩的跨空间标准化变换载体《全域数学vs传统数学:人类文明进阶200讲》第80讲
线性代数·算法·矩阵·数据挖掘·回归·乖乖数学·全域数学
米罗篮2 天前
矩阵快速幂 (Exponentiation By Squaring Applied To Matrices)
c++·线性代数·算法·矩阵
AI科技星2 天前
基于全域数学公理体系的三元极值题最简求解法【乖乖数学】
线性代数·算法·游戏·决策树·机器学习·乖乖数学·全域数学
汤姆小白2 天前
02-Tokenizer原理与实现
人工智能·python·机器学习·numpy
汤姆小白2 天前
01-环境搭建与项目导览
人工智能·python·机器学习·numpy
Ivanqhz3 天前
DRN(深度强化学习推荐网络)
人工智能·线性代数·机器学习·矩阵·dnn
CS创新实验室3 天前
NumPy数组的C风格和Fortran风格
c语言·开发语言·numpy