AI nedeterminizmas, haliucinacijos ir … katės?

Ilgą laiką specialistai dirbo be priežiūros pasaulyje. Jie sklandžiai sukūrė, pastatė ir dislokavo programinę įrangą. Tuomet įvyko izoliacijos era, ir staiga jiems pasidarė nuobodu (žinoma, tai žaismingai dalyvauti tikruose įvykiuose). Tai žmonės norėjo sukurti tai, kas galėtų tvarkyti jų darbą, kol jie liko namuose: atsakykite į įprastus klausimus, generuokite šaunius avatarus ir per kelias minutes išanalizuoti didžiulį kiekį duomenų. Jie svajojo keliauti į fantastišką vietą, todėl, jūs atspėjote, jie sukėlė revoliuciją AI.
\ AI dabar veikia, teikia atsakymus ir gerina gyvenimą. Kaip kvalifikuotas asistentas, koks jis yra, AI yra tikrai veiksminga tik tada, kai naudojama tinkamame kontekste.
\ Mes matome greitą AI programų pažangą – nuo vaizdo ir vaizdo įrašų generavimo iki akcijų rinkos prognozavimo ir kriptovaliutų analizės. Vis dėlto AI gali pasiūlyti informacijos, kurios mes neprašome, arba nepateikiame akivaizdžiai klaidingų atsakymų. Jo elgesys labai panašus į buitines kates – žinote, tokią, kuri ramiai sėdi, ir tada staiga ant jūsų įsijaučia?
\

\ Mūsų katės, taip pat AI, mėgaukitės nenuspėjamomis:
\
- Jūs suteikiate jiems tą patį maistą (ar duomenis) – kartais jie valgo, kartais jie to nepaiso.
- Jūs mokote juos reaguoti, tačiau jie tik retkarčiais reaguoja, kai jiems skambinate.
- Kuo didesnis ir dykesnis katės ar didesnis AI modelis, tuo sunkiau numatyti jo elgesį.
- Ryte katės gali būti ramios; Iki vakaro jie tampa hiperaktyvūs (kaip ir dinaminiai duomenys).
- Katės gali būti draugiškos (determinuoti), tačiau gali jus subraižyti be perspėjimo (stochastinis).
\ Jums gali kilti klausimas, ką reiškia determinizmas ir stochastiškumas – sužinokime.
Determinizmas ir stochastiškumas
Deterministinė sistema visada duoda tą patį rezultatą, atsižvelgiant į tą patį įvestį – pagalvokite Idempotency Jei esate „DevOps“ inžinierius. Realaus pasaulio pavyzdys būtų jūsų katė, kuri valgo tą patį kiekį maisto, kurį kiekvieną kartą įdėjote į jo dubenį-tai yra determinizmas. Bet kai katė šnipinėja ir valgo tik pusę, ji nebėra determinuota.
\

