【机器学习】于混沌的音符里:机器学习同信息论的灵感交织

在这里插入图片描述

个人主页:GUIQU.
归属专栏:科学技术变革创新

在这里插入图片描述

正文

1. 机器学习概述

1.1 机器学习的定义

机器学习,作为当今科技领域炙手可热的词汇,犹如一颗璀璨的明珠,在众多学科的交汇点上闪耀着独特的光芒。它的定义丰富多样,如同不同角度的棱镜折射出多彩的光。吴恩达曾言:“Machine Learning is the science of getting computers to act without being explicitly programmed. Machine learning is a technique of data science that helps computers learn from existing data in order to forecast future behaviors, outcomes, and trends.” 微软也指出:“机器学习是一种数据科学技术,帮助计算机从现有数据中学习,以预测未来的行为、结果和趋势。” 而 Mitchell 则简洁地概括为:利用经验来改善计算机系统自身的性能。尽管表述各异,但核心要义相通,即从已知数据中挖掘知识,进而解决未知问题。

1.2 机器学习与相关领域的关系

机器学习与人工智能、深度学习紧密相连,却又各具特色。人工智能宛如一片广阔无垠的天空,涵盖了众多领域和技术,旨在让机器模拟人类的智能行为,其范畴极为宽泛;机器学习则是这片天空中一片绚丽的云彩,通过特定的算法和模型,让机器从数据中学习规律和模式,以实现对未知数据的预测和判断;深度学习更是机器学习这片云彩中一颗耀眼的星辰,它以深度神经网络为主要手段,能够自动提取数据的高级特征,在图像识别、语音识别等诸多领域展现出惊人的实力,近年来发展势头迅猛,成为研究热点。

2. 机器学习基本术语解析

2.1 样本

  • 样本:数据中的一个例子,通常用表示,如,由个特征描述,一个完整的样本还应有其对应的结果,可用表示一个训练样本。例如在一个房价预测的数据集里,可能包含房屋面积、房龄、周边配套设施数量等特征,而则是该房屋的实际价格。

2.2 特征

  • 特征:描述样本的属性,比如描述一个人,可以用身高、体重、性别、年龄等等。在图像识别中,图像的像素值、颜色分布等都可以作为特征;在文本分类中,单词的出现频率、词性等也能作为特征来描述文本。

2.3 特征空间(样本空间、输入空间)

  • 特征空间(样本空间、输入空间):由样本的特征张成的空间。特征空间里的一个点(一个示例)就是一个样本。比如一个二维特征空间,以身高和体重为两个坐标轴,那么每一个人的身高体重数据就对应这个空间里的一个点,也就是一个样本。

2.4 输出空间

  • 输出空间:结果输出的取值范围。例如在手写数字识别任务中,输出空间就是这十个数字;在判断邮件是否为垃圾邮件的任务中,输出空间就是。

2.5 训练集、验证集和测试集

训练集(training set)是机器用来学习的样本集合,它包含了大量的有标记(在监督学习中)或无标记(在无监督学习中)的数据,模型通过对训练集的学习来发现数据中的模式和规律。例如在训练一个识别动物的模型时,训练集可能包含成千上万张不同动物的图片以及它们对应的动物类别标签。

验证集(validation set)在机器的学习过程中,用来指导其学习的样本集合。在训练过程中,模型会在验证集上进行评估,通过验证集上的表现来调整模型的参数和结构,以防止过拟合,找到一个在泛化能力和训练准确性之间较好的平衡。比如在训练一个深度学习模型时,每训练一定的轮数(epochs),就会在验证集上计算准确率、损失值等指标,根据这些指标来决定是否继续训练、调整学习率等超参数。

测试集(test set)用来测试机器学习效果好坏的集合,它是独立于训练集和验证集的数据,代表了模型在实际应用中可能遇到的新数据。我们希望模型能够在测试集上表现良好,以证明其具有良好的泛化能力。例如在一个医疗诊断模型训练完成后,使用一组从未见过的患者数据作为测试集,来评估模型在真实诊断场景中的准确性。

训练集、验证集和测试集的划分需要遵循一定的原则,通常采用随机划分的方式,并且要保证数据分布的一致性,使得它们能够代表整个数据集的特征。三者的关系紧密且相辅相成,训练集为模型提供学习的素材,验证集帮助优化模型的训练过程,测试集则是对模型最终性能的检验。合理地划分和使用这三个集合,对于构建一个准确、可靠且具有良好泛化能力的机器学习模型至关重要。

3. 机器学习三要素阐释

