如何在收集的数据上使用TF-IDF进行文本分类?

我正在进行一个个人项目,旨在构建一个文本分类器。我从8个类别中抓取了大约3000篇新闻文章。我有一个数据框,包含每篇文章中每个单词及其所属的文章类别标签。

我在网上看到的答案提到在整篇文章或文本块上使用tfidf。有什么方法可以分析单个单词吗?

以下是我目前数据的示例:

Word:       Category:Mobile      Science/techPhone       Science/techGoogle      Science/techFacebook    Science/techImplant     Science/techInterest    Business/economyBank        Business/economyIMF         Business/economyDownturn    Business/economyPresident   PoliticsDonald      PoliticsTrump       Politicsetc...        etc...

我为糟糕的格式感到抱歉;我在这方面还比较新手。


回答:

没有办法用tf-idf分析单个单词,如果你问这个问题,我认为你对TF-IDF的理解还不清楚。

我会尽量清楚地解释tf-idf。

TF-IDF是一种计算文本中某些单词的“分数”或“权重”的方法,相对于一个语料库(文本集)。这将赋予单词在它们所在的文本中的重要性。因此,对于一个给定单词出现的每个文本,你将得到一个分数。

TF-IDF的第一部分是TF:

  • TF代表词频,它会随着单词在文本中使用的次数增加而使分数增大,使用的次数越多,TF值就越大。

第二部分是IDF:

  • IDF代表逆文档频率,这是一个应该随着术语在整个语料库中重复出现的次数增加而减小的系数。

通过将这两个系数相乘,你将得到一个单词在文本中相对于语料库的“重要性”

这里有一个例子,如果单词“Mobile”出现在两篇文章中,一篇关于商业(如手机的销售),另一篇关于技术,你将在语料库中获得两个“Mobile”的分数,当你在未知文章中遇到这个单词时,你可以将未知文章中不同单词的分数相加,你就能相当准确地判断未知文章在讲什么。

Related Posts

使用LSTM在Python中预测未来值

这段代码可以预测指定股票的当前日期之前的值,但不能预测…

如何在gensim的word2vec模型中查找双词组的相似性

我有一个word2vec模型,假设我使用的是googl…

dask_xgboost.predict 可以工作但无法显示 – 数据必须是一维的

我试图使用 XGBoost 创建模型。 看起来我成功地…

ML Tuning – Cross Validation in Spark

我在https://spark.apache.org/…

如何在React JS中使用fetch从REST API获取预测

我正在开发一个应用程序,其中Flask REST AP…

如何分析ML.NET中多类分类预测得分数组?

我在ML.NET中创建了一个多类分类项目。该项目可以对…

发表回复

您的邮箱地址不会被公开。 必填项已用 * 标注