Home › Fóruns › Fórum Deep Learning com Python de A a Z: O Curso Completo › Erro com o Keras
- Este tópico contém 2 respostas, 2 vozes e foi atualizado pela última vez 1 ano, 6 meses atrás por
Fábio Spak.
- AutorPosts
- 26 de setembro de 2023 às 22:49 #42010
Boa noite, ao executar o seguinte código:
import pandas as pd
import numpy as np
#esse lib divide para teste
from sklearn.model_selection import train_test_split
#vamos importar um modelo sequencial
import keras
from keras.models import Sequential
#vamos usar camdas densas na rede neural, indica que cada neuronio é ligado em todos neuronios da camada seguinte, também conhecida como fully conect
from keras.layers import Dense
previsores = pd.read_csv(‘entradas_breast.csv’)
classe = pd.read_csv(‘saidas_breast.csv’)
#colocamos 25% para testes
previsores_treinamento, previsores_teste, classe_treinamento, classe_teste = train_test_split(previsores, classe, test_size = 0.25)classificador = Sequential()
# no keras não criamos a camada de entrada, começamos definindo a camada oculta
#colocamos 16 ( 30 de entrada +1/2, esta rede tem 30 colunas
#input_dim é a camada de entrada
classificador.add(Dense(units=16, activation=’relu’,kernel_initializer=’random_uniform’, input_dim=30))
#camada de saida
#usamos sigmoid e uma camada de saida pois ela devolve apenas 1 ou 0
classificador.add(Dense(units=1,activation=’sigmoid’))
#é aqui que vamos treinar
#adam é uma otimização do gradiente estocástico, este é o que melhor de adapta
#binary_crossentropy binário pois devolve apenas 0 ou 1
#se fossem mais classe de retorno usariamos category_crossentropy, mesma coisa para metricas
classificador.compile(optimizer=’adam’, loss=’binary_crossentropy’, metrics= [‘binary_accucary’])
#agora vamos treinar
#vai calcular o erro para 10 registros e depois recalcula os pesos, epochs indica qtas vezes vará o ajuste dos pesos
classificador.fit(previsores_treinamento, classe_treinamento, batch_size=10, epochs=100)Está retornando o seguinte erro logo na primeira época:
Epoch 1/100
Traceback (most recent call last):
File “D:\Mestrado\2022\IA\DL\Material DL\redes neurais artificiais\classificacao binaria\Breast_Can_Simples.py”, line 30, in <module>
classificador.fit(previsores_treinamento, classe_treinamento, batch_size=10, epochs=100)
File “D:\Mestrado\2022\IA\venv\lib\site-packages\keras\src\utils\traceback_utils.py”, line 70, in error_handler
raise e.with_traceback(filtered_tb) from None
File “C:\Users\GABRIEL\AppData\Local\Temp\__autograph_generated_filehy6rhmco.py”, line 15, in tf__train_function
retval_ = ag__.converted_call(ag__.ld(step_function), (ag__.ld(self), ag__.ld(iterator)), None, fscope)
TypeError: in user code:File “D:\Mestrado\2022\IA\venv\lib\site-packages\keras\src\engine\training.py”, line 1338, in train_function *
return step_function(self, iterator)
File “D:\Mestrado\2022\IA\venv\lib\site-packages\keras\src\engine\training.py”, line 1322, in step_function **
outputs = model.distribute_strategy.run(run_step, args=(data,))
File “D:\Mestrado\2022\IA\venv\lib\site-packages\keras\src\engine\training.py”, line 1303, in run_step **
outputs = model.train_step(data)
File “D:\Mestrado\2022\IA\venv\lib\site-packages\keras\src\engine\training.py”, line 1085, in train_step
return self.compute_metrics(x, y, y_pred, sample_weight)
File “D:\Mestrado\2022\IA\venv\lib\site-packages\keras\src\engine\training.py”, line 1179, in compute_metrics
self.compiled_metrics.update_state(y, y_pred, sample_weight)
File “D:\Mestrado\2022\IA\venv\lib\site-packages\keras\src\engine\compile_utils.py”, line 605, in update_state
metric_obj.update_state(y_t, y_p, sample_weight=mask)
File “D:\Mestrado\2022\IA\venv\lib\site-packages\keras\src\utils\metrics_utils.py”, line 77, in decorated
update_op = update_state_fn(*args, **kwargs)
File “D:\Mestrado\2022\IA\venv\lib\site-packages\keras\src\metrics\base_metric.py”, line 140, in update_state_fn
return ag_update_state(*args, **kwargs)
File “D:\Mestrado\2022\IA\venv\lib\site-packages\keras\src\metrics\base_metric.py”, line 723, in update_state **
matches = ag_fn(y_true, y_pred, **self._fn_kwargs)TypeError: ‘str’ object is not callable
Process finished with exit code 1
Não encontrei solução sobre.
Muito obrigado
26 de setembro de 2023 às 22:52 #42011Já achei o erro pessoal,
muito obrigado
28 de setembro de 2023 às 17:32 #42033Olá Gabriel, que bom que deu certo 🙂
Fabio
- AutorPosts
- Você deve fazer login para responder a este tópico.