यूनिवर्सल कोड (डेटा कम्प्रेशन): Difference between revisions

From Vigyanwiki
(Created page with "{{Short description|None}} {{refimprove|date=November 2011}} Image:Fibonacci, Elias Gamma, and Elias Delta encoding schemes.GIF|thumb|फाइबोनैचि, एलि...")
 
No edit summary
Line 1: Line 1:
{{Short description|None}}
{{refimprove|date=November 2011}}
[[Image:Fibonacci, Elias Gamma, and Elias Delta encoding schemes.GIF|thumb|फाइबोनैचि, एलियास गामा, और एलियास डेल्टा बनाम बाइनरी कोडिंग]]
[[Image:riceEncodingScheme.GIF|thumb|k = 2, 3, 4, 5, 8, 16 बनाम बाइनरी वाला चावल]]डेटा संपीड़न में, पूर्णांकों के लिए एक सार्वभौमिक कोड एक [[उपसर्ग कोड]] होता है जो सकारात्मक पूर्णांकों को बाइनरी कोडवर्ड पर मैप करता है, अतिरिक्त संपत्ति के साथ कि पूर्णांकों पर वास्तविक संभाव्यता वितरण जो भी हो, जब तक कि वितरण मोनोटोनिक है (यानी, ''पी'') (''i'') ≥''p''(''i'' + 1) सभी सकारात्मक ''i'' के लिए), कोडवर्ड की अपेक्षित मान लंबाई अपेक्षित लंबाई के एक स्थिर कारक के भीतर है उस संभाव्यता वितरण के लिए [[इष्टतम कोड]] निर्दिष्ट किया गया होगा। एक सार्वभौमिक कोड ''असममित रूप से इष्टतम'' होता है यदि वास्तविक और इष्टतम [[अपेक्षित मूल्य]] लंबाई के बीच का अनुपात कोड की सूचना एन्ट्रॉपी के एक फ़ंक्शन द्वारा घिरा होता है, जो बंधे होने के अलावा, 1 तक पहुंचता है क्योंकि एन्ट्रॉपी अनंत तक पहुंचती है।


सामान्य तौर पर, पूर्णांकों के लिए अधिकांश उपसर्ग कोड बड़े पूर्णांकों के लिए लंबे कोडवर्ड निर्दिष्ट करते हैं। इस तरह के कोड का उपयोग संभावित संदेशों के एक सेट से निकाले गए संदेश को कुशलतापूर्वक संप्रेषित करने के लिए किया जा सकता है, बस संभाव्यता को कम करके संदेशों के सेट को क्रमबद्ध करके और फिर इच्छित संदेश का सूचकांक भेजकर। यूनिवर्सल कोड आमतौर पर सटीक रूप से ज्ञात संभाव्यता वितरण के लिए उपयोग नहीं किए जाते हैं, और कोई भी यूनिवर्सल कोड व्यवहार में उपयोग किए जाने वाले किसी भी वितरण के लिए इष्टतम नहीं माना जाता है।
[[Image:Fibonacci, Elias Gamma, and Elias Delta encoding schemes.GIF|thumb|फाइबोनैचि, एलियास गामा, और एलियास डेल्टा बनाम बाइनरी कूटलेखन]]
[[Image:riceEncodingScheme.GIF|thumb|k = 2, 3, 4, 5, 8, 16 बनाम बाइनरी वाला चावल]]आंकड़ा संकुलन में, पूर्णांकों के लिए एक '''सार्वभौमिक कूट''' एक [[Index.php?title=पूर्वलग्न कूट|पूर्वलग्न कूट]] होता है जो सकारात्मक पूर्णांकों को बाइनरी(द्विआधारी) कूट शब्द पर मैप करता है, अतिरिक्त गुण के साथ कि पूर्णांकों पर वास्तविक संभाव्यता वितरण जो भी हो, जब तक कि वितरण मोनोटोनिक है (i.e., ''p''(''i'') ≥ ''p''(''i'' + 1) सभी सकारात्मक ''i'' के लिए), कूट शब्द की अपेक्षित मान लंबाई अपेक्षित लंबाई के एक स्थिर कारक के भीतर है उस संभाव्यता वितरण के लिए [[इष्टतम कोड|इष्टतम कूट]] निर्दिष्ट किया गया होगा। एक सार्वभौमिक कूट ''असममित रूप से इष्टतम'' होता है यदि वास्तविक और इष्टतम [[Index.php?title=अपेक्षित लंबाई|अपेक्षित लंबाई]] के बीच का अनुपात कूट की सूचना एन्ट्रॉपी के एक फलन द्वारा घिरा होता है, जो बंधे होने के अलावा, 1 तक पहुंचता है क्योंकि एन्ट्रॉपी अनंत तक पहुंचती है।


