有人能解释一下数据挖掘中分类和聚类的区别吗?

如果可以,请给出两者的例子以理解主旨。


当前回答

我是一个数据挖掘的新手,但正如我的课本所说,分类应该是监督学习,而聚类应该是非监督学习。监督学习和无监督学习之间的区别可以在这里找到。

其他回答

分类

是根据从例子中学习,将预定义的类分配给新的观察结果。

这是机器学习的关键任务之一。

聚类(或聚类分析)

尽管被普遍认为是“无监督分类”,但它完全不同。

与许多机器学习者教你的不同,它不是将“类”分配给对象,而是没有预先定义它们。这是做了太多分类的人的有限观点;一个典型的例子,如果你有一个锤子(分类器),所有的东西对你来说都像钉子(分类问题)。但这也是为什么从事分类的人没有掌握聚类的诀窍。

相反,可以将其视为结构发现。聚类的任务是在你的数据中找到你以前不知道的结构(例如组)。如果您学习了一些新的东西,那么群集是成功的。如果你只知道你已经知道的结构,它就失败了。

聚类分析是数据挖掘的关键任务(也是机器学习中的丑小鸭,所以不要相信机器学习者对聚类的否定)。

“无监督学习”有点矛盾

这在文献中反复出现,但无监督学习是该死的。它并不存在,但它就像“军事情报”一样自相矛盾。

算法要么从例子中学习(那么它就是“监督学习”),要么不学习。如果所有的聚类方法都是“学习”,那么计算一个数据集的最小值、最大值和平均值也是“无监督学习”。然后任何计算“学习”它的输出。因此,术语“无监督学习”是完全没有意义的,它意味着一切和什么都不是。

Some "unsupervised learning" algorithms do, however, fall into the optimization category. For example k-means is a least-squares optimization. Such methods are all over statistics, so I don't think we need to label them "unsupervised learning", but instead should continue to call them "optimization problems". It's more precise, and more meaningful. There are plenty of clustering algorithms who do not involve optimization, and who do not fit into machine-learning paradigms well. So stop squeezing them in there under the umbrella "unsupervised learning".

有一些与集群相关的“学习”,但学习的不是程序。用户应该学习关于他的数据集的新东西。

+分类: 给你一些新的数据,你必须为它们设置新的标签。

例如,一家公司希望对其潜在客户进行分类。当一个新客户来的时候,他们必须确定这个客户是否会购买他们的产品。

+集群: 你得到了一组历史交易记录,记录了谁买了什么。

通过使用聚类技术,您可以区分客户的细分。

聚类是一种对对象进行分组的方法,通过这种方式,具有相似特征的对象聚集在一起,而具有不同特征的对象分开。它是机器学习和数据挖掘中常用的统计数据分析技术。

分类是在训练数据集的基础上识别、区分和理解对象的分类过程。分类是一种有监督的学习技术,其中训练集和正确定义的观察是可用的。

请阅读以下信息:

There are two definitions in data mining "Supervised" and "Unsupervised". When someone tells the computer, algorithm, code, ... that this thing is like an apple and that thing is like an orange, this is supervised learning and using supervised learning (like tags for each sample in a data set) for classifying the data, you'll get classification. But on the other hand if you let the computer find out what is what and differentiate between features of the given data set, in fact learning unsupervised, for classifying the data set this would be called clustering. In this case data that are fed to the algorithm don't have tags and the algorithm should find out different classes.