【文本分类】基于改进TF-IDF特征的中文文本分类系统

简介: 【文本分类】基于改进TF-IDF特征的中文文本分类系统

摘要:改进TFIDF,提出相似度因子,提高了文本分类准确率。

参考文献:[1]但唐朋,许天成,张姝涵.基于改进TF-IDF特征的中文文本分类系统[J].计算机与数字工程,2020,48(03):556-560.

   😮 最近看了许多有关机器学习的文本分类改进,有一部分论文写的非常差劲,文不知所以,论文中的公式站不住脚,根本无法代码实现,一度使我怀疑是不是自己出了问题。现在已经往基于深度学习的文本分类上转了。

一、引言


  采用 one-hot模型进行文本向量化操作,并利用TF-IDF策略进行向量维度的权重计算。其后对传统TF-IDF策略进行改进并联合基于SVM模型机器学习算法完成自动化文本分类系统的设计。

二、基础算法


2.1、TF-IDF算法【词频-逆文档频】


  可以参考上一篇博客【文本分类】基于类信息的TF-IDF权重分析与改进

2.2、改进算法


  传统的TF-IDF算法忽略了相似词对文本分类的影响。[例如,经过训练得到特征词"自然语言处理"对标签"文本分类"有很大贡献度,那么"NLP"作为与"自然语言处理"在某种关系R下的相似词,也应该对标签"文本分类"有很大贡献度]。

 论文提出了对于两个特征词x、y,计算它们的相似度的方法:

image.png

其中x、y的shape为(1,n),n为数据集中文本数量。x[i]的含义是特征词x在第i篇文档的频数。

  得到每个特征之间的相似度关系之后,计算相似度因子:

image.png

其中,P表示特征词t在某一个文本d中的频数,Q表示在文本d中与特征词t相似的各个特征的频数和,U是文本d中所有特征的频数和。

  最终,改进的TFIDF的公式为:

image.png

三、代码实验


3.1、实验思路


  改进TFIDF算法中存在的参数为:【特征维数相似度大小

  通过调整实验参数,来观察改进TFIDF算法与普通TFIDF算法文本分类准确率之差

3.2、数据集


  数据来源于 https://github.com/cystanford/text_classification 。数据集共包含四个类别,分别为“女性”,“体育”,“文学”,“校园”,原始数据集已经划分了测试集和训练集,并给出了停用词文档。

3.3、实验结果


  5折交叉检验:

image.png

image.png

image.png

image.png

相关文章
|
机器学习/深度学习 自然语言处理 PyTorch
PyTorch应用实战六:利用LSTM实现文本情感分类
PyTorch应用实战六:利用LSTM实现文本情感分类
375 0
|
6月前
|
机器学习/深度学习 API 异构计算
7.1.3.2、使用飞桨实现基于LSTM的情感分析模型的网络定义
该文章详细介绍了如何使用飞桨框架实现基于LSTM的情感分析模型,包括网络定义、模型训练、评估和预测的完整流程,并提供了相应的代码实现。
|
6月前
|
机器学习/深度学习 自然语言处理 算法
7.1.3、使用飞桨实现基于LSTM的情感分析模型
该文章介绍了如何使用飞桨(PaddlePaddle)实现基于长短时记忆网络(LSTM)的情感分析模型,包括数据处理、网络定义、模型训练、评估和预测的详细步骤。
|
9月前
|
自然语言处理 数据可视化 数据安全/隐私保护
R语言文本挖掘tf-idf,主题建模,情感分析,n-gram建模研究
R语言文本挖掘tf-idf,主题建模,情感分析,n-gram建模研究
|
机器学习/深度学习 数据采集 自然语言处理
【Deep Learning A情感文本分类实战】2023 Pytorch+Bert、Roberta+TextCNN、BiLstm、Lstm等实现IMDB情感文本分类完整项目(项目已开源)
亮点:代码开源+结构清晰+准确率高+保姆级解析 🍊本项目使用Pytorch框架,使用上游语言模型+下游网络模型的结构实现IMDB情感分析 🍊语言模型可选择Bert、Roberta 🍊神经网络模型可选择BiLstm、LSTM、TextCNN、Rnn、Gru、Fnn共6种 🍊语言模型和网络模型扩展性较好,方便读者自己对模型进行修改
709 0
|
9月前
|
机器学习/深度学习 自然语言处理 算法
基于TF-IDF+KMeans聚类算法构建中文文本分类模型(附案例实战)
基于TF-IDF+KMeans聚类算法构建中文文本分类模型(附案例实战)
902 1
|
数据采集 自然语言处理 开发工具
fasttext实现文本分类
fasttext实现文本分类
353 0
|
9月前
|
机器学习/深度学习 PyTorch 算法框架/工具
PyTorch搭建循环神经网络(RNN)进行文本分类、预测及损失分析(对不同国家的语言单词和姓氏进行分类,附源码和数据集)
PyTorch搭建循环神经网络(RNN)进行文本分类、预测及损失分析(对不同国家的语言单词和姓氏进行分类,附源码和数据集)
421 2
|
人工智能 自然语言处理 PyTorch
NLP文本匹配任务Text Matching [有监督训练]:PointWise(单塔)、DSSM(双塔)、Sentence BERT(双塔)项目实践
NLP文本匹配任务Text Matching [有监督训练]:PointWise(单塔)、DSSM(双塔)、Sentence BERT(双塔)项目实践
NLP文本匹配任务Text Matching [有监督训练]:PointWise(单塔)、DSSM(双塔)、Sentence BERT(双塔)项目实践
|
自然语言处理 算法 搜索推荐
基于Milvus+ERNIE+SimCSE+In-batch Negatives样本策略的学术文献语义检索系统
基于Milvus+ERNIE+SimCSE+In-batch Negatives样本策略的学术文献语义检索系统
基于Milvus+ERNIE+SimCSE+In-batch Negatives样本策略的学术文献语义检索系统