Gensim 是一个用于主题建模、文档索引 和大型语料库相似性检索的 Python 库。目标受众是 自然语言处理(NLP) 和信息检索(IR) 社区。
⚠️ 想帮忙吗?赞助Gensim❤️
- 所有算法都是与语料库大小无关的内存(可以处理大于 RAM、流式、核外的输入),
- 直观的界面
- 轻松插入您自己的输入语料库/数据流(简单的流 API)
- 易于使用其他向量空间算法进行扩展(简单的转换 API)
- 流行算法的高效多核实现,例如在线潜在语义分析 (LSA/LSI/SVD)、潜在狄利克雷分配 (LDA)、随机投影 (RP)、 分层狄利克雷过程 (HDP)或word2vec 深度学习。
- 分布式计算:可以在计算机集群上运行潜在语义分析和 潜在狄利克雷分配。
- 丰富的文档和 Jupyter Notebook 教程。
如果此功能列表让您摸不着头脑,您可以首先在维基百科上阅读有关向量空间模型和无监督文档分析的更多信息 。
该软件依赖于NumPy 和 Scipy 这两个用于科学计算的 Python 软件包。您必须在安装 gensim 之前安装它们。
还建议您在安装 NumPy 之前安装快速 BLAS 库。这是可选的,但使用优化的 BLAS(例如 MKL、ATLAS或 OpenBLAS)已知可以将性能提高一个数量级。在 OSX 上,NumPy 自动选择其 vecLib BLAS,因此您无需执行任何特殊操作。
安装最新版本的 gensim:
pip install --upgrade gensim
或者,如果您下载并解压了源 tar.gz 包:
python setup.py install
有关替代安装模式,请参阅文档。
Gensim 正在所有受支持的 Python 版本下 进行持续测试。gensim 4.0.0 中删除了对 Python 2.7 的支持 - 如果必须使用 Python 2.7,请安装 gensim 3.8.3。
许多科学算法可以用大型矩阵运算来表达(参见上面的 BLAS 注释)。Gensim 通过依赖 NumPy 来利用这些低级 BLAS 库。因此,虽然 gensim-the-top-level-code 是纯 Python,但它实际上在底层执行高度优化的 Fortran/C,包括多线程(如果您的 BLAS 是这样配置的)。
在内存方面,gensim 大量使用 Python 的内置生成器和迭代器来进行流数据处理。内存效率是 gensim 的设计目标之一,也是 gensim 的核心功能,而不是事后添加的东西。
如需商业支持,请参阅Gensim 赞助。
在公共Gensim 邮件列表上提出开放式问题。
在Github上提出错误,但请确保遵循问题模板。不是错误或未能提供所需详细信息的问题将在不进行检查的情况下关闭。
| 公司 | 标识 | 行业 | Gensim的使用 |
|---|---|---|---|
| 稀有技术 | 机器学习和自然语言处理咨询 | Gensim 的创造者——这就是我们! | |
| 亚马逊 | 零售 | 文档相似度。 | |
| 美国国立卫生研究院 | 健康 | 使用 word2vec 处理资助和出版物。 | |
| 思科安全 | 安全 | 大规模欺诈检测。 | |
| 心灵的眼睛 | 合法的 | 法律文件中的相似之处。 | |
| 频道4 | 媒体 | 推荐引擎。 | |
| 人才对 | 人力资源 | 高接触招聘中的候选人匹配。 | |
| 朱朱 | 人力资源 | 提供非明显相关的工作建议。 | |
| 顺风 | 媒体 | 将有趣且相关的内容发布到 Pinterest。 | |
| 发行 | 媒体 | Gensim 的 LDA 模块是我们对每个上传的出版物进行分析的核心,以找出其全部内容。 | |
| 搜索指标 | 内容营销 | Gensim word2vec 用于搜索引擎优化中的实体消歧。 | |
| 12K研究 | 媒体 | 媒体文章的文档相似性分析。 | |
| 斯蒂尔沃特超级计算 | 硬件 | 文档理解以及与 word2vec 的关联。 | |
| 站点地面 | 虚拟主机 | 一个使用不同嵌入模型和相似性的集成搜索引擎,包括 word2vec、WMD 和 LDA。 | |
| 第一资本 | 金融 | 用于客户投诉探索的主题建模。 |
在学术论文和论文中引用 gensim时,请使用此 BibTeX 条目:
@inproceedings{rehurek_lrec,
title = {{Software Framework for Topic Modelling with Large Corpora}},
author = {Radim {\v R}eh{\r u}{\v r}ek and Petr Sojka},
booktitle = {{Proceedings of the LREC 2010 Workshop on New
Challenges for NLP Frameworks}},
pages = {45--50},
year = 2010,
month = May,
day = 22,
publisher = {ELRA},
address = {Valletta, Malta},
note={\url{http://is.muni.cz/publication/884893/en}},
language={English}
}