针对中文短文本篇幅较短、特征稀疏性等特征,提出了一种基于隐含狄利克雷分布模型的特征扩展的短文本分类方法。
在短文本原始特征的基础上,利用LDA主题模型对短文本进行预测,得到对应的主题分布,把主题中的词作为短文本的部分特征,并扩充到原短文本的特征中去,最后利用SVM分类方法进行短文本的分类。
实验表明,该方法在性能上与传统的直接使用VSM模型来表示短文本特征的方法相比,对不同类别的短文本进行分类,都有不同程度的提高与改进,对于短文本进行补充LDA特征信息的方法是切实可行的。
2024/7/6 6:33:32 1.14MB LDA 短文本分类
1
收到一些国内外朋友的来信,咨询关于容积卡尔曼滤波的问题(CKF),大家比较疑惑的应该就是generator或G-orbit的概念。
考虑到工作以后,重心必然转移,不可能再像现在这样详细的回答所有人的问题,更不可能再帮大家改论文、写(或改)代码了,请各位谅解!在此,上传一个CKF和五阶CKF用于目标跟踪的示例代码,代码中包含详细的注释,希望对大家以后的学习和研究有所帮助!此代码利用C++对五阶CKF的第二G-轨迹进行了封装(Perms.exe),能理解最好,如果无法理解,也无须深究其具体构造方法!可执行文件底层是用字符串+递归算法实现的,理论上可以应用于任意维模型。
但考虑到递归算法可能存在的栈溢出,重复压栈出栈带来的时间消耗等问题,我们利用矩阵的稀疏性和群的完全对称性,并通过分次调用,来尽可能减少栈的深度,提高计算速度。
容积点一次生成后,可以一直使用,通过对50维G-轨迹的生成速度(CoreT6600@2.2GHz)进行测试,包含数据读写在内的速度约为1.5秒,速度尚可。
而目前为止,本人尚未遇到达到甚至超过50维的系统,因此,暂时不作算法层面的优化。
注意:Perms.exe可以用于任意维模型,将可执行文件复制至工作目录下,调用时选择N/n,并输入你的模型维数,即可生成所需的第二G-轨迹。
如果无法理解相关的概念,请参考示例代码,并记住如何使用即可~~~相关理论基础及所用模型,请参考以下文献:References(youmayciteoneofthearticlesinyourpaper):[1]X.C.Zhang,C.J.Guo,"CubatureKalmanfilters:Derivationandextension,"ChinsesPhysicsB,vol.22,no.12,128401,DOI:10.1088/1674-1056/22/12/128401[2]X.C.Zhang,Y.L.Teng,"AnewderivationofthecubatureKalmanfilters,"AsianJournalofControl,DOI:10.1002/asjc.926[3]X.C.Zhang,"Cubatureinformationfiltersusinghigh-degreeandembeddedcubaturerules,"Circuits,Systems,andSignalProcessing,vol.33,no.6,pp.1799-1818,DOI:10.1007/s00034-013-9730-0
2024/5/26 2:39:13 239KB CKF 五阶CKF 目标跟踪
1
在异构信息网络下往往会产生纷繁复杂的数据,这些数据常用一种被称为张量的新的形式来表示。
但是由于这些数据中缺失值较多,存在一定的稀疏性,因此需要对张量进行分解,恢复缺失值,找出多元数据之间潜在的关系。
张量分解是推荐系统中一种重要的方法,在推荐系统中应用张量分解,可以挖掘出潜在关系,给用户带来更好的推荐体验。
笔者以数据挖掘为引,研究了张量分解及其在推荐系统中的应用,并根据当下的研究热点问题提出了未来张量分解在推荐领域的应用方向和发展趋势。
2024/3/13 10:14:54 976KB 张量分解 推荐系统
1
针对短文本特征稀疏、噪声大等特点,提出一种基于LDA高频词扩展的方法,通过抽取每个类别的高频词作为向量空间模型的特征空间,用TF-IDF方法将短文本表示成向量,再利用LDA得到每个文本的隐主题特征,将概率大于某一阈值的隐主题对应的高频词扩展到文本中,以降低短文本的噪声和稀疏性影响。
实验证明,这种方法的分类性能高于常规分类方法
2023/12/20 19:27:30 624KB LDA 短文本分类
1
本文在图像稀疏性先验的基础上#引入局部AC模型和非局部自相似性作为图像额外的先验信息#提出了非局部正则化的[+图像重建模型#并给出了相应的数值求解算法$
2023/10/26 17:15:56 1.41MB 非局部均值
1
梯度稀疏性先验图像matting算法
2023/9/12 9:11:15 948KB 研究论文
1
文本挖掘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
有关最近很火的稀疏性统计学习,是Hastie教授的书,完好pdf版本
2020/8/11 1:05:28 10.31MB 机器学习 稀疏性
1
传统的去噪方法往往假设含噪图像的有用信息处在低频区域,而噪声信息处在高频区域,从而基于中值滤波、Wiener滤波、小波变换等方法实现图像去噪,而实际上这种假设并不总是成立的。
基于图像的稀疏表示,近几年来研讨者们提出了基于过完备字典稀疏表示的图像去噪模型,其基本原理是将图像的稀疏表示作为有用信息,将逼近残差视为噪声。
利用K-SVD算法求得基于稀疏和冗余的训练字典,同时针对K-SVD算法仅适合处理小规模数据的局限,通过定义全局最优来强制图像局部块的稀疏性。
文献[28]提出了稀疏性正则化的图像泊松去噪算法,该算法采用log的泊松似然函数作为保真项,用图像在冗余字典下稀疏性约束作为正则项,从而取得更好的去噪效果。
2022/9/4 0:28:02 2.07MB 稀疏 图像
1
本文考虑采用平滑L0正则化(BGSL0)的批梯度方法进行训练和修剪前馈神经网络。
我们展示了为什么BGSL0可以产生稀疏的权重,这对于修剪网络。
我们证明了在温和条件下BGSL0的弱收敛和强收敛。
还获得了误差函数在训练过程中递减的单调性。
两个例子是用来证明理论分析并显示BGSL0的稀疏性比三个典型Lp正则化更好方法。
2015/1/7 16:35:10 494KB 研究论文
1
在日常工作中,钉钉打卡成了我生活中不可或缺的一部分。然而,有时候这个看似简单的任务却给我带来了不少烦恼。 每天早晚,我总是得牢记打开钉钉应用,点击"工作台",再找到"考勤打卡"进行签到。有时候因为工作忙碌,会忘记打卡,导致考勤异常,影响当月的工作评价。而且,由于我使用的是苹果手机,有时候系统更新后,钉钉的某些功能会出现异常,使得打卡变得更加麻烦。 另外,我的家人使用的是安卓手机,他们也经常抱怨钉钉打卡的繁琐。尤其是对于那些不太熟悉手机操作的长辈来说,每次打卡都是一次挑战。他们总是担心自己会操作失误,导致打卡失败。 为了解决这些烦恼,我开始思考是否可以通过编写一个全自动化脚本来实现钉钉打卡。经过一段时间的摸索和学习,我终于成功编写出了一个适用于苹果和安卓系统的钉钉打卡脚本。
2024-04-09 15:03 15KB 钉钉 钉钉打卡