python 的csr_Python csr-utils包_程序模块 - PyPI - Python中文网

企业社会责任

企业社会责任矩阵的可扩展操作

安装

对于一般用户,如果使用conda等:

pip install csr_utils

没有根访问:

pip install --user csr_utils

用法>>> import numpy as np

>>> from scipy.sparse import csr_matrix

>>> xcsr = csr_matrix(np.array([[1, 0], [3, 4], [2, 2]], dtype=float))

>>> import csr_utils

>>> xnorm, xmean, xstd, xixnormed = normalize_csr_matrix(xcsr)

概述

这个包目前只有一个快速和内存效率高的实现,用于规范化CSR数组的非零值,而不取消对函数的稀疏这对于大矩阵的机器学习是非常有用的大多数算法在规范化输入下工作得更好,特别是常用的linear classification models in sklearn

随着需求的增加,将增加更多的功能,包括将csr数组直接转换为cuda稀疏数组敬请期待。

标准化CSR矩阵:仅基于非零值规范化CSR矩阵,而不将其转换为密集数组在csr矩阵中,行对应于样本,列对应于特征。

标准化将使每个列(特征)的非零值的平均值为0.0,标准偏差为1.0

返回x= x.toRayay-()的可伸缩等价;x[(x= 0)]=npNa;(x-np.nNeMax(x,轴=0))/np.nnStD(x,轴=0)

我们计算标准差的更快和等效定义:sigma = SquareRoot(ExpectedValue(|X - mean|^2)) # slow

sigma = SquareRoot(ExpectedValue(X^2) - ExpectedValue(X)^2) # fast

此函数作出以下假设:如果列i中没有任何观测值,则将mean_array[i]设置为0.0,将std_array[i]设置为1.0。

如果我们只有一个观测值,或者一列的标准差为0.0,我们只减去该列的平均值

(用于规范化测试集:)此函数允许基于预先指定的平均值和标准偏差数组进行规范化

该函数还只允许对给定的特征子集进行规范化。

示例>>> import numpy as np

>>> from scipy.sparse import csr_matrix

>>> x = csr_matrix(np.array([[1, 0, 0], [3, 0, 4], [2, 5, 2]], dtype=float))

>>> print(x.toarray())

[[ 1. 0. 0.]

[ 3. 0. 4.]

[ 2. 5. 2.]]

>>> xnorm, xmean, xstd, xixnormed = csr_utils.normalize_csr_matrix(x)

>>> print(xnorm.todense())

[[-1.22474487 0. 0. ]

[ 1.22474487 0. 1. ]

[ 0. 0. -1. ]]

>>> xmean

array([2., 5., 3.])

>>> xstd

array([0.81649658, 1. , 1. ])

>>> xixnormed

array([0, 2])

欢迎加入QQ群-->: 979659372

推荐PyPI第三方库

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值