【机器学习】Numpy常用函数集锦

简介: 【机器学习】Numpy常用函数集锦

1、概述


   Numpy对于机器学习可能不如SKLearn那么重要,但是Numpy能对机器学习过程中常用的数据结构(向量、矩阵以及张量)进行高效的操作,所以很有必要对其进行学习、记忆以及总结,当然在实践中多使用自然比记忆更好。


2、常用Numpy函数的总结


import numpy as np
# 矩阵、向量操作类
vector = np.array([1,2,3]) # 创建一个vector
matrix = np.array([[1, 2, 3],
                             [2, 3, 4]]) # 创建一个matrix
matrix  = np.mat([[1,2,3],
                            [2,3,4]]) # 创建一个matrix
vector[:] # 选择向量中的所有元素
vector[:3] # 选择一个向量中第0—>3个元素
matrix[:2,:] # 选择matrix中第0,1两行的所有元素 
matrix[:,1:2] # 选择第一列上的所有行元素
matrix.shape # 查看矩阵matrix的行数和列数
matrix.size # 查看矩阵matrix中的所有元素的数量
matrix.ndim # 查看矩阵的维度
np.arange(10) # 返回[0,...,9]的向量
# 特殊矩阵、向量创建
np.zeros((3,4)) #创建3x4的元素全为0的矩阵
np.ones((3,4)) #创建3x4的元素全为1的矩阵
np.empty((2,3)) #创建2x3的空矩阵,初始化为随机的垃圾数
np.zeros_like(matrix) #创建和matrix相同shape的全0矩阵
np.ones_like(matrix) #创建和matrix相同shape的全1矩阵
np.empty_like(matrix) #创建和matrix相同shape的空矩阵
np.eye(5) #创建一个5x5的矩阵,对角元素为1,其他为0
np.full((3,5),6) #创建元素全为6,shape=(3,5)的矩阵
# 矩阵统计类
np.max(matrix) # 返回matrix所有元素中的最大值
np.max(matrix, axis=0) # 返回matrix所有列元素中的最大值
np.max(matrix, axis=1) # 返回matrix所有行元素中的最大值,下面的统计类的类似含义
np.min(matrix) # 返回matrix所有元素中的最小值
np.mean(matrix) # 返回matrix所有元素的平均值
np.var(matrix) # 返回matrix所有元素的方差
np.std(matrix) # 返回matrix所有元素的标准差
以及abs绝对值、sin、cos、sqrt、exp;
cumsum累积求和、cumproduct累积求积;
sum、mean、median中位数、corrcoef相关系数。
# 矩阵形状操作类
matrix.reshape(a, b) # 变形操作由原有的n*m维->a*b维,前提是n*m=a*b
matrix.T # 对矩阵进行转置操作
np.transpose(matrix) # 与matrix.T具有一样的效果,对矩阵进行转置
matrix.flatten() # 对matrix按行进行平铺操作,返回一个向量vector
# 矩阵性质输出类
np.linalg.matrix_rank(matrix) # 求取矩阵的秩
np.linalg.det(matrix) # 求取矩阵的行列式的值
matrix.diagonal() # 返回matrix的对角线元素
matrix.diagonal(offset=+1/-1) # +1代表主对角线上面的次对角线,-1代表主对角线下面的次对角线
matrix.trace() # 返回matrix的迹
eigenvalues,eigenvectors = np.linalg.eig(matrix) # 求取matrix的特征值和特征向量
# 矩阵运算类
np.dot(matrix1,matrix2) # 两个矩阵相乘
mat1 @ mat2 # 也是两个矩阵matrix相乘
mat1 * mat2 # 两个矩阵的对应元素相乘
np.linalg.inv(matrix) # 返回矩阵的逆
# 随机数相关操作
np.random.seed(666) # 设置随机种子,括号内可以为任意整数
np.random.random(3) # 返回3个0.0到1.0之间的随机浮点数
np.random.randint(0,11,3) # 返回3个1到10之间的随机整数
np.random.normal(0.0,1.0,3) # 返回标准正态分布中的随机3个数
np.random.logistic(0.0,1.0,3) # 返回logistic分布中的3个数
np.random.uniform(1.0, 2.0,3) # 返回 [1,2) 区间中的3个数
np.random.randn() #返回标准正态分布随机数
np.random.shuffle() #随机打乱顺序
# 合并操作
np.append(a,b) # 但是比较占用内存
np.concatenate(a,b) # 直接的拼接操作


参考:


《Python机器学习手册》——从数据预处理到深度学习

《Python深度学习——基于PyTorch》

相关文章
|
1天前
|
机器学习/深度学习 人工智能 数据处理
机器学习库:numpy
机器学习库:numpy
41 0
|
1天前
|
数据采集 机器学习/深度学习 存储
【机器学习】数据清洗——基于Numpy库的方法删除重复点
【机器学习】数据清洗——基于Numpy库的方法删除重复点
85 1
|
1天前
|
机器学习/深度学习 资源调度
【机器学习】高斯分布-概率密度函数
【1月更文挑战第23天】【机器学习】高斯分布-概率密度函数
【机器学习】高斯分布-概率密度函数
|
7月前
|
存储 机器学习/深度学习 人工智能
机器学习 | NumPy超详细教程
机器学习 | NumPy超详细教程
96 0
|
1天前
|
机器学习/深度学习 算法 Python
【Python机器学习】神经网络中常用激活函数、损失函数、优化方法(图文解释 附源码)
【Python机器学习】神经网络中常用激活函数、损失函数、优化方法(图文解释 附源码)
52 0
|
1天前
|
机器学习/深度学习 算法 数据挖掘
【机器学习】算法术语、决策函数、概率模型、神经网络的详细讲解(图文解释)
【机器学习】算法术语、决策函数、概率模型、神经网络的详细讲解(图文解释)
88 1
|
1天前
|
机器学习/深度学习
机器学习基础入门(二)(线性回归与成本函数)
已知一系列房子的大小以及其对应的价格的数据,要求是已知房子大小预测其房子的价格
|
1天前
|
机器学习/深度学习 数据采集 算法
探索NumPy与机器学习库的集成之路
【4月更文挑战第17天】本文探讨了NumPy在机器学习中的核心作用,它为各类机器学习库提供基础数据处理和数值计算能力。NumPy的线性代数、优化算法和随机数生成等功能,对实现高效模型训练至关重要。scikit-learn等库广泛依赖NumPy进行数据预处理。未来,尽管面临大数据和复杂模型的性能挑战,NumPy与机器学习库的集成将继续深化,推动技术创新。
|
1天前
|
机器学习/深度学习 数据采集 算法
【Python机器学习】特征工程含义、方法、对应函数详解(图文解释)
【Python机器学习】特征工程含义、方法、对应函数详解(图文解释)
64 0
|
7月前
|
机器学习/深度学习 算法 搜索推荐
为什么说机器学习的本质其实就是一个函数?
为什么说机器学习的本质其实就是一个函数?

热门文章

最新文章