Python中范数计算以及numpy矩阵的运算

这篇具有很好参考价值的文章主要介绍了Python中范数计算以及numpy矩阵的运算。希望对大家有所帮助。如果存在错误或未考虑完全的地方,请大家不吝赐教,您也可以点击"举报违法"按钮提交疑问。

Python中范数计算以及numpy矩阵的运算

一、范数

1.1 定义:

​ 范数(norm)是数学中的一种基本概念。在泛函分析中,它定义在赋范线性空间中,并满足一定的条件,即①非负性;②齐次性;③三角不等式。它常常被用来度量某个向量空间(或矩阵)中的每个向量的长度或大小。
​ 最常见的范数就是p范数。若 x = [ x 1 , x 2 . . . x n ] T x=[x_1,x_2...x_n]^T x=[x1,x2...xn]T,那么
∥ x ∥ p = ( ∣ x 1 ∣ p + ∣ x 2 ∣ p + . . . + ∣ x n ∣ p ) 1 p \left \| x \right \|_p=(|x_1|^p+|x_2|^p+...+|x_n|^p)^{\frac{1}{p}} xp=(x1p+x2p+...+xnp)p1
​ 当$p=1,2,\infty $时分别是以下集中情况:

∥ x ∥ 1 = ∣ x 1 ∣ + ∣ x 2 ∣ + . . . + ∣ x n ∣ ∥ x ∥ 2 = ( ∣ x 1 ∣ 2 + ∣ x 2 ∣ 2 + . . . + ∣ x n ∣ 2 ) 1 2 ∥ x ∥ p = m a x ( ∣ x 1 ∣ , ∣ x 2 ∣ , . . . , ∣ x n ∣ ) \left \| x \right \|_1=|x_1|+|x_2|+...+|x_n|\\ \left \| x \right \|_2=(|x_1|^2+|x_2|^2+...+|x_n|^2)^{\frac{1}{2}}\\ \left \| x \right \|_p=max(|x_1|,|x_2|,...,|x_n|) x1=x1+x2+...+xnx2=(x12+x22+...+xn2)21xp=max(x1,x2,...,xn)
常用的三种范数的范数矩阵:

​ 1范数:列和范数,每一列元素之和的最大值。
Python中范数计算以及numpy矩阵的运算
​ 2范数:谱范数,矩阵中所有元素平方和开根号。

Python中范数计算以及numpy矩阵的运算
∞ \infty 范数:行和范数,每一行之和的最大值。
Python中范数计算以及numpy矩阵的运算

二、numpy中范数计算

1)基本语法:

np.linalg.norm(x,ord=None,axis=None)	# x代表矩阵,ord代表范数类型
参数 范数类型
ord=2或None 二范数
ord=1 一范数
ord=np.Inf 无穷范数

2)axis为处理方向:

  • axis=1时表示按行向量处理,求多个行向量的范数
  • axis=0时表示按列向量处理,求多个列向量的范数。

2.1 实际案例

案例一:对矩阵求范数

import numpy as np
a=np.array([[1,2,3],[4,5,6]])
print("矩阵:",a)

a1=np.linalg.norm(a,ord=1)
print("第一范式:",a1)
a2=np.linalg.norm(a,ord=2)
print("第二范式",a2)
a3=np.linalg.norm(a,ord=np.Inf)
print("无穷范式",a3)

Python中范数计算以及numpy矩阵的运算
案例二:对矩阵的行向量求范数

import numpy as np
a=np.array([[1,2,3],[4,5,6]])
print("矩阵:",a)

a1=np.linalg.norm(a,ord=1,axis=1)
print("第一范式:",a1)
a2=np.linalg.norm(a,ord=2,axis=1)
print("第二范式",a2)
a3=np.linalg.norm(a,ord=np.Inf,axis=1)
print("无穷范式",a3)

Python中范数计算以及numpy矩阵的运算
案例三:对矩阵的列向量求范数

