深度残差神经网络

合集下载

resnet101 残差块结构

resnet101 残差块结构

resnet101 残差块结构ResNet101是一种深度残差网络,它采用了残差块结构。

残差块是ResNet中的基本构建单元,它通过引入跳跃连接和残差映射来解决深度神经网络中的梯度消失和梯度爆炸问题,从而有效地训练深层网络模型。

残差块的设计灵感来自于人类大脑的信息传递机制。

在人类大脑中,信息通过神经元之间的连接进行传递。

这些神经元之间除了正常的前向连接外,还存在着跳跃连接,使得信息可以直接从一个神经元跳过几层传递到后面的神经元。

这种跳跃连接的存在可以加快信息的传递速度,同时还可以有效地减少信息传递过程中的损耗。

在ResNet101中,每个残差块由两个或三个卷积层组成。

这些卷积层的输出通过一个恒等映射和一个残差映射相加,然后再通过激活函数进行非线性变换。

恒等映射即将输入直接传递到输出,而残差映射则通过卷积层对输入进行变换,将变换后的结果与输入相加,得到残差。

最后,将残差与恒等映射相加,得到残差块的输出。

残差块的跳跃连接可以有效地缓解梯度消失和梯度爆炸问题。

在传统的深层神经网络中,随着网络层数的增加,梯度会逐渐变小,导致模型无法有效地学习到更深层的特征。

而通过引入残差块的跳跃连接,梯度可以直接从浅层传递到深层,避免了梯度消失的问题,使得网络可以更好地学习到深层特征。

残差块的设计还可以有效地减少参数数量。

传统的卷积神经网络中,网络层数的增加会导致参数数量的急剧增加,增加了模型的复杂度和计算开销。

而残差块的跳跃连接允许信息直接从一个神经元跳过几层传递到后面的神经元,减少了每一层之间需要传递的信息量,从而降低了参数数量。

总结来说,ResNet101中的残差块结构通过引入跳跃连接和残差映射解决了深度神经网络中的梯度消失和梯度爆炸问题,同时减少了参数数量。

这一设计使得ResNet101可以训练更深的网络模型,进一步提升了模型的性能和表达能力。

在图像分类、目标检测和语义分割等任务中,ResNet101已经取得了令人瞩目的成果,并成为了深度学习领域的经典模型之一。

resnet 数学原理

resnet 数学原理

resnet 数学原理ResNet(残差网络)是一种深度神经网络的架构,其数学原理是通过引入残差连接来解决深层网络训练中的梯度消失和梯度爆炸问题。

本文将从残差连接的概念、残差学习和网络架构等方面对ResNet 的数学原理进行详细阐述。

一、残差连接的概念传统的深层神经网络存在梯度消失和梯度爆炸的问题,即在反向传播过程中,梯度会逐层衰减或者逐层放大,导致深层网络的训练困难。

为了解决这个问题,ResNet引入了残差连接的概念,即在网络的每一个基本模块中,通过添加一个跳跃连接,将输入直接传递到输出,使得网络可以学习残差。

二、残差学习在ResNet中,每个基本模块由两个卷积层组成,分别是主路径和残差路径。

主路径通过两个连续的卷积层将输入映射到输出,而残差路径则是将输入直接传递到输出。

通过这种方式,网络可以学习残差,即将输入的信息与输出的信息相减得到残差。

然后,将残差与输入相加,得到最终的输出。

这种残差学习的方式可以有效地减轻梯度消失和梯度爆炸问题,使得网络可以更深地进行训练。

三、网络架构ResNet的网络架构由多个基本模块组成,每个基本模块由两个卷积层和一个残差连接组成。

在训练过程中,可以通过堆叠多个基本模块来构建更深的网络。

同时,为了减小特征图的尺寸,ResNet还引入了池化层和步长为2的卷积层。

在具体的网络架构中,ResNet 采用了多个大小不同的卷积核和不同的卷积层深度,以适应不同尺寸和复杂度的图像数据。

四、ResNet的优势通过引入残差连接,ResNet在训练深层网络时具有以下优势:1. 缓解梯度消失和梯度爆炸问题:残差连接可以使得梯度更容易地传播到浅层网络,避免了梯度的消失和爆炸现象,使得网络可以更深地进行训练。

2. 提高网络的收敛速度:由于梯度更容易传播,网络可以更快地收敛,加快了训练的速度。

3. 提高网络的准确性:在大规模图像分类、目标检测等任务中,ResNet相较于传统的网络结构具有更好的准确性和泛化能力。

残差网络(ResNet)

残差网络(ResNet)

残差⽹络(ResNet)⼀直拖着没研究⼤名⿍⿍的残差⽹络,最近看YOLO系列,研究到YOLOv3时引⼊了残差⽹络的概念,逃不过去了,还是好好研究研究吧~⼀,引⾔ 残差⽹络是深度学习中的⼀个重要概念,这篇⽂章将简单介绍残差⽹络的思想,并结合⽂献讨论残差⽹络有效性的⼀些可能解释。

以下是本⽂的概览:1. 动机:深度神经⽹络的“两朵乌云”2. 残差⽹络的形式化定义与实现3. 残差⽹络解决了什么,为什么有效?4. ⾃然语⾔处理中的残差结构5. 总结与扩展⼆,动机:深度神经⽹络的“两朵乌云” 神经⽹络具有⾮常强的表达能⼒,并且免去了繁重的特征⼯程,在BP算法提出以及算例逐渐提升的背景下,逐渐受到了研究⼈员和开发者的青睐。

在展开⽂章前,⾸先以前馈神经⽹络为例,定义以下神经⽹络。

⼀个前馈神经⽹络f(x; \theta),由若⼲层神经元组成,为了⽅便讨论,我们以⾮线性单元(若⼲层神经元组成的函数单元)为单位讨论神经⽹络,即神经⽹络f(x; \theta)由L个⾮线性单元堆叠⽽成(后⾯将每个单元称为⼀层),令a^{(0)} = x,则神经⽹络第l层(1≤l≤L)的净输⼊z^{(l)}与输出a^{(l)}的计算由下式给出:a^{(l)}=H(a^{l-1}) (1)a^{(l)}=g(z^{(l)}) (2) 其中,H(·)是该层的内部运算,依照⽹络类型有所不同;g(·)是第l层的输出激活函数。

