الرياضيات في التعلم العميق
Mathematics for deep learning
الجزء الثالث (Part three)
إعداد
المهندس حسن فنجان عداي
بسم إلله الرحمن الرحيم
بدأنا في الجزء الثاني من هذه السلسلة من المقالات بإستعراض العمليات الأساسية التي يمكن إجراءها على عناصر الجبر الخطي (الأعداد, المتجهات, المصفوفات ...إلخ), وهذه العمليات هي عملية التبديل (Transposition) وعملية جمع المصفوفات (Addition) وعملية ضرب المصفوفات (Multiplication) والتي تسمى حاصل الضرب النقطي (Dot product), وفي هذا الجزء سنقوم إنشاء ألله بإستعراض أهم الخواص التي تتعلق بعملية الضرب (Dot product) للمصفوفات والمتجهات (Properties of the dot product) , فلنبدأ على بركة إلله تعالى.
1 – تبسيط عملية ضرب المصفوفات (Simplification of the matrix product).
2 – عملية ضرب المصفوفات قابلة للتوزيع (Matrix multiplication is distributive).
3 – عملية ضرب المصفوفات عملية ترابطية (Matrix multiplication is associative).
خصائص عملية حاصل الضرب النقطي
(Properties of the dot product)
المقصود من هذا العنوان هو التحويلات التي من الممكن أن نجريها على المصفوقات المضروبة مع بعضها من خلال عملية ضرب المصفوفات (Dot product) بحيث تبقى النتيجة واحدة وذلك من أجل تبسيط حل بعض المعادلات. سوف نقوم بإستعراض بعض هذه الخصائص من خلال أمثلة عملية وكما يلي:
1 – تبسيط عملية ضرب المصفوفات (Simplification of the matrix product).
(A B)T = BTAT
نقوم أولاً بالإعلان عن المصفوفتين (A) و (B) وكما يلي:
نقوم بعدها بتطبيق عملية التبديل (Transposition) على حاصل ضرب المصفوفتان أي (A B)T وكما يلي:
نقوم الآن بتطبيق عملية التبديل (Transposition) على كل مصفوفة من المصفوفتين أي (AT BT) ثم نقوم بعملية الضرب (Dot product) بينهما ونرى النتيجة ونقارنها مع النتيجة التي حصلنا عليها من الحالة السابقة, وكما يلي:
نلاحظ بأننا حصلنا على نفس النتيجة.
2 – عملية ضرب المصفوفات قابلة للتوزيع (Matrix multiplication is distributive).
يعتبر قانون التوزيع (distributive law) في الرياضيات قانوناً متعلقاً بعمليات الضرب والجمع, ويتضح من هذا القانون أنَّ نتيجة جمع مجموعة من الأعداد ثم ضرب ناتج جمعهم بعدد آخر هي ذاتها نتيجة ضرب كل عدد منها على حدة بهذا العدد ثم جمع النواتج.
نستطيع تطبيق هذا القانون على عملية ضرب المصفوفات كما موضح في المعادلة التالية:
A(B + C) = AB + AC
المثال الأول:
نقوم بتطبيق قانون التوزيع أولاً بطريقة حسابية يدوية, حيث نقوم بإنشاء ثلاث مصفوفات, ثم نقوم بحساب ناتج الطرف الأيسر من المعادلة (B + C)A أي قبل تطبيق قانون التوزيع وكما موضح بالشكل التالي:
نقوم بعدها بحساب ناتج الطرف الأيمن من المعادلة ACAB + أي بعد تطبيق قانون التوزيع:
حيث نلاحظ بأنَّ النتيجة واحدة.
نقوم الآن بتنفيذ نفس العمليات ولكن بإستخدام الحاسوب وكما يلي:
نقوم بعدها بحساب AB + AC ومقارنة الناتج مع ماحصلنا علية من الحالة السابقة:
نلاحظ بأننا قد حصلنا على نفس النتيجة.
3 – عملية ضرب المصفوفات عملية ترابطية (Matrix multiplication is associative).
يقال لأي عملية رياضية بأنها ترابطية (Associative) إذا لم يؤثر ترتيب التنفيذ على النتيجة النهائية للعملية.
فلو فرضنا أنَّ لدينا ثلاث مصفوفات هي (A) و (B) و (C), ونريد أن نجري عليهما عملية ضرب المصفوفات حسب الصيغة التالية:
A(BC)
أي أننا يجب أن نقوم بعملية ضرب المصفوفتين (B) و (C) أولاً, ثم نقوم بضرب المصفوفة الناتجة مع المصفوفة (A).
إذا قمنا بتغيير ترتيب التنفيذ بحيث نقوم أولاً بعملية ضرب المصفوفتين (A) و (B), ثم نقوم بضرب المصفوفة الناتجة مع المصفوفة (C), أي حسب الصيغة التالية:
(AB)C
فإذا كانت النتيجة النهائية لاتتغير فمعنى ذلك بأنَّ عملية ضرب المصفوفات هي عملية ترابطية (Associative).
المثال الثاني:
نقوم الآن بتنفيذ هذا المثال لتطبيق ماقلناه وللتأكد من تطابق النتيجتين, حيث إننا سنقوم أولاً بالإعلان عن ثلاث مصفوفات:
نقوم بعدها بحساب الناتج حسب الصيغة: (BC)A:
ملاحظة: ذكرنا سابقاً بأننا نستطيع أن نعتبر المتجه (Vector) كمصفوفة ذات عمود واحد (وليس صف واحد), وبالنسبة للمصفوفة (C) فهي في الحقيقة متجه ذات ثلاثة صفوف وعمود واحد, ولكي تتم عملية الضرب يجب أن تكون المصفوفة (C) ذات صف واحد بثلاث أعمدة, لذا فقد إستخدمنا عملية التبديل (Transposition).
نقوم بعدها بحساب الناتج حسب الصيغة: (AB)C ونقارن النتيجة مع النتيجة التي حصلنا عليها من الحالة السابقة:
4 – عملية ضرب المصفوفات ليست تبادلية
(Matrix multiplication is not commutative).
المقصود بالعلاقة التبادلية أنه إذا كان هناك عنصران داخلان في عملية رياضية معينة فإنه يمكن تبادل موقعيهما أي أن يصبح كل واحد منهما مكان الآخر, وهذه العلاقة لايمكن تطبيقها في عملية ضرب المصفوفات حتى لو بقيت شروط ضرب المصفوفات متوفرة.
المثال الثالث:
نقوم الآن بتنفيذ هذا المثال لإثبات ماقلناه, نقوم أولاًّ بالإعلان عن مصفوفتان:
بعدها نقوم بعملية الضرب حسب الترتيب (AB) وكذلك حسب الترتيب (BA) ونقارن النتيجتان:
نلاحظ أن النتيجتين غير متساويتان.
وبذلك نكون قد إنتهينا من الجزء الثالث من هذه السلسلة وسوف نشرع قريباً بالجزء الرابع إنشاء ألله..فإنتظرونا.
ملخص ماجاء في الجزء الثالث
تطرقنا في هذا الجزء إلى الخصائص التي تتمتع بها عملية ضرب المصفوفات (Dot product), وقمنا بشرح وتوضيح كل خاصية وما هو المقصود منها في علم الرياضيات بشكل عام والجبر الخطي بشكل خاص, كذلك قمنا بتنفيذ أمثلة توضح بشكل أكثر دقة هذه الخصائص وكذلك للبرهنة على كل واحدة منها.
المهندس حسن فنجان عداي
تعليقات
إرسال تعليق