机器学习--整体整理

本文概述了机器学习的基础概念,包括监督和无监督学习任务,如分类、回归和聚类,以及在线学习和核外学习的特点。讨论了模型参数与超参数的区别,强调了过拟合和欠拟合问题,并介绍了测试集、验证集和交叉验证在模型评估中的作用。作者计划深化学习Python机器学习框架,以解决实际问题。
摘要由CSDN通过智能技术生成

场景

学习机器学习有一阵子了,已经了解了不少机器学习的算法和知识,甚至前面训练了一些demo模型,现在是时候整体的整理一下我的知识了。

整理

还是从学习三要素开始,WHAT,WHY,HOW

什么是机器学习?

机器学习是一种人工智能的分支,其目标是通过对数据进行学习,使计算机系统能够从数据中学习并改进,并且掌握一些规律,而无需显式地进行编程。

机器学习为了什么,解决哪些问题?

分类:将实例分到预定义的类别中。
例如:

  1. 电子商务平台根据用户购买历史将用户分为不同的消费者类型,如高消费者、低消费者等
  2. 医学诊断系统根据患者的症状将疾病分为不同的类别

回归:预测连续值输出。
例如:

  1. 房价预测:根据房屋的特征(如面积、地理位置等)预测房价。

聚类:将数据集中的实例分成相似的组。
例如:

  1. 市场细分:根据消费者的购买行为将市场细分为不同的消费者群体,以便制定针对性的营销策略。
  2. 新闻主题分类:将大量的新闻文章按照相似的主题进行分类,方便用户查找感兴趣的内容。

降维:减少数据维度,保留最重要的信息。
例如:

  1. 图像处理:将高分辨率图像降维到更低的维度。
  2. 文本挖掘:将大量的文本数据降维到更低维度的表示。

最常见的两种监督式学习任务是什么?

最常见的两种监督式学习任务是分类和回归。

什么是被标记的训练数据集?

被标记的训练数据集是指每个实例都有对应的标签或输出结果的数据集。

常见的无监督式学习任务有哪些?

无监督式学习任务包括聚类、降维、关联规则学习和异常检测。

要让一个机器人在各种未知的地形中行走,你会使用什么类型的机器学习算法?

强化学习算法,]包括深度强化学习算法,来让机器人在尝试中学习如何最大化累积奖励。

要将顾客分成多个组,你会使用什么类型的算法?

聚类算法

你会将垃圾邮件检测的问题列为监督式学习还是无监督式学习?

监督式学习

什么是在线学习系统?

在线学习区别于这个批量学习,批量学习指的是训练整体数据集,所谓在线学习,就是支持增量。它可以逐步接收新数据并自动适应,缺点是可能会有知识遗忘。

什么是核外学习?

在核外学习中,数据量太大以至于无法一次性加载到内存中,因此需要在有限的内存空间下进行模型训练和处理。这种情况下,通常采用分块加载数据的方式,每次从存储介质中读取一部分数据到内存中,进行模型训练或预测,然后释放内存,再加载下一部分数据,如此往复,直到处理完整个数据集。这个在QA机器人中有实战,数据集包含数十几万条文本记录,无法一次性加载到内存中,所以将数据集分成多个较小的块,每个块包含一部分文本记录。然后,模型可以逐块加载数据,进行训练。在每个训练步骤中,模型只使用当前块中的数据,而不是整个数据集。

什么类型的学习算法依赖相似度来做出预测?

基于实例的学习算法。这类算法不会显式地建立模型来描述数据的内在结构,而是通过将新实例与训练集中的实例进行比较,并基于相似度来做出预测或分类。

模型参数与学习算法的超参数之间有什么区别?

模型参数是由学习算法自动学习得到的(如梯度下降算法中优化代价模型中的参数),而超参数通常是在训练之前手动设定的(如步长,训练次数)

基于模型的学习算法搜索的是什么?它们最常使用的策略是什么?它们如何做出预测?

搜索的是模型的参数空间,以找到最优的参数值来最小化损失函数。这些算法的目标是通过对模型参数的调整来拟合训练数据,并尽可能地泛化到新的未见数据。最常使用的策略之一是梯度下降算法,之前曾经用过预测房价,原理很清楚,通过沿着损失函数的负梯度方向更新模型参数,以使损失函数逐步减小。

机器学习中的主要挑战是什么?

数据质量、过拟合、欠拟合和解释模型的预测结果等问题

如果你的模型在训练数据上表现很好,但是应用到新的实例上的泛化结果却很糟糕,是怎么回事?怎么解决呢?

如果模型在训练数据上表现很好但在新实例上的泛化能力很差,可能的原因包括过拟合、数据集不够代表性以及模型选择不当。解决方案可能包括增加训练数据、简化模型。

什么是测试集,为什么要使用测试集?

测试集是用来评估模型性能的数据集,使用测试集是为了估计模型在新数据上的泛化能力。

验证集的目的是什么?

在后面的几个学习中,我们引入了验证集,引入验证集的目的是验证集的目的是用来调整模型的超参数,以提高模型的性能,并且防止过拟合训练数据。、

如果使用测试集调整超参数会出现什么问题?

导致模型在测试集上过拟合从而模型的泛化能力差。

什么是交叉验证?它为什么比验证集更好?

交叉验证是一种通过将数据集划分为多个子集,轮流使用其中一部分作为验证集来评估模型性能的方法。它比单一验证集更好,因为可以更充分地利用数据,并且对模型性能的评估更加稳健。

结束

现在我已经对这段时间的学习有一个整体的概念上的整理了,后面我的方向和之前算法demo有所不同,我决定通过现有的python机器学习框架对深度学习(包括机器学习)有一个全面的学习,从而能够解决实际的我们需要面对的问题和挑战。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值