NLTK,Gensim,Scikit Learn的API调用

问题描述 投票:1回答:1

我计划将NLTK,Gensim和Scikit Learn用于一些NLP /文本挖掘。但是我将使用这些库来处理我的组织数据。问题是在使用这些库时“它们是通过API调用来处理数据”还是从python shell中取出数据进行处理。这是一个安全问题,所以想知道是否有人可以提供任何参考文件。

感谢任何帮助。

python api nlp nltk gensim
1个回答
0
投票

通常使用NLTK,gensim和scikit-learn,算法在其源代码中实现,并且在数据上本地运行,而无需发送其他数据进行处理。

我从未注意到这些软件包的任何文档/功能都提到了对远程/云服务的依赖,也从未见过用户对此进行讨论。

但是,它们都是大型库,具有许多我从未审查过的功能,并且许多贡献者都添加了新选项。而且我不知道项目负责人是否已明确表示绝不依赖外部服务。

因此,不可能提供永久的确定性答案。如果您的项目需要考虑这种安全性,则应仔细查看所使用的这些函数/类/方法的文档,甚至是源代码。 (这些项目都不会故意隐藏对外部服务的依赖。)

您还可以在受防火墙限制其与外部服务联系的系统上开发,测试和部署代码,以便您可以检测和阻止与外部计算机的任何未公开或无意的通信。

也请注意,这些库中的每一个又依赖于其他公共库。如果您的关注还扩展到了粗心或故意插入恶意数据的方法,则可能需要对这些库及其引入的所有其他库进行更深入的分析。 (仅信任顶级文档可能是不够的。)

此外,这些库中的每一个都具有实用程序功能,根据明确的用户需求,它们可以下载示例数据集或共享的非代码资源(例如停用词或词典列表)。使用此类功能不会将您的任何数据上传到其他地方,但可能会泄漏您正在使用特定功能。上述基于防火墙的方法可能会干扰此类下载步骤。在高度警惕/偏执的情况下,您可能需要特别注意使用和行为方法,以确保他们所做的与改变本地环境无关。

最后,通过坚持使用广泛的程序包/功能以及仍然可以持续使用的较旧版本,您可能会从一些“社区保证”中受益,即程序包的行为已得到很好的理解,而没有令人惊讶的依赖性或漏洞。也就是说,许多其他用户已经对这些代码路径给予了一定的关注,分析和实际使用-因此可能已经发现,公开和解决了任何问题。

© www.soinside.com 2019 - 2024. All rights reserved.