احتمال توکن و درستنمایی لگاریتمی در تشخیص هوش مصنوعی
Perplexity توجه را جلب میکند، اما حساب زیرین آن احتمال توکن است: اینکه توزیع مدل بر واژه بعدی دقیقاً چه چیزی را در بر میگیرد، چرا ریاضیات تشخیص بهجای احتمال خام در فضای لگاریتمی انجام میشود، و چگونه رشتهای از امتیازهای هر توکن به یک عدد تبدیل میشود.
اگر از یک آشکارساز بپرسید که آن امتیاز را چگونه به دست آورده است، بیشتر رابطهای کاربری آن همان پاسخ را میدهند: یک پاراگراف که در آن برخی واژهها تیرهتر از بقیه سایهزنی شدهاند. این سایهزنی یک حدس نیست. این از عددی میآید که به هر توکن در آن بخش نسبت داده شده است، عددی که پیش از آنکه آشکارساز حتی perplexity، burstiness یا یک درصد نهایی را بررسی کند، محاسبه شده است.
این یک احتمال توکن است، و هر تشخیص هوش مصنوعی بر پایه احتمال توکن از همان ابتدا بر آن استوار است. هر تعداد از سنجههایی که یک آشکارساز گزارش میکند, از جمله آن دو موردی که در جای دیگری از این سایت بررسی میکنیم, فقط حسابی است که روی دنبالهای از این اعداد انجام میشود. لایهای که زیر لایهای قرار دارد که بیشتر توضیحات در همانجا متوقف میشوند، جایی است که باید به این فکر کنید که یک توکن در واقع چیست، توزیع مدل بر آن چه معنایی دارد، و چرا این حساب در فضای لگاریتمی انجام میشود نه با احتمال خام. بیشتر توضیحات در همانجا متوقف میشوند.
هیچکدام از اینها لازم نیست مبهم بماند. یک توکن، یک توزیع احتمال و یک لگاریتم ابزارهای معمولیاند، نه اسرار اختصاصی، و همین سه ایده اینکه آشکارسازهای AI در عمل چگونه کار میکنند را توضیح میدهند، از متن خام تا یک عدد واحد روی یک گزارش.
تشخیص هوش مصنوعی بر پایه احتمال توکن: از توزیع تا امتیاز
تشخیص هوش مصنوعی بر پایه احتمال توکن در سه مرحله کار میکند. یک مدل زبانی به هر توکن بعدیِ ممکن، با توجه به آنچه پیش از آن آمده است، یک احتمال اختصاص میدهد. آن احتمالهای هر توکن به لگاریتم تبدیل میشوند و در سراسر بخش جمع میشوند، و این کار از یک مشکل عددی که ضرب خام تقریباً بلافاصله با آن روبهرو میشود، جلوگیری میکند. مجموع حاصل، پس از میانگینگیری و بازمقیاسگذاری، همان چیزی است که در نهایت به صورت یک مقدار perplexity ظاهر میشود یا تصمیم یک classifier را تغذیه میکند. هر مرحله یک جزء مشخص و قابل بررسی از حساب است، نه یک جعبه سیاه.
توکن در واقع چیست
یک توکن یک واژه نیست. مدلهای زبانی مدرن متن را با الگوریتمی مانند byte-pair encoding به قطعات زیرواژهای تقسیم میکنند، بنابراین یک واژه رایج مانند 'the' معمولاً یک توکن است، یک واژه کمکاربردتر مانند 'perplexity' به دو یا سه قطعه شکسته میشود، و یک نام ناآشنا میتواند تا سطح نویسههای منفرد خرد شود. یک بخش از انگلیسی معمولی بهطور قابلاعتماد به توکنهایی بیشتر از تعداد واژههایش تبدیل میشود، و این نکته پیش از آنکه به هر شمارش واژهای که یک ابزار به شما گزارش میکند اعتماد کنید، ارزش دانستن دارد.
مدل هرگز واژهها را آنگونه که یک خواننده میبیند، نمیبیند. آن یک دنباله از اعداد صحیح را میبیند، که هر کدام یک شاخص درون یک واژگان ثابت است که مدل با آن آموزش دیده است. هرچه token probability ai detection از این نقطه به بعد انجام میدهد بر آن دنباله عدد صحیح عمل میکند، نه بر رشته اصلی حروف، و همین بخشی از دلیل آن است که سازوکار درونی یک آشکارساز میتواند از شیوهای که یک انسان واقعاً یک جمله را میخواند جدا به نظر برسد.
توزیع مدل بر روی توکن بعدی
در هر موقعیت در یک دنباله، یک مدل زبانی خودرگرسیو یک پیشبینی واحد خروجی نمیدهد. بلکه یک توزیع کامل احتمال را در سراسر واژگان خود خروجی میدهد، دهها هزار عدد که جمع آنها برابر 1 میشود، و هر توکن بعدیِ ممکن را از محتملترین تا کماحتمالترین، با توجه به همه چیزهایی که پیش از آن آمدهاند، رتبهبندی میکند. اگر به یک مدل عبارت 'the results of the' را بدهید، بخش عمده این جرم احتمال را میان چند اسم محتمل، 'study,' 'experiment,' 'analysis,' توزیع میکند، در حالی که سهمی بهغایت ناچیز به چیزی مانند 'marmalade.' اختصاص میدهد.
توکنی که واقعاً در ادامه در یک سند واقعی ظاهر میشود، جایی در آن رتبهبندی فرود میآید، و احتمالی که به آن اختصاص داده شده، ماده خامی است که همه چیز دیگر از آن ساخته میشود. مدلی که متن خودش را تولید میکند میتواند مستقیماً بر این توزیع تکیه کند و بارها از میان گزینههای نزدیک به صدر انتخاب کند. یک آشکارساز که متن نهاییِ شخص دیگری را میخواند، فقط میتواند پس از وقوع، بپرسد مدل چه مقدار احتمال به انتخابی که واقعاً انجام شده بود اختصاص میداد.
احتمال یک دنباله کامل، حاصلضرب احتمال هر توکن با توجه به همه چیزهایی است که پیش از آن آمدهاند؛ اگر این پرسشِ مربوط به هر توکن را در سراسر یک سند، با استفاده از قاعده استاندارد احتمال مشترک، به هم وصل کنیم، نتیجه نهایی یک عدد واحد است که نشان میدهد کل این متن تا چه اندازه مورد انتظار بوده است. این حاصلضرب جایی است که حسابوکتاب شروع به فروپاشی میکند، و به همین دلیل بخش بعدی وجود دارد.
مقاله خود را انسانیسازی کنید
متنِ کمکگرفته از AI خود را دگرگون کنید و کاری کنید طبیعی به نظر برسد، بدون دست زدن به واژههای مهم یا ارجاعها.
چرا لگاریتم درستنمایی جای احتمال خام را میگیرد
ضرب کردن احتمالها از نظر ریاضی درست است و در عمل، فراتر از چند ده توکن، بیفایده است. هر احتمالِ منفرد کسری کمتر از 1 است، بنابراین حاصلضربِ در حال پیشرفت هر بار که توکن دیگری در آن ضرب میشود کوچکتر میشود، و این کاهش سریع است. پس از چند صد توکن، یک حاصلضرب خام میتواند آنقدر پایینتر از کوچکترین عددی که یک رایانه میتواند نمایش دهد سقوط کند که به دقیقاً 0 گرد شود، حالتی از خطا که underflow نام دارد.
وقتی این اتفاق میافتد، عدد دیگر هیچ اطلاعاتی حمل نمیکند. یک سند که فقط نامحتمل بوده است و سندی که بهطرزی بسیار شدید و آشفته نامحتمل بوده است، هر دو به همان 0 یکسان فرو میریزند، و بعد از آن هیچ راهی برای تمایز میان آنها وجود ندارد. لگاریتمها این مشکل را برطرف میکنند، زیرا لگاریتمِ یک حاصلضرب برابر با مجموع لگاریتمها است، که هویتی از جبر پایه است. جمع کردن یک رشته از اعداد منفی معمولی مانند ضرب کردن یک رشته از کسرهای کوچک دچار underflow نمیشود، و علاوه بر این، محاسبه آن ارزانتر است.
| طول متن, نمونهای | احتمال خام, یک حاصلضرب در حال پیشرفت | مجموع احتمالهای لگاریتمی |
|---|---|---|
| 12 توکن با 0.1 نمونهای برای هرکدام | 1 x 10 به توان -12, هنوز قابل نمایش | تقریباً -27.6 |
| 350 توکن با 0.1 نمونهای برای هرکدام | 1 x 10 به توان -350, به دقیقاً 0 دچار underflow میشود | تقریباً -805.9 |
این یک تصویر سادهشده است. احتمالهای واقعی به ازای هر توکن بهطور بسیار زیادی متفاوتاند و روی 0.1 ثابت نمیمانند، اما جهت مسئله دقیقاً درست است. وقتی یک حاصلضرب خام به زیر صفر سرریز میکند و به صفر میرسد، مقایسهای که یک آشکارساز واقعاً به آن نیاز دارد، یعنی اینکه آیا این سند نسبت به آن یکی کموبیش مورد انتظار بوده است یا نه، ناممکن میشود. جمع احتمالهای لگاریتمی هرگز به آن شکل از کار نمیافتد. این مقدار، صرفنظر از اینکه متن چقدر طولانی باشد، یک عدد دقیق، معمولی و قابل مقایسه باقی میماند، و همین دلیل واقعی است که قابلیت آشکارسازی بهجای فضای احتمال خام، در فضای لگاریتمی اندازهگیری میشود.
از امتیازهای به ازای هر توکن تا امتیاز آشکارسازی
جمع کردن احتمالهای لگاریتمی در سراسر یک متن، لگاریتم درستنمایی کل سند را تحت مدل مرجع تولید میکند. تقسیم بر تعداد توکنها اثر طول را حذف میکند و میانگین لگاریتم درستنمایی به ازای هر توکن را باقی میگذارد، عددی که سرانجام میان یک مقاله 500 کلمهای و یک فصل پایاننامه 5000 کلمهای قابل مقایسه است. اگر این میانگین را منفی کنیم و از آن نمایی بگیریم، چیزی که به دست میآید امتیاز perplexity است، معیاری که این مجموعه آن را بهطور کامل در بررسی جداگانهای درباره اینکه perplexity دقیقاً چه چیزی را اندازهگیری میکند پوشش میدهد.
همان اعداد به ازای هر جمله، وقتی بهجای فشرده شدن در یک میانگین، برای سنجش تغییرپذیری در سراسر یک سند دنبال میشوند، همان چیزی هستند که burstiness از آن ساخته میشود، یعنی سیگنالی مرتبط اما جدا از perplexity. هر دو از همان اعداد یکسان به ازای هر توکن که در بالا توصیف شد آغاز میشوند. فقط روی آنها محاسبات متفاوتی انجام میدهند.
یک میانگین ساده تنها راه استفاده از این ماده خام نیست، و پژوهش از آن بسیار فراتر رفته است. DetectGPT، که در ICML 2023 توسط Mitchell, Lee, Khazatsky, Manning and Finn منتشر شد، از ویژگی دیگری از همان تابع احتمال استفاده میکند: متنی که از یک مدل زبان نمونهگیری شده است، معمولاً در ناحیهای قرار میگیرد که بازنویسیهای کوچک باعث میشوند احتمال لگاریتمی کاهش یابد نه افزایش، الگویی که مقاله آن را انحنای منفی مینامد.
بهجای آموزش یک طبقهبند یا استفاده از یک واترمارک، این روش یک passage را دچار perturbation میکند، و تغییرات اندکی در نحوه بازنویسی آن پدید میآورد، سپس هر variation را با همان model دوباره امتیازدهی میکند. مقاله این روش را با بهترین zero-shot baseline مقایسه میکند و نشان میدهد که، روی متنی که توسط یک model با 20-billion-parameter تولید شده است، این روش 0.95 AUROC به دست میآورد، در حالی که بهترین zero-shot baseline 0.81 AUROC به دست میآورد.
همان توزیع، بهکاررفته برای واترمارک کردن بهجای تشخیص
تا اینجا، probability distribution بهعنوان چیزی در نظر گرفته شده است که پس از وقوع خوانده میشود. این توزیع را میتوان در لحظه تولید نیز دستکاری کرد، و این کار مسئله را بهطور کامل وارونه میکند. روشی از 2023 از Kirchenbauer, Geiping, Wen, Katz, Miers and Goldstein پیش از تولید هر واژه، یک shortlist تصادفی از tokenهای مجاز را بر پایه یک hash از آنچه پیشتر آمده است برمیگزیند، و sampling را بهنرمی به سوی آن shortlist هدایت میکند. این bias برای خواننده نامرئی است و بعداً با یک آزمون آماری روی یک span کوتاه از متن، بدون نیاز به دسترسی به model اصلی، قابل بازیابی است.
SynthID از Google DeepMind نسخهای از این ایده را به تولید رسانده است: این سامانه در زمان تولید، next-token probability scores را تنظیم میکند و امروز در app و تجربه وب Gemini فعال است. OpenAI یک system قابلمقایسه ساخته است و آن را منتشر نکرده است. گزارشها این تصمیم را تا حدی به یک survey نسبت میدهند که در آن نزدیک به 30 percent از کاربران ChatGPT گفتهاند watermarking باعث میشود کمتر از product استفاده کنند، همراه با نگرانیهایی درباره اینکه یک watermark تا چه اندازه در برابر paraphrasing دوام میآورد.
گزارش یک detector یک واژه سایهدار یا یک درصد منفرد را نشان میدهد و در همانجا متوقف میشود، بیآنکه هرگز distributionای را که همه اینها از آن آمدهاند نشان دهد. free perplexity checker در TextPulse نسخهای سادهشده از همان per-token scoring را روی پیشنویس خود شما اجرا میکند، که راهی مستقیمتر برای دیدن جایگاه یک passage است تا خواندن یک verdict بهصورت دستدوم.
دو صفحه مجاور این را پوشش میدهند. اینکه آیا آشکارسازها هنوز به burstiness تکیه میکنند از 2023 جابهجا شده است، و اینکه GPTZero چگونه همین احتمالات را به یک امتیاز تبدیل میکند در صفحه جداگانه خود توضیح داده شده است.
این بخش در کنار سایر ابزارهای رایگان TextPulse قرار دارد، بنابراین همان پیشنویس را میتوان از نظر ریتم و ساختار، و نیز پیشبینیپذیری در سطح واژه، بررسی کرد، بدون آنکه برای این کار دوازده زبانه جداگانه باز شود.
سؤالات متداول
احتمال توکن در تشخیص هوش مصنوعی لایه زیرین هر معیار تشخیص دیگر است. یک مدل زبانی به هر توکن در یک دنباله، یک واژهقطعه در هر بار، بر پایه همه چیزهایی که پیش از آن آمدهاند، یک احتمال اختصاص میدهد. Perplexity، امتیازهای طبقهبند و درصدی که در یک گزارش آمدهاند، همگی حسابی هستند که پس از آن روی آن دنباله از اعداد انجام میشود، نه یک سنجش جداگانه و مستقل.
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.