【Pytorch神经网络理论篇】 29 图卷积模型的缺陷+弥补方案

同学你好!本文章于2021年末编写,获得广泛的好评!

故在2022年末对本系列进行填充与更新,欢迎大家订阅最新的专栏,获取基于Pytorch1.10版本的理论代码(2023版)实现,

Pytorch深度学习·理论篇(2023版)目录地址为:

CSDN独家 | 全网首发 | Pytorch深度学习·理论篇(2023版)目录本专栏将通过系统的深度学习实例,从可解释性的角度对深度学习的原理进行讲解与分析,通过将深度学习知识与Pytorch的高效结合,帮助各位新入门的读者理解深度学习各个模板之间的关系,这些均是在Pytorch上实现的,可以有效的结合当前各位研究生的研究方向,设计人工智能的各个领域,是经过一年时间打磨的精品专栏!https://v9999.blog.csdn.net/article/details/127587345欢迎大家订阅(2023版)理论篇

以下为2021版原文~~~~

 

图卷积模型在每个全连接网络层的结果中加入了样本间的特征计算。其述质是依赖深度学特征与缺陷。

1.1 全连接网络的特征与缺陷

多层全连接神经网络被称为万能的拟合神经网络。先在单个网络层中用多个神经元节点实现低维的数据拟合,再通过多层叠加的方式对低维拟合能力进行综合,从而在理论上实现对任意数据的特征拟合。

图10-12左侧的两幅图表示前一层的两个神经元节点将数据在各自的直角坐标系中分成了两类。

图10-12中右侧的图表示后一层神经元将前一层的两个神经元结果融合到一起,实现最终的分类结果。

1.1.1 缺陷①:容易过拟合

从理论上来讲,如果全连接神经网络的层数和节点足够多,那么可以对任意数据进行拟合。然而,这一问题又会带来模型的过拟合问题。全连接神经网络不但会对正常的数据进行拟合,而且会对训练中的批次、样本中的噪声、样本中的非主要特征属性等进行拟合。这会使模型仅能使用在训练数据集上,无法用在类似于训练数据集的其他数据集上。

1.1.2 缺陷②:模型过大且不容易训练

目前,训练模型的主要方法都是反向链式求导,这使得全连接神经网络一旦拥有过多层数,就很难训练出来(一般只能支持6层以内)。即使使用BN分布式逐层训练等方式保证了多层训练的可行性,也无法承受模型中过多的参数带来的计算压力和对模型运行时的算力需求。

1.2 图卷积模型的缺陷(依赖于全连接网络的图模型的通病)

图卷积只是按照具有顶点关系信息的卷积核在每层的全连接网络上额外做一次过滤。

因为在图卷积模型中,也使用反向链式求导的方式进行训练,对图卷积模型深度的支持一般也只能到6层。

图卷积模型在层数受限的同时,也会存在参数过多且容易过拟合的问题。该问题也存在于GAT模型中。

1.3 弥补图卷积模型缺陷的方法(与全连接网络相同)

1.3.1 图卷积模型的层数受限

使用BN、分布式逐层训练等方法

1.3.2 图卷积模型容易出现过拟合

可以使用Dropout、正则化等方法,BN也有提高泛化能力的功能。

1.3.3 参数过多

使用卷积操作代替全连接的特征计算部分,使用参数共享来减小权重。

1.3.4 使用更好的模型

在图神经网络领域,还有一些更好的模型(例如SGC、GfNN和DGl等模型)。它们利用图的特性,从结构上对图卷积模型进行了进一步的优化,在修复图卷积模型原有缺陷的同时,又表现出了更好的性能。

1.4 从图结构角度理解图卷积原理及缺陷

图卷积模型的缺陷,其思路是将图结构数据当作矩阵数据,在规整的矩阵数据基础之上融合深度学习的计算方法。

在DGL库中实现的图卷积方法是基于图结构(空间域)的方式进行处理的。从效率角度来看,这样做有更大的优势,也更符合图计算的特点。

从基于图顶点传播的角度来看,图神经网络的过程可以理解为:基于顶点的局部邻居信息对顶点进行特征聚合,即将每个顶点及其周围顶点的信息聚合到一起以覆盖原顶点。

1.4.1 图神经网络的计算过程

