自定义对象的分类
Classification of custom objects
我需要编写一个程序,给定一个具有特定属性的对象,它知道如何对其进行分类。它应该知道如何通过使用具有已知属性的已知对象列表进行训练来对新对象进行分类。
例如,我的对象 A
具有以下属性:a=10
和 b=1
。我还训练了程序,使其知道 a
的 5..15
和 b
的 0..2
之间的值将给定对象分类为 label1
.
随着程序的发展,我需要用已知数据进一步训练它,以便属性间隔变得更准确(因此分类)。
现在,我没有任何机器学习或任何此类方面的经验,我想知道我应该如何开始。我看过很多教程,但仅限于文本分类。并且仅适用于 2 向分类(即正面或负面,是或否......只有两个值可供选择)。一开始我会有 5-6 个标签,它们的数量很快就会增加。此外,对象属性是整数。
非常感谢任何提示!
机器学习是一个非常 广阔的领域,因此第一步是准确了解您要查找的内容并熟悉您要解决的子问题。
根据您的描述,您正在尝试解决 classification problem in a supervised learning 方法。
我会从here转述一下:
class化问题在于识别 class 观察属于哪个。
监督学习是 "teaching" 机器的一种方式。基本上,算法是通过示例训练的(即:这个特定对象属于 class X)。经过培训,机器应该能够将其获得的知识应用到新数据中。
k-NN algorithm是解决这类问题最简单的算法之一。我建议你熟悉一下。
您在 scipy 中实现了 k-NN。 Here's a link to a tutorial on using it.
现在,回答您的具体问题:
only for 2-ways classification (that is, positive or negative, yes or
no...only two values to choose from)
k-NN 可以处理任何(有限)数量的 classes,所以你很清楚
Also, the object attributes are integers
K-NN 通常使用连续的 space - 因此您必须将它们转换为浮点数。
将属性值映射到算法中的点 space 不是一个微不足道的问题(参见 Data pre-processing,尤其是关于归一化、特征提取的文章和选择)
我需要编写一个程序,给定一个具有特定属性的对象,它知道如何对其进行分类。它应该知道如何通过使用具有已知属性的已知对象列表进行训练来对新对象进行分类。
例如,我的对象 A
具有以下属性:a=10
和 b=1
。我还训练了程序,使其知道 a
的 5..15
和 b
的 0..2
之间的值将给定对象分类为 label1
.
随着程序的发展,我需要用已知数据进一步训练它,以便属性间隔变得更准确(因此分类)。
现在,我没有任何机器学习或任何此类方面的经验,我想知道我应该如何开始。我看过很多教程,但仅限于文本分类。并且仅适用于 2 向分类(即正面或负面,是或否......只有两个值可供选择)。一开始我会有 5-6 个标签,它们的数量很快就会增加。此外,对象属性是整数。
非常感谢任何提示!
机器学习是一个非常 广阔的领域,因此第一步是准确了解您要查找的内容并熟悉您要解决的子问题。
根据您的描述,您正在尝试解决 classification problem in a supervised learning 方法。
我会从here转述一下:
class化问题在于识别 class 观察属于哪个。
监督学习是 "teaching" 机器的一种方式。基本上,算法是通过示例训练的(即:这个特定对象属于 class X)。经过培训,机器应该能够将其获得的知识应用到新数据中。
k-NN algorithm是解决这类问题最简单的算法之一。我建议你熟悉一下。
您在 scipy 中实现了 k-NN。 Here's a link to a tutorial on using it.
现在,回答您的具体问题:
only for 2-ways classification (that is, positive or negative, yes or no...only two values to choose from)
k-NN 可以处理任何(有限)数量的 classes,所以你很清楚
Also, the object attributes are integers
K-NN 通常使用连续的 space - 因此您必须将它们转换为浮点数。
将属性值映射到算法中的点 space 不是一个微不足道的问题(参见 Data pre-processing,尤其是关于归一化、特征提取的文章和选择)