import numpy as np
a=np.array([[1,2,3],[4,5,6]])
print("矩阵:",a)

a1=np.linalg.norm(a,ord=1,axis=0)
print("第一范式:",a1)
a2=np.linalg.norm(a,ord=2,axis=0)
print("第二范式",a2)
a3=np.linalg.norm(a,ord=np.Inf,axis=0)
print("无穷范式",a3)

Python中范数计算以及numpy矩阵的运算

三、numpy矩阵运算

​ numpy矩阵之间的四则运算,根据两矩阵之间的各个元素一一对应进行。例如:
[ 1 2 3 4 5 6 ] + [ 1 2 3 ] = [ 2 4 6 5 7 9 ] \begin{bmatrix} 1 &2 &3 \\ 4 &5 &6 \end{bmatrix}+\begin{bmatrix} 1 &2 &3 \end{bmatrix}=\begin{bmatrix} 2 &4 &6 \\ 5 &7 &9 \end{bmatrix} [142536]+[123]=[254769]
​ 如果说要进行线性代数中矩阵相乘需要调用包中的.dot方法进行运算。

3.1 numpy矩阵加减

import numpy as np
a=np.array([[1,2,3],[4,5,6]])
b=np.array([2,2,2])
print("两矩阵相加:\n",a+b)
print("两矩阵相减:\n",a-b)

Python中范数计算以及numpy矩阵的运算

3.2 numpy矩阵乘除

import numpy as np
a=np.array([[1,2,3],[4,5,6]])
b=np.array([2,2,2])
print("两矩阵相除:\n",a/b)
print("两矩阵相乘:\n",a*b)

Python中范数计算以及numpy矩阵的运算

3.3 矩阵乘法运算

import numpy as np
a=np.array([[1,2,3],[4,5,6]])
c=np.array([[2],[2],[2]])
print("矩阵乘法运算\n",np.dot(a,c))

Python中范数计算以及numpy矩阵的运算文章来源地址https://www.toymoban.com/news/detail-407601.html

到了这里,关于Python中范数计算以及numpy矩阵的运算的文章就介绍完了。如果您还想了解更多内容,请在右上角搜索TOY模板网以前的文章或继续浏览下面的相关文章,希望大家以后多多支持TOY模板网!

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处: 如若内容造成侵权/违法违规/事实不符,请点击违法举报进行投诉反馈,一经查实,立即删除!

领支付宝红包 赞助服务器费用