如下图所示,描述目标顶点A在图神经网络中的计算过程:对于每一次计算,目标顶点A都对周围顶点特征执行一次聚合操作(任意深度)。

 1.4.2 图卷积神经网络无法搭建过多层的原因

图卷积神经网络可以理解为每次执行聚合操作时都要对特征进行一次全连接的变换,并对聚合后的结果取平均值。层数过深会导致每个顶点对周围邻居的聚合次数过多。这种做法会导致所有顶点的值越来越相似,最终会收敛到同一个值,无法区分每个顶点的个性特征。

1.4.3 图注意力机制也存在无法搭建过多层的情况

图注意力机制中与图卷积的结构几乎一致,只不过是在顶点聚合的过程中对邻居顶点加入了一个权重比例。

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/news/469281.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

【Pytorch神经网络实战案例】22 基于Cora数据集实现图注意力神经网络GAT的论文分类

注意力机制的特点是,它的输入向量长度可变,通过将注意力集中在最相关的部分来做出决定。注意力机制结合RNN或者CNN的方法。 1 实战描述 【主要目的:将注意力机制用在图神经网络中,完成图注意力神经网络的结构和搭建】 1.1 实现…

用OC和Swift一起说说二叉树

前言: 一:在计算机科学中,二叉树是每个节点最多有两个子树的树结构。通常子树被称作“左子树”(left subtree)和“右子树”(right subtree)。二叉树常被用于实现二叉查找树和二叉堆。二&#xf…

【Pytorch神经网络理论篇】 30 图片分类模型:Inception模型

同学你好!本文章于2021年末编写,获得广泛的好评! 故在2022年末对本系列进行填充与更新,欢迎大家订阅最新的专栏,获取基于Pytorch1.10版本的理论代码(2023版)实现, Pytorch深度学习理论篇(2023版)目录地址…

【Pytorch神经网络理论篇】 31 图片分类模型:ResNet模型+DenseNet模型+EffcientNet模型

同学你好!本文章于2021年末编写,获得广泛的好评! 故在2022年末对本系列进行填充与更新,欢迎大家订阅最新的专栏,获取基于Pytorch1.10版本的理论代码(2023版)实现, Pytorch深度学习理论篇(2023版)目录地址…

【Pytorch神经网络理论篇】 32 PNASNet模型:深层可分离卷积+组卷积+空洞卷积

1 PNASNet模型简介 PNASNet模型是Google公司的AutoML架构自动搜索所产生的模型,它使用渐进式网络架构搜索技术,并通过迭代自学习的方式,来寻找最优网络结构。即用机器来设计机器学习算法,使得它能够更好地服务于用户提供的数据。该…

s5k5e2ya MIPI 摄像头调试

1、驱动移植的话按照我之前的文章来做 驱动里面注意是几路的lane,一般mipi的话是差分信号,2路和4路是比较常见的。2、mipi波形 很明显上面的波形是不正确的。dp dn有一个都成了正弦波了。 首先,我们要找一下正确的波形 正确的波形应该是DP和DN不会同时…

【Pytorch神经网络实战案例】23 使用ImagNet的预训练模型识别图片内容

1 案例基本工具概述 1.1 数据集简介 Imagenet数据集共有1000个类别,表明该数据集上的预训练模型最多可以输出1000种不同的分类结果。 Imagenet数据集是目前深度学习图像领域应用得非常多的一个领域,关于图像分类、定位、检测等研究工作大多基于此数据…

杂谈转载

一、什么是运行时(Runtime)? 运行时是苹果提供的纯C语言的开发库(运行时是一种非常牛逼、开发中经常用到的底层技术)二、运行时的作用? 能获得某个类的所有成员变量能获得某个类的所有属性能获得某个类的所有方法交换…

【Pytorch神经网络实战案例】24 基于迁移学习识别多种鸟类(CUB-200数据集)

1 迁移学习 在实际开发中,常会使用迁移学习将预训练模型中的特征提取能力转移到自己的模型中。 1.1 迁移学习定义 迁移学习指将在一个任务上训练完成的模型进行简单的修改,再用另一个任务的数据继续训练,使之能够完成新的任务。 1.1.1 迁…

【Pytorch神经网络理论篇】 33 基于图片内容处理的机器视觉:目标检测+图片分割+非极大值抑制+Mask R-CNN模型