⼀般认为,经过训练的深度神经⽹络能够将数据特征逐层抽象,最终提取出完成任务所需要的特征/表⽰,最终使⽤⼀个简单的分类器(或其他学习器),就可以完成最终任务——因此深度学习也被叫做表⽰/特征学习。

在“层层抽象”的直觉下,很⾃然的想法就是,训练⼀个很深的前馈神经⽹路,来完成任务。

直观上看,更深的神经⽹络,在⾮线性激活函数的加持下,拥有更⼤的假设空间,因此当然“更有可能”包含了⼀个最优解。

但是在实际使⽤时,训练⼜成了⼀个难题。

resnet50基本组成

resnet50基本组成

resnet50基本组成ResNet50是一种深度残差网络,是ResNet系列中的一员。

它在2015年由何凯明等人提出,并在ImageNet图像识别挑战赛中取得了令人瞩目的成绩。

ResNet50的基本组成包括卷积层、残差模块和全连接层。

卷积层是ResNet50的基础,它可以提取图像的特征。

ResNet50中使用了多个卷积层,每个卷积层都包括一定数量的卷积核。

这些卷积核在图像上滑动,通过对图像进行卷积运算,提取图像的不同特征。

卷积层可以通过改变卷积核的大小和数量来调整网络的感受野和感知能力。

残差模块是ResNet50的核心,它可以解决深度神经网络中的梯度消失和梯度爆炸问题。

残差模块通过引入跳跃连接,将输入直接传递到输出,使得网络可以学习到残差。

这种设计方式可以有效地减少信息的丢失,加速训练过程,并提高网络的准确性。

ResNet50中使用了多个残差模块,每个残差模块都包括多个卷积层和标准化层。

全连接层是ResNet50的最后一层,它将卷积层和残差模块提取到的特征映射转化为类别概率。

全连接层的输出节点数与分类的类别数相同,每个节点对应一个类别。

全连接层通过将特征映射展平为一维向量,并通过一系列的全连接操作将其映射到类别概率空间。

最终,通过对类别概率进行softmax归一化,可以得到图像属于每个类别的概率分布。

除了基本组件外,ResNet50还使用了其他技术来提高网络的性能。

其中包括批量归一化、池化操作和非线性激活函数。

批量归一化可以加速网络的收敛速度,提高网络的泛化能力。

池化操作可以减少特征图的尺寸,降低计算量,并增强网络的平移不变性。

非线性激活函数可以引入非线性变换,增加网络的表达能力。

ResNet50以其独特的残差模块设计和卓越的性能成为了深度学习领域的经典网络之一。

它不仅在图像分类任务中取得了优异的成绩,也被广泛应用于目标检测、语义分割和人脸识别等领域。

随着深度学习的不断发展,ResNet50的基本组成也为后续网络的设计提供了重要的启示。

基于深度残差循环神经网络的序列推荐模型

基于深度残差循环神经网络的序列推荐模型

