Labfans是一个针对大学生、工程师和科研工作者的技术社区。 | 论坛首页 | 联系我们(Contact Us) |
![]() |
![]() |
#1 |
高级会员
注册日期: 2019-11-21
帖子: 3,006
声望力: 66 ![]() |
![]()
在Matlab(神经网络工具箱+图像处理工具箱)中,我编写了一个脚本来从图像中提取特征并构造“特征向量”。我的问题是某些功能比其他功能拥有更多的数据。我不希望这些功能比其他数据较少的功能具有更大的意义。
例如,我可能有一个由9个元素组成的特征向量: hProjection = [12,45,19,10]; vProjection = [3,16,90,19]; area = 346; featureVector = [hProjection,vProjection,area]; 如果我构建一个以featureVector作为输入的神经网络,则该区域仅占输入数据的10%,并且重要性不高。 我正在使用带有tansig传递函数的前馈反向传播网络(模式识别网络)。 我该如何处理? 回答: 当您将输入数据呈现给网络时,要素矢量的每一列本身都会作为属性提供给输入层。您唯一需要担心的偏差是每个尺寸的比例(即:我们通常将特征规格化为[0,1]范围)。 同样,如果您认为这些功能是相关的/相关的,则可能需要执行某种属性选择技术。在您的情况下,这取决于hProj / vProj功能的含义... 编辑: 在我看来,作为特征选择的替代方法,您可以使用降维技术(PCA / SVD,因子分析,ICA等)。例如, 因子分析可用于提取hProj / vProj所依赖的一组潜在隐藏变量。因此,除了这8个功能之外,您还可以获得2个功能,使得原来的8个功能是新的两个功能的线性组合(加上一些误差项)。请参阅此页面以获取完整示例 更多&回答... |
![]() |
![]() |