热门标签 | HotTags
当前位置:  开发笔记 > 编程语言 > 正文

深入解析监督学习的核心概念与应用

本文深入探讨了监督学习的基本原理及其广泛应用。监督学习作为机器学习的重要分支,通过利用带有标签的训练数据,能够有效构建预测模型。文章详细解析了监督学习的关键概念,如特征选择、模型评估和过拟合问题,并介绍了其在图像识别、自然语言处理等领域的实际应用。

2019独角兽企业重金招聘Python工程师标准>>> hot3.png

机器学习分为监督学习,非监督学习,强化学习和深度学习。

监督学习,是从标记的训练数据来推断一个功能的机器学习任务。

比如,在家里教宝宝认识苹果和梨,你拿出四个苹果和四个梨,放桌子上教宝宝认识这些水果。这些苹果和梨就是已经标注好的数据。

然后指着苹果对宝宝说:“来,宝宝,往这看,这是苹果,来跟我念,苹——果——。”

“苹——果——。”

“好。”

然后又指着香蕉对宝宝说:“来,看这里,这是梨,来给我念,梨——。”

“梨——。”

依次把这些水果都教宝宝认一遍。这就是监督学习的训练过程,训练完成后还要做一下测试,看看宝宝是否都学习会了。

监督学习中,一般把数据分成两部分,一部分是学习数据,占总数据集的80%以上,一部分是测数据,占总数据集的20%一下。测试时,你从冰箱里拿出一个苹果和一个梨,问宝宝:“宝宝,这是什么呀?”。这就是监督学习的测试过程。

在测试中,宝宝把苹果认错了,你分析发现,原来你教宝宝的时候用的是红苹果,测试时,用的是青苹果。这说明你对数据划分的不合理,训练数据中应该包括红苹果和青苹果。

为了避免这个问题,在训练时,先把数据随机打乱,再把数据分成训练数据和测试数据。

其实在真正的监督学习中,学习过程类型与上面说的类似,只是在学习时,使用了一些算法,数据量级也是上百万,上千万,甚至上亿的。

为了训练出更好的机器学习模型,我们会先选择一个合适的机器学习算法,再为这个算法准备好不同的参数。

在训练时,我们把学习算法和参数结合起来,组合成一个模型。为选出一个最好的模型,我们会使用一些交叉验证法,计算出一个得分,哪个模型得分高就选哪个模型。

交叉验证法有很多种,我们一般使用K折交叉验证。K折交叉验证是把训练数据分成K份,然后依次拿出一份做为验证数据,其剩下他的K-1份数据做为训练数据,用来训练机器学习模型,训练完成后,再拿验证数据,测试模型得分。 这样循环执行K次,然后再把每次验证得分加一起算平均值,作为模型的得分,得分最高的模型,就是我们选取的模型。

然后再用测试数据测试我们选取的模型,看看它的正确率怎么样。

有时我们在训练时,得分很高,但是在测试时,正确率却很低。我们把这种现象叫过拟合。过拟合出现的原因是训练条件太苛刻了。比如,你在教宝宝认苹果的时候,拿出一个红苹果,对宝宝说:“宝宝,这是苹果,它的颜色的红的,上面还有个把。” 然后你再拿出来一个红色没把的苹果,他就不认识了。因为你教他的时候,条件太苛刻了,红色带把的苹果叫苹果。这就叫过拟合。

出现过拟合,那么我们就需要,调整参数,再重新训练。找到最好的模型,然后测试。直到测试的正确率满意为止。


转:https://my.oschina.net/u/587323/blog/1596840