第41卷 第6期吉林大学学报(信息科学版)Vol.41 No.62023年11月Journal of Jilin University (Information Science Edition)Nov.2023文章编号:1671⁃5896(2023)06⁃1128⁃07基于深度残差循环神经网络的序列推荐模型收稿日期:2023⁃04⁃20作者简介:王浩宇(1984 ),男,吉林松原人,吉林大学工程师,主要从事计算机网络㊁无线通信研究,(Tel)86⁃136****8500(E⁃mail)wanghy963@㊂王浩宇,李蕴华(吉林大学大数据和网络管理中心,长春130012)摘要:为解决基于RNN(Recurrent Neural Network)的序列推荐模型在处理长序列时易出现梯度消失或爆炸从而导致推荐模型训练过程不稳定问题,在传统门控循环单元(GRU:Gated Recurrent Unit)基础上,引入了残差连接㊁层归一化以及前馈神经网络等模块,提出了基于深度残差循环神经网络的序列推荐模型DeepGRU㊂并在3个公开数据集上进行了验证,实验结果表明,该DeepGRU 相较于目前最先进的序列推荐方法具有明显的优势(推荐精度平均提升8.68%)㊂消融实验验证了引入的残差连接等模块在DeepGRU 框架下的有效性㊂并且,该DeepGRU 有效缓解了在处理长序列时训练过程不稳定的问题㊂关键词:序列推荐;循环神经网络;门控循环单元;残差网络中图分类号:TP3文献标志码:AResidual Connected Deep GRU for Sequential RecommendationWANG Haoyu,LI Yunhua(Big Data and Network Management Center,Jilin University,Changchun 130012,China)Abstract :To avoid the gradient vanishing or exploding issue in the RNN (Recurrent Neural Network)⁃based sequential recommenders,a gated recurrent unit based sequential recommender DeepGRU is proposed which introduces the residual connection,layer normalization and feed forward neural network.The proposed algorithm is verified on three public datasets,and the experimental results show that DeepGRU has superior recommendation performance over several state⁃of⁃the⁃art sequential recommenders (averagely improved by 8.68%)over all compared metrics.The ablation study verifies the effectiveness of the introduced residual connection,layer normalization and feedforward layer.It is empirically demonstrated that DeepGRU effectively alleviates the unstable training issue when dealing with long sequences.Key words :sequential recommendation;recurrent neural network;gated recurrent unit;residual network 0 引 言序列推荐是指根据用户与项目(如商品㊁兴趣点等)之间的历史交互信息,挖掘历史序列内部的相关性,并以此对用户偏好进行建模,为其推荐下一个可能感兴趣的项目[1]㊂序列推荐的假设为用户对商品的偏好是随时间动态变化的,即历史交互项目对用户当前偏好存在影响[2]㊂因此,如何挖掘序列相关性并有效建模用户偏好为序列推荐场景中的核心问题㊂随着信息技术不断进步,序列推荐模型得到了蓬勃发展㊂早期工作[3]通常利用马尔科夫链和矩阵分解等传统机器方法建模项目之间的个性化转移模式㊂近年来,得益于数据质量和算力的提升,基于深度学习的序列推荐模型取得了令人满意的推荐性能㊂例如,Hierarchical Representation Model [4]利用多层感知机拟合序列内部项目间复杂的非线性关系;GRU4Rec(Gated Recurrent Unit based Sequential Recommender)[5]利用门控循环单元以学习序列相关性;Caser [6]利用卷积神经网络学习序列内部项目局部相关性㊂随着Transformer [7]的提出,SASRec(Self⁃attentive Sequential Recommender)[8]首次将自注意力机制引入序列推荐,实现了目前最先进的推荐性能,并衍生了一系列以Transformer 为底层架构的序列推荐模型㊂虽然Transformer 拥有较强的序列建模能力,但由于其内部架构设计,Transformer 计算过于密集,并且计算复杂度与输入序列长度呈二次相关,存在内存占用大㊁推理延迟高等问题[9]㊂而且以RNN (Recurrent Neural Network)为底层架构的序列推荐模型具有模型体量轻㊁推理效率高等优势,研究表明[10]此类模型在处理短序列时可以提供与Transformer 相近甚至更优的推荐性能㊂但RNN 的缺陷在于处理长序列时难以保留序列中较早时间步的信息,并且训练过程不稳定,易出现梯度消失或爆炸等问题[10]㊂因此,笔者将残差连接[11]㊁层归一化[12]以及前馈神经网络[7]等模块技术引入传统的GRU(Gated Recurrent Unit)[13]模型,提出基于深度残差循环神经网络的序列推荐模型DeepGRU,以缓解循环神经网络在处理长序列时训练不稳定的问题,并提高循环神经网络在序列推荐问题中的性能表现㊂笔者在3个公开数据集上对提出的DeepGRU 进行了验证,实验结果表明,DeepGRU 在多个推荐评价指标上均优于目前最先进的序列推荐方法㊂消融实验证明了笔者新引入的模块在本文框架下的有效性㊂并且,序列长度敏感性分析结果表明,DeepGRU 相较于传统GRU 在稳定性上具有明显优势㊂1 基本定义与问题陈述假设U ={u 1, ,u U}为用户集合,I ={i 1, ,i I }为项目集合,首先根据上述符号定义若干序列推荐中的基本概念,然后对Top ⁃K 序列推荐问题进行陈述㊂1.1 基本定义1)用户⁃项目交互:用三元组〈u ,i ,t 〉进行表示,其含义为用户u ∈U 在时间t 与项目i ∈I 进行交互㊂2)历史序列:X u =x u 1→x u 2→ →x u X u 按时间顺序记录用户u ∈U 的X u 个历史用户⁃项目交互㊂1.2 问题陈述Top ⁃K 序列推荐:给定特定用户u 以及相应的历史序列X u ,序列推荐问题对序列相关性以及用户动态偏好进行建模,并提供包含K 个项目的推荐列表,如下:F (X u )→Top K u ,(1)图1 DeepGRU 序列推荐模型Fig.1 DeepGRU architecture for sequential recommendation 其中Top K u 为推荐列表,包含用户下一次交互可能感兴趣的K 个项目,F (㊃)泛指任意以历史序列作为输入,以Top K u 推荐列表作为输出的序列推荐模型㊂2 DeepGRU 序列推荐模型首先从宏观角度对模型进行概述,其次对模型中的每个模块进行详细阐述,最后对模型的推荐阶段和优化方法进行描述㊂2.1 模型概览笔者提出的DeepGRU 模型如图1所示,其主要包含3部分:嵌入层㊁残差GRU 模块以及对比排序㊂在训练阶段,模型以除去最后一次交互的历史序列x u 1→x u 2→ →x u |X u -1|作为原始序列,以除去第1次交互的历史序列x u 2→x u 3→ →x u X u 作为目标序列,在每个时间步i 对下一次交互x i +1中的项目进行预测㊂在推荐阶段,模型以完整历史序列x u 1→x u 2→ →x u X u 作为输入,预测用户下一次交互的Top ⁃K 项目列表㊂9211第6期王浩宇,等:基于深度残差循环神经网络的序列推荐模型2.2 嵌入层(Embedding )嵌入层(Embedding Layer)以历史序列作为输入,将序列中的项目编码为高维表示向量,以形成序列高维表示矩阵㊂考虑不同用户的历史序列长度不一致,笔者将最大序列长度设为n ㊂对长度大于n 的历史序列,模型将其划分为多个长度为n 的子序列;对长度小于n 的序列,模型将在序列的头部重复添加 填充项目”,直至其长度为n ㊂上述Embedding 过程表示为Embed(X u )→X u ∈ℝn ×d ,(2)其中X u 为输入历史序列,X u 为对应序列表示矩阵,d 为嵌入维度,历史序列中的任意项目,即任意时间步i 交互中的项目x i 均表示为向量x i ∈ℝ1×d ㊂值得注意的是, 填充项目”由连续为0的d 维向量编码,且不参与模型的反向传播和梯度更新㊂2.3 残差GRU 模块(Residual GRU Block )DeepGRU 模型堆叠了L 个残差GRU 模块(如图1中方框所示)以实现项目间的充分交互以及序列相关性的充分建模,该模块以序列表示矩阵X u 或前一个模块的输出作为输入,首先通过门控循环网络层(GRU)实现历史序列中不同项目之间的交互,再将编码后的序列表示传入前馈神经网络层(FFN:Feed⁃Forward Network)[7]对项目表征进行细化㊂残差GRU 模块内部采用了残差连接[11]和层归一化(LN:Layer Normalization)[12]以避免神经网络过深导致的误差累积㊂上述残差GRU 模块可表示为H u =X u +GRU(LN(X u )), Y u =H u +FFN(LN(H u )),(3)其中H u ,Y u ∈ℝn ×d 分别为GRU 层和FFN 层编码后的表示矩阵㊂LN(㊃)为层归一化,其作用为稳定和加速模型的训练过程㊂假设输入为向量x ,层归一化的计算如下:LN(x )=α☉x -μσ2+ε+β,(4)其中☉为哈德曼积,μ,σ分别为向量x 的平均值和标准差,α,ε,β为用于放缩和偏置的可学习参数㊂2.3.1 门控循环网络层(GRU )门控循环网络层由单向GRU 组成,假设当前时间步i 输入为向量x i ∈ℝ1×d ,上一时间步的隐藏状态为h i -1∈ℝ1×d ,GRU 首先计算当前时间步下的重置门r i ∈ℝ1×d :r i =Sigmoid(x i W r +h i -1U r ),(5)其中W r ,U r ∈ℝd ×d 为可学习的参数,Sigmoid(㊃)为非线性函数,将输入缩放至0~1之间㊂值得注意的是,在初始时间步i =0,对应隐藏状态h 0为随机初始化的向量㊂重置门的作用为根据当前时间步的输入x i 以及上一时间步的隐藏状态h i -1,以控制当前时间步下备选隐藏状态~h i ∈ℝ1×d 中的h i -1所占的权重㊂如下:~h i =tanh(x i W +(r i ☉h i -1)U ),(6)其中W ,U ∈ℝd ×d为可学习的参数,tanh(㊃)为非线性激活函数㊂其次,GRU 计算当前时间步下的更新门z i ∈ℝ1×d ,该计算过程与重置门的计算过程类似,即根据当前时间步的输入x i 以及上一时间步的隐藏状态h i -1,计算门控权重z i ,如下:z i =Sigmoid(x i W z +h i -1U z ),(7)其中W z ,U z ∈ℝd ×d 为可学习的参数㊂最后,GRU 根据z i 计算当前时间步下隐藏状态h i ∈ℝ1×d :h i =(1-z i )h i -1+z i ~h i ㊂(8) 至此,h i 聚合了当前以及前序时间步中所有交互项目的信息㊂2.3.2 前馈神经网络(FFN )残差GRU 模块引入了前馈神经网络FFN 以实现每个项目表示向量内部各维度之间的交互,为模型增加非线性,细化各项目的表征㊂FFN 如下:FFN(H u )=GELU(H u W 1+b 1)W 2+b 2,(9)其中W 1∈ℝd ×4d ,W 2∈ℝ4d ×d ,b 1∈ℝ1×4d ,b 2∈ℝ1×d 为可学习的参数,激活函数GELU(㊃)为高斯误差线0311吉林大学学报(信息科学版)第41卷性单元㊂2.4 对比排序(Match &Rank )由L 个残差GRU 模块的编码后的序列表示矩阵为Y u L ∈ℝn ×d ,其中第n 个时间步的表示向量y n ∈ℝ1×d 聚合了历史序列中所有项目的信息,故在对比排序过程中,将y n 与备选项目进行匹配即可,如下:s n ,j =y n c j ,(10)其中c j ∈ℝ1×d ,j ∈[1,I ]为第j 个备选项目的嵌入表示向量,s n ,j 为时间步n 下对备选项目j 的偏好得分㊂DeepGRU 根据所有备选项目的偏好得分由高到低进行排序,选出前K 个项目以生成Top ⁃K 推荐列表㊂2.5 模型优化DeepGRU 采用二元交叉熵[14]作为损失函数进行模型参数更新,如下:Loss =∑U u ∑n i =1log(Sigmoid(s i ,o i ))+log(1-Sigmoid(s i ,⎺o i )),(11)其中o i 为时间步i 对应的正样本,即交互x i +1中的项目,⎺o i 为负样本㊂3 实验分析笔者进行了大量的实验以及相应的结果分析以处理如下研究问题:研究问题1:相较于目前最先进的序列推荐模型,DeepGRU 能否提供具有竞争力的推荐性能?研究问题2:DeepGRU 中引入的残差链接㊁层归一化以及前馈神经网络等模块是否有效?研究问题3:相较于基本的GRU,DeepGRU 在处理长序列时是否可以保持推荐性能的稳定性?3.1 数据集笔者选用3个公开数据集对DeepGRU 进行验证分析(TKY [15],Brightkite [16],Gowalla [16])㊂在数据预处理阶段,为保证数据质量,去除了交互次数小于10次的用户以及被交互次数小于20次的项目㊂3个数据集在处理后的统计数据如表1所示㊂在数据划分阶段,笔者选用每个用户最后一次交互并且此前未曾交互过的项目作为推荐目标,该项目前的所有项目均用于训练㊂表1 统计数值(预处理后)为验证笔者提出DeepGRU 的推荐性能,选用3个基于不同神经网络的序列推荐模型作为基线对比方法,其具体信息如下㊂NextItNet [17]:基于卷积神经网络的最先进序列推荐模型,该模型通过卷积核建模序列内部长期㊁短期相关性,并实现用户偏好的高阶表示㊂SASRec [8]:基于Transformer 架构的最先进序列推荐模型,该模型利用自注意力机制动态建模用户偏好㊂FMLP⁃Rec [18]:基于多层感知机的最先进序列推荐模型,该模型利用可学习的滤波器提出输入中的噪声,并利用傅里叶变换模拟序列中的项目转移模式㊂3.3 评价指标笔者采用两个广泛使用的指标验证模型的推荐性能:命中率(HR:Hit Ratio)[19]和归一化折损累计收益(NDCG:Normalized Discounted Cumulative Gain)[19]㊂上述指标越高代表模型的推荐性能越好,具体信息如下㊂HR@K:计算目标项目在Top⁃K 推荐列表中的出现频次㊂NDCG@K:根据目标项目在Top⁃K 推荐列表中的位置衡量推荐列表的排序质量㊂1311第6期王浩宇,等:基于深度残差循环神经网络的序列推荐模型2311吉林大学学报(信息科学版)第41卷笔者分别选用K=1,K=5,K=10验证模型的推荐性能㊂为提高验证效率,针对每个目标项目,笔者选取了对应用户未交互过的99个项目作为负样本,根据100样本的排序计算相应的HR和NDCG㊂3.4 部署细节DeepGRU的部署细节如下:嵌入维度d=64,残差GRU模块数量L=2㊂对不同数据集,最大序列长度分别为:n=32(TKY,Brightkite),n=16(Gowalla)㊂在模型训练过程中,Dropout为0.5,负样本数量为1,Batch Size为512,优化器为Adam,学习率为0.001㊂实验环境配置如表2所示㊂表2 实验环境配置Tab.2 Experimental environment configuration运行环境CPU内存/Byte GPU显存/Byte CUDA版本深度学习框架算法语言Ubuntu22.04AMD5900X64G RTX309024G12.0PyTorch2.0Python3.10 3.5 推荐精度对比DeepGRU和所有基线方法在3个数据集上的实验结果如表3所示㊂表3 推荐性能对比Tab.3 Overall recommendation performance数据集TKY指标Inference Time HR/NDCG@1HR@5NDCG@5HR@10NDCG@10 NextItNet0.208100.111800.271320.192020.393280.23106 SASRec0.217400.166590.326560.247110.428190.27974 FMLP4Rec0.218400.159080.311530.234740.427750.27193 DeepGRU0.20590.192660.355720.273080.485200.31462提升+1.06/%+15.64/%+8.93/%+10.51/%+13.31/%+12.47/%数据集Brightkite指标Inference Time HR/NDCG@1HR@5NDCG@5HR@10NDCG@10 NextItNet0.841400.257040.401890.329990.495850.36031 SASRec0.736700.265810.374440.320010.465920.34927 FMLP4Rec0.745200.248230.331880.299070.438020.312021 DeepGRU0.698600.281680.455500.368430.569470.40188提升+5.17/%+5.97/%+13.34/%+11.65/%+14.85/%+11.54/%数据集Gowalla指标Inference Time HR/NDCG@1HR@5NDCG@5HR@10NDCG@10 NextItNet 1.200700.209040.388830.299680.514380.34019 SASRec 1.140400.208500.382360.295640.510880.33699 FMLP4Rec 1.130000.018290.060430.038750.113570.05573 DeepGRU1.070100.210890.398770.304570.526780.35575提升+5.30/%+0.88/%+2.56/%+1.63/%+2.41/%+4.57/% 注:DeepGRU的指标用加粗标记,基线方法中最高的指标用下划线标记㊂根据实验结果,笔者得到如下结果㊂1)NextItNet和SASRec为两个最强的基线方法㊂得益于卷积神经网络和自注意力机制,NextItNet和SASRec均能充分挖掘序列相关性,并有效建模用户偏好㊂上述两个方法在3个数据集上均能表现出稳定且具有竞争力的推荐性能㊂2)FMLP4Rec的推荐性能随数据集的分布波动较大㊂FMLP4Rec利用傅里叶变化进行序列中项目间的交互,一方面可能存在对高维表征间交互建模不足问题,另一方面所有序列内部均采用固定的信息传递模式,使模型在推荐过程中缺少个性化㊂3)DeepGRU在3个数据集和所有评价指标上均优于对比方法㊂具体是,DeepGRU对比最强的基线,平均带来7.50%HR/NDCG@1,8.28%HR@5,7.93%NDCG@5,10.19%HR@10,9.53%NDCG@10的提升,总体平均提升8.68%,并且可以平均节约3.84%的推断时间(Inference Time)㊂笔者提出的DeepGRU 模型在传统循环神经网络GRU 基础上,通过引入残差连接,层归一化,前馈神经网络等模块,在所有验证的数据集上实现了相较于基线更高的推荐精度以及更稳定的性能表现㊂并且,笔者发现DeepGRU 在Gowalla 数据集上的优势并不明显,其原因可能在于数据集本身的特性导致,如过于稀疏和平均序列长度过短等㊂3.6 消融实验图2 消融实验Fig.2 Ablation study为验证DeepGRU 中引入的残差连接,层归一化和前馈神经网络等模块的有效性,笔者进行了消融实验㊂以提出DeepGRU 作为参照模型,考虑如下变体:变体1(⁃LN):去除DeepGRU 中的层归一化;变体2(⁃RC):去除DeepGRU 中的残差连接;变体3(⁃FFN):去除DeepGRU 中的前馈神经网络㊂如图2所示,消融实验结果表明在集成了残差连接,层归一化以及前馈神经网络的DeepGRU,在3个数据集上的推荐精度最高,移除任意模块的变体1㊁变体2㊁变体3均有不同程度的性能下降,该结果证明了上述模块在DeepGRU 框架下的有效性㊂值得注意的是,移除残差连接的变体2(⁃RC)性能下降最为明显,HR@10分别在TKY,Brightkite,Gowalla 上降低7.56%,9.24%,15.46%,其原因在于随着模型的深度增加,每一层产生的误差也在累加,而变体2无法通过残差连接降低累积误差带来的影响㊂3.7 序列长度敏感性分析为验证DeepGRU 是否有效缓解了GRU 在处理长序列时建模能力不足的问题,笔者以基本的GRU 为参照,分别在不同序列长度n ={16,32,64,128,256,512}设置下进行了对比实验,实验结果如图3所示㊂从图3a 和图3b 可以看出,随着序列长度n 的增加,DeepGRU 和GRU 的推荐性能(HR@10)均呈现先上升后下降的趋势,其上升的原因模型可以从较长的序列中建模用户的长期偏好,以实现更准确的推荐㊂然而,随着n 的进一步增加,上述两个模型的推荐性能总体均呈现下降趋势,其原因在循环神经网络本身的结构特性㊂值得注意的是,DeepGRU 有效缓解了上述问题,其在3个数据集所有序列长度的设置下HR@10均明显高于GRU,平均在TKY,Brightkite,Gowalla 上带来4.60%,9.50%,8.61%HR@10提升㊂图3 序列长度敏感性分析Fig.3 Sensitivity with respect to the maximum sequence length 4 结 语笔者提出了一种基于循环神经网络的序列推荐模型DeepGRU,该模型在传统GRU 的基础上引入了残差连接㊁层归一化和前馈神经网络等模块㊂笔者在3个公开数据集上进行了实验,实验结果证明了3311第6期王浩宇,等:基于深度残差循环神经网络的序列推荐模型4311吉林大学学报(信息科学版)第41卷DeepGRU的推荐性能优于目前最先进的序列推荐方法(平均提升8.68%)㊂消融实验表明,DeepGRU中引入的模块在序列推荐框架下的有效性㊂并且,笔者进一步将DeepGRU与传统GRU针对不同序列长度的敏感性进行了对比分析,结果表明DeepGRU有效缓解了循环神经网络在处理长序列时的不稳定问题,并有显著的性能提升㊂在后续研究中,将考虑引入时间因素㊁项目特征㊁用户特征等辅助信息,以实现细粒度的表征建模以及个性化的推荐㊂参考文献:[1]FANG H,ZHANG D N,SHU Y H,et al.Deep Learning for Sequential Recommendation:Algorithms,Influential Factors, and Evaluations[J].ACM Transactions on Information Systems,2020,39(1):1⁃42.[2]WANG E,JIANG Y H,XU Y B,et al.Spatial⁃Temporal Interval Aware Sequential POI Recommendation[C]∥38th International Conference on Data Engineering.Beijing,China:IEEE,2022:2086⁃2098.[3]RENDLE S,FREUDENTHALER C,SCHMIDT⁃THIEME L.Factorizing Personalized Markov Chains for Next⁃Basket Recommendation[C]∥19th International Conference on World Wide Web.North Carolina,USA:ACM,2010:811⁃820.[4]WANG P F,GUO J F,LAN Y Y,et al.Learning Hierarchical Representation Model for Next Basket Recommendation[C]∥38th International SIGIR Conference on Research and Development in Information Retrieval.Santiago,Chile:ACM, 2015:9⁃13.[5]HIDASI B,KARATZOGLOU A,BALTRUNAS L,et al.Session⁃Based Recommendations with Recurrent Neural Networks[C]∥4th International Conference on Learning Representations[2023⁃03⁃15].https:∥/abs/1511.06939.[6]TANG J X,WANG K.Personalized Top⁃N Sequential Recommendation via Convolutional Sequence Embedding[C]∥11th International Conference on Web Search and Data Mining.Los Angeles,CA:ACM,2018:565⁃573.[7]VASWANI A,SHAZEER N,PARMAR N,et al.Attention Is All You Need[C]∥Advances in Neural Information Processing Systems30:Annual Conference on Neural Information Processing Systems.[S.l.]:NeurIPS,2017:59988⁃60008. [8]KANG W C,MCAULEY J J.Self⁃Attentive Sequential Recommendation[C]∥International Conference on Data Mining. [S.l.]:IEEE,2018:197⁃206.[9]TOLSTIKHIN I,HOULSBY N,KOLESNIKOV A,et al.MLP⁃Mixer:An All⁃MLP Architecture for Vision[C]∥Advances in Neural Information Processing Systems34:Annual Conference on Neural Information Processing Systems.[S.l.]:NeurIPS, 2021:24261⁃24272.[10]TASUNAMI Y,TAKI M.Sequencer:Deep LSTM for Image Classification[C]∥Advances in Neural Information Processing Systems35:Annual Conference on Neural Information Processing Systems[2023⁃03⁃17].https:∥/abs/ 2205.01972.[11]HE K M,ZHANG X Y,REN S Q,et al.Deep Residual Learning for Image Recognition[C]∥Conference on Computer Vision and Pattern s Vegas,USA:IEEE,2016:770⁃778.[12]BAJ L,KIROS R J,HINTON G yer Normalization[J].ArXiv Preprint.[2023⁃03⁃18].https:∥/abs/ 1607.06450.[13]CHUNG J Y,GULCEHRE C,CHO K,et al.Gated Feedback Recurrent Neural Networks[C]∥32nd International Conference on Machine Learning.Lile,France:ICML,2015:2067⁃2075.[14]LIAN D F,WU Y J,XIE X,et al.Geography⁃Aware Sequential Location Recommendation[C]∥26th SIGKDD Conference on Knowledge Discovery and Data Mining.[S.l.]:ACM,2020:2009⁃2019.[15]SARWAT M,LEVANDOSKI J J,ELDAWY A,et RS*:A Scalable and Efficient Location⁃Aware Recommender System [J].IEEE Transactions on Knowledge and Data Engineering,2014,26(6):1384⁃1399.[16]CHO E,MYERS S A,LESKOVEC J.Friendship and Mobility:User Movement in Location⁃Based Social Networks[C]∥17th SIGKDD International Conference on Knowledge Discovery and Data Mining.[S.l.]:AMC,2011:1082⁃1090. [17]YUAN F J,KARATZOGLOU A,ARAPAKIS I,et al.A Simple Convolutional Generative Network for Next Item[C]∥12th International Conference on Web Search and Data Mining.Melbourne,Australia:ACM,2019:582⁃590.[18]ZHOU K,YU H,ZHAO W X,et al.Filter⁃Enhanced MLP is All You Need for Sequential Recommendation[C]∥22nd The Web Conference.[S.l.]:ACM,2022:2388⁃2399.[19]WEIMER M,KARATZZOGLOU A,LE Q V,et al.Maximum Margin Matrix Factorization for Collaborative Ranking[C]∥Advances in Neural Information Processing Systems20,Proceedings of the Twenty⁃First Annual Conference on Neural Information Processing Systems.[S.l.]:NIPS,2007:1593⁃1600.(责任编辑:张洁)。

