文本挖掘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
部分信号处理工具箱,emd、wavelet、libsvm、nnet、tftb等等
2023/2/6 20:34:26 35.13MB 案例教程
1
机器学习libsvmsvm支持向量机参考网上教程运用
2017/7/27 6:01:44 622KB 机器学习 libsvm svm
1
先把训练数据写到matlab的矩阵变量里,第一列是label,其他列是相应的训练或测试数据,运行程序即可,注意修改一下程序中的打印命令。
2015/9/8 16:39:13 323B libsvm matlab
1
题目基本要求是对图像能进行自动分类,先构建图库,在百度上搜索就行,但是要留意维数,别太高,否则一般的笔记本受不了。
然后对图像进行特征提取,提取颜色直方图特征。
再将特征转换为多维数组然后按照libsvm的各种要求进行设置就基本ok,在论文中有详细的论述。
1
台湾大学林智仁开辟的libsvm的matlab最新版libsvm-3.21
2019/5/22 12:41:48 851KB ibsvm-3.21
1
matlab实现手写数字及手写字母的识别,通过建立样本库进行模板匹配,内附全代码及相关样本库(已更新升级版,增加了神经网络和libsvm有兴味的可以查看我的下载资源)
2021/7/21 18:43:49 636KB matlab 模式识别 手写 GUI
1
《MATLAB神经网络43个案例分析》源代码&数据《MATLAB神经网络43个案例分析》目录第1章BP神经网络的数据分类——语音特征信号分类第2章BP神经网络的非线性系统建模——非线性函数拟合第3章遗传算法优化BP神经网络——非线性函数拟合第4章神经网络遗传算法函数极值寻优——非线性函数极值寻优第5章基于BP_Adaboost的强分类器设计——公司财务预警建模第6章PID神经元网络解耦控制算法——多变量系统控制第7章RBF网络的回归--非线性函数回归的实现第8章GRNN网络的预测----基于广义回归神经网络的货运量预测第9章离散Hopfield神经网络的联想记忆——数字识别第10章离散Hopfield神经网络的分类——高校科研能力评价第11章连续Hopfield神经网络的优化——旅行商问题优化计算第12章初始SVM分类与回归第13章LIBSVM参数实例详解第14章基于SVM的数据分类预测——意大利葡萄酒种类识别第15章SVM的参数优化——如何更好的提升分类器的功能第16章基于SVM的回归预测分析——上证指数开盘指数预测.第17章基于SVM的信息粒化时序回归预测——上证指数开盘指数变化趋势和变化空间预测第18章基于SVM的图像分割-真彩色图像分割第19章基于SVM的手写字体识别第20章LIBSVM-FarutoUltimate工具箱及GUI版本介绍与使用第21章自组织竞争网络在模式分类中的应用—患者癌症发病预测第22章SOM神经网络的数据分类--柴油机故障诊断第23章Elman神经网络的数据预测----电力负荷预测模型研究第24章概率神经网络的分类预测--基于PNN的变压器故障诊断第25章基于MIV的神经网络变量筛选----基于BP神经网络的变量筛选第26章LVQ神经网络的分类——乳腺肿瘤诊断第27章LVQ神经网络的预测——人脸朝向识别第28章决策树分类器的应用研究——乳腺癌诊断第29章极限学习机在回归拟合及分类问题中的应用研究——对比实验第30章基于随机森林思想的组合分类器设计——乳腺癌诊断第31章思维进化算法优化BP神经网络——非线性函数拟合第32章小波神经网络的时间序列预测——短时交通流量预测第33章模糊神经网络的预测算法——嘉陵江水质评价第34章广义神经网络的聚类算法——网络入侵聚类第35章粒子群优化算法的寻优算法——非线性函数极值寻优第36章遗传算法优化计算——建模自变量降维第37章基于灰色神经网络的预测算法研究——订单需求预测第38章基于Kohonen网络的聚类算法——网络入侵聚类第39章神经网络GUI的实现——基于GUI的神经网络拟合、模式识别、聚类第40章动态神经网络时间序列预测研究——基于MATLAB的NARX实现第41章定制神经网络的实现——神经网络的个性化建模与仿真第42章并行运算与神经网络——基于CPU/GPU的并行神经网络运算第43章神经网络高效编程技巧——基于MATLABR2012b新版本特性的探讨
2020/5/22 18:19:56 11.78MB 神经网络
1
模式辨认课程作业,利用pca与svm进行人脸辨认。
matlab与libsvm环境
2017/7/16 13:37:05 2.94MB 人脸识别
1
libsvm-支持多类别分类的svm工具箱(matlab).它扩展了matlab自带的svm分类器的功能(只能完成2分类),可配合DeepLearnToolbox运用
2016/5/18 5:34:11 2.7MB libsvm svm工具箱
1
共 69 条记录 首页 上一页 下一页 尾页
在日常工作中,钉钉打卡成了我生活中不可或缺的一部分。然而,有时候这个看似简单的任务却给我带来了不少烦恼。 每天早晚,我总是得牢记打开钉钉应用,点击"工作台",再找到"考勤打卡"进行签到。有时候因为工作忙碌,会忘记打卡,导致考勤异常,影响当月的工作评价。而且,由于我使用的是苹果手机,有时候系统更新后,钉钉的某些功能会出现异常,使得打卡变得更加麻烦。 另外,我的家人使用的是安卓手机,他们也经常抱怨钉钉打卡的繁琐。尤其是对于那些不太熟悉手机操作的长辈来说,每次打卡都是一次挑战。他们总是担心自己会操作失误,导致打卡失败。 为了解决这些烦恼,我开始思考是否可以通过编写一个全自动化脚本来实现钉钉打卡。经过一段时间的摸索和学习,我终于成功编写出了一个适用于苹果和安卓系统的钉钉打卡脚本。
2024-04-09 15:03 15KB 钉钉 钉钉打卡