Les IA génératives réduisent les stéréotypes à leur version la plus cliché

Les IA génératives réduisent les stéréotypes à leur version la plus cliché

Les IA génératives réduisent les stéréotypes à leur version la plus cliché

En juillet, Buzzfeed publiait un article contenant 195 images produites par Midjourney et censée représenter la poupée Barbie stéréotypique de chaque pays du monde.

Parmi les Barbie Afghanistan, Barbie Albanie, Barbie Algérie et les autres, plusieurs résultats présentaient de vrais problèmes : les représentations censées correspondre à la Thaïlande, à Singapour et aux Philippines avaient les cheveux blonds, Barbie Allemagne portait des vêtements militaires, Barbie Soudan du Sud était armée…

Si l’article a fini par être supprimé, il a malencontreusement illustré toute une série de biais et de stéréotypes qui peuplent les bases d’images servant à l’entraînement de systèmes génératifs comme Midjourney, Dall-E ou Stable Diffusion.

Pour avoir une idée plus précise du phénomène, le média Rest of World a donc réalisé ses propres tests. Pour chaque requête combinant un élément (une personne, une maison, un plat) et une nationalité, l’équipe a généré 100 images, récoltant un total de 3 000 résultat.

Que ce soit pour créer des images d’habitants de divers pays du monde, ou de rues des villes supposées de ces mêmes pays, Rest of World constate une tendance marquée des modèles de génération d’image à produire des stéréotypes très réducteurs.

« Une personne indienne », par exemple, renvoie quasiment toujours un vieil homme avec une barbe et un turban. « Une personne mexicaine », un homme, plutôt âgé aussi, avec un sombrero. Les supposées « rues de New Delhi » sont représentées pleines de détritus, les « plats indonésiens », toujours servis sur des feuilles de bananier.

Pour le directeur exécutif de l’AI Now Institute Amba Kak, ce que font les machines consiste fondamentalement à « aplatir des descriptions, par exemple, d'une "personne indienne" ou d'une "maison nigériane" en stéréotypes spécifiques susceptibles d'être perçus de manière négative ». Ils effacent toute la complexité et l’hétérogénéité des cultures concernées, ajoute de son côté la chercheuse en éthique de l’IA Sasha Luccioni.

Le problème n’est pas seulement interne aux pays concernés, il est aussi international. Une étude de l’Indian Institute of Science montre par exemple que demander la représentation d’ « un drapeau » à un modèle génératif tend à produire comme résultat… un drapeau américain.

Commentaires (46)


Et heureusement qu’il existe énormément de LoRA pour compenser les limitations des modèles de base.



Pour moi il ne faut pas sombrer dans des constats unilatéraux comme “l’IA fait des clichés stéréotypes”, elle fait ce qu’elle a appris. Si on entraîne un modèle de génération d’image uniquement sur des samples de Hulk, il ne va produire que des messieurs tout verts qui sont pas contents. Y’a rien de magique là dedans, que de la statistique.



Un exemple plus réaliste : une bonne partie des gros modèles qu’on trouve sur Civitai sont d’origine asiatique. Sans contextualisation particulière, il aura de fortes chances de produire des personnes de type asiatiques. Perso lorsque j’utilise un modèle pour générer un personnage en ayant en tête son ethnie, je la spécifie ainsi que le contexte attendu. Et si ça me plait pas, j’ajoute quelques LoRA (bon en ce moment avec SDXL je peux pas, faut que je booste la RAM… par contre avec SD1 ça va).



Après, entraîner un modèle pour qu’il soit le moins biaisé possible, j’ai envie de dire que c’est … Impossible. Si le jeu de données est biaisé (car le modèle prévu pour être spécialisé ou par choix de son créateur) ou si le prompt est biaisé, le résultat le restera. Pour moi il faut simplement prendre conscience de ces limitations et rappeler qu’il existe des tonnes de LoRA, des modèles légers extrêmement spécialisés sur un besoin précis, qui permettent d’enrichir le modèle de base et réduire le risque de résultats simplistes.



Pour reprendre la citation de l’article sur “Ils effacent toute la complexité et l’hétérogénéité des cultures concernées, ajoute de son côté la chercheuse en éthique de l’IA Sasha Luccioni.”, je dirais qu’on a là justement une réponse technique à ce problème avec les LoRA (l’autre réponse étant éducative). Entraîner des modèles spécialisés pour retranscrire toute la richesse d’une culture. Je pense qu’il doit déjà en exister.



Et le dernier point qui me semble important pour moi : être conscient que nous sommes tous biaisés par notre éducation et notre point de vue culturel. C’est pas un drame en soit, faut juste le savoir. Des clichés, on en produit nous-même sans le vouloir. Il faut donc s’auto éduquer à en prendre conscience pour déclencher une ouverture d’esprit. L’IA ne fera que ce pour quoi elle a été entraînée et ce qu’on lui demande.



Merci pour cet excellent complément à la brève !



:inpactitude:


Personne ne dit le contraire je pense.
Le problème est simplement que dans l’inconscient collectif une IA est plus “intelligente” qu’un humain et est surtout non biaisé.



Ce genre d’article permet d’appuyer encore une fois que ce n’est pas vrai



Sauf qu’une IA devrait pouvoir sortir des images de vrais français (par exemple en situation ou dans des endroits facilement reconnaissables) car la société évolue.


Tu as l’air de maitriser Stable Diffusion, je m’en sert un peu et je voulais tester les XL justement (je pense que j’ai assez de RAM), tu utilises quelle version de stable diffusion ?



Car j’ai du mal avec les 150 paramètres (sampling method, hresfix par ex, mais y en a plein d’autres) et en plus il faut choisir des sortes de modèles, des template de couleurs aussi (me suis un peu perdu la dedans).



Est-ce qu’il y a une version un peu user friendly qui choisi les meilleurs paramètres possibles, ou un truc du style ? Car je lis tout et son contraire sur Google XD


eglyn

Tu as l’air de maitriser Stable Diffusion, je m’en sert un peu et je voulais tester les XL justement (je pense que j’ai assez de RAM), tu utilises quelle version de stable diffusion ?



