Comparthing Logo
NLPžetonų išdavimasteksto apdorojimasneuroniniai tinklaidirbtinis intelektas

Tokenizer dizainas ir neapdoroto teksto apdorojimas

Tokenizerių dizainas ir neapdoroto teksto apdorojimas yra du iš esmės skirtingi teksto rengimo dirbtinio intelekto sistemoms būdai: tokenizeriai skaido kalbą į atskirus vienetus, o neapdorotas apdorojimas išsaugo originalias simbolių sekas modelio naudojimui.

Akcentai

  • Tokenizer žodyno dydis tiesiogiai riboja modelio išraiškingumą ir daugiakalbystę
  • Neapdorotas baitų apdorojimas pašalina žodyno ribų klaidas, bet padaugina sekų ilgius
  • Kalbos modeliai moka paslėptus „tokenizacijos mokesčius“, kai kai kurių kalbų apdorojimas kainuoja 5 kartus brangiau
  • Dėl besiformuojančių architektūrų neapdoroto teksto apdorojimas tampa vis konkurencingesnis, palyginti su žetoniniais metodais.

Kas yra Tokenizer dizainas?

Architektūrinis metodas, kuris skaido tekstą į prasmingus požodžių vienetus neuroninio tinklo apdorojimui.

  • Šiuolaikiniai tokenizeriai, tokie kaip baitų porų kodavimas (BPE), buvo išpopuliarinti originaliame GPT dokumente 2018 m. ir išlieka pagrindiniais dideliems kalbų modeliams.
  • „SentencePiece“, kurią „Google“ sukūrė 2018 m., leidžia naudoti kalbos nepriklausomą tokenizaciją, apdorojant tekstą kaip neapdorotas baitų sekas.
  • Tokenizer žodyno dydis paprastai svyruoja nuo 32 000 iki 200 000 žetonų, o tai tiesiogiai veikia modelio atminties apimtį ir daugiakalbystę.
  • Prastas žetonų generavimo dizainas gali sustiprinti šališkumą, kaip matyti, kai tam tikros kalbos gauna žymiai mažiau žetonų už žodį, todėl padidėja skaičiavimo išlaidos ne anglų kalba kalbantiems asmenims.
  • Tokenizer architektūros pasirinkimas daro didelę įtaką tolesniam modelio našumui atliekant užduotis – nuo aritmetikos iki kodo generavimo.

Kas yra Neapdoroto teksto apdorojimas?

Tiesioginis simbolių arba baitų lygio teksto vartojimas be aiškaus segmentavimo į iš anksto nustatytus vienetus.

  • Simbolių lygio modeliai apdoroja tekstą po vieną ASCII arba Unicode simbolį vienu metu, visiškai pašalindami žodyno ribų problemas.
  • Baitų lygio modeliai, tokie kaip „ByT5“ („Google“, 2022 m.), veikia tiesiogiai su UTF-8 baitais ir pasiekia konkurencingą našumą be atskiro tokenizavimo.
  • Neapdorotas apdorojimas padeda išvengti žetonų ribų artefaktų, kurie kamuoja subžodžių modelius, pvz., nenuoseklaus skyrybos ženklų ar sudurtinių žodžių tvarkymo.
  • Pagrindinis kompromisas yra sekos ilgis: neapdorotiems simbolių modeliams reikia 5–10 kartų ilgesnių sekų nei tokenizuotiems atitikmenims, todėl padidėja skaičiavimo poreikis.
  • Kai kurios architektūros, tokios kaip „MambaByte“ ir tam tikri būsenos erdvės modeliai, padidino efektyvumą ir padarė neapdorotų baitų apdorojimą praktiškesnį.

Palyginimo lentelė

