生成对抗网络GAN——学习笔记

news2024/10/11 14:12:32

经过大量阅读资料和博客,对GAN的认识和学习做一个记录。个人粗浅的认识,不管是什么模型都离不开最基础的神经网络。主要借鉴的博客内容如下

新型的神经网络模型,从CNN到BERT都有介绍。_最新的神经网络模型-CSDN博客

生成对抗网络——GAN(代码+理解)-CSDN博客

生成对抗网络(GAN)入门_gan对抗生成网络-CSDN博客

深度学习:GAN 对抗网络原理详细解析(零基础必看)_gan网络-CSDN博客

生成对抗网络(GAN) - 知乎 (zhihu.com)

适合小白学习的GAN(生成对抗网络)算法超详细解读_gan网络-CSDN博客

神经网络分类总结_神经网络的分类-CSDN博客

GAN(生成对抗网络)的系统全面介绍(醍醐灌顶)-CSDN博客

1.原理

GAN(生成对抗网络)是一种神经网络架构,是博弈论和机器学习相结合的创新性产物,它的设计灵感来自于博弈论的思想,经典的“纳什均衡”。具体参考一篇讲得很详细的博客一文解读“纳什均衡”(Nash Equilibrium)理论 - 知乎 (zhihu.com)

这种网络由两个关键组件组成:生成器(Generator)和判别器(Discriminator)

生成器的任务是从随机噪声中生成与真实数据相似的合成样本,

判别器负责辨别给定的样本是真实数据还是生成器产生的人工样本

这两个组件通过反复对抗性的训练相互影响和提升。

在训练过程中,生成器努力生成越来越逼真的样本,而判别器则不断提高辨别真实与生成样本的能力。这种博弈过程推动着两者的不断进步,直到最终生成器生成的样本足够逼真,使得判别器无法有效地区分真实和生成的样本。这就达到了一个状态,即生成器能够以惊人的逼真度产生伪造的真实样本。

2.结构

关于生成对抗网络的结构和形式参考上面的几篇博客。其中有一个博主讲的很简洁清晰,框架如下图所示

其中生成器和鉴别器内部都是神经网络

3.GAN网络的训练

GAN对抗网络的训练过程通常是两个网络单独且交替训练:先训练识别网络,再训练生成网络,再训练识别网络,如此反复,直到达到纳什均衡。涉及到两个核心的问题神经网络的架构和损失函数 (loss function)。神经网络架构和损失函数的定义是能够实现优化(训练)的两个基本要素。

在损失函数这里有一个重要概念:交叉熵

啥也不会照样看懂交叉熵损失函数_用交叉熵计算经验风险-CSDN博客

有两个公式

4.实现过程

可以参考这个博主的模型搭建代码

生成对抗网络(GAN)入门_gan对抗生成网络-CSDN博客

5.实际应用案例

GAN的典型应用是用于图像超分上,借鉴如下博客内容可以按照博主的讲解一步一步尝试自己搭建环境并尝试运行已有的超分模型,适合小白入门

超分辨重建——SRGAN网络训练自己数据集与推理测试(详细图文教程)_srgan训练-CSDN博客

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.coloradmin.cn/o/2205000.html

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

Open WebUI | 自托管的类 ChatGPT 网站

Open WebUI 是一个扩展性强、功能丰富且用户友好的自托管 WebUI,支持 ChatGPT 网页端的大部分功能,支持各类模型服务,包括 Ollama 和 OpenAI 的 API。该项目在 GitHub 上已有 38k 星,非常受欢迎。 功能介绍 本篇介绍该项目的功能…

(Kafka源码五)Kafka服务端处理消息

Kafka 服务端(Broker)采用 Reactor 的架构思想,通过1 个 Acceptor,N 个 Processor(N默认为3),M 个 KafkaRequestHandler(M默认为8),来处理客户端请求,这种模式结合了多线…

眼镜店会员积分卡系统软件试用版下载 佳易王配镜顾客信息管理系统使用操作教程

一、前言 【软件试用版资源文件下载可以点文章最后卡片了解】 眼镜店会员积分软件是专门为眼镜店设计的管理工具,旨在通过积分活动提升顾客的忠诚度,促进复购率,并优化顾客体验。 眼镜店会员积分卡系统软件试用版下载 佳易王配镜顾客信息管…

WEB攻防-python考点CTF与CMS-SSTI模板注入PYC反编译

知识点: 1、PYC(python编译后的文件)文件反编译; 2、Python-Web-SSTI; 3、SSTI模板注入利用分析; (Server-Side Template Injection) SSTI 就是服务器端模板注入 当前使用的一…

高级算法设计与分析-MaxFlow网络流基础知识

MaxFlow网络流 1 网络流基础概念 source:源点 sink:终点 Flow:流量 capacity:容量 Residual:残量 Residual Network:残量网络 Augmenting path:增广路径,表示从源点 s 到终点 t 不包含环的路径 Bottleneck capacity:瓶颈容量 2 最大流 2.1 基础概念 2.2 增广路算法 …

C++刷怪笼(7)string类

