基于ANN的导航系统

时间:2012-03-07 05:38:30

标签: matlab navigation neural-network nntool

我目前正致力于使用星形拓扑中的Zigbee WSN的室内导航系统。

我目前在15m×10左右的区域内有60个位置的信号强度数据。我想用ANN来帮助预测其他位置的坐标。经过一些线程后,我意识到规范化数据会给我带来更好的结果。

我尝试过并重新训练了我的网络几次。我设法将MATLAB的nntool中的目标参数设置为值.000745,但是在我将训练样本作为测试输入,然后将其缩放回来之后,它仍然给出了一个值。

值为.000745表示我的数据非常贴合,对吧?如果是的话,为什么会出现这种异常?我正在划分并乘以最大值以进行标准化并分别将值缩放。

有人可以解释一下我可能出错的地方吗?我使用了错误的训练参数吗? (我正在使用TRAINRP,4层,每层有15个​​神经元,目标是1e-8,梯度为1e-6和100000个时期)

为此,我应该考虑人工神经网络以外的其他方法吗?

请帮忙。

2 个答案:

答案 0 :(得分:0)

对于空间数据,您始终可以使用高斯过程回归。使用适当的内核,您可以很好地预测,GP回归是一件非常简单的事情(只需矩阵求逆和矩阵向量乘法)您没有太多数据,因此可以轻松完成GP回归。有关GP回归的好消息,请检查this

答案 1 :(得分:0)

你做了什么?输入或输出?您的训练集是否缩放输入+输出,测试时只输出输出?

您使用什么样的错误措施?我假设你的“目标参数”是一个误差测量。是SSE(平方误差之和)还是MSE(均方误差)? 0.000745似乎非常小,通常你的训练数据几乎没有错误。

您的ANN架构可能太深,初始测试的隐藏单元太少。尝试不同的架构,如40-20个隐藏单元,60 HU,30-20-10 HU,......

您应该生成一个测试集来验证ANN的概括性。否则过度拟合可能是个问题。