2.监督学习之分类

starrow starrow     2023-01-06     236

关键词:

1.1监督学习

机器学习的第一种范式是监督学习(Supervised learning),学习的目标是根据输入预测输出的函数。例如,输入是患者的检查数据,输出是疾病的诊断结果;输入是动物图片,输出是它们的名称;输入是未来的某个日期,输出是该日的降雨量。输出值定性还是定量,对问题描述和所用学习方法影响很大,因而习惯上监督学习以其为标准分为两个主题。如果输出值是定性和离散的,监督学习称为分类(Classification),其输出值又称为类别,如患者某项疾病的诊断结果。如果输出值是定量的(常常是连续的),监督学习则称为回归(Regression),如对降雨量的预测。

1.1.1分类

让我们通过一个例子来认识分类。假设我是一家汽车卖场的老板,且拥有所有进入卖场的顾客的年龄和收入数据。我想预知某位顾客是否会买车。用监督学习的术语来说,就是根据顾客的年龄和收入对他们进行分类,一类是会买车的,一类是不会买车的。从函数的角度看,输入是顾客的年龄和收入,输出则是一个表明他是否会买车的值。为了得出该函数,监督学习必须具备大量训练所用的数据,其中的每个实例既包括输入,也包括所期望函数的输出。这些已知的输出被称为数据的标记(Label),所以监督学习所用的数据被称为标记数据。

回到上述例子,一个标记数据的实例由一位走进商场顾客的年龄、收入和他有没有买车组成。要建立一个从输入到输出的函数,有多种不同的方式。这里采用几何的方式,以平面上的点来表示数据实例,以几何线条来直观地代表函数。如图1.1所示,横轴表示收入,纵轴表示年龄,每个点代表一位顾客,灰色代表他最终没有买车,黑色则相反。

图1.1 汽车卖场顾客的训练数据

如图1.2所示,最简单的函数是一根垂直于横轴的直线,直线的左边绝大多数是灰点,右边则基本上是黑点。此函数意为,若顾客的收入低于某个值,就不会买车;若高于该值,则会买车。值得注意的是,该函数只使用了提供给它的两个输入变量中的一个——收入,而忽略了另一个变量——年龄。应该说它的表现还不错,除了少数例外,它正确区分了灰点和黑点。

 图1.2 用一条垂直于横轴的线对顾客进行分类

当然该函数可以改进。在图1.3中,两个原本在直线右侧的灰点被新的直线划归进正确的类别。这样,直线的左边除了一个黑点,全是灰点;而直线的右边除了一个灰点,全是黑点。新函数的表现较好,因为它不仅使用了收入变量,也使用了年龄变量。当顾客的年龄上升时,决定他是否会买车的阈值会提高,或者反过来说,在收入相同时,年轻顾客比年长顾客更倾向于会买车。

图1.3 用一条斜线对顾客进行分类

还可以继续改进该函数,在图1.4中,除了一个讨厌的灰点外,所有的灰点和黑点都处于曲线的正确一侧。

回顾至此所用的三个函数:

  • 第一个函数是垂直于横轴的直线,只需一个横轴的截距就可以定义,
  • 第二个函数是斜线,需要截距和斜率两个参数来定义,
  • 第三个函数复杂一些,可以看作一条二次曲线,因此需要三个参数来定义,

 函数的表现越来越好,与此同时,也变得越来越复杂,计算参数的成本越来越高。然而函数的复杂度与其表现之间的正比关系并不会一直延续。如图1.5所示,继续改进函数的表现,最后一个例外也被消除。但是很明显,这条曲线不像是我们要找的函数——它太古怪了。仅仅为了将一个灰点划入正确的一侧,函数的定义至少需要增加两个参数,成本过高。从另一个角度看,这个灰点被包围在黑点的海洋中,很可能是不正常的。也许这位顾客实际买了车,却没有被记录;又或许他正要买车,忽然接到了一个电话,离开了。总之,这个数据实例很可能是噪声。所以,二次曲线不仅更简单也更准确,被选为预测分类的函数。

图1.5 用一条复杂的曲线对顾客进行分类

容易想象分类的应用场景:将医疗影像按照求诊者是否患病来分类就是疾病诊断,将手写文字按照字符来分类就是文字识别,将语音按照词汇的发音来分类就是语音识别,将网页按照与关键字是否有关来分类和排序就是搜索引擎,将商品和服务按照用户是否感兴趣来分类就是推荐系统。

无监督学习之聚类2——dbscan

根据学生月上网时间数据运用DBSCAN算法计算:#coding=utf-8importnumpyasnpimportsklearn.clusterasskcfromsklearnimportmetricsimportmatplotlib.pyplotaspltmac2id=dict()onlinetimes=[]f=open(‘F:dataTestData.txt‘,encoding=‘utf 查看详情

[机器学习][k-means]无监督学习之k均值聚类

有监督学习虽然高效、应用范围广,但最大的问题就是需要大量的有标签的数据集,但现实生活中我们遇到的大量数据都是没有明确标签的,而且对于庞大的数据集进行标注工作本身也是一项费时费力的工作模式,所以我们希望... 查看详情

