numpy中一些用法汇总

本文详细介绍了numpy库中的一些重要函数,包括奇异值分解、数值保留、矩阵叉乘、范数计算、矩阵重塑、矩阵合并等,并给出了具体示例,帮助理解其用法和效果。
摘要由CSDN通过智能技术生成

本篇文章用来总结在使用numpy库使用到的函数,方便自己回过头来查阅,在开始默认导入如下设置

import numpy as np

1. 奇异值分解会用到

numpy.linalg.svd(afull_matrices=Truecompute_uv=True)   

a : 维度大于等于2的矩阵

full_matrices: 默认为True ,用来表示u, vh是否维度分别为(M,M)和(N,N),不然的话维度就为(M,K)和(K,N)

compute_uv:  默认为True,是否在s外组合u和vh 

返回值为 

u : 是个(M,M)或者(M,K)的矩阵

s :返回的是除了主对角线以外全为0,主对角线上的值被称为奇异值,这里返回的时候只返回奇异值数组,而且奇异值是从大到小排序的,这里在做奇异值能量占比的时候会使用到。

vh : 是个(N,N)或者(K,N)的矩阵 

拓展这里解释下SVD ,假设矩阵A 是一个m*n的矩阵,那么定义矩阵A的SVD为

A=U\varepsilon V^{T} , A_{m*n} = U_{m*m} \varepsilon _{m*n}V_{n*n}^{T}   所以上述的函数就是将一个矩阵进行分解,但是在实际的操作中是要将矩阵进行降维,降维主要是对中间的\varepsilon 进行调整,这是个对角矩阵,因为除了主对角线以外其余的元素全为0,而在做奇异值分解后实际返回的奇异值大小是从大往小排序的,我们在实际操作中只取前面的k个值,前10%的奇异值之和就占了全部奇异值之和的80%以上的比例,从而达到降维的效果。

进行降维后就可以这样来进行表示  

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值