AI Detection

AI पहचान में टोकन प्रायिकता और लॉग-लाइकलिहुड

Perplexity ध्यान आकर्षित करता है, लेकिन उसके नीचे का गणित टोकन प्रायिकता है: मॉडल का अगले शब्द पर वितरण वास्तव में क्या शामिल करता है, detection गणित raw probability के बजाय log space में क्यों चलता है, और per-token स्कोरों की एक शृंखला कैसे एक संख्या बनती है.

अद्यतन दिनांक 6 min
Diagram illustrating token probability ai detection: a language model's next-token distribution turning into a log-likelihood score

यदि आप किसी detector से पूछें कि वह उस score तक कैसे पहुँचा, तो उसके अधिकांश user interfaces आपको वही उत्तर देंगे: एक अनुच्छेद, जिसमें कुछ शब्द दूसरों की तुलना में अधिक गहरे रंग में छायांकित होते हैं। यह छायांकन कोई अनुमान नहीं है। यह passage में हर token से जुड़ी एक संख्या से आता है, जिसे detector के perplexity, burstiness, या अंतिम percentage को छूने से पहले ही गणना किया जाता है।

यह एक token probability है, और हर token probability ai detection उसी पर आधारित है, मूल स्तर से। किसी detector द्वारा रिपोर्ट किए जाने वाले किसी भी metrics की संख्या, जिसमें वे दो भी शामिल हैं जिन पर हम इस site के अन्य भाग में चर्चा करते हैं, केवल इन संख्याओं की एक श्रृंखला पर किया गया arithmetic है। उस layer के नीचे की layer, जहाँ अधिकांश explanations रुक जाती हैं, वहाँ आपको यह सोचना पड़ता है कि token वास्तव में क्या है, model का उसके बारे में distribution क्या अर्थ रखता है, और arithmetic raw probability के बजाय log space में क्यों चलता है। अधिकांश explanations यहीं रुक जाती हैं।

इनमें से किसी भी बात को अस्पष्ट बने रहने की आवश्यकता नहीं है। एक token, एक probability distribution और एक logarithm सामान्य tools हैं, कोई proprietary secrets नहीं, और यही तीन विचार AI detectors वास्तव में कैसे काम करते हैं को समझाते हैं, raw text से लेकर report पर एक single number तक।

Token Probability AI Detection: Distribution से Score तक

Token probability ai detection तीन stages में काम करता है। एक language model, पहले आए हुए context के आधार पर, हर संभव next token को एक probability देता है। उन per-token probabilities को logarithms में बदला जाता है और passage भर में जोड़ा जाता है, जिससे एक numerical problem से बचा जाता है जिसमें raw multiplication लगभग तुरंत फँस जाती है। प्राप्त sum, जिसे average करके और rescale किया जाता है, अंततः perplexity figure के रूप में सामने आता है या classifier के decision को feed करता है। हर stage arithmetic का एक विशिष्ट, जाँचा जा सकने वाला हिस्सा है, कोई black box नहीं।

Token वास्तव में क्या है

एक टोकन एक शब्द नहीं होता। आधुनिक भाषा मॉडल byte-pair encoding जैसे किसी एल्गोरिदम के साथ पाठ को उपशब्द खंडों में विभाजित करते हैं, इसलिए 'the' जैसा सामान्य शब्द आमतौर पर एक टोकन होता है, 'perplexity' जैसा कम सामान्य शब्द दो या तीन खंडों में विभाजित हो जाता है, और कोई अपरिचित नाम अलग-अलग अक्षरों तक टूट सकता है। साधारण अंग्रेज़ी का एक अनुच्छेद विश्वसनीय रूप से अपने शब्दों की संख्या से अधिक खंडों में टोकनाइज़ होता है, और किसी उपकरण द्वारा आपको वापस बताई गई किसी भी शब्द-गणना पर भरोसा करने से पहले यह जानना उपयोगी है।

