Jakie masz pytanie?

lub

Dlaczego sztuczna inteligencja, mimo otrzymania instrukcji, że każda dłoń i stopa mają po pięć palców, wciąż potrafi wygenerować ich cztery lub sześć?

generatory obrazów AI błędy w generowaniu palców jak AI widzi dłonie
avatar

Gość (37.30.*.*)



Odpowiedź:

Każdy, kto choć raz bawił się generatorami obrazów takimi jak Midjourney czy DALL-E, prawdopodobnie natknął się na ten charakterystyczny, nieco niepokojący widok: przepiękna postać, idealne oświetlenie, fotorealistyczne detale i... sześć palców u jednej dłoni. Choć sztuczna inteligencja potrafi stworzyć symfonię w stylu Beethovena lub napisać kod w Pythonie, prosta anatomia ludzkiej dłoni wciąż bywa dla niej wyzwaniem. Dlaczego tak się dzieje, skoro w instrukcjach (promptach) wyraźnie zaznaczamy, że chcemy pięć palców?

Jak AI "widzi" świat, czyli brak zrozumienia anatomii

Podstawowym powodem, dla którego AI popełnia błędy w liczbie palców, jest fakt, że modele generatywne nie rozumieją, czym jest dłoń w sensie biologicznym. Dla algorytmu dłoń nie jest częścią ciała z kośćmi, stawami i konkretną liczbą zakończeń. AI postrzega ją jako zbiór pikseli, które często występują obok siebie w określonych konfiguracjach kolorystycznych i geometrycznych.

Kiedy uczymy AI na milionach zdjęć, widzi ona dłonie w tysiącach różnych pozycji: zaciśnięte w pięść, trzymające kubek, machające, schowane częściowo w kieszeni czy splecione z drugą dłonią. W wielu z tych ujęć nie widać wszystkich pięciu palców. Czasem widać dwa, czasem trzy, a czasem – z powodu perspektywy lub ruchu – palce zlewają się w jedną masę. AI uczy się więc, że "dłoń" to po prostu "mięsisty kształt z wystającymi podłużnymi elementami".

Problem danych treningowych i statystyki

Sztuczna inteligencja opiera się na statystyce, a nie na logice. Jeśli w bazie danych znajduje się mnóstwo zdjęć, na których palce nachodzą na siebie lub są skrócone perspektywicznie, model wyciąga średnią z tych obrazów. Dla algorytmu "pięć" to tylko słowo, które próbuje powiązać z obrazem, ale wizualna reprezentacja dłoni jest tak zmienna, że matematyczna korelacja między słowem a liczbą detali na obrazie często się rozmywa.

Co ciekawe, twarze są dla AI znacznie łatwiejsze do wygenerowania. Dlaczego? Ponieważ twarze są relatywnie przewidywalne – dwoje oczu, nos pośrodku, usta poniżej. Dłonie natomiast są najbardziej ruchliwą i zmienną częścią ludzkiego ciała pod względem wizualnym. Zmienność formy sprawia, że AI "pogubi się" w liczeniu, skupiając się bardziej na teksturze skóry i ogólnym kształcie niż na precyzyjnej liczbie palców.

Ciekawostka: Dlaczego akurat sześć, a nie dziesięć?

Zauważono, że AI częściej dodaje palce, niż je odejmuje. Wynika to z faktu, że proces generowania obrazu (dyfuzja) polega na odszumianiu obrazu. W miejscach, gdzie dłoń jest skomplikowana, algorytm może zinterpretować "szum" jako kolejny palec i próbować go doprecyzować, zamiast go usunąć.

Dlaczego instrukcja w prompcie nie zawsze pomaga?

Wpisanie w polecenie frazy "five fingers" (pięć palców) często nie przynosi rezultatu, ponieważ modele tekstowo-obrazowe działają na zasadzie tzw. tokenów. Słowo "pięć" jest dla modelu silną sugestią, ale wizualny wzorzec "dłoni" ma w sieci neuronowej znacznie większą wagę. Jeśli wzorzec wizualny mówi, że w danej pozie dłoń wygląda na skomplikowaną strukturę z wieloma wypustkami, AI priorytetyzuje wygląd nad matematyczną poprawność zawartą w tekście.

Warto też wspomnieć o zjawisku "negatywnych promptów". Użytkownicy często wpisują "extra fingers" lub "mutated hands" w poleceń wykluczających. Choć to pomaga, nie rozwiązuje problemu u źródła, ponieważ AI wciąż operuje na tych samych, niedoskonałych mapach prawdopodobieństwa.

Czy ten problem zostanie kiedyś rozwiązany?

Postęp w tej dziedzinie jest błyskawiczny. Nowsze wersje modeli, takie jak Midjourney v6 czy najnowsze iteracje Stable Diffusion, radzą sobie z dłońmi znacznie lepiej niż ich poprzednicy sprzed roku. Twórcy oprogramowania zaczynają stosować dodatkowe mechanizmy, takie jak:

  • Mesh-guidance: Nakładanie na proces generowania uproszczonego modelu 3D szkieletu dłoni, który wymusza poprawną anatomię.
  • Lepsze opisywanie danych (Captioning): Dokładniejsze opisywanie zdjęć treningowych, by AI wiedziała dokładnie, kiedy widzi pięć palców, a kiedy dłoń jest zasłonięta.
  • Dedykowane moduły: Narzędzia typu ControlNet, które pozwalają użytkownikowi "narysować" szkielet dłoni, na którym AI ma bazować.

Mimo tych usprawnień, dłonie pozostają swoistym "testem Turinga" dla grafiki generatywnej. Dopóki AI nie zacznie rozumieć trójwymiarowej struktury świata i funkcjonalności obiektów, które tworzy, od czasu do czasu będziemy musieli pogodzić się z widokiem dodatkowego kciuka.

Podziel się z innymi: