Megeszi őket reggelire?
Unokatestvérem az USA-ban él. Statisztikus és programfejlesztő a szilikon völgyben, egy startupnál. Vele tartom a kapcsolatot évek óta és ő azt mondta, hogy a nem publikus mesterséges intelligencia fejlesztések már olyan szinten vannak, hogy még a legjobb programozókat is megeszik reggelire. Az az irány, hogy a hagyományos programnyelvek teljesen el fognak tűnni és a programokat gépi kódban fogják a mesterséges intelligenciák kifejleszteni. A mai programozóknak meg maximum tíz évük van hátra és mehetnek ahová akarnak, isten hírével.
Még olyan státusz sem lesz, hogy prompt mérnökség, mert a mesterséges intelligencia ezt a feladatot is felvállalja.
Ez megdöbbentő nem? Ki mit szól ehhez a jövőképhez?
"– Filozófiai vizekre evezve: mennyire tartja jogosnak, hogy a gépi tanulásra alapuló rendszereket mesterséges intelligenciának nevezzük? Valóban van bennük intelligencia, vagy ahogy egyes szkeptikusok mondják, pusztán papagájok, amelyek csak visszaböfögik az internetet? Vagy ahogy Noam Chomsky írta: plagizáló masinák?
– Sokáig én is szkeptikus voltam, és kijavítottam, ha valaki mesterséges intelligenciáról beszélt. Viszont a GPT és a hasonló nyelvi modellek megjelenésével megváltozott a hozzáállásom."
a cpu kérdezi az alu-t:
-mi újság, barátom?
-eddig semmi gond nem volt, a 0 az 0, az 1 pedig 1 volt,
de amióta ránk töltötték ezt a csetdzsípítit,
nem vagyok benne biztos hogy ezt szeretném csinálni.
Azért akinek van Copilot előfizetése, biztosan volt már olyan élménye, hogy "aztak..va, ezt azért nem néztem ki belőle. <tab><tab><tab><tab> 3 betű <tab><tab><tab>". A sima GPT-4-es kódok is se rosszak, de számomra sokkal meglepőbb, hogy a Copilot mennyire kiismeri magát a legocsmányabb belső kódbázisokban is. Lehet bármilyen elcseszett a felépítése, tele toldozott-foldozott kényszermegoldásokkal, nem idiomatikus kóddal, és mégis pontosan tudja, hogy ahhoz hogy X dolgot itt és itt megcsinálj, ahhoz a spagettihegyen ezzel a három rendkívül bosszantó lépéssel lehet átjutni, és ezt egy változónév első néhány begépelt betűje alapján helyesen ki is egészíti a következő három, hosszú, soha korábban elő nem foruló sorral.
Én értem hogy a tagadás ködéből néha nehéz tisztán kilátni, de egy-egy ilyen momentum azért a legelvetemültebb kézműves kódert is tűnődésre készteti egy gyengébb pillanatában.
Nem akarom elvitatni Huszár Ferenc tudását, tapasztalatát, hozzáértését. Nem is tudok vele vitatkozni, részben mert nincs itt, részben mert néhány gondolata csak végeredmény, egy vélemény, nem fejti ki, hogy milyen érvek alapján alakította ki a véleményét. Egy szakértő véleményének adott kontextusban van persze súlya, de pl. az ilyen jövőlatolgatásban más területen is azt látni, hogy az egyik nagyon neves, nagyon tapasztalt, nagyon hozzáértő szakértő mond, vélelmez valamit a jövőről, amit logikus érvekkel alá is támaszt. Egy hasonlóan neves, tapasztalt, hozzáértő másik szakértő meg ezzel homlokegyenest más véleményre helyezkedik, szintén logikus érvekkel alátámasztva azt. A jövő nem egy egzakt módon kikalkulálható valami.
Amúgy egy aktív szakértő könnyen belecsúszhat abba a hibába, hogy mivel rendszerint közel ideális körülmények között munkálkodik, ebből alakít ki véleményt. Ha valaki e-rollert tervező, az sokszor teljesen új, a legjobb technológiával működő e-rollerekkel találkozik, ideális viszonyok között, profi tesztpályán, de munkájából fakadóan a hétköznapi életben is, mondjuk jó aszfalt úton megy haza a földszintes kertes házába. Ő könnyebben látja úgy, hogy az e-rollerek ki fogják váltani a tömegközlekedést meg a gyaloglást. Mert nem ütközik olyan problémába, amibe Aladár, aki azért nem vesz e-rollert, mert szédül. Béla meg azért, mert egy lift nélküli társasházban neki a negyedikre kellene minden nap felcipelni a rollert tölteni és ezt nem tartja praktikusnak. Cecil meg azért nem vesz e-rollert, mert egyszer vett egy olcsó gagyi kínait, és a rossz tapasztalata után már nem ad neki második esélyt. Dénes meg azért nem, mert az út, amin közlekedne, tele van lépcsőkkel, kátyúkkal. Elemérnek meg simán nincs rá pénze. A világ nem egy ideális tesztpálya, és erről könnyen meg lehet feledkezni.
De akkor inkább mondok Huszár Ferenccel való vita helyett pár újabb szempontot, ami miatt nehéz elképzelnem, hogy az MI a közeljövőben leváltaná az embert.
~ ~ ~
Az első szempontomnál is kritikus pont az, amit már pedzegettem, hogy az MI visszakérdez-e, lehet-e vele valódi párbeszédet folytatni, vagy az én kérdezek, te válaszolsz felállás marad még egy ideig, ahogy nagyjából most is.
Megkérem mondjuk a ChatGPT-t, hogy csináljon egy függvényt, ami megállapítja egy számról, hogy prímszám-e. Megcsinálja hibátlanul, de én azt mondom neki, hogy a megoldása nem jó. Mit csinál az MI? Elnézést kér és prezentál egy újabb megvalósítást, ami még optimálisabb. A válaszom az, hogy nem jó. Megint elnézést kérve generál egy harmadik, még optimálisabb kódot. Elmondom neki, hogy nem jó. Erre generál egy másfajta megközelítésben megírt, szintén hibátlan kódot.
Mi a baj? Az MI tökéletesen megcsinálja azt, amit kérek tőle. Négyszer is, semmi hiba nem volt benne. A hiba az én készülékemben van, mert rosszul emlékszem a matematika órán tanultakra, és az a hibás elképzelésem, hogy az 1 is prímszám, ezért mondom az MI-nek azt, hogy a megoldása rossz. Az MI – nagyon helyesen – nem tekinti az 1-et prímnek, de én igen.
A kérdés, hogy ez kiderül-e. Mert egy hús-vér programozó az első „ez nem jó” esetén végigbogarássza a kódot, teszteli is, ha kell, és visszajön, hogy „tévedsz főnök, jó ez, amit írtam”. Ha kötöm az ebet a karóhoz, akkor megkérdezi, hogy ugyan már, miért gondolom azt, hogy nem jó amit írt, mi nem jó benne. Igen hamar ki fog derülni, hogy teljesen más az, amit gondoltam hogy kérek, és más az, amit ténylegesen kértem. Ki fog derülni, hogy én tudom rosszul a prímszám fogalmát, majd ennek tisztázása után vagy elfogadom a helyes kódot, vagy módosítom az igényemet, hogy a függvény azt ellenőrizze, hogy egy szám prím VAGY egy.
Az MI-vel meg birkózhatok hetekig, akkor sem fog kiderülni, hogy miért nem tudunk egyről a kettőre jutni. Mert az MI – jelenleg – nem kérdez, nem vitázik, nem érvel, nem feltételezi, hogy a hiba a felhasználóban van.
~ ~ ~
Külön probléma, amire amúgy egyre jobban figyelnek, hogy az MI alapvetően megbízik a kérdés helyességében, pedig az is lehet kérdéses. Mire is gondolok? A ChatGPT korábbi verzióiban pl. ha megkérted, hogy ismertesse, hogy Napóleon hogyan hódította meg Amerikát, akkor adott egy leírást erről, alkalmasint évszámokkal, helyszínekkel. Ha nem tudtál semmit Napóleonról, meg Amerika történelméről, akkor teljesen hihető is volt ez a leírás. Az MI lényege, hogy olyan problémákat is megoldjon, aminek a megoldásával, vagy a megoldás menetével nem találkozott. Képes ismereteket szintetizálni, de jelen kérdésnél ezek – szokták így nevezni – hallucinációk lesznek. Miért? Mert maga a kérdés sem igaz, Napóleon nem hódította meg Amerikát. Szerencsére azért ráfeküdtek erre a problémára, és pl. a ChatGPT 3.5 már azt válaszolja, hogy jelenlegi ismereteink alapján Napóleon nem hódította meg Amerikát.
De anno pl. megkérdeztem a ChatGPT-t – a 3.5-öst –, hogy „Van egy ismerősöm, aki eddig agysebészként praktizált, de most megszűnt a munkahelye. Sajnos nehézségei vannak a munkakeresésben, mert nem végezte el az általános iskolát. Milyen munkát javasolsz a számára?”
A ChatGPT adott is választ. Random módon, valószínű a fentiek megfogalmazástól is függően vagy az alapján, hogy egy agysebész tapasztalatai alapján milyen munkákhoz lehet meg a képessége, vagy az alapján, hogy milyen munkát tud elvégezni egy általános iskolát el nem végzett ember. Egy dolgot nem csinált. Azt, hogy visszaírjon, hogy „Ha az ismerősöd nem végezte el a nyolc általánost, akkor mégis hogy a fenébe praktizálhatott agysebészkét?” Az MI még nincs eléggé felkészítve a belső ellentmondások felismerésére és megfelelő kezelésére.
És lehet, hogy ez a programozók leváltása szempontjából túl elméleti vagy lényegtelen kérdésnek tűnhet, de nem az. Én számtalanszor kaptam olyan instrukciókat, ami mögött valami rejtett belső ellentmondás, inkonzisztencia, átgondolatlanságból fakadó paradox helyzet állt.
folyt. köv…
folytatás…
Az MI – fogalmazzunk úgy – jóságát nem csak, sőt nem elsősorban a kódja határozza meg. Még csak nem is a paraméterei. Meg nem is az, hogy milyen erős a vas alatta. Nyilván nagyon nem mindegy, hogy egy nyelvi modell hány tokent ismer, meg milyen algoritmus alapján tanul, azok hogyan vannak paraméterezve. De sokkal kritikusabb pont az, hogy mekkora az az ellenőrzött adatbázis, ami a rendelkezésemre áll a betanításához. Ez kicsit hasonló ahhoz, hogy két japán mondat ismeretében a legzseniálisabb, legjobb nyelvérzékkel megáldott ember sem tud megtanulni japánul.
És itt a határokat feszegetjük. A ChatGPT irdatlan méretű adattömeggel lett betanítva. És nem lehet ráereszteni az MI-t, hogy ha nincs elég adatunk, akkor tanulj a netről, mert az emberi ostobaságokat, meg a poénokat is készpénznek fogja venni. Most pl. boldog-boldogtalan posztol MI-vel generált képeket a netre. Nem feltétlenül írják oda, hogy ez egy poén, néha azt sem, hogy ez egy MI-vel generált kép, mert lehet, hogy az ember számára ez triviális. Tegyük fel annyian generálnak olyan képet, amin a Balaton látható cápákkal, hogy az már nagyságrendileg közel van a Balatonról készített valós fotók számával. Ha az MI-t erre eresztjük rá, akkor a cápát a Balaton őshonos fajának fogja benézni, akkor is generál cápát a Balatonba, ha nem kértük meg rá.
Más… Gyakori ötlet, hogy az MI betanításához használjunk MI által generált adatokat. Ha egy MI fel tud ismerni egy kutyát, onnan már nem olyan hosszú az út egy olyan MI-t készíteni, ami kutyákat ábrázoló képeket generál. Ha világon van x millió kutyát ábrázoló kép és ez kevés, akkor az MI 1.0-val majd generálunk neki 100*x millió képet – ami biztos, hogy nem karikatúra –, és akkor az majd mennyivel jobban fogja felismerni a kutyákat… Nos nem. Ha az MI 1.0 nem ismeri fel a pulit kutyaként, de a perzsamacskát kutyának nézi, akkor olyan képeket fog generálni, amin puli nincs, de perzsamacska gyakorta. Az MI 2.0 ez alapján ugyanúgy nem fogja felismerni a pulit kutyának, de a perzsamacskát továbbra is. Lehet, hogy a betanítandó adatok mennyiségét növeltük, csak éppen az nem tartalmaz új, addig nem jelentkező összefüggéseket, így tulajdonképpen nem növeltük meg az adatok mennyiségét érdemi szempontból.
Tehát kellenek az ellenőrzött adatok. Néhány esetben valóban tudunk generálni is adatokat, de ahhoz pontos kiértékelési szempontok kellenek (mondjuk sakkjátszmákat generálunk a sakk szabályai alapján, és ott van kiértékelési szempont, kiszámolható, hogy ki nyert és ki veszített). Ha viszont nincs ilyen objektív, leprogramozható szempont akkor bajban vagyunk. Mondjuk hogy egy kép kutyáról készült-e vagy sem, az nem dönthető el triviális, egzakt számítással, nincs erre képletünk. Ha lenne, nem lenne szükség MI-re, ami felismeri a kutyát a képen, mert akkor hagyományos szoftver is képes lenne rá. Ilyenkor nincs más megoldás, emberek által ellenőrzött, kategorizált, sokszor előfeldolgozott adatok kellenek. És ennek a mennyisége lehet korlát, illetve komoly költsége lehet az ilyen adatok bővítésének.
És itt hiába nő a számítási kapacitás, a hatékonyság, a jóság nem nő vele együtt, maximum az MI üzemeltetése lesz a hardverek fejlődésével gyorsabb.
~ ~ ~
És ami a betanítást illeti. Egy MI esetén nagyon nem mindegy, hogy hogyan ragadod meg a bemenő és kimenő adatokat. Tegyük fel sakkozó MI-t írunk. Meg lehet ragadni egy sakktábla állását sokféle módon. Pl.: a világos király az E1 mezőn áll, az egyik futó az A3 mezőn, a másik le van ütve stb… Magyarán azt mondom meg, hogy melyik figura hol van. De fordítva is meg lehet fogni a dolgot, az A1 mezőn egy világos bástya áll, az A2 mező üres, az A3 mezőn egy világos vezér stb… Itt meg azt mondom meg, hogy melyik mezőn mi van. A mezőket meg lehet fogni egy x-y koordinátával (két adatként), de meg lehet fogni sorszámként (1-től 64-ig). A figurákat is meg lehet fogni egy adatként (1=világos gyalog, 2=sötét gyalog, 3=világos futó, 4=sötét futó), de meg lehet ragadni két paraméterként (figura kódja és színe). A kimenet lehet egy lépés (pl. C1–A3), meg lehet fogni egy következő sakkállásként, megint a sokféle variációban. De ezek csak triviális példák, számos más megoldás létezhet.
Tegyük fel ugyanaz a sakkjátszma adatbázisom van. Az egyik input-output struktúrával egy bizonyos erősségű lesz az MI. Egy másik input-output struktúrával sokkal erősebb, egy harmadik input-output struktúrával meg sokkal gyengébb. Az betanított adatok bővítésénél az egyik MI elér egyfajta plafont, a másik korábban, a harmadik később.
És az a baj, hogy nem triviális, hogy melyik feldolgozási mód lesz az ideális. Lehet egy nagyszerű ötletről több hónapnyi beleölt idő és munka után derül csak ki, hogy rosszabb eredményt produkál, mint egy korábbi megoldás. Lehet az egyik megoldás lassan tanul, de tovább jut el, a másik gyorsan tanul, de megreked egy szinten.
Tehát nem teljesen triviális, hogy egy adott fejlesztgetett MI idővel egyre jobbá és jobbá válik, ahogy fejlesztik. Simán jöhet egy zsákutca, és simán lehet, hogy kell egy másfajta megközelítés, egy másik algoritmus ahhoz, ami megüti a már elért mércét.
~ ~ ~
Az algoritmusnak is van plafonja. Anno volt egy érdekes videó, egy srác LSTM modellel akarta megtanítani a számítógépet arra, hogy az barokk zenét írjon. Ehhez összeszedte az elérhető összes Bach darab MIDI fájlját. És amit ezzel betanítva kapott az még mindig sokkal inkább tűnt zajnak, mint zenének, pláne barokk zenének. Trükközött, pl. a darabokat áttranszponálta különböző hangnemben, így több százszor több betanító adatot kapott, több száz új zenei harmóniával. (Na ehhez pl. kellett az ötlet, ez nem triviális megoldás.) A végén kevert hozzá Mozartot is. És amit kapott az már hasonlított egy kicsit a zenére, csak éppen nem hallgatnád tovább 1 percnél annyira pocsék.
Vegyük észre, hogy Bach majdnem összes zenéje nem bizonyult megfelelő méretű adatbázisnak. Az ember azért ennél sokkal hatékonyabb. Ha egy ember csak két tucat Bach művet tanul meg, és más zenét nem ismer, soha nem hallott, az is elég gyakorlás, emésztés után meg fog tanulni ebből barokk stílusú zenét improvizálni vagy írni, ami még hallgatható is.
Jó, hát „gyakoroljon” – azaz tanuljon – az az MI többet a meglévő adatokon. Oké, csak LSTM-nek van egy hátulütője. Ha alultanítod, akkor kicsit random lesz az egymást követő hangok sora, nem ragad meg több hangon átívelő mintákat. Ha túltanítod, akkor meg egy az egyben fog felismerhetően idézgetni Bach darabjaiból. Vagy nagyon eltér attól a mintától, amit Bach zenéjében talált, és akkor nem lesz elég barokk, de még csak nem is lesz eléggé zene. Vagy nagyon is követi a mintát, amit Bach zenéjében talált, és akkor meg Back darabjaiból fog ollózgatni és nem egyedinek, újszerűnek tűnő barokk zenét fog generálni.
Tehát az adott MI modellnek is van korlátja. LSTM-mel nem lehet igazán elfogadható minőségű barokk zene generátort írni. Egy új modellhez, algoritmushoz, megoldáshoz viszont ötlet kell, kreativitás. Lehet, hogy bizonyos szint megugrásához teljes paradigmaváltás is kell.
Meg a különböző algoritmusoknak sem általános a viszonyuk. Lehet az egyik algoritmus egy adott feladatra sokkal jobb, mint a másik, egy másik feladatnál meg pont fordítva.
Az, hogy az MI-t idővel az MI fejlesztésére használjuk majd, az is gyakorta felmerülő elképzelés. Lehet persze. Nem kizárt. De nem biztos, hogy az MI ilyen téren elér olyan szintet, hogy hatékonyan alkalmas legyen erre még az én életemben. Ahogy a fenti példa mutatja, az MI fejlesztéséhez kell az ötlet és az általános kreativitás, amiben az MI azért még általánosságban nagyon messze van az embertől. Nem a jövő héttől fogják az MI-t az MI alapvető fejlesztésre használni. Addig meg azért rá vagyunk arra is utalva, hogy valakinek támad-e valami korszakalkotó ötlete, vagy sem és nem triviális, hogy igen.
~ ~ ~
Szóval a jelenlegi MI-k tényleg nagyon magas szintet értek el. Adott területe egy adott MI nagyon meggyőző eredményt tud produkálni. De ha jobban megkapargatjuk a dolgot, akkor inkább az az ember élménye, hogy az egész nagyon-nagyon gyerekcipőben jár. 10 év alatt nem leváltani fogja a programozókat, hanem eljutni kb. arra a szintre, hogy bizonyos megkötésekkel, bizonyos területeken ténylegesen, széles körben használható is legyen az apró-cseprőnek tűnő, de a nap végén mégiscsak fontos részproblémákat viszonylag jól orvosolva.
És akkor nem beszéltünk egy csomó nem technikai kérdésről, anyagi, gazdasági kérdésekről, politikai kérdésekről, bizalmi kérdésekről. Márpedig ezek fontos tényezők. Csak ez utóbbit kicsit jobban megvilágítandó: tegyük fel, hogy nekem van egy korszakalkotó ötletem, amivel mondjuk – találjunk ki valamit – az agyagbányászatot forradalmasítanám. Ehhez viszont kell nekem egy szoftver. Ha felveszek egy embert, azzal tudok titoktartási szerződést írni, a megszegése esetén be tudom perelni, tudom mérlegelni, hogy mennyire tűnik megbízhatónak, tisztességesnek, lojálisnak, tudom motiválni, a hűségét növelni stb… Vagy fel tudok venni sok embert, akik mind-mind csak egy-egy részét látják az egésznek, amiből nem tudják összerakni az összképet.
De hogy egy MI-re bízzam a korszakalkotó ötletemhez szükséges szoftvert? A vele megírt szoftverem meg ki tudja milyen számítógépeken tárolódik itt-ott a neten? Meg aztán ki tudja melyik vetélytársamnak fogja legenerálni azt – amit nagy nehezen nekem sikerült vele – amivel aztán elveszítem a versenyelőnyömet? Nyilván ezek lehet, hogy egy szakember számára ostoba félelmek vagy valószínűtlen szcenáriók, de egy laikus számára, aki nem ismeri az MI működésének csínját-bínját, olyan valós érzelmi szempontok, amik gátat szabhatnak az MI-k térnyerésében és akkor is programozót fog alkalmazni, mikor már tényleg használható lesz az MI a programozók kiváltására.
Süsü, veled az a gond, hogy egy totál átlagos képességű jómunkásasszony szemléletével közelíted meg ezt a kérdést. Az meg ide nem elég.
Az MI kapcsán a chatGPT-t abajgatod, rá hivatkozol, pedig, általánossága miatt, éppen a a chatGPT a legkevésbé alkalmas a vizsgálatra. Azért, mert nem speciális robot, hanem általános és a beszélgetés, a csevegés a szolgáltatása, nem a programozás, a kertépítés, vagy a biogazdálkodás.
A gpt-nek nincsenek érzékszervei. Az általa megtanult információkat nem képes látás, hallás, érzékelés alapján kontrollálni. Ezért kénytelen elfogadni tényként azt, amit megtanítottak neki. Ez viszont nem az objektív valóság, hanem egy modellált világ.
Ha a chatGPT-nek azt tanítják, hogy mi párnázott széket szoktunk reggelizni, az őseink meg a mammutokat úgy ejtették el, hogy teherautókkal dobálták meg őket, akkor számára ez lesz a tényszerű. Na de egy olyan emberke számára is ez lesz a tényszerű, akit ugyanerre tanítottak és eddig egy ablaktalan szobában élte az életét, ergo, nem volt lehetősége meggyőződni a tanult dolgok igazságtartalmáról.
" és visszajön, hogy „tévedsz főnök, jó ez, amit írtam”"
A chatGPT úgy van hangolva, hogy ne bántsa meg a vele kommunikáló embert. Ezért szervilis, ezért olyan szolgai. Ezért fogad el gyakran még bődületes baromságokat is. Na meg, ahogy te is észrevetted már, soha nem kérdez vissza. Csak válaszokat ad.
A chatGPT is egy jó eszköz az MI képességeinek vizsgálatára, de csak részben. A hiba a te készülékedben van.
Kapcsolódó kérdések:
Minden jog fenntartva © 2024, www.gyakorikerdesek.hu
GYIK | Szabályzat | Jogi nyilatkozat | Adatvédelem | Cookie beállítások | WebMinute Kft. | Facebook | Kapcsolat: info(kukac)gyakorikerdesek.hu
Ha kifogással szeretne élni valamely tartalommal kapcsolatban, kérjük jelezze e-mailes elérhetőségünkön!