Skip Navigation

An Asian MIT student asked AI to turn an image of her into a professional headshot. It made her white with lighter skin and blue eyes.

www.businessinsider.com

An Asian MIT student asked AI to turn an image of her into a professional headshot. It made her white, with lighter skin and blue eyes.

An Asian MIT student asked AI to turn an image of her into a professional headshot. It made her white with lighter skin and blue eyes.::Rona Wang, a 24-year-old MIT student, was experimenting with the AI image creator Playground AI to create a professional LinkedIn photo.

126 comments
  • This is not surprising if you follow the tech, but I think the signal boost from articles like this is important because there are constantly new people just learning about how AI works, and it's very very important to understand the bias embedded into them.

    It's also worth actually learning how to use them, too. People expect them to be magic, it seems. They are not magic.

    If you're going to try something like this, you should describe yourself as clearly as possible. Describe your eye color, hair color/length/style, age, expression, angle, and obviously race. Basically, describe any feature you want it to retain.

    I have not used the specific program mentioned in the article, but the ones I have used simply do not work the way she's trying to use them. The phrase she used, "the girl from the original photo", would have no meaning in Stable Diffusion, for example (which I'd bet Playground AI is based on, though they don't specify). The img2img function makes a new image, with the original as a starting point. It does NOT analyze the content of the original or attempt to retain any features not included in the prompt. There's no connection between the prompt and the input image, so "the girl from the original photo" is garbage input. Garbage in, garbage out.

    There are special-purpose programs designed for exactly the task of making photos look professional, which presumably go to the trouble to analyze the original, guess these things, and pass those through to the generator to retain the features. (I haven't tried them, personally, so perhaps I'm giving them too much credit...)

    • If it's stable diffusion img2img, then totally, this is a misunderstanding of how that works. It usually only looks at things like the borders or depth. The text based prompt that the user provides is otherwise everything.

      That said, these kinds of AI are absolutely still biased. If you tell the AI to generate a photo of a professor, it will likely generate an old white dude 90% of the time. The models are very biased by their training data, which often reflects society's biases (though really more a subset of society that created whatever training data the model used).

      Some AI actually does try to counter bias a bit by injecting details to your prompt if you don't mention them. Eg, if you just say "photo of a professor", it might randomly change your prompt to "photo of a female professor" or "photo of a black professor", which I think is a great way to tackle this bias. I'm not sure how widespread this approach is or how effective this prompt manipulation is.

    • I've taken a look at the website for the one she used and it looks like a cheap crap toy. It's free, which is the first clue that it's not going to be great.

      Not a million miles from the old "photo improvement" things that just run a bunch of simple filters and make over-processed HDR crap.

  • These biases have always existed in the training data used for ML models (society and all that influencing the data we collect and the inherent biases that are latent within), but it’s definitely interesting that generative models now make these biases much much more visible (figuratively and literally with image models) to the lay person

    • But they know the AI's have these biases, at least now, shouldn't they be able to code them out or lessen them? Or would that just create more problems?

      Sorry, I'm no programer so I have no idea if thats even possible or not. Just sounds possible in my head.

      • You don't really program them, they learn from the data provided. If say you want a model that generates faces, and you provide it with say, 500 faces, 470 of which are of black women, when you ask it to generate a face, it'll most likely generate a face of a black woman.

        The models are essentially maps of probability, you give it a prompt, and ask it what the most likely output is given said prompt.

        If she had used a model trained to generate pornography, it would've likely given her something more pornographic, if not outright explicit.


        You've also kind of touched on a point of problem with large language models; they're not programmed, but rather prompted.

        When it comes to Bing Chat, Chat GPT and others, they have additional AI agents sitting alongside them to help filter/mark out problematic content both provided by the user, as well as possible problematic content the LLM itself generates. Like this prompt, the model marked my content as problematic and the bot gives me a canned response, "Hi, I'm bing. Sorry, can't help you with this. Have a nice day. :)"

        These filters are very crude, but are necessary because of problems inherent in the source data the model was trained on. See, if you crawl the internet for data to train it on, you're bound to bump into all sorts of good information; Wikipedia articles, Q&A forums, recipe blogs, personal blogs, fanfiction sites, etc. Enough of this data will give you a well rounded model capable of generating believable content across a wide range of topics. However, you can't feasibly filter the entire internet, among all of this you'll find hate speech, you'll find blogs run by neo nazis and conspiracy theorists, you'll find blogs where people talk about their depression, suicide notes, misogyny, racism, and all sorts of depressing, disgusting, evil, and dark aspects of humanity.

        Thus there's no code you can change to fix racism.

         
            
        if (bot.response == racist) 
        {
            dont();
        }
        
          

        But rather simple measures that read the user/agent interaction, filtering it for possible bad words, or likely using another AI model to gauge the probability of an interaction being negative,

         
            
        if (interaction.weightedResult < negative)
        {
            return "I'm sorry, but I can't help you with this at the moment. I'm still learning though. Try asking me something else instead! 😊";
        }
        
          

        As an aside, if she'd prompted "professional Asian woman" it likely would've done a better job. Depending on how much "creative license" she gives the model though, it still won't give her her own face back. I get the idea of what she's trying to do, and there's certainly ways of acheiving it, but she likely wasn't using a product/model weighted to do specifically the thing she was asking to do.


        Edit

        Just as a test, because I myself got curious; I had Stable Diffusion generate 20 images given the prompt

        professional person dressed in business attire, smiling

        20 sampling steps, using DPM++ 2M SDE Karras, and the v1-5-pruned-emaonly Stable Diffusion model.

        Here's the result

        I changed the prompt to

        professional person dressed in business attire, smiling, [diverse, diversity]

        And here is the result

        The models can generate non-white men, but it is in a way just a reflection of our society. White men are the default. Likewise if you prompt it for "loving couple" there'll be so many images of straight couples. But don't just take my word for it, here's an example.

      • That's not how it works. You don't just "program out the biases" you have to retain the model with more inclusive training data.

      • If you can code it, it isn't really AI.

        AI is able to make the connections when given the data by itself. The problem is that the data required is usually enormous, so the quantity of data is more valued than the quality.

      • Shouldn't they be able to code them out?

        You can't "code them out" because AI isn't using a simple script like traditional software. They are giant nested statistical models that learn from data. It learns to read the data it was trained on. It learns to understand images that it was trained on, and how they relate to text. You can't tell it "in this situation, don't consider race" because the situation itself is not coded anywhere. It's just learned behaviors from the training data.

        Shouldn't they be able to lessen them?

        For this one the answer is YES. And they DO lessen them as much as they can. But they're training on data scraped from many sources. You can try to curate the data to remove racism/sexism, but there's no easy way to remove bias from data that is so open ended. There is no way to do this in an automated way besides using an AI model, and for that, you need to already have a model that understands race/gender/etc bias, which doesn't really exist. You can have humans go through the data to try to remove bias, but that introduces a ton of problems as well. Many humans would disagree on what is biased. And human labelers also have a shockingly high error rate. People are flat out bad at repetitive tasks.

        And even that only covers data that actively contains bigotry. In most of these generative AI cases, the real issue is just a lack of data or imbalanced data from the internet. For this specific article, the user asked to make a photo look professional. Training data where photos were clearly a professional setting probably came from sites like LinkedIn, which had a disproportionate number of white users. These models also have a better understanding of English than other languages because there is so much more training data available in English. So asian professional sites may exist in the training data, but the model didn't understand the language as well, so it's not as confident about professional images of Asians.

        So you can address this by curating the training data. But this is just ONE of THOUSANDS and THOUSANDS of biases, and it's not possible to control all of them in the data. Often if you try to correct one bias, it accidentally causes the model to perform even worse on other biases.

        They do their best. But ultimately these are statistical models that reflect the existing data on the internet. As long as the internet contains bias, so will AI

      • It’s possible sure. In order to train these image AIs you essentially feed them a massive amount of pictures as “training data.” These biases happen because more often than not the training data used is mostly pictures of white people. This might be due to racial bias of the creators, or a more CRT explanation where they only had the rights to pictures of mostly white people. Either way, the fix is to train the AI on more diverse faces.

      • There are LoRAs available (hundreds, maybe thousands) to tweak the base model so you can generate exactly what you want. So, problem solved for quite a while now.

  • Also depends on what model was used, prompt, strength of prompt etc.

    No news here, just someone who doesn't know how to use AI generation.

  • Racial bias propagating, click-baity article.

    Did anyone bother to fact check this? I ran her exact photo and prompt through Playground AI and it pumped out a bad photo of an Indian woman. Are we supposed to play the raical bias card against Indian women now?

    This entire article can be summarized as "Playground AI isn't very good, but that's boring news so let's dress it up as something else"

  • It reminds me of Google back in the day (probably early 2010s). If you searched for White Women, it returned professional and respectable images. But if you searched for Black Women, it returned explicit images.

    Machine learning algorithms are like sponges and learn from existing social biases.

126 comments