使用Keras预测未来价值

时间:2019-06-06 17:35:32

标签: python tensorflow keras

我对创建神经网络非常陌生,我正在尝试在python中使用Keras来创建一个模型,该模型将根据前约100个输入来预测序列。

我正在使用11x10000数组预测单个输出值,并且我创建了一个非常适合该回归的NN。但是,我想创建另一个NN,它将预测回归NN的输入。

我有一个非常大的数据集可用于训练,我试图使用数组的前几个输入来预测一个11x10000数组。

我可以用它来预测当前时间步的预期值,但是我希望它可以基于当前和近期值来预测将来的值。

以下是一些代码:

names = getNames()
test = getNames()

for index in range(len(names)):
        print(index)
        X, Y = getData(names, index, False)
        X_test, Y_test = getData(test, index, True)

        NN = makeNN(X,Y, X_test, X_test)
def getModel():
    keras.backend.clear_session()
    model = Sequential()
    model.add(Dense(100, input_dim=11, kernel_initializer='normal', activation='relu'))
    model.add(Dense(10, init='uniform', activation='relu'))
    model.add(Dense(11, init='uniform', activation='relu'))

    model.compile(loss='mean_squared_error', optimizer='adam')

    return model
def makeNN(X, Y, X_test, Y_test):
    try:
        model = keras.models.load_model('./trajSweepNNVacc.h5')
        print("previous model loaded")
    except:
        model = getModel()
        print("new model created")


    X_train = X[0:]

    print('Training -----------')

    model.fit(X_train, X_train, epochs=2)

    print('\nTesting ------------')
    cost = model.evaluate(X_test, Y_test)
    print('test cost:', cost)
    W, b = model.layers[0].get_weights()


    model.save('trajSweepNNVacc.h5')
    return model

我想让它预测未来的10000个值,但是目前我只能让它预测一个当前值

0 个答案:

没有答案