Funkcija Tokenizer dizainas Neapdoroto teksto apdorojimas
Pagrindinis vienetas Požodžių žetonai (žodžiai, dalys, baitai) Atskiri simboliai arba neapdoroti baitai
Žodyno dydis Fiksuotas (paprastai 32 tūkst.–200 tūkst. žetonų) Efektyviai neribojamas (Unicode yra daugiau nei 149 tūkst. simbolių)
Žodyno ribų neviršijančių žodžių tvarkymas Reikalingi specialūs žetonai arba atsarginės strategijos Niekada nepasikartoja – kiekvienas simbolis / baitas yra galiojantis
Sekos ilgio efektyvumas Kompaktiškas (1 žetonas ≈ 0,75 žodžio) Išplėstinis (5–10 kartų ilgesnis nei žetoninis)
Daugiakalbis palaikymas Netolygus – kai kurios kalbos neefektyviai naudoja tokenus Vienoda – visos kalbos traktuojamos vienodai
Skaičiavimo pridėtinės išlaidos Išankstinis apdorojimas: tokenizavimo žingsnis; išvada: trumpesnės sekos Nereikia išankstinio apdorojimo; išvada: ilgesnės sekos
Tipiniai naudojimo atvejai Didelių kalbų modeliai (GPT, LLaMA, Claude) Specializuotos architektūros, patikimumo tyrimai

Išsamus palyginimas

Kaip tekstas įtraukiamas į modelius

Tokenizer dizainas sukuria aiškų vertimo sluoksnį tarp žmogaus skaitomo teksto ir skaitinių išraiškų. Kai įvedate „hello“, tokenizer susieja tai su konkrečiais sveikųjų skaičių ID – galbūt [15496, 11] GPT-2 žodyne. Neapdoroto teksto apdorojimas visiškai praleidžia šį netiesioginį pokytį, tiekdamas ASCII reikšmes arba UTF-8 baitus tiesiai į modelį. Šis architektūrinis skirtumas pasireiškia kiekviename tolesniame sprendime – nuo to, kaip modeliai tvarko rašybos klaidas, iki jų jautrumo Unicode normalizavimo ypatybėms.

Retų ir naujų žodžių tvarkymas

Šalutinius žodžius generuojantys žetonų generatoriai sužiba retais žodžiais, skaidydami „antidisetistantarianizmą“ į pažįstamus fragmentus. Vis dėlto jie aptinka išties naujų įvesties duomenų – atsirandantį slengą, retus vardus ar rašybos klaidas – kartais sukurdami keistas žetonų sekas. Neapdorotų simbolių apdorojimas su klaidomis parašytą „teh“ interpretuoja taip pat, kaip ir „the“, vertinant jų reprezentacijos galiojimą, nors modelis turi išmokti jų ryšį iš konteksto. Dėl to simbolių lygio modeliai iš esmės yra atsparesni priešiškoms rašybos klaidoms, tačiau reikia daugiau mokymo duomenų, kad būtų galima išmokti kompozicijos modelius.

Skaičiavimo kompromisai

Efektyvumo skirtumas yra akivaizdus. Įprastas angliškas sakinys gali tapti 15 žetonų arba 80 simbolių. Transformatorinėms architektūroms su kvadratiniu dėmesio sudėtingumu šis 5 kartų sekos ilgio skirtumas reiškia 25 kartus daugiau skaičiavimo. Naujausios inovacijos – tiesinis dėmesys, būsenos erdvės modeliai ir aparatinės įrangos pagrindu veikiančios architektūros – mažina šį atotrūkį. Vis dėlto standartiniams GPU klasteriams, kuriuose veikia dėmesio pagrindu veikiantys modeliai, žetonų išskyrimas išlieka praktišku pasirinkimu ilgiems dokumentams.

Kalbos lygybės problemos

Tokenizerių dizainas netyčia koduoja kalbinę nelygybę. Anglų kalboje vidutiniškai yra apie 0,2 žetono vienam simboliui; tailandiečių ar birmiečių kalbose gali būti daugiau nei 1,0, o tai reiškia, kad lygiaverčio turinio apdorojimas kainuoja brangiau. Neapdoroti baitų arba simbolių modeliai visiškai apeina šį skirtumą – baitas yra baitas nepriklausomai nuo kalbos. Tai paskatino augantį tyrimų susidomėjimą, ypač kalbant apie mažai išteklių turinčias kalbas, kuriose tokenizerių kokybė dažnai atsilieka.

