JOAO:自动化选择数据增强的GraphCL

简介: JOAO:自动化选择数据增强的GraphCL

论文标题:Graph Contrastive Learning Automated


论文链接:https://arxiv.org/abs/2106.07594


论文来源:ICML 2021


之前的相关博客:GraphCL:基于数据增强的图对比学习


一、概述


与图片数据不同,图数据来源于多个不同的领域,不同来源的图数据性质差异很大,因此在进行数据增强时不同的数据集可能会适应不同的方式。在GraphCL中采用了多种不同的数据增强方式,但是对于具体的数据集来说需要通过手工挑选特定的增强方式。数据增强方式的选择遵循经验法则,通常是从每个数据集的反复试验中总结出来的。对于这个问题,本文提出了 JOint Augmentation Optimization (JOAO)框架来进行数据增强方式的自动选择。JOAO是一个基于对抗方式的min-max双层训练框架,其特点是:

①自动的,完全不需要人工选择数据增强的方式;

②自适应的,平滑泛化处理不同的图数据;

③动态的,允许在不同的训练阶段选用不同的数据增强。

另外需要强调两点:

①JOAO不一定要与GraphCL绑定,也可以与其他图对比学习框架结合;

②JOAO主要关注数据增强方式的自动化选择,其目标是能够达到SOTA的效果,而不一定要超越它。


二、方法


  1. GraphCL


QQ截图20220612082818.png

                                                   GraphCL

QQ截图20220612082912.png

QQ截图20220612083034.png


  1. JOAO


  • 框架


QQ截图20220612083120.png


JOAO受对抗训练的启发,采用交替梯度下降的min-max优化框架,始终利用当前对比损失的最具挑战性的数据增强:


QQ截图20220612083219.png

QQ截图20220612083253.png

                                                     算法

  • 上层优化

QQ截图20220612083333.png

QQ截图20220612083505.png

那么现在下层优化的形式为:

QQ截图20220612083724.png

  • JOAO中的多映射头

QQ截图20220612083811.png

                                                   JOAOv2

损失函数为:

QQ截图20220612083853.png

三、实验


  1. JOAO与GraphCL手工选择的对比


下图对比了GraphCL论文中实验结果与JOAO选择的结果:


QQ截图20220612083929.png

                                                     对比

  1. 半监督学习


半监督学习实验:


QQ截图20220612084009.png

                                                     半监督学习

  1. 无监督学习


无监督学习实验:


QQ截图20220612084048.png

                                                     无监督学习

  1. 迁移学习


迁移学习实验:

QQ截图20220612084127.png

                                                         迁移学习

  1. 大规模数据集


半监督大规模数据集实验:


QQ截图20220612084253.png

                                                大规模数据及

  1. 总体实验结果


QQ截图20220612084335.png

                                                         实验