目录 1.前言 2.正文 2.1标准库中的string类 2.1.1string类 2.1.2auto和范围for 2.1.3string类的常用接口说明 2.2string类的模拟实现 2.2.1经典的string类问题 2.2.2浅拷贝 2.2.3深拷贝 ​编辑 2.2.4写时拷贝 3.小结 1.前言 前面我们对C的封装这一大特性进行了详细…

Win10电脑录屏全攻略:轻松掌握屏幕录制技巧

在日常生活和工作中,我们经常需要录制屏幕来展示操作步骤、制作教程视频或记录重要内容。如果你正在使用Win10系统,那么有多种方法可以轻松实现屏幕录制。下面就给大家分享五种不同的录屏工具,让你轻松掌握屏幕录制技巧。 一、嗨格式录屏大师…

从数据到资产,数据资产管理的风口能撑多久?

从数据到资产,数据资产管理的风口能撑多久? 前言从数据到资产 前言 在今天的大数据和人工智能世界里,数据的价值已被推到了前所未有的高度。作为一家企业,如何有效管理这些数据并从中提取出最具价值的部分,成了各行各…

AI产品经理指南| 面试了100位AI产品经理后的心得总结

AI正深刻地变革着各行各业,而在这场技术革命中,首先受到影响的或许正是那些与AI紧密相连的专业人士——产品经理。 我们本篇中的对话始于Vanessa对「面试了100位AI产品经理」的心得总结。 👩🏻 Vanessa: 字节跳动AI产…

NTAG_8654

NTAG_8654 产品型号 NTAG_8654 标签尺寸 85.5*54*4.3MM 芯片类型 NFC Ntag 213/215/216 工作频率 13.56MHZ 工作温度 -30C~100C 标签材质 ABS 支持协议 14443A 协议 标签材质 黑/白 安装方式 背胶粘贴或柳钉安装 应用领域 物业巡更,设备巡检&…

工业智能化的安全护盾,CodeMeter如何实现高效授权与防护

工业自动化的快速发展对技术创新提出了越来越高的要求。为了在全球竞争中保持领先,制造企业不仅需要提高生产效率,还必须确保软件的安全性和可靠性。如何在保证高效运营的同时,保护核心知识产权和防止软件盗用,成为了行业内的重要…

拓扑排序基础及应用案例

文章目录 基础内容应用案例:软件构建系统的依赖管理背景描述解决方案具体步骤示例代码 基础内容 拓扑排序(Topological Sort)是一种针对有向无环图(Directed Acyclic Graphs, DAG)的排序方法。它的目的是找出一种图中…

【树莓派5B】IO串口通信使用

超级简单的串口使用 前言零、检查准备(可略)0.1 查看UART引脚:0.2 扩展一下引脚查看的方法 一、配置准备1.1 检查端口配置1.2 查看串口映射1.3 下载minicom串口调试工具1.4 通过命令获取串口上的数据 二、python的serial进行收发测试总结 前言…

Llama-3.2-3B-Instruct PyTorch模型微调最佳实践

1 引言 Meta Llama 3.2多语言大型语言模型集合(LM)是一个1B和3B大小(文本输入/文本输出)的预训练和指令微调模型集合。Llama 3.2指令调整的纯文本模型针对多语言对话用例进行了优化,包括智能检索和总结任务。它们在常…

【用Java学习数据结构系列】HashMap与TreeMap的区别,以及Map与Set的关系

看到这句话的时候证明:此刻你我都在努力 加油陌生人 个人主页:Gu Gu Study 专栏:用Java学习数据结构系列 喜欢的一句话: 常常会回顾努力的自己,所以要为自己的努力留下足迹 喜欢的话可以点个赞谢谢了。 作者&#xff…

js逆向——2024最新有道翻译过控制台反调试

今日受害者网址:https://fanyi.youdao.com/ 最近收到粉丝反馈,有道翻译网站添加了反调试功能,出现了打不开控制台的情况 那么,今天就加餐讲一下如何过掉有道的反调试吧~ 我进去测试了一下,发现就是右键检查/f12打开控…

Java-基础

1. 导入模块不能纯粹的复制粘贴,要从new里导入,因为前者建立不了关联 2. 数组 String[] name{"张三","李四","王五"};int[] numsnew int[]{1,2,3};//二维String[][] names{{"张三","李四"},{"…

算法设计课程简介

算法设计课程简介 1. 课程概述 算法设计是一门计算机科学的核心课程,旨在教授学生如何设计、分析和优化各种算法,以解决实际问题。该课程不仅涉及具体算法的实现,更注重算法在时间复杂度和空间复杂度上的优化,帮助学生培养编写高…

map系列的使用

map和multimap参考文档 map和multimap参考文档https://legacy.cplusplus.com/reference/map/ map类的介绍 map的声明如下&#xff0c;Key就是map底层关键字的类型&#xff0c;T是map底层T的类型。但要注意&#xff1a;map的 key 与 T 是封装在std::pair<Key&#xff0c;…

第二十一篇:你知道直播,小区视频点播等是怎么实现的吗?(组播协议)

你知道直播&#xff0c;小区视频点播等是怎么实现的吗&#xff1f;其实现就是运用了组播&#xff01; 信息从信息源发送给组播成员&#xff0c;肯定不能全网无选择的传播&#xff0c;那不是组播&#xff0c;那就是广播了&#xff0c;路由器不支持广播&#xff0c;却支持组播&a…