- 博客(10)
- 收藏
- 关注
原创 为什么GCN不能堆叠多层(过平滑问题)
我们来看下,用多层GCN会是什么样的效果,对于节点分类任务,在使用多层GCN之后,节点的区分性越来越差,其表示向量趋于一致,出现梯度消失、过平滑、过拟合等一系列问题,这使得相关学习任务难以继续进行。因此,尽管GCN为图数据的学习带来了一种全新的方式,但GCN模型无法像CNN模型一样进行深度堆叠,一旦使用多层GCN,相关任务的效果会急剧下降,这使得某些任务中,GCN的能力非常有限。.........
2022-06-17 09:15:11
2106
原创 GCN的应用场景概述
实际上GCN实际上跟CNN的作用一样,就是一个特征提取器,只不过它的对象是图数据,GCN精妙地设计了从图数据中提取特征的方法,让我们可以使用这些特征去对图数据进行节点分类、图分类、边预测,以及得到相应的图嵌入,而现实生活中很多重要的数据都是以网络结构的方式产生,利用图数据的特征提取器来处理基于这部分数据的任务也理所当然。而对于图像、文本等任务,通过抽象位置、共现、上下文等关系形成图结构,通过GCN来进行特定或额外特征提取和补充,也让其成为除了RNN、CNN及transformer等特征提取器外一种新的选择和
2022-06-15 22:26:42
2904
原创 神经网络中warmup策略
训练模型常规策略是初始使用较大的学习率,随着训练的逐渐进行学习率衰减(learning rate decay)。而wramup则是刚开始使用较小的学习率,然后增大到设定的学习率,最后又随着训练的进行慢慢减小学习率。这个类似我们跑步的速度一样,先提高速度,快到终点又降低速度。常见的warmup方式有constant(先用较小学习率,训练误差达到一定值时再调整为指定值)、linear(学习率从一个小的值线性增大到指定值)、exponent(指数增长到指定值),如下图。......
2022-06-13 15:07:25
2203
原创 进行数据增强后数据集数据量有无变化(保持不变还是增多)
当一张图片进入transforms.Compose()这个函数时,该照片会依次执行该函数内的操作序列,常见的操作如下,这些操作有的是随机的、有的是按一定概率执行或不执行,但是所有操作完成后,输出的仍是一张图像,所以整个数据集的size并不会增多。...
2022-06-13 00:10:48
2284
1
原创 命名实体识别(NER)入门知识梳理
进阶学习精读word2vec内部的实现原理,CBOW和Skip-gram两种方法的实现及内部优化细节等;学习下attention机制,self-attention机制,transformer,他们比LSTM好在哪,这里要花很大一部分精力,这部分相当于是目前NLP中最核心的技术了;预训练模型:GPT、ELMo、BERT、ERNIE论文精读,了解下其他预训练模型的改进idea;调试并精读BERT+BiLSTM+CRF的代码实现,至此当前NER这一块的基础知识和组件基本就攻克完成了,至于提升精度及...
2022-06-13 00:05:05
772
原创 训练神经网络时的随机数生成seed的用法
生活中时常遇到这些情况,需要生成随机验证码;或玩数字炸弹游戏需要生成随机数字;亦或用random来生成随机数比例,分配训练集、验证集、测试集;或者训练神经网络时某些参数需要随机初始化时都需要用到随机数。......
2022-06-12 23:51:43
3571
原创 Transformer 为什么使用 Layer Normalization,而不是其他的归一化方法?
1. 先确定为什么要进行Normalzation?2. 各归一化方法在什么背景下提出,适合什么样的场景?3. Transformer主要结构及主要处理哪一类任务?
2022-05-18 23:04:04
2546
原创 GNN vs Transformer
一个是图的表示学习一个是语言的表示学习先给两个图:图的邻接矩阵和self-attention可视化结果。我们可以把multi-head attention不同的head理解为CNN中不同的卷积核,用来抽取不同的特征,文本中的每一个词对应于图中的一个节点,文本的上下文对应图节点的邻接节点,而self-attention就类似于一个全连接图,GNN学习的是node emmeding,而Transformer学习的是word emmeding。在公司图谱中,小明是经理,在家族图谱中,小明可能是丈夫,是父亲
2022-05-12 18:48:10
1247
原创 Pytorch 使用多块GPU训练模型
1. 先确定几个概念:①分布式、并行:分布式是指多台服务器的多块GPU(多机多卡),而并行一般指的是一台服务器的多个GPU(单机多卡)。②模型并行、数据并行:当模型很大,单张卡放不下时,需要将模型分成多个部分分别放到不同的卡上,每张卡输入的数据相同,这种方式叫做模型并行;而将不同的数据分配到不同的卡上,运行相同的模型,最后收集所有卡的运算结果来提高训练速度的方式叫数据并行。相比于模型并行,数据并行更为常用,以下我们主要讲述关于数据并行的内容。③同步更新、...
2022-04-29 16:01:39
6404
1
原创 Python argparse.ArgumentParser()用法
1. 概述argparse是python用于解析命令行参数和选项的标准模块,一方面可以接收运行代码时用户传入的各种参数(比如传入数据路径),另一方面也可以规范的定义程序中用到的参数(比如定义epoch及batch_size等)。2. 使用步骤①导入包:import argparse②创建解析器:parser = argparse.ArgumentParser()③添加参数:parser.add_argument('--epochs', type=int, default=...
2022-04-27 11:19:02
1754
空空如也
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人