【问题标题】:Sentiment Analysis using classification and clustering algorithms: Which is better?使用分类和聚类算法进行情感分析:哪个更好?
【发布时间】:2018-12-19 15:38:11
【问题描述】:

我正在尝试使用 Python 对歌曲歌词进行情感分析。 在研究了许多简单的分类问题后,已知标签(例如电子邮件分类垃圾邮件/非垃圾邮件),我认为歌词情感分析位于分类字段。 在实际编码时,我发现我必须计算每首歌曲歌词的情绪,并且可能会在原始数据集中添加一列,将其标记为正面或负面,或者使用实际的情绪分数。

这不能使用集群方法来完成吗?由于我们一开始并不知道每首歌曲的类别(正面情绪/负面情绪),因此算法将使用情绪分析对数据进行聚类。

【问题讨论】:

  • 1.如果您没有标签,那么您别无选择,只能进行聚类 2. 您可以使用余弦相似度方法将相似的歌曲聚类在一起 3. 这种方法的效果取决于您的数据集和其他预处理步骤,如标记化等..顺便说一句,您使用的是哪个数据集
  • 我正在使用这个数据集。 kaggle.com/mousehead/songlyrics

标签: machine-learning classification cluster-analysis sentiment-analysis


【解决方案1】:

聚类通常不会产生情绪。

它更有可能产生例如一个用于说唱的集群和一个用于非说唱的集群。或者一个用于偶数歌曲长度的歌词,一个用于奇数长度的歌词。

数据中包含的不仅仅是情绪。那么为什么聚类会产生情感聚类呢?

如果您想要特定标签(正面情绪、负面情绪),那么您需要提供训练数据并使用监督方法。

【讨论】:

    【解决方案2】:

    您正在考虑没有监督的聚类,即无监督聚类,这可能会导致准确度较低的结果,因为您实际上不知道分数的阈值是多少,它可以区分正类和负类。所以首先尝试找到将成为你的参数,将你的类分开。使用监督学习来找到阈值

    【讨论】:

    • 我在考虑使用默认阈值,这样我就可以筛选和强制 2 个类,类似于半监督学习。该算法知道有两个类,但它不知道哪个对象属于哪个类。对不起,如果我混淆了你,如果你愿意,我可以详细说明
    • 如果您使用默认阈值,则不再称为学习。如果您使用阈值,则尝试使用基于规则的方法。如果要使用监督学习,则让使用训练数据确定阈值的算法,然后根据获得的阈值对测试数据进行分类
    猜你喜欢
    • 2020-04-17
    • 2015-09-03
    • 1970-01-01
    • 2019-09-26
    • 2012-07-15
    • 2011-11-21
    • 1970-01-01
    • 1970-01-01
    • 2017-11-23
    相关资源
    最近更新 更多