【问题标题】:How to train a classifier with only positive and neutral data?如何训练只有正面和中性数据的分类器?
【发布时间】:2012-12-05 22:33:00
【问题描述】:

我的问题:如何训练只有正面和中性数据的分类器?

我正在构建一个用于教育目的的个性化文章推荐系统。我使用的数据来自 Instapaper。

数据集

我只有正面数据: - 我已阅读和“喜欢”的文章,无论已读/未读状态如何

还有中性数据(因为我已经表达了兴趣,但反正以后可能不喜欢了): - 未读的文章 - 我已阅读并标记为已读但我不“喜欢”的文章

我没有的数据是负数据: - 我没有发送到 Instapaper 稍后阅读的文章(我不感兴趣,虽然我浏览过那个页面/文章) - 我什至可能没有点击过的文章,但我可能有也可能没有存档。

我的问题

在这样的问题中,负数据基本上是缺失的。我想到了以下解决方案,但还没有解决:

1) 向分类器提供一些负面数据 优点:直接负数据来教分类器 缺点:随着我喜欢的文章数量的增加,对分类器的负面数据影响逐渐减弱

2) 把“中性”的数据变成负面的数据 优点:现在我拥有了我需要的所有正面和(新的)负面数据 缺点:尽管我对中性数据感兴趣,但我仍然希望获得有关此类文章的建议,但可能是价值较低的类别。

【问题讨论】:

  • 你的分类特点是什么?

标签: machine-learning nlp recommendation-engine


【解决方案1】:

正如here 解释的那样,您可以使用LibSvm,特别是选项一类SVM。

希望对你有帮助!

【讨论】:

    【解决方案2】:

    这显然是一篇旧帖子,但我有一个类似的问题,希望您可以使用以下技术找到自己的信息来节省一些时间:

    【讨论】:

      【解决方案3】:

      如果您有很多来自不同用户的积极反馈,那么您就有了一个相当典型的协同过滤场景。

      以下是一些 CF 解决方案:

      这些算法存在公开可用的实现,例如

      顺便说一句,如果您对此类问题使用分类器,请查看有关仅正学习的文献,例如http://users.csc.tntech.edu/~weberle/Fall2008/CSC6910/Papers/posonly.pdf

      【讨论】:

      • 嗨,你能解释一下我必须如何解释 BPR 论文中用于矩阵分解的 x_uij 的导数吗?谢谢:)
      • 是2项分数差的导数。
      【解决方案4】:

      如果您想摆脱机器学习示例:TF-IDF 可以为您提供与您喜欢(或查看)的文章相似的文章的加权正面推荐,并且在此用例中非常常见。

      更复杂的非学习方法包括用于确定文档相似性的 LSA,但实施起来并非易事,而且如果没有大量处理能力,LSA“空间”的构建不会扩展到数百或数千个文档。

      这两个都属于计算语言学领域。

      祝你好运!

      【讨论】:

        【解决方案5】:

        制作两个二元分类器。

        1 -> "liked" or not
        2 -> "neutral" or not
        

        您还可以选择将它们链接在一起,以避免出现“喜欢”和“中立”的情况。这将允许您对内容进行分类。

        正如@ThierryS 的另一个回答所表明的那样,另一种选择是创建一个推荐器,允许您推荐 其他类似用户 已识别为“喜欢”或“中立”的内容,从而采取社会方面的优势。

        【讨论】:

          【解决方案6】:

          Spy EM algorithm 正好解决了这个问题。

          S-EM 是一种文本学习或分类系统,它从一组正样本和未标记样本(无负样本)中学习。它基于“间谍”技术、朴素贝叶斯和 EM 算法。

          基本的想法是把你的肯定集和一大堆随机的文档结合起来,其中一些是你保留的。您最初将所有随机文档视为负类,并在该集合上学习一个朴素贝叶斯分类器。现在,其中一些爬网文档实际上是肯定的,您可以保守地重新标记任何得分高于最低得分的文档,这些文档支持真正的肯定文档。然后你迭代这个过程直到它稳定。

          【讨论】:

            【解决方案7】:

            你想要做的更多的是recommender system,而不是我认为的分类器。

            最先进的技术是使用每篇文章的内容并创建一个bag of words。从这里您可以计算不同文章的距离。具有相似性的文章(使用聚类或相似性,如 Pearson、Tanimoto)将是您更可能想要阅读的文章。这是快速获得东西的最简单方法。

            当然还有更复杂、更准确的方法。

            【讨论】:

            • 您说推荐系统非常适合这个问题是正确的,但您没有回答原始问题
            • 如果他不告诉我他的分类器试图学习的特征,我无法正确回答他的问题。如果没有要学习的特征,你不能只“制作”两个二元分类器。
            • 你认为这些词是“词袋”的一个特征,我只是想帮助你改进你的答案,这样我就可以取消我的反对票。请将您的 cmets 关于我的答案发布在正确的位置。
            猜你喜欢
            • 2016-07-03
            • 2020-12-01
            • 1970-01-01
            • 2018-11-23
            • 1970-01-01
            • 2015-06-17
            • 2016-08-07
            • 2022-01-12
            • 2015-02-27
            相关资源
            最近更新 更多