【问题标题】:RBF network not generalizing wellRBF 网络不能很好地泛化
【发布时间】:2018-08-05 15:51:06
【问题描述】:

我正在尝试 RBF 来解决分类问题。输入矩阵的大小为 40,000 x 2,500,输出矩阵的大小为 25 x 2,500。输出矩阵只包含 0 和 1。

正如大多数示例中所述,RBF 可以在训练数据中提供 100% 的准确度,在我的案例中也是如此。然而,当我用一个新的输入矩阵(40,000 x 2,500 维度,通过 nntool 中的simulate network)测试网络时,准确度很差。我尝试了各种 SPREAD 值,但没有一个有助于泛化网络。

输入数据集值介于 -960.0 到 +960.0 之间。

我尝试过的几个 SPREAD 值包括:

5e-9, 5e-6, 0.005, 0.01, 0.25, 1.0, 5.0, 100.0, 450.0

一些论坛建议使用无监督网络对输入数据进行聚类,并将聚类后的数据用作 RBF 的输入。我使用了 k-means 聚类与 25 个集群,但结果是徒劳的。

谁能建议如何提高 RBF 的测试准确性?

提前致谢!!

【问题讨论】:

    标签: matlab neural-network


    【解决方案1】:

    RBF 隐藏层更容易以无监督的方式进行训练,k-means 或 K-NN 可用于找到 centers,对于 spread 参数,您可以计算每两个最近聚类中心之间的距离平均值。 现在让 N 为样本数,理论上 RBF 网络至少需要 N/2 个中心(隐藏节点)。你的输入大小是 40,000,而你只有 25 个 k-means 中心,用 20000 个集群再做一次,看看它是否有效。您的隐藏层大小太小。输出层的权重应该以监督的方式计算,据我所知使用梯度下降。

    【讨论】:

      猜你喜欢
      • 2020-10-29
      • 2020-10-16
      • 2021-04-01
      • 1970-01-01
      • 2019-09-22
      • 2019-02-01
      • 1970-01-01
      • 2017-05-30
      • 2015-01-17
      相关资源
      最近更新 更多