当前位置: 首页 > news >正文

半监督节点分类-graph learning


半监督节点分类相当于在一个图当中,用一部分节点的类别上已知的,有另外一部分节点的类别是未知的,目标是使用有标签的节点来推断没有标签的节点

注意 半监督节点分类属于直推式学习,直推式学习相当于出现新节点后,需要重新进行训练
但是图神经网络属于归纳式学习,当图当中出现一个新节点的时候,可以快速进行泛化

半监督节点分类问题的解决方法:节点特征工程;节点表示学习(图嵌入,如随机游走);标签传播(消息传递);图神经网络

massage passing:消息传递机制 相当于使用一个节点的领域的其他节点,来预测该节点

1.标签传播 label propagation (relational classification)


Two explanations for why behaviors of nodes in networks are correlated:
Homophily:具有相同属性的节点,更可能相连并具有相同的类别
Influence:社交关系会影响节点类别
  首先,在初始化当中,需要将已知标签节点的类别设定为0或1.
  然后将所有不知道类别的节点类别设定为0.5。
  然后需要对所有未知节点值进行多轮加权平均/平均的计算。
  然后不断进行计算,直到收敛(convergence)
  Update all nodes in a random until convergence or until max number of Iteration is reached
  缺点:仅使用到了网络的连接信息,没有使用到节点的属性特征;且并不能保证收敛

2.iterative classfication 算法 / ICA算法

既要用到图当中节点的属性特征,又要去用用图当中节点的连接信息
  需要去训练两个分类器
  第一个分类器仅仅使用节点的属性特征 base classifier
  第二个分分类器,输入的是属性特征和连接信息。
使用节点的属性特征和网络的连接特征(即一个包含邻域节点类别信息的向量Z) relational classifier
  
  首先需要使用已经标准的节点 作为训练集 来训练两个分类器
  然后相当于使用第一个分类器来提供初始的节点标签
  然后再使用第二个分类器进行不断的循环迭代。不断更新Y和Z

3. Correct and Smooth
  是一种后处理的方法
  具体步骤:
  首先需要理由已经标注的节点来训练一个 base predictor
  第二步:然后use this base predictor to predict soft labels of all nodes 
    (注意这里第二步预测的是软标签,即例如class 0的概率是一个值,class 1的概率是一个值,这两个值的加和为1,且包括已经有类别标签的节点也许需要预测,得到所有节点的soft label)
    We expect these soft label to be decently accurate.
    we can use graph structure to post-process the predictions to make them more current.
    相当于想让模型对于这些不太确信的节点更加确信。
  第三步:post-process the predictions using graph structure to obtain the final prediction of all nodes
    Correct and smooth use the 2-step procedure to post-process the soft predictions
    分为correct step 和 smooth step

    Correct step 当中相当于认为error在图当中也有homophily,因此应该分散不确定性和困惑度,仅仅计算有标注的
     下一时刻的error矩阵既要和上一时刻的error矩阵相关,又需要和传播扩散相关
    相当于将不确定性和困惑度进行了扩散

  需要注意的是,在correct 和 smooth 当中,前者使用的是误差矩阵进行传播,但是后者
  使用节点分类预测的置信度进行传播

4.Loopy Belief propagation
  Belief propagation is a dynamic programming approach to answering probability
Queries in a graph
  相当于节点和节点之间是可以传递消息的


 

http://www.lryc.cn/news/306652.html

相关文章:

  • 软件文档-运维-开发-管理-资质-评审-招投标-验收
  • 猫头虎分享已解决Bug || Vue中的TypeError: Cannot read property ‘name‘ of undefined 错误
  • 技术应用:使用Spring Boot、MyBatis Plus和Dynamic DataSource实现多数据源
  • C# Onnx 使用onnxruntime部署实时视频帧插值
  • 编程笔记 Golang基础 016 数据类型:数字类型
  • 一周学会Django5 Python Web开发-会话管理(CookiesSession)
  • QT之QString.arg输出固定位数
  • Linux下各种压缩包的压缩与解压
  • 【ctfshow—web】——信息搜集篇1(web1~20详解)
  • GEE入门篇|遥感专业术语(实践操作4):光谱分辨率(Spectral Resolution)
  • c++中模板的注意事项
  • 【代码随想录python笔记整理】第十三课 · 链表的基础操作 1
  • JAVA工程师面试专题-《Mysql》篇
  • @ 代码随想录算法训练营第4周(C语言)|Day22(二叉树)
  • 福特锐界2021plus 汽车保养手册
  • c++进阶路线
  • python中的类与对象(2)
  • Android横竖屏切换configChanges=“screenSize|orientation“避免activity销毁重建,Kotlin
  • 【C语言基础】:操作符详解(二)
  • 模型训练基本结构
  • Redis 数据结构详解:底层实现与高效使用场景
  • Vue2:router-link的replace属性
  • 普中51单片机(DS18B20温度传感器)
  • 2.23C语言学习
  • origin/master master
  • 【数据结构】时间复杂度与空间复杂度
  • 分别使用js与jquery写 单击按钮时出现内容 点击删除按钮不会再向下出现
  • 【Git】Git命令的学习与总结
  • 前端工程化面试题 | 18.精选前端工程化高频面试题
  • 大公司的工程师是怎么废掉的...