IT数码 购物 网址 头条 软件 日历 阅读 图书馆
TxT小说阅读器
↓语音阅读,小说下载,古典文学↓
图片批量下载器
↓批量下载图片,美女图库↓
图片自动播放器
↓图片自动播放器↓
一键清除垃圾
↓轻轻一点,清除系统垃圾↓
开发: C++知识库 Java知识库 JavaScript Python PHP知识库 人工智能 区块链 大数据 移动开发 嵌入式 开发工具 数据结构与算法 开发测试 游戏开发 网络协议 系统运维
教程: HTML教程 CSS教程 JavaScript教程 Go语言教程 JQuery教程 VUE教程 VUE3教程 Bootstrap教程 SQL数据库教程 C语言教程 C++教程 Java教程 Python教程 Python3教程 C#教程
数码: 电脑 笔记本 显卡 显示器 固态硬盘 硬盘 耳机 手机 iphone vivo oppo 小米 华为 单反 装机 图拉丁
 
   -> 人工智能 -> 【论文研读】Pre-training without Natural Images -> 正文阅读

[人工智能]【论文研读】Pre-training without Natural Images

Pre-training without Natural Images

文中关于分形类别生成部分(2-(2))存在理解问题(标注红色问号的位置)

1 概览

(1)存在问题

使用自然图片及标签做预训练存在以下问题:

  • 许多大型数据集均是以众包任务的形式创建的,参与标注的人员有可能缺乏专业性,导致标注信息存在不够精确、侵犯隐私、违背道德等问题
  • 许多数据集存在侵权问题,而只能应用于非商业化用途

(2)研究内容

本文研究内容:使用公式驱动的监督学习及分形理论自动生成图片和标签数据:

  • 没有自然图像的预训练,可通过公式驱动的图像投影来简化大规模数据库的构建,进而有效的进行预训练
  • 公式驱动的图片数据集能够有效解决当前存在CNN预训练问题:无需人工标注、无需数据集下载

(3)本文贡献

本文提出公式驱动的监督学习(formula-driven supervised learning),可以实现对卷积神经网络不使用任何自然图片来进行预训练。

  • 提供了一种使用分形理论自动生成大规模数据集的方法
  • 使用随机搜索分形数据集生成了2个大型数据集:FractalDB-1kFractalDB-10k
  • 这种自动生成策略可以生成无限大的带标签数据集
  • 使用该自动生成的数据集进行预训练,部分精度超越了在ImageNet/Places真实数据集上做预训练。

2 自动生成大型数据集

在这里插入图片描述

使用迭代函数系统(iterated function system (IFS))生成无限多的分形图片I和对应的分形类别c

(1)分形图片的生成

迭代函数系统(IFS):
IFS ? = { X ; w 1 , w 2 , ? ? , w N ; p 1 , p 2 , ? ? , p N } \operatorname{IFS}=\left\{\mathcal{X} ; w_{1}, w_{2}, \cdots, w_{N} ; p_{1}, p_{2}, \cdots, p_{N}\right\} IFS={X;w1?,w2?,?,wN?;p1?,p2?,?,pN?}

  • w i : X → X w_i: \mathcal{X} \to \mathcal{X} wi?:XX:仿射变换方程,预先设定;
  • p i p_i pi?:选择对应变换方程的概率值,和为1,预先设定
    使用IFS,每个分形 S = { x t } t = d ∞ ∈ X S=\left\{\boldsymbol{x}_{t}\right\}_{t=d}^{\infty} \in \mathcal{X} S={xt?}t=d?X是通过随机迭代算法(random iteration algorithm)构造出来的:
  • t:迭代序号;t=0, 1, 2, ...
  • 第一步:按照概率 p i = p ( w ? = w i ) p_i=p(w^*=w_i) pi?=p(w?=wi?)从集合 { w 1 , w 2 , . . . , w N } \left\{w_{1}, w_{2}, ..., w_N\right\} {w1?,w2?,...,wN?}选择一个仿射变换方程 w ? w^* w?
  • 第二步:使用 w ? w^* w?迭代出一个新点 x t + 1 = w ? ( x t ) x_{t+1}=w^*(x_t) xt+1?=w?(xt?)
  • 不断重复第一、二步,最终得到分形图像

(2)分形类别

