نظرية المعلومات: مدخل غير مزيف لفهم الإنتروبي!

تباً للتعاريف!

تباً للتعاريف! المشكلة الأساسية في التعاريف أنها تشكل حاجزاً للعقل البشري، فعندما تبدأ موضوعاً ما بتعريف، فإنك من البداية تضع قيوداً على حرية التفكير والنقد. وللأسف معظم الكتب التي ندرسها ممتلئة بهذا النوع من المشاكل. فاستخدام التعاريف يجب ألا يكون على حساب الموضوع الأساسي، وألا يعطي للقارئ الإيحاء بأنها أمر مقدس ولا يمكن نقده. ويجب أن تقتصر على الأدوات التي لا تتعلق بموضوع البحث. أما أن نبدأ نظرية المعلومات مثلاً بتعريف للإنتروبي أو أن نبدأ علم الاجتماع بتعريف للمجتمع، فهذا نوع من الانحدار الفكري الذي ينتج أفراداً مستهلكين للعلم.

لو كان الأمر بيدي، لاستبدلت جميع التعاريف بمناقشات وبراهين فلسفية أو تجريبية بحسب الموضوع، ولتركت للقارئ حرية استخدام الألفاظ التي يريدها. فالهدف هو بناء آلية تفكير نقدية قادرة على إنتاج المعرفة. لا أفراداً هم أقرب لأشرطة الكاسيت، يحفظون ويرددون ما قيل لهم.

تكميم المعلومات

عند طرح أي موضوع يجب البدء بالتساؤل أو بالمشكلة التي أدت للوصول إلى الحل الذي يتم طرحه عادةً كتعريف! وفي الواقع يمكن تكييف المشكلة أو إعادة صياغتها بعدة طرق تتناسب والشريحة المستهدفة. لن أطرح المشكلة الأساسية التي كان شانون (Shannon) يعالجها عندما توصل إلى نظرية المعلومات ونشر ورقته البحثية الشهيرة (نظرية رياضية في الإتصالات). وإنما سأكتفي بطرح الجزء الذي يؤسس للوصول إلى الإنتروبي وفهمه تماماً. للأسف، معظم الكتب تبدأ بتعريف للإنتروبي على أنه العلاقة التالية:

الواقع أن الشكل المخيف لهذه العبارة كفيل بأن يسبب عقدة نفسية للقارئ! دعك من هذه الشعوذة ولنبدأ رحلتنا بالتساؤل التالي: كيف يمكن أن نكمم المعلومة؟ مثلاً، لو اخبرتك بأن الطقس غداً سيكون ماطراً، ما هي “كمية المعلومات” التي عرفتها من هذه العبارة؟

لتوضيح الأمر لابد من إلقاء الضوء على فلسفة القياس. فعندما نقول: طول شخص هو 180 سم، فإننا نعني أننا أتفقنا على طول ثابت وسميناه السنتيمتر، وطول الشخص هنا يكافئ طول 180 قطعة من هذا الشيء الذي سميناه سنتيمتر. ونفس الأمر بالنسبة للمساحة، فعندما نقول أن مساحة دائرة هي 5 متر مربع، فإننا نعني اننا نملك مربع معين واتفقنا على تسمية هذا المربع بالمتر المربع. ومن ثم قدرنا بأن المساحة المحصورة ضمن الدائرة تكافئ مساحة 5 قطع من هذا المتر المربع.

المشكلة هنا أنه من غير الواضح ما هو الشيء الذي يمكن أن نستخدمه كوحدة لقياس كمية المعلومات. فكمية المعلومات لا تتعلق بطبيعة المعلومة بحد ذاتها. والمعلومات ليست أمراً متجانساً، فقد أخبرك عن وقوع زلزال في اليابان، وقد أخبرك عن زواج أحد أقاربي. وقد أخبرك عن يوم القيامة. وبالتالي نريد مقياس لقياس كمية المعلومات بغض النظر عن طبيعة المعلومة.

الواقع أن ما سأعرضه هنا (وهو ما اقترحه شانون) لا يعدو عن كونه أحد وجهات النظر في هذا الموضوع، ولا يمنع إطلاقاً أن يظهر في المستقبل مقياس آخر لكمية المعلومات يقيسها من وجهة نظر أخرى.

