从隐空间领会解码器

发布时间:2023-07-27  


本文引用地址:

0 引言

在上1 期里,您已经领会( 理解)Encoder 的涵意和功能了。在本期里,就继续来领会Decoder 的涵意和功能。由于这两者是息息相关的。例如在Diffusion 模型里,就含有文本编码器(text encoder)、图像编码器(image decoder)、以及(decoder) 等。

于是,当您已经深入理解编码器了,就能轻易继续理解另一名词:(Decoder)。兹回忆上1 期的说明:Encoder 负责从有招的世界,萃取( 过滤)& 沉淀于无招世界( 即AI 的潜藏空间),然后由Decoder 来生成千变万化的新招式。例如,上1 期所举的< 换脸> 范例( 图1)。

image.png

图1

图片来源:https://arxiv.org/pdf/1909.11573.pdf

您已经理解Encoder了。接下来,我们就来详细说明Decoder是如何< 生成>( 无中生有) 呢?

1 Decoder如何生成?

Decoder 的无中生有技能是它经由机器学习(Machine Learning) 过程,而获得的知识和智能;基于这学来的智慧来进行< 生成>。我们先从简单的例子出发。例如,让它( 即Decoder) 学习:< 输入1 个数值--1,而输出3 个数值( 红色RGB 的数值) -- [255, 0, 0]。兹以图2 表示。

1690453722526205.png

图2

然后继续让学习更多。例如学习:< 输入一个数值--100,而输出3 个数值( 绿色RGB的数值) -- [0, 255, 0]。并且学习:< 输入1 个数值-- 200,而输出3 个数值( 蓝色RGB的数值) -- [0, 0, 255]。共学习了3项智能(图3)。

image.png

图3

俗语说:学而时习之。让它重复学习更多回合,它就掌握上述的3 项生成< 规律> 了。之后,只要我们输入[1]给这Decoder,它就会生成很接近于[255, 0, 0]的值,但不一定是[255, 0, 0]。同样地,只要输入[100]给这Decoder,它就会生成很接近于[0, 255, 0] 的值,但只是近似而已。

请您想一想:此时如果您输入一个值[95] 给这Decoder,那么它会输出什么值呢? 这只是一个起点,逐渐地扩大Decoder 的能力,就能做出形形色色的图像生成了。例如,从上述范例的输出都是1 个点的颜色RGB 值。我们可以扩大输出( 生成),例如输出4 个彩色点的RGB 值。每一个点都有RGB 3 个值,而4 个点共有12 个值。也就是输出1 个向量,其含有12 个值(图4)。

1690471788919806.png

图4

继续让它学习更多种配对(图5)。

1690510681193591.png

图5

接下来, 还可以扩大输出( 生成), 例如输出128x128 彩色点的RGB 值。每一个点都有RGB3 个值,共有128x128x3 个值。也就是输出1张JPG图像( 图6)。

1690510820294563.png

图6

然后请试想:此时如果您输入一个向量值[0.1, 0.1,0.9] 给这Decoder,那么它会生成什么图像呢?

2 Decoder的生成智慧从哪里来?

以上说明了Decoder 经由数千或数万回合的重复学习,而学习其对应规律,而拥有生成的技能。而人们透过输入值来引导它生成不同色彩、形状的图像。在上述的说明中,请您勿必留意:人们输入值〔0, 1, 0〕等只是用来引导Decoder 去微调其所学的知识,来绘出作品。就如同学生问老师时,从古典的角度而观之,是老师在帮学生解析问题。其实也是:学生在引导老师去表达其深厚的学问。

所以,Decoder 不是去解析人们的输入数据,而是Decoder 参考人们的输入( 指引),来微调Decoder 的所学,而进行生成作品。亦即,AI 不是传统IT 系统依循人们所写的程序逻辑去创作,而是依其自己所学习的规律去进行生成。例如,AI 重复观察Picasso 数百张画作之后,学会了Picasso 的颜色风格( 规律),AI 就会依循其所学的规律来渲染张大千的画作。

