我有一个代表大致相同的产品的清单.例如,在下面的列表中,它们都是希捷硬盘.
希捷硬盘500Go
希捷硬盘120Go笔记本电脑
希捷Barracuda 7200.12 ST3500418AS 500GB 7200 RPM SATA 3.0Gb/s硬盘
希捷新推出的500G硬盘
希捷Barracuda 7200.12
希捷FreeAgent Desk 500GB外置硬盘银7200RPM USB2.0零售
对于人类而言,硬盘驱动器3和5是相同的.我们可以更进一步,并假设产品1,3,4和5是相同的,并将产品2和6放在其他类别中.
我们有很多我想要分类的产品清单.有没有人知道做这种事情的最佳算法是什么.有什么建议?
我虽然使用贝叶斯分类器,但我不确定它是否是最佳选择.任何帮助,将不胜感激!
谢谢.
您至少需要两个组件:
首先,您需要进行"特征"提取的内容,即获取项目并提取相关信息.例如,"new and shinny"与"500Go硬盘"和"seagate"不相关.(非常)简单的方法包括简单的启发式提取制造商,技术名称如"USB2.0"和每个项目的"GB","RPM"等模式.
然后,您最终会为每个项目提供一组功能.一些机器学习的人喜欢把它放到"特征向量"中,即每个特征有一个条目,设置为0或1,具体取决于特征是否存在.这是您的数据表示.在此向量上,您可以进行距离比较.
请注意,最终可能会有数千个条目的向量.即便如此,您还必须对结果进行聚类.
可能有用的维基百科文章:
特征提取
最近邻搜索