(具体解决方案)训练GAN深度学习的时候出现生成器loss一直上升但判别器loss趋于0

news/2024/4/16 22:35:32

今天小陶在训练CGAN的时候出现了绷不住的情况,那就是G_loss(生成器的loss值)一路狂飙,一直上升到了6才逐渐平稳。而D_loss(判别器的loss值)却越来越小,具体的情况就看下面的图片吧。其实这在GAN训练里是非常容易遇到的问题,所以不用慌,是有解决的办法的。小陶就通过一些手段进行调控,最终获得了比较满意的效果。

在介绍处理方法之前,首先絮叨絮叨为什么训练GAN容易出现上面左右这样的情况。当然,需要明确的是,GAN的效果如何,其实是很主观的事情,也许和loss表现的趋势没啥太大的关系,也许在loss表现不对劲的情况下也能生成效果好的图片。

如果你理解GAN原理的话(不理解可以去看文章『GAN入门(一):GAN的基本原理概述(新手易懂版)』以及『GAN入门(二):GAN的算法公式流程介绍)』),肯定知道所谓对抗,就是生成器和判别器的对抗。生成器在判别器的指导下将一段噪声变成符合我们需求的图片。上面左图就是生成器和判别器能力悬殊,生成器生成的照片已经无法来欺骗判别器了。所以G_loss就一直上升,具体在图片上的表现是生成了空白图片或者纯噪声图片,没啥价值,例如下面的图片就是我生成过程中出现的无价值图片。想要改变这个情况,那就要调整生成器的能力或者削弱判别器的能力。当然,我们更希望通过增强生成器的学习能力来让其与判别器势均力敌。让生成器和判别器势均力敌的方法有很多。

 下面就介绍小陶自己实际使用的调整方法:(具体解决方案)训练GAN深度学习的时候出现生成器loss一直上升但判别器loss趋于0 - 陶小桃Blog今天小陶在训练CGAN的时候出现了绷不住的情况,那就是G_loss(生成器的loss值)一路狂飙,一直上升到了6才逐渐平稳。而D_loss(判别器的loss值)却越来越小,具体的情况就看下面的图...https://www.52txr.cn/2023/ganlossmodified.html


http://www.ppmy.cn/news/1005352.html

相关文章

将css文件中的px转化为rem