再举例说明之,例如有一位妈妈经过许多年学会做早餐便当。今天一早,她的小孩告诉她说:今天便当加个苛包蛋。她就依其小孩指引开始准备便当。她在准备便当的过程中,又听到其小孩说:蛋不要太咸。于是她就微调,而做出了一个:不咸荷包蛋的早餐便当。

小孩在两个时间点提供指引:1 个是创作前,1 个是创作中。妈妈也可要求小孩提供更多指引,例如妈妈说:请您给我看看其他同学的便当内容照片。于是她就依循其他同学便当特色来微调脑海中便当的景像,而做出1 个更符合小孩口味的便当。这里也要很留意:她就依循其他同学〈便当特色〉来微调脑海中便当的景像。只是提取特色而已,而不解析其细节。

3 Decoder内部的NN模型

刚才的范例说明了:人们输入值〔0, 1〕等只是用来引导Decoder 去微调其所学的知识,来绘出作品。现在继续来看看Decoder 的内部结构。无论是Encoder 或Decoder,其内部都是一个简单的计算公式: Y = X *W + B。兹以图表示之( 图7)。

1690510906396113.png

图7

看看Decoder内部的神经网络(NN:Neural Netwoks)架构( 图8)。

1690510957279478.png

图8

这结构里含有w[ ] 数组,和b[ ] 向量,也就是AI模型的参数。以图9 表示之。

1690511048258090.png

图9

其中的计算关系是:

●   当我们输入X=[1,0],经由Y = X*W+B 的计算,就输出Y=[255, 0,0];

●   当我们输入X=[1,1],经由Y = X*W+B 的计算,就输出Y=[0, 0, 255];

●   当我们输入X=[0,1],经由Y = X*W+B 的计算,就输出Y=[0, 255, 0]。

请您试想,上图里的w[ ] 和b[ ] 为何,才能同时满足上述的3 项计算呢? 其答案并不是唯一的。亦即,可能有好几组 W&B 可以满足上述的要求。例如,可以透过机器学习,来找到一组< 同时> 满足上述3 项的计算( 图10)。

1690511104304219.png

图10

当我们输入X=[1,0],经由Y = X*W+B 的计算,就输出Y=[255, 0,0]。

其计算过程为:

● y0 = x0 * w00 + x1 * w10 + b0 = 1*0 + 0*-255 +255 = 255;

● y1 = x0 * w01 + x1 * w11 + b1 = 1*-255 + 0*0 +255 = 0;

● y2 = x0 * w02 + x1 * w12 + b2 = 1*255 + 0*255 -255 = 0 。

于是就输出了:[255, 0, 0]。同理, 当我们输入X=[1,1],经由Y = X*W+B 的计算,就输出Y=[0, 0,255]。而且,当我们输入X=[1,1],经由Y = X*W+B 的计算,就输出Y=[0, 0, 255]。以图11 表示之。

1690511154899187.png

图11

于是,这是完美的一组W&B,能同时满足上述的3项对应规律。所谓< 机器学习>,或< 训练模型> 就是AI 在找寻一组完美的W&B。

4 结束语

为了简单易懂起见,上述的Decoder 都是单层NN架构而已。然而一般的Decoder 都是深度NN 架构( 即含有多个隐藏层)。还有,像Stable Diffusion 在Encoder与Decoder 之间,又添加了更多隐藏层的计算,强化的创新组合能力,来生成更丰富的内容。

(本文来源于《电子产品世界》杂志2023年7月期)

文章来源于:电子产品世界    原文链接
本站所有转载文章系出于传递更多信息之目的,且明确注明来源,不希望被转载的媒体或个人可与我们联系,我们将立即进行删除处理。