Mokymo dinamika ir kylantis elgesys

Žetonų ribos gali tapti atsitiktiniais mokymosi signalais. Modeliai kartais išnaudoja tai, kad skaičiai skaitmenis po skaitmens konvertuoja į trumpąją aritmetiką arba kad kodo įtrauka atitinka nuspėjamus žetonų modelius. Neapdorotas apdorojimas verčia modelius atrasti tokią struktūrą nuo nulio, todėl gali susidaryti labiau apibendrinamos reprezentacijos, bet lėtesnė pradinė konvergencija. Kai kurie tyrėjai teigia, kad dėl to veikėjų modeliai tampa „sąžiningesni“ besimokantys ir mažiau linkę į su žetonais susijusius artefaktus.

Privalumai ir trūkumai

Tokenizer dizainas

Privalumai

  • + Efektyvūs sekos ilgiai
  • + Subrendusi ekosistema ir įrankiai
  • + Puikus bazinis našumas
  • + Sudaromų požodžių semantika

Pasirinkta

  • Kalbai būdingi šališkumai
  • Žodyne nebūdingi kraštutiniai linksniai
  • Žodyno dizaino sudėtingumas
  • Žetonų ribų artefaktai

Neapdoroto teksto apdorojimas

Privalumai

  • + Universalus simbolių aprėptis
  • + Nėra žodyno priežiūros
  • + Atsparus triukšmui ir rašybos klaidoms
  • + Tikrasis kalbos agnosticizmas

Pasirinkta

  • Ilgesnė seka pridėtinės vertės
  • Didesni skaičiavimo reikalavimai
  • Lėtesnė mokymo konvergencija
  • Mažiau subrendę įrankiai

Dažni klaidingi įsitikinimai

Mitas

Tokenizeriai yra tiesiog paprastas eilučių skaidymas ir neturi įtakos modelio intelektui.

Realybė

Tokenizerių dizainas iš esmės lemia, ko modeliai mokosi ir kaip jie samprotauja. Patobulintos GPT-4 matematikos galimybės iš dalies kyla iš geresnės skaičių tokenizerių sistemos. Prasta tokenizerių sistema gali suskaidyti loginius vienetus, todėl tam tikrus modelius dirbtinai sunku išmokti.

Mitas

Simbolių lygio modeliai yra per lėti ir nepraktiški realioms reikmėms.

Realybė

Nors istoriškai dėmesio pagrindu veikiančių transformatorių atveju tai tiesa, naujesnės architektūros, tokios kaip „Mamba“ ir įvairūs būsenos erdvės modeliai, ilgas sekas apdoroja efektyviau. „ByT5“ 2022 m. pademonstravo konkurencingą našumą, naudodamas gryną baitų lygio apdorojimą.

Mitas

Didesni tokenizatorių žodynai visada yra geresni.

Realybė

Per dideli žodynai padidina įterptosios matricos atmintį ir gali be reikalo fragmentuoti įprastus žodžius. Optimalus dydis subalansuoja atvaizdavimo detalumą ir modelio talpą, kuris daugumai programų paprastai būna nuo 32 tūkst. iki 100 tūkst.

Mitas

Neapdoroto teksto apdorojimas reiškia, kad modeliai supranta tekstą „natūraliau“ nei žmonės.

Realybė

Abu metodai yra dirbtiniai dariniai, toli gražu ne žmonių kalbos apdorojimo būdai. Žmonės taip pat neskaito baitas po baito – mes pasitelkiame dešimtmečių kalbines ir pasaulio žinias. „Natūralumo“ argumentas yra klaidinantis abiejų paradigmų atveju.

Mitas

Tokenizavimas yra išspręsta problema, taikant nusistovėjusią geriausią praktiką.