الفكرة الفلسفية التي بنى عليها شانون نظريته هي أن كمية المعلومات لا تتعلق بالعبارة بحد ذاتها، وإنما تتعلق بمتلقي المعلومة. وترتبط بكمية “المفاجأة” التي يشعر بها عندما يسمع هذه المعلومة. فمثلاً لو أخبرتك بأن الطقس غداً سيكون ماطراً وبارداً جداً، قد تستغرب جداً من ذلك إذا كنت في منتصف الصيف وتعاني من يوم حار. بينما لو أخبرتك نفس المعلومة في منتصف الشتاء، فإن ذلك لن يعني لك الكثير. فأنت “تتوقع” ذلك. إذاً كمية المعلومات تتعلق بالاحتمال. هذه هي النظرة الفلسفية التي بنى عليها شانون نظريته.

وبالتالي، لن نعتمد الطريقة التقليدية في إيجاد مقياس لكمية المعلومات. بمعنى أننا لن نبدأ بإيجاد “مقياس” أو “واحدة” لكمية المعلومات ومن ثم نقيس كمية المعلومات الواردة. وإنما سنحاول إيجاد تابع رياضي، هذا التابع يعبر عن المفاجأة التي التي نشعر بها عند وقوع حدث ما. ويجب على هذا التابع أن يحقق مجموعة من الصفات التي “نتوقعها” في تابع قياس كمية المعلومات. لاحظ أنه لا يمكننا البدء بغير ذلك لأننا لا نملك أصلاً فكرة عن هذه “الواحدة” أو كيفية قياسها.

محاولة فاشلة

سنبدأ بطرح التصور التالي، لنفرض أنه لدينا قطعة نقود، احتمال ظهور الكتابة فيها يساوي 0.75 (ثلاث أرباع)، واحتمال ظهور الشعار هو 0.25 (ربع). قمنا برمي قطعة النقود وظهرت الكتابة. وفقاً للنظرة الفلسفية السابقة، فإن كمية المعلومات التي نحصل عليها عند ظهور الكتابة أقل من كمية المعلومات عند ظهور الشعار. وذلك لأننا نتوقع أصلاً وقوع هذا الحدث. والسؤال، ماذا يمكن أن نستخدم لتكميم هذا الأمر؟ نريد تابعاً رياضياً يحقق الأمر السابق. فكر قليلاً قبل متابعة القراءة.

طرحت هذا السؤال على أحد أصدقائي، فأجابني بأنه يمكن الوصول لهذا الأمر عن طريق التابع التالي:

f(p) = 1 – p

حيث p هو احتمال وقوع الحدث. وبالفعل، هذا التابع يحقق المطلوب، فكلما كان احتمال وقوع الحدث صغيراً كلما زادت كمية المعلومات التي نحصل عليها عندما نعلم بوقوعه.

جميل، يبدو أننا وصلنا للمطلوب دون الحاجة لشانون وأمثاله. فليذهبوا جميعاً إلى الجحيم! وهنئاً لنا بتابعنا الجميل! قبل أن نسترسل أكثر مع مشاعرنا يجب علينا التأكد من أن تابعنا يحقق ما نتوقعه. ما الذي يمكن أن نتوقعه من تابع يقيس كمية المعلومات؟ لو أخبرتك بأن الطقس غداً سيكون ماطراً، فإنك ستكسب كمية من المعلومات ولتكن X1. لو أخبرتك أيضاً بأنني سأدعوك إلى العشاء هذا المساء، فإنك ستكسب عشاءاً وكمية من المعلومات تكافئ X2. السؤال الآن، ماذا كسبت بشكل كامل من هاتين العبارتين؟ الواقع أنك كسبت عشاءاً وX1 و X2. وبالتالي نتوقع أن كمية المعلومات التي كسبتها بشكل كامل تساوي

X1 + X2

فلسفياً لا يمكن أن اتخيل سبباً لأن تكون كمية المعلومات التي حصلت عليها من حدثين منفصلين ومستقلين مختلفة عن المجموع. الآن، لنفترض أن احتمالات وقوع الحدثين السابقين هي كما يلي:

p1 = 0.5 احتمال سقوط الأمطار غداً

p2 = 0.001 احتمال أن تنال عشاءً على حسابي

وبما أن هذان الحدثان مستقلان (لا علاقة لسقوط الأمطار غداً بعشاء اليوم) فاحتمال وقوعهما معاً يساوي جداءهما. وبالتالي:

p =(p1) (p2) = (0.5)(0.001) = 0.0005

الآن، بما أنني أخبرتك بأن الأمطار ستسقط غداً (احتمالياً، الحدث قد وقع)، فإن كمية المعلومات التي حصلت عليها من هذا الخبر تساوي:

h1 = f(p1) = 1 – 0.5 = 0.5

وكمية المعلومات التي حصلت عليها عندما أخبرتك بأنني سأدعوك إلى العشاء (احتمالياً، الحدث قد وقع)، فإن كمية المعلومات تساوي

h2 = f(p2) = 1 – 0.001 = 0.999

ويفترض أن تكون كمية المعلومات التي حصلت عليها بشكل كامل تساوي:

h = h1 + h2 = 0.5 + 0.999 = 1.499

الآن، يمكن أن نحسب كمية المعلومات بطريقة أخرى، فوقوع هذان الحدثان مع بعضهما أعطاك كمية المعلومات بالشكل التالي:

h’ = f(p) = 1 – 0.0005 = 0.9995

وهنا تكمن المشكلة، لاحظ أن h لا يساوي ‘h بالرغم من أنهما نظرياً يعبران عن نفس كمية المعلومات. واحدة عن طريق حساب كمية المعلومات الناتجة عن كل حدث على حدة. والثانية عن طريق كمية المعلومات الناتجة عن وقوع الحدثين مع بعضهما (الأمر الذي حصل على أمر الواقع).

المشكلة ظهرت لأننا نريد تابعاً يحول كمية المعلومات الناتجة عن جداء احتمالين (بمعنى وقوع حدثين مستقلين) إلى مجموع كميات المعلومات الناتجة عن كل حدث على حدى.

تابع كمية المعلومات (Information Content)

من الواضح أن أول تابع يمكن استخدامه لتحوي مجموع إلى جداء هو تابع اللوغاريتم. ولكن هل يعكس تابع اللوغاريتم فكرة كمية المعلومات كما ناقشناها سابقاً؟ نعم لحسن الحظ. فهو يحقق ما يلي:

log ( 1 ) = 0

log (0) = – لانهاية

وبالتالي يمكن استخدام هذا التابع كمقياس لكمية المعلومات إذا ضربناه ب (-1) حيث يعطي صفراً عندما لا يحوي الحدث أي مفاجأة (نعلم أنه سيقع قطعاً) وتزداد قيمة كمية المعلومات كلما انخفض احتمال وقوع الحدث أي كلما زادت المفاجأة. وبالتالي التابع هو:

i(p) = – log(p)

طبعاً لازالت هنالك مشكلة تحديد أساس اللوغاريتم، سنناقش ذلك لاحقاً عندما نتحدث عن الواحدة التي يجب استخدامها لكمية المعلومات.

لنرى كيف يتصرف هذا التابع في المثال السابق، سنستخدم مؤقتا اللوغاريتم الطبيعي:

h1 = i(p1) = – ln(0.5) = 0.693

h2 = i(p2) = -ln(0.001) = 6.9

h = h1 + h2 = 0.693 + 6.9 = 7.593

h’ = i(p) = -ln(p1.p2) = -ln(p1) – ln(p2) = h1 + h2 = h

إذاً هذا التابع لا يعاني من المشكلة السابقة.

الإنتروبي (Entropy)

لنراجع ما توصلنا إليه حتى الآن. اتفقنا على أن نستخدم “المفاجأة” كمقياس لكمية المعلومات. ولاحظنا الفرق في فلسفة تعريف عملية القياس بين الأطوال والمساحات من جهة وبين كمية المعلومات من جهة أخرى. إذ لا نملك هنا طريقة بديهية لتعريف واحدة والمقارنة معها. وبالتالي سلكنا الطريق الآخر الذي يتطلب إيجاد تابع يحقق الصفات التي نتوقعها من مقياس المعلومات. وتوصلنا إلى تابع يمكن أن يكون مقياساً لكمية المعلومات التي نأخذها عند وقوع حدث ما.

لا نتعامل عادةً  مع حدث معين. وإنما نتعامل مع مجموعة من الأحداث التي يمكن أن يقع أحدها. فمثلاً عند رمي قطعة نقود، نحن أمام حدثين: إما ظهور الكتابة أو ظهور الشعار. وعندما نرمي حجر نرد، فنحن أمام 6 أحداث. في هذه الحالة يمكن الحديث عن كمية المعلومات التي نحصل عليها من تجربة، وليس من حدث. (هذا الكلام عبارة عن تبسيط لفكرة المتحول العشوائي) فالتجربة ستؤدي إلى وقوع واحد من مجموعة أحداث، وكل حدث يعطي كمية معلومات معينة. وبالتالي يمكن أن نحسب متوسط كمية المعلومات التي نحصل عليها من هذه التجربة (المتوسط يعبر عن التوقع بلغة المتحول العشوائي). يدعى هذا المقدار (الإنتروبي).

