AN
Size: a a a
AN
A
AN
AN
VC
UT
AI
DD
AI
D•
AN
A
AN
AN
ValueError: cannot copy sequence with size 7 to array axis with dimension 1
— вылетает на этапе подготовки данных. Т.е. оно, как я понимаю, ещё до модели дойти не успевает.I
AN
AN
class StoreItemModel(object):Ну и непосредственно обучение
_model: Model
_history: object
def __init__(self):
self._model = Sequential([
# Shape [batch, time, features] => [batch, time, lstm_units]
LSTM(144, return_sequences=True),
# Shape => [batch, time, features]
Dense(units=1)
])
self._model.compile(optimizer='adam', loss='mse', metrics=['accuracy'])
def train_model(self,
train_x: Series, train_y: Series,
test_x: Series, test_y: Series,
window_size: int = 30,
epochs: int = 1, batch_size: int = 32,
):
train_gen = TimeseriesGenerator(data=train_x, targets=train_y, length=window_size, batch_size=batch_size)
test_gen = TimeseriesGenerator(data=test_x, targets=test_y, length=window_size, batch_size=batch_size)
self._history = self._model.fit(x=train_gen,
epochs=epochs, verbose=2, batch_size=batch_size,
validation_data=test_gen)
return self._history
windows_size = 7
test_size = 0.1
x_train, x_test, y_train, y_test = train_test_split(df[['date']], df[[6]],
test_size=test_size,
shuffle=False)
model = StoreItemModel()
model.train_model(train_x=x_train, train_y=y_train,
test_x=x_test, test_y=y_test,
window_size=windows_size,
epochs=100, batch_size=32)
result = model.predict(x_test)
AN
T
I