Closed william-yuan closed 3 years ago
Welcome to Talos community! Thanks so much for creating your first issue :)
same issue exactly.
Use this instead:
from tensorflow.keras.models import Sequential
from tensorflow.keras.layers import Dropout, Dense
%matplotlib inline
import sys
sys.path.insert(0, '/Users/mikko/Documents/GitHub/talos')
import talos
# then we load the dataset
x, y = talos.templates.datasets.breast_cancer()
# and normalize every feature to mean 0, std 1
x = talos.utils.rescale_meanzero(x)
# first we have to make sure to input data and params into the function
def breast_cancer_model(x_train, y_train, x_val, y_val, params):
model = Sequential()
model.add(Dense(params['first_neuron'], input_dim=x_train.shape[1],
activation=params['activation'],
kernel_initializer=params['kernel_initializer']))
model.add(Dropout(params['dropout']))
model.add(Dense(1, activation=params['last_activation'],
kernel_initializer=params['kernel_initializer']))
model.compile(loss=params['losses'],
optimizer=params['optimizer'],
metrics=['acc', talos.utils.metrics.f1score])
history = model.fit(x_train, y_train,
validation_data=(x_val, y_val),
batch_size=params['batch_size'],
epochs=params['epochs'],
verbose=0)
return history, model
# then we can go ahead and set the parameter space
p = {'first_neuron':[9,10,11],
'hidden_layers':[0, 1, 2],
'batch_size': [30],
'epochs': [100],
'dropout': [0],
'kernel_initializer': ['uniform','normal'],
'optimizer': ['Nadam', 'Adam'],
'losses': ['binary_crossentropy'],
'activation':['relu', 'elu'],
'last_activation': ['sigmoid']}
# and run the experiment
t = talos.Scan(x=x,
y=y,
model=breast_cancer_model,
params=p,
experiment_name='breast_cancer',
round_limit=10)
Closing here. Feel free to open new issue if anything.
Sorry. The same issue persists. Here is my function, parameter space and experiment error. have you tested talos on the latest version of jupyter notebook?
def talos_model(x_train, y_train, x_val, y_val, params):
model = Sequential()
model.add(LSTM(params['first_neuron'], input_shape=(X_train_seq.shape[1], X_train_seq.shape[2]),
kernel_initializer=params['kernel_initializer']))
model.add(Dropout(params['dropout']))
model.add(Dense(params['second_neuron'], activation=params['last_activation'],kernel_initializer=params['kernel_initializer']))
model.add(Dropout(params['dropout']))
model.add(Dense(params['third_neuron'], activation=params['last_activation'],kernel_initializer=params['kernel_initializer']))
model.add(Dense(1, activation=params['last_activation'],kernel_initializer=params['kernel_initializer']))
model.compile(loss='binary_crossentropy', optimizer='adam', metrics=['acc', talos.utils.metrics.f1score])
history = model.fit(X_train_seq, y_train_seq, validation_data=[X_test_seq, y_test_seq], batch_size=params['batch_size'],
callbacks=[talos.utils.live()], epochs=params['epochs'], verbose=0, shuffle=False)
return history, model
p = {'first_neuron':[20,30,50], 'second_neuron':[6,8,10], 'third_neuron':[2,4], 'hidden_layers':[2,3], 'batch_size': [31,45,60], 'epochs': [110,130,170], 'dropout': [0.1,0.3], 'kernel_initializer': ['normal'], 'activation':['relu', 'elu'], 'last_activation': ['sigmoid']}
t = talos.Scan(x=X_train_seq,y=y_train_seq,model=talos_model, params=p, experiment_name='talos_test', round_limit=10)
ERROR:
KeyError Traceback (most recent call last)
@mikkokotila Sorry. The same issue persists. Here is my function, parameter space and experiment error. have you tested talos on the latest version of jupyter notebook?
def talos_model(x_train, y_train, x_val, y_val, params):
model = Sequential()
model.add(LSTM(params['first_neuron'], input_shape=(X_train_seq.shape[1], X_train_seq.shape[2]),
kernel_initializer=params['kernel_initializer']))
model.add(Dropout(params['dropout']))
model.add(Dense(params['second_neuron'], activation=params['last_activation'],kernel_initializer=params['kernel_initializer']))
model.add(Dropout(params['dropout']))
model.add(Dense(params['third_neuron'], activation=params['last_activation'],kernel_initializer=params['kernel_initializer']))
model.add(Dense(1, activation=params['last_activation'],kernel_initializer=params['kernel_initializer']))
model.compile(loss='binary_crossentropy', optimizer='adam', metrics=['acc', talos.utils.metrics.f1score])
history = model.fit(X_train_seq, y_train_seq, validation_data=[X_test_seq, y_test_seq], batch_size=params['batch_size'],
callbacks=[talos.utils.live()], epochs=params['epochs'], verbose=0, shuffle=False)
return history, model
p = {'first_neuron':[20,30,50], 'second_neuron':[6,8,10], 'third_neuron':[2,4], 'hidden_layers':[2,3], 'batch_size': [31,45,60], 'epochs': [110,130,170], 'dropout': [0.1,0.3], 'kernel_initializer': ['normal'],
'activation':['relu', 'elu'],
'last_activation': ['sigmoid']}
t = talos.Scan(x=X_train_seq,y=y_train_seq,model=talos_model, params=p, experiment_name='talos_test', round_limit=10)
ERROR:
KeyError Traceback (most recent call last)
I'm having this same issue with KeyError: metrics. Does anyone have solved this problem yet?
I'm having this same issue with KeyError: metrics. Does anyone have solved this problem yet?
did you solve it?
talos.version = 1.0.0 tf.version = 2.2.0
The concise demo fails with 'KeyError: 'metrics.' The following code:
...results in the following: