При работе с keras выдает ошибку: ValueError: None values not supported
Столкнулся со странной проблемой в keras. При работе с ИНС, которая ранее была работоспособна, при тех же данных python стал выдавать ошибку. Код не менялся ранее, однако, сейчас не работает. Версии tensorflow:2.1.0 keras:2.3.1
Код:
import pandas as pd
import numpy
import numpy as np
import keras as kr
import tensorflow as tn
from pathlib import Path
from sklearn.model_selection import train_test_split
from sklearn.preprocessing import StandardScaler
from keras import Sequential
from keras.layers import *
from keras.regularizers import l2, l1
from keras.callbacks import EarlyStopping, ModelCheckpoint
from keras.models import save_model, load_model
from keras import regularizers
from keras import optimizers
import matplotlib as mpl
numpy.random.seed(42)
def get_data(path, test_size=0.3):
data = pd.concat([pd.read_csv(f, header=None) for f in Path(path).glob('*.csv')],
ignore_index=True).values
scaler = StandardScaler()
x, y = scaler.fit_transform(data[:, 1:]), data[:, [0]]
return train_test_split(x, y, test_size=test_size)
path = r'D:\path'
x_train, x_test, y_train, y_test = \
get_data(path, test_size=0.15)
model_fn = str(Path(path) / 'model.h5')
early_stop = EarlyStopping(monitor='val_mean_squared_error', min_delta=0.01,
patience=20, verbose=1, mode='auto')
chkpt = ModelCheckpoint(model_fn,
monitor='val_mean_squared_error',
verbose=1,
save_best_only=True,
mode='auto')
callbacks = [early_stop, chkpt]
model = Sequential()
model.add(Dense(100, input_dim=39999, activation="relu",kernel_regularizer=regularizers.l2(0.1)))
model.add(Dropout(0.1))
model.add(BatchNormalization())
model.add(Dense(150, input_dim=39999, activation="relu",kernel_regularizer=regularizers.l2(0.2)))
model.add(Dropout(0.1))
model.add(BatchNormalization())
model.add(Dense(120, input_dim=39999, activation="relu",kernel_regularizer=regularizers.l2(0.2)))
model.add(Dropout(0.1))
model.add(BatchNormalization())
model.add(Dense(20, input_dim=39999, activation="relu",kernel_regularizer=regularizers.l2(0.1)))
model.add(BatchNormalization())
model.add(Dense(1))
#
Adelta = optimizers.Adadelta(lr=2.5, rho=0, epsilon=None, decay=0.0)
model.compile( optimizer=Adelta, loss="mse", metrics=['mae','mse'])
history = model.fit(x_train, y_train, epochs=60, batch_size=30,
verbose=1,validation_data=(x_test, y_test),
callbacks=callbacks)
Текст ошибки:
ValueError Traceback (most recent call last)
<ipython-input-8-6b227647f07b> in <module>
1 history = model.fit(x_train, y_train, epochs=60, batch_size=30,
2 verbose=1,validation_data=(x_test, y_test),
----> 3 callbacks=callbacks)
> *Здесь еще полотно текста с отссылками на tensorflow*
>ValueError: None values not supported.
Ошибка возникает когда я запускаю обучение сети. Ссылка на фрагмент данных для воспроизведения ошибки https://yadi.sk/d/EuvIYiBZjSYNMg