वह एक-चरण ट्रिक जो डिफ्यूजन मॉडल्स को OCR के लिए वास्तव में उपयोगी बना सकती है
आधारित शोध-पत्र: Noise-Free One-Step LoRA for Task-Driven Image Restoration with Diffusion Priors — Jaeha Kim, Kyoung Mu Lee
एक गोदाम कैमरे की कल्पना करें जो क्षतिग्रस्त शिपिंग लेबल पढ़ रहा है, एक फोन ऐप जो खराब रोशनी में एक सिकुड़ी हुई रसीद स्कैन कर रहा है, या एक सुरक्षा प्रणाली जो बारिश के बीच लाइसेंस प्लेट पढ़ने की कोशिश कर रही है। इन सभी मामलों में, आपकी OCR मॉडल पर आने वाली छवि किसी डेमो वीडियो की साफ़, अच्छी रोशनी वाली दस्तावेज़ नहीं होती है। यह शोर वाली, धुंधली होती है, या कैमरे से सर्वर तक ले जाने वाले पाइपलाइन द्वारा दलदल में बदल दी गई होती है। और यही वह हिस्सा है जो OCR के ऊपर काम करने वाले किसी भी व्यक्ति को परेशान करना चाहिए: लोग जो समाधान के रूप में छवि को पहले साफ़ करने के लिए एक डिफ्यूजन मॉडल से गुज़ारते हैं, वह धीरे-धीरे उनके खिलाफ काम कर रहा है।
यह सेoul राष्ट्रीय विश्वविद्यालय के Jaeha Kim और Kyoung Mu Lee द्वारा लिखे गए नए पेपर "Noise-Free One-Step LoRA for Task-Driven Image Restoration with Diffusion Priors" के पीछे की सेटअप है। यह खोज इतनी सरल लगती है कि एक बार सुनने के बाद यह शर्मनाक लगती है: डिफ्यूजन मॉडल में बना हुआ यादृच्छिकता, जो उन्हें अच्छी छवियां बनाने में अच्छा बनाती है, जब आपका वास्तविक लक्ष्य वर्गीकरण, डिटेक्शन, या OCR जैसे डाउनस्ट्रीम टास्क को सही ढंग से काम करने के लिए है, तो यह एक दायित्व बन जाता है। यादृच्छिकता को हटा दें, और मॉडल उस चीज़ में बेहतर हो जाती है जिसकी आपको वास्तव में परवाह है। थोड़ा बेहतर नहीं। इतना बेहतर कि यह पांच या दस गुना अधिक कंप्यूटिंग का उपयोग करने वाले दृष्टिकोणों को हरा दे।