相关文章

    、智能行为预测;3、动态内存压缩;4、实时资源清理。 在系统运行过程中,EMIUI 5.0会预测用户使用频繁的应用,保证高优先级应优先获得资源分配。 除了上述这些功能之外,EMUI还加入了防误触、隐私空间......
    就曾在 X80 Pro 和 vivo X Fold 上配备双指解锁进入隐私空间的功能,还是相当方便的。可以想像,在三星全屏幕指纹识别技术的加持下,厂商们可以通过 " 数字密码 + 指纹 " 的方......
    跨整个驾驶舱的全景屏解决方案,无论是从视角、清晰度、操作性等各个方面,都能满足驾驶员和乘客更多个性化的需求。 私享屏技术 影音可定向调节,独享隐私空间 常规的车载影音系统普遍是共享的,接听电话、播放......
    《哈利波特》衍生电影升级:要拍五部!;由华纳出品的奇幻大片《神奇动物在哪里》已经确定11月18日中美同步公映,今天作者J·K·罗琳再度发布利好消息,她确认电影《神奇动物在哪里》会是五部曲! 最早......
    汽车知晓你的信息?解读隐私与安全挑战; 汽车收集了很多信息——你去过哪里,开得有多快,在哪里购物等等。现代驾驶员监控系统远远不止于此。今天的车辆监测驾驶员自己的行为。例如,一些......
    合了业界最先进的步进电机驱动器,该驱动器基于256微步细分和两个完全集成的36V、3.0AMAXH桥以及无耗散集成电流检测(ICS)。 相比DRV8424和L6470他的优势在哪里呢? 第一,在集成电流检测方面,它具......
    ARM C编程(2024-07-23)
    指针本身和指针指向的内容均为常量。 6.、Volatile:     定义一个易失性变量,编译器有一种技术叫数据流分析,分析程序中的变量在哪里被赋值、在哪里使用、在哪里失效,分析结果可以用于常量合并,常量......
    从轻定义组件产品 TA的独门绝技在哪里?;日前,一道新能轻质产品在东京发布。作为一道新能的核心产品之一,一道新能轻质组件产品“优”在哪里?TA又到底有多“轻”?让我们跟随下文一探究竟吧! 极致......
    80C51单片机与8051单片机的主要差别在哪里;80C51单片机是在8051的基础上发展起来的,也就是说在单片机的发展过程中是先有8051,然后才有80C51的。 8051单片机与80C51单片......
    PLC和运动控制器的比较,在哪些要求下选用运动控制器?;现在 PLC 的运动控制功能越来越强了,圆弧插补、螺旋插补、电子凸轮都能轻松胜任了,那运动控制器和具备运动控制功能的 PLC 的差别在哪里......

我们与500+贴片厂合作,完美满足客户的定制需求。为品牌提供定制化的推广方案、专属产品特色页,多渠道推广,SEM/SEO精准营销以及与公众号的联合推广...详细>>

利用葫芦芯平台的卓越技术服务和新产品推广能力,原厂代理能轻松打入消费物联网(IOT)、信息与通信(ICT)、汽车及新能源汽车、工业自动化及工业物联网、装备及功率电子...详细>>

充分利用其强大的电子元器件采购流量,创新性地为这些物料提供了一个全新的窗口。我们的高效数字营销技术,不仅可以助你轻松识别与连接到需求方,更能够极大地提高“闲置物料”的处理能力,通过葫芦芯平台...详细>>

我们的目标很明确:构建一个全方位的半导体产业生态系统。成为一家全球领先的半导体互联网生态公司。目前,我们已成功打造了智能汽车、智能家居、大健康医疗、机器人和材料等五大生态领域。更为重要的是...详细>>

我们深知加工与定制类服务商的价值和重要性,因此,我们倾力为您提供最顶尖的营销资源。在我们的平台上,您可以直接接触到100万的研发工程师和采购工程师,以及10万的活跃客户群体...详细>>

凭借我们强大的专业流量和尖端的互联网数字营销技术,我们承诺为原厂提供免费的产品资料推广服务。无论是最新的资讯、技术动态还是创新产品,都可以通过我们的平台迅速传达给目标客户...详细>>

我们不止于将线索转化为潜在客户。葫芦芯平台致力于形成业务闭环,从引流、宣传到最终销售,全程跟进,确保每一个potential lead都得到妥善处理,从而大幅提高转化率。不仅如此...详细>>