同学你好!本文章于2021年末编写,获得广泛的好评! 故在2022年末对本系列进行填充与更新,欢迎大家订阅最新的专栏,获取基于Pytorch1.10版本的理论代码(2023版)实现, Pytorch深度学习理论篇(2023版)目录地址…

arduino i2c 如何写16位寄存器_树莓派3B开发Go语言(二)寄存器版本GPIO

作者:爪爪熊链接:https://www.jianshu.com/p/0495c0554a63來源:简书之前将go语言的运行环境给搭建起来了,但是没有开始真正的试试Go 语言操作树莓派硬件的效果。一、树莓派3B硬件介绍树莓派3B采用了博通的BCM2837方案,…

【Pytorch神经网络实战案例】25 (带数据增强)基于迁移学习识别多种鸟类(CUB-200数据集)

1 数据增强 在目前分类效果最好的EficientNet系列模型中,EfficientNet-B7版本的模型就是使用随机数据增强方法训练而成的。 RandAugment方法也是目前主流的数据增强方法,用RandAugment方法进行训练,会使模型的精度得到提升。 2 RandAugment…

diskgenius 数据迁移_U盘格式化后数据恢复免费方法教程

U盘里的数据一般都很重要,比如论文或者办公文件,而有时候我们会被病毒或者误操作把U盘给格式化了,这时候要怎么恢复U盘里的数据呢,只有一个办法,就是用U盘数据恢复软件,但网上此类软件虽然很多,…

【Pytorch神经网络理论篇】 34 样本均衡+分类模型常见损失函数

同学你好!本文章于2021年末编写,获得广泛的好评! 故在2022年末对本系列进行填充与更新,欢迎大家订阅最新的专栏,获取基于Pytorch1.10版本的理论代码(2023版)实现, Pytorch深度学习理论篇(2023版)目录地址…

安卓 camera 调用流程_安卓如何做出微信那样的界面仿微信“我”的界面1/5

本系列目标通过安卓编程仿写微信“我”的界面,让大家也能做出类似微信界面.效果图如下:本文目标做出页面顶部的相机部分(其他部分在后续文章中逐步分享).效果图如下:实现方案通过截图工具或者下载一张照相机照片,放到工程的src/main/res/drawable目录下,命名为camera.png添加一…

【Pytorch神经网络实战案例】26 MaskR-CNN内置模型实现目标检测

1 Pytorch中的目标检测内置模型 在torchvision库下的modelsldetecton目录中,找到__int__.py文件。该文件中存放着可以导出的PyTorch内置的目标检测模型。 2 MaskR-CNN内置模型实现目标检测 2.1 代码逻辑简述 将COCO2017数据集上的预训练模型maskrcnm_resnet50_fp…

【Pytorch神经网络实战案例】27 MaskR-CNN内置模型实现语义分割

1 PyTorch中语义分割的内置模型 在torchvision库下的models\segmentation目录中,找到segmentation.Py文件。该文件中存放着PyTorch内置的语义分割模型。 2 MaskR-CNN内置模型实现语义分割 2.1 代码逻辑简述 将COCO 2017数据集上的预训练模型dceplabv3_resnet101…

怎么查看电脑内存和配置_电脑内存不足处理方法,电脑卡死处理方法。

超过10万人正在关注赶快来关注吧,这里有你想找的热点资讯,这里有你想要的各种资料,还有海量的资源,还在等什么。快来关注,大佬带你开车。电脑系统经常奔溃,软件经常运行不了,开不了机&#xff0…

前端开源项目周报0307

由OpenDigg 出品的前端开源项目周报第十一期来啦。我们的前端开源周报集合了OpenDigg一周来新收录的优质的前端开源项目,方便前端开发人员便捷的找到自己需要的项目工具等。 react-trend 简单优雅的光线 react-progressive-web-app 优化ProgressiveWeb应用开发 pull…

【Pytorch神经网络理论篇】 35 GaitSet模型:步态识别思路+水平金字塔池化+三元损失

同学你好!本文章于2021年末编写,获得广泛的好评! 故在2022年末对本系列进行填充与更新,欢迎大家订阅最新的专栏,获取基于Pytorch1.10版本的理论代码(2023版)实现, Pytorch深度学习理论篇(2023版)目录地址…