首页
学习
活动
专区
圈层
工具
发布
精选内容/技术社群/优惠产品,尽在小程序
立即前往

ICLR 2017 | GCN:基于图卷积网络的半监督分类

引言 考虑在图中对节点进行分类:图中只有少数节点被标记,我们的任务是预测未标记节点的标签,这种问题就是图的半监督分类。...对加上自环后的邻接矩阵 图片 进行了归一化: 图片 。归一化后的邻接矩阵每一行的和都为1。 3. 半监督节点分类 有了上述图卷积的传播规则后,半监督节点分类就变得很简单了。...比如说我们要分为两类,那么只需要在GCN后加上一个输出为2的全连接层,然后再经过一个Softmax即可。得到输出后再算出交叉熵损失,然后反向传播更新每一层GCN的参数 图片 。...然后损失函数对神经网络参数 图片 和 图片 求导,梯度下降更新参数,更新后再进行新一轮的传播。 等训练了一定轮数后,我们就可以利用得到的模型对未标记的节点标签的类别进行预测了。 4....实验 数据集 实验设置:测试集大小为1000个节点,网络采用第三节中提出的双层GCN模型: Baseline:标签传播(LP)、半监督嵌入(SemiEmb)、流形正则化(ManiReg)以及DeepWalk

64620

WISE 2019 | ML-GCN:多标签图节点分类的半监督图嵌入

GCN可以用作图的节点分类,并且给出了代码实现,具体可以参考:ICLR 2017 | GCN:基于图卷积网络的半监督分类以及PyG搭建GCN实现节点分类。...对于简单的多标签分类任务来讲,GCN将图的特征矩阵经过多个图卷积层后得到每个节点的状态向量表示,然后再经过一个softmax函数来进行分类,最后再最小化softmax输出与真实标签的交叉熵损失。...这种处理方式比较简单,但也容易丢失一些信息,如标签之间的相关性,从而无法得到较好的预测性能。 鉴于此,本文作者提出了新的基于GCN的半监督节点分类器:ML-GCN。...1.1 GCN原理 给定一个无向图 图片 ,其中 图片 , 图片 和 图片 分别表示带标签的节点和不带标签的节点, 图片 表示节点数目,在半监督学习中,一般不带标签的节点为大多数,我们的任务是推导出这些节点的标签...将 图片 经过一个sigmoid函数,再与标签计算交叉熵损失。 计算经过负采样后的node-label损失。 计算经过负采样后的label-label损失。

