在人工智能和机器学习方面,监督学习和无监督学习的区别是什么? 你能举个例子简单地解释一下吗?


当前回答

机器学习: 它探索了可以从数据中学习并对数据进行预测的算法的研究和构建。这种算法通过从示例输入中构建模型来运行,以便做出数据驱动的预测或作为输出表示的决策,而不是严格地遵循静态的程序指令。

监督式学习: 这是从标记的训练数据推断出函数的机器学习任务。训练数据由一组训练示例组成。在监督学习中,每个例子都是一对,由一个输入对象(通常是一个向量)和一个期望的输出值(也称为监督信号)组成。监督学习算法分析训练数据并产生推断函数,该函数可用于映射新的示例。

由“老师”给计算机提供示例输入和它们期望的输出,目标是学习将输入映射到输出的一般规则。具体来说,有监督学习算法采用一组已知的输入数据和对数据(输出)的已知响应,并训练一个模型来生成对新数据响应的合理预测。

Unsupervised learning: It is learning without a teacher. One basic thing that you might want to do with data is to visualize it. It is the machine learning task of inferring a function to describe hidden structure from unlabeled data. Since the examples given to the learner are unlabeled, there is no error or reward signal to evaluate a potential solution. This distinguishes unsupervised learning from supervised learning. Unsupervised learning uses procedures that attempt to find natural partitions of patterns.

在无监督学习中,没有基于预测结果的反馈,也就是说,没有老师来纠正你。在无监督学习方法下,不提供标记的示例,在学习过程中没有输出的概念。因此,由学习方案/模型来寻找模式或发现输入数据的组

你应该使用无监督学习方法,当你需要一个大的 训练你的模型的数据量,以及意愿和能力 去实验和探索,当然这是一个不太好的挑战 通过更成熟的方法解决。无监督学习就是这样 可以学习比监督更大更复杂的模型 学习。这里有一个很好的例子

.

其他回答

我一直认为无监督学习和有监督学习之间的区别是随意的,有点令人困惑。这两种情况之间没有真正的区别,相反,在一系列情况下,算法可以或多或少地“监督”。半监督学习的存在是界限模糊的一个明显例子。

我倾向于认为监督是对算法提供关于应该首选哪些解决方案的反馈。对于传统的监督设置,比如垃圾邮件检测,你告诉算法“不要在训练集上犯任何错误”;对于传统的无监督设置,比如聚类,你告诉算法“彼此接近的点应该在同一个聚类中”。很巧的是,第一种反馈形式比后者更具体。

简而言之,当有人说“有监督”时,想想分类,当他们说“无监督”时,想想聚类,尽量不要过于担心除此之外的问题。

在监督学习中,我们知道输入和输出应该是什么。例如,给定一组汽车。我们得找出哪些是红的,哪些是蓝的。

然而,无监督学习是指我们必须在很少或没有任何关于输出应该如何的想法的情况下找到答案。例如,学习者可以建立一个模型,根据面部模式和单词(如“你在笑什么?”)的相关性来检测人们何时在微笑。

例如,训练神经网络通常是监督学习:你告诉网络你输入的特征向量对应于哪个类。

聚类是无监督学习:你让算法决定如何将样本分组到具有共同属性的类中。

另一个无监督学习的例子是Kohonen的自组织地图。

既然你问了这个非常基本的问题,似乎有必要详细说明机器学习本身是什么。

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.

Supervised Learning is basically where you have input variables(x) and output variable(y) and use algorithm to learn the mapping function from input to the output. The reason why we called this as supervised is because algorithm learns from the training dataset, the algorithm iteratively makes predictions on the training data. Supervised have two types-Classification and Regression. Classification is when the output variable is category like yes/no, true/false. Regression is when the output is real values like height of person, Temperature etc.

联合国监督学习是指我们只有输入数据(X),没有输出变量。 这被称为无监督学习,因为与上面的监督学习不同,它没有正确的答案,也没有老师。算法由它们自己的设计来发现和呈现数据中有趣的结构。

无监督学习的类型有聚类和关联。