文本挖掘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
数据结构上机实验指导源代码李春葆版//文件名:exp1-1.cpp#include#includeboolprime(intn)//判断正整数n能否为素数{inti;for(i=2;i<=(int)sqrt(n);i++)if(n%i==0)returnfalse;//若n不是素数,则退出并返回falsereturntrue;}
2023/2/4 2:55:02 273KB 上机实验指导
1
第三方路测分析软件TEMS工具的引见和使用说明,包含具体的步骤
2023/1/30 0:35:19 3.02MB TEMS
1
朱文杰编著的《S7-1200PLC编程与应用》分7章引见西门子公司S7—1200型可编程控制器的编程及应用。
第1章综述了PLC的基础知识、基本结构和工作原理,以及S7—1200PLC的特点和安装;
第2章细述了S7—1200PLC及其硬件模块的特性;
第3章引见了编程软件STEP7Basic的安装、组态与使用;
第4章详解了S7—1200PLC的编程指令;
第5章解说了S7—1200PLC的编程语言和组态;
第6章讲述了构建PROFINET通信网络的若干方式;
第7章给出了S7—1200PLC应用控制设计实例,尤其是水轮机组的PLC控制实例,供读者参考,举一反三。
本书遵循学习规律,循序渐进、结构合理,概念准确,便于消化吸收,从而应用于工程实践。
本书可作为高等院校电气工程及自动化应用电子、机电一体化、工业自动化等本科及研究生自动化专业的课程教材和毕业设计指导教材,也可供相关工程技术人员、电气工程师自学参考。
2023/1/22 12:48:58 102.92MB S7-1200 PLC
1
ACE是一个重量级的C++网络库。
本书从构架模式、编程示例和源代码三个方面详细地引见了ACE的Reactor、ServiceConfigurator.Task、Acceptor_Connector、Proactor和Streams框架。
书中涉及10多种Gof经典设计模式,对每个框架的的设计和实现进行了细致的分析。
通过对本书的学习,读者不仅可以掌握部分构架模式的理论知识,还可以从ACE的源代码中学习到很多框架的实现方法。
这些理论知识和实现方法,对在实际的项目和产品中构建软件框架具有指导意义。
对于希望理解如何设计和实现软件框架的开发人员,以及普通的程序员和架构师,本书都具有很好的参考价值。
2023/1/16 14:18:42 14.6MB ace j技术内幕
1
论文撰写规范,毕业设计(论文)是实现学生培养目标的重要教学环节,其质量是衡量教学水平、学生毕业和学位资历认证的重要依据。
毕业设计(论文)撰写是本科生培养过程的基本训练之一,必须按照确定的规范认真执行。
指导教师应加强指导,严格把关。
2023/1/15 23:37:57 253KB 规范
1
内容简介本书论及了嵌入式工程师职业生涯的方方面面。
首先分析了嵌入式工程师必备的技能条件,讲述了掌握这些技能的学习途径。
然后结合实际讨论了设计小型嵌入式系统时经济使用的自底向上方法和设计大型嵌入式系统时经常使用的自顶向下方法。
最后讲述了嵌入式工程师的3种职业道路—做自由职业者、为小公司工作以及为大公司工作,分别讨论了每种职业道路的优热和风险,为嵌入式工程师的职业选择提供了理论指导和借鉴参考。
本书不仅适合各层次嵌入式技术人员阅读,而且对于想要成为嵌入式工程师的其他职位人员,甚至是在校学生,都具有实际的指导意义。
目录第1章引言11.1关于本书11.2什么是嵌入式工程师2第2章学习与教育42.1进入嵌入式工程领域的传统教育模式42.2非传统教育模式进入嵌入式工程领域92.3如果想编写嵌入式软件,那么至少要学习多少电子学知识182.4教育方面的圈套、死胡同,以及必须规避的培训骗局212.5必需掌握的实践技能25第3章自学自底向上的设计方法(小型嵌入式系统)283.1目标读者283.2intel8051微控制器及其变种313.3atmelavr微控制器393.4timsp430微控制器463.5microchippicmicro微控制器523.6满足特殊需求的异常架构微控制器583.7我应该学习什么编程语言呢?c++、c、汇编语言在小型嵌入式系统中613.8防盗版开发工具简介653.9基于avr微控制器和免费工具的8位嵌入式项目实例67第4章自学自顶向下的设计方法(大型嵌入式系统)93.4.1目标读者934.2嵌入式x86解决方案944.3arm处理器1034.4powerpc1124.5linux操作系统1144.6ecos操作系统1214.7面向大型嵌入式系统开发,应该学习什么编程语言1234.8处理器选择的最后建议124第5章做自由职业者1275.1你适合做自由职业者吗?其中的风险与好处1275.2从兼职工作到自由职业者——记账、纳税与工作量1285.3寻找并维护客户的方法1305.4迭代式项目:无休无止的噩梦1335.5适当地为自己的服务定价1365.6为自己建立良好的工作实践1385.7不仅仅是握手:合同的重要性140第6章在小公司工作1436.1分析自己的目标:小公司的优势和风险1436.2如何获得一份工作1446.3小公司里的责任和压力1466.4在小公司里的个人原动力1486.5严格管理有限的资源1496.6任务细目分类:一周的典型工作153第7章在大公司工作1547.1分析自己的目标:大公司的优势与风险1547.2如何获得一份工作1557.3全球化:项目外包与临时工作签证1577.4管理规程与个人:不要触犯了公司的管理规程1627.5管理与营销的关系1667.6任务细目分类:一周常见工作168第8章结束语170
2023/1/13 6:46:11 15.84MB Linux 嵌入式 工程师 必知必会
1
唯一的一份在windows上进行Siamese网络训练和预测的指导协助你少走弯路
2023/1/13 6:05:08 182KB Siamese; 深度学习
1
面对愈发严峻的安全情势,企业不仅要严防精心策划的外部攻击,也不能排除来自内部的安全隐患。
与此同时,企业安全并非单点安全,而要兼顾到网络、系统、应用、人员、安全管理和运营等方方面面。
如何做好企业安全架构与设计,采用哪些安全策略与产品,成为企业安全建设重点。
本指南针对企业安全最新现状和安全产品发展状况,开展深入调查,并在安全专家和顾问团队的指导下,构建企业威胁应对流程模型,结合理论和实践进行分析,形成《企业安全威胁统一应对指南》,旨在为企业安全建设提供从理论到实践的参考。
1
软考高级的系统分析师的资源包。
包括系统分析师考试全程指导。
2007-2018历年真题及解析,还有单独的案例分析和论文分析案例。
2017/4/16 21:11:35 179.08MB 软考 系统分析师
1
共 1000 条记录 首页 上一页 下一页 尾页
在日常工作中,钉钉打卡成了我生活中不可或缺的一部分。然而,有时候这个看似简单的任务却给我带来了不少烦恼。 每天早晚,我总是得牢记打开钉钉应用,点击"工作台",再找到"考勤打卡"进行签到。有时候因为工作忙碌,会忘记打卡,导致考勤异常,影响当月的工作评价。而且,由于我使用的是苹果手机,有时候系统更新后,钉钉的某些功能会出现异常,使得打卡变得更加麻烦。 另外,我的家人使用的是安卓手机,他们也经常抱怨钉钉打卡的繁琐。尤其是对于那些不太熟悉手机操作的长辈来说,每次打卡都是一次挑战。他们总是担心自己会操作失误,导致打卡失败。 为了解决这些烦恼,我开始思考是否可以通过编写一个全自动化脚本来实现钉钉打卡。经过一段时间的摸索和学习,我终于成功编写出了一个适用于苹果和安卓系统的钉钉打卡脚本。
2024-04-09 15:03 15KB 钉钉 钉钉打卡