当前位置:  开发笔记 > 人工智能 > 正文

当输入数量可变时,如何使用神经网络?

如何解决《当输入数量可变时,如何使用神经网络?》经验,为你挑选了3个好方法。

我所见过的神经网络的所有例子都是针对一组固定的输入,这些输入适用于图像和固定长度数据.你如何处理可变长度数据,如句子,查询或源代码?有没有办法将可变长度数据编码为固定长度输入,仍然可以获得神经网络的泛化属性?



1> 小智..:

我去过那里,我遇到了这个问题.ANN是针对固定特征向量长度而制作的,因此许多其他分类器如KNN,SVM,贝叶斯等也是如此.即输入层应该被很好地定义而不是变化,这是设计问题.然而,一些研究人员选择添加零来填补缺失的空白,我个人认为这不是一个好的解决方案,因为那些零(虚幻值)将影响网络将收敛的权重.此外,可能存在以零结尾的真实信号.

ANN不是唯一的分类器,有更多甚至更好的如随机森林.这个分类器被认为是研究人员中最好的,它使用少量随机特征,使用自举包装创建数百个决策树,这可能效果很好,所选特征的数量通常是特征向量大小的sqrt.这些功能是随机的.每个决策树都会收敛到一个解决方案,然后使用多数规则选择最可能的类.

另一种解决方案是使用动态时间扭曲DTW,甚至更好地使用隐马尔可夫模型HMM.

另一种解决方案是插值,插值(沿小信号补偿缺失值)所有小信号与最大信号具有相同的大小,插值方法包括但不限于平均,B样条,立方.... .

另一种解决方案是使用特征提取方法来使用最好的特征(最有特色),这次使它们固定大小,那些方法包括PCA,LDA等.

另一种解决方案是使用特征选择(通常在特征提取后),一种简单的方法来选择提供最佳精度的最佳特征.

这一切都是现在,如果没有那些为你工作,请与我联系.



2> f3lix..:

您通常会从数据中提取功能并将其提供给网络.不建议只取一些数据并将其提供给网络.在实践中,预处理和选择正确的功能将决定您的成功和神经网络的性能.不幸的是,恕我直言,它需要经验来培养一种感觉,这是一本书都无法学到的东西.

总结:"垃圾进,垃圾出"


那么您希望神经网络提取特征并将其提供给另一个网络进行分类/解释的情况如何?或者您希望网络从一组示例中学习语法.在这两种情况下,网络都需要处理可变长度的数据集.

3> Ivo Danihelk..:

一些问题可以通过递归神经网络来解决.例如,它有利于计算输入序列上的奇偶校验.

用于计算奇偶校验的递归神经网络将只有一个输入特征.随着时间的推移,可以将这些位送入其中.它的输出也反馈到隐藏层.这允许仅用两个隐藏单元来学习奇偶校验.

正常的前馈双层神经网络将需要2**sequence_length隐藏单元来表示奇偶校验.这种限制适用于仅有2层的任何架构(例如,SVM).


它更类似于神经网络,其中一些输出被馈送到下一个输入.随着时间的推移,不重要的历史将被遗忘.
推荐阅读
手机用户2402852387
这个屌丝很懒,什么也没留下!
DevBox开发工具箱 | 专业的在线开发工具网站    京公网安备 11010802040832号  |  京ICP备19059560号-6
Copyright © 1998 - 2020 DevBox.CN. All Rights Reserved devBox.cn 开发工具箱 版权所有