Car j’ai du mal avec les 150 paramètres (sampling method, hresfix par ex, mais y en a plein d’autres) et en plus il faut choisir des sortes de modèles, des template de couleurs aussi (me suis un peu perdu la dedans).



Est-ce qu’il y a une version un peu user friendly qui choisi les meilleurs paramètres possibles, ou un truc du style ? Car je lis tout et son contraire sur Google XD



carbier a dit:


Personne ne dit le contraire je pense. Le problème est simplement que dans l’inconscient collectif une IA est plus “intelligente” qu’un humain et est surtout non biaisé.




On est d’accord et c’est le bullshit que je trouve horriblement regrettable autour de l’IA. L’outil est intelligent, à n’en pas douter (compréhension sémantique, capacité d’analyse du contenu d’une image, de l’émotion d’un texte, etc). Mais il est incapable de prendre des initiatives et des décisions, ou de deviner à la place du demandeur ce qu’il veut.



Je considère que l’IA n’est que le reflet de nous-même : imparfaite, biaisée, mais juste en beaucoup plus efficace.



InvokeAI est ton ami !



J’utilisais auparavant AUTOMATIC1111 comme front pour StableDiffusion et j’étais aussi perdu avec ses douze millions de paramètres bruts de fonderie. InvokeAI nécessite dans tous les cas d’apprendre les concepts de base, mais l’interface est beaucoup plus accessible et lisible.



En gros une fois que tu as compris la relation entre le CFG et les Steps, t’as l’essentiel via cet outil. Et il permet d’intégrer les LoRA de manière plus simple via une interface dédiée pour modifier leur poids. Mais le triggerword reste nécessaire quand le modèle en a un.


SebGF


carbier a dit:


Personne ne dit le contraire je pense. Le problème est simplement que dans l’inconscient collectif une IA est plus “intelligente” qu’un humain et est surtout non biaisé.




On est d’accord et c’est le bullshit que je trouve horriblement regrettable autour de l’IA. L’outil est intelligent, à n’en pas douter (compréhension sémantique, capacité d’analyse du contenu d’une image, de l’émotion d’un texte, etc). Mais il est incapable de prendre des initiatives et des décisions, ou de deviner à la place du demandeur ce qu’il veut.



Je considère que l’IA n’est que le reflet de nous-même : imparfaite, biaisée, mais juste en beaucoup plus efficace.



InvokeAI est ton ami !



J’utilisais auparavant AUTOMATIC1111 comme front pour StableDiffusion et j’étais aussi perdu avec ses douze millions de paramètres bruts de fonderie. InvokeAI nécessite dans tous les cas d’apprendre les concepts de base, mais l’interface est beaucoup plus accessible et lisible.



En gros une fois que tu as compris la relation entre le CFG et les Steps, t’as l’essentiel via cet outil. Et il permet d’intégrer les LoRA de manière plus simple via une interface dédiée pour modifier leur poids. Mais le triggerword reste nécessaire quand le modèle en a un.


super merci !


En même temps, est-ce-que c’est pas complètement con de chercher à représenter la diversité génétique et culturelle d’un peuple via une seule photo?


Quel scandale, on lui demande des stéréotypes, et il génère des stéréotypes trop stéréotypés !!!


Il faut regarder au niveau des prompts demandés exactement, mais tel qu’ils semblent être écrits (“dessine-moi une personne indienne”), l’interprétation la plus probable, c’est de dessiner un mixte d’élément qui sont associés à l’Inde, c’est ce qui est le plus probablement demandé. C’est donc un résultat à peine surprenant.



Selon moi, le problème, c’est le prompt qui est trompeur et une machine, forcément, elle saute à pied joint dans les pièges.



Witcher a dit:


Quel scandale, on lui demande des stéréotypes, et il génère des stéréotypes trop stéréotypés !!!
Oui, clairement le sujet est vraiment bizarre.




L’AI devrait elle s’empêcher de répondre totalement ? Je serais intéressé de connaître la réponse à « un français ». Sans autre indication, n’importe qui (humain ou AI) mettrait un béret, une marinière et une écharpe. Voire une baguette. Je ne crois pas que cela signifie que tout le monde pense qu’un français ressemble à cela, mais c’est notre « logo » dans l’imaginaire collectif.


First World problem.


J’aimerais bien savoir : quelle image répondant au prompt “une personne indienne” serait convenable, objectivement parlant ?
Une personne devant un bâtiment célèbre de l’Inde ? Mais alors de quel type ethnique ? Doit-elle sourire ? Etre maigre ? Habillée comment ?



Je suis d’accord que ça montre que les IA font des stéréotypes, mais en même temps est-il possible de faire autrement ?


“une personne indienne” devrait être bien répartie entre jeune/vieux, homme/femme, être habillée plus ou moins comme une personne indienne dans la vie de tous les jours, être à la plage, ou dans un bureau, ou dans la rue, ou aux toilettes, ….. vu qu’il n’y a aucune information supplémentaire données.



“un stéréotype de personne indienne” devrait sortir les résultats qui sont sortis actuellement.



Pour obtenir ce genre de résultats, il faudrait des datasets bien plus gros et qualitatif, mais comme on en est encore à la course à l’IA la plus chébran, on s’en tape et on va chercher toutes les sources possibles et imaginables (surtout celles qui proviennent de pays nord américains ou européens, même si ça évolue), et on ne les traite pas vraiment avec éthique.



Quant aux IA… peut être un peu plus de diversité quand les prompts sont aussi peu élaborés (ce genre d’IA séduit surtout quand on lui demande des choses très précises et qu’elle les comprend et les rend sans trop de problèmes). Mais sinon, elles ne font que répondre à nos demandes en fonction des connaissances qu’elles ont bouffé, et du coup pour un prompt généraliste, elles donnent un stéréotype sans savoir que c’en est un.



Une fois la première bataille des IA finie, je pense qu’on verra une amélioration des datasets dans ce sens (et peut être une législation ? complexe à mettre en place).


