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

Data Filtering Network 论文阅读和理解

目录

一、TL;DR

二、Introduction

2.1 apple的结论

2.2 业界做法:

2.3 我们的做法(Apple)

2.4 如何获取好的DFN

三、未完待续(这周出去购物了,下周继续补充)


一、TL;DR

  1. 核心观点:
    1. 高质量的数据过滤网络与下游的表现是不一致的,下游性能好的网络可能过滤不出高质量数据,性能差的网络可能过滤出高质量数据
    2. 假设存在一个大型未整理数据集。DFNs可以诱导出一个大规模、高质量的预训练数据集。
  2. 实际数据集:DFNs与大型未过滤的图像-文本池配对,产出20亿高质量的图文数据集:DFN-2B(20亿)

二、Introduction

2.1 apple的结论

开局放大招,直接说明高质量数据是可以节省算力+提升性能的:

2.2 业界做法:

   LAION数据集的构建方法:

很显然,上述数据的构建方法非常依赖open AI的clip模型,模型的性能会限制实际过滤出的数据的质量(我理解是某些具备高信息熵的FN会被漏掉,且FP会进来),根据我实际的数据集构建经验也确实如此,不再加一级人工逻辑数据集几乎无法直接使用,clip的判断在图像文本对的描述如果足够细节的情况下,极其容易出错,尤其是在小批量数据增加上,会给实际训练的模型带来退化;

DataComp数据集构建和评估方法:

    Common Crawl包括128亿对图像-文本配对,通过使用各种数据filter技术的效果固定使用open-ai的vit-L14的训练资源来评估imagenet等38个下游任务的性能,将这个基准测试作为评估fiter网络的主要方法; 

    同时,datacomp的作者还发布了DataComp-1B的数据集,该数据集是通过聚类和clip的筛选2个方法来提高数据集质量,从而改进来LAION5B,但该方法依旧依赖clip的模型性能,并且引入了昂贵的聚类算法

2.3 我们的做法(Apple)

适用范围:高效的过滤达数万亿的样本,因此数据池子要求比较大,如果满足数据过滤的网络,则保留数据,如下是伪代码:

对于给定的DFN和数据池子,用于训练DFN的数据池称之为过滤数据集,用于DFN过滤后构建的数据集是诱导数据集,将DFN的性能定义为诱导模型的性能,该性能是通过标准的基准测试上评估得到的(例如DataComp上一样),则DFN的质量就是诱导数据集训练出来的模型的强度,apple是基于DataComp来构建的;

apple使用1.28亿、12.8亿、128亿三个级别的数据池子,且使用每个池子的提供的模型超参数也和DataCOmp一致,此外,通过将300亿非DataComp网络爬取的图像与DataComp超大规模池相结合,将DFN扩展到一个包含420亿图像的更大池中。然后使用DFN诱导出的数据集表示为DFN-5B,最后用它来训练一个ViT-H/14模型。

老实说,这张图有一些致命,常见的思路都是使用当前的模型来做过滤,训练一轮以后在使用新的模型来作为过滤,如此迭代,但是下面这张图说明了模型的的过滤表现和最终Imagenet的下游性能也许是不相关的

上图表示,DFN的下游任务性能哪怕差30个点(0.80-0.45-0.55),但是诱导出来的数据集的Imagenet性能还更高

2.4 如何获取好的DFN

核心理念:数据质量是训练好的过滤模型的关键,

如上图所示,横坐标是噪音数据的占比,也就是网络爬取(CC2M中的采样的1KW原始干净的数据),poison是对里面进行一定高质量数据替换成爬虫数据的比例,我们发现,被替换后10%左右,DFN的性能急剧下降,而后缓慢下降,因此说明训练DFN的数据一定是要高质量的数据,而业务model 本身的表现逐步下降,几乎是一条直线了
 

三、未完待续(这周出去购物了,下周继续补充)


http://www.kler.cn/a/513621.html

相关文章:

  • 国产编辑器EverEdit - 列编辑模式
  • 20250120 深入了解 Apache Flink 的 Checkpointing
  • ubuntu系统文件查找、关键字搜索
  • java基础概念59-File
  • Ceph与RAID在存储中的协同工作过程
  • 什么宠物最好养?
  • C++ 智能指针(八股总结)
  • 【组件库】使用Vue2+AntV X6+ElementUI 实现拖拽配置自定义vue节点
  • Springboot sse 示例
  • (done) 并行计算学习 (Day1: 两个简单的 OpenMP 例子)
  • JavaWeb开发(十五)实战-生鲜后台管理系统(二)注册、登录、记住密码
  • 【C++】揭秘类与对象的内在机制(核心卷之深浅拷贝与拷贝构造函数的奥秘)
  • 《从入门到精通:蓝桥杯编程大赛知识点全攻略》(五)-数的三次方根、机器人跳跃问题、四平方和
  • Python 进阶 - Excel 基本操作
  • 智能系统的感知和决策
  • 第15篇:从入门到精通:Python标准库详解
  • LeetCode 热题 100_全排列(55_46_中等_C++)(递归(回溯))
  • 简识JVM私有内存区域栈、数据结构
  • 蓝桥杯R格式--高精度算法模拟
  • 【MySQL】 常见数据类型
  • 10倍数据交付提升 | 通过逻辑数据仓库和数据编织高效管理和利用大数据
  • C#程序关闭时保证所有线程结束的方法
  • elasticsearch 数据导出/导入
  • 【记录】记录项目中的问题
  • Linux常用汇总
  • windows下修改docker的镜像存储地址