简单易懂的语言
nlpeas的Python项目详细描述
自然
轻松构建NLP管道
Disclaimer: This is in Alpha stage, lot of things can go wrong. It could possibly change your Elasticsearch Data the API is not fixed yet and even the name NLPeasy might change.
- 免费软件:Apache软件许可证2.0
使用
要使这个示例完全工作,您需要至少在3.6版本中安装Python。 你还需要安装和启动
- Dockerhttps://www.docker.com/get-started,直接下载链接 Mac (DMG)和 Windows (exe)。在
- Elasticsearch和Kibana: https://www.elastic.co/downloads/或 https://www.elastic.co/downloads/elasticsearch-oss(纯Apache授权版本)
关于终端问题:
python -m venv venv
source venv/bin/activate
pip install nlpeasy scikit-learn
python -m spacy download en_core_web_md
本例中使用包scikit-learn
来获取新闻组数据并对其进行预处理。
最后一个命令下载英语语言的spacy模型-
对于以下内容,您至少需要有md
(=medium)版本,其中包含wordvectors。在
让我们在Elastic/Kibana之外找点乐子-但这需要pip install matplotlib
importnumpyasnpfromscipy.cluster.hierarchyimportdendrogram,linkageimportmatplotlib.pyplotaspltgrouped=news_enriched.loc[~news_enriched.message_vec.isna()].groupby('newsgroup')group_vec=grouped.apply(lambdaz:np.stack(z.message_vec.values).mean(axis=0))clust=linkage(np.stack(group_vec),'ward')# calculate full dendrogramplt.figure(figsize=(10,10))plt.title('Hierarchical Clustering Dendrogram Newsgroups')plt.xlabel('sample index')plt.ylabel('distance')dendrogram(clust,leaf_rotation=0.,# rotates the x axis labelsleaf_font_size=8.,# font size for the x axis labelslabels=group_vec.index,orientation='left')plt.show()
安装
先决条件:
- Python3(我们使用Python3.7)
- 弹性:几种可能性
- 安装Docker-需要安装Docker软件包(见下文)。在
- 安装并启动Elasticsearch和Kibana: https://www.elastic.co/downloads/或 https://www.elastic.co/downloads/elasticsearch-oss(纯Apache授权版本)
- 使用任何正在运行的Elasticsearch和Kibana(本地或云计算)。。。在
- 预训练模型:参见下面的Spacy语言模型和单词向量
建议使用虚拟环境:
cd$PROJECT_DIR python -m venv venv source venv/bin/activate
每当您打开一个新的终端时,必须重复源语句。在
然后安装
pip install nlpeasy
或GitHub的开发版本:
pip install --upgrade git+https://github.com/d-one/nlpeasy
如果您想使用spaCy语言模型,请下载它们(90-200MB),例如
python -m spacy download en_core_web_md
# and/or
python -m spacy download de_core_news_md
如果要使用预训练的FastText-Wordvectors(每个~7GB):
curl -O https://dl.fbaipublicfiles.com/fasttext/vectors-wiki/wiki.en.zip curl -O https://dl.fbaipublicfiles.com/fasttext/vectors-wiki/wiki.de.zip
如果要安装虚拟主机,请使用虚拟主机:
pip install jupyterlab
开发
要在开发模式下安装此模块,即更改文件并重新加载模块:
git clone https://github.com/d-one/nlpeasy
cd nlpeasy
建议使用虚拟环境:
python -m venv venv
source venv/bin/activate
以编辑模式安装版本:
pip install -e .
在Jupyter中,更改文件时可以重新加载代码,如:
%load_extautoreload%autoreload2
特点
- 熊猫管道
- 支持任何扩展-现在包括一些Regex,spaCy,vaderemotation
- 将结果写入ElasticSearch
- 自动生成Kibana仪表板
- 如果没有本地或远程安装,请在Docker中启动Elastic
- Apache许可证2.0
学分
这个包是用Cookiecutter和[audreyr/cookiecutter-pypackage
]https://github.com/audreyr/cookiecutter-pypackage项目模板创建的。在
- 项目
标签: