基于聚类丰富的短长文本分类器

saltclass的Python项目详细描述


|特拉维斯

。|特拉维斯图片:https://travis-ci.com/bagheria/saltclass.svg?token=fYbdQUbpnoucyHyb3fs2&branch=master ……_特拉维斯:https://travis-ci.com/bagheria/saltclass

盐类

saltclass(短文本和长文本分类器)是一个python模块,用于在mit许可下构建文本分类。 该项目于2018年在乌得勒支大学方法与统计系启动。

短文本分类可以简单地定义为:给定一组具有表示d和一组标签c的文档,定义一个函数f,该函数将c的集合中的一个值赋给d中的每个文档。由于短文本的特征是长度短,表示稀疏,我们试图优化d和f,以便在管理和分析ehr文本数据时获得更好的性能。

下图显示了所提出的内部聚类方法的语义流程图。在该框架中,聚类过程是该方法的核心,它通过平滑系统将聚类信息泵送到文本体中,提供文本长度和其他信息。该方法是一种混合技术,利用了不同模块的优点,包括基于词典和主题的方法、平滑方法和聚类信息。

。图片:https://github.com/bagheria/saltclass/blob/master/Architecture.png

安装

通过PIP安装:

$ pip install saltclass
$ pip install --upgrade saltclass

方法概述

。图片:https://github.com/bagheria/saltclass/blob/master/methods.png

示例用法

。代码::python

例1: >>>>进口盐级 >;gt;gt;列车x=[[10,0,0],[0,20,0],[4,13,5]] >>>gt;列车Y=[0,1,1] >;gt;gt;vocab=['统计','医学','犯罪'] >>>gt;object_from_df=saltClass.salt(第x列,第y列,词汇=词汇,语言='en') >;gt;gt;x=[[10,12,0],[14,3,52]] >>>>来自“enrich”的对象(method='kmeans',include_unlabeld=true,unlabeld_matrix=x) >>>>来自数据列的对象(分类器='knn',k=5)

例2: >;gt;gt;来自_df.enrich的对象_(method='lda',include _unlabeled=true,unlabeled _dir='/data/unlabeled/') >>>>来自“df.train”的对象(分类器='nn',alpha=0.01,隐藏层大小=(50,),最大值=10,解算器='adam',激活='relu')

例3: >>>>object_from_file=salt.data_from_dir(train_dir='/train/',language='nl') >>>>来自“enrich”的对象(包括“unlabeld=false”) >>>>来自“df.train”的对象(分类器='SVM',内核='Sigmoid') >>>>来自“df.print_info”的对象

>>> prediction = object_from_df.predict(data_file='second_test.txt')
>>> print(object_from_df.vocabulary)
>>> print(object_from_df.newdata)
>>> print([k for (k, v) in object_from_df.vocabulary.items() if object_from_df.newdata[0][v] != 0])
>>> print(prediction)

依赖关系


saltclass requires:

- Python (>= 3.5)
- NumPy (>= 1.11.0)
- SciPy (>= 0.17.0)
- LDA
- Scikit-learn (>= 0.20.0)
- Matplotlib (>= 3.0)
- Tqdm
- Language_check

欢迎加入QQ群-->: 979659372 Python中文网_新手群

推荐PyPI第三方库


热门话题
java JPA,playframework,在分组之前选择order by   java如何让安卓app在一天中的特定时间做某事   web服务Java restlet文件上传使用符合RFC 5987的apache commons文件上传   如何使用java在一个用C++和Direct9编码的网页中运行应用程序?   允许生成ddl的java Postgres数据库设置   垃圾收集有哪些好的Java编码实践可以帮助Java GC?   java@RestController将表单返回到同一页面但URL不同   java Eclipse:无法将project facet动态Web模块的版本更改为2.3   无迭代器分配的内存管理Java NodeUpplicate集合   java Jackson:使用默认(反)序列化程序   Java:如何将保存在同一路径上的多个文件夹中的最大名称提取到一个文件夹名称都是数字的变量中?   java将二维字符串数组转换为二维整数数组