![](https://img-blog.csdnimg.cn/20201014180756923.png?x-oss-process=image/resize,m_fixed,h_64,w_64)
深度学习相关
文章平均质量分 79
VariableX
这个作者很懒,什么都没留下…
展开
-
图注意力网络(Graph Attention Network, GAT) 模型解读与代码实现(tensorflow2.0)
前面的文章,我们讲解了图神经网络三剑客GCN、GraphSAGE、GAT中的两个:图卷积神经网络(GCN)理解与tensorflow2.0代码实现GraphSAGE 模型解读与tensorflow2.0代码实现本要讲的是GAT(Graph Attention Network),它使用 Attention 机制来对邻居节点进行加权求和,和一般的Attention 机制一样,分为计算注意力系数和加权求和两个步骤。GAT中的 Attention 机制先来看看每一层的输入与输出: inpu原创 2020-12-07 19:33:16 · 6804 阅读 · 4 评论 -
GraphSAGE 模型解读与tensorflow2.0代码实现
上一篇文章,我们讲了图神经网络:图卷积神经网络(GCN)理解与tensorflow2.0代码实现,也提到GCN的缺点:GCN属于直推式学习(Transductive Learning),它在固定的图上学习每个节点的embedding表示,不能泛化到未加入到图中的节点,一旦图的结构发生改变,就需要重新训练整个网络。本文提到的 GraphSAGE 属于归纳学习(Inductive Learning),核心是学习聚合邻居节点信息的函数(聚合函数),然后利用聚合函数来得到一个节点的表示。即使图中加入了新的节点,建原创 2020-11-23 19:23:03 · 1984 阅读 · 1 评论 -
图卷积神经网络(GCN)理解与tensorflow2.0代码实现
图(Graph),一般用 G=(V,E)G=(V,E)G=(V,E) 表示,这里的VVV是图中节点的集合,EEE 为边的集合,节点的个数用NNN表示。在一个图中,有三个比较重要的矩阵:特征矩阵XXX:维度为 N×DN\times DN×D ,表示图中有N个节点,每个节点的特征个数是D。邻居矩阵AAA:维度为 N×NN\times NN×N ,表示图中N个节点之间的连接关系。度矩阵 DDD:维度为 N×NN\times NN×N ,是一个对角矩阵,即只有对角线上不为零,其他位置元素都是 0 ,表示图中原创 2020-11-19 18:27:11 · 9130 阅读 · 10 评论 -
SDNE: 阿里应用深度学习进行图嵌入,构造凑单算法模型
本文介绍 Structural Deep Network Embedding ,以下简称 SDNE,以半监督的方式用深度神经网络来做图嵌入。模型解读论文指出学习网络表示具有三大难点:高度非线性:网络结构是高度非线性的,使用浅层网络无法捕捉高度非线性的网络结构。结构捕捉:同时捕捉到局部结构与全局结构。稀疏性:大部分真实的网络都是稀疏的,仅仅利用网络中的部分连接关系建模效果还不够好。SDNE 的目标是设计一个可以学习到一阶相似度与二阶相似度的模型。一阶相似度与二阶相似度的概念与之前博客【图嵌入】原创 2020-10-16 10:32:22 · 811 阅读 · 0 评论 -
CTR深度学习模型之 DIEN(Deep Interest Evolution Network) 的理解与示例
本文介绍阿里提出的兴趣进化网络(Deep Interest Evolution Network,以下简称DIEN。前一篇文章介绍的 DIN 模型如下图所示:DIN 直接把用户的某个行为作为用户的兴趣,在实际的电商场景中这并不完全准确。用户的兴趣受到环境因素与自身因素的影响,会不断的变化。例如用户会在一段时间内关注手机相关的商品,另一段时间内又会关注书籍相关的商品,而手机与书籍之间的关系就比较小了。本文的介绍的 DIEN 模型就是要捕捉用户兴趣的演变过程。DIEN 仍然采用了 attention 机制原创 2020-09-30 16:50:39 · 2027 阅读 · 4 评论 -
CTR深度学习模型之 DIN(Deep Interest Network) 的理解与例子
在电商领域,每个用户都有丰富的历史行为数据,这些数据具有如下特点:多样性(Diversity):用户可能对多种商品感兴趣,例如手机、衣服。局部激活(Local Activation):用户是否点击新商品,仅仅取决于历史行为中与新商品相关度高的部分数据。如何从中捕获特征对CTR预估模型非常重要。论文 《Deep Interest Network for Click-Through Rate Prediction 提出了深度兴趣网络 Deep Interest Network,以下简称 DIN原创 2020-09-25 14:48:12 · 4755 阅读 · 0 评论 -
【CTR模型】TensorFlow2.0 的 xDeepFM 实现与实战(附代码+数据)
本篇文章讲解 xDeepFM 的 tensorflow2.0 实现,并使用 Criteo 数据集的子集加以实践。如果在看本文时有所困惑,可以看看 xDeepFM 的相关理论:CTR 模型之 Deep & Cross (DCN) 与 xDeepFM 解读。本文使用的数据下载地址于代码获取地址在文末获取。首先了解一下 Criteo数据集,它由有39个特征,1个label列,其中以I开头的为数值型特征,以C开头的为类别特征:可以看到数据中有缺失值需要填充,并且类别变量需要进行类别编码(onehot原创 2020-08-01 20:22:25 · 2033 阅读 · 7 评论 -
【CTR模型】TensorFlow2.0 的 DCN(Deep & Cross Network) 实现与实战(附代码+数据)
本篇文章讲解 DeepFM 的 tensorflow2.0 实现,并使用 Criteo 数据集的子集加以实践。如果在看本文时有所困惑,可以看看DeepFM的相关理论:CTR 模型之 Deep & Cross (DCN) 与 xDeepFM 解读。本文使用的数据下载地址于代码获取地址在文末获取。首先了解一下 Criteo数据集,它由有39个特征,1个label列,其中以I开头的为数值型特征,以C开头的为类别特征:[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-pTS原创 2020-08-01 17:00:27 · 1942 阅读 · 1 评论 -
【CTR模型】TensorFlow2.0 的 DeepFM 实现与实战(附代码+数据)
本篇文章讲解 DeepFM 的 tensorflow2.0 实现,并使用 Criteo 数据集的子集加以实践。如果在看本文时有所困惑,可以看看DeepFM的相关理论: CTR深度学习模型之 DeepFM 模型解读 。本文使用的数据下载地址于代码获取地址在文末获取。首先了解一下 Criteo数据集,它由有39个特征,1个label列,其中以I开头的为数值型特征,以C开头的为类别特征:可以看到数据中有缺失值需要填充,并且类别变量需要进行类别编码(onehot 编码的任务交给模型),这部分预处理的代码不详原创 2020-07-28 20:05:35 · 3982 阅读 · 7 评论 -
TensorFlow 2.0 快速上手教程与手写数字识别例子讲解
文章目录TensorFlow 基础自动求导机制参数优化TensorFlow 模型建立、训练与评估通用模型的类结构多层感知机手写数字识别Keras Pipeline *TensorFlow 2.0 出来后不久就有人整理了一份简洁高效的中文指导手册: 简单粗暴 TensorFlow 2,本文对其中一些重点内容加以梳理,方便快速上手。如果你还没装上 TensorFlow 2.0 ,或者希望对 TensorFlow 2.0 的新特性有个大概的了解,可以查看我之前的文章:tensorflow2.0 GPU 版本安原创 2020-07-24 17:45:26 · 594 阅读 · 1 评论 -
tensorflow2.0 GPU 版本安装测试教程及新特性初探
安装与测试TensorFlow2.0安装:pip install tensorflow-gpu==2.0.0 -i https://pypi.douban.com/simple/conda install cudnn=7.6.0conda install cudatoolkit=10.0.130TensorFlow2.0的GPU版本测试代码如下:import tensorflow as tfprint('GPU', tf.test.is_gpu_available())a = tf.c原创 2020-07-24 11:35:23 · 1197 阅读 · 0 评论 -
长短期记忆(LSTM)相关知识
文章目录LSTM结构遗忘门输入门决定给细胞状态C添加哪些新的信息更新旧的细胞信息输出门LSTM小结如何实现长期依赖?如何避免梯度消失/爆炸?双向LSTM(Bi-LSTM)GRU上一篇文章中,提到RNN难以学习到长期依赖关系,后来有人提出了RNN的改进版本LSTM很大程度上改善了长期依赖问题。长期依赖在序列数据中是很常见的,考虑到下面这句话“I grew up in France… I speak fluent French.”,现在需要语言模型通过现有以前的文字信息预测该句话的最后一个词,模型结构的可能原创 2020-05-31 22:22:07 · 1689 阅读 · 1 评论 -
循环神经网络(RNN)相关知识
文章目录RNN概述前向传播公式通过时间反向传播(BPTT)RNN确定序列长度方式其他RNN结构基于RNN的应用1,序列数据的分析2,序列数据的转换3,序列数据的生成RNN的不足1,从隐藏变量h角度来看2,从梯度传播角度来看RNN概述循环神经网络(RNN)是用于处理序列数据的神经网络,该序列在时刻 t(从1 到 τ)包含向量 x(t)x^{(t) }x(t)。典型的网络结构如下图所示:RNN每个时间步都需要将 x 值的输入序列映射到输出值 o 的对应序列。其中 o 是未归一化的对数概率,并且在损失函数原创 2020-05-31 15:24:23 · 1221 阅读 · 3 评论 -
常见激活函数及其求导相关知识
Sigmoid函数Sigmoid函数介绍Sigmoid 是常用的非线性的激活函数,公式如下:σ(x)=11+e−x\sigma(x)=\frac{1}{1+e^{-x}}σ(x)=1+e−x1函数图像如下:从图像可以看出,它能够把连续实值映射为0和1之间的输出,特别的,如果是非常大的负数,那么输出就是0;如果是非常大的正数,输出就是1。Sigmoid 函数有很多局限性:第一点,在数值的绝对值非常大的情况下,对应的函数图像的部分几乎是一条水平线。这意味着梯度几乎为0,不利于深层网络中梯度原创 2020-05-31 15:16:10 · 4239 阅读 · 0 评论 -
BP神经网络相关知识
神经元神经网络最基本的成分是神经元模型,下图是已知沿用至今的M-P神经元模型:该神经元接收前面其他n个神经元传递的输出值作为该神经元的输入,这些输入通过带权值的连接进行传递。神经元将接收到的总输入值与神经元阈值相比较,然后通过激活函数fff处理,最终形成本神经元的输出。理想的激活函数是阶跃函数,将输入值映射为0和1,但是这样的函数不连续可导,不利于网络的学习。更多情况下,我们使用其他函数代替,比较常见的激活函数之一是Sigmoid函数:Sigmoid函数可以把较大范围内的输入值挤压到(0,1)之原创 2020-05-28 17:36:18 · 1045 阅读 · 1 评论