机器学习基础知识分享

1 机器学习发展历史

机器学习(Machine Learning, ML)是人工智能的一个分支,它使计算机能够在不进行明确编程的情况下从数据中学习并改进其性能。机器学习的发展可以追溯到20世纪50年代,但直到最近几十年,随着计算能力的增强和大数据的可用性增加,才真正成为一项关键的技术。

早期阶段(1950-1970年代)

1950年代:这一时期被认为是机器学习的萌芽期,出现了早期的学习算法,如感知机(Perceptron),这是最早的神经网络之一。

1960年代:研究者开始探索基于规则的方法,尝试使用逻辑推理来解决问题。

1970年代:随着计算机技术的进步,人们开始开发更复杂的算法,如决策树(Decision Trees)。

发展期(1980-1990年代)

1980年代:这个时期见证了机器学习理论的显著进步,包括支持向量机(Support Vector Machines, SVMs)、集成方法(如Boosting)以及神经网络的复兴。

1990年代:随着互联网的兴起,数据量急剧增长,这为机器学习提供了丰富的训练资源。同时,贝叶斯网络(Bayesian Networks)等概率模型也得到了发展。

爆发期(2000年代至今)

2000年代:深度学习开始崭露头角,特别是在图像识别、语音识别等领域取得了突破性的进展。

2010年代:大数据技术和云计算的发展极大地推动了机器学习的应用,特别是深度学习技术,如卷积神经网络(Convolutional Neural Networks, CNNs)和循环神经网络(Recurrent Neural Networks, RNNs)。

2020年代:随着硬件的进步和算法的创新,机器学习在自动驾驶汽车、医疗诊断、自然语言处理等方面取得了重大成就。

2 机器学习的基本原理

2.1 基本原理

机器学习的核心思想是让计算机通过经验自动改进。它通常涉及以下步骤:

  1. 数据收集:获取用于训练模型的数据集。
  2. 数据预处理:清洗数据,处理缺失值,标准化或归一化数值等。
  3. 特征选择/提取:确定哪些输入变量对预测结果最有帮助。
  4. 模型训练:选择合适的算法,并用数据训练模型。
  5. 评估与优化:测试模型的准确性,并根据需要调整参数。

应用:将训练好的模型应用于实际问题中。

2.2 主要类型

  1. 监督学习:利用带有标签的数据训练模型,目的是预测新数据的标签。常见的监督学习任务包括分类和回归。
  2. 无监督学习:在没有标签的数据集上训练模型,目的是发现数据中的模式或结构。常见的无监督学习任务包括聚类和降维。
  3. 半监督学习:介于监督学习和无监督学习之间,使用少量标记数据和大量未标记数据进行训练。
  4. 强化学习:通过与环境互动来学习最佳行为策略,以最大化某种累积奖励。

随着技术的不断进步和新算法的出现,机器学习将继续影响我们的生活方式和工作方式。

2.3 区别和联系

机器学习中,回归学习、分类学习和结构化学习是三种常见的学习任务,它们在目标、方法和应用场景上各有不同。

2.3.1 回归学习(Regression Learning)

目标:回归学习的目标是预测一个连续的数值。例如,预测房价、气温、股票价格等。

方法:回归学习通常使用线性回归、多项式回归、支持向量回归等模型来拟合数据,并预测连续的输出值。

应用场景:

  1. 房价预测:根据房屋的特征(如面积、位置、年份等)来预测其价格。
  2. 医疗领域:根据病人的生理指标预测疾病的发展或治疗效果。

2.3.2 分类学习(Classification Learning)

目标:

分类学习的目标是预测一个离散的标签。例如,将邮件分为“垃圾邮件”和“非垃圾邮件”,或者将图像分类为不同的对象类别。

方法:分类学习使用逻辑回归、决策树、随机森林、支持向量机、神经网络等模型来区分不同的类别。

应用场景:

  1. 图像识别:识别图像中的对象,如猫、狗等。
  2. 垃圾邮件过滤:根据邮件内容判断是否为垃圾邮件。

2.3.3 分类和回归的区别

浅层: 两者的的预测目标变量类型不同,回归问题是连续变量,分类问题离散变量

中层: 回归问题是定量问题,分类问题是定性问题

高层: 回归与分类的根本区别在于输出空间是否为一个度量空间

2.3.4 结构化学习(Structured Learning)

目标:

  1. 结构化学习的目标是处理和预测具有内在结构的数据,如序列、树、图等。
  2. 它不仅预测数值或类别,还可能涉及数据的结构化表示和推理。

方法:

结构化学习通常使用图神经网络(GNN)、循环神经网络(RNN)、长短时记忆网络(LSTM)、条件随机场(CRF)等模型来捕捉数据的结构特征。

应用场景:

  1. 化学分子性质预测:根据分子的结构预测其化学性质。
  2. 语言模型:生成符合语法结构的句子或进行语言翻译。
  3. 社交网络分析:分析社交网络中的关系结构,预测社交行为。

