多模态的原理
多模态模型目前基本就是文生图、图生图、图生视频、文生视频这些,其底层逻辑其实还是先从生图片这一源头。因为毕竟视频也是若干帧的图片组成。
所以在生图片的这个环节上,我们把比较火的这个stablediffusion用的这个diffusion扩散模型理解掉,也就差不多够了。
那么什么是扩散模型呢,这里我拿论文中的两张图帮助理解
一张是前向的,在图片上加噪点,最终生成一张无意义的噪点图,一个是后向的,从一个无意义的噪点图上消除噪点,最终得到一张有意义的实际图片。
其实扩散模型训练的就是这个加减噪点的过程:先把海量的带有标注文字描述的图片,例如“一只白色的小猫”,逐渐加满噪点。在这个过程中,模型会把每一步的图片向量值,和文字的向量值的数据分布的演变规律,进行系统学习并沉淀下来,这就完成了模型的训练。
在后续我们输入文字后,模型就可以根据输入的文字转化为的向量,去指导一个充满噪点的图片每一步减噪点的过程,生成最终的图片。
这里其实有两个点
一个是diffusion模型中加减噪点的方式,其实也与我们大脑中去构思一张图片的方式有些类似,我们去想像一张图片的时候,不也是从一片模糊中逐渐想清楚一张图片嘛
第二个是多模态模型会把文字的向量值和图片的rgb像素点的向量值进行关联,这个也像极了我们大脑中的一个思考过程。
当然这个过程比我描述的还要更复杂,比如过程里还要考虑到,噪点图的原始状态,加减噪点的过程需要多少步,每一步需要加入的噪点分布等等,这里仅为了大家理解方便,仅对主干逻辑作了讲解。
如有感兴趣的同学,可以看一下张涛老师对diffusion原理做的一次分享。个人认为这个分享质量非常棒
【产品人如何学习 AI?以 Stable Diffusion 原理及发展历程为例】 https://www.bilibili.com/video/BV1wZ421h7w7/?share_source=copy_web&vd_source=e20dab09b86a96c6538305ab6db6b7b1