resnet算法原理

resnet算法原理

resnet算法原理标题: ResNet算法原理摘要: ResNet算法是由Kaiming He等人于2015年提出的一种深度神经网络架构, 是当时最深的神经网络之一。

ResNet的另一个显著优势是可以实现'跨层'残差学习, 可以大幅减少参数, 从而实现深度网络的计算量。

本文将简要介绍ResNet的原理, 包括残差快(residual block)的设计, 残差环路(residual loop)的实现以及跨层残差学习的可能性。

1.介绍ResNet, 即残差网络, 是2015年由Kaiming He等人提出的一种深度神经网络结构, 它革命性地改变了深度神经网络的结构设计思路。

之前的深度网络往往采用“线性堆叠”的方式, 即将多个神经网络层连接起来, 从而实现深度网络的构建。

而ResNet则采用了一种新的“残差环路”, 意在将最原始的输入信号传递到最后一层时, 期间通过的所有神经元的计算结果仍然能够被识别, 从而减少模型的参数数量, 实现深度网络的计算量压缩。

2.残差快(residual block)ResNet的基本单位是残差快(residual block), 即典型的“短路”结构, 由一个普通的神经网络块和一个残差结构组成。

在残差快中, 普通的神经网络块通过一系列的卷积层、池化层以及其他激活函数层, 用于对输入图像进行处理和提取特征。