3.1 模型

  • 模型:模型乃是解决具体任务所运用的基础架构,如同搭建房屋的蓝图。在图像识别领域,卷积神经网络(CNN)模型大放异彩。例如在人脸识别系统中,CNN 模型能够通过对大量人脸图像的学习,提取出人脸的关键特征,如眼睛、鼻子、嘴巴等部位的形状、位置和纹理信息,从而准确地判断出一张新图像中是否为人脸以及是哪个人的脸。而在自然语言处理的机器翻译任务中,循环神经网络(RNN)及其变体如长短期记忆网络(LST M)和门控循环单元(GRU)模型则表现出色,它们可以学习到不同语言的语法、词汇和语义等知识,实现较为准确的文本翻译。模型的选择直接关乎任务的解决效果,合适的模型能够高效地捕捉数据中的规律和模式,为后续的预测和决策提供坚实的基础。

3.2 策略

  • 策略:策略即获取最优模型的准则,也就是评价模型好坏的指标,其核心作用在于通过降低该指标来优化模型。在神经网络中,损失函数便是一种常见的策略体现。例如均方误差损失函数,常用于回归问题,如预测房价、股票价格等。若模型预测的房价与实际房价之间的均方误差越小,说明模型的预测值与真实值越接近,模型性能就越好。在分类问题中,交叉熵损失函数应用广泛,如手写数字识别,模型预测的数字类别概率分布与真实类别概率分布之间的交叉熵越小,表明模型对数字类别的判断越准确。通过不断地调整模型参数,使得损失函数值逐渐减小,从而达到优化模型的目的,使模型在训练数据上的表现越来越好,并期望在未知数据上也能有良好的泛化能力。

3.3 算法

  • 算法:算法是优化模型的具体方法,以神经网络为例,存在多种梯度下降方法可供选择。随机梯度下降(SGD)在每次迭代时,随机选取一个样本的梯度来更新模型参数,这种方法计算速度快,但由于样本的随机性,可能导致参数更新方向不稳定,收敛路径较为曲折;批量梯度下降(BGD)则是在每次迭代时使用整个训练集的梯度来更新参数,它能够保证参数更新方向较为稳定,但计算量巨大,尤其是在大规模数据集上,训练速度会非常慢;小批量梯度下降(Mini-Batch Gradient Descent)结合了两者的优点,每次选取一小批样本计算梯度来更新参数,既保证了一定的计算效率,又使得参数更新相对稳定,在实际应用中较为常用。此外,还有自适应学习率的优化算法,如 Adagrad、Adadelta、Adam 等,它们能够根据参数的历史梯度信息自动调整学习率,使得模型在训练过程中能够更快地收敛到较好的结果,不同的算法适用于不同的场景和模型结构,合理选择算法对于模型的训练效率和性能提升具有重要意义。

4. 熵(Entropy)的深度剖析

4.1 熵的概念与直观理解

熵(Entropy)在信息论中占据着关键地位,它主要用于评估信息的随机性。从直观角度来看,熵反映了信息的不确定程度。想象一个事件,其可能的结果越多样且每个结果发生的概率越接近均匀分布,那么该事件所蕴含的不确定性就越高,熵值也就越大;反之,若某个结果发生的概率极高,其他结果几乎不可能发生,此时信息的确定性很强,熵值则较小。

4.2 熵在不同算法中的应用

在决策树算法中,熵有着重要的应用。例如在一个根据天气、温度、湿度等特征来判断是否适合进行户外活动的决策树构建过程中,我们首先计算整个数据集的熵,然后在选择分裂特征时,会计算每个特征下不同取值所对应的熵值,以信息增益(即原始熵减去分裂后熵的加权和)作为衡量标准,选择信息增益最大的特征进行分裂,这样可以使决策树在每次分裂时尽可能地降低不确定性,从而更好地对数据进行分类和预测。在聚类算法里,熵可用于评估聚类后类别分布的随机性。如果聚类结果使得各个类别内的数据点非常集中,类别之间界限分明,那么整体的熵值就会相对较低,说明聚类效果较好;反之,若存在大量数据点处于类别边缘或类别划分不清晰,导致不确定性增加,熵值就会升高。对于语言模型而言,熵可以用来评估文本序列的不确定性。例如在一个基于概率的语言模型中,熵值越低,说明模型对下一个单词的预测越准确,文本的生成越符合语法和语义规则,不确定性越小。

4.3 熵的 Python 实现

以下是使用 Python 实现熵计算的代码示例:

import numpy as np

# 定义熵函数
def entropy(p):
    return -np.sum(p * np.log2(p))

# 示例概率分布
p = np.array([0.5, 0.25
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

Guiat

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值