🐦 Twitter情感分析报告(增强版)

TF-IDF · LDA主题模型 · SVD降维 · 多模型对比

数据来源: Kaggle | 样本数: 75,682

75,682
样本总数
68%
最佳模型
5
LDA主题
23.5%
SVD方差

📊 一、数据概览

Twitter情感分析数据集包含75,682条推文,每条推文包含实体(公司/产品)和情感标签。

1.1 数据字段

字段说明示例
id推文ID2401
entity实体(公司/产品)Borderlands
sentiment情感(4类)Positive
text推文内容"im getting on borderlands..."

1.2 情感分布

🔍 二、TF-IDF特征提取

TF-IDF(Term Frequency-Inverse Document Frequency)是一种常用的文本特征提取方法,用于评估一个词在文档中的重要程度。

TF-IDF = TF(t,d) × IDF(t)
其中: TF=词频, IDF=log(总文档数/包含词t的文档数)

2.1 Top 20 TF-IDF词汇

发现: 游戏相关词汇占主导

"game", "play", "FIFA", "league"等游戏词汇TF-IDF得分最高,说明游戏类推文数量多且内容集中。

📑 三、LDA主题模型

LDA(Latent Dirichlet Allocation)是一种无监督主题模型,能够自动发现文档集合中的潜在主题结构。

P(词|文档) = Σ P(词|主题k) × P(主题k|文档)

3.1 5大主题及其关键词

主题关键词
主题1series, redemption, nvidia, twitch, xbox, red, tv
主题2fifa, creed, legends, gta, league, thank
主题3game, love, microsoft, amazon, good, great
主题4time, depot, battlefield, pubg, player, facebook
主题5don, fuck, fucking, shit, really, like

3.2 主题分布

3.3 情感与主题交叉分析

发现: Negative情感集中于主题5

47.7%的负面情感推文属于主题5(包含大量负面词汇如fuck, shit),说明LDA能有效区分情感类别。

🎯 四、SVD降维分析

SVD(Singular Value Decomposition)是一种矩阵分解技术,可用于降维和特征提取。

X = U × Σ × V^T
其中: U(文档×概念), Σ(概念权重), V^T(概念×词汇)

SVD将TF-IDF矩阵从75,682×5,000维降到100维,解释了23.54%的方差。

🤖 五、机器学习建模

5.1 模型对比(使用TF-IDF特征)

模型准确率说明
Logistic Regression ★68.27%线性模型,稳定高效
Multinomial NB63.90%朴素贝叶斯,适合文本
Random Forest56.40%需更多调参
Gradient Boosting57.13%过拟合,需调参

5.2 特征组合实验

TF-IDF + SVD组合

准确率: 68.25%,与单独TF-IDF接近。说明SVD降维后的特征没有带来额外信息增益。

5.3 分类详情(最佳模型)

📝 六、结论与应用

6.1 主要发现

  1. LDA有效区分情感: 负面情感集中在主题5(脏话主题)
  2. 游戏行业主导: TF-IDF显示游戏相关词占主导
  3. Logistic Regression最佳: 68.27%准确率,优于复杂模型
  4. 简单特征足够: TF-IDF + LR已接近最优

6.2 应用场景

6.3 改进方向