1. 原理图
将一张图片拆分开来如下图所示,下图的 0,1,2,…,8,9 是用于记录图片的位置信息
![image-20220513160536511](https://img-blog.csdnimg.cn/img_convert/9ce37d15b1fb2cf9d4c5d7b1ff689e86.png)
![image-20220513160953622](https://img-blog.csdnimg.cn/img_convert/21f174638724360cf0b0d2065efa4e03.png)
2.Transformer Encoder结构图 (L× 指重复堆叠L次)
![image-20220513161059924](https://img-blog.csdnimg.cn/img_convert/d6395974e42fcf427a67268f88a786f5.png)
3.实现过程:
![image-20220513180934822](https://img-blog.csdnimg.cn/img_convert/a37174b4b946fab9d84fdb8926f2fa29.png)
更为详细的Encoder Block图
![image-20220513181959875](https://img-blog.csdnimg.cn/img_convert/a442fd83a301897d98a7ccec2abbe299.png)
上图中的 MLP Block 图解为
![image-20220513182200573](https://img-blog.csdnimg.cn/img_convert/b9d669e3e41a6c3b83e93038cb3591a9.png)
4.MLP Head层
![image-20220513183030719](https://img-blog.csdnimg.cn/img_convert/f53e235cf4a601fec2e17b763acbdc72.png)
注意:在Transformer Encoder 前有一个Dropout层,后有一个Layer Norm层
训练自己的网络时,可简单将MLP Head层看作一个全连接层
5. 总结ViT-B/16 网络结构
![image-20220513183459106](https://img-blog.csdnimg.cn/img_convert/2ad9ffd86dd397b71b32b305adbc11fb.png)
其中:Encoder Block
![image-20220513181959875](https://img-blog.csdnimg.cn/img_convert/5d31978aa8561771a8a5104da63a03df.png)
其中:MLP Block
![image-20220513182200573](https://img-blog.csdnimg.cn/img_convert/29724187c4d864557a59398facac4908.png)