【发布时间】:2012-07-02 17:29:17
【问题描述】:
我有一组 GPS 坐标,必须对它们进行聚类。对于这个任务,我必须使用神经网络和 Java 语言。我对神经网络完全陌生,所以我发现了一个名为 Neuroph 的框架。据我研究后了解,我必须使用多层感知器 (MLP) ir 径向基函数 (RBF) 神经网络来完成我的任务。
确定我有多少个集群不是问题。问题是,如何让神经网络显示必须在哪个集群位置?
样本数据:
CLUSTER1
54.930225, 23.867619
54.930204, 23.867532
54.930258, 23.86754
CLUSTER2
54.920432, 23.901341
54.920323, 23.901263
54.920187, 23.901156
54.92022, 23.9013
CLUSTER3
54.900466, 23.856597
54.900499, 23.85644
54.900452, 23.85651
我将这些数据用于神经网络进行学习。我的设置是这样的:
多层感知器,2 个输入神经元,2 个隐藏神经元,1 个输出神经元。
或
径向基函数,2 个输入神经元,2 个隐藏神经元,1 个输出神经元。
这是我的训练集:
+------------+------------+---+
| 54.930225 | 23.867619 | 1 |
| 54.930204 | 23.867532 | 1 |
| 54.930258 | 23.86754 | 1 |
| 54.920432 | 23.901341 | 2 |
| 54.920323 | 23.901263 | 2 |
| 54.920187 | 23.901156 | 2 |
| 54.92022 | 23.9013 | 2 |
| 54.900466 | 23.856597 | 3 |
| 54.900499 | 23.85644 | 3 |
| 54.900452 | 23.85651 | 3 |
+-----------+------------+---+
在训练时,我选择最大误差 = 0,01 和学习率 = 0,2。有了这些参数,多层感知器不会停止学习很长时间,所以我将参数更改为 0,2 和 0,5。
学习完成后,我希望设置参数(坐标)并获取这些坐标所属的簇数。在多层感知器中,我总是得到 0,99... 而 ir RBF 我得到 0,9 或 1,9。作为参数,我使用 CLUSTER3 中的最后一个坐标。
我是否遗漏了什么,或者我仍然不明白神经网络应该如何工作?有人可以帮帮我吗?
【问题讨论】:
标签: java coordinates neural-network cluster-analysis