AI Detection

Ймовірність токена та log-likelihood в AI detection

Perplexity привертає увагу, але арифметика, що лежить в її основі, це ймовірність токена: що насправді містить розподіл моделі щодо наступного слова, чому виявлення спирається на математику в log space, а не на raw probability, і як послідовність покрокових оцінок перетворюється на одне число.

Оновлено 6 min
Diagram illustrating token probability ai detection: a language model's next-token distribution turning into a log-likelihood score

Якщо ви запитаєте детектор, як він дійшов до такого бала, більшість його інтерфейсів користувача дадуть вам ту саму відповідь: абзац, у якому деякі слова затінені темніше за інші. Це затінення не є здогадкою. Воно походить від числа, прив’язаного до кожного токена в уривку, обчисленого ще до того, як детектор узагалі торкається perplexity, burstiness або підсумкового відсотка.

Це ймовірність токена, і кожне виявлення за ймовірністю токена ai ґрунтується саме на цьому, від самого початку. Будь-яка кількість метрик, яку повідомляє детектор, включно з двома, які ми розглядаємо в іншому місці на цьому сайті, є лише арифметикою, виконаною над послідовністю цих чисел. Шар під шаром, на якому зупиняються більшість пояснень, це місце, де потрібно подумати про те, чим насправді є токен, що означає розподіл моделі над ним і чому арифметика виконується в логарифмічному просторі, а не з сирою ймовірністю. Більшість пояснень зупиняються саме там.

Усе це не повинно залишатися непрозорим. Токен, розподіл ймовірностей і логарифм є звичайними інструментами, а не власницькими таємницями, і ті самі три ідеї пояснюють як AI detectors насправді працюють, від сирого тексту до одного числа у звіті.

Виявлення за ймовірністю токена ai: від розподілу до бала

Виявлення за ймовірністю токена ai працює у три етапи. Мовна модель призначає ймовірність кожному можливому наступному токену з огляду на те, що було перед ним. Ці ймовірності для кожного токена перетворюються на логарифми і підсумовуються по всьому уривку, що обходить числову проблему, з якою сире множення стикається майже відразу. Отримана сума, усереднена і масштабована, зрештою постає як показник perplexity або слугує основою для рішення класифікатора. Кожен етап є конкретною, перевірюваною частиною арифметики, а не чорною скринькою.

Що таке токен насправді

Токен не є словом. Сучасні мовні моделі розбивають текст на субсловні частини за допомогою алгоритму на кшталт byte-pair encoding, тому поширене слово, як-от 'the', зазвичай є одним токеном, рідше вживане слово, як-от 'perplexity', ділиться на дві або три частини, а незнайоме ім'я може розпастися до окремих символів. Уривок звичайної англійської мови надійно токенізується в більшу кількість частин, ніж має слів, і це варто знати, перш ніж довіряти будь-якому підрахунку слів, який повертає вам інструмент.

Модель ніколи не бачить слова так, як їх бачить читач. Вона бачить послідовність цілих чисел, кожне з яких є індексом у фіксованому словнику, на якому модель навчали. Усе, що робить token probability ai detection від цього моменту, працює з цією послідовністю цілих чисел, а не з початковим рядком літер, і саме тому внутрішня робота детектора може здаватися відокремленою від того, як людина насправді читає речення.

Розподіл моделі за наступним токеном

У кожній позиції послідовності авторегресивна мовна модель не видає один прогноз. Вона видає повний розподіл імовірностей по всьому своєму словнику, десятки тисяч чисел, що в сумі дорівнюють одиниці, ранжуючи кожен можливий наступний токен від найімовірнішого до найменш імовірного з огляду на все, що було перед цим. Якщо подати моделі фразу 'the results of the', вона розподіляє більшу частину цієї імовірнісної маси між кількома правдоподібними іменниками, 'study,' 'experiment,' 'analysis,' водночас надаючи мізерно малу частку чомусь на кшталт 'marmalade.'