"पहले साफ करो" वाला तरीका उम्मीद के मुताबिक काम क्यों नहीं करता
रिस्टोरेशन (Restoration) और रिकग्निशन (Recognition) एक-दूसरे के साथ चलने चाहिए, ऐसा लगता है। अगर एक इमेज साफ दिखती है, तो उसके बाद उसे पढ़ने वाला कोई भी सिस्टम बेहतर काम करेगा, है न? टास्क-ड्रिवन इमेज रिस्टोरेशन (TDIR) वह रिसर्च एरिया है जो इसे गंभीरता से लेता है: इंसान को अच्छा दिखाने के लिए इमेज को रिस्टोर करने के बजाय, आप इसे विशेष रूप से किसी डाउनस्ट्रीम मॉडल (चाहे वह क्लासिफायर हो, ऑब्जेक्ट डिटेक्टर हो, या टेक्स्ट रिकग्नाइजर) को अपना काम करने में मदद करने के लिए रिस्टोर करते हैं।
डिफ्यूजन मॉडल्स यहाँ एक लोकप्रिय टूल बन गए क्योंकि वे प्लॉजिबल (संभावित) डिटेल्स को हैलुसिनेट करने में अत्यधिक कुशल हैं। एक डिफ्यूजन मॉडल को धुंधली फोटो फीड करो और वह किनारों, टेक्सचर और आकारों के बारे में यकीन के साथ अनुमान लगा सकता है जो खो गए थे। समस्या शब्द "अनुमान" (guess) में है। डिफ्यूजन मॉडल्स रैंडम नॉइज़ से शुरू करके कई स्टेप्स में इसे धीरे-धीरे हटाकर काम करते हैं, और जब आपको विविध, क्रिएटिव आउटपुट चाहिए तो यह रैंडमनेस एक फीचर है। लेकिन जब आपको मॉडल से हर बार एक ही इनपुट देखने पर एक ही निर्णय लेने की जरूरत होती है, तो यह एक बग है।
यह एनालॉजी है जो इसे स्पष्ट करती है। कल्पना कीजिए कि आपने दस अलग-अलग फोरेंसिक स्केच आर्टिस्ट्स से चेहरे की धुंधली फोटो को रिकंस्ट्रक्ट करने के लिए कहा। प्रत्येक अपने मान्यताओं के आधार पर खाली जगह भरता है, और आपको दस अलग-अलग चेहरे मिलते हैं, सभी प्लॉजिबल, लेकिन कोई भी सही होने की गारंटी नहीं देता। अब कल्पना कीजिए कि आपको उस स्केच को पुलिस डेटाबेस से मैच करना है। आर्टिस्ट्स के बीच का वैरिएशन सिर्फ नॉइज़ नहीं है, यह आपके मैचिंग एक्ज्युरसी को सक्रिय रूप से नुकसान पहुंचाता है, क्योंकि "सही" रिकंस्ट्रक्शन आपके नीचे लगातार बदलता रहता है। यही स्टोकास्टिक डिफ्यूजन रिस्टोरेशन डाउनस्ट्रीम क्लासिफायर या OCR मॉडल के साथ करता है: एक ही धुंधला इनपुट, हर रन में थोड़े अलग रिकंस्ट्रक्शंस, और टास्क मॉडल की कॉन्फिडेंस भी उसके साथ ही उतार-चढ़ाव का शिकार होती है।
पेपर का मुख्य तर्क यह है कि यदि आप किसी ऐसे टास्क के लिए डिफ्यूजन मॉडल्स को प्रायर (रील इमेजेज कैसी दिखती हैं, इसके बारे में सीखे गए ज्ञान का स्रोत) के रूप में उपयोग कर रहे हैं जिसमें कंसिस्टेंसी की जरूरत है, तो आपको पूरी तरह से रैंडमनेस को हटा देना चाहिए।
"शोर-मुक्त एक-चरण" पास वास्तव में क्या अर्थ रखता है
मानक डिफ्यूजन रीस्टोरेशन मॉडल को दर्जनों या यहां तक कि कुछ सौ डीनोइजिंग चरणों से गुजरने देता है, जिनमें से प्रत्येक एक शोरयुक्त प्रारंभिक बिंदु को एक साफ छवि के करीब ले जाता है, और हर चरण में एक यादृच्छिक शोर पद (random noise term) प्रभाव डालता रहता है। यह पेपर कुछ बहुत ही सीधा और स्पष्ट करता है: यह प्री-ट्रेनड डिफ्यूजन नेटवर्क के माध्यम से एकल निर्धारक (deterministic) फॉरवर्ड पास चलाता है, कोई पुनरावृत्ति नमूनाकरण (iterative sampling) नहीं, और बिल्कुल भी कोई यादृच्छिक शोर पद नहीं।
इसे धीरे-धीरे बनने वाले, बहु-मसौदे वाले चित्रकार की तरह कम समझें और एक आत्मविश्वास से भरे एकल स्ट्रोक की तरह अधिक समझें। आप मॉडल से धीमे आगे-पीछे की प्रक्रिया के माध्यम से एक संभाव्य साफ छवि की कल्पना करने के लिए नहीं कह रहे हैं। आप इसे प्री-ट्रेनिंग के दौरान सीखी गई सभी जानकारी का उपयोग करके एक सीधा, दोहराने योग्य अनुमान लगाने के लिए कह रहे हैं। यदि आप उसी इनपुट पर इसे दो बार करते हैं, तो आपको दो बार समान आउटपुट मिलेगा। यही निर्धारकता (determinism) है जो एक डाउनस्ट्रीम क्लासिफायर या टेक्स्ट रीडर चाहता है।
कैच यह है, और यह वह हिस्सा है जिसे लेखकों ने वास्तविक तकनीकी योगदान के रूप में चिह्नित किया है, कि शोर-मुक्त होना तभी काम करता है यदि आप डिफ्यूजन मॉडल को सही तरीके से अनुकूलित करें। उन्होंने प्री-ट्रेनड डिफ्यूजन मॉडल को किसी विशिष्ट कार्य की ओर मोड़ने के दो लोकप्रिय तरीकों का परीक्षण किया:
- LoRA (Low-Rank Adaptation): एक हल्की तकनीक जो मौजूदा मॉडल में छोटे ट्रेनेबल मैट्रिक्स डालती है, बजाय इसके कि पूरे मॉडल को फिर से ट्रेन किया जाए, जिससे आपको एक बड़े प्री-ट्रेनड मॉडल को नई नौकरी के लिए सस्ते में विशेषीकृत करने की अनुमति मिलती है।
- ControlNet-शैली कंडीशनिंग: एक अलग अनुकूलन दृष्टिकोण जो मॉडल में अतिरिक्त मार्गदर्शन संकेत भेजकर इसके आउटपुट को नियंत्रित करता है, जो आमतौर पर डिफ्यूजन इमेज जनरेशन को नियंत्रित करने के लिए उपयोग किया जाता है।
शोर को हटा दिए जाने के बाद, LoRA अनुकूलन लगातार लाभ प्रदान करता रहा। ControlNet-शैली कंडीशनिंग ऐसा नहीं कर पाई। लेखक सारांश में इसका कारण पूरी तरह से नहीं समझाते, लेकिन व्यावहारिक निहितार्थ स्पष्ट है: यदि आप एक-चरण डिफ्यूजन रीस्टोरेशन की गति और स्थिरता चाहते हैं, तो आप मॉडल को फाइन-ट्यून कैसे करते हैं, यह कोई मामूली कार्यान्वयन विवरण नहीं है, यह विधि के काम करने और न करने के बीच का अंतर है।
वह गुणवत्ता समस्या जिसका कोई स्वीकार नहीं करना चाहता
छवि पुनर्स्थापना (image restoration) में दो लक्ष्यों के बीच एक अच्छी तरह से ज्ञात तनाव है जो स्वाभाविक रूप से एक साथ नहीं आते: इंसान को छवि को अच्छा दिखाना, और इसे किसी डाउनस्ट्रीम मॉडल के लिए उपयोगी बनाना। दृश्य गुणवत्ता (visual quality) पर बहुत ज्यादा जोर देने से आप बनावट और विवरण जोड़ सकते हैं जिसे एक टास्क मॉडल की प्रशिक्षण में उम्मीद नहीं थी, जिससे सटीकता पर नुकसान होता है भले ही स्क्रीन पर छवि अधिक तीक्ष्ण दिखे। केवल टास्क सटीकता पर जोर देने से आपको ऐसे आउटपुट मिल सकते हैं जो सपाट या कृत्रिम लगते हैं, जो तब महत्वपूर्ण होता है जब किसी इंसान को उसी छवि की समीक्षा करनी हो।
इसे संभालने के लिए, पेपर एक "टास्क-संरक्षक GAN प्रशिक्षण रणनीति" (task-preserving GAN training strategy) पेश करता है। GANs, या जनरेटिव एडवर्सरियल नेटवर्क्स, जनरेटिव मॉडल का एक अलग प्रकार हैं जहाँ दो नेटवर्क प्रतिस्पर्धा करते हैं: एक यथार्थवादी छवियाँ उत्पन्न करने की कोशिश करता है, दूसरा वास्तविक छवियों को जनरेट की गई छवियों से अलग करने की कोशिश करता है, और यह प्रतिस्पर्धा समय के साथ आउटपुट गुणवत्ता को बढ़ाती है। लेखकों ने अपने पुनर्स्थापना पाइपलाइन पर एक GAN-शैली का प्रशिक्षण उद्देश्य जोड़ा है, लेकिन इसे इस प्रकार सीमित किया है कि दृश्य चमक के पीछे भागना डाउनस्ट्रीम टास्क की सटीकता की कीमत पर न हो। व्यावहारिक रूप से, इसका मतलब है कि मॉडल को एक प्रत्यक्ष गुणवत्ता बूस्ट मिलता है बिना वर्गीकरण, सेगमेंटेशन, या डिटेक्शन स्कोर पर पछाट के, जो एक ऐसा परिणाम है जो बयान करने में आसान है और वास्तव में हासिल करने में कठिन।

