GAN Sketching 水记 (微调现有GAN)

2024-03-14 14:40

本文主要是介绍GAN Sketching 水记 (微调现有GAN),希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!

GAN Sketching 水记 (微调现有GAN)

主页:https://peterwang512.github.io/GANSketching/

论文:https://arxiv.org/abs/2108.02774

项目:https://github.com/PeterWang512/GANSketching

BV17U4y1775R

设计目标

目标是根据手绘草图生成真实图像

也就是 草图 → 图片

亮点

one-shot

只使用单张手绘草图就行,不需要提供几百几千张手绘草图

用户提供的手绘草图不需要与真实图像配对

可控

可以与条件GAN共同工作

缺点

需要一个预训练的、效果较好的GAN(噪声→图片)

本质上是把一个正常GAN微调为只生成特定姿态图像的GAN,

所以经过微调后图像质量可能会下降(反正肯定不会提升就是了)

生成时间长

每张草图都需要 30K 次迭代来微调GAN

每次更改草图都需要重新训练

需要准备一个训练好的 图片→草图 转换器

草图-草图鉴别器最好预训练一下(对最终效果有不小的提升)

但是看视频效果,感觉只是对控制目标的位置比较在行,对姿势啥的控制精度不是很够

模型架构

本质就是朴素GAN加了一个判别器,这个判别器的功能是,判断生成的真实图片的草图是否符合用户提供的草图

在这里插入图片描述

简单来说,就是在朴素的GAN架构做了点改动,在生成器后面接了一个图片→草图的转化器,再给转化器接了一个判别器,用来判断草图是用户画的还是生成的

注意图片→草图转化器是不参与训练的。

图片→草图转化器

这是一个 img2img 的转化器,我们必须提前训练好这个转化器。

可以直接用配对的图像,有监督地训练一个转化器。

也可以用一些无监督方法,使用未配对图像训练[78, 25]

转化器必须是可微的。

他们使用 Photosketch [36] 作为转化器

图片→草图转化器在参与生成器的训练时,网络权重是固定的

预训练草图鉴别器会对结果有不少提升

生成器

生成器是在朴素 GAN 任务上预训练过的,可以从噪声生成真实图像

训练过程有点像在微调这个生成器

生成器的正则化约束

为了保证生成质量,使用一个鉴别器来保证图像生成真实图片,但注意这种方法需要有原生成器的训练集

也可以对生成器的权重更新做一个 L1 约束,以保证生成器经过微调后不会与原生成器产生的图片质量相差太大。

这种方法不需要原生成器的训练集。

不过这种方法的效果相比用鉴别器来约束,生成图片质量会稍微差一些。

相比于 L1约束,他们也试了 EWC (Elastic Weight Consolidation)约束,这是一种防止灾难性遗忘的技术,他们发现这个实际效果和 L1 差不多。

他们发现同时使用鉴别器约束和权重约束,并不会比单独用鉴别器约束效果更好。

生成器的训练

他们用的是预训练的 StyleGAN2

他们训练时只微调了 StyleGAN2 的 mapping 网络(将噪声映射到隐空间的网络)。

他们发现这种方法很有效,因为实际上这个模型只是生成原始分布的一个子集。这也是之前的一些小样本 GAN 选择的方案[66]。

数据增强

使用了可微的数据增强

他们发现温和的数据增强比想象中更有效

他们的数据增强方式是平移。

当提供30张草图时,数据增强不一定有效果,

但是当只提供一张或几张草图时,数据增强是必要的。

提供的多张草图要看起来画的是同一个东西

实验

他们挑选目标分布用了 chamfer distance (一种用于衡量特征点匹配度的算法)结合手工挑选。他们试过 SBIR,但是挑出的图片对姿势的匹配性不高。

网络只能看到目标分布中的30张图片的草图。

他们从 QuickDraw 数据集中得到真实的手绘草图。

不同约束与数据增强的比较

在这里插入图片描述

不同约束下生成效果的比较

不同训练方法的比较

在这里插入图片描述

预训练草图鉴别器会对结果有不少提升

那个 Full 是相对于只微调 bias 来说的,这个 Full 也只微调 mapping 网络

当用户画的比较抽象或者复杂的时候,增加用户绘制的草图数量是有效的

手绘草图与数据增强

在这里插入图片描述

对于手绘草图来说,数据增强是必要的

可以与条件生成模型共同工作,达成图像编辑效果

在这里插入图片描述

与GANSpace 共同工作

在这里插入图片描述

讨论

没法生成复杂姿势

可能这个方法只能生成在原生成器数据集中比较常见的姿势

没法适应毕加索的素描风格(不知道是不是抽象画)

需要超过30K次迭代来训练

这篇关于GAN Sketching 水记 (微调现有GAN)的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!



http://www.chinasem.cn/article/808732

相关文章

