【问题标题】:Neural Network Input Advice神经网络输入建议
【发布时间】:2012-03-29 03:40:09
【问题描述】:

我目前正在做一个涉及坑洞检测和神经网络的项目。到目前为止,我有一部 Android 手机可以读取加速度计读数并将 X、Y、Z 轴以及幅度和当前时间戳写入 CSV 文件。然后使用最小-最大归一化对数据进行归一化,并使用 CSV 文件中的 Y 轴读数。神经网络学习坑洞所面临的问题是,我应该向反向传播神经网络提供哪些数据?我是否应该设置一个阈值,当 Y 轴达到这一点时,获取前 5 个点和之后的 5 个点,然后向网络提供 11 个输入?我不想过度训练网络,也不想每次都向它提供不同位置的数据。

训练 - 我也开始收集收集的数据并创建训练数据集 - 我是否应该输入诸如正常/颠簸道路/减速带以及坑洼的读数之类的内容?训练集应该有多大?还是“数据越多越好”实际上是真的?

这是坑洞数据的样子。

这就是减速带数据的样子。

收集的数据样本

 X-Axis     Y-Axis    Z-Axis   Timestamp

-0.371827, 8.513097, 5.441484, 165401
-0.601749, 7.976613, 5.326523, 165601
-0.333506, 8.053253, 5.441484, 165801
-0.256866, 8.206534, 5.364844, 166001
0.049697, 8.398136, 5.364844, 166202
-0.371827, 8.436457, 5.211563, 166400
-0.256866, 8.551417, 5.709726, 166601
-0.256866, 8.513097, 5.403164, 166801
-0.333506, 8.474776, 5.709726, 167000
-0.563428, 8.628057, 5.594766, 167201
-0.563428, 7.401808, 4.713398, 167402
-1.981280, 5.447472, 4.406836, 167602    POTHOLE
-0.180225, 5.600753, 5.403164, 167800    POTHOLE
-0.984952, 8.053253, 4.445156, 168001
-1.214874, 8.666378, 5.671406, 168201
-0.525108, 7.210207, 3.870352, 168401
-1.138233, 7.286847, 5.824687, 168600
-0.601749, 10.045910, 5.288203, 168801
-0.180225, 8.206534, 5.173242, 169001
0.279619, 7.861651, 5.518125, 169200
0.202978, 8.934620, 5.824687, 169401
-0.065264, 8.321495, 5.364844, 169601
-0.065264, 8.628057, 5.709726, 169800
-0.716710, 8.014933, 5.748047, 170001
-0.141905, 8.513097, 5.441484, 170200
-0.026944, 8.206534, 5.594766, 170401
-0.601749, 8.168214, 5.058281, 170601

算法

我提出的算法是在样本数据上设置一定的阈值比如第12行,当Y轴达到某个阈值比如然后通过前面的5分,之后的5分给NN。

【问题讨论】:

标签: java android artificial-intelligence neural-network accelerometer


【解决方案1】:

我认为你应该发送每个点 +- 5。就像当你在第 20 点时,你会给你的 nn 点从 15 到 25。 设置阈值是个坏主意,因为坑洼幅度可能会从一个变化到另一个。 在您的训练中,您应该考虑“小”和“大”的坑洼。

您能告诉我们您正在使用什么 nn 库吗?

【讨论】:

    【解决方案2】:

    我不确定你想在阈值前后只传递 5 分给 NN。我认为您希望将所有数据传递给 NN。您可以将数据标记为坑洞与否。

    输入(特征):X、Y 和 Z 输出(目标):1(坑洞),0(无坑洞)

    X 轴 Y 轴 Z 轴目标

    -0.371827, 8.513097, 5.441484, 0

    -0.601749, 7.976613, 5.326523, 0

    -0.333506, 8.053253, 5.441484, 0

    -0.256866, 8.206534, 5.364844, 0

    0.049697, 8.398136, 5.364844, 0

    -0.371827, 8.436457, 5.211563, 0

    -0.256866, 8.551417, 5.709726, 0

    -0.256866, 8.513097, 5.403164, 0

    -0.333506, 8.474776, 5.709726, 0

    -0.563428, 8.628057, 5.594766, 0

    -0.563428, 7.401808, 4.713398, 0

    -1.981280, 5.447472, 4.406836, 1

    -0.180225, 5.600753, 5.403164, 1

    -0.984952, 8.053253, 4.445156, 0

    -1.214874, 8.666378, 5.671406, 0

    -0.525108, 7.210207, 3.870352, 0

    -1.138233, 7.286847, 5.824687, 0

    -0.601749, 10.045910, 5.288203, 0

    -0.180225, 8.206534, 5.173242, 0

    0.279619, 7.861651, 5.518125, 0

    0.202978, 8.934620, 5.824687, 0

    -0.065264, 8.321495, 5.364844, 0

    -0.065264, 8.628057, 5.709726, 0

    -0.716710, 8.014933, 5.748047, 0

    -0.141905, 8.513097, 5.441484, 0

    -0.026944, 8.206534, 5.594766, 0

    -0.601749, 8.168214, 5.058281, 0

    【讨论】:

    • 这将不起作用,因为减速带可能会产生诸如 -1.981280、5.447472、4.406836、1 -0.180225、5.600753、5.403164、1 之类的结果
    猜你喜欢
    • 2014-04-09
    • 2012-10-05
    • 1970-01-01
    • 1970-01-01
    • 2010-10-13
    • 1970-01-01
    • 2020-08-10
    • 2020-12-28
    相关资源
    最近更新 更多