如何使用神经网络学习矩阵变换?

给定一张输入图像,预测一张经过某种矩阵变换后的输出图像。

重要的是,给定一张网络之前未见过的输入图像,能够对该输入图像执行相同的矩阵变换,就好像我们直接对该图像进行了矩阵变换一样。

我尝试过使用自编码器进行实验,但发现它过拟合得相当严重。网络最终实际上是学习了输入和输出像素之间的映射,而不是将输入转化为输出的变换本身。

对于识别矩阵变换的任务,最佳方法是什么?


回答:

这听起来像是一个完全可行的任务(你想从示例中学习线性变换),而且使用神经网络似乎是多余的。神经网络(特别是深度神经网络)适用于建模那些功能形式事先未知、高度非线性、非常复杂且在输入空间的不同部分变化显著的变换。你所描述的问题似乎不符合这些条件。

预测线性变换的难点不在于变换本身——而是找出输出图像中的哪些点对应于输入图像中的哪些点。一旦实现这一点,估计变换本身就是线性最小二乘法的简单应用。

点对应问题可以变得非常复杂——想象一下,将今天伦敦的航拍照片与1940年伦敦大轰炸期间的地面照片进行匹配——而且很难用功能或规则形式来表达。

Related Posts

L1-L2正则化的不同系数

我想对网络的权重同时应用L1和L2正则化。然而,我找不…

使用scikit-learn的无监督方法将列表分类成不同组别,有没有办法?

我有一系列实例,每个实例都有一份列表,代表它所遵循的不…

f1_score metric in lightgbm

我想使用自定义指标f1_score来训练一个lgb模型…

通过相关系数矩阵进行特征选择

我在测试不同的算法时,如逻辑回归、高斯朴素贝叶斯、随机…

可以将机器学习库用于流式输入和输出吗?

已关闭。此问题需要更加聚焦。目前不接受回答。 想要改进…

在TensorFlow中,queue.dequeue_up_to()方法的用途是什么?

我对这个方法感到非常困惑,特别是当我发现这个令人费解的…

发表回复

您的邮箱地址不会被公开。 必填项已用 * 标注