查看原文
其他

【Github】TextCluster:短文本聚类预处理模块 Short text cluster

RandyPen AINLP 2020-10-22

推荐Github上一个NLP相关的项目:RandyPen/TextCluster

项目地址,阅读原文可以直达,欢迎参与和Star:
https://github.com/RandyPen/TextCluster

这个项目的作者是AINLP交流群里的昭鸣同学,该项目开源了一个短文本聚类工具,内存友好,速度不错,还不用尝试隐变量个数,欢迎使用。



以下来自该项目介绍页,点击阅读原文可以直达相关资源链接。





短文本聚类

项目介绍

短文本聚类是常用的文本预处理步骤,可以用于洞察文本常见模式、分析设计语义解析规范等。本项目实现了内存友好的短文本聚类方法。

依赖库

pip install tqdm jieba

使用方法

python cluster.py --infile ./data/infile \
--output ./data/output

具体参数设置可以参考cluster.py文件内_get_parser()函数参数说明,包含设置分词词典、停用词、匹配采样数、匹配度阈值等。

文件路径

TextCluster
| README.md
| LICENSE
| cluster.py 主要执行程序
|
|------utils 公共功能模块
| | __init__.py
| | segmentor.py 分词器封装
| | similar.py 相似度计算函数
| | utils.py 文件处理模块
|
|------data
| | infile 默认输入文本路径,用于测试中文模式
| | infile_en 默认输入文本路径,用于测试英文模式
| | seg_dict 默认分词词典
| | stop_words 默认停用词路径

注:本方法仅面向短文本,长文本聚类可根据需求选用SimHashLDA等其他算法。

Text Cluster

Introduction

Text cluster is a normal preprocess method to analysis text feature. This project implements a memory friendly method for short text cluster. For long text, it will be preferable to choose SimHash or LDA or others according to demand.

Requirements

pip install tqdm spacy

Usage

python cluster.py --infile ./data/infile_en \
--output ./data/output \
--lang en

File Structure

TextCluster
| README.md
| LICENSE
| cluster.py main excutable function
|
|------utils utilities
| | __init__.py
| | segmentor.py tokenizer wrapper
| | similar.py similarity calculator
| | utils.py file process module
|
|------data
| | infile default input file path, to test Chinese mode
| | infile_en default input file path, to test English mode
| | seg_dict default tokenizer dict path
| | stop_words default stop words path

Other Language

For other specific language, modify tokenizer wrapper in ./utils/segmentor.py.




推荐阅读


BERT 的演进和应用


BERT系列文章汇总导读


BERT 瘦身之路:Distillation,Quantization,Pruning


BERT论文笔记


关于AINLP


AINLP 是一个有趣有AI的自然语言处理社区,专注于 AI、NLP、机器学习、深度学习、推荐算法等相关技术的分享,主题包括文本摘要、智能问答、聊天机器人、机器翻译、自动生成、知识图谱、预训练模型、推荐系统、计算广告、招聘信息、求职经验分享等,欢迎关注!加技术交流群请添加AINLP君微信(id:AINLP2),备注工作/研究方向+加群目的。


    您可能也对以下帖子感兴趣

    文章有问题?点此查看未经处理的缓存