\ A stochastinis Procesas apima atsitiktinumo elementą: su tuo pačiu įvestimi rezultatas gali skirtis. Pavyzdžiui, mašininio mokymosi modelyje dažnai naudojami stochastiniai algoritmai, pavyzdžiui, Stochastinis Gradiento nusileidimas (SGD)kuris treniruoja modelį renkantis atsitiktinius duomenų dalis, o ne visą duomenų rinkinį.
\ Šie apibrėžimai nevisiškai paaiškina, kodėl mūsų AIS kartais haliucinuoja ir elgiasi chaotiškai. Yra ir kitų prisidedančių veiksnių, įskaitant šiuos dalykus:
\
- Determinizmas
- Stochastiškumas
- Apvalinimo klaidos ir plūduriuojančio taško aritmetika
- Daugiapakopis ir lygiagrečiai skaičiavimai
- Nuolat atnaujinti duomenis
- Chaosas ir „drugelio efektas“
Jei pažvelgsime šiek tiek arčiau, pamatysime kitus mechanizmus, turinčius įtakos nenuspėjamam AI modelių elgsenai.
Neuroninių tinklų žvilgsnis
Tikriausiai žinote, kad AIS naudojasi remiantis įvairiais nervinių tinklų algoritmais. Čia yra keletas nervinių tinklų tipų:
\
- Visiškai prijungti nerviniai tinklai (FCNN): Klasikinė architektūra, kurioje kiekvienas neuronas jungiasi prie kiekvieno kito sluoksnio neurono.
\
- Konvoliuciniai neuroniniai tinklai (CNNS): Šiuose tinkluose naudojami konvikacijos arba filtrai, pabrėžiantys vaizdo ypatybes, tokias kaip briaunos, tekstūros ir formos.
\
- Pasikartojantys nerviniai tinklai (RNNS): Šiuose tinkluose yra grįžtamojo ryšio kilpos, leidžiančios atsiminti ankstesnius veiksmus (būtent jie prisimena sekas).
\
- Ilga trumpalaikė atmintis (LSTM): Patobulinta RNN versija su mechanizmais, skirtais selektyviai pamiršti ir prisiminti svarbius duomenis.
\
- Transformatoriai: Galingiausia teksto apdorojimo klasė. Jie naudoja kelių galvučių dėmesį, leisdami jiems vienu metu atsižvelgti į visą kontekstą.
\
- Generaciniai prieštaringos tinklai (Gans): Jie susideda iš dviejų tinklų, iš kurių vienas generuoja duomenis, o kitas įvertina jo kokybę. Jų konkurencija lemia geresnius rezultatus.
\
- Autoencoderiai: Tinklai, skirti suspausti (užkoduoti) informaciją ir tada ją rekonstruoti (dekoduoti).
\
- GRAPTO NEURINIAI TINKLAI (GNN): Jie dirba su grafikais (mazgais ir kraštais), o ne įprastais duomenimis.
\ Mums reikia viso to konteksto, kad suprastume, kodėl dažniausiai pasitaikantis modelis, pokalbiai, dažnai haliucinatai.
Kaip vyksta AI haliucinacijos
„ChatGpt“ veikia Transformatorius Architektūra, pirmą kartą pristatyta 2017 m. Dokumente „Dėmesys yra viskas, ko jums reikia“. Tai yra pats mechanizmas, kuris revoliucionavo teksto apdorojimą. Transformatoriai veikia pagal savarankiškumo mechanizmą, kuris leidžia jiems atsižvelgti į pasaulinį kontekstą, o ne tik į artimiausius žodžius, tokius kaip senesni pasikartojantys neuroniniai tinklai (LSTM ir GRU). Modelis priklauso GPT (generatyvinei iš anksto išmokytai transformatoriui) serijai, tai reiškia:
\
- Iš anksto apmokytas: Iš pradžių jis buvo mokomas milžiniškų terminų (knygos, straipsniai, svetainės ir kodas).
- Generacinis: Jos užduotis yra generuoti tekstą, o ne tik klasifikuoti ar išgauti faktus.
\ ChatGPT atsakymai atsiranda dėl stochastinio proceso, o ne griežtos taisyklės. Tai neprisimena ir atkuria tekstus, bet sukuria atsakymus naudodamas tikimybinį modelį.
Žodžių prognozė kaip tikimybinis procesas
Kai „ChatGpt“ reaguoja, jis nesirenka vieno teisingo žodžio, bet apskaičiuoja tikimybės pasiskirstymą.
\
P (wi | w1, w2,…, wi-1), Kur:
- „Wi“ – kitas sakinio žodis
w1, w2,…, wi-1-ankstesni žodžiai
- P (wi | w1,…, wi-1)-tikimybė, kad „wi“ bus kitas žodis
\ Pavyzdžiui, jei paklausite: „Kokia diena šiandien?“ „ChatGpt“ gali turėti skirtingas tikimybes:
\
- „Pirmadienis“ – P = 0,7
- „Trečiadienis“ – P = 0,2
- „42“ – p = 0,0001
\ Dažniausiai tai pasirenka žodį su didžiausia tikimybe, tačiau dėl kartos temperatūros (parametras, kontroliuojantis atsitiktinumą), kartais gali pasirinkti mažiau tikėtiną variantą, pagrįstą kontekstu.
Konteksto įtaka ir informacijos pamiršimas
„ChatGpt“ veikia su ribotu konteksto langu, tai reiškia, kad jis „prisimena“ tik paskutinius NN žetonus. „GPT-4“ konteksto langas yra apie 128k žetonų (apie 300 puslapių teksto). Jei svarbi informacija yra už šio konteksto ribų, ji gali:
\
- Pamirškite detales (konteksto iškarpymo efektas)
- Informacija apie makiažą (stochastinis procesas)
Vis dėlto „ChatGpt“ dažnai gali ištaisyti savo atsakymą, kai paklausite, ar tai tikrai. Tačiau „ChatGpt“ dažnai gali ištaisyti savo atsakymą, jei paklausite, ar tai tikrai.
AI kartais taiso save, bet kodėl?
Kai klausiate Chatgpto: „Ar tikrai?“ Jis pakartoja savo atsakymą naudodama naują kontekstą, kuriame yra abejonių. Tai lemia:
\
- Atsakymo tikimybių perskaičiavimas.
- Pasirinkus labiau tikėtiną variantą, jei jis egzistuoja.
\ Šį procesą galima paaiškinti Bajeso tikimybe.
\
P (a | b) = p (b | a) p (a) / p (b), Kur:
\
P (A | B)-tikimybė, kad atsakymas A yra teisingas, atsižvelgiant į jūsų tolesnį klausimą B.
P (B | A) – tikimybė, kad būtumėte paklausę, ar „ChatGpt“ iš pradžių buvo teisinga.
P (A) – pradinė „ChatGpt“ atsakymo tikimybė.
P (B) – bendra tikimybė, kurios jūs paprašytumėte.
\
Per daug informacijos jums? Smegenys perkaito? Įsivaizduokite, kad AIS taip pat pribloškia didelę informacijos kiekį.
Klaidos dėl perpildymo ir triukšmingų duomenų
Masinis teksto duomenų kiekis patenka į „ChatGpt“ mokymus, įskaitant triukšmą ar prieštaringą informaciją, pavyzdžiui::
\
- Kai kurie šaltiniai teigia, kad žemė yra apvali, o kiti teigia, kad ji plokščia.
\
- PG ne visada gali nustatyti, kuri informacija yra tiesa, kai ji pasirodo su skirtingomis tikimybėmis.
\

Tai yra modelio haliucinacijų pavyzdžiai, atsirandantys dėl to, kad ChatGPT svoriai yra mokomi tikimybinių žodžių asociacijų, o ne griežtos logikos.
Esmė
Štai ko mes galime iš to pasimokyti. Chatgpt haliucinatai, nes tai:
\
Prognozuoja tikimybiškai, o ne deterministiškai.
Turi ribotą atmintį (konteksto langas).
Perskaičiuojamos tikimybės, kai apklausti.
Turi mokymo duomenis, į kuriuos įeina triukšmas ir prieštaravimai.
\
Tai taip paprasta. Tikiuosi, kad nepavargote. Jei tai padarėte, tai geras ženklas, nes tai reiškia, kad jūs galvojate kritiškai, o tai būtent tai turėtume daryti dirbdami su AI.