gpt4 book ai didi

machine-learning - 人工神经网络在姿态估计中的适用性

转载 作者:行者123 更新时间:2023-11-30 09:02:14 25 4
gpt4 key购买 nike

我正在为大学开展一个项目,该项目需要无标记相对姿势估计。为此,我拍摄了两张图像并匹配图片某些位置的 n 个特征。从这些点中,我可以找到这些点之间的向量,当包含距离时,可以使用这些向量来估计相机的新位置。

该项目需要可在移动设备上部署,因此算法需要高效。我必须提高效率的一个想法是获取这些向量并将它们放入神经网络中,该神经网络可以获取这些向量并根据输入输出 xyz 运动向量的估计。

我的问题是,如果经过充分训练,神经网络是否适合这种情况?如果是这样,我将如何计算我需要的隐藏单元的数量以及最佳的激活函数是什么?

最佳答案

在您的应用程序中使用神经网络可以很好地工作,但是,我觉得您将需要大量的训练样本才能使网络进行泛化。当然,这也取决于您正在处理的姿势的类型和数量。在我看来,通过一些聪明的数学,可能可以直接从输入向量导出运动向量 - 如果你有机会想出一种方法来做到这一点(或者提供更多信息,以便其他人可以考虑它)也),这将是非常可取的,因为在这种情况下,您将包含有关该任务的先验知识,而不是依赖神经网络从数据中学习。

如果您决定继续采用神经网络方法,请记住以下几点:

  1. 将数据分为训练集和验证集。这可以让您确保网络不会过度拟合。您使用训练集进行训练,并使用验证集上的错误确定特定网络的质量。训练/验证的比率取决于您拥有的数据量。大型验证集(例如 50% 的数据)将允许对训练网络的质量得出更精确的结论,但通常数据太少而无法承担这一任务。不过,无论如何,我建议至少使用 10% 的数据进行验证。
  2. 对于隐藏单元的数量,经验法则是每个自由参数(即每个权重)至少有 10 个训练示例。因此,假设您有一个包含 4 个输入、10 个隐藏单元和 3 个输出单元的 3 层网络,其中每个隐藏单元和输出单元还具有偏置权重,则您将得到 (4+1) * 10 + (10+ 1) * 3 = 83 个自由参数/权重。一般来说,您应该尝试隐藏单元的数量以及隐藏层的数量。根据我的经验,4 层网络(即 2 个隐藏层)比 3 层网络工作得更好,但这取决于问题。由于您还拥有验证集,因此您可以找出有效的网络架构和大小,而不必担心过度拟合。
  3. 对于激活函数,您应该使用一些 sigmoid function允许非线性行为。我喜欢双曲正切的对称性,但根据我的经验,您也可以使用逻辑函数。

关于machine-learning - 人工神经网络在姿态估计中的适用性,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/15491365/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com