跳转到主要内容

将ANN(近似最近邻)库集成到scikit-learn的各种集成。

项目描述

sklearn-ann 简化了将annoy、nmslib和faiss等近似最近邻库集成到您的sklearn流程中的操作。它包括

  • Transformers,其接口与KNeighborsTransformer相同,可用于将特征矩阵转换为稀疏距离矩阵,以供任何可以处理稀疏距离矩阵的估计器使用。许多但并非所有scikit-learn的聚类和流形学习方法都可以使用此类输入。

  • RNN-DBSCAN:基于反向最近邻的DBSCAN变体。

安装

要从PyPI安装最新版本,请运行

pip install sklearn-ann

要从GitHub安装最新开发版本,请运行

pip install git+https://github.com/scikit-learn-contrib/sklearn-ann.git#egg=sklearn-ann

为什么?我什么时候需要这个?

需要此功能的主要场景是进行聚类或流形学习或高维数据的操作。原因是目前scikit-learn中构建的仅有的邻域算法是本质上基于空间划分的标准树方法:球树和K-D树。这些方法在高维空间中表现不佳。

开发

该项目使用Hatchpre-commit进行管理。要开始,请运行pre-commit installhatch env create。使用hatch run python <command>运行所有命令,这将确保环境保持最新。安装pre-commit后,在每次git commit后都会执行。

请参阅pyproject.toml了解哪些依赖关系组和额外信息存在,以及Hatch帮助或用户指南以获取更多相关信息。

项目详情


下载文件

下载适合您平台的文件。如果您不确定选择哪个,请了解有关安装包的更多信息。

源代码分发

sklearn_ann-0.1.2.tar.gz (18.4 kB 查看散列值)

上传时间 源代码

构建分发

sklearn_ann-0.1.2-py3-none-any.whl (13.1 kB 查看散列值)

上传时间 Python 3

由以下组织支持