残差结构则是将普通的神经网络块的输出结果与另外一个进行一定处理后的输入图像作差, 实现“短路”功能, 从而将输入图像的特征重新注入模型中, 以保证特征不会被处理完后“再也被识别不了”, 最终实现模型的参数数量压缩。

3.残差环路(residual loop)在ResNet中, 多个残差快之间是通过“残差环路”(residual loop)连接起来的, 它将多个残差快连接到一个单独的残差结构上, 形成一个闭环结构, 使得模型及其参数仍然能够传递给最后一层。

神经网络中的残差连接技巧与应用(五)

神经网络中的残差连接技巧与应用神经网络在近年来得到了广泛的应用,尤其是在图像识别、语音识别和自然语言处理等领域取得了许多突破性的成果。

在神经网络的训练过程中,深层网络往往会遇到梯度消失和梯度爆炸等问题,导致网络训练困难。

为了解决这一问题,研究人员提出了残差连接技巧,通过引入跨层的直接连接,有效地加速了网络的训练和提高了网络的性能。

残差连接的概念最早由Kaiming He等人在2015年提出,通过在网络中引入shortcut connection来解决深层网络训练中的梯度消失和梯度爆炸问题。

传统的神经网络是通过将输入依次传递给每一层网络进行计算,而残差连接则是在每一个卷积层的输出上直接加上输入,从而形成了一个残差块,这个残差块的输出作为下一个残差块的输入,这样就形成了残差网络。

