Open Glory85 opened 3 years ago
Una temporada seria suficiente. Una variacion del proyecto sería un generador, es decir, dadas las dos primeras frases de un dialogo, que continue el dialogo, luego vemos
Hola Alberto, he estado mirando los dos links que me mandaste. El tema es que en ninguno de los dos parece que lo que se entrene sea un diálogo.
En el de las recetas alemanas es más "completar el texto" y el otro es más un diálogo con la máquina misma. Guiándome por el segundo, he intentado de alguna forma crear un torch.Tensor alimentándome de los diálogos de Ross (para poder entrenar el modelo) - No sé si es correcto. He tenido que crear un excel adaptado, ya que entiendo que para que el modelo funcione, el diálogo tiene que ser: Ross --> Rachel --> Ross: No puede ser Ross --> Ross --> Rachel --> Ross (a veces hay dos líneas seguidas de la misma persona) Y además entiendo que la primera línea de todo el diálogo tiene que ser de un personaje que no sea Ross (lo que sería el input) En Github he subido el excel que he utilizado "script_ross".
No acabo de entender de donde puede venir este error. En principio la "max_length" no afecta, si que hay un "index out of range" pero no entiendo de donde viene...
Te paso el link a mi doc de colab... a ver si mañana por favor lo podemos ver https://colab.research.google.com/drive/15NmiDMwQOOwKYYeepdx1o8gnDqVqeKXr?usp=sharing
HE copiado en el notebook los tres casos, para que veas a qué me refiero.
Gracias!
puedes usar el DialoGPT directamente (es lo que estas haciendo, o hacer un fine-tuning, es decir un segundo entrenamiento con tus dialogos de friends
aqui tienes dos ejemplos de este segundo escenario
https://nathancooper.io/i-am-a-nerd/chatbot/deep-learning/gpt2/2020/05/12/chatbot-part-1.html https://towardsdatascience.com/make-your-own-rick-sanchez-bot-with-transformers-and-dialogpt-fine-tuning-f85e6d1f4e30
usando un enfoque un poco antiguo
el nuevo enfoque seria usar un Trainer() como viene en este ejemplo
Hola Alberto, estuve intentando hacer lo del transformador (tb lo probé con el código de Julia), y la Accuracy, si hacia una prueba con solo 2 personajes era de un 60%, los resultados eran bastante malos. Realmente creo que es imposible predecir quién ha dicho qué con un buen resultado... y no sé si vale la pena seguir intentando esto. Ahora para cambiar de rumbo estoy intentando "plot" las conversaciones entre los diferentes personajes (conversaciones de 2), conversaciones entre los personajes principales y alguno más (que ha aparecido bastante). El problema es que en el dataset aparece quien habla pero no con quien hablan, así que lo estoy haciendo de forma manual con excel porqué realmente me tengo que leer el diálogo. Y me está llevando mucho tiempo... No creo que pueda hacerlo de todo el dataset. De momento lo he hecho de los primeros 24 capítulos (primera temporada). He mantenido solo las conversaciones entre: Rachel, Ross, Monica, Chandler, Joey, Phoebe, Mike, Richard, Janice, Charlie, Carol, Emily . He intentado representar (de momento de forma bastante manual) las conversaciones entre ellos y la idea tb es contar el las palabras o conjunto de palabras más dichas entre las diferentes "parejas", el tema es que esto de machine learning no tiene nada, y la visualización de momento no es la mejor. En todo caso te dejo el issue y el martes si puedes comentamos