2022最新版-李宏毅机器学习深度学习课程-P25 Spacial Transformer Layer

data augmentation/spacial transformer

CNN 并不能够处理影像放大缩小,或者是旋转的问题。所以在做影像辨识的时候,往往都要做 Data Augmentation,把你的训练数据截一小块出来放大缩小、把图片旋转,CNN 才会做到好的结果。

有一个架构叫 spacial Transformer Layer可以处理。

设计一个层,需要的地方=1,不要的地方=0

经过一个NN,FP发生平移

还可以放大或缩小,只需要改变参数

旋转一共需要6个参数

当6个参数全部设定的是整数时,结果比较好处理

但如果是小数时呢?通过最终答案的四舍五入得到结果。但此时梯度也不好计算。

可以这样假设:假设最终结果发生一些微小的变化,四舍五入后得到的结果是一样的,这就说明梯度几乎=0!!

使用插值方法代替四舍五入

最终结果与周围四个值都有关。此时输出值的变化时刻影响最终结果。

把ST看成橙色,它可以放在很多地方。

这个视频的含义是改变一些输入后(变大 变小 左右旋转),经过ST层,输出结果基本不变。

实例

这里用了single ST和multi ST,效果有些变化

这个例子用了2层和4层的ST,输入图片有两种大小规格。

2层的是只识别鸟嘴和鸟翼;4层还识别了其他地方。

相关推荐
Chef_Chen9 分钟前
从0开始学习机器学习--Day22--优化总结以及误差作业(上)
人工智能·学习·机器学习
华清元宇宙实验中心19 分钟前
【每天学点AI】前向传播、损失函数、反向传播
深度学习·机器学习·ai人工智能
宋一诺331 小时前
机器学习—高级优化方法
人工智能·机器学习
龙的爹23331 小时前
论文 | The Capacity for Moral Self-Correction in LargeLanguage Models
人工智能·深度学习·机器学习·语言模型·自然语言处理·prompt
Light602 小时前
低代码牵手 AI 接口:开启智能化开发新征程
人工智能·python·深度学习·低代码·链表·线性回归
墨绿色的摆渡人2 小时前
用 Python 从零开始创建神经网络(六):优化(Optimization)介绍
人工智能·python·深度学习·神经网络
phoenix@Capricornus2 小时前
矩阵的对角化&特征值分解
图像处理·线性代数·机器学习·矩阵
Chef_Chen2 小时前
从0开始学习机器学习--Day25--SVM作业
学习·机器学习·支持向量机
sniper_fandc3 小时前
深度学习基础—Seq2Seq模型
人工智能·深度学习
goomind3 小时前
深度学习模型评价指标介绍
人工智能·python·深度学习·计算机视觉