点一下关注吧!!!非常感谢!!持续更新!!!

目前已经更新到了:

  • Hadoop(已更完)
  • HDFS(已更完)
  • MapReduce(已更完)
  • Hive(已更完)
  • Flume(已更完)
  • Sqoop(已更完)
  • Zookeeper(已更完)
  • HBase(已更完)
  • Redis (已更完)
  • Kafka(已更完)
  • Spark(已更完)
  • Flink(已更完)
  • ClickHouse(已更完)
  • Kudu(已更完)
  • Druid(已更完)
  • Kylin(已更完)
  • Elasticsearch(已更完)
  • DataX(已更完)
  • Tez(已更完)
  • 数据挖掘(正在更新…)

章节内容

上节我们完成了如下的内容:

  • Tez 基本介绍
  • Tez 配置使用

大数据-194 数据挖掘 机器学习理论 有监督、无监督、半监督、强化学习-LMLPHP

简单案例

在一个酒吧里,吧台上摆着十杯几乎一样的红酒,老板说想不想玩个游戏,赢了免费喝酒,输了需要付三倍的酒钱。眼前的十杯红酒,每杯都略有不同,前五杯属于【赤霞珠】,后五杯属于【黑皮诺】,现在重新倒一杯酒,你需要正确的说出属于哪一类?

大数据-194 数据挖掘 机器学习理论 有监督、无监督、半监督、强化学习-LMLPHP
我的问题 :
大数据-194 数据挖掘 机器学习理论 有监督、无监督、半监督、强化学习-LMLPHP

算法体系

机器学习(Machine Learning, ML)是人工智能(AI)的一个分支,旨在通过数据和算法使计算机系统能够像人类一样学习和做出决策,而无需明确编程指令。机器学习的核心是从数据中提取模式,并使用这些模式对新数据进行预测或分类。

机器学习 h的方法是基于数据产生的模型算法,也称学习算法。包括有:

  • 有监督学习 (supervised learning)
  • 无监督学习(unsupervised learning)
  • 半监督学习(semi-supervised learning)
  • 强化学习(reinforcement learning)

机器学习是一种基于数据的学习方法,它依赖于大规模数据的分析,通过算法构建模型,使机器能够从数据中学习经验,进行预测、分类、聚类等操作,而无需人工明确设定规则。

有监督学习(Supervised Learning)

指对数据的若干特征与若干标签(类型)之间的关联性进行建模,只要模型被确定,就可以用用到新的未知数据上。
这类学习过程可以进一步为:【分类】classification 任务 和 【回归】regression 任务。

  • 分类任务中,标签都是离散值
  • 回归任务中,标签都是连续值

监督学习是指算法在训练过程中依赖标注好的数据集。数据集中的每一个样本都有一个对应的正确输出,算法通过这些“输入-输出”对,学习如何从输入数据预测输出。

  • 应用:分类问题(如垃圾邮件识别)、回归问题(如房价预测)。
  • 常见算法:线性回归、决策树、随机森林、支持向量机(SVM)、神经网络等。

无监督学习(Unsupervised Learning)

指对不带任何标签的数据特征进行建模,通常被看成一种“让数据自己介绍自己”的过程。
这类模型包括【聚类】clustering 任务 和 【降维】dimensionality reduction 任务。

无监督学习是指算法在没有标注数据的情况下进行训练,算法通过分析输入数据本身的特征或结构来进行学习。其目标是发现数据中的隐藏模式或群组。

  • 应用:聚类分析(如用户分群)、降维(如主成分分析)。
  • 常见算法:K均值聚类、层次聚类、主成分分析(PCA)、自编码器等。

半监督学习

另外,还有一种半监督 semi-supervised leaning 方法,介于有监督学习和无监督学习之间,通过可以在数据不完整的时候使用。

强化学习 (Reinforcement Learning)

强化学习不同于监督学习,它将学习看作是试探评价过程,以试错的方式学习,并与环境进行交互已获得惩罚指导行为,以其作为评价。
此时系统靠自身的状态和动作进行学习,从而改进行动方案以适应环境。

强化学习是通过与环境互动来学习策略的过程。算法通过不断尝试并接收环境的反馈(奖励或惩罚),来优化自己的行为决策。

  • 应用:机器人控制、自动驾驶、游戏AI。
  • 常见算法:Q学习、深度Q网络(DQN)、策略梯度方法等。

输入输出空间与特征空间

在上面的场景中,每一杯酒作为一个样本,十杯就组成一个样本集。酒精浓度、颜色深度等信息称做【特征】。这十杯酒分布式在一个【多维特征空间】中。
进入当前程序的“学习系统”的所有样本称做【输入】,并组成【输入空间】。
在学习过程中,所产生的随机变量的取值,称做【输出】,并组成【输出空间】。
在有监督的学习过程中,当输出变量均为连续变量时,预测问题成为回归问题,当输出量为有限个离散变量时,预测问题称为分类问题。

过拟合和欠拟合

