这个包通过选择top-n乘法来增强稀疏矩阵乘法

sparse-dot-topn的Python项目详细描述


稀疏点阵:

sparse_dot_top n提供了一种快速的方法来执行稀疏矩阵乘法,然后选择top-n乘法结果。

在实践中,比较非常大的特征向量并选择最佳匹配,通常会导致执行稀疏矩阵乘法,然后选择top-n乘法结果。在这个包中,我们实现了一个定制的cython函数。当比较我们的cythonic方法与使用scipy和numpy函数时,我们的方法可以将速度提高约40%,并减少内存消耗。

此软件包由ING批发银行高级分析团队制作。这个blog解释了我们如何实现它。

示例

importnumpyasnpfromscipy.sparseimportcsr_matrixfromscipy.sparseimportrandfromsparse_dot_topnimportawesome_cossim_topnN=10a=rand(100,1000000,density=0.005,format='csr')b=rand(1000000,200,density=0.005,format='csr')c=awesome_cossim_topn(a,b,5,0.01)

您还可以在example/comparison.py中找到将boosting方法与直接调用scipy+numpy函数进行比较的代码。

依赖项和安装

在安装此软件包之前,请先安装numpycython。然后,

pip install sparse_dot_topn

卸载

pip uninstall sparse_dot_topn

欢迎加入QQ群-->: 979659372 Python中文网_新手群

推荐PyPI第三方库


热门话题
java为什么加载个人密钥库需要这么多时间?   当我使用main创建Android应用程序UI时,如何通过java修改它。xml文件?   java Tomcat 6和7:WebappClassLoader:尝试为名称org/apache/openjpa/persistence/osgi/BundleUtils复制类定义   java`parseInt()`和`parseDouble()`throw`NumberFormatExeption`   JavaSpringMongoDB填充引用   在LinuxMint中打开Eclipse时发生java错误;OpenJDK 64位服务器VM警告:忽略选项MaxPermSize=512m;支持在8.0中被删除   使用PKCS7Padding的AES CBC加密在Java和Objective中有不同的结果   java为什么Jackson要用一个以类命名的额外层来包装我的对象?   json在Java中使用parallelStream提取值   JavaSpring存储库自动生成方法:按给定的顶部编号+按字段描述排序选择   java是否有可序列化的标准闭包接口?   .NET与Java在初创公司的web应用程序开发   如何修复java。java中的lang.unsatifiedLinkError   JavaFX+Spring Boot+Hibernate应用程序对多个环境的java支持   自定义视图组中的java更改未呈现