哪种神经网络类型更适合不同数量的数字输入

问题描述 投票:0回答:1

我面临着选择一个神经网络来处理不同数量的输入参数的问题。输入参数为数值(例如,float),输入参数的个数为 3 到 12。目标是创建一个能够正确处理不同数值而不扭曲结果的网络。 (最好使用 Keras)

目前,据我了解,有几种方法可以解决这个问题: 使用固定大小 10 并用零填充空值。但是,这是否是一种好的做法,是否会过度扭曲结果? Resize to a fixed size(大约 7),但这对数值有效吗? 使用 RNNs,但是 RNNs 主要用于文本和语音吗?它们也可以处理数字吗? 还有其他选择吗?哪些是最正确的?提前感谢任何答案或链接

keras deep-learning neural-network recurrent-neural-network perceptron
1个回答
0
投票

有几个神经网络选项可用于处理不同数量的数字输入。一些例子包括:

全连接网络(密集网络):这些网络非常灵活,可以处理任意数量的数字输入。只需调整输入层中的单元数以匹配输入的数量。

卷积网络:卷积网络最初设计用于处理图像,但也可用于数值数据。卷积层可用于从输入数据中提取特征,而不管输入的数量。

短路径网络(浅层网络):这些网络只有一两个隐藏层,这使得它们更容易训练并且计算速度更快。它们对于较小或不太复杂的数据集很有用。

长短期记忆网络:长短期记忆网络(LSTM)是一种循环网络(RNN),特别擅长处理数据序列,包括数字输入序列。它们可用于预测未来值或识别顺序数据中的模式。

Transformer Networks:这些网络最初设计用于处理自然语言,但可用于任何类型的顺序数据,包括数字数据。他们特别擅长处理长串数据。

关于输入参数个数不同的问题,可以采用用零填充空值然后在处理层调整模型忽略这些值的做法。但是,这可能会扭曲结果并且可能不是最佳选择。相反,您可以尝试使用可以处理不同长度输入的网络,例如 LSTM 网络。此外,您可以使用 PCA 或自动编码器等技术对数值进行归一化,使它们都在同一尺度上并降低维度,这有助于处理大量的数值输入。

© www.soinside.com 2019 - 2024. All rights reserved.