文本挖掘tmSVM开源项目集成libSVM和liblinear包含Python和Java两种版本带PDF源码参考文档简介文本挖掘无论在学术界还是在工业界都有很广泛的应用场景。
而文本分类是文本挖掘中一个非常重要的手段与技术。
现有的分类技术都已经非常成熟,SVM、KNN、DecisionTree、AN、NB在不同的应用中都展示出较好的效果,前人也在将这些分类算法应用于文本分类中做出许多出色的工作。
但在实际的商业应用中,仍然有很多问题没有很好的解决,比如文本分类中的高维性和稀疏性、类别的不平衡、小样本的训练、Unlabeled样本的有效利用、如何选择最佳的训练样本等。
这些问题都将导致curveofdimension、过拟合等问题。
这个开源系统的目的是集众人智慧,将文本挖掘、文本分类前沿领域效果非常好的算法实现并有效组织,形成一条完整系统将文本挖掘尤其是文本分类的过程自动化。
该系统提供了Python和Java两种版本。
主要特征该系统在封装libsvm、liblinear的基础上,又增加了特征选择、LSA特征抽取、SVM模型参数选择、libsvm格式转化模块以及一些实用的工具。
其主要特征如下:封装并完全兼容*libsvm、liblinear。
基于Chi*的featureselection见feature_selection基于LatentSemanticAnalysis的featureextraction见feature_extraction支持Binary,Tf,log(tf),Tf*Idf,tf*rf,tf*chi等多种特征权重见feature_weight文本特征向量的归一化见Normalization利用交叉验证对SVM模型参数自动选择。
见SVM_model_selection支持macro-average、micro-average、F-measure、Recall、Precision、Accuracy等多种评价指标见evaluation_measure支持多个SVM模型同时进行模型预测采用python的csc_matrix支持存储大稀疏矩阵。
引入第三方分词工具自动进行分词将文本直接转化为libsvm、liblinear所支持的格式。
使用该系统可以做什么对文本自动做SVM模型的训练。
包括Libsvm、Liblinear包的选择,分词,词典生成,特征选择,SVM参数的选优,SVM模型的训练等都可以一步完成。
利用生成的模型对未知文本做预测。
并返回预测的标签以及该类的隶属度分数。
可自动识别libsvm和liblinear的模型。
自动分析预测结果,评判模型效果。
计算预测结果的F值、召回率、准确率、Macro,Micro等指标,并会计算特定阈值、以及指定区间所有阈值下的相应指标。
分词。
对文本利用mmseg算法对文本进行分词。
特征选择。
对文本进行特征选择,选择最具代表性的词。
SVM参数的选择。
利用交叉验证方法对SVM模型的参数进行识别,可以指定搜索范围,大于大数据,会自动选择子集做粗粒度的搜索,然后再用全量数据做细粒度的搜索,直到找到最优的参数。
对libsvm会选择c,g(gamma),对与liblinear会选择c。
对文本直接生成libsvm、liblinear的输入格式。
libsvm、liblinear以及其他诸如weka等数据挖掘软件都要求数据是具有向量格式,使用该系统可以生成这种格式:labelindex:valueSVM模型训练。
利用libsvm、liblinear对模型进行训练。
利用LSA对进行FeatureExtraction*,从而提高分类效果。
开始使用QuickStart里面提供了方便的使用指导如何使用该系统可以在命令行(Linux或cmd中)中直接使用,也可以在程序通过直接调用源程序使用。
在程序中使用。
#将TMSVM系统的路径加入到Python搜索路径中importsyssys.path.insert(0,yourPath+"\tmsvm\src")importtms#对data文件夹下的binary_seged.train文件进行训练。
tms.tms_train(“../data/binary_seged.train”)#利用已经训练好的模型,对对data文件夹下的binary_seged.test文件预测tms.tms_predict(“../data/binary_seged.test”,”../model/tms.config”)#对预测的结果进行分析,评判模型的效果tms.tms_analysis(“../tms.result”)在命令行中调用#对data文件夹下的binary_seged.train文件进行训练。
$pythonauto_train.py[options]../data/binary_seged.train#利用已经训练好的模型,对对data文件夹下的binary_seged.test文件预测pythonpredict.py../data/binary_seged.train../model/tms.config#对预测的结果进行分析,评判模型的效果$pythonresult_anlaysis.py../tms.result上面的调用方式都是使用系统中默认的参数,更具体、灵活的参数见程序调用接口输入格式labelvalue1[value2]其中label是定义的类标签,如果是binaryclassification,建议positive样本为1,negative样本为-1。
如果为multi-classification。
label可以是任意的整数。
其中value为文本内容。
label和value以及value1和value2之间需要用特殊字符进行分割,如”\t”模型输出模型结果会放在指定保存路径下的“model”文件夹中,里面有3个文件,默认情况下为dic.key、tms.model和tms.config。
其中dic.key为特征选择后的词典;
tms.model为训练好的SVM分类模型;tms.config为模型的配置文件,里面记录了模型训练时使用的参数。
临时文件会放在“temp”文件夹中。
里面有两个文件:tms.param和tms.train。
其中tms.param为SVM模型参数选择时所实验的参数。
tms.train是供libsvm和liblinear训练器所使用的输入格式。
源程序说明src:即该系统的源代码,提供了5个可以在Linux下可以直接调用的程序:auto_train.py、train.py、predict.py为在Linux下通过命令行调用的接口。
tms.py为在程序中调用的主文件,直接通过importtms即可调用系统的所有函数。
其他文件为程序中实现各个功能的文件。
lsa_src:LSA模型的源程序。
dependence:系统所依赖的一些包。
包括libsvm、liblinear、Pymmseg在Linux32位和64位以及windows下的支持包(dll,so文件)。
tools:提供的一些有用的工具,包括result_analysis.py等。
java:java版本的模型预测程序,项目重要更新日志2012/09/21针对linux下的bug进行修正。
重新生成win和linux版本的。
2012/03/08增加stem模块,并修正了几个Bug。
2011/11/22tmsvm正式发布。
联系方式邮箱:zhzhl202@163.comThanks本系统引用了libsvm、liblinear的包,非常感谢Chih-JenLin写出这么优秀的软件。
本系统还引用了Pymmseg,非常感谢pluskid能为mmseg写出Python下可以直接使用的程序从最初的想法萌生到第一版上线,中间试验了很多算法,最终因为效果不好删掉了很多代码,在这期间得到了许多人的帮助,非常感谢杨铮、江洋、敏知、施平等人的悉心指导。
特别感谢丽红一直以来的默默支持。
2023/2/8 18:37:14 3.39MB 文本挖掘 tmSVM libSVM 支持向量机
1
自己看了Steganalysis+by+Subtractive+Pixel+Adjacency+Matrix+之后总结的,话糙理不糙。
2020/10/1 19:24:34 100KB spam
1
自己看了Steganalysis+by+Subtractive+Pixel+Adjacency+Matrix+之后总结的,话糙理不糙。
2020/4/21 20:01:47 100KB spam
1
网络上的Matrix运算库繁多,但有很多功能不够完整,或缺少正文,给使用者带来不少麻烦。
该函数库是我搜集到的比较全面的矩阵运算库,而且附带引自清华大学bbs上的函数功能正文,使用方便。
内容包括:Matrix.cpp执行文件Matrix.h头文件【matrix头文件声明正文】.txt函数正文说明文件亲测vs2010下可用如果涉及到大型稀疏矩阵的运算可以参照我的另一个suitesparse资源
2018/1/9 16:05:26 16KB 矩阵运算 C++开发 Matrix
1
一个综合演示Matrix和ColorMatrix的例子(https://blog.csdn.net/tanmx219/article/details/81298671)
2019/5/2 23:57:55 618KB ColorMatrix Matrix Android
1
里面有详细丰富的关于矩阵运算的函数,是一个特别弱小的矩阵运算库!
2015/4/20 18:54:07 95KB C#矩阵运算
1
library(arules)library(Matrix)library(arules)library(arulesViz)library(grid)library(arulesViz)data('SunBai')summary(SunBai)#inspect函数查看SunBai数据集的前5次买卖记录inspect(SunBai[1:5])#itemFrequency()函数可以查看商品的买卖比例itemFrequency(SunBai[,1:3])#support=0.1,表示支持度至少为0.1itemFrequencyPlot(SunBai,support=0.1)#topN=20,表示支持度排在前20的商品itemFrequencyPlot(SunBai,topN=20)#利用transactionInfo函数查看前六数据head(transactionInfo(SunBai))
2020/3/15 10:06:43 835B R语言 关联规则 apriori算法
1
此包有以下资源:dom4jAPIDOM4J使用简介dom4j(Version1[1].6.1)快速入门Matrix-与Java共舞-Dom4j编码问题彻底解决使用dom4j解析XML
2016/7/18 16:31:01 1.32MB dom4j API 中文 帮助
1
OracleEPM最新版本相关撑持矩阵
2018/6/17 8:10:18 201KB hyperion
1
《GDI+图形程序设计》含详细目录,便于学习。
该书是为.NET开发人员介绍如何编写Windows和Web图形应用程序的指南用书。
通过大量详尽的实例,本书使有经验的程序员可以更深入地理解在.NETFramework类库中定义和整个GDI+API。
  本书从介绍GDI+Windows图形程序设计的基本知识开始,其核心是对一些实际问题的指导,包括如何使用WindowsForms及如何优化GDI+的功能。
本书通过一些例子来说明如何开发真实世界的工具,如GDI+Painter、GDI+Editro、ImageViewer和ImageAnimator等。
另外,作者还给出了大量使用C#语言编写的可重用示例代码,读者可从网上下载完整的C#和VisualBasic.NET源代码,并可通过这些源代码查看书中各图的彩色效果第1章GDI+——下一代图形接口1.1理解GDI+1.2探索GDI+的功能1.3从GDI的角度学习GDI+1.4.NET中的GDI+名称空间和类总结第2章第一个GDI+应用程序2.1绘制表面2.2坐标系统2.3指南——第一个GDI+应用程序2.4一些基本的GDI+对象总结第3章Graphics类3.1Graphics类的属性3.2Graphics类的方法3.3GDI+Painter应用程序3.4绘制饼图总结第4章使用画笔和钢笔4.1理解和使用画笔4.2在GDI+中使用钢笔4.3使用钢笔进行变形4.4使用画笔进行变形4.5系统钢笔和系统画笔4.6一个真实世界的例子——在GDI+Painter应用程序中添加颜色、钢笔和画笔总结第5章颜色、字体和文本5.1访问Graphics对象5.2使用颜色5.3使用字体5.4使用文本和字符串5.5渲染文本的质量和功能5.6高级版式5.7一个简单的文本编辑器5.8文本变形总结第6章矩形和区域6.1Rectangle结构体6.2Region类6.3区域和剪辑6.4剪辑区域示例6.5区域、非矩形窗体和控件总结第7章图像处理7.1光栅图像和矢量图像7.2使用图像7.3操作图像7.4在GDI+中播放动画7.5使用位图7.6使用图标7.7扭曲图像7.8绘制透明的图形对象7.9查看多个图像7.10使用图片框查看图像7.11使用不同的大小保存图像总结第8章高级图像处理8.1渲染位图的一部分8.2使用图元文件8.3使用颜色对象应用颜色映射8.4图像属性和ImageAttributes类8.5编码器参数与图像格式总结第9章高级二维图形9.1线帽和线条样式9.2理解并使用图形路径9.3图形容器9.4读取图像的元数据9.5混合9.6Alpha混合9.7其他高级二维主题总结第10章变形10.1坐标系统10.2变形的类型10.3Matrix类与变形10.4Graphics类与变形10.5全局变形、局部变形和复合变形10.6图像变形10.7颜色变形和颜色矩阵10.8图像处理中的矩阵操作10.9文本变形10.10变形顺序的重要性总结第11章打印11.1简要地回顾使用MicrosoftWindows进行打印的历史11.2打印过程概述11.3第一个打印应用程序11.4打印机的设置11.5PrintDocument和Print事件11.6打印文本11.7打印图形11.8打印对话框11.9自定义页面设置11.10打印多个页面11.11页边打印——注意事项11.12进入细节——自定义控制和打印控制器总结第12章开发GDI+Web应用程序12.1创建第一个ASP.NETWeb应用程序12.2第一个图形Web应用程序12.3绘制简单的图形12.4在Web上绘制图像12.5绘制曲线图12.6绘制饼图总结第13章GDI+的最佳实践及功能技术13.1理解渲染过程13.2双缓存和无抖动绘图13.3理解SetStyle方法13.4绘图过程的质量与功能总结第14章GDI互操作性14.1在受控环境中使用GDI14.2在受控代码中使用GDI的注意事项总结第15章其他GDI+示例15.1设计交互式GUI应用程序15.2绘制具有形状的窗体和Windows控件15.3为绘制的图像添加版权信息15.4从流或数据库读取及写入图像15.5创建自绘制的列表控件总结附录A.NE
2020/4/16 11:08:46 100.47MB 111
1
共 45 条记录 首页 上一页 下一页 尾页
在日常工作中,钉钉打卡成了我生活中不可或缺的一部分。然而,有时候这个看似简单的任务却给我带来了不少烦恼。 每天早晚,我总是得牢记打开钉钉应用,点击"工作台",再找到"考勤打卡"进行签到。有时候因为工作忙碌,会忘记打卡,导致考勤异常,影响当月的工作评价。而且,由于我使用的是苹果手机,有时候系统更新后,钉钉的某些功能会出现异常,使得打卡变得更加麻烦。 另外,我的家人使用的是安卓手机,他们也经常抱怨钉钉打卡的繁琐。尤其是对于那些不太熟悉手机操作的长辈来说,每次打卡都是一次挑战。他们总是担心自己会操作失误,导致打卡失败。 为了解决这些烦恼,我开始思考是否可以通过编写一个全自动化脚本来实现钉钉打卡。经过一段时间的摸索和学习,我终于成功编写出了一个适用于苹果和安卓系统的钉钉打卡脚本。
2024-04-09 15:03 15KB 钉钉 钉钉打卡