残差连接的引入有效地缓解了梯度消失和梯度爆炸问题,使得网络更容易训练,同时也提高了网络的性能。

残差连接技巧在许多深度学习任务中都取得了显著的成效。

在图像识别任务中,残差网络(ResNet)成为了ImageNet图像识别挑战赛的冠军,不仅在精度上超过了以往的网络结构,同时也在网络的训练速度上取得了显著的提高。

在语音识别任务中,残差连接也被广泛应用,提高了语音识别系统的性能。

在自然语言处理任务中,残差连接也被应用到了文本分类、情感分析等任务中,取得了不错的效果。

除了在传统的残差连接技巧之外,研究人员还提出了一些改进的残差连接技巧。

比如Squeeze-and-Excitation Network(SENet)通过引入通道注意力机制,进一步提高了网络的表征能力。

另外,DenseNet引入了密集连接,使得每一层的输出都与前面所有层的输出相关联,进一步提高了网络的性能。

这些改进的残差连接技巧都为神经网络的设计和应用提供了新的思路和方法。

残差连接技巧的不断发展和完善为神经网络的设计和应用带来了许多新的可能性。

未来,我们可以期待残差连接技巧在更多的任务和领域中得到应用,为深度学习技术的发展注入新的活力。

神经网络中的残差网络介绍及应用