एक सार्वभौमिक कोड को [[सार्वभौमिक स्रोत कोडिंग]] के साथ भ्रमित नहीं किया जाना चाहिए, जिसमें डेटा संपीड़न विधि को एक निश्चित उपसर्ग कोड की आवश्यकता नहीं होती है और वास्तविक और इष्टतम अपेक्षित लंबाई के बीच का अनुपात एक होना चाहिए। हालाँकि, ध्यान दें कि एक असम्बद्ध रूप से इष्टतम सार्वभौमिक कोड का उपयोग सार्वभौमिक स्रोत कोडिंग की एक विधि के रूप में, तेजी से बड़े [[ब्लॉक कोड]] का उपयोग करके, स्वतंत्र रूप से समान रूप से वितरित यादृच्छिक चर | स्वतंत्र समान रूप से वितरित स्रोतों पर किया जा सकता है।
सामान्य तौर पर, पूर्णांकों के लिए अधिकांश पूर्वलग्न कूट बड़े पूर्णांकों के लिए लंबे कूट शब्द निर्दिष्ट करते हैं। इस तरह के कूट का उपयोग संभावित संदेशों के एक सेट से निकाले गए संदेश को कुशलतापूर्वक संप्रेषित करने के लिए किया जा सकता है, संभाव्यता को कम करके संदेशों के सेट को क्रमबद्ध करके और फिर इच्छित संदेश का सूचकांक भेजकर, यूनिवर्सल कूट आमतौर पर सटीक रूप से ज्ञात संभाव्यता वितरण के लिए उपयोग नहीं किए जाते हैं, और कोई भी यूनिवर्सल कूट प्रक्रिया में उपयोग किए जाने वाले किसी भी वितरण के लिए इष्टतम नहीं माना जाता है।


== सार्वभौमिक और गैर-सार्वभौमिक कोड ==
एक सार्वभौमिक कूट को [[सार्वभौमिक स्रोत कोडिंग|सार्वभौमिक स्रोत कूटलेखन]] के साथ भ्रमित नहीं किया जाना चाहिए, जिसमें आंकड़ा संकुलन विधि को एक निश्चित पूर्वलग्न कूट की आवश्यकता नहीं होती है और वास्तविक और इष्टतम अपेक्षित लंबाई के बीच का अनुपात एक होना चाहिए। हालाँकि, ध्यान दें कि सार्वभौमिक स्रोत कोडिंग की एक विधि के रूप में, तेजी से बड़े ब्लॉकों का उपयोग करके, एक असम्बद्ध रूप से इष्टतम सार्वभौमिक कोड का उपयोग स्वतंत्र रूप से समान रूप से वितरित स्रोतों पर किया जा सकता है।
ये पूर्णांकों के लिए कुछ सार्वभौमिक कोड हैं; एक [[तारांकन]] चिह्न (तारांकन चिह्न|*) एक कोड को इंगित करता है जिसे शब्दावली क्रम में तुच्छ रूप से दोहराया जा सकता है, जबकि एक डबल डैगर (‡) एक ऐसे कोड को इंगित करता है जो स्पर्शोन्मुख रूप से इष्टतम है:
 