C’est une très bonne question en fait. Car on ne peut pas représenter toute une diversité culturelle d’un pays ou d’une ethnie au sein d’une seule image d’une personne. Il va forcément y avoir des choix.



Pour rester en France, nous avons une disparité culturelle que ce soit par l’architecture de nos maisons (la traditionnelle brique rouge du Nord, les maisons alsaciennes, les maisons provençales, de nettes différences), nos tenues vestimentaires traditionnelles régionales, etc.



Je pense qu’au delà du cliché du beret baguette de pain, le cliché français aurait tendance à être une vision parisienne.



Et pour le coup je viens d’essayer avec SD, et oui, on a clairement une photo typiquement parisienne d’un homme au visage usé avec un béret pour “a photo of a French person” (modèle = copaxTimelessxl v1.7, SDXL, il est d’enfer). A French house ?, oui, mais clairement pas représentative de la diversité architecturale de notre pays.



Au final, l’IA ne fait que de générer les cartes postales qu’on retrouve sur les lieux touristiques qui, elles aussi, sont des clichés. Dans tous les sens du terme.



:smack:



SebGF a dit:


Je considère que l’IA n’est que le reflet de nous-même : imparfaite, biaisée, mais juste en beaucoup plus efficace.




En même temps, c’est strictement conçu pour être un reflet de nous-même. C’est développé par nous, alimenté par nous, avec des contenus générés par nous, débogué par nous et ça cherche à nous convaincre nous.



Le jour où l’IA ira recouper les volumes de vente de sombrero au Mexique ou filtrera les sources d’images (e-commerce européen = ne pas retenir, site d’actualité mexicain = pertinent) pour déterminer la probabilité qu’un mexicain en porte un avant de générer son image, on pourra peut-être vraiment parler d’intelligence.



Là, c’est bluffant OK, mais c’est grosso modo un outil qui a scrappé les résultats “mexicain” de Google Images et fait son dessin en fonction des résultats. D’ailleurs, il suffit de faire la recherche pour le confirmer : 6 lignes de résultats avant de tomber sur la première image sans sombrero… et c’est le baron de la drogue El Chapo.



« Une personne indienne », par exemple, renvoie quasiment toujours un vieil homme avec une barbe et un turban. « Une personne mexicaine », un homme, plutôt âgé aussi, avec un sombrero. Les supposées « rues de New Delhi » sont représentées pleines de détritus, les « plats indonésiens », toujours servis sur des feuilles de banane.




Aaah ! des stéréotypes clichés. Le mal absolu.



J’y pense: ça doit être sympa de jouer au pictionary avec des progressistes. non ?


C’est pas un mal absolu, c’est juste pas ce qui est demandé. Quand la demande n’est pas précise, la réponse ne devrait pas l’être non plus. Mais une “ personne indienne typique”, ou un “cliché d’indien”, ou un “stéréotype de personne indienne”, c’est déjà plus précis, et ça ramène les réponses avec le vieux enturbanné dans une photo hyper colorée et tout le reste.



Et c’est bien de pointer du doigt une des problématiques des datasets actuels. Car si les photos d’illustration des journaux doivent être un jour “toutes” générées par IA, autant éviter qu’elles ne tombent toutes dans des clichés, sans interdire pour autant de pouvoir générer des clichés si on le souhaite (en le demandant à l’IA).


guildem

C’est pas un mal absolu, c’est juste pas ce qui est demandé. Quand la demande n’est pas précise, la réponse ne devrait pas l’être non plus. Mais une “ personne indienne typique”, ou un “cliché d’indien”, ou un “stéréotype de personne indienne”, c’est déjà plus précis, et ça ramène les réponses avec le vieux enturbanné dans une photo hyper colorée et tout le reste.



Et c’est bien de pointer du doigt une des problématiques des datasets actuels. Car si les photos d’illustration des journaux doivent être un jour “toutes” générées par IA, autant éviter qu’elles ne tombent toutes dans des clichés, sans interdire pour autant de pouvoir générer des clichés si on le souhaite (en le demandant à l’IA).



Quand la demande n’est pas précise, la réponse ne devrait pas l’être non plus.




Pour le coup, “une personne indienne”, “une personne française”, c’est déjà une demande ayant un minimum de précision puisqu’on a dedans le sujet (un être humain) et le style (le pays d’affiliation). Mais comme elle reste vague, l’IA génère ce que n’importe qui aurait généré quand on parle d’un citoyen d’un pays ou d’une ethnie… Un cliché. Parce qu’on est conditionnés ainsi et qu’on a besoin de repères.



Si on demande “une personne” (demande encore plus imprécise), il y a de fortes chances que le modèle produise un homme de type Caucasien (j’ai éteint le PC avec SD, sinon j’aurai posté des exemples comme tout à l’heure). Pourtant c’est déjà un biais, puisque cela signifie que cette ethnie et ce sexe sont majoritaires, dont un réflexe, du point de vue du modèle.



J’ai donc du mal à comprendre le point sur le fait qu’un demande imprécise devrait donner un résultat imprécis. Dire “une personne” devrait faire un homme-bâton ? Sauf que c’est pas une femme-bâton (symbolisée avec une jupe, encore un cliché).



La question est avant tout éducative au sujet de l’usage de ces outils. Et comme les stock footages sont déjà blindés de clichés (dans tous les sens du terme, à nouveau), autant dire que l’IA n’y changera pas grand chose dans le cas des magazines.


SebGF


Quand la demande n’est pas précise, la réponse ne devrait pas l’être non plus.




Pour le coup, “une personne indienne”, “une personne française”, c’est déjà une demande ayant un minimum de précision puisqu’on a dedans le sujet (un être humain) et le style (le pays d’affiliation). Mais comme elle reste vague, l’IA génère ce que n’importe qui aurait généré quand on parle d’un citoyen d’un pays ou d’une ethnie… Un cliché. Parce qu’on est conditionnés ainsi et qu’on a besoin de repères.