فمثلاً في تجربة رمي قطعة نقود عادية. احتمال ظهور الكتابة يساوي احتمال ظهور الشعار. وبالتالي (سنستخدم اللوغاريتم ذي الأساس 2):

p1 = 0.5, h1 = i(p1) = – log 0.5 = 1

p2 = 0.5, h2 = i(p2) = -log 0.5 = 1

وبالتالي متوسط كمية المعلومات أو الإنتروبي هو:

H =( p1) (i1) + (p2)( i2) = 0.5(1) + 0.5(1) = 1

وبشكل عام، يمكن حساب متوسط كمية المعلومات بالعلاقة:

من صفات هذا التابع أن قيمته تكون أكبر ما يمكن عندما تكون الاحتمالات متساوية. وهذا أحد الأمور التي نتوقعها من تابع لقياس كمية المعلومات. فعند غياب أي معلومة عن التجربة، يكون لجميع النتائج نفس احتمال الظهور. وعندما نبدأ بالحصول على بعض المعلومات، يتغير توزع الاحتمالات وتنقص كمية المعلومات المستخرجة من التجربة.

اقترح شانون واحدة البت (Bits) إذا استخدمنا اللوغاريتم بالنسبة للأساس 2. الواقع أن البت المقصود هنا يختلف عن البت الفيزيائي. فالبت فيزيائياً هو أي نظام يستطيع أن يكون بإحدى حالتين. فقطعة النقود مثلاً تمثل بت. أما البت المستخدم في الإنتروبي، فيعبر عن كمية المفاجأة الموجودة في بت. فهي لا تعني البت الفيزيائي وإنما تعني كمية المعلومات التي نحصل عليها من بت. ففي مثال قطعة النقود السابق. كان احتمال الكتابة يساوي احتمال الشعار. وهذه الحالة تعبر عن الجهل التام بالوضع. في هذه الحالة بالذات نلاحظ أن تابع الإنتروبي يعطي القيمة 1 إذا استخدمنا اللوغاريتم ذي الأساس 2. وهي تعني أن كمية المفاجأة في هذا البت كاملة. فنحن نكسب بتاً كاملاً من المعلومات عند معرفة نتيجة هذه التجربة.

هذا هو سبب تسمية واحدة الإنتروبي بالبت إذا استخدمنا اللوغاريتم ذي الأساس 2. فهو يعطي القيمة 1 عندما يكون الدخل بت ولا نملك عنه أي معلومة.

يمكن ملاحظة أن الحالة هنا تشابه الحالة في بقية المقاييس (كالطول والمساحة). إذ يمكن ضرب الإنتروبي برقم لتحويل الواحدة. فمثلاً لو استخدمنا اللوغاريتم ذي الأساس 8، وادخلنا تجربة مكونة من 8 أحداث ولكل حدث نفس الاحتمال (حالة جهل تام بالتجربة). نلاحظ أن نتيجة الإنتروبي تساوي 1. ولو حسبناها باللوغاريتم ذي الأساس 2 لوجدنا أنها تساوي 3. وهذا الأمر منطقي تماماً. فالتجربة المكونة من 8 أحداث بنفس الاحتمال تحتاج إلى 3 بتات فيزيائية لترميزها. فإذا ماكانت احتمالات كل بت من البتات الثلاثة (0.5 – 0.5)  أي حالة جهل تام فإن كمية المعلومات تساوي 3. وعملية تحويل لوغاريتم من أساس معين إلى أساس آخر عبارة عن ضرب برقم ثابت. فلتحويل اللوغاريتم من الأساس 8 إلى الأساس 2 يكفي أن نضرب بالرقم 3.

وبالتالي عندما نحسب كمية المعلومات في تجربة معينة (باستخدام لوغاريتم ذي أساس 2) ونجد أنها 3.4 مثلاً. فإننا نعلم أن كمية المعلومات المستخرجة من هذه التجربة تكافئ كمية المعلومات المستخرجة من 4 بتات، ثلاث منها بحالة جهل تام (0.5 – 0.5) والرابع بتوزيع احتمالي يعطي كمية معلومات تساوي 0.4.

وفي الختام أود أن أشير إلى أنه توجد العديد من التفسيرات للإنتروبي، فالإنتروبي يعبر عن متوسط طول أصغر ترميز لنتائج التجربة. هذا التفسير ليس من أصل الإنتروبي وإنما عبارة عن نظرية برهنها شانون في ورقته البحثية.

أتمنى أن تكون كمية المعلومات التي حصلتم عليها من هذه التدوينة أكبر من 0 بت!

تابع

Get every new post delivered to your Inbox.

Join 108 other followers