当假设空间中含有不同复杂的模型时,就要面临模型选择的问题。
我们希望获得的新样本上能表现得很好的学习器,为了达到这个目的,我们应该从训练样本中尽可能学习到适用于所有潜在样本的“普遍规律”。
我们认为假设空间存在这种“真”模型,那么所选择的模型应该逼近真模型。
拟合度可以简单理解为模型对与数据集背后客观规律的掌握程度,模型对于给定数据集如果拟合度较差,则对规律的捕捉不完全,用作分类和预测时可能准确率不高。
换句话说,当模型把训练样本学的太好了,很可能已经训练样本本身的一些特点当作所有潜在样本的普遍性质,这时候所选的模型的复杂度往往会比真的模型要高,这样就会导致泛化性能下降,这种现象叫做过拟合(overfitting)。可以说,模型选择皆在避免过拟合并提高模型的预测能力。
与过拟合相对的是欠拟合(under fitting),指在学习能力低下,导致对训练样本的一般性质尚未学好。
大数据-194 数据挖掘 机器学习理论 有监督、无监督、半监督、强化学习-LMLPHP

  • 虚线:针对训练数据集计算出来的分数,即针对训练数据集拟合的准确性。
  • 实线:针对交叉数据集计算出来的分数,即针对交叉验证数据集预测的准确性。

上图中【左图】的内容,一阶多项式,欠拟合:

  • 训练数据集的准确性(虚线)和交叉验证数据集的准确性(实现)靠的很近,总体水平比较高。
  • 随着训练数据集的增加,交叉验证数据集的准确性(实现)逐渐增大,逐渐和训练数据集的准确性(虚线)靠近,但总体水平比较低,收敛在 0.88 左右。
  • 训练数据集的准确性也比较低,收敛在 0.90 左右
  • 当发生高偏差时,增加训练样本数量不会对算法准确性有较大的改善

上图中【中图】的内容,三阶多项式,较好拟合了数据集:

  • 训练数据集的准确性(虚线)和交叉验证数据集的准确性(实线)靠的很近,总体水平较高。

上图中【右图】的内容,十阶多项式,过拟合:

  • 随着训练数据集的增加,交叉验证数据集的准确性(实现)也在增加,逐渐和训练数据集的准确性(虚线)靠近,但两者之间的间隙比较大。
  • 训练数据集的准确性很高,收敛在 0.95 左右
  • 交叉验证数据集的准确性较低,最终收敛在 0.91 左右。

从上图我们看出,对于复杂的数据,低阶多项式往往是欠拟合的状态,而高阶多项式则过分捕捉噪声数据的分布规律,而噪声数据之所以称为噪声,是因为其分布毫无规律可言,或者其分布毫无价值,因此就算高阶多项式在当前训练集上拟合度很高,但其捕捉到无用规律无法推广到新的数据集上,因此该模型在测试数据集上执行过程将会有很大误差,即模型训练误差很小,但泛化的误差会很大。

机器学习的工作流程

机器学习通常包含以下几个步骤:

数据收集与预处理

数据是机器学习的基础。通常从各种来源收集数据,然后进行清洗、归一化、处理缺失值等预处理操作,以确保数据的质量。

特征工程

特征工程是指从原始数据中提取有用的特征。这一步骤对模型的性能至关重要。常见的特征处理方法包括特征选择、特征缩放、编码等。

模型选择

根据问题的类型(分类、回归、聚类等)选择适合的算法模型。不同的算法适用于不同类型的数据和任务。

模型训练

将预处理后的数据输入到选定的机器学习算法中,使用数据集中的训练数据让模型学习如何做出预测。

模型评估

训练完成后,使用测试集评估模型的性能。常用的评估指标包括准确率、精确率、召回率、F1分数、均方误差等。

模型调优

通过调整模型的参数或引入更多数据等手段,进一步优化模型的表现。

模型部署与应用

一旦模型通过了评估,它就可以被部署在实际应用中,比如推荐系统、自动驾驶、语音识别等。

常见的机器学习算法

  • 线性回归(Linear Regression):用于解决回归问题的基础算法,寻找输入变量和输出变量之间的线性关系。
  • 逻辑回归(Logistic Regression):用于二分类问题的算法,输出一个概率值,表示输入数据属于某一类别的可能性。
  • 决策树(Decision Tree):一种基于树形结构的分类或回归算法,通过递归划分数据空间来构建模型。
  • 随机森林(Random Forest):决策树的集成方法,通过训练多个决策树并综合其预测结果,提高模型的准确性和鲁棒性。
  • 支持向量机(SVM):用于分类和回归问题,能够找到最优的决策边界来最大化不同类别的分隔。
  • K均值聚类(K-Means Clustering):一种无监督学习算法,用于将数据点分成k个簇,使得同一簇内的数据点尽可能接近。
  • 神经网络(Neural Networks):模仿人脑神经元的工作方式,由多层神经元组成,用于处理复杂的非线性问题。

机器学习面临的挑战

  • 数据质量:模型的性能很大程度上依赖于数据的质量和数量,缺失值、噪声、偏差等问题都会影响学习效果。
  • 模型过拟合:模型在训练数据上表现优异,但在新数据上效果不佳,称为过拟合。这通常发生在数据量少且模型复杂的情况下。
  • 可解释性:复杂的机器学习模型(如深度学习)往往难以解释其内部的决策逻辑,使得模型的透明度和信任度成为一个问题。
10-29 05:40