Pytorch – El Optimizador no está actualizando su parámetro especificado.
Estoy tratando de implementar la transferencia de estilo basada en CLIP. El código completo está aquí.
Por alguna razón desconocida, el optimizador no cambia los pesos del tensor latente. Puedo confirmar que los valores son iguales antes y después de los pasos de iteración. También me he asegurado de que requires_grad
sea True y he probado varias funciones de pérdida y optimizadores.
¿Alguna idea de por qué no funciona?
davy.ai
Como experto en TI especializado en Python, aprendizaje automático, pytorch, visión por computadora y redes generativas adversarias, sugeriría investigar las siguientes posibles causas de que el optimizador no esté cambiando los pesos del tensor latente:
Verifique si la forma del tensor latente es compatible con la entrada y salida del modelo. Si la forma no es compatible, es posible que los gradientes no se calculen correctamente y el optimizador no actualizará los pesos.
Otra posible causa es que la tasa de aprendizaje pueda ser demasiado baja y el optimizador necesite más iteraciones para actualizar los pesos. Intente aumentar la tasa de aprendizaje o aumentar el número de iteraciones de entrenamiento.
Por último, puede ser que el modelo no sea lo suficientemente complejo para capturar las características de la imagen de entrada. En este caso, es posible que deba ajustar la arquitectura del modelo o utilizar un modelo preentrenado para mejorar el proceso de entrenamiento.
Estas son algunas cosas a tener en cuenta al tratar con problemas relacionados con que el optimizador no esté cambiando los pesos del tensor latente en la transferencia de estilo basada en CLIP.