Si on demande “une personne” (demande encore plus imprécise), il y a de fortes chances que le modèle produise un homme de type Caucasien (j’ai éteint le PC avec SD, sinon j’aurai posté des exemples comme tout à l’heure). Pourtant c’est déjà un biais, puisque cela signifie que cette ethnie et ce sexe sont majoritaires, dont un réflexe, du point de vue du modèle.



J’ai donc du mal à comprendre le point sur le fait qu’un demande imprécise devrait donner un résultat imprécis. Dire “une personne” devrait faire un homme-bâton ? Sauf que c’est pas une femme-bâton (symbolisée avec une jupe, encore un cliché).



La question est avant tout éducative au sujet de l’usage de ces outils. Et comme les stock footages sont déjà blindés de clichés (dans tous les sens du terme, à nouveau), autant dire que l’IA n’y changera pas grand chose dans le cas des magazines.


Dans ce cas, c’est une différence d’interprétation. Car pour moi, si la demande est vague (comme tu le dis, il y a quand même le fait que ce soit une personne, et d’un pays précis, mais ça reste très peu), la réponse, ou plutôt les réponses, devraient être très différentes les unes des autres, et ce serait ce qui est demandé pour moi. Et pour ton exemple “une personne”, on pourrait avoir un enfant pakistanais, un adulte japonais, une ado finlandaise, un vieux texan, voire même un italien mort (ça reste une personne).



Et là, c’est surtout la répartition qui pose problème. Car si tu fais une demande d’une personne et qu’on te renvoie un homme blanc américain standard une fois, bah pourquoi pas, ça reste une personne. Si tu fais la demande 100 fois et qu’on te renvoie 100 fois des hommes blancs américains standards, là il y a un biais et c’est pas bon.



Et si tu veux la personne moyenne qu’on peut trouver en Inde, il faudrait en faire la demande. Pareil pour un cliché, il faut le demander. Là on demande pas et on est à peu près sûr de l’avoir, ce qui pour moi est une erreur à corriger (via de meilleurs datasets plus précis et plus variés, et peut être des tweaks sur la gestion du prompt).



Enfin, comme tu le dis, sans aller jusqu’à avoir un homme-bâton, on pourrait avoir un personnage de cartoon, manga, tableau, conceptuel, … car rien n’est précisé sur le réalisme (sauf peut être dans l’interface de l’IA, j’utilise peu donc je ne sais pas si y’a la coche “réaliste” de présente sur le dernier Dall-E)



J’ai demandé un français heureux à Bing !



:transpi:


eglyn


J’ai demandé un français heureux à Bing !



:transpi:


Il a une barde au lieu d’une moustache, c’est pas un français !



(quote:2159776:127.0.0.1)
J’y pense: ça doit être sympa de jouer au pictionary avec des progressistes. non ?




:mdr2:



(quote:2159776:127.0.0.1)
J’y pense: ça doit être sympa de jouer au pictionary avec des progressistes. non ?




Pour le coup, c’est pas faux, et ça me rappelle les passages de South Park avec les “PC babies” et toutes les torsions mentales que les parents devaient faire pour rester dans le dogme.


Je trouve que les IA sont plutôt réussies si l’objectif est d’être proche du fonctionnement du plus grand nombre des humains.



(quote:2159776:127.0.0.1)
Aaah ! des stéréotypes clichés. Le mal absolu.



J’y pense: ça doit être sympa de jouer au pictionary avec des progressistes. non ?




Je ne savais que tu jouais au pictionary contre une IA: tu gagnes souvent ?



pierreonthenet a dit:


J’aimerais bien savoir : quelle image répondant au prompt “une personne indienne” serait convenable, objectivement parlant ?




Une personne en turban, avec une barbe, un grand sari et un collier de plumes qui dit “hugh !” en boivant de l’eau de feu ?



N’empêche que lorsque je yieute mon paquet de pépito… bin… il a un sombrero le loupiot :D



SebGF a dit:



Je pense qu’au delà du cliché du beret baguette de pain, le cliché français aurait tendance à être une vision parisienne.




Toi… tu fréquentes le même Mc-Donald que celui d’Emily in Paris
Ce midi c’était tête de veau gribiche pour toute la family. Et bien personne en cause dans le monde. Tout comme les rognons blancs sauce persillade.



guildem a dit:


Dans ce cas, c’est une différence d’interprétation. Car pour moi, si la demande est vague (comme tu le dis, il y a quand même le fait que ce soit une personne, et d’un pays précis, mais ça reste très peu), la réponse, ou plutôt les réponses, devraient être très différentes les unes des autres, et ce serait ce qui est demandé pour moi. Et pour ton exemple “une personne”, on pourrait avoir un enfant pakistanais, un adulte japonais, une ado finlandaise, un vieux texan, voire même un italien mort (ça reste une personne).



Et là, c’est surtout la répartition qui pose problème. Car si tu fais une demande d’une personne et qu’on te renvoie un homme blanc américain standard une fois, bah pourquoi pas, ça reste une personne. Si tu fais la demande 100 fois et qu’on te renvoie 100 fois des hommes blancs américains standards, là il y a un biais et c’est pas bon.




C’est précisément là où je pointais le fait que les modèles sont globalement biaisés car entraînés par des jeux potentiellement incomplets ou insuffisamment égalitaires en matière de diversité. L’IA reste basée sur des probabilités pour produire un résultat cohérent avec l’attention incluant une part d’aléatoire pour éviter d’être trop déterministe. Raison pour laquelle je rappelais que les LoRA ont pour but d’enrichir et d’aider à mieux orienter le résultat.




Et si tu veux la personne moyenne qu’on peut trouver en Inde, il faudrait en faire la demande. Pareil pour un cliché, il faut le demander. Là on demande pas et on est à peu près sûr de l’avoir, ce qui pour moi est une erreur à corriger (via de meilleurs datasets plus précis et plus variés, et peut être des tweaks sur la gestion du prompt).