परिणाम: तेज़ और सटीक, धीमे और सटीक को हराता है
इस पेपर में तीन मानक कंप्यूटर विज़न टास्कों—क्लासिफिकेशन, सेगमेंटेशन और ऑब्जेक्ट डिटेक्शन—के माध्यम से परीक्षण किया गया है, और तीनों में पिछले TDIR विधियों की तुलना में लगातार सुधार दर्शाया गया है। कच्चे नंबरों से भी ज़्यादा उल्लेखनीय दक्षता का दावा है: उनका एक-चरणीय (one-step) दृष्टिकोण पारंपरिक मल्टी-स्टेप डिफ्यूज़न TDIR बेसलाइन्स को पार कर जाता है, जिसका अर्थ है कि एकल डीटरमिनिस्टिक फॉरवर्ड पास ने उन विधियों को हरा दिया जो प्रति इमेज डीनोइज़िंग के लिए दर्जनों चरणों का खर्च करती हैं।
यह सटीकता के नंबरों से स्वतंत्र एक महत्वपूर्ण व्यावहारिक परिणाम है। मल्टी-स्टेप डिफ्यूज़न रीस्टोरेशन धीमा होता है। यदि एकल पास आपको बीस या पचास पुनरावृत्ति चरणों की तुलना में बेहतर टास्क प्रदर्शन देता है, तो आपने रीस्टोरेशन पाइपलाइन की लेटेंसी और कंप्यूट लागत दोनों को कम किया है, जबकि इसे कम सटीक होने के बजाय और अधिक सटीक बनाया है। किसी भी व्यक्ति के लिए जिसने वास्तविक-समय या उच्च-आयतन पाइपलाइन में डिफ्यूज़न-आधारित रीस्टोरेशन को लागू करने की कोशिश की है, यह संयोजन दुर्लभ है।
लेखकों ने वास्तविक दुनिया की खराब हुई इमेजेस और विशेष रूप से OCR पर भी मान्यता दी, बजाय इसके कि वे उन मानक क्लासिफिकेशन और डिटेक्शन बेंचमार्क पर रुक जाएं जिन पर अधिकांश रीस्टोरेशन पेपर निर्भर करते हैं। यदि आप किसी OCR कंपनी के ब्लॉग पर यह पढ़ रहे हैं, तो यही वह विवरण है जिस पर विचार करने योग्य है: इस पेपर के मूल्यांकन में OCR कोई बाद की सोच नहीं थी। इसे क्लासिफिकेशन और डिटेक्शन के साथ एक वास्तविक डाउनस्ट्रीम टेस्ट के रूप में स्थापित किया गया है, और विधि का आधार, कि एक तेज़, डीटरमिनिस्टिक रीस्टोरेशन चरण डाउनस्ट्रीम सटीकता की रक्षा करता है, OCR की दैनिक वास्तविकता से सीधे जुड़ता है: दस्तावेज़ की फोन फोटो, संपीड़न आर्टिफैक्ट्स के साथ स्कैन, या ग्लेयर से आधा छिपा प्लेट वाला सुरक्षा कैमरा फ्रेम।
यह क्यों मायने रखता है किसी भी ऐसे व्यक्ति के लिए जो OCR पाइपलाइन बना रहा है या चुन रहा है
यदि आप OCR इंजनों का मूल्यांकन कर रहे हैं, या एक पाइपलाइन बना रहे हैं जो किसी को भेजने से पहले छवियों का पूर्व-प्रसंस्करण (pre-process) करती है, तो यहाँ व्यावहारिक निष्कर्ष यह नहीं है कि "हमेशा एक डिफ्यूजन रस्टोरेशन स्टेप जोड़ें।" यह उससे अधिक विशिष्ट और अधिक उपयोगी है:
- एक ही इनपुट पर अलग-अलग व्यवहार करने वाला प्रीप्रोसेसिंग एक दायित्व (liability) है, न कि बस एक असुविधा। यदि आपका रस्टोरेशन स्टेप रन-टू-रन वेरिएंस (variance) पेश करता है, तो आपकी OCR सटीकता भी भिन्न होगी, भले ही इनपुट एक समान हों, और यह वेरिएंस डीबग करना कठिन है क्योंकि यह OCR इंजन में फ्लैकिनेस (flakiness) जैसा दिखता है जबकि वास्तविक कारण अपस्ट्रीम (upstream) में होता है।
- डिटरमिनिस्टिक, हल्का अनुकूलन भारी, स्टोकास्टिक पाइपलाइनों से बेहतर है। दक्षता का पहलू सटीकता के पहलू के बराबर महत्वपूर्ण है। एक एक-चरणीय विधि जो गति और डाउनस्ट्रीम सटीकता दोनों में एक पचास-चरणीय विधि को मात देती है, वह परिणाम का प्रकार है जिससे उत्पादन में क्या तैनात किया जाता है, यह बदलना चाहिए, न कि केवल क्या प्रकाशित किया जाता है।
- केवल दृश्य गुणवत्ता के लिए ट्यून किया गया रस्टोरेशन चुपके से OCR सटीकता को नुकसान पहुँचा सकता है। यह वह हिस्सा है जो आसानी से छूट सकता है यदि आप आउटपुट "साफ दिखता है" या नहीं, इस आधार पर प्रीप्रोसेसिंग स्टेप का निर्णय कर रहे हैं। एक तेज दिखने वाली छवि मॉडल के लिए स्वचालित रूप से अधिक पठनीय नहीं होती है, और कागजात का टास्क-संरक्षक प्रशिक्षण रणनीति विशेष रूप से इसलिए मौजूद है क्योंकि यह अंतर वास्तविक है।
- यदि आप एक प्री-ट्रेनड डिफ्यूजन मॉडल पर अपना स्वयं का प्रीप्रोसेसिंग लेयर बना रहे हैं, तो अनुकूलन विधि का चयन कोई मामूली विवरण नहीं है। इस कागजात में LoRA-वर्सेस-ControlNet विभाजन एक ठोस चेतावनी है: दो अनुकूलन तकनीकें जो कागज पर अदला-बदली योग्य लगती थीं, एक बार शोधकर्ताओं ने सैंपलिंग शोर हटा दिया तो बहुत अलग डाउनस्ट्रीम परिणाम प्रदान किए। मजबूत अंग्रेजी OCR का अर्थ यह नहीं है कि देवनागरी लिपि के लिए भी उतना ही अच्छा OCR उपलब्ध है; अक्सर जटिल संयुक्त अक्षरों और शिरोरेखा की उपस्थिति में अंग्रेजी मॉडल देवनागरी के लिए अपेक्षित सटीकता प्रदान नहीं करते।
ईमानदार सीमाएँ
इसे एक हल हो चुकी समस्या मानने से पहले कुछ बातें ध्यान देने योग्य हैं। सबसे पहले, सारांश (abstract) में सटीक सटीकता अंतर (accuracy deltas) या यह नहीं बताया गया है कि कौन से विशिष्ट डेटासेट और OCR बेंचमार्क का उपयोग किया गया था, इसलिए "सुसंगत लाभ" (consistent gains) का दावा करने से पहले पूर्ण पेपर (या बेहतर है, स्वतंत्र बेंचमार्किंग) पर एक नज़र डालने की आवश्यकता है, इससे पहले कि कोई इसे अपने विशिष्ट दस्तावेज़ प्रकारों के लिए सत्य के रूप में स्वीकार करे। वे पेपर जो OCR को एक द्वितीयक कार्य के रूप में मान्य करते हैं, अक्सर उत्पादन प्रणाली द्वारा वास्तव में देखे जाने वाले अव्यवस्थित, विविध दस्तावेज़ों जैसे कि रसीदें, हाथ से भरे गए फॉर्म, कम गुणवत्ता वाले स्कैन, और विदेशी भाषा के पाठ की तुलना में संकीर्ण या स्वच्छ OCR बेंचमार्क का उपयोग करते हैं।
दूसरा, यह पुनर्स्थापना (restoration) शोध है, कोई OCR इंजन नहीं। यह एक पूर्व-प्रसंस्करण तकनीक है जो सिद्धांत रूप में किसी भी OCR मॉडल के सामने स्थित हो सकती है, लेकिन इसे एक वास्तविक पाइपलाइन में एकीकृत करना आपके अपने डाउनस्ट्रीम OCR मॉडल और आपके अपने छवि वितरण के विरुद्ध पुनः प्रशिक्षण या फाइन-ट्यूनिंग का अर्थ रखता है। पेपर में वर्गीकरण, खंडीकरण (segmentation), और पता लगाने (detection) के लिए रिपोर्ट किए गए लाभ स्वचालित रूप से प्रत्येक पाठ पहचान सेटअप में एक-से-एक स्थानांतरित नहीं होंगे।
तीसरा, पेपर स्पष्ट रूप से बताता है कि ControlNet-शैली अनुकूलन (adaptation) शोर-मुक्त (noise-free) दृष्टिकोण के साथ काम नहीं किया। यह एक उपयोगी नकारात्मक परिणाम है, लेकिन इसका अर्थ यह भी है कि该方法 एक सार्वभौमिक रेसिपी नहीं है। यह एक विशिष्ट रेसिपी है: पूर्व-प्रशिक्षित डिफ्यूजन प्रायर (pretrained diffusion prior), एक-चरण निर्धारक आगे की गति (one-step deterministic forward pass), LoRA अनुकूलन, और कार्य-संरक्षक GAN फाइन-ट्यूनिंग। यदि आप कोई एक टुकड़ा बदलते हैं, तो पेपर के अपने प्रयोग सुझाव देते हैं कि आपको समान लाभ नहीं मिल सकते।
फिर भी, मुख्य विचार उन खोजों में से एक है जो पीछे मुड़कर देखने पर स्पष्ट लगती है और जिस पर कार्य नहीं किया जा रहा था: यदि आपका पुनर्स्थापना चरण एक ऐसे कार्य को फ़ीड करता है जिसके लिए सुसंगत उत्तरों की आवश्यकता होती है, तो उसे एक यादृच्छिक संख्या जनरेटर (random number generator) न दें। इसे निर्धारक (deterministic) बनाएं, इसे तेज़ बनाएं, और केवल तभी इससे संबंधित सुंदरता के बारे में चिंता करें। एक ऐसे क्षेत्र के लिए जिसने गुणवत्ता में सुधार करने का डिफ़ॉल्ट तरीका "और अधिक डिफ्यूजन चरण चलाएं" माना है, यह वास्तव में एक उपयोगी सुधार है।