मॉडल शब्दों को उस तरह कभी नहीं देखता जैसे कोई पाठक देखता है। वह पूर्णांकों का एक अनुक्रम देखता है, जिनमें से प्रत्येक उस स्थिर शब्दावली में एक सूचकांक होता है जिसके साथ मॉडल को प्रशिक्षित किया गया था। token probability ai detection इस बिंदु के बाद जो कुछ भी करता है, वह उस पूर्णांक अनुक्रम पर काम करता है, मूल अक्षर-श्रृंखला पर नहीं, और यही एक कारण है कि किसी डिटेक्टर की आंतरिक कार्यप्रणाली किसी व्यक्ति के किसी वाक्य को वास्तव में पढ़ने के तरीके से असंबद्ध लग सकती है।

अगले टोकन पर मॉडल का वितरण

किसी अनुक्रम में हर स्थिति पर, एक autoregressive भाषा मॉडल एक ही पूर्वानुमान नहीं देता। वह अपनी पूरी शब्दावली में एक पूर्ण प्रायिकता वितरण देता है, अर्थात् दसियों हज़ार संख्याएँ जो 1 के बराबर होती हैं, और जो अपने से पहले आए सब कुछ को देखते हुए हर संभावित अगले टोकन को सबसे अधिक से सबसे कम संभावित तक क्रमबद्ध करती हैं। मॉडल को 'the results of the' वाक्यांश दें, और वह उस प्रायिकता द्रव्यमान का अधिकांश भाग कुछ संभावित संज्ञाओं, 'study,' 'experiment,' 'analysis,' के बीच बाँट देता है, जबकि 'marmalade' जैसी किसी चीज़ को नगण्य हिस्सा देता है।

जो टोकन वास्तव में किसी वास्तविक दस्तावेज़ में अगला आता है, वह उस क्रम में कहीं न कहीं स्थित होता है, और उसे दी गई प्रायिकता वह कच्चा पदार्थ है जिससे बाकी सब कुछ बनता है। अपना स्वयं का पाठ उत्पन्न करने वाला मॉडल इस वितरण पर सीधे निर्भर कर सकता है, और बार-बार शीर्ष के निकट से चयन कर सकता है। किसी और के पूर्ण पाठ को पढ़ने वाला डिटेक्टर केवल बाद में यह पूछ सकता है कि मॉडल ने उस विकल्प को कितनी प्रायिकता दी होती, जो वास्तव में चुना गया था।

एक संपूर्ण अनुक्रम की प्रायिकता, उससे पहले की सभी सूचनाओं को देखते हुए, प्रत्येक टोकन की प्रायिकता का गुणनफल होती है, यदि हम संयुक्त प्रायिकता के मानक नियम का उपयोग करके पूरे दस्तावेज़ में उस प्रति-टोकन प्रश्न को जोड़ते हैं, तो अंतिम परिणाम एक एकल संख्या होता है जो यह बताती है कि पूरा अंश कितना अपेक्षित था। यही वह गुणनफल है जहाँ अंकगणित टूटना शुरू होता है, और इसी कारण अगला खंड मौजूद है।

अपने पेपर को मानवीय बनाइए

अपने AI-सहायता प्राप्त पाठ को रूपांतरित करें और उसे मानवीय ध्वनि दें, महत्वपूर्ण शब्दों या उद्धरणों को छेड़े बिना।

मुफ़्त में शुरू करें

कच्ची प्रायिकता के स्थान पर लॉग-लाइकलिहुड क्यों आता है

प्रायिकताओं को आपस में गुणा करना गणितीय रूप से सही है, लेकिन कुछ दर्जन टोकनों के बाद व्यावहारिक रूप से निरर्थक हो जाता है। प्रत्येक व्यक्तिगत प्रायिकता एक भिन्न होती है जो एक से कम होती है, इसलिए जैसे-जैसे एक और टोकन गुणा में जुड़ता है, चलित गुणनफल हर बार छोटा होता जाता है, और यह तेज़ी से छोटा होता है। कुछ सौ टोकनों के बाद, कच्चा गुणनफल इतना नीचे गिर सकता है कि वह उस सबसे छोटी संख्या से भी नीचे चला जाए जिसे कंप्यूटर निरूपित कर सकता है, और तब वह ठीक शून्य पर गोल हो जाता है, जिसे अंडरफ्लो कहा जाता है।