Realybė

Aktyvūs tyrimai ir toliau meta iššūkį prielaidoms. Tokie metodai kaip unigramų tokenizacija, išmoktas baitų lygio kodavimas ir naujausi diferencijuojamos tokenizacijos tyrimai rodo, kad ši sritis lieka atvira. Kiekviename svarbiame modelio leidime dažnai eksperimentuojama su tokenizacijos strategija.

Dažnai užduodami klausimai

Kas yra tokenizavimas mašininio mokymosi srityje?
Tokenizavimas konvertuoja neapdorotą tekstą į skaitinius atvaizdavimus, kuriuos gali apdoroti neuroniniai tinklai. Skirtingai nuo paprasto žodžių skaidymo, šiuolaikiniai tokenizeriai naudoja tokius algoritmus kaip baitų porų kodavimas, kad suskaidytų tekstą į kintamo ilgio šalutinius žodžių vienetus. Tai subalansuoja žodyno dydį ir aprėptį, leisdami modeliams apdoroti retus žodžius, sudarant juos iš pažįstamų dalių, tuo pačiu išlaikant bendrą žodyną lengvai valdomą.
Kodėl dideli kalbos modeliai naudoja tokenizerius, o ne neapdorotus simbolius?
Visų pirma, dėl skaičiavimo efektyvumo. Transformatoriai keičia mastelį kvadratiškai pagal sekos ilgį, todėl „unbelievable“ suspaudimas į vieną ar du žetonus, o ne į dvylika simbolių, smarkiai sumažina skaičiavimą. Žetonų generatoriai taip pat suteikia naudingų indukcinių šališkumų – dažnų šalutinių žodžių grupavimas padeda modeliams greičiau išmokti morfologiją ir žodžių ryšius. Kompromisas yra papildomas sudėtingumas ir tam tikras bendrumo praradimas.
Ar modelis gali veikti be jokio tokenizerio?
Žinoma. Simbolių ir baitų lygio modeliai apdoroja tekstą tiesiogiai, be aiškaus segmentavimo. Ankstyvieji neuroninių kalbų modeliai, tokie kaip „Karpathy“ „char-rnn“, veikė tokiu būdu. Šiuolaikiniai pavyzdžiai yra „ByT5“ ir įvairios tyrimų sistemos. Iššūkis buvo padaryti juos pakankamai efektyvius, kad jie galėtų konkuruoti su žetoniniais atitikmenimis, nors pastarojo meto architektūrinė pažanga mažina šią spragą.
Kaip tokenizer pasirinkimas veikia daugiakalbius modelius?
Masiškai ir kartais problemiškai. Dauguma tokenizerių yra apmokyti su anglų kalba dominuojančiais korpusais, todėl kitose kalbose sukeliama „tokenizavimo infliacija“. Sakinys anglų kalba gali būti paverstas 15 žetonų apimtimi, o atitikmuo tailandiečių kalba reikalauja 60. Tai padidina kainą, delsą ir gali sumažinti našumą atliekant užduotis ne anglų kalba. Kai kurie tyrėjai pasisako už kalbai būdingus arba baitų lygio metodus, kad būtų galima spręsti šią nelygybę.
Kas nutinka, kai tokenizeris aptinka nežinomą žodį?
Šiuolaikiniai požodžių tokenizeriai retai kada iš tiesų nepavyksta – jie suskaido nežinomus žodžius į mažesnes žinomas dalis arba atskirus baitus. Problema yra neoptimalus skaidymas: „Covfefe“ gali tapti [„Cov“, „fe“, „fe“], o ne kažkuo prasmingu. Tai gali pabloginti supratimą, ypač kalbant apie vardus, neologizmus ar techninį žargoną. Kai kurie tokenizeriai apima atsarginį baitų lygio kodavimą, kad būtų užtikrintas visiškas aprėptis.
Ar baitų porų kodavimas yra vienintelis tokenizavimo metodas?
Visai ne. BPE yra plačiai naudojamas, tačiau konkuruoja su alternatyvomis, tokiomis kaip „WordPiece“ (BERT, „DistilBERT“), „Unigram“ tokenizacija (naudojama „SentencePiece“) ir įvairiais išmoktais metodais. Kiekvienas optimizuoja šiek tiek skirtingus tikslus – BPE sujungia dažnas poras, „WordPiece“ maksimaliai padidina mokymo duomenų tikimybę, o „Unigram“ pradeda nuo didelio ir pašalina. Ši sritis toliau vystosi naudojant tokius metodus kaip diferencijuojama tokenizacija.
Kodėl tokenizeriai kartais sukuria keistus artefaktus?
Tokenizeriai statistinius modelius mokosi iš mokymo duomenų, o ne iš lingvistinių taisyklių. Dėl to kyla keistenybių: prie žodžių gali pridėti tarpai, skyryba gali nenuspėjamai suskaidyti, o didžiosios ir mažosios raidės gali sukurti visiškai atskirus žetonus („hello“, „Hello“, „HELLO“ kaip atskirus ID). Kai kurie modeliai yra skirti didžiosioms ir mažosioms raidėms, kiti – normalizuojami. Su šiais artefaktais gamybinėse sistemose reikia elgtis atsargiai.
Kaip išsirinkti tokenizerį savo NLP projektui?
Daugumai specialistų paprasčiausias ir efektyviausias būdas yra naudoti iš anksto su pasirinktu modeliu apmokytą žymeklinį įrankį. Kurti pasirinktinius žymeklinius įrankius prasminga konkrečios srities programoms su neįprastu žodynu – chemijai, medicinai, programavimo kalboms – arba dirbant su nepakankamai aptarnaujamomis kalbomis. Atsižvelkite į savo duomenų pasiskirstymą, tikslines kalbas ir tai, ar galite sau leisti skaičiavimo išlaidas, susijusias su simbolių lygio metodais.
Ar vizualinės kalbos modeliai naudoja tuos pačius žetonų generatorius kaip ir tik teksto modeliai?
Dažnai taip, su pakeitimais. CLIP naudoja BPE tokenizerį, panašų į GPT-2. Multimodaliniai modeliai paprastai papildo teksto tokenizerius specialiais žetonais, skirtais vaizdo fragmentams ar kitiems modalumams. Iššūkis yra suderinti šiuos atvaizdavimus – užtikrinti, kad „šuo“ tekste tinkamai sietųsi su vizualiais šuns atvaizdavimais. Kai kurie naujesni multimodaliniai modeliai tyrinėja vieningą tokenizerį skirtingose modalybėse.
Kokia tokenizacijos ateitis dirbtiniame intelekte?
Šioje srityje aktyviai abejojama, ar būtinas tokenizavimas. Tyrimų kryptys apima: baitų lygio modelius su efektyviomis architektūromis, išmoktus glaudinimo metodus, kurie sulieja ribą tarp žetonų ir neapdoroto teksto, ir „tokenizavimo neturinčius“ metodus, naudojant būsenos erdvės ar kitus subkvadratinius metodus. Kita modelių karta gali sumažinti arba panaikinti tiesioginį tokenizavimą, nors dabartinės gamybos sistemos išlieka labai priklausomos nuo žetonų.
Kaip tokenizavimas veikia greitąją inžineriją?
Tiesiogiai, o kartais ir neintuityviai. Efektyvūs greitųjų inžinierių komandos supranta savo modelio žetonų generatorių – žinodami, kad „greitasis inžinerijos metodas“ gali būti naudojamas kaip [„greitasis“, „inžinerija“] su tarpu pradžioje arba kad tam tikros frazės suspaudžiamos efektyviau. Kai kurie metodai, pvz., „žetonų kontrabanda“ arba optimizavimas mažesniam žetonų skaičiui, gali sumažinti išlaidas. Retai kada greitojo įpurškimo atakos išnaudoja žetonų generatoriaus elgseną.
Ar prastas tokenizavimas gali sukelti saugumo spragų?
Taip, nors tai vis dar nauja tyrimų sritis. Tokenizavimo neatitikimai gali sudaryti sąlygas „greitai injekcijai“, kai specialiai sukurti įvesties duomenys apeina saugos filtrus, išnaudodami tai, kaip eilutės suskaidomos tarp žetonų. Homoglifai – vizualiai panašūs Unicode simboliai, kurie tokenizuojami skirtingai – gali suklaidinti modelius. Patikimoms sistemoms gali prireikti tokenizavimo pagrindu veikiančio patvirtinimo arba simbolių lygio atsarginio apdorojimo.

