李宏毅机器学习笔记17

目录

摘要

1.不成对的资料

2.如何使用GAN

[Cycle GAN](#Cycle GAN)


摘要

本篇文章继续学习李宏毅老师2025春季机器学习课程,学习内容是GAN的应用及Cycle GAN的相关原理。

1.不成对的资料

什么叫不成对的资料呢?通常我们训练出来就是一个x对应一个y,我们需要他们是成对的资料才能训练,但是现在我们有一堆x和一堆y,他们是不成对的,这样没有成对的资料就称为unlabel的资料即没有标注的资料。

什么情况下没有任何成对的资料呢?例如上图的影像风格转换,从真实的人物头像转换为二次元的人物头像,这就可能没有任何的成对的资料。这种状况下就需要GAN帮助我们,输入一个x产生一个y

2.如何使用GAN

沿用上一个例子,我们需要一个输入是x区域的图片分布(真实的人物头像),输出是y区域的图片分布,如果可以做到我们的训练就结束了。

我们可以套用原来GAN的想法,我们只要改成可以从x区域sample就可以了。假设我们从x区域随机挑选一张人脸出来,放入generator里产生另一个分布的图片,那怎么变为y区域的图片呢?这个就需要一个discriminator,这个discriminator看过很多y区域的图,如果是y区域的图就给高分,如果不是就给低分。

但是只是这样套用是不够的,generator他可以产生二次元人物的头像但是他跟输入的真实照片没有什么特别的关系,这个不是我们要的。

Cycle GAN

这个问题我们就会用到cycle GAN,在cycle GAN中我们会训练两个generator,第一个的工作是把x区域的图变为y区域的图,第二个的工作是看到y区域的图把他还原为x区域的图。

在训练时,我们增加额外的一个目标,从x区域的图变为y区域的图后我们要能还原回x区域的图。两张图片就是两个向量,我们希望这两个向量的距离越接近越好。这样对于第一个generator来说,就无法随便产生图片,需要让产生的图片与真实图片有关联才能让第二个generator成功还原。

同时也可以做双向的训练,就是在cycle GAN增加两个generator,一个的工作是把y区域的图变为x区域的图,另个的工作是看到x区域的图把他还原为y区域的图,除此之外还要再增加一个discriminator,他是用于分辨x区域图片的discriminator。这个就是cycle GAN。

相关推荐
硅谷秋水3 分钟前
World Engine:迈向自动驾驶的后训练时代
人工智能·深度学习·机器学习·计算机视觉·语言模型·自动驾驶
RobinDevNotes3 分钟前
PentAGI:全自主 AI 渗透测试代理系统
人工智能
明理的信封11 分钟前
AI 基础设施的“去 Python 化“:Rust 与 C# 的两条替代路径
人工智能·python·rust
ysa05103016 分钟前
【板子】ST表
c++·笔记·算法·板子
Tiansan666623 分钟前
郑州AI问答推广公司:如何用AI提升转化率
人工智能·郑州ai问答推广公司
龙亘川24 分钟前
开源本地 AI 智能体网关 OpenClaw 深度实践:架构解析、全场景部署与自动化落地指南
人工智能·架构·开源·openclaw
霍格沃兹测试开发学社测试人社区38 分钟前
为企业提供专业、灵活、高效的一体化测试支持
人工智能
xixixi7777741 分钟前
产业全景解读:太空算力、国产芯、国产大模型、6G 空天地、AI 可信身份、后量子安全多线全面突破
人工智能·安全·ai·大模型·数据中心·通信·运营商
InfiniSynapse1 小时前
InfiniSynapse × CSDN 首届 Vibe Coding 泛数据分析应用开发大赛正式启动报名!
人工智能·数据挖掘·数据分析·创业创新·个人开发·ai编程·程序员创富
m0_466525291 小时前
新品发布 | 绿盟安全智算一体机,构建“算力、调度、安全“深度融合的AI基础设施
人工智能·安全