使用Python的多目标(大型)神经网络回归

时间:2019-11-21 13:28:13

标签: tensorflow neural-network regression

我的情况是我有一个excel文件,其中有747个节点(作为输入),每个节点都有一个值(想象中的747列带有浮点数),并且我的输出为741个值/列,又有一个浮点数。这些基本上是地质模拟的输入和输出。因此,一行具有747(input)+741(output)= 1488 floats,这是一个数据集(来自一次仿真)。我有4个这样的数据集(行)来训练神经网络,以便在3个测试数据集(747列)上对其进行测试时,我得到741列的输出。这只是一个简单的过程,可以在进一步修改之前让神经网络的骨架运转。

我遇到了NYCTaxi(https://github.com/zeahmed/DeepLearningWithMLdotNet/tree/master/NYCTaxiMultiOutputRegression)的多目标回归示例,但似乎可以绕开它。

这是训练集(输入直到并包括列“ ABS”,其余输出): https://docs.google.com/spreadsheets/d/12TKVbGExt9KcK5RQKTexrToVo8qA5YfeItSaa7E2QdU/edit?usp=sharing

这是测试集: https://docs.google.com/spreadsheets/d/1-RjyZsdguucCSOr9QTdTp2ehJBqWCr5yz1-aRjQ_4zo/edit?usp=sharing

这是测试输出(用于验证):https://docs.google.com/spreadsheets/d/10O_6711CEpJ4DN1w-kCmW01NikjFVZTDmNRuqO3U_6A/edit?usp=sharing

任何指导/提示将不胜感激。 TIA!

1 个答案:

答案 0 :(得分:1)

我们可以使用AutoEncoder来完成此任务。 AutoEncoder接收数据,将其压缩为潜在表示。现在,此表示向量用于构造输出变量。

因此,您可以将747维向量输入模型,并生成另一个747维向量作为输出。经过适当的训练,该模型将能够为给定的一组输入生成目标变量。