Nuosprendis

Rinkitės tokenizer dizainą dideliems kalbų modeliams, kur svarbiausias yra skaičiavimo efektyvumas ir brandūs įrankiai. Kurdami patikimas sistemas daugiakalbėms aplinkoms, tvarkydami triukšmingą realaus pasaulio tekstą arba tyrinėdami pagrindines modelio galimybes, nepriklausomas nuo išankstinio apdorojimo artefaktų, rinkitės neapdoroto teksto apdorojimą.

Susiję palyginimai

„DeepSeek V4“ ir „GPT-4“ klasės modeliai

„DeepSeek V4“ yra kylantis atvirojo svorio didelių kalbų modelis, sukurtas Kinijos dirbtinio intelekto laboratorijoje, o GPT-4 klasės modeliai nurodo „OpenAI“ flagmanines uždarojo kodo sistemas. Šiame palyginime nagrinėjama jų architektūra, galimybės, kainos, prieinamumas ir našumas realiame pasaulyje, siekiant padėti kūrėjams ir įmonėms išmintingai pasirinkti.

„Google“ paieška ir žinių grafiko paieška

„Google“ paieška yra plataus masto žiniatinklio indeksavimo variklis, kurį dauguma žmonių naudoja kasdien, o „Knowledge Graph Search“ yra „Google“ struktūrizuotų objektų duomenų bazė, kurioje pateikiami tiesioginiai atsakymai ir informacijos skydeliai. Supratimas, kuo jie skiriasi, padeda paaiškinti, kodėl kai kurios užklausos pateikia išsamius faktus, o kitos – tradicines mėlynas nuorodas.

