深度学习Deep Learning
文章平均质量分 80
详细介绍深度学习的每一种算法原理
zhiyong_will
这个作者很懒,什么都没留下…
展开
-
淘宝搜索的向量召回算法MGDSPR
阿里的模型相对而言是相当复杂的,里面涉及到了大量的attention的计算,这会给在线任务带来巨大的压力。从原理上来说,低一点是对Query进行多粒度的分析,试图能够挖掘多粒度的语义信息。第二点是用户行为的挖掘,相当的复杂了。第三点是对相关性的控制,设立了独立的模块用于控制相关性。其他的如样本的选择,softmax中的温度参数等都差不太多。query侧进行了多粒度的语义分析,但item侧相对就简单了很多,这个对相关性的建模是不太友好的;原创 2023-04-02 01:27:36 · 2435 阅读 · 3 评论 -
Facebook的多任务多模态向量召回模型Que2Search
在Que2Search中,主要是加入了更多的文本特征,并利用基于Transformer的方法提取文本语义信息,同时在特征中融入了图像的特征,实现了多模态的模型学习。另一方面,在训练的过程中提出了多任务的学习,有利于对item塔的模型学习。原创 2023-04-01 00:21:37 · 372 阅读 · 0 评论 -
京东个性化向量召回算法DPSR
这篇文章的设计相对而言比较简单,有点亮点的地方就是设置了kkkkkk的设置,文章并未对kkk的设置做试验性的分析,在MIND中有对kkk的设置的分析;相关性的分析,众所周知,在搜索系统中增加向量召回,一个很大的问题就是相关性问题,在文章中只是在α\alphaα的设置那部分提到了相关性;负样本中只是用到了随机样本,但是未涉及到困难样本,这一块会对结果有些影响。原创 2023-03-31 17:53:04 · 520 阅读 · 0 评论 -
百度双塔召回引擎MOBIUS
Mobius的目标是要做一个统一的模型,在这个模型中融合了召回和排序,检索出来的最终的结果是高点击且高相关性,为了完成这样的目标,一个方法是常规的多目标,画一个简单的图如下:这是常用的多目标的建模方式,两个目标共享底层的特征以及网络参数,只是在上层的目标上有不同。在线上检索过程中需要先根据CTR分找到潜在候选,再根据相关性得分过滤。当然在这个建模的过程中还可以考虑诸如多专家等策略,详细参考[3]。高CTR,高相关(需要的,positive)高CTR,低相关(bad)原创 2023-03-30 23:29:15 · 477 阅读 · 0 评论 -
Vision Transformer(ViT)
ViT模型将Transformer引入到图像的分类中,更准确的说是Transformer中的Encoder模块。为了能够尽可能少地对原始模型的修改,在ViT中将图像转换成一维的序列表示,以改成标准的文本形式,通过这种方式实现Transformer在CV中的应用。原创 2023-02-26 23:00:45 · 3990 阅读 · 0 评论 -
多目标建模总结
多目标建模已经成为当前推荐系统中的标配,在多目标建模过程中,需要考虑多个目标之间的相互关系,以选择合适的多目标建模方法,同时,在多目标的损失函数的设计上,也存在很多的优化方案,需要根据具体的应用场景选择合适的损失函数,以达到对具体任务的优化。原创 2023-01-19 16:04:46 · 2617 阅读 · 0 评论 -
多目标建模算法PLE
为了解决多任务模型中普遍存在的负迁移和跷跷板现象,在MMoE模型的基础上提出了CGC模型,在共享专家的基础上增加了针对特定任务的专家网络,可以针对特定任务学习到独有的网络部分,从而避免任务之间的相互影响,同时为了进一步提升整体网络的泛化效果,在CGC的基础上通过堆叠Extraction Network构造了更深的网络结构,进一步提升多任务模型的学习效果。原创 2023-01-18 00:33:43 · 1470 阅读 · 0 评论 -
注意力FM模型AFM
AFM模型在FM模型的基础上,引入了Attention机制,通过Attention的网络对FM模型中的交叉特征赋予不同的权重。原创 2023-01-16 17:35:16 · 905 阅读 · 0 评论 -
用户多兴趣建模MIND
工业界的推荐系统通常包括召回阶段和排序阶段。召回阶段我们根据用户的兴趣从海量的商品中去检索出用户(User)感兴趣的候选商品( Item),满足推荐相关性和多样性需求。目前的深度学习模型的套路是将User和Item在同一向量空间中进行Embedding表示,使用User的Embedding表示User的兴趣。然而实际情况是User的兴趣是多种多样的,使用一个Embedding不足以全面的表示User的兴趣信息。该文的创新点在于:通过Mulit-Interest Extractor Layer 获取U原创 2023-01-14 15:54:17 · 1160 阅读 · 0 评论 -
CVR预估模型ESMM
在ESMM网络中,通过引入两个辅助任务CTR和CTCVR,由于这两个任务的输入空间都变成了“曝光”,从而解决了传统CVR建模中在training和inference两个过程中输入空间不一致的问题,另一个方面,因为“曝光->点击”阶段的样本量要比“点击->转化”阶段的样本量要大,鉴于Embedding层参数的共享,因此,能够充分学习到Embedding层的参数。原创 2023-01-12 18:15:20 · 915 阅读 · 0 评论 -
深度网络CTR建模
深度学习模型在CTR问题上的探索还在继续,在CTR建模上也有更多更复杂的模型出现,在模型迭代的过程中,挖掘出更多有用的特征也是一条不断探索的道路。原创 2022-12-30 18:43:25 · 609 阅读 · 0 评论 -
召回和排序模型中的用户行为序列的建模
用户历史行为数据对用户兴趣的挖掘至关重要,无论是召回阶段,还是排序阶段,都需要使用到这部分的数据,随着深度学习的发展,对行为数据的挖掘也在不断深入,从最初的简单的Pooling操作,到序列挖掘,到Attention的计算,到多兴趣的挖掘,对这部分数据的挖掘也会进一步提升模型的效果。原创 2022-12-28 22:43:42 · 786 阅读 · 0 评论 -
人脸检测和对齐算法MTCNN
在现如今再回过头来看MTCNN这个模型,无论是模型还是思路上都已经比较落后,但在当时的条件下,确实由于其较好的表现,在业界得到了很多的应用。回顾MTCNN算法,整体的框架是一个多任务的级联框架,同步对人脸检测和人脸对齐两个项目学习,并且在级联的框架中使用了三个卷积网络,并将这三个网络级联起来,一步一步对结果精修,使得能够得到最终理想的效果,同时,在训练的过程中使用到了在线困难样本挖掘的方法,进一步帮助整个过程的训练。三个网络模型(P-Net,R-Net和O-Net)是分开单独训练的,没有做到端到端。原创 2022-12-23 00:43:59 · 1656 阅读 · 0 评论 -
空间金字塔池化Spatial Pyramid Pooling
针对不同大小的输入图像,在传统CNN网络中,需要首先将图像通过裁剪或者拉伸等变换转换到固定大小,通过分析,不同尺寸的输入主要是对全连接层有影响,SPP-Net中,在全连接层之前引入Spatial Pyramid Pooling Layer,可以将任意大小的输入转换成固定大小的输出。原创 2022-11-15 23:13:58 · 955 阅读 · 0 评论 -
卷积神经网络Inception Net
更宽更深的网络对于提升网络效果起到了至关重要的作用,但同时也带来了很多的问题,如难以训练,计算代价等等,沿着这条路,Google提出了Inception模块,并将其引入到卷积神经网络中,同时在网络的训练过程中又增加了诸如辅助分类器等帮助模型训练的优化,使得能够训练出更宽更深的网络模型Inception v1,同时在Inception v1的基础上,又继续优化,提出BN模块加速训练,提出大卷积转成多个小卷积来加速计算,得到了Inception v2和Inception v3模型。原创 2022-11-13 18:43:33 · 789 阅读 · 0 评论 -
BERT知识蒸馏TinyBERT
在TinyBERT中,精简了BERT模型的大小,设计了三种层的蒸馏,分别为transformer-layer,embedding-layer以及prediction-layer。同时,为了能够对以上三层的蒸馏,文中设计了两阶段的训练过程,分别与BERT的训练过程对应,即预训练和fine-tunning。原创 2022-11-08 23:44:15 · 820 阅读 · 0 评论 -
卷积神经网络NIN
在NIN卷积网络中,有两个点优化,第一,在传统的卷积层中加入MLP,进一步提升局部特征的提取能力;第二,引入全局平均聚合,将feature map与最终的分类类目对应,缓解因全连接网络引起的过拟合。原创 2022-09-24 13:00:42 · 1148 阅读 · 0 评论 -
卷积神经网络VGG
VGG网络结构相对比较简洁,整个网络结构中只用到了3×33\times33×3的卷积核和2×22\times22×2的最大池化,通过堆叠小的卷积核实现较大卷积的操作,通过这样的方式加深了网络的结构,但是在网络中还是出现计算量较大的情况,主要是出现在最后的几组全连接层,其中第一个全连接fc6的参数为25088×4096+4096=10276454425088×4096+4096=102764544。原创 2022-09-23 21:31:03 · 6629 阅读 · 0 评论 -
卷积神经网络VGG
VGG网络结构相对比较简洁,整个网络结构中只用到了3×33\times33×3的卷积核和2×22\times22×2的最大池化,通过堆叠小的卷积核实现较大卷积的操作,通过这样的方式加深了网络的结构,但是在网络中还是出现计算量较大的情况,主要是出现在最后的几组全连接层,其中第一个全连接fc6的参数为25088×4096+4096=10276454425088×4096+4096=102764544。原创 2022-09-23 21:31:03 · 6629 阅读 · 0 评论 -
BERT知识蒸馏Distilled BiLSTM
Distilled BiLSTM是对于知识蒸馏较为一般性的实践,将BERT模型(Teacher)蒸馏到一个简单的BiLSTM模型(Student),蒸馏的目标函数中的蒸馏loss也是采用了对比logits结果的差异。虽然理论上较为简单,但是最终的结果是与与ELMo模型具有相同的效果,说明知识蒸馏的方法的有效性。在BiLSTM中,多个隐层状态的融合有不同的方法,如上面直接用最后一个隐层状态作为最终的状态,实际上,可以使用Attention的方法综合多个隐层状态作为最终的状态能够进一步增强模型的效果。原创 2022-09-16 18:17:10 · 1023 阅读 · 0 评论 -
知识蒸馏基本原理
知识蒸馏通过对Teacher模型的压缩得到效果接近的Student模型,由于网络模型复杂度的减小,使得压缩后的Student模型的性能得到较大提升。原创 2022-09-12 18:38:54 · 2276 阅读 · 3 评论 -
BERT模型解析
BERT模型的提出对于NLP预训练的效果有了较大提升,在ELMo模型的基础上使用了Self-Attention作为文本特征的挖掘,同时避免了GPT模型中的单向语言模型,充分利用文本中的上下文特征。原创 2022-09-01 19:37:26 · 4430 阅读 · 0 评论 -
Transformer的基本原理
Seq2Seq[1]框架最初是在神经机器翻译(Neural Machine Translation,NMT)领域中提出,用于将一种语言(sequence)翻译成另一种语言(sequence)。其结构如下图所示:在Seq2Seq框架中包含了Encoder和Decoder两个部分。在Encoder阶段,通过神经网络将原始的输入{x1,x2,⋯ ,xTx}\left \{ x_1,x_2,\cdots,x_{T_x}\right \}{x1,x2,⋯,xTx}转换成固定长度的中间向量{c1,c2,⋯ ,c原创 2022-08-27 15:51:33 · 2008 阅读 · 2 评论 -
Pix2Pix
1. 概述很多的图像处理问题可以转换成图像到图像(Image-to-Image)的转换,即将一个输入图像翻译成另外一个对应的图像。通常直接学习这种转换,需要事先定义好损失函数,然而对于不同的转换任务,需要设计的损失函数也不尽相同。得益于生成对抗网络GAN的提出,尤其是条件生成对抗网络cGAN[1](conditional GAN),可以直接学习这种映射关系,同时不需要人工定义该映射的损失函数,可以通过自动的学习得到。基于cGAN的基本原理,Pix2Pix[2]提出了一种图像转图像的通用框架。Pix2Pix原创 2022-05-16 20:03:57 · 887 阅读 · 0 评论 -
深度卷积生成对抗网络DCGAN
1. 概述在原始的GAN[1]中,生成网络GGG和判别网络DDD使用的都是前馈神经网络MLP。随着深度学习技术的发展,得益于卷积神经网络CNN在图像领域的成功,在DCGAN[2]中尝试将CNN与GAN相结合,用CNN网络替换GAN的生成网络GGG和判别网络DDD中的MLP,同时在训练的过程中使用了一些技巧来避免模型崩溃和模型不收敛等问题。2. 算法原理2.1. DCGAN的优化相比于GAN,除了将GAN中生成器和判别器中的MLP替换成CNN外,其余的基本不变,DCGAN的价值函数依然为:minG原创 2022-05-11 11:18:32 · 1072 阅读 · 0 评论 -
Conditional GAN
1. 概述GAN的出现为数据生成提供了一种新的思路,以图像生成为例,在GAN框架中,不再需要其他复杂的操作,如Markov Chain等,只需要对定义好的网络进行backpropagation即可完成生成网络的训练。在原始的GAN框架中,包括了两个部分,分别为生成网络(Generator)GGG和判别网络(Discriminator)DDD,其中生成网络(Generator)GGG用于生成图片,判别网络(Discriminator)DDD用于判别一张图片是否是真实的。通过不断提高生成网络GGG的生成质量,原创 2022-05-07 14:57:21 · 1156 阅读 · 0 评论 -
生成对抗网络GAN
1. 概述生成对抗网络GAN(Generative adversarial nets)[1]是由Goodfellow等人于2014年提出的基于深度学习模型的生成框架,可用于多种生成任务。从名称也不难看出,在GAN中包括了两个部分,分别为”生成”和“对抗”,整两个部分也分别对应了两个网络,即生成网络(Generator)GGG和判别网络(Discriminator)DDD,为描述简单,以图像生成为例:生成网络(Generator)GGG用于生成图片,其输入是一个随机的噪声z\boldsymbol{z}z原创 2022-05-06 19:29:15 · 5979 阅读 · 0 评论 -
CTR——人工神经网络+决策树
一、引言这是篇论文的笔记,记录阅读该论文中的一些体会,希望与大家一起学到知识。论文题目为《Using neural networks for click prediction of sponsored search》。二、文章的核心思想 文章的核心思想是利用人工神经网络+决策树的方法去进行点击率的预测。1、模型 该模型主要是有两个阶段:第一阶段是里原创 2015-03-10 20:03:17 · 6793 阅读 · 1 评论 -
推荐算法——基于图的推荐算法PersonalRank算法
实验结果:#coding=utf-8def PersonalRank(G, alpha, root, max_step): rank = dict() for x in G.keys(): rank[x] = 0 rank[root] = 1 for k in range(max_step): print str原创 2016-06-21 13:35:31 · 14172 阅读 · 0 评论 -
推荐系统中的常用算法——基于Graph Embedding的GES和EGES
1. 概述GES和EGES是阿里在2018年提出的两个Graph Embedding算法,其中GES全称为Graph Embedding with Side Information,EGES全称为Enhanced Graph Embedding with Side Information。2. 算法原理参考文献Wang J, Huang P, Zhao H, et al. Billion-scale commodity embedding for e-commerce recommendat原创 2020-09-30 01:14:47 · 5279 阅读 · 0 评论 -
推荐系统中的常用算法——行为序列Transformer(BST)
1. 概述2. 算法原理参考文献Chen Q , Zhao H , Li W , et al. Behavior Sequence Transformer for E-commerce Recommendation in Alibaba[J]. 2019.阿里推荐算法(BST): 将Transformer用于淘宝电商推荐原创 2020-10-13 00:25:10 · 3801 阅读 · 0 评论 -
推荐系统中的常用算法——基于Session的推荐
1. 概述原创 2020-10-16 13:15:56 · 2265 阅读 · 0 评论 -
推荐系统中的常用算法——序列深度匹配SDM
1. 概述2. 算法原理参考文献Lv F , Jin T , Yu C , et al. SDM: Sequential Deep Matching Model for Online Large-scale Recommender System[J]. 2019.[深度模型] 阿里大规模深度召回序列模型SDMSDM:用户长短期兴趣召回模型...原创 2020-10-16 17:56:10 · 2948 阅读 · 0 评论 -
推荐系统——(论文阅读笔记)YouTube的视频推荐系统
《The YouTube video recommendation system》是一篇详细介绍YouTube视频推荐的论文,在整个系统中没有复杂的算法,使用了一些简单有效的策略,这也符合工业界的应用,在工业界,为了考虑算法复杂度,数据量,可维护性等等一些因素,在工业界中,通常会选择一些简单有效的方法。以下是论文的核心内容:目标帮助用户找到高质量且符合用户兴趣的视频,最终实现的...原创 2016-10-21 15:21:55 · 5401 阅读 · 0 评论 -
推荐算法——基于矩阵分解的推荐算法
一、推荐算法概述对于推荐系统(Recommend System, RS),从广义上的理解为:为用户(User)推荐相关的商品(Items)。常用的推荐算法主要有:基于内容的推荐(Content-Based Recommendation)协同过滤的推荐(Collaborative Filtering Recommendation)基于关联规则的推荐(Association Rule-Based原创 2016-04-12 17:07:51 · 51862 阅读 · 44 评论 -
自然语言中的重要概念——熵(Entropy)
一、背景二、熵1、信息熵2、条件熵3、联合熵4、相对熵三、互信息原创 2016-04-09 15:49:00 · 9406 阅读 · 0 评论 -
情感分析——深入snownlp原理和实践
一、snownlp简介snownlp是什么? SnowNLP是一个python写的类库,可以方便的处理中文文本内容,是受到了TextBlob的启发而写的,由于现在大部分的自然语言处理库基本都是针对英文的,于是写了一个方便处理中文的类库,并且和TextBlob不同的是,这里没有用NLTK,所有的算法都是自己实现的,并且自带了一些训练好的字典。注意本程序都是处理的unicode编码,所以使...原创 2018-06-26 11:23:16 · 114327 阅读 · 37 评论 -
机器学习算法实现解析——word2vec源码解析
在阅读本文之前,建议首先阅读“简单易学的机器学习算法——word2vec的算法原理”,掌握如下的几个概念:什么是统计语言模型神经概率语言模型的网络结构CBOW模型和Skip-gram模型的网络结构Hierarchical Softmax和Negative Sampling的训练方法Hierarchical Softmax与Huffman树的关系有了如上的一些概念,接下来就可以去读word...原创 2017-03-16 16:32:44 · 33386 阅读 · 8 评论 -
神经语言模型
1. 语言模型概述要想弄语言模型的本质是判断一条语句是否合理,在其发展的过程中,分别经历了专家语法规则模型,统计语言模型,神经网络语言模型三个阶段,专家语法规则模型是在计算机初始阶段,随着计算机编程语言的发展,归纳出的针对自然语言的语法规则。统计语言模型通过对句子的概率分布进行建模,从统计来来说,概率高的语句比概率底的语句更为合理,神经网络语言模型在统计语言模型的基础上,通过网络的叠加和特征的逐层提取,可以表征除了词法外,相似性,语法,语义,语用等多方面的表示。2. 统计语言模型2.1. 统计语言模型原创 2021-10-10 22:46:05 · 1166 阅读 · 0 评论 -
文本分类fastText算法
1. 概述在深度学习遍地开花的今天,浅层的网络结构甚至是传统的机器学习算法被关注得越来越少,但是在实际的工作中,这一类算法依然得到广泛的应用,或者直接作为解决方案,或者作为该问题的baseline,fastText就是这样的一个文本分类工具。fastText是2016年由facebook开源的用于文本分类的工具,fastText背后使用的是一个浅层的神经网络,在保证准确率的前提下,fastText算法的最大特点是快。2. 算法原理2.1. fastText的模型结构fastText是如何保证速度的呢原创 2020-12-05 17:35:31 · 631 阅读 · 0 评论