Home › Fóruns › Fórum Deep Learning com Python de A a Z: O Curso Completo › Validação cruzada com erro, base de dados Iris
Marcado: Validação cruzada
- Este tópico contém 3 respostas, 3 vozes e foi atualizado pela última vez 10 meses, 3 semanas atrás por
Jones Granatyr.
- AutorPosts
- 17 de junho de 2024 às 20:48 #45443
Boa noite pessoal, na aula de validação cruzada com a base de dados Iris; estou recebendo esse erro:
If not using the
build_fn
param, you must implement
_keras_build_fn
Por hora, tomei a iniciativa de alterar todos os parametros adicionando o “model_parametro” tendo em vista o pequeno problema que enfrentei no módulo passado, mas nesse caso não resolveu, poderiam me auxiliar por gentileza? Obrigado pessoal!
18 de junho de 2024 às 12:01 #45446Oi Samuel,
Nós estamos trabalhando na atualização desse curso, nossa recomendação é sempre usar versões mais antigas das bibliotecas para conseguir acompanhar os cursos, mas neste caso vou te adiantar o código mais atualizado abaixo:
!pip install scikeras import pandas as pd import tensorflow as tf import sklearn import scikeras from scikeras.wrappers import KerasClassifier from sklearn.preprocessing import LabelEncoder from tensorflow.keras import utils as np_utils from tensorflow.keras import backend as k from tensorflow.keras.models import Sequential from sklearn.model_selection import cross_val_score base = pd.read_csv('iris.csv') previsores = base.iloc[:, 0:4].values classe = base.iloc[:, 4].values labelencoder = LabelEncoder() classe = labelencoder.fit_transform(classe) classe_dummy = np_utils.to_categorical(classe) def criar_rede(): k.clear_session() classificador = Sequential([ tf.keras.layers.InputLayer(shape=(4,)), tf.keras.layers.Dense(units=4, activation='relu'), tf.keras.layers.Dense(units=4, activation='relu'), tf.keras.layers.Dense(units=3, activation='softmax')]) classificador.compile(optimizer='adam', loss='categorical_crossentropy', metrics=['categorical_accuracy']) return classificador classificador = KerasClassifier(model=criar_rede, epochs=250, batch_size=10) resultados = cross_val_score(estimator=classificador, X=previsores, y=classe_dummy, cv=10, scoring='accuracy') resultados media = resultados.mean() print(media) desvio = resultados.std() print(desvio)
18 de junho de 2024 às 15:07 #45447Boa tarde Denny, entendido! Funcinou certinho aqui. Muito obrigado.
19 de junho de 2024 às 10:13 #45453Que bom que deu certo!
- AutorPosts
- Você deve fazer login para responder a este tópico.