AI Toolkit + H100 GPU,一小时内微调最新热门文生图模型 FLUX

上个月,FLUX 席卷了互联网,这并非没有原因。他们声称优于 DALLE 3、Ideogram 和 Stable Diffusion 3 等模型,而这一点已被证明是有依据的。随着越来越多的流行图像生成工具(如 Stable Diffusion Web UI Forge 和 ComyUI)开始支持这些模型,FLUX 在 Stable Diffusion 领域的扩展将会持续下去。 自 FLU

可选择的反思指令微调

论文:https://arxiv.org/pdf/2402.10110代码:GitHub - tianyi-lab/Reflection_Tuning: [ACL'24] Selective Reflection-Tuning: Student-Selected Data Recycling for LLM Instruction-Tuning机构:马里兰大学, Adobe Research领

生成对抗网络(GAN网络)

Generative Adversarial Nets 生成对抗网络GAN交互式可视化网站 1、GAN 基本结构 GAN 模型其实是两个网络的组合: 生成器(Generator) 负责生成模拟数据; 判别器(Discriminator) 负责判断输入的数据是真实的还是生成的。 生成器要不断优化自己生成的数据让判别网络判断不出来,判别器也要优化自己让自己判断得更准确。 二者关系形成

深度学习--对抗生成网络(GAN, Generative Adversarial Network)

对抗生成网络(GAN, Generative Adversarial Network)是一种深度学习模型,由Ian Goodfellow等人在2014年提出。GAN主要用于生成数据,通过两个神经网络相互对抗,来生成以假乱真的新数据。以下是对GAN的详细阐述,包括其概念、作用、核心要点、实现过程、代码实现和适用场景。 1. 概念 GAN由两个神经网络组成:生成器(Generator)和判别器(D

文本分类场景下微调BERT

How to Fine-Tune BERT for Text Classification 论文《How to Fine-Tune BERT for Text Classification?》是2019年发表的一篇论文。这篇文章做了一些实验来分析了如何在文本分类场景下微调BERT,是后面网上讨论如何微调BERT时经常提到的论文。 结论与思路 先来看一下论文的实验结论: BERT模型上面的

从零开始构建大语言模型并进行微调:全面指南

要从0开始搭建并训练一个大语言模型(LLM),涉及到多个步骤和资源,包括理论理解、工具使用、数据准备、模型训练与微调。以下是一个从基础到应用的指南,帮助你理解并逐步实现这一目标。 1. 理解基础概念 在开始搭建大语言模型之前,了解以下基本概念至关重要: 生成式AI:通过大语言模型生成自然语言文本,例如GPT、BERT等。机器学习:通过数据训练模型,使其具备从数据中学习规律的能力。深度学习:机

什么是GPT-3的自回归架构?为什么GPT-3无需梯度更新和微调

文章目录 知识回顾GPT-3的自回归架构何为自回归架构为什么架构会影响任务表现自回归架构的局限性与双向模型的对比小结 为何无需梯度更新和微调为什么不需要怎么做到不需要 🍃作者介绍:双非本科大四网络工程专业在读,阿里云专家博主,专注于Java领域学习,擅长web应用开发,目前开始人工智能领域相关知识的学习 🦅个人主页:@逐梦苍穹 📕所属专栏:人工智能 🌻gitee地址:x

基于 AC 驱动的电容结构 GaN LED 模型开发和应用

随着芯片尺寸减小,微小尺寸GaN 基 Micro LED 显示面临着显示与驱动高密度集成的难题,传统直流(DC)驱动技术会导致结温上升,降低器件寿命。南京大学团队创新提出交流(AC)驱动的单电极 LED(SC-LED)结构【见图1】,利用隧穿结(TJ)降低器件的交流工作电压。为了深入理解该器件的工作原理,我司技术团队开发了基于 AC 驱动的物理解析模型,揭示了隧穿结降低器件工作电压的

R-Adapter:零样本模型微调新突破,提升鲁棒性与泛化能力 | ECCV 2024

大规模图像-文本预训练模型实现了零样本分类,并在不同数据分布下提供了一致的准确性。然而,这些模型在下游任务中通常需要微调优化,这会降低对于超出分布范围的数据的泛化能力,并需要大量的计算资源。论文提出新颖的Robust Adapter(R-Adapter),可以在微调零样本模型用于下游任务的同时解决这两个问题。该方法将轻量级模块集成到预训练模型中,并采用新颖的自我集成技术以提高超出分布范围的鲁棒性

深入理解GAN网络

Generative Adversarial Networks创造性地提出了对抗训练来代替人工指定的loss。之前的文章初步理解了一下,感觉还是不到位,在这里再稍微深入一点。 交叉熵cross entropy 鉴别器是GAN中重要的一部分,鉴别器和生成器交替训练的过程就是adversarial training的过程。而鉴别器的本质是一个二分类网络,所以要理解gan loss,就首先要熟悉二分