李宏毅机器学习笔记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。

相关推荐
vibecoding773 小时前
一文搞懂企业级 API 网关选型:12 个维度、4 类企业、7 步落地
人工智能·大模型·ai编程
Rocktech_ruixun3 小时前
机器人本地跑LLM大模型对主板硬件有什么要求?瑞迅科技RK3588/3568方案选型解析
人工智能·科技·嵌入式硬件·机器人·边缘计算
yxlalm3 小时前
Spring AI+RAG 01-项目背景与技术选型
java·人工智能·spring
tedcloud1233 小时前
Wand-Enhancer 怎么搭建?开源 Wand 客户端增强与远程控制工具介绍
大数据·服务器·人工智能·开源·音视频
科技苑3 小时前
如何用Python编程实现一个简单的Web爬虫?
人工智能·python
迅利科技4 小时前
新能源汽车零部件研发,SIMULIA一站式仿真解决方案如何缩短研发周期
人工智能·汽车
-SOLO-4 小时前
开发笔记-摸鱼输入法
笔记
Databuff4 小时前
AI SSH工具,集齐SSH、SFTP、知识库RAG、AI助手
网络·人工智能·ssh
Blockchina4 小时前
从一篇文章到一条完整视频:用 Codex 搭建可复用的 AI 视频生产线
人工智能
Proaiapi5 小时前
一张图介绍gpt-image-2.5
人工智能·gpt