【问题标题】:Neural Network Input Bias in MATLABMATLAB 中的神经网络输入偏差
【发布时间】:2010-12-02 04:40:10
【问题描述】:

在 Matlab(神经网络工具箱 + 图像处理工具箱)中,我编写了一个脚本来从图像中提取特征并构造一个“特征向量”。我的问题是某些功能比其他功能拥有更多的数据。我不希望这些功能比其他数据更少的功能更重要。

例如,我可能有一个由 9 个元素组成的特征向量:

hProjection = [12,45,19,10];
vProjection = [3,16,90,19];
area = 346;

featureVector = [hProjection, vProjection, area];

如果我以 featureVector 作为输入构建神经网络,则该区域仅占输入数据的 10%,并且意义不大。

我正在使用带有 tansig 传递函数的前馈反向传播网络(模式识别网络)。

我该如何处理?

【问题讨论】:

  • 我不明白目前似乎是什么问题?您是否对当前网络有很高的预测错误?也许您可以进一步描述问题并解释您正在使用的领域和功能..

标签: matlab neural-network


【解决方案1】:

当您将输入数据呈现给网络时,特征向量的每一列都会作为自身的属性馈送到输入层。 您需要担心的唯一偏差是每个的规模(即:我们通常将特征标准化为 [0,1] 范围)。

此外,如果您认为这些特征是相关的/相关的,您可能需要执行某种属性选择技术。在您的情况下,这取决于 hProj/vProj 功能的含义之一...


编辑:
我突然想到,作为 feature selection 的替代方案,您可以使用 dimensionality reduction 技术(PCA/SVD、因子分析、ICA,...) .例如,factor analysis 可用于提取 hProj/vProj 所依赖的一组潜在隐藏变量。因此,代替这 8 个特征,您可以获得 2 个特征,使得原来的 8 个特征是新的两个特征的线性组合(加上一些误差项)。完整示例参考this page

【讨论】:

  • 我所有的输入都归一化为 [0,1]。我对“属性选择技术”特别感兴趣?你知道任何例子吗? hProj/vProj 中的所有四个元素都是直接相关的。
  • 在我的脑海中,有基于相关性的特征选择 (CFS)。但是还有许多其他方法,快速搜索可能会有所帮助:google.com/search?q=matlab+feature+selection
  • 感谢 Amro,我认为主成分分析 (PCA) 是我正在寻找的。我会考虑应用这种技术。
猜你喜欢
  • 1970-01-01
  • 2016-09-08
  • 2014-04-23
  • 1970-01-01
  • 1970-01-01
  • 2017-12-06
  • 2019-01-02
  • 1970-01-01
  • 2015-05-11
相关资源
最近更新 更多