pxToRem.js /*** 使用方式:* 与引入的文件放在同一目录下进行引用配置,执行:node (定义的文件)*/ const fs require(fs) const path require(path) /*** entry:入口文件路径 type:Strng* pxtopx:以倍数转…

MySQL 数据库 binLog 日志的使用

一、概念与作用 binlog(二进制日志)是MySQL数据库中的一种日志类型。它记录了数据库中的所有更改操作,例如插入、更新、删除操作。binlog以二进制形式存储,因此可以更高效地进行读取和解析。 binlog通常用于以下几个方面&#x…

Demystifying Prompts in Language Models via Perplexity Estimation

Demystifying Prompts in Language Models via Perplexity Estimation 原文链接 Gonen H, Iyer S, Blevins T, et al. Demystifying prompts in language models via perplexity estimation[J]. arXiv preprint arXiv:2212.04037, 2022. 简单来说就是作者通过在不同LLM和不同…

【C++】总结10--C++11第二篇

文章目录 RAIIC11新特性 RAII RAII(Resource Acquisition Is Initialization)是一种利用对象生命周期来控制程序资源(如内存、文件句柄、网络连接、互斥量等)的简单技术,在对象的构造函数中获取资源,在对象…

JAVA实现存在更新不存在插入与及多余的进行删除(三)

这个版本,主要是迭代重载了下save方法,不废话,直接上代码: /*** 保存数据,处理数据的增删改** param paramData 前台的参数* param dbData 后台的数据* param clazz 前后台参数对应的class* param beanName …

【LangChain】Prompts之Prompt templates

Prompts 编程模型的新方法是通过提示(prompts)。 prompts是指模型的输入。该输入通常由多个组件构成。 LangChain 提供了多个类和函数,使构建和使用prompts变得容易。 Prompt templates(提示模板): 参数化模型输入Example selectors(选择器示例): 动态选择要包含在…

连接 MySQL

文章目录 1.连接本地 MySQL2.连接远程 MySQL3.退出 MySQL4.查看 MySQL 版本 1.连接本地 MySQL 首先打开 Shell 命令终端或命令行程序,键入命令mysql -u root -p,回车后提示输入密码。注意用户名和密码与命令选项之间的空格可有可无。 mysql -u USER_NA…

第R2周 - LSTM火灾温度预测

🍨 本文为🔗365天深度学习训练营 中的学习记录博客🍖 原作者:K同学啊 我的环境: 语言环境:Python3.10.7编译器:VScode深度学习环境:TensorFlow 2.13.0 一、前期工作: …

Python-字符串的世界

Python字符串的世界 在Python编程中,字符串(String)是一种非常重要的数据类型,用于表示文本信息。字符串可以包含字母、数字、特殊字符以及空格,它们在编程中被广泛用于文本处理、格式化输出、字符串匹配等各种场景。…

中小企业实施MES管理系统,这几点需要注意

制造业是中国经济命脉所系,是立国之本、强国之基。作为世界制造大国,制造业一直是热门话题。当下,中小制造企业的产业地位不断提升,想要规范生产制造、提升产品竞争力,进行实施MES管理系统解决方案的企业越来越多。那么…

Doris(三)-集群部署3个FE+3个BE

前置 1)配置java环境 1st 解压jdk包 unzip jdk1.8.0_171-amd64.zip 2nd 配置环境变量 vim /etc/profile#文末添加JAVA_HOME/data/jdk1.8.0_171-amd64 PATH$JAVA_HOME/bin:$PATHexport PATH JAVA_HOME3rd 启用配置 source /etc/profile 4th 验证 java -versi…

MongoDB面试题

1. NoSQL 数据库是什么意思?NoSQL 与 RDBMS 直接有什么区别?为什么要使用和不使用 NoSQL 数据库?说一说 NoSQL 数据库的几个优点? NoSQL 是非关系型数据库,NoSQL Not Only SQL。 关系型数据库采用的结构化的数据,NoSQL 采用的是键值对的方式存储数…

C# 基于Rijndael对文件进行加解密

介绍: Rijndael 是一种对称加密算法,也是 AES(Advanced Encryption Standard)的前身。它用于数据的加密和解密,并提供了安全且高效的加密功能。 在.NET Framework 中,Rijndael 类是一个实现了 Rijndael 算法…

音频转文字软件哪个好用?这些软件你不容错过

在一个繁忙的办公室里,小明正在与他的同事小李聊天。突然,小明兴奋地拍了拍桌子,眉开眼笑地对小李说道:你知道吗?我近期发现了一个实用的音频转文字工具!它可以帮助我们将音频转换成文字。 小李&#xff1…

LabVIEW开发高压航空航天动力系统爬电距离的测试

LabVIEW开发高压航空航天动力系统爬电距离的测试 更多电动飞机MEA技术将发电,配电和用电集成到一个统一的系统中,提高了飞机的可靠性和可维护性。更多的电动飞机使用更多的电能来用电动替代品取代液压和气动系统。对车载电力的需求不断增加,…

深度学习训练营之CGAN生成手势图像

深度学习训练营之CGAN生成手势 原文链接CGAN简单介绍环境介绍前置工作数据导入所需的包加载数据创建数据集查看数据集 模型设置初始化模型的权重定义生成器构造判别器 模型训练定义损失函数设置超参数正式开始训练 结果可视化 原文链接 🍨 本文为🔗365天…

【k8s】二进制部署k8s

二进制部署k8s 1.操作系统初始化配置2.部署etcd集群3.部署docker引擎4.部署Master组件4.部署 Worker Node 组件 二进制搭建 Kubernetes v1.20 k8s集群master01:192.168.80.10 kube-apiserver kube-controller-manager kube-scheduler etcd k8s集群master02&#xf…

传球游戏

题目描述 上体育课的时候,小蛮的老师经常带着同学们一起做游戏。这次,老师带着同学们一起做传球游戏。 游戏规则是这样的:n个同学站成一个圆圈,其中的一个同学手里拿着一个球,当老师吹哨子时开始传球,每个…

备忘录模式——撤销功能的实现

1、简介 1.1、概述 备忘录模式提供了一种状态恢复的实现机制,使得用户可以方便地回到一个特定的历史步骤。当新的状态无效或者存在问题时,可以使用暂时存储起来的备忘录将状态复原。当前很多软件都提供了撤销(Undo)操作&#xf…
最新文章