结合文本和数值列用于机器学习算法

我正在处理一个情感分类问题,需要预测推文的情感是积极的、消极的还是中性的。以下是我的数据集的一瞥:

tweet_id   airline_sentiment_confidence   negativereason   negativereason_confidence   airline   name   retweet_count   text   tweet_created   tweet location   user_timezone   airline_sentimentTr_tweet_1   1.000                          NaN             NaN                        Virgin America    0             tweets   date               Location        Time             PositiveTr_tweet_2   0.3846                         NaN             0.7033                     Virgin America    0             tweets   date               Location        Time             NegativeTr_tweet_3   0.6837                         Bad flight      0.3342                     Virgin America    0             tweets   date               Location        Time             NegativeTr_tweet_4   1.000                          Can't tell      1.000                      Virgin America    0             tweets   date               Location        Time             Neutral   Tr_tweet_5   1.000                          NaN             NaN                        Virgin America    0             tweets   date               Location        Time             Neutral   

然而,我将text列输入到TfIdf_Vectorizer中,并使用logreg来预测情感。然而,我的准确率非常低,约为68%,这显然是一个纯粹的自然语言处理问题。然而,如果我能以某种方式使用其他特征,我的准确率肯定会提高。

我想知道如何将其他数值和文本列(如negativereason)与我的text列结合起来作为特征,以提高准确率。

或者,这里是否有任何堆叠方法可以使用?例如,结合Tfidf的预测,然后再次使用其余的数值列进行预测?

TL;DR 如何处理数值和文本列作为特征以进行良好的预测?


回答:

正如你提到的,一种方法是堆叠。你可以将每条推文表示为一个特征向量,其中向量的每个位置代表一个词/术语,其值是该词的tf-idf值。然后,你可以将每条推文的tf-idf向量与你拥有的其他数值列连接起来,并将这些向量堆叠在一起形成一个矩阵(一旦你有了矩阵,你就可以开始尝试不同的机器学习模型了!)

有几点需要注意,一旦你为每条推文获得了tf-idf向量,可能需要运行降维算法如PCA,因为你将处理一个大而稀疏的向量。此外,根据你的数据,可能需要对每个连接的向量进行归一化处理(例如,使所有值在0到1之间)。最后,通常单个推文在文本信息上不够丰富。你可能需要考虑将相似的推文聚合在一起以获得更好的结果。

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中创建了一个多类分类项目。该项目可以对…

发表回复

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