相关文章
|
6月前
|
数据采集 存储 API
网络爬虫与数据采集:使用Python自动化获取网页数据
【4月更文挑战第12天】本文介绍了Python网络爬虫的基础知识,包括网络爬虫概念(请求网页、解析、存储数据和处理异常)和Python常用的爬虫库requests(发送HTTP请求)与BeautifulSoup(解析HTML)。通过基本流程示例展示了如何导入库、发送请求、解析网页、提取数据、存储数据及处理异常。还提到了Python爬虫的实际应用,如获取新闻数据和商品信息。
1019 2
|
6月前
|
数据采集 数据可视化 数据处理
【办公自动化】在Excel中按条件筛选数据并存入新的表2.0
【办公自动化】在Excel中按条件筛选数据并存入新的表2.0
116 1
|
6月前
|
JSON 监控 数据管理
【Elasticsearch专栏 12】深入探索:Elasticsearch使用索引生命周期管理(ILM)自动化删除旧数据
Elasticsearch的ILM功能允许用户定义策略,自动管理索引从创建到删除的生命周期。用户可以设置策略,根据索引年龄或大小自动删除旧数据,节省存储空间。通过应用ILM策略于索引模板,新索引将遵循预定义的生命周期。用户还可以监控ILM状态,确保策略按预期执行。使用ILM,用户可以高效地管理数据,确保旧数据及时删除,同时保持数据完整性和安全性。
207 3
|
29天前
|
数据采集 存储 JavaScript
自动化数据处理:使用Selenium与Excel打造的数据爬取管道
本文介绍了一种使用Selenium和Excel结合代理IP技术从WIPO品牌数据库(branddb.wipo.int)自动化爬取专利信息的方法。通过Selenium模拟用户操作,处理JavaScript动态加载页面,利用代理IP避免IP封禁,确保数据爬取稳定性和隐私性。爬取的数据将存储在Excel中,便于后续分析。此外,文章还详细介绍了Selenium的基本设置、代理IP配置及使用技巧,并探讨了未来可能采用的更多防反爬策略,以提升爬虫效率和稳定性。
|
3月前
|
SQL 存储 数据处理
"SQL触发器实战大揭秘:一键解锁数据自动化校验与更新魔法,让数据库管理从此告别繁琐,精准高效不再是梦!"
【8月更文挑战第31天】在数据库管理中,确保数据准确性和一致性至关重要。SQL触发器能自动执行数据校验与更新,显著提升工作效率。本文通过一个员工信息表的例子,详细介绍了如何利用触发器自动设定和校验薪资,确保其符合业务规则。提供的示例代码展示了在插入新记录时如何自动检查并调整薪资,以满足最低标准。这不仅减轻了数据库管理员的负担,还提高了数据处理的准确性和效率。触发器虽强大,但也需谨慎使用,以避免复杂性和性能问题。
57 1
|
2月前
|
存储 监控 安全
在自动化测试环境中,如何确保测试数据的安全性和隐私性
在自动化测试环境中,如何确保测试数据的安全性和隐私性
|
3月前
|
数据采集 机器学习/深度学习 算法
"揭秘数据质量自动化的秘密武器:机器学习模型如何精准捕捉数据中的‘隐形陷阱’,让你的数据分析无懈可击?"
【8月更文挑战第20天】随着大数据成为核心资源,数据质量直接影响机器学习模型的准确性和效果。传统的人工审查方法效率低且易错。本文介绍如何运用机器学习自动化评估数据质量,解决缺失值、异常值等问题,提升模型训练效率和预测准确性。通过Python和scikit-learn示例展示了异常值检测的过程,最后强调在自动化评估的同时结合人工审查的重要性。
87 2
|
3月前
|
测试技术 Java
全面保障Struts 2应用质量:掌握单元测试与集成测试的关键策略
【8月更文挑战第31天】Struts 2 的测试策略结合了单元测试与集成测试。单元测试聚焦于单个组件(如 Action 类)的功能验证,常用 Mockito 模拟依赖项;集成测试则关注组件间的交互,利用 Cactus 等框架确保框架拦截器和 Action 映射等按预期工作。通过确保高测试覆盖率并定期更新测试用例,可以提升应用的整体稳定性和质量。
72 0
|
3月前
|
Java 测试技术 容器
从零到英雄:Struts 2 最佳实践——你的Web应用开发超级变身指南!
【8月更文挑战第31天】《Struts 2 最佳实践:从设计到部署的全流程指南》深入介绍如何利用 Struts 2 框架从项目设计到部署的全流程。从初始化配置到采用 MVC 设计模式,再到性能优化与测试,本书详细讲解了如何构建高效、稳定的 Web 应用。通过最佳实践和代码示例,帮助读者掌握 Struts 2 的核心功能,并确保应用的安全性和可维护性。无论是在项目初期还是后期运维,本书都是不可或缺的参考指南。
49 0
|
3月前
|
SQL 存储 数据管理
掌握SQL Server Integration Services (SSIS)精髓:从零开始构建自动化数据提取、转换与加载(ETL)流程,实现高效数据迁移与集成——轻松上手SSIS打造企业级数据管理利器
【8月更文挑战第31天】SQL Server Integration Services (SSIS) 是 Microsoft 提供的企业级数据集成平台,用于高效完成数据提取、转换和加载(ETL)任务。本文通过简单示例介绍 SSIS 的基本使用方法,包括创建数据包、配置数据源与目标以及自动化执行流程。首先确保安装了 SQL Server Data Tools (SSDT),然后在 Visual Studio 中创建新的 SSIS 项目,通过添加控制流和数据流组件,实现从 CSV 文件到 SQL Server 数据库的数据迁移。
146 0