AI Detection

Вероятность токена и логарифмическая правдоподобность в обнаружении ИИ

Perplexity привлекает внимание, но лежащая в основе арифметика, это вероятность токена: что именно содержит распределение модели по следующему слову, почему математика обнаружения работает в логарифмическом пространстве, а не с сырой вероятностью, и как ряд посимвольных оценок превращается в одно число.

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, и сделайте его более естественным, не затрагивая важные слова или цитаты.

Начать бесплатно

Почему логарифмическая вероятность заменяет исходную вероятность

Перемножать вероятности математически корректно, но практически бесполезно уже после нескольких десятков токенов. Каждая отдельная вероятность представляет собой дробь меньше единицы, поэтому накопленное произведение уменьшается каждый раз, когда в него включается очередной токен, и уменьшается быстро. Уже через несколько сотен токенов исходное произведение может опуститься настолько ниже наименьшего числа, которое компьютер способен представить, что оно округляется до точно нуля, это режим отказа, называемый underflow.

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

Длина отрывка (для иллюстрации)Исходная вероятность, накопленное произведениеСумма логарифмов вероятностей
12 токенов при иллюстративном значении 0.1 каждый1 x 10 в степени -12, все еще представимопримерно -27.6
350 токенов при иллюстративном значении 0.1 каждый1 x 10 в степени -350, underflows to exactly 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

Часто задаваемые вопросы

Обнаружение ИИ по вероятности токена, это слой, лежащий в основе всех остальных метрик обнаружения. Языковая модель присваивает вероятность каждому токену в последовательности, по одному фрагменту слова за раз, на основе всего, что было до него. Perplexity, оценки классификатора и процент в отчёте, это вся арифметика, выполненная над этой последовательностью чисел после этого, а не отдельное, независимое измерение.

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.