无监督学习之聚类1——kmeans

Kmeans算法分析31省市消费水平#coding=utf-8importnumpyasnpfromsklearn.clusterimportKMeansdefloadData(filepath):fr=open(filepath,‘r+‘)lines=fr.readlines()retData=[]retCityName=[]forlineinlines:items=line.strip().s 查看详情

无监督学习之rbm和autoencoder

几种学习方式半监督学习TransferLearningSelf-talkLearningRBMRBM的类别BoltzmannMachineRestrictedBoltzmannMachineEvaluationInferenceTraining网络结构训练过程概率分布计算与GibbsSampling对比散度ContrastiveDivergence泛化实例AutoEncoder特点实例有标签的数据 查看详情

《python机器学习及实践》----无监督学习之特征降维

本片博客是根据《Python机器学习及实践》一书中的实例,所有代码均在本地编译通过。数据为从该书指定的百度网盘上下载的,或者是sklearn自带数据下载到本地使用的。代码片段:#coding:utf-8importnumpyasnpM=np.array([[1,... 查看详情

无监督学习之rbm和autoencoder(代码片段)

几种学习方式半监督学习TransferLearningSelf-talkLearningRBMRBM的类别BoltzmannMachineRestrictedBoltzmannMachineEvaluationInferenceTraining网络结构训练过程概率分布计算与GibbsSampling对比散度ContrastiveDivergence泛化实例AutoEncoder特点实例有标签的数据 查看详情

3.监督学习之回归及归纳偏好

1.1.2回归同样,用一个简单的例子来说明回归。这次我变成一个天气爱好者,想知道每天不同时间的气温。预测函数的输入是时间,输出是该时间的气温。回归也需要训练数据,这里的数据是我记录的一天当中若... 查看详情

3.监督学习之回归及归纳偏好

1.1.2回归同样,用一个简单的例子来说明回归。这次我变成一个天气爱好者,想知道每天不同时间的气温。预测函数的输入是时间,输出是该时间的气温。回归也需要训练数据,这里的数据是我记录的一天当中若... 查看详情

《python机器学习及实践》----无监督学习之数据聚类

本片博客是根据《Python机器学习及实践》一书中的实例,所有代码均在本地编译通过。数据为从该书指定的百度网盘上下载的,或者是sklearn自带数据下载到本地使用的。代码片段:#coding:utf-8#分别导入numpy、matplotlib以... 查看详情

《python机器学习及实践》----无监督学习之特征降维

本片博客是根据《Python机器学习及实践》一书中的实例,所有代码均在本地编译通过。数据为从该书指定的百度网盘上下载的,或者是sklearn自带数据下载到本地使用的。代码片段:#coding:utf-8importnumpyasnpM=np.array([[1,... 查看详情

5.1_非监督学习之sckit-learn(代码片段)

 非监督学习之k-meansK-means通常被称为劳埃德算法,这在数据聚类中是最经典的,也是相对容易理解的模型。算法执行的过程分为4个阶段。1.首先,随机设K个特征空间内的点作为初始的聚类中心。2.然后,对于根据每个数据的... 查看详情

自监督学习之掩码自动编码器(maskedautoencoders,mae)——音频识别方面

自监督学习之掩码自动编码器(MaskedAutoencoders,MAE)——音频识别方面1.参考文献《MaskedAutoencodersthatListen》2.背景Transformers和self-supervisedlearning(自监督学习)占据了计算机视觉(ComputerVision,CV)和自然语言处理(naturallanguageprocessing,NLP)的主... 查看详情

监督学习&非监督学些

监督学习 1-3-SupervisedLearning 在监督学习中,数据集中的每个例子,算法将预测得到例子的“”正确答案“”,像房子的价格,或者溜是恶性的还是良性的。 回归 回归的目标是预测一个连续的输出值 分类 ... 查看详情

在 Python 中使用 MNIST FASHION 为图像分类准备/渲染图像

...我桌面上的图像进行分类。出于这个原因,图像必须在监督学习之前准备 查看详情

分类与监督学习,朴素贝叶斯分类算法

1.理解分类与监督学习、聚类与无监督学习。(1)简述分类与聚类的联系与区别。   分类是根据规则进行的,你把这个规则建立起来後还可以运用到其他尚未分类的数据,同时还可以根据新的已有类别数据修正分类规... 查看详情

迁移学习

...ning背景  吴恩达(AndrewNg)曾说:迁移学习将会是继监督学习之后的下一个机器学习商业成功的驱动力。  人类的语言使得代际之间的迁移学习变得可能,在语言 查看详情

machinelearn机器学习及其基础概念简介

...试集等介绍。接着分别介绍机器学习常用算法,分别是监督学习之分类(决策树、临近取样 查看详情

深度学习之图像分类(二十六)--convmixer网络详解(代码片段)

深度学习之图像分类(二十六)ConvMixer网络详解目录深度学习之图像分类(二十六)ConvMixer网络详解1.前言2.ASimpleModel:ConvMixer2.1PatchEmbedding2.2ConvMixerLayer2.3ConvMixer网络结构2.4实现代码:3.WeightVisualizations4 查看详情