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

相关推荐
咩图1 分钟前
C#创建AI项目
开发语言·人工智能·c#
深蓝海拓4 分钟前
opencv的模板匹配(Template Matching)学习笔记
人工智能·opencv·计算机视觉
美林数据Tempodata14 分钟前
李飞飞最新论文深度解读:从语言到世界,空间智能将重写AI的未来十年
人工智能·ai·空间智能
东哥说-MES|从入门到精通16 分钟前
数字化部分内容 | 十四五年规划和2035年远景目标纲要(新华社正式版)
大数据·人工智能·数字化转型·mes·数字化工厂·2035·十四五规划
小殊小殊17 分钟前
DeepSeek为什么这么慢?
人工智能·深度学习
摇滚侠19 分钟前
2025最新 SpringCloud 教程,教程简介,笔记01
笔记·spring cloud
极客BIM工作室33 分钟前
从静态到动态:Sora与文生图潜在扩散模型的技术同异与AIGC演进逻辑
人工智能·aigc
松果财经37 分钟前
长沙的青年友好,五年见“城”心
人工智能
秋邱39 分钟前
智启未来:AGI 教育融合 × 跨平台联盟 × 个性化空间,重构教育 AI 新范式开篇:一场 “教育 ×AI” 的范式革命
人工智能·python·重构·推荐算法·agi
黑客思维者1 小时前
ChatGPT软件开发提示词库:开发者常用150个中文提示词分类与应用场景设计
人工智能·chatgpt·提示词·软件开发