在人工智能和机器学习方面,监督学习和无监督学习的区别是什么? 你能举个例子简单地解释一下吗?
当前回答
既然你问了这个非常基本的问题,似乎有必要详细说明机器学习本身是什么。
Machine Learning is a class of algorithms which is data-driven, i.e. unlike "normal" algorithms it is the data that "tells" what the "good answer" is. Example: a hypothetical non-machine learning algorithm for face detection in images would try to define what a face is (round skin-like-colored disk, with dark area where you expect the eyes etc). A machine learning algorithm would not have such coded definition, but would "learn-by-examples": you'll show several images of faces and not-faces and a good algorithm will eventually learn and be able to predict whether or not an unseen image is a face.
这个特殊的人脸检测的例子是有监督的,这意味着你的例子必须被标记,或者明确地说哪些是人脸,哪些不是。
在无监督算法中,你的例子没有标记,也就是说你什么都不说。当然,在这种情况下,算法本身不能“发明”人脸是什么,但它可以尝试将数据聚类到不同的组中,例如,它可以区分人脸与风景非常不同,而风景与马非常不同。
Since another answer mentions it (though, in an incorrect way): there are "intermediate" forms of supervision, i.e. semi-supervised and active learning. Technically, these are supervised methods in which there is some "smart" way to avoid a large number of labeled examples. In active learning, the algorithm itself decides which thing you should label (e.g. it can be pretty sure about a landscape and a horse, but it might ask you to confirm if a gorilla is indeed the picture of a face). In semi-supervised learning, there are two different algorithms which start with the labeled examples, and then "tell" each other the way they think about some large number of unlabeled data. From this "discussion" they learn.
其他回答
监督式学习: 假设一个孩子去了幼儿园。这里老师给他看了3个玩具——房子,球和汽车。现在老师给了他10个玩具。 他会根据他以前的经验把它们分为房子,球和汽车3个盒子。 因此,孩子首先是由老师监督,因为他们在几组比赛中答对了答案。然后用不知名的玩具对他进行测试。
无监督学习: 还是幼儿园的例子。给一个孩子10个玩具。他被告知要分割类似的部分。 因此,根据形状、大小、颜色、功能等特征,他会尝试将A、B、C分成3组,并将它们分组。
监理这个词的意思是你给机器提供监督/指令,帮助它找到答案。一旦它学会指令,就可以很容易地预测新的情况。
无监督意味着没有监督或指示如何找到答案/标签,机器将利用它的智能在我们的数据中找到一些模式。在这里,它不会进行预测,它只会尝试寻找具有相似数据的集群。
例如,训练神经网络通常是监督学习:你告诉网络你输入的特征向量对应于哪个类。
聚类是无监督学习:你让算法决定如何将样本分组到具有共同属性的类中。
另一个无监督学习的例子是Kohonen的自组织地图。
监督式学习:
监督学习算法分析训练数据并产生推断函数,该函数可用于映射新的示例。
我们提供训练数据,我们知道对某个输入的正确输出 我们知道输入和输出之间的关系
问题类别:
回归:预测连续输出中的结果=>将输入变量映射到某个连续函数。
例子:
给一个人的照片,预测他的年龄
分类:在离散输出中预测结果=>映射输入变量到离散类别
例子:
这个肿瘤癌变了吗?
无监督学习:
无监督学习从未被标记、分类或分类的测试数据中学习。无监督学习识别数据中的共性,并根据每个新数据中这些共性的存在与否做出反应。
我们可以根据数据中变量之间的关系对数据进行聚类,从而推导出这种结构。 基于预测结果没有反馈。
问题类别:
聚类:是对一组对象进行分组,使同一组(称为聚类)中的对象彼此之间(在某种意义上)比其他组(聚类)中的对象更相似。
例子:
收集100万个不同的基因,找到一种方法,自动将这些基因分组,这些基因在某种程度上是相似的,或因不同的变量(如寿命、位置、角色等)而相关。
这里列出了常用的用例。
数据挖掘中分类和聚类的区别?
引用:
Supervised_learning
Unsupervised_learning
来自coursera的机器学习
走向数据科学
已经有很多答案可以详细解释这些差异。我在codeacademy上找到了这些动图,它们经常能帮助我有效地解释它们之间的差异。
监督式学习
请注意,训练图像在这里有标签,并且模型正在学习图像的名称。
无监督学习
注意,这里所做的只是分组(聚类),模型不知道任何图像。
在监督学习中,为输入x提供预期结果y(即,当输入x时模型应该产生的输出),这通常被称为对应输入x的“类”(或“标签”)。
在无监督学习中,不提供示例x的“类”。因此,无监督学习可以被认为是在未标记的数据集中寻找“隐藏结构”。
监督学习的方法包括:
分类(1R、朴素贝叶斯、决策树学习算法等) 如ID3 CART,等等) 数值预测
无监督学习的方法包括:
聚类(k -均值,层次聚类) 关联规则学习
推荐文章
- 如何从scikit-learn决策树中提取决策规则?
- 数据挖掘中分类和聚类的区别?
- model.eval()在pytorch中做什么?
- 为什么binary_crossentropy和categorical_crossentropy对同一个问题给出不同的性能?
- 一般来说,应该选择哪种机器学习分类器?
- 是否可以使用scikit-learn K-Means聚类来指定自己的距离函数?
- 哪些是遗传算法/遗传规划解决方案的好例子?
- 如何在Python中进行热编码?
- 如何将数据分成3组(训练、验证和测试)?
- 历史库存数据的来源
- 如何在PyTorch中初始化权重?
- 关于如何将数据集划分为训练集和验证集,是否存在经验法则?
- 在scikit-learn中保存分类器到磁盘
- 如何解释机器学习模型的损失和准确性
- 线性回归和逻辑回归的区别是什么?