Question : si le résultat du prompt “an Indian person” est un homme avec un turban ou une femme avec un point rouge sur le front portant des vêtements colorés et un fourlar, tous deux au teint mat, devant un bâtiment ressemblant Taj Mahal, est-ce un cliché ? Sans des repères permettant de confirmer qu’il s’agit bien de personnes indiennes, comment s’assurer que le modèle a restitué l’attendu ?



Car l’IA s’entraîne ainsi : un jeu de données, et un jeu de contrôle pour vérifier que les prédictions du modèle sont conformes à l’attendu.



Typiquement, je viens de taper “indian person” sur StartPage et suis allé dans les images. Je pense que SD m’aurait claqué à peu près les mêmes résultats.



SebGF a dit:


Question : si le résultat du prompt “an Indian person” est un homme avec un turban ou une femme avec un point rouge sur le front portant des vêtements colorés et un fourlar, tous deux au teint mat, devant un bâtiment ressemblant Taj Mahal, est-ce un cliché ?




C’est un résultat parmi d’autres, et si ce n’est que le seul type de résultat renvoyé ça devient un cliché, vu que ce n’est pas du tout représentatif de “an Indian person” dans la réalité.




Sans des repères permettant de confirmer qu’il s’agit bien de personnes indiennes, comment s’assurer que le modèle a restitué l’attendu ?




Si le modèle est bien entraîné (bons datasets), il restituera l’attendu. Et si on veut vraiment avoir “une personne indienne comme dans l’imaginaire d’un non indien” il faudra le préciser à la demande, et si le dataset contient ce qu’il faut pour que l’IA comprenne ce qui est “traditionnel”, “iconique”, “cliché”, il saura adapter sa réponse à cette demande plus précise et se restreindre à un turban et une barbe blanche, ou un point rouge et des vêtements colorés.




Typiquement, je viens de taper “indian person” sur StartPage et suis allé dans les images. Je pense que SD m’aurait claqué à peu près les mêmes résultats.




Je suis tout à fait d’accord avec toi : les moteurs de recherche d’images et les banques d’images (gratuites comme payantes) nourrissent les clichés depuis des années, ce que le cinéma faisait avant, ce que les livres faisaient avant, … Ça peut être bien d’essayer de pas foirer ça avec les IA :)


La question est plutôt : qu’est-ce qu’une personne qui écrit ce prompt attend le plus probablement comme résultat ?



Tu te rends bien compte que si tu cherchais à avoir une image d’une situation plus réaliste, tu aurais donné une requête bien plus précise et nul doute que ton résultat serait moins cliché (“An indian salariman walking in the street in Bali”).



Oui, quand tu demandes “an indian person” la machine assume que tu demandes un cliché d’Indien (tu lui demandes de dessiner une personne qui est identifiable comme un Indien et pas autre chose), car c’est la réponse la plus probable au vu de la demande (si tu voulais autre chose, tu aurais écrit très certainement une autre requête), c’est ce qui lui est implicitement demandé. Ta base de données pourra être aussi grosse que tu voudras, si tu lui demandes de dessiner un cliché, explicitement ou implicitement, il te dessinera un cliché.


tazvld

La question est plutôt : qu’est-ce qu’une personne qui écrit ce prompt attend le plus probablement comme résultat ?



Tu te rends bien compte que si tu cherchais à avoir une image d’une situation plus réaliste, tu aurais donné une requête bien plus précise et nul doute que ton résultat serait moins cliché (“An indian salariman walking in the street in Bali”).



Oui, quand tu demandes “an indian person” la machine assume que tu demandes un cliché d’Indien (tu lui demandes de dessiner une personne qui est identifiable comme un Indien et pas autre chose), car c’est la réponse la plus probable au vu de la demande (si tu voulais autre chose, tu aurais écrit très certainement une autre requête), c’est ce qui lui est implicitement demandé. Ta base de données pourra être aussi grosse que tu voudras, si tu lui demandes de dessiner un cliché, explicitement ou implicitement, il te dessinera un cliché.


tazvld

La question est plutôt : qu’est-ce qu’une personne qui écrit ce prompt attend le plus probablement comme résultat ?



Tu te rends bien compte que si tu cherchais à avoir une image d’une situation plus réaliste, tu aurais donné une requête bien plus précise et nul doute que ton résultat serait moins cliché (“An indian salariman walking in the street in Bali”).



Oui, quand tu demandes “an indian person” la machine assume que tu demandes un cliché d’Indien (tu lui demandes de dessiner une personne qui est identifiable comme un Indien et pas autre chose), car c’est la réponse la plus probable au vu de la demande (si tu voulais autre chose, tu aurais écrit très certainement une autre requête), c’est ce qui lui est implicitement demandé. Ta base de données pourra être aussi grosse que tu voudras, si tu lui demandes de dessiner un cliché, explicitement ou implicitement, il te dessinera un cliché.



SebGF a dit:


Mais il restera que des critères resteront tout de même des clichés ou des stéréotypes. Typiquement, si je prompt 100 fois “a French person” comme je l’ai fait tout à l’heure, j’aurais, je pense, à coup sûr cent fois des hommes et femmes de type européen. Et jamais de personnes de type maghrébines ou asiatiques quand bien même cela représente une bonne part de notre population.




On n’ira pas trop loin sur le sujet car ça pourrait vite glisser, mais oui, si je tape “a french person”, je devrais avoir un pourcentage de résultats typés asie ou méditéranéen. Mais ++ de résultats caucasiens, car la demande ne précise pas “contemporain”, et l’histoire de France est plus caucasienne qu’autre chose. Ce qui permettrait de préciser qu’on veut un stéréotype.



Mais je pousse peut être un peu loin le raisonnement, et si on demande “a french person” et non “a person”, il faut en effet inclure cette notion de “french” par un moyen ou un autre.



Justement, je ne vois pas les choses dans ce sens là, si ma demande est générale j’attendrai un résultat général, et si je veux un stéréotype je préfère le préciser.



C’est une logique inversée, peut être même par rapport à la majorité des gens, vu que je parle à des machines depuis 25 ans. Je suis habitué à préciser mes demandes quand je veux plus de précision.



pierreonthenet a dit:


