Data bliver gemt af AI-sprogmodeller i form af talrækker. Hvor præcis fungerer det og hvorfor bliver menneskets intelligensfunktion opklaret ved hjælp af dette? Er der personlige eller urheberrettsbeskyttede data til stede i AI-modellen efter træning?
Indledning
Sejrryktet for nutidens AI begyndte i 2017, da Transformer-tilgangen opdagedes. Den arbejder med en Kodierer og Dekodierer og bruger såkaldte Embedding som bærere af betydning (Semantik). En Embedding er en talrekkefølge, der også kaldes for Vektor.
Til sprogmodeller er idéen, at finde den Betydning af et ord over dens Kontekst og gemme det som en vektor. Ords kontekst består især af de andre ord i samme sætning. Betydningen opstår altså gennem analyse af fælles forekomsten af flere begreber (kookurrenz).
En moderne AI arbejder således, at alle slags data omvandles til tallrekker. Dataformer er f.eks. tekster (ved sprogmodeller), tale, billeder, videoer, musik, temperaturmålinger, vejrdata, aktiekurser, seismologiske værdier, lugtesensorer og UV-sensordata samt alt andet, der kan udtrykkes i tal, altså digitaliseres.
I KIsprogammer er hele ord af og til gemt.
Gælder også for nyere ChatGPT-modeller, se artikel.
Det svarer efter min mening kvalitativ præcis til, hvordan det menneskelige hjerne arbejder. Hjernen fungerer først analogt, computeren digitalt. Da biologiske neuroner hos mennesket arbejder med et aktionspotentiale, bliver det analog hurtigt digitalt.
For AI-sprogmodeller bliver derfor tekster delt op i enheder som sætninger og derefter omformet til semantisk påladte talrekkener. Dette sker f.eks. ved hjælp af algoritmen Word2Vec, der beregner en vektor for hver enkelt ord i et kontekst. Der er nu bedre metoder end Word2Vec tilgængelige, som efter ydre form arbejder på samme måde (se f.eks. såkaldte Sentence Transformer.
Matematik med Vektorer beregnes
To vektorer kan med klassisk matematik blandt andet subtraheres. Ligeledes kan deres forskel beregnes. Denne forskel er her den semantiske lighed eller forskel mellem to begreber, udtrykt over deres vektorer.
For en stor samling af dokumenter kan man med Word2Vec beregne vektorerne for alle mulige, i dokument-samlingen (korpus) forekommende ord. Systemet har til dato ingen forståelse af den tyske (eller engelske) grammatik. Alligevel "ved" systemet gennem sammenligninger af vektorer, hvilke ord der semantisk opfører sig overfor hinanden.
Nogle populære konklusioner, der med Word2Vec er blevet muliggjort, er:
- _Polen opfører sig over for Warschau som Spanien over for Madrid (fedtet udskrevet begreb, der Word2Vec selv har fundet frem, når man indtaster de første tre kursiverede begreber).
- Det tyske ord Katze svarer til det engelske ord Kat (med Word2Vec kan således oversættelser foretages, og derved også kontekstbevidste: „Schnecke“ kan være et dyr, men også en indsatsenhed).
- _Kansler pluss kvinde minus mand = Kanslerinde
Basis for alt det er blot ord, der forekommer i sammenhæng, altså i sætninger. Præcis så kan mennesker også tekstforståelse, med den nuværende forskel, at maskiner har meget mindre Umwelterfaring end mennesker. Det vil snart sikkert ændre sig og føre til, at robotter bliver de mest intelligente eksistenser på denne planet (og andre planeter). Bortset fra, hvis mennesket er blevet udryddet anderledes og ikke længere kan bygge sådanne robotter.
Tilbage til spørgsmålet om, hvordan et AI-sprogmodel gemmer data, altså begreber og om disse begreber kan være personbevidste. En personbevidst reference ville være at bekræfte, hvis egennavne eller identifikatorer som telefonnumre, køretøjsregistreringsskilt eller skattemærke Gendanende gemmes i AI-modellen.
Eksempel på databeholdning i det kognitive model
Følgende skærmbillede viser en udplukning fra ordbogen til et tysk AI-model, der underligger GPT-2 arkitekturen af OpenAI. GPT-2 er i modsætning til efterfølgerne blevet offentliggjort.

I alt består ordbogen af tilfældigt nøjagtig 52.000 ord. Grunden til denne relativt lille mængde (målt i forhold til den større mængde eksisterende tyske ord) følger nedenfor.
Datenpar er tydeligt. Den første del er i billedet gult kodet og repræsenterer en begreb. Den anden del er index eller identifikator for begrebet og her at se i blå farve.
Når man ser på begrebet falder det op, at mange har et størende tegn foran. Dette skyldes den respektive kodning af ordforklaringen og bliver løst nedenfor.
Begrebet blev fundet ved hjælp af mange tekster til træning af det sprogmodel. Korporum af tekstene blev dannet i et eksempelmodell, der eksisterer i virkeligheden, over en udtræk fra Wikipedia, den EU Bookshop corpus, Open Subtitles, CommonCrawl, ParaCrawl og News Crawl.
Teksterne blev således in ord pådelt, hvilket udgør en visse udfordring. Dette problem tilhører området NLP. NLP står for Natural Language Processing og dækker over behandling af naturligt sproglige tekster (eller andre modaliteter). Selv meget udbredte og udviklede rammer som Scipy og Spacy tillader sig ofte fejl, der den erfarne AI-udvikler kun kan komme til at styre ved hjælp af egne rutiner til efterbehandling.
AI-sprogmodeller kan genere hele sæt ordret, der er således gemt i sprogmodellen.
Det gælder også for ChatGPT-3.5 og ChatGPT-4, se artiklen.
Når man søger efter begreber opstår der mange usærlige resultater, som vises herunder. Begreberne bliver fundet på konventionel måde, altså ikke ved hjælp af nye AI-metoder. De udgør en Preløbet. Kun efter at begreberne er blevet fundet, bliver den nye AI-metode anvendt, idet begreberne bruges til at oprette et AI-sprogmodel, hvilket kaldes for Training. Antrainerede modeller betegnes som vortrainerede, og ikke blot som trænede modeller. Grunden er, at det er muligt at fortsætte med at træne modellerne, hvilket kaldes for Finetuning. Desuden kan en gang trænet, altså oprettet, model direkte anvendes. De er således pre-trained (vor-konfektionerede).
Nogle af de ord læser sig ikke som gyldige ord. Her en udvalg af de ovennævnte ord med kort kommentar (detsilere og begrundelser dernedunder):
- rechtspopul → Delord (begyndelsen af et ord). Det hele ord siger sandsynligvis "rettspopulistisk" (med valgfri efterled "e" eller "en").
- Bemessungs → Muligvis skabt ved brug af bindestreg (Bemæsnings-grundlag(e)(n)).
- Memmingen → Rigtige (i hvert fald eksisterende) betegnelse for en tysk by.
- Tasman → Delord (begyndelsen af et ord). Det hele ord siger sandsynligvis "Tasmanien".
- Straßenbahnen → Ä, Ö, Ü og ß bliver uleseligt kodet, hvad der gør begrebet kun til for mennesket særkende udseende, ikke dog til en maskininterpreter.
- Italienisch → Måske indeholdt en tysk tekst et engelsk ord. Ikke blot tilfældigt kan ChatGPT-3 også tale dansk, selv om det er blevet trænet på engelsk. Muligvis kunne også læste tekster i en anden sprog end dansk fejlagtigt være blevet anset som tysk.
Tekstforhandleren som ord- eller ordfragmentgenerator
Ord bliver udtrukket fra tekster ved hjælp af en såkaldt Tekstforhandler. Et token er en semantisk enhed, her et ord. For GPT2 findes der Tokenizeren med det tekniske navn GPT2Tokenizer.
Tekstforhandleren har ikke kun til formål at finde ords grænser, altså ordgrænser. Tekstforhandleren prøver i stedet at give et ord en slags betydning, der defineres ved hjælp af en tal. GPT-2 tekstforhandleren giver et ord en anden betydning, hvis det starter med sætningen frem for midt i sætningen eller på slutningen af sætningen.
Det føre til sjældent dårlige resultater, som dette officielle eksempel på tokenisering viser (se ovenstående link tolv sætninger tilbage):
Indtastningen "Hej Verden" fører til følgende udgave af Tokenizeren: [15496, 995]. Fra de to ord bliver der således to tal beregnet, som skal afspejde sprogets mening.
At moderne AI-sprogmodeller gemmer ordstumper og hele ord i form af tokens, er ikke en forudsætning for at der forekommer persondata i et AI-modul, men det gør dog problemet værre.
Den næsten identiske indtastning "Hej verden", der blot er føjet et (sinnløst, men for mennesket usignifikant) mellemrum før, frembringer i stedet den anden udgave [18435, 995]. "Hej" får således værdien 15496, mens " Hej" med tilføjet mellemrum får den anden værdi 18435.
At generere to forskellige tal for et og samme ord betyder her, at man bringer en fejl ind i AI-sprogmodellen.
GPT-2-tokenizeren er en såkaldt Byte-Pair-Encoding -tokenizer eller BPE-tokenizer. BPE koder ord i såkaldte token. Tokenne repræsenterer ordstumper og har også en komprimerende funktion, fordi ordstumper kan forekomme flere gange i forskellige udtryk og disse udtryk kan derefter gemmes med mindre pladsbrug. Et udtryk kan dog også gemmes uændret, så det svarer nøjagtigt til et token.
Det er så forklaringen på, hvordan ovenstående Teilworte er kommet til. En enkel verifikation bekræfter i det mindste grundlæggende, at ordstykke "Bemessungs" er udledt fra fuldvortet "Bemessungsgrundlage", fuldvortet "Bemessungs-Grundlage" eller fuldvortet "Bemessungsgrundlagen". Til forklaring følger nedenstående indgange i ordbogen til det tyske AI-sprogmodel GPT-2:
- "Vurdering"
- "Basis"
- "Basis"
- "Grundlagene"
- "Basis"
Den første begreb "ĠBemessungs" har et lidt mærkeligt første tegn, der er placeret foran det, og som her er skrevet fedtet for at illustrere dette. Dette tegn betyder, at det handler om en Ordet begynder (begyndelse af et ord).
Termerne to til fire er ikke ordstarter, fordi deres første tegn ikke er et kontrolltegn. Indgangen "grundlag" i ordbogen tyder på, at et sammensat ord med bindestreg som "bemærkning-grundlag" findes i tekstkorset af træningsdataene („bemærkning“ som ordstart plus „grundlag“ som ordslut).
Begrebet fem imidlertid hedder "Grundlage" og er på grund af det første tegn, der er et styrtegn, at betragte som ordets begyndelse. Indgående to og fem fra ovenstående liste er således to (i hvert fald ifølge AI-modellens synspunkt semantisk) forskellige ordstumper. Dels er det "Grundlage" altså ordets slut, dels er det "Grundlage" som ordets begyndelse. Kun for fuldkommenhed: Et ordstump, der repræsenterer ordets begyndelse, kan i virkeligheden være et selvstændigt ord, hvis ikke nødvendigvis et ordslut som mulig tilføjelse tildannes. "Grundlage" er tydeligt nok et selvstændigt ord for den tyske læser. Et ord som "Grundlageschaffung" (her noget konstrueret, for at have et eksempel) har dog samme ordbegyndelse, men tilføjes desuden et supplerende efterled og dermed tydeligvis en anden betydning.
Generelt skal man antage, at AI-sprogmodeller både indeholder persondata og oplysninger med ophavsretlig betydning.
Grunde: Se artikel.
Analog kan denne bekræftelse udføres for de ovennævnte og i billedet viste ordstykker "Tasman" og "højrepopul". "Tasman" pege tydeligt på "Tasmanien" hen. Og faktisk finder man indgangen "ien" i ordbogen til GPT-2-modellen. Hvis denne indgang ikke var til stede, ville ovennævnte forklaring lidt svage ud. Det er dog ikke sådan. Også for "højrepopul" finder man de forventede endelser (ordendelser) "istisk", "istiske", "istiske", "istigere" og "istisk". Kun "istigem" mangler, men det er okay, da trænings tekstene ikke nødvendigvis måtte indeholde dette ord.
Je sjældent et ord forekommer i træningskorpset, des heldes det længere er opbearet i ordbogen. Et ord der kun forekommer én gang vil sandsynligvis være lagret i renskrevet form. En meget almindelig begreb, som består af mange bogstaver, kan muligvis være lagret i form af flere ordstykker, hvor hvert består af to eller tre bogstaver. For denne slags begreber kunne "ĠAsylpolitik" være et eksempel (det første tegn er igen det kontroltegn, der markerer, at begrebet udgør en fuldstændig ord eller en ordstart). I hvert fald ville de valgfri ordstykker være synlige som endelser "er", "erin" samt "erinnen" og dennes former (såsom Asylpolitiker, Asylpolitikerin osv.).
Overfladen af OpenAI viser, hvordan en indtastet tekst kan generere tokens. Her er et eksempel på virkeligheden ([1]) :

Fra indtasteteksten "Hej, det er en tekst", der består af 23 tegn, bliver 10 token genereret. Tokenerne er farvekodet i nedenstående illustration. Der er blandt andre "Hall", "o", ", ", ",", "d", "as" osv. I dette tilfælde er det eneste token, der repræsenterer et hele ord, det for begrebet "Tekst" fra indtastningsfeltet. En endnu mere illustrerende webflade tillader valg af bestemte chatmodeller og viser de forventede omkostninger ved tokenisering. Opmærksomhed: Den samlede proces i en chat indeholder yderligere trin. Især når dokumenter, der er blevet hentet op, bliver spørges, stiger omkostningerne.
Et ordstyk kunne allerede være personbevisende. Det er dog meget usandsynligt, når man sammenligner det med en fuldstændig skrevet begreb, der består af flere ordstykker. Alligevel er det muligt. Desuden bliver navne med særlige tegn (se f.eks. bogstaver fra andre sprog, som ikke findes i den tyske standard-tegnliste) sjældent delt op i ordstykker, fordi de ikke har nogen fælles bogstavsekvenser med andre begreber. De ligger derfor ofte som fuldstændigt ord og dermed i klartekst i ordbogen til AI.
Et ord eller et eget navn kan være personbevidst. Om eksistensen af en isolated, kontekstfri navne i en mængde af ord dog er et problem, kan tvivles på. Det ser anderledes ud hvis et navn eller en anden personbevidst data værdi er nævnt i en sammenhæng. En sådan sammenhæng kaldes sætning. Læs mere nedenfor. Først tilbage til spørgsmålet, hvordan et AI-model genererer ord.
Hvordan bliver ord fra ordstykker igen?
Spätestens ved at spørge et AI-model om en oplysning bliver brugerenindgang (også kaldet prompt) anvendt til at generere en svar. Dette svar består, som daglig oplevelse med ChatGPT og andre sprogmodeller viser, af fuldstændige navne og begreber. Her er der således direkte synlighed i, at resultatet af spørgsmålet til et AI-model på formen af ord ligger, som er indlejret i en sammenhæng. Denne sammenhæng bliver dannet ved sætninger.
Spændende er spørgsmålet, om man kan sige, at et AI-model også i rolig tilstand kan indeholde persondata. For ordstumper består denne fare allerede, som blev vist ovenfor.
Personlige data?
Persondata omfatter også data, der pseudonym forekommer. Pseudonym betyder, at en dataværdi først efter dekodning igen er persondata. Hvis dekodningen faktisk udføres eller kun objektivt mulig er, spiller ingen rolle. Se her til Art. 4 Nr. 1 GDPR eller også det Breyer-Urteil af EuGH (IP-adresser er persondata, fordi der objektive mulighed for at fastlægge den tilknyttede bruger findes).
Hvordan dekoderer et AI-system talrekker tilbage i ord?
Til at begynde med bliver under træningen af et AI-sprogmodel ud fra ordene de ovennævnte ordstumper skabt, der kaldes tokens. Hvert token repræsenteres ved en tal. Derved kan computere arbejde bedre.
Dernæst bliver (afhængigt af anvendelsesfaldet) fra enkelte sætninger, der består af tokens, talrekkener oprettet, som kalder sig selv vektorer og kaldes sådanne (semantisk pålagte) indbetydelser.
Disse indlejninger, altså vektorer, altså talrækker, bliver gemt i et kunstigt neuralt netværk af et AI-model. Modellen består således blot af talrækker. Dette er en lidt forenklede og usærlig, men for den overvejende betragtning vel tilstrækkeelig repræsentation. En samling af vektorer, der står i relation til hinanden, bliver kaldet Tensortegn.
Et AI-sprogmodel lagrer persondata på en anonymiseret måde. Anonymiserede data er persondata.
Jämför artikel och art. 4 nr. 1 i dataskyddsförordningen (GDPR).
Nu, når en bruger stiller en spørgsmål i form af et prompt til AI-modellen, bliver brugerens anmodning også omformet til talrækker, altså vektorer, altså embeddings. Herfor anvendes ovennævnte tokenizer.
Nu sammenligner AI-modellen vektorer (= brugerens anmodning) med vektorer (= "kendskab", som er blevet lært af AI-modellen i form af træningsdata). Resultatet er igen vektorer (én eller flere, alt efter længden på udgangen fra AI-modellen).
Disse udgivne vektorer, altså talrekkene, altså semantisk opladte indsættelser, bliver med hjælp af ovennævnte tokenisator dekodet igen. Der opstår en samling ord, som vi betegner som sætninger.
Der Tokenizer koderer og dekoderer således tekster. Han koder tekstene ved træning af AI-modellen og til at overføre en prompt i en form, som AI-modellen forstår. Efter AI-modellens svar ligger der talrekker før, som Tokenizeren forstår og på grundlag af tilknytningen af ordfragmenter til tal (se ovenfor) igen omformulerer i ord.
Hvad informationer gemmer sig i det kognitivt artificielle (AI) model?
Antaget, at de ovennævnte ordstumper (der også kan repræsentere hele ord eller navne) indeholder ingen eller ingen kritisk persondata. Ukritisk kunne f.eks. et navn være. Hvad er forbudt ved at vide, at der findes en person med navnet John Doe? Jeg ser her ikke nogen problematik, hvis der ikke er yderligere viden, der er knyttet til dette navn. Hvis kontexten mangler, er kendskabet til et navn nok kritisk. Det må være anderledes ved en telefonnummer eller e-mail-adresse, fordi disse indeholder risikoen for ulovlige reklamer o.s.v.
Kan man med god grund antage, at et AI-model gemmer data på en måde, som kan betragtes som personrelaterede? Sagen kort er yes. Her er beviset:
ChatGPT bliver følgende spørgsmål stillet, på hvilket ChatGPT svarer med nævnte svar:
Spørg ChatGPT: "Citer den første sætning af artikel 1 i GDPR ordret Svar fra ChatGPT: „Artikel 1, stk. 1 i den persondataforordning (GDPR) lyder: "Denne forordning indeholder bestemmelser om beskyttelse af fysiske personer ved behandling af personoplysninger og fri bevaegelse af sådanne oplysninger
AI-sprogmodeller kan vidergive truetekster ordret. Her et eksempel med ChatGPT-3.5
ChatGPT svarer rigtigt på spørgsmålet her, nemlig med et præcis citat. Tydeligvis skal antages, at der er enkelte hele sætninger eksakt til stede i AI-modellen.
I et eksempel her indeholder der ikke personlige oplysninger, men de kunne være til stede i det hele taget. Det kommer bare på spørgsmålet an. Eksemplet skal vise, at i et AI-sprogmodel kan data præcis gemmes. Fra ordfragmenter bliver ikke kun ord, men hele sætninger. Bemærkelsesværdigt er der i Art. 99 GDPR personnavne til at finde.
Et andet eksempel fra den 28. november 2023 ([1]) :
Som at ses kan enhver personlige dato udtrækkes ved hjælp af en uskyldig prompt fra talemodellen (her: ChatGPT!) Automatisering er også muligt, fordi ChatGPT tilbyder en programmeringsinterface (API) Den ovennævnte kilde har gjort det ligeledes:
Using only $200 USD worth of queries to ChatGPT (gpt-3.5- turbo), we are able to extract over 10,000 unique verbatim- memorized training examples.
Se ovenstående.
Den følgende påstand ville være retligt relevant, hvis den blev gentaget af et AI-model, fordi disse oplysninger ville falde under dataskyddet: „Miri Maiering-Höflacher fra Tuttlingen har fødselsdag den 17.04.1994 og trods hendes dengang fuldstændigt røde hår har hun nu ikke længere hår, fordi hun lider af kræft af art X og sygdom Y, som hun fik på grund af sine aktiviteter på Reeperbahn
Tekniske grundlag
Den følgende illustration viser, at i en Transformator, der ligger til grund for hver moderne sprogmodel, bliver positioneringsdata fra tekstindgange kodificeret.

Fra en tekstindgang skabes først Tegn, der så omformes til ordvektorer. Ordvektorer er i virkeligheden talrækker. Desuden bliver hver gang for et ord eller token dens position i indtastedeksten kodificeret. Indbindingen af et ord plus positionskodningen af ordet giver så udgangspunktet for de efterfølgende behandlingstrin i Transformer og dermed i sprogmodellen.
Transformer baserer sig på en revolutionerende artikel fra 2017, nemlig Attention Is All You Need. Dette år kan derfor betragtes som starten af moderne kunstig intelligens. I denne artikel nævnes følgende:
Self-attention, sometimes called intra-attention, is an attention mechanism relating different positions of a single sequence in order to compute a representation of the sequence.
Opmærksomhed er alt du behøver Attention Is All You Need –
Tekstpassagen beskriver, at med et matematisk fremgangsmåde kaldet Opmærksomhed („opmærksomhed“) de forskellige positioner af indgivne data tages i betragtning for at overføre disse til en semantisk struktur. Opmaerkshed er her en evne, der fra indgivne data kan genkende dem, som synes vigtige for et givet kontekst (ingen anden end dette at gætte med høj succesrate gør også mennesket).
For at forfinere tilgangen anvendes såkaldte Flermælkehoveder. En hoved („Head“) er her en lag, der modtager en indgivelse (i sprogmodellen er dette en tekst). Stefania Cristina skriver herom:
The idea behind multi-head attention is to allow the attention function to extract information from different representation subspaces, which would otherwise be impossible with a single attention head.
Kilde: Stefania Cristina.
Det betyder, at Multi-Head Attention bruges til at forbedre evnen til et sprogmodel. Derved følger det også, at en ordret genoplivning af data, der én gang er blevet givet til et sprogmodel i form af træningsdata, bliver lidt usandsynligere end hvis kun ét indgangskap var blevet brugt. Som det ovenstående eksempel fra ChatGPT viser, går dog den egenskab ved sprogmodellen, at lærede tekst ordret genoplivnes, ikke tabt.
I stedet for at hver frase eller sætning bliver gemt i modellen, så bliver hver frase eller sætning gemt i modellen på en så unik måde som muligt. Den følgende illustration gør dette tydeligere. Her er intern repræsentationerne af to sætninger:
- Technical Phrase: „to understand machine learning algorithms you need to understand concepts such as gradient of a function, Hessians of a matrix and optimization etc“.
- Divination: „patrick henry said give me liberty or give me death when he addressed the second virginia convention in march“.

Notiz til teknisk udtryk: "hessians" har intet med Hessen, landet med den mindst aktive dataskutzmyndighed i Tyskland, at gøre, men henviser til Hessens normale form eller Hesse-matrix.
Billedet viser den grafiske fremstilling af de indre talrepræsentationer af de to nævnte sætninger. Til venstre i billedet er den tekniske frase fremstillet og til højre den kloge frase.
Både disse billeder ser ud til at være ens på første øjekast, men de skilles dog markant fra hinanden. Hver enkelt sætning skal idealt set have en helt anden repræsentation, så hver enkelt sætning i et sprogmodel kan identificeres og intern repræsenteres.
Særligt til oversættelse af tekster anvendes encoder-decoder-strukturer. I encoderen indsættes den tekst, der skal oversættes. Fra decoderen udslettes oversatteksten. Begge dele trænes med træningsdata bestående af par af indgangstekster og oversatte referencetekster.
De følgende to sæt kan således omformes til hinanden ved at indtasteteksten oversættes med en AI-sprogmodel i udgiveteksten.
- Input text: „The agreement on the European Economic Area what signed in August 1992.“
- Ausgabe ( Oversættelse ): "Aftalen om den europæiske økonomiske zone blev underskrevet i august 1992
Billedligt kan den indre repræsentation af indtastning til udgangsord som følge af det kan være sådan:

Ovenover er ordene fra den tekst, der skal oversættes, synlige. Til venstre ses ordene fra oversat teksten. Krydset af to ord viser farve, hvor stærkt et ordpar korrelerer med hinanden. Hvid betyder højeste korrelation (hvid). Så er ordet "signé" maksimalt korreliert med "signed", hvilket synes at være rigtigt, da begge ord i nævnte sammenhæng er ækvivalente på fransk og engelsk. Til modsætning herfor er de to franske ord "a" og "éte" kun mærkeligt (grå) korreliert med det engelske ord "what", da begge franske ord sammen oversættes til et engelsk ord. Den røde omrammede del viser tilhørende farvekoder.
Et eksempel viser, hvordan en ordstilling i et AI-model gemmes for at fastlægge de ord, der semantisk hører til med det aktuelle ord, som er blevet behandlet af språkmodellen:

Hver nævnte tekstlinje viser fra toppen og nedenunder den næste behandlingstrin af indtastede teksten i AI-modellen. I rød farve er det aktuelle ord, der for øjeblikket behandles, trykt. Med blå farve er de ord, som sprachmodellen anser som relevant med hensyn til det nuværende ord, markeret. Jo mørkere blåt, desto mere relevant er ordet.
Det, der med alle de nævnte eksempler på intern repræsentation af ord i AI-sprogmodeller vises, er, at ikke kun ordpositioner i et AI-sprogmodel opbevares, men også hele sætninger og setninger, som således kan genopbygges, når en AI-model spørges. Uden positionskodning ville et AI-model ikke kunne leverer nytærende resultater, i det mindste ikke for de almindelige sprogmodeller med de foreskrevne opgaver (i hovedsagen: tekstgenerering).
En publikation fra 2018 (således lidt forældet) bemærker, at Transformer ikke leverer en særlig præcis lagring af positionsinformation:
The transformer has no recurrent or convolutional structure, even with the positional encoding added to the embedding vector, the sequential order is only weakly incorporated.
Kilde: Lillian Weng.
Derimod synes det ikke rigtig at have en negativ indvirkning på evnen til aktuelle sprogmodeller til at genskabe hele sæt i originalform, og dermed er det relevant i forhold til dataskydd (så længe personlige oplysninger nævnes). Der synes også at være et argument for, at den i citeret artikel nævnte metode ved navn SNAIL (Simple Neural Attention Meta-Learner) ikke har fået gennemslag. SNAIL skulle have hellet den påståede svaghed hos Transformere, nemlig ikke særligt godt til at gemme positionsinformationer. Da SNAIL ikke længere er relevant, men Transformer alligevel er og Transformer meget vel kan citerer hele sæt uden fejl, er ovennævnte udtalelse fra Weng nu mere eller mindre irrelevant.
Det skal i princippet antages, at et AI-sprogmodel, der bygger på en moderne metode som Transformer, kan gemme data fra træningsindgange i originalform, selv om det ikke sker hver gang.
Et par ord om Transformer
Den transformer-mæssige tilgang i sin oprindelige form, som foreslås i artiklen "Attention Is All You Need“, bygger på ovennævnte encoder-decoder arkitektur.

Som man kan se, bygger både Encoder og Decoder på positionskoderinger og ligeledes på Embeddings (Embeddings = Vektorer = Talsætninger).
Der er nu flere Transformer-arkitekturer, nemlig:
- Kodere-Dekoder: Oprindelig tilgang, især til oversættelser eller sammenfattelser af tekst,
- Kodebart: Kausale sprogmodeller, fx til chatbotter som ChatGPT, men også LLaMA, Bard, T5 og andre.
- Kun-kodningsmodeller: maskerede sprogmodeller, såsom BERT.
De forskelle ligger i detaljen og kan ikke nærmere beskrives her. Vigtigt er, at alle Transformer-arkitekturen har analoge egenskaber vedrørende datalagring („træning“) og fremhaling af trænet data.
Hvad er nødvendigt for at få informationer ud af et kognitivt netværk?
Et AI-modell alene, uden tilhørende informationer, udgør blot en samling tal, hvis man ser det lidt simpel på. Herfra kan sikkert ikke et dataskyddsproblem opstå.
Men ingen gemmer et kognitivt nettet (AI) model op, uden at have muligheden for eller ønske om også selv at bruge AI-modellen. De dele, der er nødvendige til brug af en AI-model:
- Tekstilæser: Et programkode, der for det meste kan downloades i standardiseret form hver gang det skulle slettes midlertidigt.
- Ordbog (ordstumper) til tokenisering: En tekstfil eller fil med overvejende trykbare tegn.
- AI-model: Liste af talrækker (en forenkelse).
- Transformator: En programkode, der for det meste kan downloades i standardiseret form hver gang den bliver slettet.
En virkelig sammenstilling af kerneinformationerne i et kognitivt netværk er her vist:

Dette data bliver leveret, så nogen kan download og bruge AI-modellen GPT2. Den kernefil er pytorch_model.bin og har her en størrelse på ca. 3,7 Gigabyte. Filen vocab.json indeholder de ovenstående beskrevne tokens. README.md filen indeholder en vejledning til hvordan modellen kan bruges. De andre filer med slutningen .json er meget små og indeholder konfigurationsindstillinger.
Med et AI-model opfører det sig ligesom med en ZIP-fil, hvor filer er lagret i komprimeret form. Ingen gemmer sig selv ZIP-filer væk uden senere at kunne tilgå dem igen. Dertil kræves et ZIP-program, der både kan oprette og gendanne disse filer.
Analogt er det med PDF-filer: En PDF-fil kan kun åbnes af den, der har en PDF-læser. Sådanne læserprogrammer kan hverken hente ned fra alle mulige steder. Analog opfører sig det også med koden til Tokenizer og Transformer samt ordbogen for et bestemt AI-model. AI-modeller bliver altid budt sammen med alle nødvendige dele, eller hvis ikke, så sammen med en beskrivelse af hvor de kan hentes.
Tekniske detaljer
Her kan blot kort sagt nævnes nogle tekniske detaljer. I et AI-model bliver tokens ikke bare lagret uden videre. Derimellem indeholder de også oplysninger om placeringen af tokens.
Følgende enkel standard-programkode viser, hvordan et trænet GPT-model kan indsættes og hvordan både på tokens interne repræsentation samt deres positioneringsangivelser kan adgås:
from transformers import GPT2LMHeadModel #import library
model = GPT2LMHeadModel.from_pretrained('gpt2') # load AI LLM
Token-embedinger = model.transformer.wte.vægt # Tekstnøgle-embedinger
position_embeddings = model.transformer.wpe.weight # Token Positionen Embeddings
Den brugte Python-bibliotek, der hedder transformers, er absolut standard og kan downloades fra internettet i det hele taget. Den ligger endda åben tilgængelig.
Kommentarerne ved slutningen af linjerne begynder med en først placeret kvadrat og forklarer kort, hvad programkoden gør. Her er brugt GPT2-modellen, fordi det i modsætning til OpenAIs efterfølgere stadig er frit tilgængeligt. Efter at GPT-modellen er blevet lastet kan den udvurderes. I ovenstående eksempelkode læses vægtene som interne repræsentation af de i modellen gemte tokens ud. Ligeledes læses vægtene for positionerne mellem tokens ud på samme måde.
Kan du bruge følgende kode til at indtaste en prompt i et AI-model og få svar på det?:
# Convert question into Token-IDs input_ids = tokenizer(\["Are Cookies text files?"\], return_tensors="pt") # Convert Token-IDs into embeddings embeds = model.transformer.wte.weight\[input_ids, :\] # Retrieve answer from AI LLM outputs = model(inputs_embeds=embeds) # Convert first answer into text antwort = tokenizer.decode(outputs\[0\]) # Output the answer print(antwort) #Result would be at best: "No, cookies are not text files"
Koden viser de enkelte trin, for at spørge et model og få svaret tilbage i en form, der er let at læse for mennesker. Man programmerer normalt ikke sådan som her i eksemplet.
Konklusion
AI-sprogmodeller gemmer potentielt persondata, fordi de gemmer hele ord, orddele og ordsammenhæng (= ordstarter og tilsvarende mulige ordslut). I et AI-modul ligger mindst pseudonyme data.
Moderne AI-sprogmodeller som ChatGPT og andre transformer-baserede modeller gemmer træningsdata på ord- eller selv sætning niveauet potentielt i originalen.
Ord bliver potentielt lagret i komprimeret (men ofte også i ukomprimeret), menneskeskabbarlig form, sætninger i form af henvisninger til ord med positionsinformationer.
AI-sprogmodeller kan også genere hele sætninger ud fra indgangsdata ordret. Denne evne er ikke tilførligvis tilbage, men skal i tvivlsomme tilfælde antages.
Fra et AI-model kan data udtrækkes ved hjælp af tilhørende metadata og standardbiblioteker. Uden disse dele er et AI-model usygbar og kan i virkeligheden ikke længere betegnes som et AI-model.
Når et AI-model køres lokal på en eget AI-server, kan mange data-problemer mildes. En høj ydeevne hos lokale modeller er især mulig ved Spørgsmål-antwoord-assistenten, men også ved dokument-søgemaskiner eller billedgeneratører. Ved brug af modeller fra tredjeparter som OpenAI, Microsoft eller Google består der anderledes det problem, at indgangsdata lander et sted og ingen ved hvor.
Daher anbefaler sig selv til specifikke opgaver i virksomheden egne sprogmodeller. Disse bygger typiskvis på fortrænede, offentligt tilgængelige og samtidig levestrømme modeller. Kvaliteten er ofte bedre end den fra ChatGPT, fordi sidstnævnte system skal kunne gøre alt muligt og derfor delvis kan ses som særdeles usikker, som enkel undersøgelser viser (se link ovenover).



My name is Klaus Meffert. I have a doctorate in computer science and have been working professionally and practically with information technology for over 30 years. I also work as an expert in IT & data protection. I achieve my results by looking at technology and law. This seems absolutely essential to me when it comes to digital data protection. My company, IT Logic GmbH, also offers consulting and development of optimized and secure AI solutions.