神经网络中的残差网络介绍及应用随着人工智能技术的飞速发展,神经网络成为了解决各种复杂问题的重要工具。

然而,传统的深度神经网络在训练过程中存在着梯度消失和梯度爆炸的问题,导致网络的训练效果不佳。

为了解决这个问题,研究人员提出了残差网络(Residual Network)的概念,并成功应用于各种领域。

残差网络最早由何凯明等人在2015年提出,其核心思想是引入了跳跃连接(skip connection)。

传统的神经网络是通过堆叠多个隐藏层来逐渐提取特征,而残差网络则允许信息在网络中跳跃传递。

具体来说,残差网络的基本单元是残差块(Residual Block),每个残差块包含了两个卷积层和一个跳跃连接。

通过将输入直接与输出相加,残差块使得网络可以学习到输入和输出之间的残差,从而更好地逼近目标函数。

残差网络的引入带来了多个优势。

首先,残差块的跳跃连接可以有效地缓解梯度消失和梯度爆炸问题,使得网络更容易训练。

其次,残差网络可以通过增加网络的深度来提升性能,而传统的神经网络在一定深度之后会出现性能下降的情况。

此外,残差网络还具有更好的泛化能力和抗干扰能力,能够更好地适应各种复杂任务。

残差网络在计算机视觉领域取得了巨大的成功。

例如,在图像分类任务中,残差网络可以通过增加网络的深度来提升分类准确率。

在2015年的ImageNet图像分类竞赛中,残差网络的表现超过了传统的神经网络,取得了当时最好的结果。

此外,残差网络还被广泛应用于目标检测、图像分割和人脸识别等任务中,取得了显著的性能提升。

除了计算机视觉领域,残差网络还在自然语言处理、语音识别和推荐系统等领域得到了广泛应用。

在自然语言处理任务中,残差网络可以通过增加网络的深度来提升文本分类和机器翻译的性能。

在语音识别任务中,残差网络可以有效地处理长时依赖关系,提升语音识别的准确率。

在推荐系统中,残差网络可以学习用户的兴趣和行为模式,提供更准确的推荐结果。

总之,残差网络作为一种有效的神经网络结构,在各个领域都取得了显著的成果。

resnet-50特征点提取原理

resnet-50特征点提取原理ResNet-50是一种深度卷积神经网络,用于图像识别和特征提取。

它是由Microsoft Research Asia在2015年提出的,是ResNet系列中的一种。

ResNet-50的特征点提取原理基于深度残差网络(Deep Residual Network)。

在传统的卷积神经网络中,随着网络层数的增加,模型的准确率会出现饱和和下降的现象。

这是由于网络的深度增加导致了梯度消失或梯度爆炸问题,使得网络无法学习到有效的特征表示。

为了解决这个问题,ResNet-50引入了残差学习的概念。

