- أعقبته بتعليق على الفيسبوك - ضغط النصوص يعد من أشهر التطبيقات: فلنفترض أن عن...

- أعقبته بتعليق على الفيسبوك -

ضغط النصوص يعد من أشهر التطبيقات:

فلنفترض أن عندنا رسالة نصية قصيرة "ABABABAB"، ونريد ضغطها، أي تقليل مساحتها على الحاسوب:

● نحسب التوزيع الاحتمالي:

1. نحسب تكرار كل حرف في النص:
ال'A' يظهر 4 مرات
ال'B' يظهر 4 مرات

2. نحسب الاحتمالات:
p(A) = 4/8 = 0.5
p(B) = 4/8 = 0.5

● نحسب الاعتلاج entropy:
1. باستخدام المعادلة نعوِّض الاحتمالات مكان p(x) :

H(x) = 0.5 * log2 (1/0.5) + 0.5 log2
= Σ 0.5 * log2 (2) + 0.5 log2 (2)

H(x) = 0.5 * 1 + 0.5 * 1 = 1 bit

● نستقرئ الاعتلاج على أنه بِتْ واحد لكل حرف، وهذا يعني أن كل حرف في النص يحتوي على بِتْ واحد من المعلومات.

● مؤديات الاستقراء: يعطي الاعتلاج حدا نظريا سفليا lower bound لمتوسط عدد البتات اللازمة لضغط كل حرف، ولأن عندنا حرفَيْن فحسب باحتمالية متساوية فإننا نستخدم تكويد ذا طول ثابت fixed length، حيث A تمثل 0 وB تمثل 1.

وبِذا فإن النص الأصلي ABABABAB يمكن تكويده على 01010101.

وهكذا ضغطنا نصًّا بحجم 64 بت (8 أحرف مضروبة في 8 بت لكل حرف) إلى حجم 8 بت فقط (لأن حجم النص المضغوط هو 8، والحجم الأصلي 64: هذا يعطيك 64/8 = 8)

وهكذا تجري كل عمليات الضغط الحوسبية، بفضل معادلة شانون العملاقة
```