给定一张输入图像,预测一张经过某种矩阵变换后的输出图像。
重要的是,给定一张网络之前未见过的输入图像,能够对该输入图像执行相同的矩阵变换,就好像我们直接对该图像进行了矩阵变换一样。
我尝试过使用自编码器进行实验,但发现它过拟合得相当严重。网络最终实际上是学习了输入和输出像素之间的映射,而不是将输入转化为输出的变换本身。
对于识别矩阵变换的任务,最佳方法是什么?
回答:
这听起来像是一个完全可行的任务(你想从示例中学习线性变换),而且使用神经网络似乎是多余的。神经网络(特别是深度神经网络)适用于建模那些功能形式事先未知、高度非线性、非常复杂且在输入空间的不同部分变化显著的变换。你所描述的问题似乎不符合这些条件。
预测线性变换的难点不在于变换本身——而是找出输出图像中的哪些点对应于输入图像中的哪些点。一旦实现这一点,估计变换本身就是线性最小二乘法的简单应用。
点对应问题可以变得非常复杂——想象一下,将今天伦敦的航拍照片与1940年伦敦大轰炸期间的地面照片进行匹配——而且很难用功能或规则形式来表达。