
深度学习(基础)
文章平均质量分 84
1
不负韶华ღ
这个作者很懒,什么都没留下…
展开
-
生成对抗网络(GAN)
对抗”的含义就是生成器通过不断的训练尽可能的生成以假乱真的图像,判别器通过不断的识别尽可能的区分图像的真假。第一张图是训练集选取的部分图片,第二张图片是由生成器产生的图片,可以看出,通过多次训练,生成可以生成比较接近训练集图片的图片。生成器的训练过程,简单来说就是,给定网络,给定标签,然后更新输入(这里是随机数据,可以符合一定的分布),使输出图像对应的标签逐渐靠近给定的标签;也是生成对抗网络中的一部分,用于识别出哪些是有生成网络生成的“假”数据,哪些是真正的训练集数据。原创 2022-04-15 10:08:52 · 9743 阅读 · 2 评论 -
循环神经网络(RNN)
久风山思市诏屐,雪矣不丘见中干。在上图中,输入门用来决定什么值应该更新,遗忘门用来决定需要丢弃的信息,输出门输出我们确定输出的那部分,这个输出会基于当前的细胞状态,是一个过滤后的版本。复位门决定了如何将新的输入信息与前面的记忆相结合,更新门用于控制前一时刻的状态信息被带入到当前状态中的程度,也就是更新门帮助模型决定到底要将多少过去的信息传递到未来,简单来说就是用于更新记忆。门控循环网络可以说是简化的LSTM,GRU把内部状态向量和输出向量合并,统一为状态向量,门控数量也较少,只有复位门和更新门两个。原创 2022-04-13 16:18:13 · 830 阅读 · 0 评论 -
卷积神经网络(CNN)
基本概念卷积卷积的目的是为了从图像中提取特征。可以从输入的一小块数据中学到图像的特征,并且可以保留像素间的空间关系。下面用一张图来表示卷积的具体操作:池化池化可以降低输入表示的空间尺度,是输入特征维度变小,也会使网络中的参数和计算的数量更加可控的变小,因此可以控制过拟合。空间池化有最大化、平均化、加和等方式。卷积神经网络卷积神经网络相当于全连接神经网络的改进,最大的不同是:卷积神经网络相邻层之间的神经单元不是全连接的,而是部分连接的。也就是说,某个神经元的感知域来自于上层的部分神经单元,原创 2022-04-10 11:34:12 · 3350 阅读 · 0 评论 -
池化(Pooling)
在图像处理中,由于图像中存在较多冗余信息,可用某一区域子块的统计信息(如最大值或均值等)来刻画该区域中所有像素点呈现的空间分布模式,以替代区域子块中所有像素点取值,这就是卷积神经网络中池化(pooling)操作。池化操作对卷积结果特征图进行约减,实现了下采样,同时保留了特征图中主要信息。比如:当识别一张图像是否是人脸时,我们需要知道人脸左边有一只眼睛,右边也有一只眼睛,而不需要知道眼睛的精确位置,这时候通过池化某一片区域的像素点来得到总体统计特征会显得很有用。原创 2022-10-24 09:56:21 · 9941 阅读 · 0 评论 -
卷积(Convolution)(三)
传统的卷积神经网络在计算机视觉领域已经取得了非常好的成绩,但是依然存在一个待改进的问题—计算量大。当卷积神经网络应用到实际工业场景时,模型的参数量和计算量都是十分重要的指标,较小的模型可以高效地进行分布式训练,减小模型更新开销,降低平台体积功耗存储和计算能力的限制,方便部署在移动端。因此,为了更好地实现这个需求,在卷积运算的基础上,学者们提出了更为高效的可分离卷积。原创 2022-10-24 09:43:11 · 1319 阅读 · 0 评论 -
卷积(Convolution)(二)
通常情况下,对图像进行卷积运算时,经过多层的卷积运算后,输出图像的尺寸会变得很小,即图像被约减。而对于某些特定的任务(比如:图像分割、GAN),我们需要将图像恢复到原来的尺寸再进行进一步的计算。这个恢复图像尺寸,实现图像由小分辨率到大分辨率映射的操作,叫做上采样(Upsample),如下图所示。上采样有多种方式,常见的包括:最近邻插值(Nearest neighbor interpolation)、双线性插值(Bi-Linear interpolation)等,但是这些上采样方法都是基于人们的先验经验来设计原创 2022-10-24 09:22:33 · 2101 阅读 · 0 评论 -
卷积(Convolution)(一)
在全连接网络中,一张图片上的所有像素点会被展开成一个1维向量输入网络,如 下图 所示,28 x 28的输入数据被展开成为784 x 1 的数据作为输入。这样往往会存在如下两个问题:1、输入数据的空间信息被丢失。 空间上相邻的像素点往往具有相似的RGB值,RGB的各个通道之间的数据通常密切相关,但是转化成1维向量时,这些信息被丢失。如 下图 所示,空间位置相邻的两个点A和B,转化成1维向量后并没有体现出他们之间的空间关联性。2、模型参数过多,容易发生过拟合。 由于每个像素点都要跟所有输出的神经元相连接。当图原创 2022-10-24 08:29:30 · 1721 阅读 · 0 评论 -
全连接神经网络(DNN)
基本概念神经元和感知器模型神经元是人脑中的神经细胞,用于处理和传递化学和电信号;感知器就是一种对神经元运行过程的一种抽象结果。感知器模型如下:f(x)= sign(w*x+b)其中,x为输入向量,sign为符号函数,括号里面大于等于0,则其值为1,括号里面小于0,则其值为-1。w为权值向量,b为偏置。求感知机模型即求模型参数w和b。感知器预测,即通过学习得到的感知机模型,对于新的输入实例给出其对应的输出类别1或者-1。单神经元网络与全连接神经网络单神经元网络也就是只有一个神经元的网络,也是原创 2022-04-10 10:57:37 · 14816 阅读 · 0 评论 -
模型压缩(Compress)
理论上来说,深度神经网络模型越深,非线性程度也就越大,相应的对现实问题的表达能力越强,但相应的代价是,训练成本和模型大小的增加。同时,在部署时,大模型预测速度较低且需要更好的硬件支持。但随着深度学习越来越多的参与到产业中,很多情况下,需要将模型在手机端、IoT端部署,这种部署环境受到能耗和设备体积的限制,端侧硬件的计算能力和存储能力相对较弱,突出的诉求主要体现在以下三点:首先是,比如像人脸闸机、人脸解锁手机等应用,对响应速度比较敏感,需要做到实时响应。其次是。原创 2022-10-24 07:11:26 · 792 阅读 · 0 评论 -
模型调优(Turning)(二)
假设有一天热爱绘画的你决定去户外写生,你来到一片山坡上,极目远去,心旷神怡。头顶一片蔚蓝,脚踩一席草绿,远处山川连绵,眼前花草送香,暖阳含羞云后,轻风拂动衣襟,鸟啼虫鸣入耳,美景丹青共卷。你集中精神,拿起画笔将蓝天、白云、青草等等这些元素,按照所思所想纷纷绘入画板。在绘画的过程中,你会持续地关注你构思到画板上的元素(比如蓝天,白云),而不会太多关注那些其他的元素,比如风,虫鸣,阳光等等。即你的精神是聚焦在你关心的那些事物上,这其实就是注意力的体现,这种有意识的聚焦被称为聚焦式注意力(Focus Attent原创 2022-10-17 16:30:14 · 548 阅读 · 0 评论 -
模型调优(Tuning)(一)
学习率是训练神经网络的重要超参数之一,它代表在每一次迭代中梯度向损失函数最优解移动的步长,通常用 η 表示。它的大小决定网络学习速度的快慢。在网络训练过程中,模型通过样本数据给出预测值,计算代价函数并通过反向传播来调整参数。重复上述过程,使得模型参数逐步趋于最优解从而获得最优模型。在这个过程中,学习率负责控制每一步参数更新的步长。合适的学习率可以使代价函数以合适的速度收敛到最小值。根据梯度更新公式:θ=θ−η∂∂θJ(θ)\theta = \theta - \eta\displaystyle\frac{\p原创 2022-10-17 12:23:34 · 1103 阅读 · 0 评论 -
评估指标(Metric)(四)
BLEU算法能够比较好地计算生成序列x的字词是否在参考序列中出现过,但是其并没有关注参考序列中的字词是否在生成序列出现过。中的 N 元组合词是否在参考序列中出现,其计算结果更偏好短的生成序列,即生成序列。构造不同长度的 N 元组合词,这样便可以获得不同长度组合词的精度,比如。BLEU算法通过计算不同长度的N元组合的精度。前边反复提到一个概念–N 元组合词,我们可以根据生成序列。,以及相应的译文参考序列。,且。为 N 元组合词。原创 2022-10-16 10:42:26 · 627 阅读 · 0 评论 -
评估指标(Metric)(三)
中文翻译为,是信息论中的一个概念,其可以用来衡量一个随机变量的不确定性,也可以用来衡量模型训练的好坏程度。通常情况下,一个随机变量的Perplexity数值越高,代表其不确定性也越高;一个模型推理时的Perplexity数值越高,代表模型表现越差,反之亦然。原创 2022-10-16 10:23:37 · 730 阅读 · 0 评论 -
评估指标(Metric)(二)
把生成的图片 x 输入Inception V3模型中,将输出 1000 维(ImageNet有1000类)的向量 y ,向量每个维度的值表示图片属于某类的概率。首先将Inception Net-V3模型的输出层替换为最后一个池化层的激活函数的输出值,把生成器生成的图片和真实图片送到模型中,得到2048个激活特征。:如果一个模型能生成足够多样的图片,那么它生成的图片在各个类别中的分布应该是平均的,假设生成了 10000 张图片,那么最理想的情况是,1000 类中每类生成了 10 张。,以及真实图像的均值。原创 2022-10-16 09:47:40 · 924 阅读 · 0 评论 -
评估指标(Metric)(一)
也称为真阳性率)是指实际为阳性的样本中,判断为阳性的比例(例如真正有生病的人中,被医院判断为有生病者的比例),计算方式是真阳性除以真阳性+假阴性(实际为阳性,但判断为阴性)的比值(能将实际患病的病例正确地判断为患病的能力,即患者被判为阳性的概率)。,也称为真阴性率)是指实际为阴性的样本中,判断为阴性的比例(例如真正未生病的人中,被医院判断为未生病者的比例),计算方式是真阴性除以真阴性+假阳性(实际为阴性,但判断为阳性)的比值(能正确判断实际未患病的病例的能力,即试验结果为阴性的比例)。原创 2022-10-16 09:17:39 · 1441 阅读 · 0 评论 -
归一化(Normalization)
归一化是一种数据处理方式,能将数据经过处理后限制在某个固定范围内。归一化存在两种形式,一种是在通常情况下,将数处理为 [0, 1] 之间的小数,其目的是为了在随后的数据处理过程中更便捷。例如,在图像处理中,就会将图像从 [0, 255] 归一化到 [0, 1]之间,这样既不会改变图像本身的信息储存,又可加速后续的网络处理。其他情况下,也可将数据处理到 [-1, 1] 之间,或其他的固定范围内。另一种是通过归一化将有量纲表达式变成无量纲表达式。那么什么是量纲,又为什么需要将有量纲转化为无量纲呢?原创 2022-10-17 16:57:51 · 39337 阅读 · 0 评论 -
优化器(Optimizer)(二)
为了抑制SGD的震荡,SGD-M认为梯度下降过程可以加入惯性。可以简单理解为:当我们将一个小球从山上滚下来时,没有阻力的话,它的动量会越来越大,但是如果遇到了阻力,速度就会变小。SGD-M全称是SGD with momentum,在SGD基础上引入了一阶动量:vt=γvt−1+η∇J(θ)v_t=\gamma v_{t-1}+\eta \nabla J(\theta)vt=γvt−1+η∇J(θ)SGD-M参数更新公式如下,其中 ηηη 是学习率,∇J(θ)∇J(θ)∇J(θ) 是当前参数的梯度:θ=θ原创 2022-10-16 18:54:01 · 1429 阅读 · 0 评论 -
优化器(Optimizer)(一)
如果我们定义了一个机器学习模型,比如一个三层的神经网络,那么就需要使得这个模型能够尽可能拟合所提供的训练数据。但是我们如何是否足够呢?那就需要使用相应的指标来评价它的拟合程度,所使用到的函数就称为(Loss Function),当损失函数值下降,我们就认为模型在拟合的路上又前进了一步。最终模型对训练数据集拟合的最好的情况是在损失函数值最小的时候,在指定数据集上时,为损失函数的平均值最小的时候。原创 2022-10-16 15:37:17 · 1947 阅读 · 0 评论 -
损失函数(Loss)
如果我们定义了一个机器学习模型,比如一个三层的神经网络,那么就需要使得这个模型能够尽可能拟合所提供的训练数据。但是我们如何是否足够呢?那就需要使用相应的指标来评价它的拟合程度,所使用到的函数就称为(Loss Function),当损失函数值下降,我们就认为模型在拟合的路上又前进了一步。最终模型对训练数据集拟合的最好的情况是在损失函数值最小的时候,在指定数据集上时,为损失函数的平均值最小的时候。原创 2022-10-17 07:51:02 · 2625 阅读 · 0 评论 -
激活函数(Activation)
激活函数是人工神经网络的一个极其重要的特征;激活函数决定一个神经元是否应该被激活,激活代表神经元接收的信息与给定的信息有关;激活函数对输入信息进行非线性变换,然后将变换后的输出信息作为输入信息传给下一层神经元。原创 2022-10-17 09:22:30 · 2381 阅读 · 0 评论 -
向量距离与相似度(Distance and Similarity)
假设当前有两个n维向量x和y,可以通过两个向量之间的距离或者相似度来判定这两个向量的相近程度,显然两个向量之间距离越小,相似度越高;两个向量之间距离越大,相似度越低。原创 2022-10-16 08:29:44 · 869 阅读 · 0 评论