推荐阅读
  • 《计算机视觉:算法与应用》第二版初稿上线,全面更新迎接未来
    经典计算机视觉教材《计算机视觉:算法与应用》迎来了其第二版,现已开放初稿下载。本书由Facebook研究科学家Richard Szeliski撰写,自2010年首版以来,一直是该领域的标准参考书。 ... [详细]
  • 计算机视觉初学者指南:如何顺利入门
    本文旨在为计算机视觉领域的初学者提供一套全面的入门指南,涵盖基础知识、技术工具、学习资源等方面,帮助读者快速掌握计算机视觉的核心概念和技术。 ... [详细]
  • 尤洋:夸父AI系统——大规模并行训练的深度学习解决方案
    自从AlexNet等模型在计算机视觉领域取得突破以来,深度学习技术迅速发展。近年来,随着BERT等大型模型的广泛应用,AI模型的规模持续扩大,对硬件提出了更高的要求。本文介绍了新加坡国立大学尤洋教授团队开发的夸父AI系统,旨在解决大规模模型训练中的并行计算挑战。 ... [详细]
  • 对于初学者而言,搭建一个高效稳定的 Python 开发环境是入门的关键一步。本文将详细介绍如何利用 Anaconda 和 Jupyter Notebook 来构建一个既易于管理又功能强大的开发环境。 ... [详细]
  • Python 领跑!2019年2月编程语言排名更新
    根据最新的编程语言流行指数(PYPL)排行榜,Python 在2019年2月的份额达到了26.42%,稳坐榜首位置。 ... [详细]
  • 精选10款Python框架助力并行与分布式机器学习
    随着神经网络模型的不断深化和复杂化,训练这些模型变得愈发具有挑战性,不仅需要处理大量的权重,还必须克服内存限制等问题。本文将介绍10款优秀的Python框架,帮助开发者高效地实现分布式和并行化的深度学习模型训练。 ... [详细]
  • 利用Dlib进行高效的人脸特征提取与识别
    本文介绍了Dlib库,一个集成了多种机器学习算法的C++工具包,特别适用于需要处理复杂任务的应用场景。Dlib不仅支持机器人技术、嵌入式系统开发、移动应用及高性能计算环境,还提供了强大的人脸检测与特征提取功能。 ... [详细]
  • 时序数据是指按时间顺序排列的数据集。通过时间轴上的数据点连接,可以构建多维度报表,揭示数据的趋势、规律及异常情况。 ... [详细]
  • 深入浅出:Hadoop架构详解
    Hadoop作为大数据处理的核心技术,包含了一系列组件如HDFS(分布式文件系统)、YARN(资源管理框架)和MapReduce(并行计算模型)。本文将通过实例解析Hadoop的工作原理及其优势。 ... [详细]
  • 深度学习与神经网络课程总结
    本文档总结了神经网络和深度学习课程中的关键概念和理论,包括机器学习的基本要素、算法类型以及数据特征表示等。 ... [详细]
  • 吴石访谈:腾讯安全科恩实验室如何引领物联网安全研究
    腾讯安全科恩实验室曾两次成功破解特斯拉自动驾驶系统,并远程控制汽车,展示了其在汽车安全领域的强大实力。近日,该实验室负责人吴石接受了InfoQ的专访,详细介绍了团队未来的重点方向——物联网安全。 ... [详细]
  • 本周三大青年学术分享会即将开启
    由雷锋网旗下的AI研习社主办,旨在促进AI领域的知识共享和技术交流。通过邀请来自学术界和工业界的专家进行在线分享,活动致力于搭建一个连接理论与实践的平台。 ... [详细]
  • AI炼金术:KNN分类器的构建与应用
    本文介绍了如何使用Python及其相关库(如NumPy、scikit-learn和matplotlib)构建KNN分类器模型。通过详细的数据准备、模型训练及新样本预测的过程,展示KNN算法的实际操作步骤。 ... [详细]
  • 深入解析层次聚类算法
    本文详细介绍了层次聚类算法的基本原理,包括其通过构建层次结构来分类样本的特点,以及自底向上(凝聚)和自顶向下(分裂)两种主要的聚类策略。文章还探讨了不同距离度量方法对聚类效果的影响,并提供了具体的参数设置指导。 ... [详细]
  • 计算机学报精选论文概览(2020-2022)
    本文汇总了2020年至2022年间《计算机学报》上发表的若干重要论文,旨在为即将投稿的研究者提供参考。 ... [详细]
author-avatar
霙昉蘖976
这个家伙很懒,什么也没留下!
PHP1.CN | 中国最专业的PHP中文社区 | DevBox开发工具箱 | json解析格式化 |PHP资讯 | PHP教程 | 数据库技术 | 服务器技术 | 前端开发技术 | PHP框架 | 开发工具 | 在线工具
Copyright © 1998 - 2020 PHP1.CN. All Rights Reserved | 京公网安备 11010802041100号 | 京ICP备19059560号-4 | PHP1.CN 第一PHP社区 版权所有