2.3.5 三者的主要区别

预测目标:回归学习预测连续值,分类学习预测离散标签,结构化学习则可能预测结构化数据的属性或行为。

数据类型:回归和分类学习通常处理表格数据或像素数据,而结构化学习处理具有明确结构的数据,如序列、图等。

模型复杂性:结构化学习模型通常比回归和分类模型更复杂,因为它们需要捕捉数据的内在结构特征。

应用范围:结构化学习在某些领域(如生物信息学、自然语言处理)具有独特的应用优势,而回归和分类学习则在更广泛的领域中应用。

每种学习任务都有其特定的应用场景和优势,选择合适的学习任务取决于问题的性质和数据的特点。

2.4 激活函数

深度学习中的激活函数起着至关重要的作用,它们为神经网络带来了几个关键的好处:

  1. 非线性:激活函数引入非线性,使得神经网络能够学习复杂的函数映射。如果一个神经网络没有激活函数,它将只能表示线性关系,这大大限制了模型的表达能力。
  2. 特征转换:激活函数可以看作是一种特征转换,它将输入信号转换成另一种形式,这有助于网络学习数据中的更深层次的特征。
  3. 缓解梯度消失问题:在训练深度神经网络时,梯度可能会随着网络层的增加而逐渐减小,导致深层网络难以训练。某些激活函数(如ReLU)有助于缓解这个问题,因为它们在正区间内具有恒定的梯度。
  4. 稀疏性:一些激活函数(如Sigmoid或Tanh)会产生稀疏的激活,这意味着在任何给定时间,只有一部分神经元被激活。这有助于减少计算量,并且可以提高模型的泛化能力。
  5. 控制神经元输出范围:激活函数可以限制神经元输出的范围,例如Sigmoid函数将输出限制在0到1之间,而Tanh函数将输出限制在-1到1之间。这有助于数值稳定性,避免梯度爆炸问题。
  6. 增加模型的灵活性:不同的激活函数具有不同的数学特性,选择适当的激活函数可以增加模型的灵活性,使其能够适应不同的数据分布和问题类型。
  7. 实现特定功能:某些激活函数具有特定的功能,例如Softmax函数通常用于多分类问题的输出层,以产生概率分布。
  8. 激励学习过程:激活函数可以激励网络中的学习过程,使得网络能够更有效地更新权重和偏置。

2.5 Sigmoid和ReLU

Sigmoid函数和ReLU函数各有其优缺点,适用于不同的应用场景。

2.5.1 Sigmoid函数

优点:

输出范围稳定:Sigmoid函数将输出值压缩在0和1之间,这使得输出值的范围稳定,适用于需要输出概率估计的场合。

平滑连续:Sigmoid函数在整个定义域内都是平滑连续的,这使得它在数学上易于处理。

梯度非零:在输入值接近0时,Sigmoid函数的梯度较大,这有助于梯度的传播。

缺点:

梯度消失:当输入值非常大或非常小时,Sigmoid函数的梯度接近于0,这会导致梯度消失问题,影响深层网络的训练。

不稀疏:Sigmoid函数的输出不是稀疏的,这意味着大多数神经元的激活值都接近于1,这可能导致网络的表达能力受限

应用场景:

二元分类问题的概率输出层。

需要输出概率值的场合,如逻辑回归。

2.5.2 ReLU函数

优点:

计算效率高:ReLU函数的计算简单,只需要一个阈值操作,这使得它在计算上非常高效

缓解梯度消失:由于在正区间内梯度恒定为1,ReLU可以缓解梯度消失问题,使得深层网络更容易训练。

稀疏激活:ReLU函数的输出是稀疏的,这意味着网络中的神经元只有一部分被激活,这有助于提高模型的泛化能力

缺点:

神经元死亡:ReLU函数在输入为负时输出为0,这可能导致某些神经元在训练过程中永远不会激活,即神经元死亡问题

不平滑:ReLU函数在x=0处不可导,这可能会在优化过程中引起问题

应用场景:

深层神经网络的隐藏层,因为它可以提高训练速度并减少梯度消失问题。

需要快速训练和较少调参的场合。

2.5.3 总结

Sigmoid函数由于其输出范围稳定和平滑连续的特性,适合于需要输出概率的场景,但在深层网络中可能会遇到梯度消失的问题。

ReLU函数由于其计算效率高和缓解梯度消失的能力,成为现代深度学习网络中隐藏层的首选激活函数,尽管它可能会遇到神经元死亡的问题。

在实际应用中,通常会根据具体问题和网络结构选择最合适的激活函数,有时也会结合使用不同的激活函数来平衡它们的优点和缺点。例如,可以使用ReLU作为隐藏层的激活函数,而在输出层使用Sigmoid函数进行概率估计。

参考文档

浅谈机器学习-回归与分类的区别_机器学习中回归和分类异同点-CSDN博客

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值