Токен, який насправді з'являється наступним у реальному документі, потрапляє десь у цьому ранжуванні, і призначена йому імовірність є сировиною, з якої будується все інше. Модель, що створює власний текст, може безпосередньо спиратися на цей розподіл, неодноразово обираючи з верхніх позицій. Детектор, який читає вже завершений текст, може лише постфактум запитати, яку саме імовірність модель надала б вибору, який було фактично зроблено.

Ймовірність усієї послідовності є добутком імовірності кожного токена за умови всього, що передувало йому; якщо ми застосуємо це покрокове запитання для кожного токена до всього документа, використовуючи стандартне правило для спільної ймовірності, кінцевим результатом буде одне число, що описує, наскільки очікуваним був увесь уривок. Саме на цьому добутку арифметика починає ламатися, і саме тому існує наступний розділ.

Гуманізуйте свою власну статтю

Перетворіть текст, створений за допомогою AI, і зробіть його природним, не змінюючи важливих слів або цитат.

Почати безкоштовно

Чому логарифмічна ймовірність замінює необроблену ймовірність

Множити ймовірності між собою математично правильно, але практично марно після кількох десятків токенів. Кожна окрема ймовірність є дробом, меншим за один, тому поточний добуток зменшується щоразу, коли додається ще один токен, і зменшується швидко. Уже через кілька сотень токенів необроблений добуток може впасти настільки нижче за найменше число, яке може представити комп'ютер, що він округлюється до точно нуля, тобто до режиму збою, який називається переповненням вниз.

Коли це стається, число взагалі не несе інформації. Документ, який був лише малоймовірним, і документ, який був украй, хаотично малоймовірним, обидва зводяться до однакового нуля, і після цього їх неможливо розрізнити. Логарифми виправляють це, тому що логарифм добутку дорівнює сумі логарифмів, що є тотожністю з базової алгебри. Сума послідовності звичайних від'ємних чисел не зазнає переповнення вниз так, як це відбувається при множенні послідовності малих дробів, і до того ж її обчислення дешевше.

Довжина уривка, ілюстративноНеоброблена ймовірність, поточний добутокСума логарифмічних ймовірностей
12 токенів при ілюстративному значенні 0.1 кожен1 x 10 до степеня -12, ще може бути представленоприблизно -27.6
350 токенів при ілюстративному значенні 0.1 кожен1 x 10 до степеня -350, переповнюється вниз до точно 0приблизно -805.9

Це спрощена ілюстрація. Реальні ймовірності для окремих токенів змінюються надзвичайно сильно, а не тримаються на фіксованому рівні 0.1, але напрям проблеми цілком правильний. Щойно необроблений добуток через underflow зводиться до нуля, порівняння, яке насправді потрібне детектору, чи був цей документ більш або менш очікуваним, ніж той, стає неможливим. Сума логарифмічних ймовірностей ніколи не зазнає такого збою. Вона лишається точним, звичайним, порівнюваним числом незалежно від того, наскільки довгим є уривок, і саме тому виявлюваність вимірюють у логарифмічному просторі, а не в просторі необроблених ймовірностей.

Від оцінок для окремих токенів до оцінки виявлення

Підсумовування логарифмічних ймовірностей по всьому уривку дає загальну логарифмічну правдоподібність документа за референтною моделлю. Ділення на кількість токенів усуває вплив довжини і залишає середню логарифмічну правдоподібність на токен, число, яке нарешті можна порівнювати між есе на п'ятсот слів і розділом дисертації на п'ять тисяч слів. Якщо взяти від'ємне значення цієї середньої та застосувати експоненту, отримаємо оцінку perplexity, метрику, яку цей кластер повністю розглядає в окремому матеріалі про що насправді вимірює perplexity.

Ті самі показники для окремих речень, які відстежують варіацію в межах документа, а не зводять до однієї середньої, є тим, з чого побудовано burstiness, пов'язаним, але окремим сигналом від perplexity. Обидва починаються з тих самих чисел для окремих токенів, описаних вище. Вони просто виконують над ними різну арифметику.

