MATLAB 中的神经网络输入偏差

发布于 2024-08-06 06:05:27 字数 421 浏览 2 评论 0原文

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

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

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

featureVector = [hProjection, vProjection, area];

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

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

我该如何处理这个问题?

In Matlab (Neural Network Toolbox + Image Processing Toolbox), I have written a script to extract features from images and construct a "feature vector". My problem is that some features have more data than others. I don't want these features to have more significance than others with less data.

For example, I might have a feature vector made up of 9 elements:

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

featureVector = [hProjection, vProjection, area];

If I construct a Neural Network with featureVector as my input, the area only makes up 10% of the input data and is less significant.

I'm using a feed-forward back-propogation network with a tansig transfer function (pattern-recognition network).

How do I deal with this?

如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。

扫码二维码加入Web技术交流群

发布评论

需要 登录 才能够评论, 你可以免费 注册 一个本站的账号。

评论(1

爱给你人给你 2024-08-13 06:05:28

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

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

编辑:
我突然想到,作为功能选择的替代方案,您可以使用降维技术(PCA/SVD、因子分析、ICA、...)。例如,因子分析可用于提取一组潜在的隐藏变量,这些变量基于这些变量/vProj 取决于。因此,您可以获得 2 个特征,而不是这 8 个特征,这样原来的 8 个特征是新的两个特征的线性组合(加上一些误差项)。请参阅此页面了解完整示例

When you present your input data to the network, each column of your feature vector is fed to the input layer as an attribute by itself.
The only bias you have to worry about is the scale of each (ie: we usually normalize the features to the [0,1] range).

Also if you believe that the features are dependent/correlated, you might want to perform some kind of attribute selection technique. And in your case it depends one the meaning of the hProj/vProj features...

EDIT:
It just occurred to me that as an alternative to feature selection, you can use a dimensionality reduction technique (PCA/SVD, Factor Analysis, ICA, ...). For example, factor analysis can be used to extract a set of latent hidden variables upon which those hProj/vProj depends on. So instead of these 8 features, you can get 2 features such that the original 8 are a linear combination of the new two features (plus some error term). Refer to this page for a complete example

~没有更多了~
我们使用 Cookies 和其他技术来定制您的体验包括您的登录状态等。通过阅读我们的 隐私政策 了解更多相关信息。 单击 接受 或继续使用网站,即表示您同意使用 Cookies 和您的相关数据。
原文