¿Cómo funcionan las indicaciones negativas?

¿Cómo funcionan las indicaciones negativas?

Do not index
Do not index
canonical-url
Publish
Publish
Prepárate para descubrir el secreto definitivo para dominar la Difusión Estable: ¡el impulso negativo!
Olvídese de las máscaras complicadas con inpainting, con el prompt negativo sólo tiene que introducir su petición en texto. Algunos visuales sólo pueden generarse utilizando el prompt negativo.
En este artículo, te llevaré a una fascinante exploración con un ejemplo concreto de cómo utilizar el indicador negativo y, a continuación, te revelaré los secretos de su funcionamiento en Difusión Estable.

Un ejemplo sencillo

Sólo indicación positiva

Digamos que sólo queremos generar imágenes de un hombre. Empezaré usando Stable Diffusion v1.5 con esta indicación para un retrato fotográfico de un hombre.
Foto retrato de un hombre
Portrait photo of a man - Steps: 25, Sampler: DPM++ 2S a Karras, CFG scale: 7, Size: 512x704
Portrait photo of a man - Steps: 25, Sampler: DPM++ 2S a Karras, CFG scale: 7, Size: 512x704
Bueno, no es ninguna sorpresa, tenemos lo que esperábamos. Pero estos hombres pueden parecer un poco demasiado viejos y serios, así que vamos a intentar quitarles el bigote y darles un pequeño lavado de cara. Así que aquí está nuestro nuevo tema:
Foto retrato de un hombre sin bigote
notion image
¡Hola Houston, tenemos un problema! ¡Los bigotes son aún más grandes! ¿Qué está pasando?
más que probable que el problema se deba a que Difusión Estable no entiende el vínculo entre las palabras sin y bigote por tanto, entendido que la indicación incluye las palabras hombre Y bigote → Por tanto, crea imágenes con estos dos elementos presentes

Con la indicación negativa

¿Qué podemos hacer para crear hombres sin bigote?
La solución es utilizar el prompt negativo. Vamos a utilizar nuestro primer prompt, pero añadiendo un prompt negativo.
Pregunte a
Foto retrato de un hombre
Aviso negativo
Bigote
notion image
Esta vez es bueno: ¡por fin hemos generado fotos de hombres sin bigote!
👍
Acabamos de ver en acción el principio de la solicitud negativa: si hay algo que no quieres ver, indícalo en la solicitud negativa

Entender cómo funcionan los negativos inmediatos

¿Qué es un aviso negativo?

Probablemente ya haya oído hablar del condicionamiento texto-imagen, que consiste en convertir las indicaciones (frases) en vectores de incrustación para alimentar un predictor de ruido llamado U-Net. Así es como funciona la Difusión Estable.
Mai, de hecho, hay dos conjuntos de vectores de incrustación para el acondicionador texto-imagen: uno para la indicación positiva y otro para la negativa (rem: los dos tipos de indicación tienen 77 tokens cada uno, y puedes usarlos por separado o juntos).
El indicador negativo se utiliza en un algoritmo llamado muestreador, que se ocupa de la difusión inversa. Para comprender mejor cómo funciona el indicador negativo, es importante entender cómo funciona el muestreo sin él.

Muestreo sin indicador negativo

Este tipo de muestreo comienza revolviendo un poco la imagen con un muestreo condicional que se rige por la indicación de texto. A continuación, el algoritmo vuelve a revolver la imagen con un muestreo incondicional. Esto significa que el algoritmo genera imágenes aleatorias sin utilizar una indicación. El resultado final es la diferencia entre las muestras condicional e incondicional.
Este proceso se repite en cada etapa de muestreo para lograr el resultado deseado, de modo que en cada etapa el resultado se parezca un poco más a una indicación positiva y un poco menos a una indicación negativa

Muestreo con indicador negativo

En este caso, el muestreo incondicional se modifica para utilizar una indicación negativa en lugar de una indicación vacía. En lugar de dirigir la difusión n "agtiva hacia imágenes aleatorias, la indicación negativa dirige la difusión lejos de las imágenes asociadas a ella.
El estímulo positivo dirige la difusión hacia las imágenes asociadas, mientras que el estímulo negativo dirige la difusión lejos de ellas. Tenga en cuenta que la difusión se produce en el espacio latente, no en las imágenes. Las imágenes sólo se utilizan para ilustrar el proceso.

Espacio latente

Imaginemos un mundo en el que podemos pedir a una máquina que cree imágenes por nosotros. Es lo que llamamos espacio latente.
notion image
Cuando pida a Stable Diffusion que cree para usted una "Foto retrato de un hombre", elegirá imágenes de hombres con y sin bigote de un gran directorio de imágenes llamado "espacio latente". Esto significa que debe esperar ver imágenes de hombres con y sin bigote.
 
Pero, ¿y si sólo quiere ver imágenes de hombres sin bigote? Basta con añadir una "indicación negativa" que pida a la máquina que no incluya "hombres con bigote". La máquina ignorará entonces toda la parte de "hombres con bigote" y sólo generará imágenes de hombres sin bigote.
De este modo, la solicitud negativa le permite pedir a la máquina que cree exactamente lo que desea ver.

Conclusión

Espero que este artículo le haya proporcionado una buena visión general de lo que es el indicador negativo y de cómo funciona.
La indicación negativa elimina objetos o estilos de un modo que no sería posible jugando sólo con la indicación positiva. Funciona secuestrando el muestreo incondicional en cada paso de muestreo, de modo que la difusión se desvía de lo descrito en la indicación negativa.