分型类别与仿射变换方程中参数a, b, c, d, e, f的取值有关:
w i ( x ; θ i ) = [ a i b i c i d i ] x + [ e i f i ] w_{i}\left(\boldsymbol{x} ; \theta_{i}\right)=\left[\begin{array}{ll} a_{i} & b_{i} \\ c_{i} & d_{i} \end{array}\right] \boldsymbol{x}+\left[\begin{array}{l} e_{i} \\ f_{i} \end{array}\right] wi?(x;θi?)=[ai?ci??bi?di??]x+[ei?fi??]
预先假定分型类别总数为1000或者10000
参数的生成步骤:

  • i) 确定N值:N为放射变换方程的数量,从离散均匀分布N={2, 3, 4, 5, 6, 7, 8}随机采样
  • ii) 确定 θ i \theta_i θi?,即第i个放射变换方程a, b, c, d, e, f:分别从均匀分布[-1, 1]中采样;重复N次,生成Na-f
  • iii)确定 p i p_i pi? p i = ( det ? A i ) / ( ∑ i = 1 N det ? A i ) p_{i}=\left(\operatorname{det} A_{i}\right) /\left(\sum_{i=1}^{N} \operatorname{det} A_{i}\right) pi?=(detAi?)/(i=1N?detAi?),其中 A i = ( a i , b i ; c i , d i ) A_i=(a_i, b_i; c_i, d_i) Ai?=(ai?,bi?;ci?,di?),是放射变换的旋转矩阵
  • iv) 不同的参数 Θ i = { ( θ i , p i ) } i = 1 N \Theta_{i}=\left\{\left(\theta_{i}, p_{i}\right)\right\}_{i=1}^{N} Θi?={(θi?,pi?)}i=1N? 就是不同的类别 ??

(3)参数

  • #category#instance#category是类别标签数量,#instance是同一个类别中的实例数量;两者对预训练效果均有影响
    在这里插入图片描述

  • PatchPointPoint即为上述使用随机迭代逐个生成点的方法;Patch是重复进行以下步骤t次:

    • 选择一个像素点(u, v)
    • 使用一个3 * 3的随机点的patch插入到该位置
  • 填充率filling rate r:取值{0.05, 0.10, 0.15, 0.20, 0.25}

  • a-f:取值:{0.8, 0.9, 1.0, 1.1, 1.2}

  • Dot(t):一个分形图片中点的数量,即迭代的次数t,取值:{100K, 200K, 400K, 800K}

  • W, H:图像的宽、高,取值:{256, 362, 512, 764, 1024}

3 实验

实验设置:

  • 网络:ResNet-50
  • 优化器:SGDmomentum=0.9learning_rate=0.01,学习率在30 epoch60 epoch时均减小至原来的0.1
  • batch_size256
  • epoch90
  • 数据增强:从256 * 256随机裁剪至224 * 224
  • fine-tuning数据集:CIFAR-10/100(C10, C100)ImageNet-100(IN100)Places-30(P30)

(1) Exploration study

#category#instance

经实验论证,数值越大越好。最终选择#category1000个类别,#instance每个类别有1000个实例
在这里插入图片描述

Patch vs. Point

3*3 Patch效果比用点效果好

在这里插入图片描述

填充率filling rate

取值0.10效果效果最好
在这里插入图片描述

类内分形权重的取值间隔

取值间隔为0.4效果最好,最终取值为:{0.2, 0.6, 1.0, 1.4, 1.8}
在这里插入图片描述

#Dot迭代次数

迭代次数为200k时获得最佳的精度与速度的权衡
在这里插入图片描述

图片尺寸

图片尺寸为256*256362*362时效果较好
在这里插入图片描述

(2)与其他预训练数据集的对比

  • Scratch:不做预训练
  • Places-30/365
  • ImageNet-100/1k
  • FractalDB-1k/10k
    在这里插入图片描述

在这里插入图片描述

  人工智能 最新文章
2022吴恩达机器学习课程——第二课(神经网
第十五章 规则学习
FixMatch: Simplifying Semi-Supervised Le
数据挖掘Java——Kmeans算法的实现
大脑皮层的分割方法
【翻译】GPT-3是如何工作的
论文笔记:TEACHTEXT: CrossModal Generaliz
python从零学(六)
详解Python 3.x 导入(import)
【答读者问27】backtrader不支持最新版本的
上一篇文章      下一篇文章      查看所有文章
加:2022-01-25 10:35:14  更:2022-01-25 10:37:18 
 
开发: C++知识库 Java知识库 JavaScript Python PHP知识库 人工智能 区块链 大数据 移动开发 嵌入式 开发工具 数据结构与算法 开发测试 游戏开发 网络协议 系统运维
教程: HTML教程 CSS教程 JavaScript教程 Go语言教程 JQuery教程 VUE教程 VUE3教程 Bootstrap教程 SQL数据库教程 C语言教程 C++教程 Java教程 Python教程 Python3教程 C#教程
数码: 电脑 笔记本 显卡 显示器 固态硬盘 硬盘 耳机 手机 iphone vivo oppo 小米 华为 单反 装机 图拉丁

360图书馆 购物 三丰科技 阅读网 日历 万年历 2024年5日历 -2024/5/19 0:44:11-

图片自动播放器
↓图片自动播放器↓
TxT小说阅读器
↓语音阅读,小说下载,古典文学↓
一键清除垃圾
↓轻轻一点,清除系统垃圾↓
图片批量下载器
↓批量下载图片,美女图库↓
  网站联系: qq:121756557 email:121756557@qq.com  IT数码