相关文章

  • Python 使用numpy.bincount计算混淆矩阵

    Confusion matrix using numpy.bincount. np.bincount 用于统计一个非负数组中元素的出现次数。函数格式如下: 通常默认数组 x x

    2024年02月07日
    浏览(42)
  • 【Python】如何用 python 计算矩阵相乘 - numpy.dot()

    使用 Numpy 包里的 dot() 函数。 该函数主要功能有两个: 向量点积 和 矩阵乘法 。 格式: x.dot(y) 等价于 np.dot(x,y) x 是m × n 矩阵 ,y 是 n×m 矩阵,则 x.dot(y) 得到 m×m 矩阵。 向量相乘,得到内积 输出结果: 矩阵相乘,得到矩阵的积 (1)实例 1 输出结果: (2)实例 2 输出结果

    2024年02月11日
    浏览(39)
  • 【Python 矩阵:快速入门指南】-深入理解矩阵运算及其常用计算

    【Python 矩阵:快速入门指南】-深入理解矩阵运算及其常用计算 在数据科学和机器学习中,矩阵是一个非常重要的数学概念,它被广泛应用于数据处理、图像处理、自然语言处理等领域。Python作为一门高效且广泛应用的编程语言,提供了许多强大的工具来处理矩阵。本文将介

    2024年02月13日
    浏览(68)
  • 用python实现矩阵和向量的范数(包括一范数,二范数,无穷范数)

    首先,导入需要用到的库: 创建一个矩阵和一个向量并输出: 计算矩阵的第一范数: 计算矩阵的第二范数: 计算矩阵的无穷范数: 计算向量的第一范数: 计算向量的第二范数: 计算向量的无穷范数: 完整代码如下:

    2024年04月22日
    浏览(38)
  • 【深度学习】 NumPy详解(三):数组数学(元素、数组、矩阵级别的各种运算)

    目录 一、前言 二、实验环境 三、NumPy 0、多维数组对象(ndarray) 多维数组的属性 1、创建数组 2、数组操作 3、数组数学 1. 元素级别 a. 直接运算 b. 加法:np.add()函数 c. 减法:np.subtract()函数 d. 乘法:np.multiply()函数 e. 除法:np.divide()函数 f. 幂运算:np.power()函数 g. 取余与求商

    2024年02月03日
    浏览(39)
  • Numpy 学习之矩阵、函数、二元运算及数组读写,差点挂在了美团三面

    sinc1 = np.vectorize(sinc) print(‘向量化:’, sinc1(x)) x = np.linspace(-10, 10, 50) plt.plot(x, sinc1(x)) plt.show() 二元运算 四则运算对应函数 | 运算符 | 对应函数 | | :-: | :-: | | a + b | add(a, b) | | a - b | subtract(a, b) | | a * b | multiply(a, b) | | a / b | divide(a, b) | | a ** b | power(a, b) | | a % b | remainder(a,b) | 比

    2024年04月15日
    浏览(47)
  • 【数值计算方法(黄明游)】解线性代数方程组的迭代法(一):向量、矩阵范数与谱半径【理论到程序】

       注意:速读可直接跳转至“4、知识点总结”及“5、计算例题”部分   当涉及到线性代数和矩阵理论时, 向量、矩阵范数以及谱半径 是非常重要的概念,下面将详细介绍这些内容: a. 定义及性质   考虑一个 n n n 维向量 x x x ,定义一个实值函数 N ( x ) N(x) N ( x ) ,

    2024年01月25日
    浏览(48)
  • Numpy从入门到精通——存读矩阵以及读取矩阵中的数据

    这个专栏名为《 Numpy从入门到精通 》,顾名思义,是记录自己学习numpy的学习过程,也方便自己之后复盘!为深度学习的进一步学习奠定基础!希望能给大家带来帮助,爱睡觉的咋祝您生活愉快! 这一篇介绍《 Numpy从入门到精通——存读矩阵以及读取矩阵中的数据 》 在np中

    2023年04月25日
    浏览(35)
  • 【Python 零基础入门】Numpy 常用函数 数组操作 & 数学运算

    Numpy (Numerical Python) 是 Python 编程语言的一个扩展程序库, 支持大量的维度数组与矩阵运算, 并提供了大量的数学函数库. Numpy 利用了多线程数组来存储和处理大型数据集, 从而提供了一个高效的方式来进行数值计算, 特别是对于矩阵预算和线性代数. np.assarray 可以将输入转换为

    2024年02月05日
    浏览(48)
  • 【Python爬虫与数据分析】NumPy进阶——数组操作与运算

    目录 一、NumPy数组操作 1. ndarray更改形状 2. ndarray转置 3. ndarray组合 4. ndarray拆分 5. ndarray排序 二、NumPy数组运算 1. 基本运算 2. 逻辑函数 3. 数学函数 三、日期时间的表示和间隔 1. 日期时间的表示——datetime64 2. 日期时间的计算——timedelta64 3. datetime64与datetime的转换 在对数组进

    2024年02月15日
    浏览(49)

觉得文章有用就打赏一下文章作者

支付宝扫一扫打赏

博客赞助

微信扫一扫打赏

请作者喝杯咖啡吧~博客赞助

支付宝扫一扫领取红包,优惠每天领

二维码1

领取红包

二维码2

领红包