残差学习的核心思想是通过引入跳跃连接(skip connection)来构建残差块(residual block)。

跳跃连接将输入直接传递到输出,使得神经网络可以通过学习残差来对输入进行更准确的建模。

ResNet-50的网络结构由多个残差块组成,每个残差块内部又由多个卷积层和批归一化层组成。

在每个残差块的输入和输出之间,通过跳跃连接将输入直接传递到输出。

这样一来,即使网络层数很深,也能够有效地传递梯度,避免梯度消失或梯度爆炸问题。

ResNet-50还采用了全局平均池化层(global average pooling)和全连接层(fully connected layer)来进行特征融合和分类。

全局平均池化层将最后一个残差块的输出特征图进行平均池化,得到一个固定长度的特征向量。

全连接层则将特征向量映射到类别标签上。

ResNet-50的训练过程通常使用随机梯度下降(SGD)算法来优化模型参数。

在训练过程中,通过最小化损失函数来调整网络权重,使得网络能够根据输入图像正确分类。

ResNet-50在图像识别和特征提取任务中取得了很好的性能。

它在ImageNet数据集上的准确率超过了人类水平,成为了当时最先进的图像分类模型之一。

此外,ResNet-50还可以用作其他计算机视觉任务的基础模型,如目标检测、图像分割等。

深度学习中的残差连接原理及应用

深度学习中的残差连接原理及应用残差连接是指将神经网络的输入直接加到网络的输出中,以便神经网络可以学习残差(网络输出和期望输出之间的差异)。

残差连接的原理可以追溯到2015年由何恺明等人提出的ResNet模型,该模型在ImageNet图像识别比赛中取得了显著的成绩。

残差连接的应用已经扩展到许多领域,如自然语言处理、计算机视觉、语音识别等。

残差连接的原理是基于“学习残差比直接学习映射更加容易”这一观点。

在传统的神经网络中,每一层都会对输入进行变换,然后传递给下一层。

而在残差连接中,网络的输出会与输入进行相加,然后再传递给下一层。

这样做的好处是可以通过学习残差来提高网络性能,因为神经网络只需要学习输入和输出之间的差异,而不需要学习整个映射函数。

残差连接的应用范围非常广泛。

在计算机视觉领域,ResNet模型已经成为了图像识别任务中的标准模型,因为它能够很好地解决深层网络训练时的梯度消失和梯度爆炸等问题。

在自然语言处理领域,残差连接也被广泛应用于文本分类、机器翻译等任务中,取得了良好的效果。

此外,在语音识别、强化学习等领域,残差连接也被广泛应用。

残差连接的优势在于可以加速模型训练,避免梯度消失和梯度爆炸等问题,提高模型的深度和复杂度;同时,残差连接还可以提高模型的泛化能力,克服过拟合的问题,使得模型更加稳健和可靠。

在实际应用中,虽然残差连接有诸多优势,但也存在一些挑战。

首先是设计合适的网络结构,需要合理地设计残差块的连接方式;其次是训练过程中需要对残差进行适当的学习,确保模型能够充分学习到残差信息;此外,在一些特定的任务中,残差连接可能并不适用,需要根据具体情况进行调整。

总的来说,残差连接作为深度学习领域的重要技术之一,具有非常广泛的应用前景。

随着深度学习的不断发展,相信残差连接将会在更多的领域发挥重要作用,为人工智能技术的发展做出更大的贡献。

  1. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。

深度残差神经网络
(Deep Residual Neural Networks)是近年来在图像识别、语音
识别、自然语言处理等领域广泛应用的一种神经网络模型。

相比
于传统的深度神经网络,在解决深度网络训练中遇到的退化问题
上能够表现出更加优异的性能,提高模型的深度和准确率,无论
是在学术界还是产业界都有着广泛的研究和应用。

一、的起源
2015年,来自微软亚洲研究院的何凯明等人发表了一篇论文《Deep Residual Learning for Image Recognition》,提出了的概念。

在这篇论文中,作者从网络深度增加带来的精度提升和梯度消失、梯度爆炸两个问题入手,提出了残差学习的思想,并通过实验证
明了残差学习能够有效地提高模型的准确率和鲁棒性。

二、的原理
通过引入残差单元(Residual Unit)来解决深度神经网络中出
现的退化问题,使网络的深度不再成为限制其表达能力的瓶颈。

残差单元是一种特殊的神经网络层,由两个卷积层和一个跨层连
接组成。

在传统的深度神经网络中,每个神经网络层都通过学习将输入
映射到输出,这样的映射关系可能包含了相对简单的非线性变换(如平滑、压缩等)。

直观上来看,由于其很容易被学习到,只
需要几个线性层就足够了,这就造成了神经网络层数增加后难以
训练的退化问题。

而在中,每个残差单元不仅将输入映射到输出,还跨越了多个
网络层,直接将输入与输出进行了相加操作,这个过程也叫做“跳连”或“短路”。

这种网络结构的变换相对于叠加单一的线性层来说
更加多样复杂,通过残差单元之间的跳连能够给网络提供更多的
自由度和容错率,从而大大提高模型的准确率和鲁棒性。

三、的应用
在图像识别、语音识别、自然语言处理等领域都有广泛的应用。

其中最为知名的是在图像识别领域,以ResNet网络为代表的不仅
多次打破了图像识别比赛的记录,而且被广泛应用于工业界的产
品中。

在自然语言处理领域,也逐渐得到了广泛应用。

与图像识别相比,自然语言处理更加注重文本序列的建模,序列越长,出现的
梯度消失和梯度爆炸问题就越明显。

而通过远距离的跳连,不仅
使模型的深度增加,还能够避免梯度消失和梯度爆炸问题的出现,从而进一步提高模型的准确率和鲁棒性。

四、结语
是一种在深度网络训练中解决了退化问题的高性能模型,在多
领域的应用中具有很大的潜力。

与此同时,的训练难度也相对较大,需要充分考虑网络层数、网络复杂度以及训练技巧等因素。

因此,在实际应用中,需要根据具体任务的需求和实验效果进行
调整和优化,以达到最优的性能表现。

相关文档
最新文档