2017-10-05 7 views
0
from keras.models import Sequential 
from keras.layers import Dense 
from keras.wrappers.scikit_learn import KerasClassifier 
from sklearn.model_selection import StratifiedKFold 
from sklearn.model_selection import cross_val_score 
import numpy 

#Function to create model, required for KerasClassifier 
def create_model(): 
    classifier = Sequential() 
    classifier.add(Dense(12, input_dim=8, activation='relu')) 
    classifier.add(Dense(8, activation='relu')) 
    classifier.add(Dense(1, activation='sigmoid')) 
    classifier.compile(optimizer = 'adam',loss="mean_squared_error") 
    return model 

seed = 7 
numpy.random.seed(seed) 

model = KerasClassifier(build_fn=create_model, epochs=100, batch_size=32, verbose=0) 
kfold = StratifiedKFold(n_splits=10, shuffle=True, random_state=seed) 
results = cross_val_score(model, X_train, y_train, cv=kfold) 
print(results.mean()) 

AttributeError: objet 'KerasClassifier' n'a pas d'attribut 'perte'Comment appliquer K pli validation croisée sur la variable type de cible de régression

I am getting an error as the loss does not belong to kerasClassifier and I tried KerasRegressor also still same error I am getting.solve my issue.

Répondre

0

Dans create_model() la fonction que vous devez retourner « classificateur ', pas une variable' modèle 'globale.

+0

Oui, je l'ai corrigé mais montre toujours une erreur –

+0

Cette erreur est-elle la même que 'AttributeError: l'objet' KerasClassifier 'n'a pas d'attribut' perte ''? Si vous avez une erreur différente, vous pouvez accepter cette réponse et poser une autre question avec une nouvelle erreur à SO. –