Проста середня не є єдиним способом використовувати цю сировину, і дослідження давно пішли далі. DetectGPT, опублікована в ICML 2023 Mitchell, Lee, Khazatsky, Manning і Finn, ґрунтується на іншій властивості тієї самої функції ймовірності: текст, вибірково згенерований мовною моделлю, зазвичай перебуває в області, де невеликі переформулювання знижують логарифмічну ймовірність, а не підвищують її, і в статті цей шаблон названо негативною кривизною.

Замість навчання класифікатора або використання водяного знака, цей метод збурює уривок, утворюючи невеликі варіації того, як його перефразовано, а потім повторно оцінює кожну варіацію тією самою моделлю. У статті це порівнюють із найкращим zero-shot базовим підходом і встановлюють, що на тексті, згенерованому моделлю з 20 мільярдами параметрів, цей метод досягає 0.95 AUROC, тоді як найкращий zero-shot базовий підхід досягає 0.81 AUROC.

Той самий розподіл, використаний для водяного знака замість виявлення

Досі все розглядало ймовірнісний розподіл як щось, що читають постфактум. Його також можна застосувати в момент генерації, що повністю перевертає проблему. Метод 2023 року від Kirchenbauer, Geiping, Wen, Katz, Miers і Goldstein перед кожним згенерованим словом відбирає випадково впорядкований короткий список дозволених токенів, спираючись на хеш того, що було раніше, і м'яко спрямовує семплювання до цього короткого списку. Такий зсув непомітний для читача і згодом може бути відновлений за допомогою статистичного тесту на короткому фрагменті тексту, без потреби в доступі до оригінальної моделі.

SynthID від Google DeepMind втілює версію цієї ідеї у виробничому використанні, він коригує оцінки ймовірності наступного токена під час генерації і сьогодні працює в застосунку Gemini та у вебверсії. OpenAI створила порівнювану систему і не випустила її. У повідомленнях про це рішення частково посилаються на опитування, в якому близько 30 percent користувачів ChatGPT сказали, що водяний знак змусив би їх менше користуватися продуктом, а також на занепокоєння щодо того, наскільки добре водяний знак витримав би перефразування.

Звіт детектора показує затемнене слово або один відсоток і на цьому зупиняється, ніколи не показуючи розподіл, з якого все це походить. Безкоштовний perplexity checker від TextPulse запускає спрощену версію того самого покрокового оцінювання за токенами щодо вашого власного чернеткового тексту, що є прямішим способом побачити, яке місце посідає уривок, ніж читати висновок із других рук.

Дві сусідні сторінки розглядають це. Чи досі детектори покладаються на burstiness змінилося з 2023 року, а як GPTZero перетворює ці самі ймовірності на оцінку описано на окремій сторінці.

Воно розміщене поруч з рештою безплатних інструментів TextPulse, тож той самий чернетковий текст можна перевірити на ритм і структуру, а також на передбачуваність на рівні слів, не відкриваючи для цього десяток окремих вкладок.

XLinkedInFacebook

Часті запитання

Token probability ai detection є шаром, що лежить під кожною іншою метрикою виявлення. Language model призначає ймовірність кожному токену в послідовності, по одному word-piece за раз, на основі всього, що було перед ним. Perplexity, classifier scores і відсоток у звіті, це вся арифметика, виконана над цією послідовністю чисел після цього, а не окреме, незалежне вимірювання.

Moe

PhD in natural language processing, with years spent building NLP applications end to end. Moe works on text analysis: lexical and syntactic structure, and what separates machine-generated prose from human prose statistically. He has been experimenting with computational linguistics since the early days of NLTK, spaCy and WordNet, and still writes most of his tooling in Python.

Будьте в курсі AI-гуманізації

Отримуйте поради щодо академічного письма, виявлення AI та гуманізації прямо на вашу пошту.

Жодного спаму. Відписатися можна будь-коли.