*[[इलियास गामा कोडिंग]]*
== सार्वभौमिक और गैर-सार्वभौमिक कूट ==
*[[इलियास डेल्टा कोडिंग]]* ‡
ये पूर्णांकों के लिए कुछ सार्वभौमिक कूट हैं; एक [[तारांकन]] चिह्न (*) एक कूट को इंगित करता है जिसे शब्दावली क्रम में तुच्छ रूप से दोहराया जा सकता है, जबकि एक डबल डैगर( दुमुठ कटार (चिह्न)) (‡) एक ऐसे कूट को इंगित करता है जो स्पर्शोन्मुख रूप से इष्टतम है:
*[[इलियास ओमेगा कोडिंग]]*{{explain|reason=How is this trivially restated in lexicographical order?|date=August 2019}} ‡
*[[इलियास गामा कोडिंग|इलियास गामा कूटलेखन]]*
* एक्सपोनेंशियल-[[गोलोम्ब कोडिंग]]|एक्सप-गोलोम्ब कोडिंग *, जिसमें एक विशेष मामले के रूप में एलियास गामा कोडिंग है। (H.264/MPEG-4 AVC में प्रयुक्त)
*[[इलियास डेल्टा कोडिंग|इलियास डेल्टा कूटलेखन]]* ‡
* [[फाइबोनैचि कोडिंग]]
*[[इलियास ओमेगा कोडिंग|इलियास ओमेगा कूटलेखन]]*{{explain|reason=How is this trivially restated in lexicographical order?|date=August 2019}} ‡
*[[लेवेनशेटिन कोडिंग]]* ‡, मूल सार्वभौमिक कोडिंग तकनीक [http://www.compression.ru/download/articles/int/levenstein_1968_on_the_redundancy_and_delay.pdf ]
* एक्सपोनेंशियल-[[गोलोम्ब कोडिंग|गोलोम्ब कूटलेखन]] (एक्सप-गोलोम्ब कूटलेखन) *, जिसमें एक विशेष मामले के रूप में एलियास गामा कूटलेखन है। (H.264/MPEG-4 AVC में प्रयुक्त)
* [[बाइट कोडिंग]] जहां कोड के अंत को चिह्नित करने के लिए एक विशेष बिट पैटर्न (कम से कम दो बिट्स के साथ) का उपयोग किया जाता है - उदाहरण के लिए, यदि पूर्णांक को अधिक प्राकृतिक [[आधार 16]] के बजाय [[आधार 15]] में अंकों का प्रतिनिधित्व करने वाले [[ कुतरना ]]्स के अनुक्रम के रूप में एन्कोड किया गया है , तो पूर्णांक के अंत को इंगित करने के लिए उच्चतम निबल मान (यानी, बाइनरी में चार लोगों का अनुक्रम) का उपयोग किया जा सकता है।
* [[फाइबोनैचि कोडिंग|फाइबोनैचि कूटलेखन]]
*[[लेवेनशेटिन कोडिंग|लेवेनशेटिन कूटलेखन]]* ‡, मूल सार्वभौमिक कूटलेखन तकनीक [http://www.compression.ru/download/articles/int/levenstein_1968_on_the_redundancy_and_delay.pdf ]
* [[बाइट कोडिंग|बाइट कूटलेखन]] जहाँ कूट के अंत को चिह्नित करने के लिए एक विशेष बिट पैटर्न (कम से कम दो बिट्स के साथ) का उपयोग किया जाता है - उदाहरण के लिए, यदि पूर्णांक को अधिक प्राकृतिक [[आधार 16]] के बजाय [[आधार 15]] में अंकों का प्रतिनिधित्व करने वाले [[ कुतरना ]]्स के अनुक्रम के रूप में एन्कूट किया गया है , तो पूर्णांक के अंत को इंगित करने के लिए उच्चतम निबल मान (यानी, बाइनरी में चार लोगों का अनुक्रम) का उपयोग किया जा सकता है।
* परिवर्तनीय-लंबाई मात्रा
* परिवर्तनीय-लंबाई मात्रा


ये गैर-सार्वभौमिक हैं:
ये गैर-सार्वभौमिक हैं:


* [[यूनरी कोडिंग]], जिसका उपयोग एलियास कोड में किया जाता है
* [[यूनरी कोडिंग|यूनरी कूटलेखन]], जिसका उपयोग एलियास कूट में किया जाता है
* गोलोम्ब कोडिंग, जिसका उपयोग [[एफएलएसी]] [[ऑडियो कोडेक]] में किया जाता है और जिसमें एक विशेष मामले के रूप में यूनरी कोडिंग होती है
* गोलोम्ब कूटलेखन, जिसका उपयोग [[एफएलएसी]] [[ऑडियो कोडेक|ऑडियो कूटेक]] में किया जाता है और जिसमें एक विशेष मामले के रूप में यूनरी कूटलेखन होती है
* गोलोम्ब कोडिंग, जिसमें विशेष मामलों के रूप में राइस कोडिंग और यूनरी कोडिंग है।
* गोलोम्ब कूटलेखन, जिसमें विशेष मामलों के रूप में राइस कूटलेखन और यूनरी कूटलेखन है।


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


: <math>E(l) = \frac{6}{\pi^2} \sum_{l=1}^\infty \frac{1}{l} = \infty . \,</math>
: <math>E(l) = \frac{6}{\pi^2} \sum_{l=1}^\infty \frac{1}{l} = \infty . \,</math>
दूसरी ओर, गॉस-कुज़मिन वितरण के लिए सार्वभौमिक एलियास गामा कोडिंग का उपयोग करने से एन्ट्रापी (लगभग 3.43 बिट्स) के निकट अपेक्षित कोडवर्ड लंबाई (लगभग 3.51 बिट्स) प्राप्त होती है।[https://web.archive.org/web/20150606201418/ http://scholar.google.com/scholar?cluster=13442560459874106744 - Академия Google]।
दूसरी ओर, गॉस-कुज़मिन वितरण के लिए सार्वभौमिक एलियास गामा कूटलेखन का उपयोग करने से एन्ट्रापी (लगभग 3.43 बिट्स) के निकट अपेक्षित कूट शब्द लंबाई (लगभग 3.51 बिट्स) प्राप्त होती है।[https://web.archive.org/web/20150606201418/ http://scholar.google.com/scholar?cluster=13442560459874106744 - Академия Google]।


==व्यावहारिक संपीड़न से संबंध==
==व्यावहारिक संपीड़न से संबंध==
[[हफ़मैन कोडिंग]] और अंकगणित कोडिंग (जब उनका उपयोग किया जा सकता है) किसी भी सार्वभौमिक कोड की तुलना में कम से कम अच्छा, और अक्सर बेहतर संपीड़न देते हैं।
[[हफ़मैन कोडिंग|हफ़मैन कूटलेखन]] और अंकगणित कूटलेखन (जब उनका उपयोग किया जा सकता है) किसी भी सार्वभौमिक कूट की तुलना में कम से कम अच्छा, और अक्सर बेहतर संपीड़न देते हैं।


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


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


प्रत्येक सार्वभौमिक कोड, एक दूसरे के स्व-परिसीमन (उपसर्ग) बाइनरी कोड की तरह, इसका अपना निहित संभाव्यता वितरण होता है {{math|1=''P''(''i'')=2<sup>−''l''(''i'')</sup>}} कहाँ {{math|''l''(''i'')}} ith कोडवर्ड की लंबाई है और P(i) संबंधित प्रतीक की संभावना है। यदि वास्तविक संदेश संभावनाएँ Q(i) और कुल्बैक-लीबलर विचलन हैं <math>D_\text{KL}(Q \| P)</math> कोड द्वारा न्यूनतम किया गया है {{math|''l''(''i'')}}, तो संदेशों के उस सेट के लिए इष्टतम हफ़मैन कोड उस कोड के बराबर होगा। इसी तरह, कोई कोड इष्टतम के कितना करीब है, इसे इस विचलन से मापा जा सकता है। चूँकि यूनिवर्सल कोड हफ़मैन कोड (जो बदले में, [[अंकगणितीय एन्कोडिंग]] की तुलना में सरल और तेज़ है) की तुलना में एन्कोड और डिकोड करने में सरल और तेज़ होते हैं, यूनिवर्सल कोड उन मामलों में बेहतर होगा जहां <math>D_\text{KL}(Q \| P)</math> पर्याप्त रूप से छोटा है.
प्रत्येक सार्वभौमिक कूट, एक दूसरे के स्व-परिसीमन (पूर्वलग्न) बाइनरी कूट की तरह, इसका अपना निहित संभाव्यता वितरण होता है {{math|1=''P''(''i'')=2<sup>−''l''(''i'')</sup>}} कहाँ {{math|''l''(''i'')}} ith कूट शब्द की लंबाई है और P(i) संबंधित प्रतीक की संभावना है। यदि वास्तविक संदेश संभावनाएँ Q(i) और कुल्बैक-लीबलर विचलन हैं <math>D_\text{KL}(Q \| P)</math> कूट द्वारा न्यूनतम किया गया है {{math|''l''(''i'')}}, तो संदेशों के उस सेट के लिए इष्टतम हफ़मैन कूट उस कूट के बराबर होगा। इसी तरह, कोई कूट इष्टतम के कितना करीब है, इसे इस विचलन से मापा जा सकता है। चूँकि यूनिवर्सल कूट हफ़मैन कूट (जो बदले में, [[अंकगणितीय एन्कोडिंग|अंकगणितीय एन्कूटलेखन]] की तुलना में सरल और तेज़ है) की तुलना में एन्कूट और डिकूट करने में सरल और तेज़ होते हैं, यूनिवर्सल कूट उन मामलों में बेहतर होगा जहां <math>D_\text{KL}(Q \| P)</math> पर्याप्त रूप से छोटा है.
[https://web.archive.org/web/20080807041150/http://www.cs.tut.fi/~albert/Dev/pucrunch/ दोषरहित डेटा संपीड़न प्रोग्राम: हाइब्रिड LZ77 RLE]
[https://web.archive.org/web/20080807041150/http://www.cs.tut.fi/~albert/Dev/pucrunch/ दोषरहित आंकड़ा संकुलन प्रोग्राम: हाइब्रिड LZ77 RLE]


किसी भी [[ज्यामितीय वितरण]] (पूर्णांकों पर एक घातीय वितरण) के लिए, एक गोलोम्ब कोड इष्टतम है। सार्वभौमिक कोड के साथ, अंतर्निहित वितरण लगभग एक शक्ति कानून है जैसे <math>1/n^2</math> (अधिक सटीक रूप से, एक Zipf वितरण)।
किसी भी [[ज्यामितीय वितरण]] (पूर्णांकों पर एक घातीय वितरण) के लिए, एक गोलोम्ब कूट इष्टतम है। सार्वभौमिक कूट के साथ, अंतर्निहित वितरण लगभग एक शक्ति कानून है जैसे <math>1/n^2</math> (अधिक सटीक रूप से, एक Zipf वितरण)।
[[फाइबोनैचि कोड]] के लिए, अंतर्निहित वितरण लगभग है <math>1/n^q</math>, साथ
[[फाइबोनैचि कोड|फाइबोनैचि कूट]] के लिए, अंतर्निहित वितरण लगभग है <math>1/n^q</math>, साथ


:<math>q = 1/\log_2(\varphi) \simeq 1.44,</math>
:<math>q = 1/\log_2(\varphi) \simeq 1.44,</math>
कहाँ <math>\varphi</math> स्वर्णिम अनुपात है. टर्नरी [[अल्पविराम कोड]] के लिए (यानी, आधार 3 में एन्कोडिंग, प्रति प्रतीक 2 बिट्स के साथ दर्शाया गया है), अंतर्निहित वितरण एक शक्ति कानून है <math>q=1+\log_3(4/3) \simeq 1.26</math>. इस प्रकार इन वितरणों में उनके संबंधित शक्ति कानूनों के साथ लगभग-इष्टतम कोड होते हैं।
कहाँ <math>\varphi</math> स्वर्णिम अनुपात है. टर्नरी [[अल्पविराम कोड|अल्पविराम कूट]] के लिए (यानी, आधार 3 में एन्कूटलेखन, प्रति प्रतीक 2 बिट्स के साथ दर्शाया गया है), अंतर्निहित वितरण एक शक्ति कानून है <math>q=1+\log_3(4/3) \simeq 1.26</math>. इस प्रकार इन वितरणों में उनके संबंधित शक्ति कानूनों के साथ लगभग-इष्टतम कूट होते हैं।


==बाहरी संबंध==
==बाहरी संबंध==

Revision as of 21:37, 12 December 2023

फाइबोनैचि, एलियास गामा, और एलियास डेल्टा बनाम बाइनरी कूटलेखन
k = 2, 3, 4, 5, 8, 16 बनाम बाइनरी वाला चावल

आंकड़ा संकुलन में, पूर्णांकों के लिए एक सार्वभौमिक कूट एक पूर्वलग्न कूट होता है जो सकारात्मक पूर्णांकों को बाइनरी(द्विआधारी) कूट शब्द पर मैप करता है, अतिरिक्त गुण के साथ कि पूर्णांकों पर वास्तविक संभाव्यता वितरण जो भी हो, जब तक कि वितरण मोनोटोनिक है (i.e., p(i) ≥ p(i + 1) सभी सकारात्मक i के लिए), कूट शब्द की अपेक्षित मान लंबाई अपेक्षित लंबाई के एक स्थिर कारक के भीतर है उस संभाव्यता वितरण के लिए इष्टतम कूट निर्दिष्ट किया गया होगा। एक सार्वभौमिक कूट असममित रूप से इष्टतम होता है यदि वास्तविक और इष्टतम अपेक्षित लंबाई के बीच का अनुपात कूट की सूचना एन्ट्रॉपी के एक फलन द्वारा घिरा होता है, जो बंधे होने के अलावा, 1 तक पहुंचता है क्योंकि एन्ट्रॉपी अनंत तक पहुंचती है।

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

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

सार्वभौमिक और गैर-सार्वभौमिक कूट

ये पूर्णांकों के लिए कुछ सार्वभौमिक कूट हैं; एक तारांकन चिह्न (*) एक कूट को इंगित करता है जिसे शब्दावली क्रम में तुच्छ रूप से दोहराया जा सकता है, जबकि एक डबल डैगर( दुमुठ कटार (चिह्न)) (‡) एक ऐसे कूट को इंगित करता है जो स्पर्शोन्मुख रूप से इष्टतम है:

ये गैर-सार्वभौमिक हैं:

  • यूनरी कूटलेखन, जिसका उपयोग एलियास कूट में किया जाता है
  • गोलोम्ब कूटलेखन, जिसका उपयोग एफएलएसी ऑडियो कूटेक में किया जाता है और जिसमें एक विशेष मामले के रूप में यूनरी कूटलेखन होती है
  • गोलोम्ब कूटलेखन, जिसमें विशेष मामलों के रूप में राइस कूटलेखन और यूनरी कूटलेखन है।

उनकी गैर-सार्वभौमिकता को यह देखकर देखा जा सकता है कि, यदि इनमें से किसी का उपयोग गॉस-कुज़मिन वितरण या ज़ेटा वितरण को पैरामीटर s=2 के साथ कूट करने के लिए किया जाता है, तो अपेक्षित कूट शब्द लंबाई अनंत है। उदाहरण के लिए, ज़ेटा वितरण पर यूनरी कूटलेखन का उपयोग करने से अपेक्षित लंबाई प्राप्त होती है

दूसरी ओर, गॉस-कुज़मिन वितरण के लिए सार्वभौमिक एलियास गामा कूटलेखन का उपयोग करने से एन्ट्रापी (लगभग 3.43 बिट्स) के निकट अपेक्षित कूट शब्द लंबाई (लगभग 3.51 बिट्स) प्राप्त होती है।http://scholar.google.com/scholar?cluster=13442560459874106744 - Академия Google

व्यावहारिक संपीड़न से संबंध

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

हालाँकि, यूनिवर्सल कूट तब उपयोगी होते हैं जब हफ़मैन कूटलेखन का उपयोग नहीं किया जा सकता है - उदाहरण के लिए, जब कोई प्रत्येक संदेश की सटीक संभावना नहीं जानता है, लेकिन केवल उनकी संभावनाओं की रैंकिंग जानता है।

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

प्रत्येक सार्वभौमिक कूट, एक दूसरे के स्व-परिसीमन (पूर्वलग्न) बाइनरी कूट की तरह, इसका अपना निहित संभाव्यता वितरण होता है P(i)=2l(i) कहाँ l(i) ith कूट शब्द की लंबाई है और P(i) संबंधित प्रतीक की संभावना है। यदि वास्तविक संदेश संभावनाएँ Q(i) और कुल्बैक-लीबलर विचलन हैं कूट द्वारा न्यूनतम किया गया है l(i), तो संदेशों के उस सेट के लिए इष्टतम हफ़मैन कूट उस कूट के बराबर होगा। इसी तरह, कोई कूट इष्टतम के कितना करीब है, इसे इस विचलन से मापा जा सकता है। चूँकि यूनिवर्सल कूट हफ़मैन कूट (जो बदले में, अंकगणितीय एन्कूटलेखन की तुलना में सरल और तेज़ है) की तुलना में एन्कूट और डिकूट करने में सरल और तेज़ होते हैं, यूनिवर्सल कूट उन मामलों में बेहतर होगा जहां पर्याप्त रूप से छोटा है. दोषरहित आंकड़ा संकुलन प्रोग्राम: हाइब्रिड LZ77 RLE

किसी भी ज्यामितीय वितरण (पूर्णांकों पर एक घातीय वितरण) के लिए, एक गोलोम्ब कूट इष्टतम है। सार्वभौमिक कूट के साथ, अंतर्निहित वितरण लगभग एक शक्ति कानून है जैसे (अधिक सटीक रूप से, एक Zipf वितरण)। फाइबोनैचि कूट के लिए, अंतर्निहित वितरण लगभग है , साथ

कहाँ स्वर्णिम अनुपात है. टर्नरी अल्पविराम कूट के लिए (यानी, आधार 3 में एन्कूटलेखन, प्रति प्रतीक 2 बिट्स के साथ दर्शाया गया है), अंतर्निहित वितरण एक शक्ति कानून है . इस प्रकार इन वितरणों में उनके संबंधित शक्ति कानूनों के साथ लगभग-इष्टतम कूट होते हैं।

बाहरी संबंध