एक बार ऐसा होने पर, उस संख्या में कोई सूचना नहीं बचती। जो दस्तावेज़ केवल असंभाव्य था और जो दस्तावेज़ अत्यंत, अव्यवस्थित रूप से असंभाव्य था, दोनों एक ही शून्य में समा जाते हैं, और बाद में उन्हें अलग बताने का कोई तरीका नहीं रहता। लघुगणक इस समस्या को ठीक करते हैं क्योंकि किसी गुणनफल का लघुगणक, लघुगणकों के योग के बराबर होता है, जो मूल बीजगणित की एक पहचान है। साधारण ऋणात्मक संख्याओं की एक शृंखला को जोड़ना, छोटी भिन्नों की एक शृंखला को गुणा करने की तरह अंडरफ्लो नहीं करता, और इसके अलावा इसकी गणना करना भी सस्ता है।

अंश की लंबाई (उदाहरणात्मक)कच्ची प्रायिकता, एक चलित गुणनफललॉग-प्रायिकताओं का योग
12 टोकन, प्रत्येक के लिए उदाहरणात्मक 0.11 x 10 की घात -12, अभी भी निरूपणीयलगभग -27.6
350 टोकन, प्रत्येक के लिए उदाहरणात्मक 0.11 x 10 की घात -350, ठीक 0 पर अंडरफ्लोलगभग -805.9

यह एक सरलीकृत चित्रण है। वास्तविक प्रति-टोकन संभावनाएँ 0.1 पर स्थिर रहने के बजाय अत्यधिक भिन्न होती हैं, लेकिन समस्या की दिशा बिल्कुल सही है। जैसे ही कोई कच्चा गुणनफल underflow होकर शून्य हो जाता है, वह तुलना जिसकी वास्तव में एक detector को आवश्यकता होती है, यानी क्या यह दस्तावेज़ उस दस्तावेज़ की तुलना में अधिक या कम अपेक्षित था, असंभव हो जाती है। log-probabilities का योग इस तरह कभी विफल नहीं होता। यह एक सटीक, साधारण, तुलनीय संख्या बना रहता है, चाहे अंश कितना भी लंबा क्यों न हो, और detectability को raw probability space के बजाय log space में मापने का यही वास्तविक कारण है।

प्रति-टोकन स्कोर से detection score तक

किसी अंश में log-probabilities का योग reference model के अंतर्गत दस्तावेज़ की कुल log-likelihood उत्पन्न करता है। टोकनों की संख्या से भाग देने पर लंबाई का प्रभाव हट जाता है और प्रति टोकन औसत log-likelihood बचती है, एक ऐसी संख्या जो अंततः पांच सौ शब्दों के निबंध और पांच हजार शब्दों के शोध-प्रबंध अध्याय के बीच तुलनीय हो जाती है। इस औसत का ऋणात्मक मान लेकर उसे exponentiate करने पर perplexity score प्राप्त होता है, एक ऐसा metric जिसे यह cluster एक अलग दृष्टि में perplexity वास्तव में क्या मापता है में पूरी तरह से कवर करता है।

वही प्रति-वाक्य आंकड़े, जिन्हें एक औसत में समेटने के बजाय किसी दस्तावेज़ में variation के लिए ट्रैक किया जाता है, burstiness किससे निर्मित होता है, जो perplexity से संबंधित लेकिन अलग संकेत है। दोनों ऊपर वर्णित समान प्रति-टोकन संख्याओं से शुरू होते हैं। वे बस उन पर अलग गणित करते हैं।

एक साधारण औसत इस कच्ची सामग्री का उपयोग करने का एकमात्र तरीका नहीं है, और शोध इससे काफी आगे बढ़ चुका है। DetectGPT, जिसे ICML 2023 में Mitchell, Lee, Khazatsky, Manning और Finn ने प्रकाशित किया, उसी probability function के एक भिन्न गुण से काम करता है: language model से sampled पाठ उस क्षेत्र में स्थित होने की प्रवृत्ति रखता है जहाँ छोटे rewordings log-probability को बढ़ाने के बजाय घटाते हैं, एक पैटर्न जिसे paper negative curvature कहता है।

