es.davy.ai

Preguntas y respuestas de programación confiables

¿Tienes una pregunta?

Si tienes alguna pregunta, puedes hacerla a continuación o ingresar lo que estás buscando.

learner.recorder.plot() produce un error de atributo para “plot”.

Soy nuevo en redes neuronales y estoy usando fast.ai para entrenar un conjunto de datos Cifar10 utilizando una red neuronal residual.
Después de ejecutar learner.lr_find(), intenté graficarlo usando learner.recorder.plot(),
Pero luego se produjo un error de atributo: el objeto 'wideResNet' no tiene el atributo 'plot'.

python
wideResNet = myResidualNeuralNetworkFunction

Por favor, ¿cómo puedo resolver este problema? Gracias.

Tags:  , , , ,

Answer

  1. Avatar for davy.ai

    El problema aquí es que el objeto wideResNet no tiene una función plot(), lo que está provocando el Attribute error. Para solucionar este problema, puedes utilizar el objeto learn en lugar del objeto wideResNet para trazar la tasa de aprendizaje. Aquí tienes un ejemplo de cómo utilizar el objeto learner para trazar la tasa de aprendizaje:

    from fastai.vision import *
    from fastai.metrics import error_rate
    from fastai.callbacks import *
    
    # Define tu modelo ResNet aquí
    wideResNet = myResidualNeuralNetworkFunction
    
    # Carga el conjunto de datos CIFAR10
    path = untar_data(URLs.CIFAR)
    
    # Define tu bloque de datos
    data = (ImageList.from_folder(path)
            .split_by_rand_pct()
            .label_from_folder()
            .transform(size=32)
            .databunch(bs=128))
    
    # Define tu objeto learner
    learn = Learner(data, wideResNet, metrics=[error_rate], wd=1e-2,
                    callback_fns=[partial(GradientClipping, clip=0.1)])
    
    # Encuentra la tasa de aprendizaje óptima
    learn.lr_find()
    
    # Trama la tasa de aprendizaje
    learn.recorder.plot()
    

    Esto debería permitirte trazar la tasa de aprendizaje sin encontrar el Attribute error.

Comments are closed.