学习笔记学习笔记

Part1 2022吴恩达机器学习

监督学习(Supervised Learning)通过使用这些标签来指导模型的学习过程。

无监督学习(Unsupervised Learning)没有预先标记的输出标签,而是试图从输入数据中发现模式、结构和关系。

半监督学习(Semi-Supervised Learning)同时利用有标签的训练数据和无标签的训练数据来建立模型。

常见的监督学习算法包括线性回归、逻辑回归、决策树、支持向量机(SVM)和神经网络等。

无监督学习算法通常包括聚类算法(如K均值聚类、层次聚类)、主成分分析(PCA)、自组织映射(SOM)和关联规则挖掘(Apriori)等。

==================================================================================================================================================

得分函数:是指用于评估模型预测结果与真实标签之间的匹配程度的函数

损失函数:用于衡量模型的预测输出与真实标签之间的差异链式法则:

深度学习中的损失函数:
在深度学习中,梯度通常指的是损失函数对于神经网络模型参数的偏导数。梯度是损失函数对于模型参数的偏导数的向量。它告诉我们在当前参数设置下,损失函数在每个参数方向上的变化率。通过计算梯度,我们可以确定参数的变化方向和大小,以便更新参数。

神经元个数对结果的影响:

增加神经元的个数可以增加神经网络的表示能力和学习能力。更多的神经元可以提供更多的非线性特征提取能力,使得网络能够更好地适应复杂的数据模式和任务。较大的神经网络通常具有更强的拟合能力,可以更好地拟合训练数据,从而提高模型的预测性能。如果在给定的任务和数据集上过度增加神经元的个数,可能会导致过拟合问题,即模型在训练数据上表现出很好的性能,但在未见过的数据上性能下降。

在深度学习中,神经元通常被称为激活单元或神经元单元。每个神经元单元接收输入信号,并通过激活函数对这些输入进行处理,生成输出信号。在TensorFlow中,神经元单元通常被称为神经元或神经单元。在PyTorch中,它们通常被称为模块(module)或层(layer)。

具体来说,神经元单元通常由以下几个组成部分组成:

  1. 加权和(Weighted Sum):神经元单元接收来自上一层的输入信号,并与对应的连接权重相乘,然后将这些加权输入求和,形成加权和。

  2. 激活函数(Activation Function):加权和通过激活函数进行非线性变换,以产生神经元的输出信号。常见的激活函数包括ReLU(Rectified Linear Unit)、Sigmoid、Tanh等。

  3. 偏置(Bias):每个神经元单元通常还有一个偏置项,它是一个常数,用于调整神经元的激活阈值。偏置在加权和之前与输入相加。

正则化:

正则化是一种用于控制机器学习模型复杂度和减少过拟合的技术。它通过在模型的损失函数中引入额外的惩罚项,以限制模型参数的取值范围或推动参数稀疏性,从而提高模型的泛化能力。

L1正则化通过在损失函数中添加参数的绝对值之和,对模型参数进行惩罚。它的效果是推动模型参数变得稀疏,即将一些参数压缩为零,从而实现特征选择和模型简化的作用。

L2正则化通过在损失函数中添加参数的平方和,对模型参数进行惩罚。它的效果是使模型参数的取值范围更加平滑和均衡,避免参数过大的影响,从而减少模型对训练数据的过度拟合。

正则化的强度由一个称为正则化参数(regularization parameter)或惩罚因子(penalty factor)的超参数控制。该超参数决定了正则化项在损失函数中的权重,较大的正则化参数会增加正则化的影响,从而限制模型的复杂性。

激活函数:

激活函数是神经网络中的一种非线性函数,它决定了神经元的输出值。激活函数的引入使得神经网络能够学习和表示复杂的非线性关系,从而提高模型的表达能力。

Sigmoid函数将输入值映射到取值范围在0到1之间的连续输出。Sigmoid函数在二分类问题中常用作输出层的激活函数,也可以在隐藏层中使用。

ReLU函数将负数输入值映射为零,将正数输入值保持不变。ReLU函数在神经网络中常用作隐藏层的激活函数,它具有计算简单、梯度易于计算等优点。

Leaky ReLU函数是ReLU函数的变体,当输入为负数时,它引入一个小的负斜率,以保证负数输入时梯度不会完全消失。它的公式为:
f(x) = max(0.01x, x)
Leaky ReLU函数在某些情况下可以缓解ReLU函数的神经元“死亡”问题。

卷积在机器学习和计算机视觉中起着重要的作用,它是卷积神经网络(Convolutional Neural Network,CNN)的核心操作之一。

batch size:

批量大小(batch size)在深度学习中表示在一次前向传播过程中同时处理的样本数量。它指定了在训练或推理过程中,模型一次性处理的输入样本数量。

卷积提取特征  池化压缩特征

卷积核

卷积操作的基本原理是将卷积核与输入数据的局部区域进行点乘,然后将结果相加得到输出特征图中对应位置的值。这个过程可以看作是在输入数据上进行特征提取和局部感知。卷积核的权重参数是可以学习的,通过反向传播算法进行优化。

