यूनिवर्सल कोड (डेटा कम्प्रेशन): Difference between revisions
(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: | ||
[[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}} ‡ | *[[इलियास गामा कोडिंग|इलियास गामा कूटलेखन]]* | ||
* एक्सपोनेंशियल-[[गोलोम्ब कोडिंग]] | *[[इलियास डेल्टा कोडिंग|इलियास डेल्टा कूटलेखन]]* ‡ | ||
* [[फाइबोनैचि कोडिंग]] | *[[इलियास ओमेगा कोडिंग|इलियास ओमेगा कूटलेखन]]*{{explain|reason=How is this trivially restated in lexicographical order?|date=August 2019}} ‡ | ||
*[[लेवेनशेटिन कोडिंग]]* ‡, मूल सार्वभौमिक | * एक्सपोनेंशियल-[[गोलोम्ब कोडिंग|गोलोम्ब कूटलेखन]] (एक्सप-गोलोम्ब कूटलेखन) *, जिसमें एक विशेष मामले के रूप में एलियास गामा कूटलेखन है। (H.264/MPEG-4 AVC में प्रयुक्त) | ||
* [[बाइट कोडिंग]] | * [[फाइबोनैचि कोडिंग|फाइबोनैचि कूटलेखन]] | ||
*[[लेवेनशेटिन कोडिंग|लेवेनशेटिन कूटलेखन]]* ‡, मूल सार्वभौमिक कूटलेखन तकनीक [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]। | ||
==व्यावहारिक संपीड़न से संबंध== | ==व्यावहारिक संपीड़न से संबंध== | ||
[[हफ़मैन कोडिंग]] और अंकगणित | [[हफ़मैन कोडिंग|हफ़मैन कूटलेखन]] और अंकगणित कूटलेखन (जब उनका उपयोग किया जा सकता है) किसी भी सार्वभौमिक कूट की तुलना में कम से कम अच्छा, और अक्सर बेहतर संपीड़न देते हैं। | ||
हालाँकि, यूनिवर्सल | हालाँकि, यूनिवर्सल कूट तब उपयोगी होते हैं जब हफ़मैन कूटलेखन का उपयोग नहीं किया जा सकता है - उदाहरण के लिए, जब कोई प्रत्येक संदेश की सटीक संभावना नहीं जानता है, लेकिन केवल उनकी संभावनाओं की रैंकिंग जानता है। | ||
हफ़मैन | हफ़मैन कूट असुविधाजनक होने पर यूनिवर्सल कूट भी उपयोगी होते हैं। उदाहरण के लिए, जब ट्रांसमीटर नहीं बल्कि रिसीवर संदेशों की संभावनाओं को जानता है, तो हफ़मैन कूटलेखन के लिए उन संभावनाओं को रिसीवर तक प्रसारित करने के लिए ओवरहेड की आवश्यकता होती है। यूनिवर्सल कूट का उपयोग करने पर वह ओवरहेड नहीं होता है। | ||
प्रत्येक सार्वभौमिक | प्रत्येक सार्वभौमिक कूट, एक दूसरे के स्व-परिसीमन (पूर्वलग्न) बाइनरी कूट की तरह, इसका अपना निहित संभाव्यता वितरण होता है {{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/ दोषरहित | [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^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 में | कहाँ <math>\varphi</math> स्वर्णिम अनुपात है. टर्नरी [[अल्पविराम कोड|अल्पविराम कूट]] के लिए (यानी, आधार 3 में एन्कूटलेखन, प्रति प्रतीक 2 बिट्स के साथ दर्शाया गया है), अंतर्निहित वितरण एक शक्ति कानून है <math>q=1+\log_3(4/3) \simeq 1.26</math>. इस प्रकार इन वितरणों में उनके संबंधित शक्ति कानूनों के साथ लगभग-इष्टतम कूट होते हैं। | ||
==बाहरी संबंध== | ==बाहरी संबंध== |
Revision as of 21:37, 12 December 2023
आंकड़ा संकुलन में, पूर्णांकों के लिए एक सार्वभौमिक कूट एक पूर्वलग्न कूट होता है जो सकारात्मक पूर्णांकों को बाइनरी(द्विआधारी) कूट शब्द पर मैप करता है, अतिरिक्त गुण के साथ कि पूर्णांकों पर वास्तविक संभाव्यता वितरण जो भी हो, जब तक कि वितरण मोनोटोनिक है (i.e., p(i) ≥ p(i + 1) सभी सकारात्मक i के लिए), कूट शब्द की अपेक्षित मान लंबाई अपेक्षित लंबाई के एक स्थिर कारक के भीतर है उस संभाव्यता वितरण के लिए इष्टतम कूट निर्दिष्ट किया गया होगा। एक सार्वभौमिक कूट असममित रूप से इष्टतम होता है यदि वास्तविक और इष्टतम अपेक्षित लंबाई के बीच का अनुपात कूट की सूचना एन्ट्रॉपी के एक फलन द्वारा घिरा होता है, जो बंधे होने के अलावा, 1 तक पहुंचता है क्योंकि एन्ट्रॉपी अनंत तक पहुंचती है।
सामान्य तौर पर, पूर्णांकों के लिए अधिकांश पूर्वलग्न कूट बड़े पूर्णांकों के लिए लंबे कूट शब्द निर्दिष्ट करते हैं। इस तरह के कूट का उपयोग संभावित संदेशों के एक सेट से निकाले गए संदेश को कुशलतापूर्वक संप्रेषित करने के लिए किया जा सकता है, संभाव्यता को कम करके संदेशों के सेट को क्रमबद्ध करके और फिर इच्छित संदेश का सूचकांक भेजकर, यूनिवर्सल कूट आमतौर पर सटीक रूप से ज्ञात संभाव्यता वितरण के लिए उपयोग नहीं किए जाते हैं, और कोई भी यूनिवर्सल कूट प्रक्रिया में उपयोग किए जाने वाले किसी भी वितरण के लिए इष्टतम नहीं माना जाता है।
एक सार्वभौमिक कूट को सार्वभौमिक स्रोत कूटलेखन के साथ भ्रमित नहीं किया जाना चाहिए, जिसमें आंकड़ा संकुलन विधि को एक निश्चित पूर्वलग्न कूट की आवश्यकता नहीं होती है और वास्तविक और इष्टतम अपेक्षित लंबाई के बीच का अनुपात एक होना चाहिए। हालाँकि, ध्यान दें कि सार्वभौमिक स्रोत कोडिंग की एक विधि के रूप में, तेजी से बड़े ब्लॉकों का उपयोग करके, एक असम्बद्ध रूप से इष्टतम सार्वभौमिक कोड का उपयोग स्वतंत्र रूप से समान रूप से वितरित स्रोतों पर किया जा सकता है।
सार्वभौमिक और गैर-सार्वभौमिक कूट
ये पूर्णांकों के लिए कुछ सार्वभौमिक कूट हैं; एक तारांकन चिह्न (*) एक कूट को इंगित करता है जिसे शब्दावली क्रम में तुच्छ रूप से दोहराया जा सकता है, जबकि एक डबल डैगर( दुमुठ कटार (चिह्न)) (‡) एक ऐसे कूट को इंगित करता है जो स्पर्शोन्मुख रूप से इष्टतम है:
- इलियास गामा कूटलेखन*
- इलियास डेल्टा कूटलेखन* ‡
- इलियास ओमेगा कूटलेखन*[further explanation needed] ‡
- एक्सपोनेंशियल-गोलोम्ब कूटलेखन (एक्सप-गोलोम्ब कूटलेखन) *, जिसमें एक विशेष मामले के रूप में एलियास गामा कूटलेखन है। (H.264/MPEG-4 AVC में प्रयुक्त)
- फाइबोनैचि कूटलेखन
- लेवेनशेटिन कूटलेखन* ‡, मूल सार्वभौमिक कूटलेखन तकनीक [1]
- बाइट कूटलेखन जहाँ कूट के अंत को चिह्नित करने के लिए एक विशेष बिट पैटर्न (कम से कम दो बिट्स के साथ) का उपयोग किया जाता है - उदाहरण के लिए, यदि पूर्णांक को अधिक प्राकृतिक आधार 16 के बजाय आधार 15 में अंकों का प्रतिनिधित्व करने वाले कुतरना ्स के अनुक्रम के रूप में एन्कूट किया गया है , तो पूर्णांक के अंत को इंगित करने के लिए उच्चतम निबल मान (यानी, बाइनरी में चार लोगों का अनुक्रम) का उपयोग किया जा सकता है।
- परिवर्तनीय-लंबाई मात्रा
ये गैर-सार्वभौमिक हैं:
- यूनरी कूटलेखन, जिसका उपयोग एलियास कूट में किया जाता है
- गोलोम्ब कूटलेखन, जिसका उपयोग एफएलएसी ऑडियो कूटेक में किया जाता है और जिसमें एक विशेष मामले के रूप में यूनरी कूटलेखन होती है
- गोलोम्ब कूटलेखन, जिसमें विशेष मामलों के रूप में राइस कूटलेखन और यूनरी कूटलेखन है।
उनकी गैर-सार्वभौमिकता को यह देखकर देखा जा सकता है कि, यदि इनमें से किसी का उपयोग गॉस-कुज़मिन वितरण या ज़ेटा वितरण को पैरामीटर s=2 के साथ कूट करने के लिए किया जाता है, तो अपेक्षित कूट शब्द लंबाई अनंत है। उदाहरण के लिए, ज़ेटा वितरण पर यूनरी कूटलेखन का उपयोग करने से अपेक्षित लंबाई प्राप्त होती है
दूसरी ओर, गॉस-कुज़मिन वितरण के लिए सार्वभौमिक एलियास गामा कूटलेखन का उपयोग करने से एन्ट्रापी (लगभग 3.43 बिट्स) के निकट अपेक्षित कूट शब्द लंबाई (लगभग 3.51 बिट्स) प्राप्त होती है।http://scholar.google.com/scholar?cluster=13442560459874106744 - Академия Google।
व्यावहारिक संपीड़न से संबंध
हफ़मैन कूटलेखन और अंकगणित कूटलेखन (जब उनका उपयोग किया जा सकता है) किसी भी सार्वभौमिक कूट की तुलना में कम से कम अच्छा, और अक्सर बेहतर संपीड़न देते हैं।
हालाँकि, यूनिवर्सल कूट तब उपयोगी होते हैं जब हफ़मैन कूटलेखन का उपयोग नहीं किया जा सकता है - उदाहरण के लिए, जब कोई प्रत्येक संदेश की सटीक संभावना नहीं जानता है, लेकिन केवल उनकी संभावनाओं की रैंकिंग जानता है।
हफ़मैन कूट असुविधाजनक होने पर यूनिवर्सल कूट भी उपयोगी होते हैं। उदाहरण के लिए, जब ट्रांसमीटर नहीं बल्कि रिसीवर संदेशों की संभावनाओं को जानता है, तो हफ़मैन कूटलेखन के लिए उन संभावनाओं को रिसीवर तक प्रसारित करने के लिए ओवरहेड की आवश्यकता होती है। यूनिवर्सल कूट का उपयोग करने पर वह ओवरहेड नहीं होता है।
प्रत्येक सार्वभौमिक कूट, एक दूसरे के स्व-परिसीमन (पूर्वलग्न) बाइनरी कूट की तरह, इसका अपना निहित संभाव्यता वितरण होता है P(i)=2−l(i) कहाँ l(i) ith कूट शब्द की लंबाई है और P(i) संबंधित प्रतीक की संभावना है। यदि वास्तविक संदेश संभावनाएँ Q(i) और कुल्बैक-लीबलर विचलन हैं कूट द्वारा न्यूनतम किया गया है l(i), तो संदेशों के उस सेट के लिए इष्टतम हफ़मैन कूट उस कूट के बराबर होगा। इसी तरह, कोई कूट इष्टतम के कितना करीब है, इसे इस विचलन से मापा जा सकता है। चूँकि यूनिवर्सल कूट हफ़मैन कूट (जो बदले में, अंकगणितीय एन्कूटलेखन की तुलना में सरल और तेज़ है) की तुलना में एन्कूट और डिकूट करने में सरल और तेज़ होते हैं, यूनिवर्सल कूट उन मामलों में बेहतर होगा जहां पर्याप्त रूप से छोटा है. दोषरहित आंकड़ा संकुलन प्रोग्राम: हाइब्रिड LZ77 RLE
किसी भी ज्यामितीय वितरण (पूर्णांकों पर एक घातीय वितरण) के लिए, एक गोलोम्ब कूट इष्टतम है। सार्वभौमिक कूट के साथ, अंतर्निहित वितरण लगभग एक शक्ति कानून है जैसे (अधिक सटीक रूप से, एक Zipf वितरण)। फाइबोनैचि कूट के लिए, अंतर्निहित वितरण लगभग है , साथ
कहाँ स्वर्णिम अनुपात है. टर्नरी अल्पविराम कूट के लिए (यानी, आधार 3 में एन्कूटलेखन, प्रति प्रतीक 2 बिट्स के साथ दर्शाया गया है), अंतर्निहित वितरण एक शक्ति कानून है . इस प्रकार इन वितरणों में उनके संबंधित शक्ति कानूनों के साथ लगभग-इष्टतम कूट होते हैं।
बाहरी संबंध
- Data Compression, by Debra A. Lelewer and Daniel S. Hirschberg (University of California, Irvine)
- Information Theory, Inference, and Learning Algorithms, by David MacKay, has a chapter on codes for integers, including an introduction to Elias codes.
- Кодирование целых чисел has mostly English-language papers on universal and other integer codes.