किसी classifier को प्रशिक्षित करने या watermark का उपयोग करने के बजाय, यह विधि एक passage को perturb करती है, जिससे उसके rewording के तरीके में छोटे-छोटे variations उत्पन्न होते हैं, और फिर उसी model के साथ प्रत्येक variation को फिर से score करती है। paper इसकी तुलना सर्वोत्तम zero-shot baseline से करता है और पाता है कि, 20-billion-parameter model द्वारा generated text पर, यह विधि 0.95 AUROC प्राप्त करती है जबकि सर्वोत्तम zero-shot baseline 0.81 AUROC प्राप्त करता है।

वही distribution, detect करने के बजाय watermark करने के लिए उपयोग की गई

अब तक सब कुछ probability distribution को ऐसी चीज़ के रूप में देखता रहा है जिसे तथ्य के बाद पढ़ा जाता है। इसे generation के क्षण में भी छुआ जा सकता है, जो समस्या को पूरी तरह उलट देता है। Kirchenbauer, Geiping, Wen, Katz, Miers और Goldstein की 2023 की एक विधि, प्रत्येक word के उत्पन्न होने से पहले, पहले से आए हुए के hash के आधार पर, अनुमत tokens की एक randomized shortlist चुनती है, और sampling को धीरे-धीरे उस shortlist की ओर निर्देशित करती है। यह bias reader के लिए अदृश्य होता है और बाद में text के एक छोटे span पर statistical test के साथ पुनः प्राप्त किया जा सकता है, original model तक पहुँच की आवश्यकता के बिना।

Google DeepMind का SynthID इस विचार के एक संस्करण को production में लागू करता है, यह generation time पर next-token probability scores को समायोजित करता है और आज Gemini app तथा web experience में live है। OpenAI ने एक comparable system बनाया और उसे जारी नहीं किया। reporting इस निर्णय को आंशिक रूप से एक survey से जोड़ती है, जिसमें लगभग 30 percent ChatGPT users ने कहा कि watermarking से वे product का कम उपयोग करेंगे, साथ ही इस चिंता से भी कि एक watermark paraphrasing के बाद कितनी अच्छी तरह टिकेगा।

एक detector की report एक shaded word या एक single percentage दिखाती है और वहीं रुक जाती है, कभी भी वह distribution नहीं दिखाती जिससे यह सब आया था। TextPulse का free perplexity checker आपके अपने draft के विरुद्ध उसी per-token scoring के एक सरल संस्करण को चलाता है, जो यह देखने का अधिक प्रत्यक्ष तरीका है कि कोई passage कहाँ स्थित है, बजाय इसके कि किसी verdict को दूसरे हाथ से पढ़ा जाए।

दो पड़ोसी पृष्ठ इसे कवर करते हैं। क्या डिटेक्टर अभी भी burstiness पर निर्भर करते हैं 2023 के बाद से बदल गया है, और GPTZero कैसे इन्हीं संभावनाओं को एक स्कोर में बदलता है अपने अलग पृष्ठ पर वर्णित है।

यह TextPulse के बाकी free tools के साथ स्थित है, इसलिए उसी मसौदे की जाँच लय और संरचना के साथ-साथ शब्द-स्तरीय पूर्वानुमेयता के लिए भी की जा सकती है, बिना इसके लिए एक दर्जन अलग-अलग टैब खोलने के।

XLinkedInFacebook

अक्सर पूछे जाने वाले प्रश्न

टोकन प्रायिकता ai detection हर अन्य detection metric के नीचे की परत है। एक language model एक sequence में प्रत्येक token को, एक समय में एक word-piece, उससे पहले आए सब कुछ के आधार पर, एक प्रायिकता देता है। Perplexity, classifier scores और report पर दिया गया percentage, ये सभी बाद में उस संख्याओं की शृंखला पर किए गए arithmetic हैं, कोई अलग, स्वतंत्र मापन नहीं।

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 पहचान, और मानवीकरण के सुझाव सीधे अपने इनबॉक्स में प्राप्त करें।

कोई स्पैम नहीं। कभी भी सदस्यता समाप्त करें।