J’aimerais bien savoir : quelle image répondant au prompt “une personne indienne” serait convenable, objectivement parlant ?




Si on se concentre sur une seule image je crois qu’on ne serait jamais satisfait.



Je suppose que l’idée serait que si on lui demande 1000 images on aurait un résultat équivalent de ce que l’on a quand on se balade en rue en inde. (bon après il y a les différentes régions, mais je pense que vous avez saisi l’idée).



Là, sur l’image du titre on a 32 images sur 32 avec un homme à moustache et un sombrero.



Si on fait une recherche par image “mexican person” c’est un peu différent (on a même de femmes), même si le stéréotype ressort.



dylem29 a dit:


En même temps, est-ce-que c’est pas complètement con de chercher à représenter la diversité génétique et culturelle d’un peuple via une seule photo?




:francais: :yes:



guildem a dit:


Je suis tout à fait d’accord avec toi : les moteurs de recherche d’images et les banques d’images (gratuites comme payantes) nourrissent les clichés depuis des années, ce que le cinéma faisait avant, ce que les livres faisaient avant, … Ça peut être bien d’essayer de pas foirer ça avec les IA :)




C’est pour ça que je pense qu’il faut plus une éducation à l’usage des outils (le côté “responsable” que les vendeurs de solutions IA essayent de mettre en avant) pour savoir qu’ils ont ces biais et qu’ils ne pourront pas les corriger magiquement.



Je te rejoins aussi sur la quantité, si le modèle génère toujours la même chose c’est bien la preuve qu’il y a un biais dans son entraînement. Pour la génération d’image, je pense que le seul moyen est d’avoir des dataset d’entraînement qui soient le plus égalitaire possible sur les critères, mais aussi pour les dataset de validation. Afin que “a person” soit considéré comme “a person” peu importe son ethnie. Car oui, le risque est qu’une “personne” de type africaine ou asiatique ne soit pas considérée comme telle par l’IA si elle est a majoritairement été entraînée sur des profils type caucasiens.



Là dessus, pour l’entraînement, ce n’est pas qu’un affaire d’entreprise vendeuse d’IA pour le coup. C’est global car “n’importe qui” peut entraîner un modèle StableDiffusion.



Mais il restera que des critères resteront tout de même des clichés ou des stéréotypes. Typiquement, si je prompt 100 fois “a French person” comme je l’ai fait tout à l’heure, j’aurais, je pense, à coup sûr cent fois des hommes et femmes de type européen. Et jamais de personnes de type maghrébines ou asiatiques quand bien même cela représente une bonne part de notre population.


Cependant, si tu lui demandes “a representative group of french peoples”, qu’est-ce qu’il va faire ? Parce qu’il me paraît assez évident qu’avec un prompt sans contexte, trop court, “a French person” il comprend que tu lui demandes un cliché de Français, une personne qui possède tous les attributs qui permettent de l’identifier comme un Français et pas autre chose.


tazvld

Cependant, si tu lui demandes “a representative group of french peoples”, qu’est-ce qu’il va faire ? Parce qu’il me paraît assez évident qu’avec un prompt sans contexte, trop court, “a French person” il comprend que tu lui demandes un cliché de Français, une personne qui possède tous les attributs qui permettent de l’identifier comme un Français et pas autre chose.


Premier lot avec “a photo of a representative group of French people” dont “representative” a visiblement été interprété comme députée. Pas concluant en matière de diversité ethnique française cela dit.



Par contre “a photo of people representing of France’s cultural diversity” a eu le résultat escompté. Mais cela dit, je pense que le modèle a juste pris en compte “diversity” sans chercher à le mettre en relation avec la France. Dans ce prompt, le seul impact que “France” a est le drapeau souvent mal rendu et l’arrière plan plutôt parisien.



Comme quoi, il suffit de peu de choses. On en revient avec le fait que oui, ça dépend aussi de ce qu’attend la personne ayant lancé le prompt. Si elle n’est pas sensible à ce type de biais, elle s’en foutra. Une personne plus sensible à la diversité cherchera un résultant en accord avec ses convictions.



Comme je disais précédemment, à titre personnel je préfère explicitement demander ce type de critère lorsqu’ils ont une importance dans mon besoin. Le reste du temps, je ne suis pas sensible à ce genre de sujet (la différence ethnique m’indiffère) mais j’ai conscience que l’outil va produire ce qu’il considère être “la norme” vis à vis de son entraînement. C’est aussi la raison pour laquelle il faut varier les modèles et les accompagner de LoRA.




J’ai demandé un français heureux à Bing !



:transpi:




:francais: <== çà c’est un Bidochon heureux :)


la modération ..pffff lamentable..



faut que j’utilise l’écriture inclusive pour que ça passe ?



je fini mon abo et tchao..



eglyn a dit:


Tu as l’air de maitriser Stable Diffusion, je m’en sert un peu et je voulais tester les XL justement (je pense que j’ai assez de RAM), tu utilises quelle version de stable diffusion ?




J’ai par hasard et chance retrouvé une barrette de 4GB DDR4 qui traînait dans un carton et l’ai installée sur ce “vieux” PC (qui avait déjà eu une upgrade de 8 à 16GB - et il tourne avec une 1080GTX de 2018). Là il est donc à 20GB de RAM et ça passe pour SDXL + un LoRA actif.



C’est plutôt juste car il est à 1820 utilisés cela dit. Mais au moins OOM Killer a arrêté de dégainer.



A noter que même baisser la taille de l’image ne changeait pas grand chose, SDXL ne travaille pas en dessous de 1024px.


