首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >产品分类算法?

产品分类算法?
EN

Stack Overflow用户
提问于 2009-03-29 20:44:05
回答 7查看 1.8K关注 0票数 7

我有一个清单,代表的产品或多或少是一样的。例如,在下面的列表中,它们都是希捷硬盘驱动器。

  1. 希捷硬盘500
  2. 希捷电脑硬盘120 for
  3. 希捷梭鱼7200.12 ST3500418AS 500 RPM 7200 RPM SATA3.0Gb/s硬盘
  4. 希捷新的500 New硬盘驱动器
  5. 希捷梭鱼7200.12
  6. 希捷FreeAgent书桌500外部硬盘驱动器银7200 Desk USB2.0零售

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

我们有一个庞大的产品清单,我想分类。有没有人知道什么是最好的算法来做这样的事情。有什么建议吗?

我想到了贝叶斯分类器,但我不确定它是否是最佳选择。任何帮助都将不胜感激!

谢谢。

EN

回答 7

Stack Overflow用户

发布于 2009-03-29 20:52:09

您至少需要两个组件:

首先,您需要进行“特征”提取,即获取项目并提取相关信息。例如,“新的和闪亮的”不像“500 is硬盘”和“希捷”那么重要。一个(非常)简单的方法将包括一个简单的启发式提取制造商,技术名称,如"USB2.0“和模式,如"GB","RPM”从每个项目。

然后,您将为每个项目提供一组特性。有些机器学习人员喜欢将其放入“特征向量”,即每个特性有一个条目,设置为0或1,这取决于该特性是否存在。这是您的数据表示。在这个向量上,你可以做一个距离比较。

请注意,您可能会得到数千个条目的向量。即使如此,您也必须对结果进行聚类。

可能有用的维基百科文章:

  • 特征提取
  • 最近邻搜索
票数 5
EN

Stack Overflow用户

发布于 2009-03-30 11:29:53

您将遇到的问题之一是在非线性或无序属性中确定最近的邻居。我在这里建立在曼纽尔上。

您将面临的一个问题是决定(1)希捷500 to、(2)用于笔记本电脑的希捷硬盘120 to和(3) Seagate FreeAgent办公桌500 to外部硬盘驱动器Silver7200RPMUSB2.0零售:

1更接近2还是接近3?这些差异能证明不同的分类是合理的吗?

一个人会说3是介于1和2之间,因为外部HD可以在两种机器上使用。这意味着,如果有人搜索HD为他的桌面,并扩大了选择的范围,以包括选择,外部HDs也将显示,但不显示笔记本电脑HDs。很可能,SSD、USB记忆棒、CD/DVD驱动器甚至会出现在笔记本电脑驱动器之前,从而扩大范围。

可能的解决办法:

向用户提供一对属性,并让它们具有接近性。给他们一个标尺,告诉你某些属性有多近。然后,扩展所选内容的范围将使用此比例作为该属性上的距离函数。

票数 1
EN

Stack Overflow用户

发布于 2009-03-30 11:51:26

要对产品进行实际分类,您可以使用带有黑板的“增强神经网络”。(这只是一个让你朝着正确方向思考的比喻,而不是严格使用术语。)

想象一组通过侦听器或事件连接的对象(就像神经元和突触)。每个对象都有一组模式,并根据这些模式测试输入。

举个例子:

  • 一个对象测试(“希捷”、“康纳”、“麦克托尔”、“量子”.)
  • 另一个对象测试:位数:*(“)?(”gb“区”mb“)
  • 另一个对象测试:位数:*( ")?"rpm“

所有这些对象都连接到另一个对象,如果它们的某些组合触发,则将输入归类为硬盘驱动器。单个对象本身会将某些特征输入到黑板(通用的书写区域,用来表示输入的内容),例如制造商、容量或速度。

因此,神经元的激发不是基于阈值,而是基于模式的识别。这些神经元中有许多可以在黑板上高度并行工作,甚至可以由其他神经元进行正确的分类(可能会引入确定性?)

我在一个原型中使用了这样的东西,用于根据联合国和平与安全委员会对产品进行分类,并且能够得到97%正确的汽车零件分类。

票数 1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/695347

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档