Кодиране на двойки байтове
Кодирането на двойки байтове (BPE) е вдъхновен от компресията алгоритъм, който изгражда речник чрез многократно сливане на най-честата двойка символи.
Преглед
It is the tokenizer behind GPT models, balancing tiny vocabularies of characters against huge vocabularies of whole words.
Дълбоко гмуркане
BPE започва, като третира текста като последователност от отделни знаци (или необработени байтове). След това преброява всяка съседна двойка символи, обединява най-честата двойка в нов токен и повтаря това хиляди пъти. Всяко сливане се записва като правило. Често срещани поредици от букви като „th“, „ing“ или цели често срещани думи постепенно се превръщат в единични токени, докато редките думи остават разделени на по-малки части. Първоначално метод за компресиране на данни от 1994 г., той беше адаптиран към НЛП от Sennrich et al. през 2016 г. за машинен превод. GPT-2 и GPT-4 използват BPE на ниво байт, който работи с UTF-8 байтове, така че всеки знак, емоджи или език винаги могат да бъдат кодирани с нулеви грешки извън речника.
Техническа информация
Обучение BPE създава подреден списък от правила за сливане. За да токенизира нов текст, алгоритъмът го разделя на байтове/знаци и прилага сливания алчно в същия приоритетен ред, докато не съвпадне нито едно правило. BPE на ниво байт гарантира резервен вариант: дори невидим символ се разлага на съставните си байтове, така че речникът от 256 байта плюс заучените сливания покрива всичко без UNK токен.
Стратегическо въздействие
Speed and scale
Езиковите работни процеси могат да се движат по-бързо, без да се жертва последователността.
Access and reach
Той разширява достъпа между езици и стилове на комуникация.
Clearer decisions
Екипите могат да отделят повече време за преценка, докато автоматизацията се справя с повторението.
Бъдещето на кодирането на двойки байтове
BPE остава токенизаторът на работния кон, но нараства натискът към модели на ниво байт или символ, които пропускат изрично токенизиране, като избягват странности като неудобни разделяния в код, математика или неанглийски скриптове. Изследването на архитектури без токени и научени токенизатори има за цел да коригира пристрастията на BPE. Въпреки това неговата скорост и ефективност на компресиране означават, че речниците в стил BPE ще захранват повечето производствени LLM в близко бъдеще.
Внедряване в реалния свят
GPT-2 и GPT-4 използват BPE на ниво байт, така че всеки Unicode знак или емотикони могат да бъдат кодирани без грешки.
Системите за машинен превод използват BPE, за да разделят редки или сложни думи на части от поддуми за многократна употреба, споделени между езиците.
Библиотеката за токенизатори на Hugging Face обучава BPE речници за персонализирани домейни като биомедицински или правен текст.
Кодовите модели токенизират идентификатори и ключови думи с BPE, обединявайки често срещани модели като „def“ или „==“ в единични токени.
Рискове и предпазни огради
Халюцинираните факти могат тихо да влязат в отчети, потоци за поддръжка или резултати от изследвания.
Бързата чувствителност може да създаде противоречиви резултати при подобни заявки.
Чувствителните текстови данни могат да бъдат разкрити, ако контролите за достъп са слаби.
Пътна карта за изпълнение
Определете изходен формат, тон и стандарти за качество преди внедряване.
Наземни отговори с доверени източници винаги, когато точността има значение.
Поддържайте контролна точка за човешки преглед за изходи с високи залози.
Проследявайте моделите на неуспехи и редовно обучавайте подкани или работни потоци.
Продължете да изследвате
Free newsletter
Get the daily AI briefing
Three verified AI stories every weekday morning, written in plain English. Free forever, no ads.
One email each weekday. Unsubscribe in one click. We never sell or share your address.
Test yourself
Take the Byte-Pair Encoding quiz
Instant feedback on every answer, and a shareable certificate with a verifiable ID once you pass a course.
Support free AI education. AI Understanding is a 501(c)(3) nonprofit — no ads, no paywall, ever. Make a donation
Next guide
Токенизация и кодиране на двойки байтове
Frequently asked questions
What is Byte-Pair Encoding?
Кодирането на двойки байтове (BPE) е вдъхновен от компресията алгоритъм, който изгражда речник чрез многократно сливане на най-честата двойка символи. Това е токенизаторът зад GPT моделите, балансиращ малки речници от знаци срещу огромни речници от цели думи.
Каква е основната операция, която BPE повтаря, за да изгради своя речник?
BPE брои съседни двойки символи и обединява най-често срещания в нов токен, повтаряйки хиляди пъти.
Как BPE третира текста, когато започне обучението?
BPE започва от най-малките единици (знаци или необработени байтове) и увеличава по-големите токени чрез сливания.
Защо BPE на ниво байт избягва грешки извън речника (UNK)?
Тъй като основният речник включва всичките 256 байта, дори невидимите символи се връщат към своето байтово представяне.
Откъде първоначално идва алгоритъмът BPE, преди НЛП да го приеме?
BPE беше въведен като техника за компресиране на данни през 1994 г. и по-късно адаптиран за токенизиране на поддуми през 2016 г.
Когато токенизира нов текст, как BPE прилага своите научени правила?
Правилата за сливане са подредени и токенизацията ги прилага алчно по приоритет, докато не се съвпадне повече правило.