J’ai testé du coup invokeAI, mais je n’arrive pas à faire un visage potable, contrairement à Automatic1111 ou il y a une section en plus High Res Fix (enfin plus complète) qui fait que les visages deviennent mieux (me demande pas pourquoi) :(



J’ai testé avec le même modèle des 2 côtés.



Et j’ai pas compris à quoi servait les “Lora”, j’ai testé un, un peu au pif, ça a fait n’importe quoi :D


eglyn

J’ai testé du coup invokeAI, mais je n’arrive pas à faire un visage potable, contrairement à Automatic1111 ou il y a une section en plus High Res Fix (enfin plus complète) qui fait que les visages deviennent mieux (me demande pas pourquoi) :(



J’ai testé avec le même modèle des 2 côtés.



Et j’ai pas compris à quoi servait les “Lora”, j’ai testé un, un peu au pif, ça a fait n’importe quoi :D


En fait les LoRA et Textual Inversion sont des moyens de personnaliser ou étendre la compréhension du sujet par SD.



Lse modèles de base ont des limitations, typiquement ils ont tendance à faire la même tronche pour un type de personnage demandé. Ils ont généralement besoin d’un “trigger word” pour fonctionner, c’est à dire un mot clé à rajouter dans le prompt auquel on adjoint un poids pour jauger son influence sur le résultat.



Par exemple sur ce LoRA “pop art” il faut spécifier “POP ART” dans son prompt. Dans cette image tu as le prompt utilisé par la personne. Le LoRA est indiqué de la façon suivante : <lora:pop_art_v2:0.7>. Perso je me suis surtout beaucoup basé sur les prompts des rendus qui m’intéressaient pour apprendre à utiliser tout ça.



InvokeAI fait une légère abstraction de cette syntaxe (c’est du pur SD). Dans les menus à gauche tu auras LoRA (attention, un LoRA est comme un modèle, donc il faut qu’il soit fait pour SDXL si ton modèle de base est un SDXL, ici le “Pop Art” est un SD 1.5) dans lequel tu peux sélectionner ceux que tu as installé et tu obtiens une jauge pour son influence. Tu ajoutes “pop art” à ton prompt et, en principe, ton résultat va se styliser avec le poids du LoRA.



Concernant ton rendu, j’ai aussi eu le coup plus d’une fois. Après, je te cache pas que je fais rarement du visage. Au même titre que le photographe amateur que je suis ne fait pas dans l’humain, généralement je me contente de mettre des personnages de dos ou sans visage pour laisser cette partie à la discrétion de l’imagination de chacun.



Néanmoins si je peux donner quelques idées sans grande prétention : dans un premier temps, il faut voir les conseils donnés par le créateur du modèle. Généralement ils recommandent un sampler, le nombre de steps et le CFG. Exemple sur mon chouchou du moment ils recommandent le mettre 40 à 60 steps, CFG 5 à 7, et Euler ou DPM ++ SDE Karass en sampler. En toute transparence, le sampler reste encore un peu mystique pour moi malgré le temps passé à jouer avec cet outil. J’utiise principalement le second cité et j’ai souvent des bons résultats. Après dans un batch de 9 images, j’ai rarement plus d’un qui me plait vraiment. Mais depuis que InvokeAI a mis en place son gestionnaire de file, je modifie le prompt, renvoie dans la file, et laisse le PC me réchauffer les doigts de pieds pendant que je fais autre chose.



La doc du prompt engineering est plutôt bien accessible cela dit. Après en regardant un peu, si l’option “hires fix” n’existe pas sous forme d’une case à cocher dans InvokeAI, ils ne l’ont pas encore implémentée et elle est accessible via les workflows. Il y a aussi un petit article sur Civitai que j’aime bien sur les conseils de prompt pour SDXL car il a pas mal changé la donne par rapport à SD 1 et 1.5. Après, le refiner et le canevas pour l’inpainting permet de faire de sacrés trucs dans cet outil. Là où sur AUTOMATIC1111 ça me saoulait d’avoir une fenêtre de la taille d’un timbre poste pour faire de la modif de précision…



Bref, j’espère que ça te filera des billes :D


SebGF

En fait les LoRA et Textual Inversion sont des moyens de personnaliser ou étendre la compréhension du sujet par SD.



Lse modèles de base ont des limitations, typiquement ils ont tendance à faire la même tronche pour un type de personnage demandé. Ils ont généralement besoin d’un “trigger word” pour fonctionner, c’est à dire un mot clé à rajouter dans le prompt auquel on adjoint un poids pour jauger son influence sur le résultat.



Par exemple sur ce LoRA “pop art” il faut spécifier “POP ART” dans son prompt. Dans cette image tu as le prompt utilisé par la personne. Le LoRA est indiqué de la façon suivante : <lora:pop_art_v2:0.7>. Perso je me suis surtout beaucoup basé sur les prompts des rendus qui m’intéressaient pour apprendre à utiliser tout ça.



InvokeAI fait une légère abstraction de cette syntaxe (c’est du pur SD). Dans les menus à gauche tu auras LoRA (attention, un LoRA est comme un modèle, donc il faut qu’il soit fait pour SDXL si ton modèle de base est un SDXL, ici le “Pop Art” est un SD 1.5) dans lequel tu peux sélectionner ceux que tu as installé et tu obtiens une jauge pour son influence. Tu ajoutes “pop art” à ton prompt et, en principe, ton résultat va se styliser avec le poids du LoRA.



Concernant ton rendu, j’ai aussi eu le coup plus d’une fois. Après, je te cache pas que je fais rarement du visage. Au même titre que le photographe amateur que je suis ne fait pas dans l’humain, généralement je me contente de mettre des personnages de dos ou sans visage pour laisser cette partie à la discrétion de l’imagination de chacun.



Néanmoins si je peux donner quelques idées sans grande prétention : dans un premier temps, il faut voir les conseils donnés par le créateur du modèle. Généralement ils recommandent un sampler, le nombre de steps et le CFG. Exemple sur mon chouchou du moment ils recommandent le mettre 40 à 60 steps, CFG 5 à 7, et Euler ou DPM ++ SDE Karass en sampler. En toute transparence, le sampler reste encore un peu mystique pour moi malgré le temps passé à jouer avec cet outil. J’utiise principalement le second cité et j’ai souvent des bons résultats. Après dans un batch de 9 images, j’ai rarement plus d’un qui me plait vraiment. Mais depuis que InvokeAI a mis en place son gestionnaire de file, je modifie le prompt, renvoie dans la file, et laisse le PC me réchauffer les doigts de pieds pendant que je fais autre chose.



La doc du prompt engineering est plutôt bien accessible cela dit. Après en regardant un peu, si l’option “hires fix” n’existe pas sous forme d’une case à cocher dans InvokeAI, ils ne l’ont pas encore implémentée et elle est accessible via les workflows. Il y a aussi un petit article sur Civitai que j’aime bien sur les conseils de prompt pour SDXL car il a pas mal changé la donne par rapport à SD 1 et 1.5. Après, le refiner et le canevas pour l’inpainting permet de faire de sacrés trucs dans cet outil. Là où sur AUTOMATIC1111 ça me saoulait d’avoir une fenêtre de la taille d’un timbre poste pour faire de la modif de précision…



Bref, j’espère que ça te filera des billes :D


Wow, super, merci pour toutes ces précisions, je testerais tout ça ce soir !



eglyn a dit:


Hum… :transpi:




J’avoue qu’il est focus beaucoup sur un vieux barbu, généralement avec un turban (même s’il y a une fois un sans, mais avec une sorte de drapé comme pantalon). Sinon, mention spéciale pour le groupe, où le reste est moins stéréotypé, mais il a réussi à caser un mec qui est clairement caucasien (et ce n’est même pas propre, on dirait pratiquement un photomontage).




guildem a dit:


Justement, je ne vois pas les choses dans ce sens là, si ma demande est générale j’attendrai un résultat général, et si je veux un stéréotype je préfère le préciser.



C’est une logique inversée, peut être même par rapport à la majorité des gens, vu que je parle à des machines depuis 25 ans. Je suis habitué à préciser mes demandes quand je veux plus de précision.




Ma vision est plus orientée utilisateur : je souhaite que la réponse corresponde à mes attentes. Comme la machine n’a accès qu’au prompt (voir l’historique) et qu’elle n’est pas capable de lire dans la pensée de l’utilisateur qui fait la requête, elle ne peut utiliser que les probabilités pour estimer quelle est la réponse est le plus probablement attendu.



Il y a 25 ans, la recherche était très simple. Sur internet, tu passais soit par des annuaires web, ce n’était pas terrible, soit tu utilisais les moteurs de recherche, qui étaient à leur début, ne fonctionnait uniquement par les mots clé de ta recherche (plus la page regroupait l’ensemble de tes mots clé et plus ils y étaient répétés, plus elles étaient hautes dans les résultats, car plus probables de répondre à tes attentes). C’est justement Google, il y a 25 ans qui est arrivé avec son système de ranking qui a révolutionné la recherche. Et là encore, rien à voir avec ton idée : il privilégiait les pages ayant le plus de liens pointant vers elles, parce qu’elles étaient potentiellement les plus pertinentes (le plus probablement attendu).




SebGF a dit:


Premier lot avec “a photo of a representative group of French people” dont “representative” a visiblement été interprété comme députée. Pas concluant en matière de diversité ethnique française cela dit.



Par contre “a photo of people representing of France’s cultural diversity” a eu le résultat escompté. Mais cela dit, je pense que le modèle a juste pris en compte “diversity” sans chercher à le mettre en relation avec la France. Dans ce prompt, le seul impact que “France” a est le drapeau souvent mal rendu et l’arrière plan plutôt parisien.



Comme quoi, il suffit de peu de choses. On en revient avec le fait que oui, ça dépend aussi de ce qu’attend la personne ayant lancé le prompt. Si elle n’est pas sensible à ce type de biais, elle s’en foutra. Une personne plus sensible à la diversité cherchera un résultant en accord avec ses convictions.



Comme je disais précédemment, à titre personnel je préfère explicitement demander ce type de critère lorsqu’ils ont une importance dans mon besoin. Le reste du temps, je ne suis pas sensible à ce genre de sujet (la différence ethnique m’indiffère) mais j’ai conscience que l’outil va produire ce qu’il considère être “la norme” vis à vis de son entraînement. C’est aussi la raison pour laquelle il faut varier les modèles et les accompagner de LoRA.




J’ai justement essayé invokeAI (merci au passage, ça va surement pouvoir m’aider), je trouve les résultats très bizarres, avec une interprétation très “artistique” de ce que j’ai demandé. Je ne sais pas d’où ça vient. Mais typiquement, l’envie de faire une photo d’un conseil municipale est assez typique de cette interprétation assez personnelle que j’ai eue. Ce qui est amusant, c’est qu’entre les 2 prompts, c’est le changement de la moyenne d’age. Mais je pense que ça vient justement des campagnes pro diversité qui, à mes souvenirs, montrent plutôt des jeunes (ça vise aussi cette tranche d’âge et il a été démontré que l’empathie fonctionne mieux face à une personne qui te ressemble).



tazvld a dit:


J’ai justement essayé invokeAI (merci au passage, ça va surement pouvoir m’aider), je trouve les résultats très bizarres, avec une interprétation très “artistique” de ce que j’ai demandé. Je ne sais pas d’où ça vient. Mais typiquement, l’envie de faire une photo d’un conseil municipale est assez typique de cette interprétation assez personnelle que j’ai eue. Ce qui est amusant, c’est qu’entre les 2 prompts, c’est le changement de la moyenne d’age. Mais je pense que ça vient justement des campagnes pro diversité qui, à mes souvenirs, montrent plutôt des jeunes (ça vise aussi cette tranche d’âge et il a été démontré que l’empathie fonctionne mieux face à une personne qui te ressemble).




La différence tu la vois à modèle égal ? Je ne vois pas ce qui ferait que le front impacte le prompt du modèle en fait. Mais j’atteins aussi mes limites de connaissances sur le sujet donc il y a peut-être des notions qui m’échappent encore.



Typiquement celui que j’utilise indique avoir comme objectif d’inclure le plus de diversité possible dedans, ce qui peut expliquer ces rendus très “diversity stock footage”. Ce genre de comparatif est aussi à faire en variant les modèles, mais honnêtement, j’ai autre chose à foutre :D


Fermer