我的数据集如下,
代码|描述
AB123 |手机
B467A |手机
12345 |电话
WP9876 |无线电话
SP7654 |卫星电话
SV7608 |轿车
CC6543 |汽车轿跑车
需要根据代码和说明创建自动分组。让我们假设我有这么多这样的数据已经分为0-99组。每当新数据带有代码和描述时,机器学习算法需要根据以前可用的数据自动对此进行分类。
代码|说明 | 群组
AB123 |手机| 1
B467A |手机| 1
12345 |电话| 1
WP9876 |无线电话| 1
SP7654 |卫星电话| 1
SV7608 |轿车| 2
CC6543 |汽车Coupe | 3
这可以达到某种程度的准确度吗?目前这个过程是如此手动。有任何这样的想法或参考,请帮助。
答案 0 :(得分:0)
尝试阅读有监督学习。您需要为训练数据提供标签,以便算法知道什么是正确的答案 - 并且能够为您生成适当的模型。
然后,您可以使用生成的模型“预测”新传入数据的输出类。
最后,您可能希望回过头来检查预测结果的准确性。然后,如果您输入新接收和预测数据的标签,那么这些数据可用于对您的模型进行进一步培训。
答案 1 :(得分:0)
是的,有监督学习可能。你自己选择一个你需要训练的模型"使用您已有的数据。然后,模型/算法推广"先前未知的数据来自已知数据。
您指定为群组的内容将被称为班级或"标签"需要根据2个输入要素(代码/描述)进行预测。无论是直接输入这些功能还是将它们预处理为更适合算法的更抽象的功能,取决于您选择的算法。
如果您没有机器学习的经验,您可以从学习一些基础知识开始,同时在RapidMiner,Weka或Orange等工具中测试已经实现的算法。
答案 2 :(得分:0)
我不认为机器学习方法最适合解决问题,因为基于文本的机器学习算法往往非常复杂。从您提供的示例我不知道如何
我认为解决或尝试解决此问题的最简单方法如下,可以在许多自由编程语言中实现,例如python。每个描述都可以存储为字符串。你可以做的是存储属于特定组的所有字符串的所有子字符串(即Phone是你的字符串,子字符串将是'P','h',Ph',...,'e')一个列表(请参阅此问题,了解如何在python中实现它... Substrings of a string using Python)。然后,您希望为每个子字符串和所有存储的子字符串,查看哪些子集对于某个组是唯一的。然后选择超过一定长度的字符串(比如3个字符长,以消除随机字母连接)作为您的分类标准。然后,当您获得新数据时,请检查描述是否对某个组是唯一的。例如,您可以根据其描述是否包含单词phone来对第1组中的所有对象进行分类。
很难提供具体代码来解决您的问题,而不知道您熟悉哪种语言/可以使用。无论如何,我希望这有所帮助。伊夫