Respostas no Fórum
- AutorPosts
Boa noite, espero que esteja bem.
Para o item acima poderiam em enviar um fonte atualizado? As demais pendências dos outros tópicos consegui resolver.
Fiz mais atualizações, da forma abaixo executou
import pandas as pd
import tensorflow as tf # atualizado: tensorflow==2.0.0-beta1
from tensorflow.keras.models import Sequential # atualizado: tensorflow==2.0.0-beta1
from tensorflow.keras.layers import Dense # atualizado: tensorflow==2.0.0-beta1
#from keras.utils import np_utils
from keras import utils#from keras.wrappers.scikit_learn import KerasClassifier
from scikeras.wrappers import KerasClassifier
from sklearn.model_selection import cross_val_score
from tensorflow.keras import backend as k # atualizado: tensorflow==2.0.0-beta1base = pd.read_csv(‘iris.csv’)
previsores = base.iloc[:, 0:4].values
classe = base.iloc[:, 4].values
from sklearn.preprocessing import LabelEncoder
labelencoder = LabelEncoder()
classe = labelencoder.fit_transform(classe)
classe_dummy = utils.to_categorical(classe)def criar_rede(): # atualizado: tensorflow==2.0.0-beta1
k.clear_session()
classificador = Sequential([
tf.keras.layers.Dense(units=4, activation = ‘relu’, input_dim=4),
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 classificadorclassificador = KerasClassifier(build_fn = criar_rede,
epochs = 1000,
batch_size = 10)
resultados = cross_val_score(estimator = classificador,
X = previsores, y = classe_dummy,
cv = 10, scoring = ‘accuracy’)
media = resultados.mean()
desvio = resultados.std()Olá, bom dia obrigado pelo retorno.
Sim, usei o fonte do drive.
errata:
de: build_fnpara: model
Me parece que existem parâmetros inválidos,executei o comando:
print(classificador.get_params().keys())
e tive como resultado:
dict_keys([‘model’,
‘build_fn’,
‘warm_start’,
‘random_state’,
‘optimizer’,
‘loss’,
‘metrics’,
‘batch_size’,
‘validation_batch_size’,
‘verbose’,
‘callbacks’,
‘validation_split’,
‘shuffle’,
‘run_eagerly’,
‘epochs’,
‘class_weight’])Com base nestes parâmetros válidos, reduzi do fonte anterior o que não estava na lista e o fonte ficou assim:
import pandas as pd
import tensorflow as tf
#from tensorflow.keras import models
#from tensorflow.keras import layers
from scikeras.wrappers import KerasClassifier
from sklearn.model_selection import cross_val_score
from tensorflow.keras import backend as k # atualizado: tensorflow==2.0.0-beta1
from tensorflow.keras.models import Sequential # atualizado: tensorflow==2.0.0-beta1
#para fazer o tunning pesquisando as melhores entradas
from sklearn.model_selection import GridSearchCVprevisores = pd.read_csv(‘entradas_breast.csv’)
classe = pd.read_csv(‘saidas_breast.csv’)def criarRede(optimizer,loss):
k.clear_session()
classificador = Sequential([
tf.keras.layers.Dense(units=16, activation = ‘relu’, kernel_initializer = ‘random_uniform’, input_dim=30),
tf.keras.layers.Dropout(0.2),
tf.keras.layers.Dense(units=16, activation = ‘relu’, kernel_initializer = ‘random_uniform’),
tf.keras.layers.Dropout(0.2),
tf.keras.layers.Dense(units=1, activation = ‘sigmoid’)])
classificador.compile(optimizer=optimizer, loss=’binary_crossentropy’, metrics=[‘binary_accuracy’])
return classificadorclassificador = KerasClassifier(build_fn = criarRede)
parametros = {‘batch_size’: [10, 30],
‘epochs’: [50, 100],
‘optimizer’: [‘adam’, ‘sgd’],
‘loss’: [‘binary_crossentropy’, ‘hinge’]}
grid_search = GridSearchCV(estimator = classificador,
param_grid = parametros,
scoring = ‘accuracy’,
cv = 5)grid_search = grid_search.fit(previsores, classe)
melhores_parametros = grid_search.best_params_
melhor_precisao = grid_search.best_score_porém agora temos o seguinte erro:
TypeError: criarRede() missing 2 required positional arguments: ‘optimizer’ and ‘loss’podem me enviar o fonte dessa que que esteja funcionando?
Muito obrigadoBoa noite, estou com o mesmo problema.
Mesmo usando o fonte dos downloads tem alguns itens que não funcionam mais, por exemplo a aula “Tuning (ajuste) dos parâmetros”.
Usando o fonte disponibilizado:import pandas as pd
from tensorflow.keras.models import Sequential # atualizado: tensorflow==2.0.0-beta1
import tensorflow as tf # atualizado: tensorflow==2.0.0-beta1
from tensorflow.keras.wrappers.scikit_learn import KerasClassifier
from sklearn.model_selection import GridSearchCV
from tensorflow.keras import backend as k # atualizado: tensorflow==2.0.0-beta1previsores = pd.read_csv(‘entradas_breast.csv’)
classe = pd.read_csv(‘saidas_breast.csv’)def criarRede(optimizer, loss, kernel_initializer, activation, neurons): # atualizado: tensorflow==2.0.0-beta1
k.clear_session()
classificador = Sequential([
tf.keras.layers.Dense(units=neurons, activation = activation, kernel_initializer = kernel_initializer, input_dim=30),
tf.keras.layers.Dropout(0.2),
tf.keras.layers.Dense(units=neurons, activation = activation, kernel_initializer = kernel_initializer),
tf.keras.layers.Dropout(0.2),
tf.keras.layers.Dense(units=1, activation = ‘sigmoid’)])
classificador.compile(optimizer = optimizer, loss = loss, metrics = [‘binary_accuracy’])
return classificadorclassificador = KerasClassifier(build_fn = criarRede)
parametros = {‘batch_size’: [10, 30],
‘epochs’: [50, 100],
‘optimizer’: [‘adam’, ‘sgd’],
‘loss’: [‘binary_crossentropy’, ‘hinge’],
‘kernel_initializer’: [‘random_uniform’, ‘normal’],
‘activation’: [‘relu’, ‘tanh’],
‘neurons’: [16, 8]}
grid_search = GridSearchCV(estimator = classificador,
param_grid = parametros,
scoring = ‘accuracy’,
cv = 5)
grid_search = grid_search.fit(previsores, classe)
melhores_parametros = grid_search.best_params_
melhor_precisao = grid_search.best_score_
Ocorre este erro:
Traceback (most recent call last):
File “D:\Mestrado\2022\IA\DL\Material DL\redes neurais artificiais\classificacao binaria\breast_cancer_tuning.py”, line 4, in <module>
from tensorflow.keras.wrappers.scikit_learn import KerasClassifier
ModuleNotFoundError: No module named ‘tensorflow.keras.wrappers’Alterei o fonte para:
import pandas as pd
import tensorflow as tf
#from tensorflow.keras import models
#from tensorflow.keras import layers
from scikeras.wrappers import KerasClassifier
from sklearn.model_selection import cross_val_score
from tensorflow.keras import backend as k # atualizado: tensorflow==2.0.0-beta1
from tensorflow.keras.models import Sequential # atualizado: tensorflow==2.0.0-beta1
#para fazer o tunning pesquisando as melhores entradas
from sklearn.model_selection import GridSearchCVprevisores = pd.read_csv(‘entradas_breast.csv’)
classe = pd.read_csv(‘saidas_breast.csv’)def criarRede(optimizer, loss, kernel_initializer, activation, neurons): # atualizado: tensorflow==2.0.0-beta1
k.clear_session()
classificador = Sequential([
tf.keras.layers.Dense(units=neurons, Activation = activation, kernel_initializer = kernel_initializer, input_dim=30),
tf.keras.layers.Dropout(0.2),
tf.keras.layers.Dense(units=neurons, Activation = activation, kernel_initializer = kernel_initializer),
tf.keras.layers.Dropout(0.2),
tf.keras.layers.Dense(units=1, activation = ‘sigmoid’)])
classificador.compile(optimizer = optimizer, loss = loss, metrics = [‘binary_accuracy’])
return classificadorclassificador = KerasClassifier(build_fn = criarRede)
parametros = {‘batch_size’: [10, 30],
‘epochs’: [50, 100],
‘optimizer’: [‘adam’, ‘sgd’],
‘loss’: [‘binary_crossentropy’, ‘hinge’],
‘kernel_initializer’: [‘random_uniform’, ‘normal’],
‘activation’: [‘relu’, ‘tanh’],
‘neurons’: [16, 8]}
grid_search = GridSearchCV(estimator = classificador,
param_grid = parametros,
scoring = ‘accuracy’,
cv = 5)
grid_search = grid_search.fit(previsores, classe)
melhores_parametros = grid_search.best_params_
melhor_precisao = grid_search.best_score_Agora tenho o erro:
ValueError: Invalid parameter activation for estimator KerasClassifier.
This issue can likely be resolved by setting this parameter in the KerasClassifier constructor:
KerasClassifier(activation=relu)
Check the list of available parameters withestimator.get_params().keys()
Já tenho todas as bibliotecas instaladas.
poderiam por favor me enviar um fonte que pode ser executado em 2023?
Muito obrigado.Já achei o erro pessoal,
muito obrigado
27 de setembro de 2022 às 20:34 em resposta a: Erro FFMPEG: tag 0x44495658/’XVID’ is not supported with codec id 12 and #36896*downgrade
27 de setembro de 2022 às 20:23 em resposta a: Erro FFMPEG: tag 0x44495658/’XVID’ is not supported with codec id 12 and #36895Boa noite, muito obrigado pelo retorno.
Infelizmente eu já havia tentado todas estas sugestões.
Qual a versão do seu open cv para eu testar o download?
23 de setembro de 2022 às 21:28 em resposta a: Erro FFMPEG: tag 0x44495658/’XVID’ is not supported with codec id 12 and #36871Fiz mais um teste e tentei capturar o formato que estou lendo do video gesture:
def decode_fourcc(cc):
return “”.join([chr((int(cc) >> 8 * i) & 0xFF) for i in range(4)])captura = cv2.VideoCapture(‘../content/gesture1.mp4’)
conectado , frame = captura.read()
print(frame.shape[1])
print(frame.shape[0])
codec = captura.get(cv2.CAP_PROP_FOURCC)
print(codec, decode_fourcc(codec))
828601953.0 <span style=”text-decoration: underline;”>avc1</span>23 de setembro de 2022 às 21:06 em resposta a: Erro FFMPEG: tag 0x44495658/’XVID’ is not supported with codec id 12 and #36870Encontrei este topico sobre :
“https://pythontechworld.com/issue/xingyizhou/centertrack/91”
Mas pelo que vi, eu envio os parâmetros de altura e largura:
captura = cv2.VideoCapture(‘../content/gesture1.mp4’)
conectado , frame = captura.read()
print(frame.shape[1]) # aqui saiu 808
print(frame.shape[0]) # aqui saiu 1080
resultado = ‘../content/gesture1_novo.mp4′
salvar_video = cv2.VideoWriter(resultado, cv2.VideoWriter_fourcc(*’mp4v’), 10 , (frame.shape[1], frame.shape[0]) )23 de setembro de 2022 às 20:57 em resposta a: Erro FFMPEG: tag 0x44495658/’XVID’ is not supported with codec id 12 and #36869Atualizei para a última versão agora:
4.6.0
Com xvid e XVID infelizmente da erro:
OpenCV: FFMPEG: tag 0x64697678/’xvid’ is not supported with codec id 12 and format ‘mp4 / MP4 (MPEG-4 Part 14)’
OpenCV: FFMPEG: fallback to use tag 0x7634706d/’mp4v’Com ‘mp4v’ ele agora gera porém com o tamanho de 258 bytes ( que é erro ), ai o vídeo não pode ser reproduzido
23 de setembro de 2022 às 20:49 em resposta a: Erro FFMPEG: tag 0x44495658/’XVID’ is not supported with codec id 12 and #36868Boa noite,
muito obrigado pelo retorno.
Usei o comando “print(cv2.__version__)” e tive como resultado : 4.5.5, pelo que notei é a penúltima versão do opencv.
As variáveis estão corretas. pois se eu coloco por exemplo uma extensão avi ele não da erros, porém o vídeo sai vazio. Infelizmente eu havia testado com o “mp4v” e também com outras extensões.
Qual sua versão do opencv ?
21 de setembro de 2022 às 09:29 em resposta a: Erro FFMPEG: tag 0x44495658/’XVID’ is not supported with codec id 12 and #36854Bom dia, acabei de realizar esta tentativa agora:
OpenCV: FFMPEG: tag 0x34504d46/’FMP4′ is not supported with codec id 12 and format ‘mp4 / MP4 (MPEG-4 Part 14)’ · Issue #2 · OpenBCI/OpenBCI_Experiment · GitHubnão deu erro, porém o vídeo de saída ficou com 258 bytes
- AutorPosts