从多个数值变量中预测一个数值变量,如何选择合适的结构?

数据挖掘 神经网络 回归 火炬
2022-03-10 19:47:17

我需要从 8 个数值变量的值中估计一个数值变量的值

y = f(x_1, ..., x_8).

我有一个历史数据集,我可以在其中将数千个y值与相应的 相关联x,随着时间的推移可能会增长到数百万条记录。

当然,我不知道 和 之间的关系xy当然我知道它不是线性的x(我猜是y二次依赖于某些xs),而且原则上,这种关系可能根本没有解析表达式。

由于这些原因,我猜想用神经网络来解决问题,但我对这个主题很陌生,所以我试图找出(很少成功)哪个模型应该适合我的问题,即有多少隐藏层选择和每层有多少个神经元?我应该在层之间放置 ReLU 或其他函数吗?

当然,我不仅对解决这种特殊情况感兴趣,而且对了解可能的选择标准感兴趣!

我也会对此感兴趣:如果我知道这y可能取决于诸如此类的组合或功能,x_i那么y = f(x_1 - x_2, x_3**2, ..., x_8)我应该直接将这些猜测作为输入在 net 或 plain x_8s 中吗?

如果它在任何方面有用,我对 python 非常熟悉,我想用 PyTorch 实现这个解决方案,以获取我个人学习的好处。模型类结构的提示将不胜感激。

谢谢

1个回答

你有多少数据?这是一个不需要使用神经网络的回归问题,您可以使用更简单的算法(SVM、线性回归、基于树的回归器)来解决这个问题(我假设您没有数百万行数据) . 与输入一样,您可以使用数字变量,也可以x1 to x8根据与y更相关的变量创建一些其他变量。算法的任务是遍历您的数据并提出一个为您的X提供y的函数。