56020
  • 您找到你想要的搜索结果了吗?
    是的
    没有找到

    ICCV 2019 | 半监督损失函数,利用无标签数据优化人脸识别模型

    训练一个高性能的人脸识别模型,采用监督学习的方式,需要大量的带标签的人脸数据,通常数据量越大,训练的模型性能越好;人物越多,识别性能越好。...区别于其他半监督学习方法,我们的方法对无标签数据没有过多限制,只需基本保证这人不出现在有标签数据中。无标签数据的加入,可以轻易扩大训练人物数量,提升模型泛化能力。...UIR Loss 为了利用无标签数据,我们设计了半监督损失函数,Unknown Identity Rejection(UIR)Loss。...下面从模型分类层类心间距离这一角度来验证特征分布的稀疏性。我们计算了分类层类心两两间的cos距离,距离越大,类心分布更稀疏。...总结与展望 半监督损失函数UIR loss可以有效的借助海量无标签的人脸数据,优化人脸识别模型性能,提升模型泛化能力。

    2.5K20

    讲解PyTorch 多分类损失函数

    讲解PyTorch多分类损失函数在机器学习中,多分类问题是指将样本分为两个以上的类别。为了对多分类问题进行有效的训练,我们需要使用适当的损失函数来度量模型预测与真实标签之间的差异。...PyTorch是一个流行的深度学习框架,提供了多种多分类损失函数的实现。本文将带您了解PyTorch中一些常用的多分类损失函数及其用法。1....接下来的梯度计算、梯度清零、反向传播和权重更新与交叉熵损失函数的示例代码相似。3. 其他多分类损失函数除了交叉熵损失函数和负对数似然损失函数,PyTorch还提供了其他许多多分类损失函数的实现。...您可以在PyTorch的官方文档中查找更多多分类损失函数的信息。 希望本文对您理解PyTorch中的多分类损失函数有所帮助。使用适当的损失函数,可以帮助您训练出更准确的多分类模型。...总的来说,多分类损失函数是用于评估模型预测结果与真实标签之间差异的函数。选择合适的多分类损失函数可以帮助模型更准确地进行分类任务,并优化模型的预测结果。

    2.1K00

    CVPR2019 | 基于图学习卷积网络的半监督学习

    ,后半部分是一个图卷积的结构,用于完成半监督分类任务,对应一个分类损失 ? 。...图学习结构的目的是学习数据点见的邻接矩阵S,xi,xj分别是节点i,j的表示向量,Sij是节点i,j之间的权值,计算方法如下: ? 定义损失函数为: ?...对于半监督分类任务来说,定义最后一层为: ? 所以 ? 是一个交叉熵损失函数: ? 所以综上,定义总的损失函数: ?...三、实验结果 为了证实模型的效果,在7个数据集上进行了半监督节点分类任务实验,包括3个标准的引文网络数据集(Citeseer、Cora和Pubmed),4个图像数据集(CIFAR 10, SVHN,MNIST...可以看到当为0时,GLCN仍然能获得一个合理的结果,同时也说明了图学习正则化项可以改善半监督分类性能。

    85000

    Self-Training:用半监督的方式对任何有监督分类算法进行训练

    半监督学习结合了标记和未标记的数据,可以扩展模型训练时可用的数据池。我们无需手动标记数千个示例,就可以提高模型性能并节省大量时间和金钱。...如果你经常使用有监督的机器学习算法,你肯定会很高兴听到:可以通过一种称为Self-Training的技术快速调整模型的训练方法并享受到半监督方法的好处。...Self-Training属于机器学习算法的半监督分支,因为它使用标记和未标记数据的组合来训练模型。 Self-Training是如何进行的?...模型训练 现在数据已经准备好,我们将在标记数据上训练一个有监督的支持向量机分类模型(SVC),并将它作为性能测试的基线模型,这样我们能够从后面的步骤判断半监督方法比标准监督模型更好还是更差。...总结 Self-Training可以用半监督的方式对任何监督分类算法进行训练。如果有大量未标记的数据,建议在进行昂贵的数据标记练习之前先尝试以下半监督学习。 作者:Saul Dobilas

    2.5K10

    【图神经网络】GCN-3(semi-GCN)

    这个问题可以被定义为基于图的半监督学习,基于图的正则化形式将标签信息与图结构数据平滑的结合,通过在损失函数中使用图拉普拉斯正则化项: 其中, 表示有标签数据的损失函数, 表示图结构信息的损失函数,...在本文中,作者使用神经网络模型 对图结构进行编码,并训练所有带标签的节点 ,从而避免图结构信息损失函数中的正则化。...,最后输入节点左乘邻接矩阵代表了节点加上了其邻居节点的特征。 3.4 半监督节点分类 ?...使用了一个两层的GCN进行节点分类任务作为例子: 首先计算 ,两层GCN的forward公式如下: 其中 为输入层到隐藏层的变换, 为隐藏层到输出层的变换 对于半监督分类问题,使用所有有标签节点上的交叉熵作为损失函数...可以看到,基于GCN的半监督学习效果相对其他模型有较大的提高 五、Conclusion 本文采用一阶近似卷积的方式提出GCN模型,具有以下特性 局部性(以某节点为中心加上k阶邻居的信息) 一阶性,但是可以通过多层

    61220

    GNN 系列:图神经网络的“开山之作”CGN模型

    问题定义 考虑图(例如引文网络)中节点(例如文档)的分类问题,通常该图中只有一小部分节点有标签。这类问题可以划分到基于图的半监督学习问题中。...为了对节点进行分类,首先我们可以利用节点自身的特征信息,除此之外,我们还可以利用图结构信息,因此一个典型的图半监督学习问题可以采用下面的学习策略: ?...因此,在这个工作中,作者不再显示的定义图结构信息的损失函数 Lreg, 而是使用神经网络模型f(X,A)直接对图结构进行编码,训练所有带标签的结点L0,来避免损失函数中的正则化项Lreg。...这篇文章的主要贡献是为图半监督分类任务设计了一个简单并且效果好的神经网络模型,这个模型由谱图卷积(spectral graph convolution)的一阶近似推导而来,具有理论基础。 2....半监督学习节点分类 针对非欧几里得结构化数据表示问题,研究者们引入了图论中抽象意义上的图(Graph)来表示非欧几里得结构化数据。

    1.3K20

    PU Learning简介:对无标签数据进行半监督分类

    假设您有足够的数据和良好的特征,这似乎是一项简单的分类任务。...样本不均衡问题是否使这项任务变成了无监督学习问题?好吧,不一定。 此问题通常被称为PU(正样本和未标记)分类问题,首先要将该问题与两个相似且常见的“标签问题”相区别,这两个问题使许多分类任务复杂化。...这也是一个常见问题,通常被视为无监督的离群点检测问题,在机器学习领域中也有很多工具专门用于处理这些情况(OneClassSVM可能是最著名的)。...但是,它确实损失了大约17%的召回率,因此损失了很多正样本。但是,我相信与其他方案相比,这个结果是令人相当满意的。...其次,如随附的笔记所示,有一些变量需要调整(例如要设置的样本大小,用于分类的概率阈值等),但是最重要的可能是选择的分类器及其参数。

    2.6K22

    GNN 系列(二):图神经网络的“开山之作”GCN模型

    3、半监督学习节点分类 a 传播公式解释 b 例子 4、后话 5、Reference 正文 1....问题定义 考虑图(例如引文网络)中节点(例如文档)的分类问题,通常该图中只有一小部分节点有标签。这类问题可以划分到基于图的半监督学习问题中。...为了对节点进行分类,首先我们可以利用节点自身的特征信息,除此之外,我们还可以利用图结构信息,因此一个典型的图半监督学习问题可以采用下面的学习策略: ?...因此,在这个工作中,作者不再显示的定义图结构信息的损失函数 Lreg, 而是使用神经网络模型f(X,A)直接对图结构进行编码,训练所有带标签的结点L0,来避免损失函数中的正则化项Lreg。...半监督学习节点分类 针对非欧几里得结构化数据表示问题,研究者们引入了图论中抽象意义上的图(Graph)来表示非欧几里得结构化数据。

    3.8K10

    NeurIPS 2021:半监督节点分类中的拓扑不平衡学习

    与其他数据结构类似,图上节点分类的表征学习面临着节点类别数量不平衡的问题,即不同类别中样本数量可能存在很大的差异,由此可能会引起决策边界由多数类决定的问题。...为了解决拓扑不平衡问题,从而增加节点分类性能,本文提出了一个训练框架ReNode,基于标记节点的拓扑位置对其进行重加权。...数量平衡而拓扑不平衡情况下的损失LT表示为: F可表示任意的GNN编码器,gi表示节点i在GNN中的输出, 表示节点i单热向量中的金标签。...同理,类别数量及拓扑结构均不平衡情况下的损失LQ可表示为: 05 实验 本文选用的数据集如下表所示: 并且分别在三个不同的场景中验证了ReNode方法的有效性。...同时将最先进的QINL方法作为基线方法,GCN作为backbone模型。实验结果表明本文算法能够很好地与数量不平衡的方法相结合,从而更全面的解决图上不平衡的问题。

    90710

    GraphSAGE: GCN落地必读论文

    作为 GNN 的重要分支之一,很多同学可能对它还是一知半解。...2.GraphSAGE框架 本文提出 GraphSAGE 框架的核心是如何聚合节点邻居特征信息,本章先介绍 GraphSAGE 前向传播过程(生成节点 embedding ),不同的聚合函数设定;然后介绍无监督和有监督的损失函数以及参数学习...2.2 聚合函数 伪代码第 5 行可以使用不同聚合函数,本小节介绍五种满足排序不变量的聚合函数:平均、GCN 归纳式、LSTM、pooling 聚合器。...2.3 无监督和有监督损失设定 损失函数根据具体应用情况,可以使用基于图的无监督损失和有监督损失。 a....有监督损失:无监督损失函数的设定来学习节点 embedding 可以供下游多个任务使用,若仅使用在特定某个任务上,则可以替代上述损失函数符合特定任务目标,如交叉熵。

    5.3K32

    从损失函数优化文本分类模型的指标

    问题 在我们的舆情系统里,客户标注了一批文章倾向性的数据,为了降低人工成本,客户希望使用模型来实现自动的标注。...但是客户标注的这批数据是极其不平衡的,绝大部分数据都是同一个分类,而且数据是多人标注的,数据质量其实比较一般,同事在这批数据上验证了一下,指标如下: ​ 训练时使用的损失函数是交叉熵,过程有使用过采样之类的...分析与方案 要提升其他类别的准确率,最开始想的是可以直接对类别的置信度乘以一个权重,得到的新值作为最后的置信度。...关注损失函数 训练是有目标的,就是让loss值最小化,但是loss值最小和各个类别的准确都比较好却不是等价的,因为类别之间太不平衡了。loss最小,应该是倾向于整体准确率最好。...关于损失函数的理解 损失函数并不是一成不变的,很多时候应该从场景的目标出来,设计出跟目标直接相关的损失函数,往往能收到好的效果。 机器学习里经常出现的距离函数往往也是这样的。

    35010

    入门 | 半监督学习在图像分类上的基本工作方式

    选自thecuriousaicompany 机器之心编译 参与:陈韵竹、刘晓坤 本文回顾了一些常见的半监督算法,随后介绍了作者在 NIPS 2017 展示的 Mean Teacher 项目。.../mean-teacher/ 半监督学习即将迎来黄金时代。...幸运的是,在今年,半监督图像分类方法已经改进,从而使用未标记的数据变得实际可行。另外,其中最好的方法出乎意料地简单。 今年,半监督图像分类的准确率有了飞跃性的提高。...而我们希望分类器通过训练,能将上述图像高概率地标记为狗: ? 如果我们知道图像的标签,我们可以使用标准的监督学习技术来训练分类器。我们可以想象,这个真实的标签将预测拉向其方向,就像这样: ?...在两个预测之间添加一致性代价函数(例如交叉熵)。 4. 在每个训练步骤中,只用优化器训练「学生」权重。 5. 在每个训练步骤后,将「教师」权重更新为「学生」权重的指数移动平均值。 ?

    1.7K100

    【损失函数】常见的损失函数(loss function)总结

    特点: (1)0-1损失函数直接对应分类判断错误的个数,但是它是一个非凸函数,不太适用. (2)感知机就是用的这种损失函数。但是相等这个条件太过严格,因此可以放宽条件,即满足 ?...Hinge 损失函数 Hinge损失函数标准形式如下: ? 特点: (1)hinge损失函数表示如果被分类正确,损失为0,否则损失就为 ? 。SVM就是使用这个损失函数。 (2)一般的 ?...的值在-1和+1之间就可以了,并不鼓励 ? ,即并不鼓励分类器过度自信,让某个正确分类的样本距离分割线超过1并不会有任何奖励,从而使分类器可以更专注于整体的误差。...表示预测的输出, ? 表示样本总数量。 特点: (1)本质上也是一种对数似然函数,可用于二分类和多分类任务中。...二分类问题中的loss函数(输入数据是softmax或者sigmoid函数的输出): ? 多分类问题中的loss函数(输入数据是softmax或者sigmoid函数的输出): ?

    3K61

    深度GNN中的Over-Smoothing

    Motivation 在计算机视觉中,模型CNN随着其层次加深可以学习到更深层次的特征信息,叠加64层或128层是十分正常的现象,且能较浅层取得更优的效果; 图卷积神经网络GCNs是一种针对图结构数据的深度学习方法...,但目前大多数的GCN模型都是浅层的,如GCN,GAT模型都是在2层时取得最优效果,随着加深模型效果就会大幅度下降; GCN随着模型层次加深会出现Over-Smoothing问题,Over-Smoothing...既相邻的节点随着网络变深就会越来越相似,最后学习到的nodeembedding便无法区分,模型效果下降。...为什么要将GNN做深,DeeperGNN适用于解决什么问题: (1)少标签半监督节点分类 (2)少特征半监督节点分类 ?...Propagation)等; 4、损失函数Loss/Normalization:通过loss函数控制模型对于Node Embedding学习 接下来,我们将通过上述一个公式,结合以上四点观点,分享下面五篇论文

    1.4K11

    半监督学习在金融文本分类上的探索和实践

    本文基于熵简NLP团队在真实业务场景上的实践经验,从垂直领域对于半监督技术的需求出发,详细介绍半监督学习中最新的代表技术之一UDA 算法的特性,以及在金融文本分类任务上的落地实践。...上图即是 UDA 算法的基本框架,该框架对于模型网络本身并没有特别的要求,核心是对目标函数进行了改造。...从图中可以看出,UDA 的目标函数共包括两个部分,分别是有监督损失项和无监督损失项: 有监督损失项(Supervised Cross-entropy Loss):用来计算有标签数据的误差,采用了常用的交叉熵作为目标...因此从文本情感这个角度来看,二者在分布上是类似的,这一点对于情感分类这样的监督任务是有益的。...第三,数据增强技术对于半监督学习的效果具有重要的影响,我们认为这也是半监督的重要研究方向之一,值得深入探索。

    1.5K10

    线性分类器损失函数与最优化(下)

    最优化 Optimization 损失函数可以量化某个具体权重集W的质量。而最优化的目标就是找到能够最小化损失函数值的W 。...随机搜索 既然确认参数集W的好坏蛮简单的,那第一个想到的(差劲)方法,就是可以随机尝试很多不同的权重,然后看其中哪个最好。...# 假设X_train的每一列都是一个数据样本(比如3073 x 50000) # 假设Y_train是数据样本的类别标签(比如一个长50000的一维数组) # 假设函数L对损失函数进行评价 bestloss...梯度下降 现在可以计算损失函数的梯度了,程序重复地计算梯度然后对参数进行更新,这一过程称为梯度下降 ### 普通的梯度下降 while True: weights_grad = evaluate_gradient...如果像这样计算整个训练集,来获得仅仅一个参数的更新就太浪费了。一个常用的方法是计算训练集中的小批量(batches)数据。

    46140
    领券