GAN、GNN

GAN

GAN(Generative Adversarial Network,生成对抗网络)是深度学习中一种非常重要的生成模型框架,核心思想是通过"对抗 "来学习生成逼真的数据。可以从直觉 → 原理 → 数学 → 训练 → 变体 → 应用,全链路理解。

一、直觉理解:两个"对手"的游戏

GAN 由两个神经网络组成:

生成器(Generator, G):负责"造假"(生成数据)
判别器(Discriminator, D):负责"鉴别真假"

可以类比为:

👉 造假者 vs 鉴定专家

过程是:

1.G 生成一张"假图片"

2.D 判断这张图是真的还是假的

3.D 变得更会识别假货

4.G 也不断改进,让假图越来越像真的

最终目标:

让生成的数据"以假乱真 ",连判别器都分不出来

二、核心思想

GAN = 用对抗训练,让模型学会数据分布

三、数学原理

GAN 的目标函数是一个极小极大博弈:

第一部分:真实数据

如果这是真的,你就应该说"这很真!"

D(x) 越接近 1 → 越好

log 是用来"放大奖励"的(不用太纠结)

第二部分:生成数据

如果这是假的,你就应该说"这是假的!"

D(G(z)) 越接近 0 → 越好

三、判别器在干嘛?(max)

它的目标是:

真实数据 → D(x) = 1

假数据 → D(G(z)) = 0

你可以理解为:

D 在当一个"特别严格的鉴定专家"

四、生成器在干嘛?(min)

生成器在最小化这个公式

它只能影响这一项:

关键转化

生成器其实是在干:

让 D(G(z)) 变大(接近1)

也就是:"我生成的假数据,你必须说它是真的!"

四、训练过程

训练是交替进行的:

Step 1:训练判别器 D

输入真实数据(标签=1)
输入生成数据(标签=0)

更新 D,让它更会分辨

Step 2:训练生成器 G

生成假数据

通过 D 判断

反向传播更新 G

👉 注意:此时 D 不更新!

Step 3:循环

不断重复:

训练 D → 训练 G → 训练 D → 训练 G

五、GAN 为什么有效?

核心原因:

👉 隐式学习数据分布

传统方法:

显式建模概率分布(很难)

GAN:

不建模分布

直接学"如何生成像真的"

六、收敛时的理想状态

理论上:

判别器无法区分真假

𝐷(𝑥)=0.5

👉 表示:

生成数据分布 ≈ 真实数据分布

七、常见问题

GAN 很强,但训练非常"脆弱":

1️⃣ 不稳定

loss 不收敛

模型崩溃

2️⃣ 模式崩溃(Mode Collapse)

只生成一种样本

👉 比如:只会生成同一张脸

3️⃣ 梯度消失

D 太强 → G 学不到东西

八、GAN 的应用

🎨 图像生成

人脸生成(StyleGAN)

AI绘画

🧠 图像处理

超分辨率(SRGAN)

去噪、修复

🎭 风格迁移

照片 → 梵高风格

🎥 视频 / 动画

DeepFake

🧬 医疗

医学影像增强

GNN

(Graph Neural Network,图神经网络)

生活中的图结构:

社交网络(人 ↔ 人)

推荐系统(用户 ↔ 商品)

分子结构(原子 ↔ 键)

知识图谱(实体 ↔ 关系)

GNN 的核心思想

每个节点通过"邻居"来更新自己

假设你是一个节点:

你会做三件事:

1️⃣ 收集邻居信息

"我的朋友都是什么样的人?"

2️⃣ 聚合信息(Aggregation)

比如:平均、求和、加权

3️⃣ 更新自己(Update)

"结合邻居,我变成一个新的我"

数学表达


总结:"我把邻居的特征拿过来,加权,然后更新自己"

三种经典 GNN 模型

1️⃣ GCN(Graph Convolutional Network)

2️⃣ GraphSAGE

不是用所有邻居,而是"采样邻居"

GAT(Graph Attention Network)

可以理解为每一层都是同一个节点,只不过是每层都在不断更新邻居,更新节点的表示,并逐层融合更远的信息。

第 k+1 层,依赖第 k 层的结果

意味着:

第1层用原始特征

第2层用第1层的结果

第3层用第2层的结果

相关推荐
Token炼金师4 小时前
模型的防线:Prompt 注入防御、越狱攻击与对齐、红队测试、价值观对齐、对抗样本鲁棒性、安全评测与边界 —— 模型安全六防
人工智能·红队测试·prompt 注入防御·越狱攻击与对齐·价值观对齐·对抗样本鲁棒性·安全评测与边界
嘘神秘用4 小时前
布:AI 驱动的 Redis 客户端,更快、更直观
数据库·人工智能·redis
黒亱中旳5 小时前
Java AI 框架三国杀:Solon AI vs Spring AI vs LangChain4j 深度对比
java·人工智能·spring
小和尚同志5 小时前
前端 AI 单元测试思考与落地
前端·人工智能·aigc
alxraves5 小时前
医用超声远程会诊系统:会诊平台的核心架构与功能解析
java·人工智能·架构
jinggongszh6 小时前
智能硬件对接与系统落地:开发岗在制造现场的经验沉淀
大数据·人工智能
ZeekerLin6 小时前
AI 原生团队协作机制:角色、分工与工程文化变化
大数据·人工智能
城中南小6 小时前
零基础认识大语言模型(LLM)工作原理(5.Transformer的FFN模块到底是什么?)
人工智能·语言模型·transformer
碧口科技6 小时前
AI3D模型生成会不会结构不完整?判断标准与修复流程
人工智能·3d
战族狼魂7 小时前
GPT-5.6与Grok 4.5重磅发布
人工智能·算法·大模型·大语言模型