大家好,又见面了,我是你们的朋友全栈君。
文章目录- 前言
- 有监督学习
- 无监督学习
- 半监督学习
前言
机器学习是数据分析和数据挖掘的一种比较常用,比较好的手段从有无监督的角度,可以分为三类:
- 有监督学习
- 无监督学习
- 半监督学习
有监督学习
用已知某种或某些特性的样本作为训练集,以建立一个数学模型,再用已建立的模型来预测未知样本,此种方法被称为有监督学习,是最常用的一种机器学习方法。是从标签化训练数据集中推断出模型的机器学习任务
问:有监督学习的定义最关键的是什么呢? 从标签化的训练数据集中推断出模型机器学习任务 前面都是废话,没有用,最关键的要看的就是:从标签化的训练数据集中推断出模型机器学习任务
问:什么是标签 比如说有一张猫的图片,我们都知道它是只猫,但是计算机不知道它是只猫,怎么办呢?给这张图片打上个标签,然后计算机就知道它是只猫了,后面计算机根据这个标签对所有的猫进行学习就能通过这一只猫认识所有的猫了。
给数据打标签,其实就是告诉计算机,前面这么多特征( x 1 x_1 x1 ~ x n x_n xn)到底描述的是什么。很自然的就是Y,Y可以称之为Label,也可以称之为Target(我们的目标值)
我们接到一个任务或者说模型,首先要定义一个目标,这个目标对应的是谁?我们的目标要对这个任务进行合理的建模和预测,也就是说我们的目标在进行预测的时候有一个对应的y的值的话, x1第一个特征,xn第n个特征,矩阵一般是有m行n列的这样一个矩阵,所以我们一般去写的时候,这个数据集中一般会有m条观测值以及n列的这样一个特征。
然后最终会有一个目标值的y,如果有y,我们就称之为有监督学习,我们就要使用有监督学习进行模型的构建,实际上我们在日常的业务当中能够多使用有监督学习就多使用有监督学习,比如说在有 x 1 , x 2 , x 3 , ⋯   , x n x_1, x_2, x_3, cdots, x_n x1,x2,x3,⋯,xn以及y的情况下就老老实实用有监督学习了,就别用无监督学习。
无监督学习
知道了有监督学习的定义了,无监督学习的定义也就出来了。在算法构建的过程中不考虑Y的值,只通过特征信息去归纳出一些新的规律出来,这个方法就称之为无监督学习。
有监督学习和无监督学习的区别就是一个有y,一个没有y。这是最简单的记忆方式。
所以总结起来正式的说法是:无监督学习的训练集中没有人为的标注的结果,在非监督的学习过程中,数据并不被特别标识,学习模型是为了推断出数据的一些内存结构。
推断出数据的一些内在结构这是无监督学习学习的作用
问:为什么不建议使用无监督学习呢 无监督学习需要我们推断一些结构,但是在推断一些结构的时候可能会因为人为的主观臆断而出现一些偏差,这个就不是纯数学能够证明我是对的了,这个时候再进行无监督学习就是在瞎猜。
在没有y值的情况怎么办?是不是只能进行无监督学习了呢? 没有Y值的时候,自己给数据打标签,自己把Y做出来。然后进行有监督学习 很多情况下,在实际的工作业务中很多的工作量都是给数据打标签,你可能花半个半个月的时间,五六个人就坐那儿天天打标签,几万条数据坐那儿打标签打个三四天很正常。
所以就需要注意了,如果说真的是说在没有标签的情况下,你看看有没有合理的方式先把标签获取过来。 如果没有合理的渠道,就看看能不能进行人为地打标签再进行有监督学习的学习,这样做的结果会更好些。
半监督学习
看上面有监督学习和无监督学习的定义,就是一半有一半无呗 意思就是用少量的有标注的样本和大量未标注的样本进行训练和分类,这样是有监督学习和无监督学习的结合。
考虑如何利用少量的瓢样本和大量的未瓢样本进行训练和分类的问题, 是有监督学习和无监督学习的结合。
这就是机器学习大致的一个分类
发布者:全栈程序员栈长,转载请注明出处:https://javaforall.cn/140299.html原文链接:https://javaforall.cn