„Google“ paieškos algoritmas ir supaprastinti klasės modeliai

„Google“ paieškos algoritmas reitinguoja milijardus tinklalapių, naudodamas mašininį mokymąsi ir šimtus signalų, o supaprastinti klasių modeliai perteikia dirbtinio intelekto koncepcijas į lengvai mokomas, prieinamas sistemas. Viena sistema veikia planetos mastu gamyboje; kita tarnauja kaip pedagoginis tiltas mokiniams, mokantis, kaip iš tikrųjų veikia dirbtinis intelektas.

„Vienas su vienu“ atitikimas aptikimo ir daugelio su vienu atitikimo metodų srityse

„Vienas su vienu“ atitikimo metodas kiekvienam pagrindiniam objektui priskiria vieną numatomą langelį, o „daugelis su vienu“ atitikimo metodas leidžia kelias prognozes suderinti su vienu taikiniu. Abi strategijos formuoja tai, kaip šiuolaikiniai detektoriai, tokie kaip DETR ir „Faster R-CNN“, mokosi lokalizuoti objektus, kiekvienas iš jų turi skirtingus kompromisus tikslumo, mokymo stabilumo ir pasikartojančių aptikimų tvarkymo srityse.

A/B testavimas modelių aptarnavime ir vieno modelio diegime

A/B testavimas modeliuose nukreipia srautą tarp konkuruojančių modelio versijų, kad būtų galima įvertinti realų našumą, o diegiant vieną modelį visiems vartotojams pateikiamas vienas modelis. Komandos renkasi iš jų pagal rizikos toleranciją, srauto kiekį ir statistinio patvirtinimo poreikį prieš visišką diegimą.