2012-08-01 69 views
3

我被困在一个决定之上,对我得到的数据集应用分类或聚类。我越想它,我就越困惑。这就是我遇到的问题。聚类或分类?

我收到了包含有关公司,投资,股票,经济,季度收入等新闻的新闻文件(大约3000,并不断增加)。我的目标是将新闻排序,以便我知道哪些新闻对应于哪家公司。例如对于新闻项目“Apple推出新iPhone”,我需要将Apple公司与它联系起来。一个特定的新闻项目/文件只包含'标题'和'描述',所以我必须分析这些文字才能找出新闻反映的公司。它也可能是多家公司。

为了解决这个问题,我转向了Mahout。

我从集群开始。我希望在我的集群中获得'苹果','谷歌','英特尔'等顶级词汇,从那里我会知道集群中的消息与其集群标签相对应,但情况有点不同。我有'投资','股票','通信','绿色能源','终端','股份','街道','奥林匹克'和许多其他条款作为顶级的(这是有道理的集群算法'寻找常用术语)。虽然有一些'苹果'的集群,但与它相关的新闻项目是非常少的。我认为可能是聚类不是这种问题,因为许多公司新闻进入更普遍的集群(投资,利润),而不是特定公司集群(Apple)。

我开始阅读关于需要训练数据的分类,这个名字也令人信服,因为我实际上想将我的新闻项目分类为“公司名称”。在我阅读时,我的印象是名称分类有点欺骗,与分类相比,该技术更多地用于预测目的。我得到的其他困惑是如何准备新闻文件的培训数据?让我们假设我有一份我感兴趣的公司名单。我编写了一个程序来为分类器生成训练数据。该计划将查看新闻标题或说明是否包含公司名称“Apple”,然后是其关于苹果的新闻报道。我是如何准备训练数据的?(当然,我读过训练数据实际上是一组预测变量和目标变量)。如果是这样,那么为什么我应该首先使用mahout分类?我应该沟通mahout,而不是使用我为培训数据编写的这个小程序(实际上是分类)

您可以看到我对如何解决此问题感到困惑。另一件令我担忧的事情是,如果有可能使这个系统变得如此聪明,那么如果消息称'iphone销量创新高'而不使用'Apple'这个词,那么系统可以将其分类为与苹果相关的新闻?

非常感谢您指引我朝着正确的方向前进。

回答

3

复制从邮件列表我的回复:

量词是监督学习算法,所以你需要提供 一堆的积极和消极类的例子。在你的榜样, 这将是罚款标记一堆文章为“苹果”与否, 然后使用从TF-IDF导出输入特征向量,这些 标签,训练分类,它可以告诉当文章是“关于 苹果”。

我不认为它会非常努力,自动生成 培训通过根据简单的规则设置标签,它是 苹果,如果“苹果”是的称号。那么,如果你这样做,那么 就没有必要培训一个分类器。您可以制作一个微不足道的 分类器,该分类器只需在 检查“Apple”是否在标题中即可在测试集上达到100%的准确度!是的,你是对的,这没什么收获 。

很明显,你想从分类器中学到一些更细微的东西,所以 标题为“苹果汁显示降低痴呆风险” 没有分类为公司。你真的需要喂它 手分类文件。

这是一个坏消息,但是,您肯定可以通过这种方式为N个主题训练N个分类器 。

分类器把项目放入一个类或不是。它们与预测输入的连续值的回归技术不同。 他们是相关的,但不同。

聚类具有无监督的优势。你不需要 标签。然而,由此产生的集群不能保证匹配 您的文章主题的概念。您可能会看到一个集群有很多苹果文章 ,一些关于iPod,但也有一些关于三星 和一般笔记本电脑。我不认为这是您的 问题的最佳工具。

1

首先,你不需要Mahout。 3000文件几乎没有。当你达到百万时,重新回到Mahout。我已经在一台计算机上处​​理了100.000张图片,因此您现在可以真正跳过Mahout的开销。

你正在尝试做什么听起来像分类给我。因为你有预定义的类。

聚类算法是无监督的。它(除非你overfit的参数)可能会打破苹果“iPad/iPhone”和“Macbook”。另一方面,它可能会合并苹果和谷歌,因为它们与相关的(远远超过苹果和福特等)。

是的,你需要训练数据,它反映了你想测量的结构。还有其他的结构(例如iPhone与Macbook不同,Google,Facebook和Apple与凯洛格斯,福特和苹果公司相比是更类似的公司)。如果你想要一个公司的级别的结构,你需要这个级别的细节的培训数据。