同样提取某个特征,经过不同卷积核卷积后效果也不一样(

感受野:

感受野(Receptive Field)是指神经网络中某个特定神经元对输入数据的局部区域的感知范围。感受野的大小决定了神经元对输入数据的感知能力。

堆叠小的卷积核所需要参数少,特征提取更细致,非线性特征也会多

卷积核与步长:
 

卷积操作中的步长(Stride)是指卷积核在图像上移动的步长。步长的大小直接影响卷积操作的结果和特征图的尺寸。在卷积操作中,步长的大小可以通过调整卷积核的移动步长来实现。例如,当步长为1时,卷积核每次移动一个像素;当步长为2时,卷积核每次移动两个像素,以此类推。

步长的大小对卷积操作的结果和特征图的尺寸有着重要的影响。当步长较小时,卷积操作可以更加细致地提取图像特征,但是特征图的尺寸会变大,导致计算量增加。当步长较大时,卷积操作可以更快地提取图像特征,计算量会减少,但是特征图的尺寸会变小,可能会丢失一些重要的特征信息。在实际应用中,步长的选择需要根据具体的任务和数据集进行调整。

边缘填充(padding)是一种在输入图像周围添加额外像素的方法,以控制卷积操作后输出特征图的尺寸。边缘填充通常用于解决两个问题:

  1. 尺寸减小问题:通过卷积操作,特征图的尺寸会减小。对于某些任务,如图像分割,需要保持输入和输出的尺寸一致,以便进行像素级别的预测。边缘填充可以实现这一目标。

  2. 信息丢失问题:卷积操作通常会丢失输入图像边缘的信息。边缘填充可以保留边缘信息,并在特征图的中心区域进行更多的卷积操作。

有以下几种边缘填充的方法:

  1. 零填充(Zero-padding):在输入图像的边缘填充零值像素。这是最常用的填充方法,可以保持特征图尺寸不变。例如,对于一个输入图像,如果在水平和垂直方向各填充一个像素,则输入图像的尺寸在两个方向上都增加了2个像素。

  2. 边界复制(Border replication):将输入图像边缘的像素值复制到填充区域。这种方法在边缘区域重复了原始像素值,可以保留边缘信息。

  3. 反射填充(Reflection padding):以边界像素为轴,对输入图像进行镜像反射,将反射的像素值填充到填充区域。这种方法可以在填充区域中保持图像的连续性,适用于对称结构的图像。

  4. 填充方式:除了常见的边缘填充方法外,还可以使用其他填充方式,如对称填充(Symmetric padding)和周期填充(Periodic padding),具体取决于任务需求和网络设计

卷积参数共享指的是在卷积层中,使用相同的权重参数(卷积核)对输入的不同位置进行卷积操作。

在深度学习中,卷积核的数量决定了生成的特征图的数量,而不是每个卷积核对应一个特征图。

池化:

在深度学习中,池化(Pooling)是一种常用的操作,用于减少特征图的空间维度,并提取出输入数据的重要特征。池化通常应用于卷积神经网络(CNN)等模型中,用于降低特征图的尺寸,减少参数数量,提高计算效率,并增强模型的鲁棒性。

池化操作基于滑动窗口的思想,在每个窗口区域内进行统计或聚合操作。最常用的池化操作有最大池化(Max Pooling)和平均池化(Average Pooling)。

  1. 最大池化(Max Pooling):在最大池化中,滑动窗口内的特征值被替换为该窗口内的最大值。这样可以提取出窗口区域中最显著的特征,保留了较强的激活信号,有助于提取出物体的边缘和纹理等重要特征。

  2. 平均池化(Average Pooling):在平均池化中,滑动窗口内的特征值被替换为该窗口内的平均值。这样可以对窗口区域内的信息进行平均,减少了空间维度,保留了全局特征的统计信息,有助于提取整体形状和分布等特征。

池化操作具有以下几个优点:

(1)保留主要特征的同时减少参数和计算量,防止过拟合。

(2)invariance(不变性),这种不变性包括translation(平移),rotation(旋转),scale(尺度)。

然而,池化操作也会引入一些信息丢失的问题,因为它将特征图的尺寸降低。为了减少信息损失,一些改进的池化方法也被提出,如具有可学习参数的自适应池化和重叠池化等。

果说卷积层、池化层和激活函数层等操作是将原始数据映射到隐层特征空间的话,全连接层则起到将学到的“分布式特征表示”映射到样本标记空间的作用。

LSTM(Long Short-Term Memory)是一种循环神经网络(Recurrent Neural Network,RNN)的变体,用于处理和建模时间序列数据,具有更强大的记忆能力。LSTM网络通过引入门控机制,可以有效地捕捉和利用长期依赖关系,解决了传统RNN在处理长序列时容易出现的梯度消失或梯度爆炸的问题。

STM网络的核心是LSTM单元(LSTM cell),它由一系列的门和记忆单元组成。每个LSTM单元接受当前时间步的输入数据和上一时间步的隐藏状态作为输入,并根据门控机制来控制信息的流动和记忆的更新。

一个标准的LSTM单元包含以下几个关键组件:

  1. 输入门(Input Gate):决定当前时间步的输入数据中有多少信息需要存储到记忆单元中。
  2. 遗忘门(Forget Gate):决定上一时间步的记忆单元中有多少信息需要被遗忘。
  3. 输出门(Output Gate):决定当前时间步的记忆单元中的信息有多少需要输出给下一层或下一个时间步。
  4. 记忆单元(Cell State):用于存储和传递长期依赖关系的信息。
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 1
    评论
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值