15

几周前我问了一个类似的问题,但我没有正确地问这个问题。所以我在这里用更多细节重新提出这个问题,我想得到一个更面向人工智能的答案。

我有一个列表,代表或多或少相同的产品。例如,在下面的列表中,它们都是希捷硬盘。

  1. 希捷硬盘 500Go
  2. 适用于笔记本电脑的希捷硬盘 120Go
  3. 希捷 Barracuda 7200.12 ST3500418AS 500GB 7200 RPM SATA 3.0Gb/s 硬盘
  4. 希捷全新闪亮 500Go 硬盘
  5. 希捷梭子鱼 7200.12
  6. 希捷 FreeAgent Desk 500GB 外置硬盘 银色 7200RPM USB2.0 零售
  7. GE Spacemaker Laudry
  8. 马自达3 2010
  9. 马自达3 2009 2.3L

对于人类来说,硬盘3和5是一样的。我们可以更进一步,假设产品 1、3、4 和 5 相同,并将产品 2 和 6 放在其他类别中。

在我之前的问题中,有人建议我使用特征提取。当我们有一个预定义描述的小数据集(所有硬盘驱动器)时,它工作得很好,但是所有其他类型的描述呢?我不想开始为我的应用程序可能面临的所有描述编写基于正则表达式的特征提取器,它无法扩展。是否有任何机器学习算法可以帮助我实现这一目标?我能得到的描述范围很广,在第一行,可能是冰箱,然后在下一行,是硬盘。我应该尝试走神经网络路径吗?我的输入应该是什么?

感谢您的帮助!

4

2 回答 2

9

您应该同时查看聚类分类。您的类别似乎是开放式的,因此表明聚类可能更适合该问题。至于输入表示,您可以尝试提取单词和字符n-grams。您的相似性度量可能是常见 n-gram 的计数,或更复杂的东西。您可能需要手动标记生成的集群。

于 2009-04-13T18:34:04.623 回答
9

我会看一些贝叶斯分类方法。这将涉及训练分类器以识别特定单词,以指示产品属于您的类别之一的概率。例如,经过培训,它可以识别出如果产品描述中包含“Seagate”,则有 99% 的可能性是硬盘,而如果产品描述中有“Mazda”,则有 97% 的可能性是汽车。像“新”这样的词可能最终不会对任何分类做出太大贡献,这是您希望它工作的方式。

这样做的缺点是它通常需要相当大的训练数据语料库才能开始正常工作,但您可以对其进行设置,以便在生产时继续修改其百分比(如果您注意到它对某些内容进行了错误分类),它最终会变得非常有效。

贝叶斯技术最近大量用于垃圾邮件过滤应用程序,因此最好了解一下它在那里的使用方式。

于 2009-04-13T18:50:47.987 回答