LA 101
M02 · L02
الوحدة التانية

عمليات الـ matrices

إنك تعرف الـ matrix (المصفوفة) إيه دي مجرد بداية. دلوقتي هنتعلّم نعمل بيها إيه — العمليات اللي بتخلّي الـ matrices محرك العلم الحديث.

01 / 13
LA 101
M02 · L02
الجمع

جمع الـ matrices

بتجمع العناصر اللي قصاد بعض. الاتنين لازم يكون ليهم نفس الأبعاد. والنتيجة بنفس الشكل. الطرح نفس الفكرة. بسيطة: عنصر بعنصر.

جمع الـ matrices
(A+B)_{ij} = a_{ij} + b_{ij}
02 / 13
LA 101
M02 · L02
التكبير

الضرب في scalar

بتضرب كل عنصر في الـ scalar (العدد القياسي). وده بيكبّر الـ matrix كلها بنفس النسبة — تخيّل إنك بتمطّ الجدول كله أو بتضغطه. وبتشتغل مع أي مقاس.

الضرب في scalar
(cA)_{ij} = c \cdot a_{ij}
03 / 13
LA 101
M02 · L02
عملية أساسية

ضرب matrix في vector

Ax هو linear combination (تركيب خطي) لأعمدة A بأوزان من x. ودي أهم عملية في الـ linear algebra — بتوصف أي linear transformation.

نظرة الأعمدة
A\mathbf{x} = x_1\mathbf{a}_1 + x_2\mathbf{a}_2 + \cdots + x_n\mathbf{a}_n
04 / 13
LA 101
M02 · L02
matrix × matrix

ضرب الـ matrices

العنصر (i,j) في AB هو الـ dot product (الضرب الداخلي) بين الصف i من A والعمود j من B. وعشان ده يمشي، A لازم تبقى m×k وB لازم تبقى k×n — الأبعاد الداخلية لازم تتطابق.

معادلة العنصر
(AB)_{ij} = \sum_{k=1}^{p} a_{ik}\, b_{kj}
05 / 13
LA 101
M02 · L02
خاصية مهمة

الترتيب بيفرق

على عكس الأرقام، ضرب الـ matrices مش commutative: AB ≠ BA في العموم. بس هو associative: (AB)C = A(BC). وdistributive: A(B+C) = AB + AC.

commutative؟
لأ — AB ≠ BA
associative؟
آه — (AB)C
06 / 13
LA 101
M02 · L02
عملية

الـ transpose

لما تبدّل الصفوف بالأعمدة بيطلعلك الـ transpose (المنقولة) AT. أهم خصائصه: (AB)T = BTAT (خد بالك من العكس!)، و(AT)T = A.

قاعدة الـ transpose في الضرب
(AB)^T = B^T A^T
07 / 13
LA 101
M02 · L02
رقم بيلخّص

الـ trace

الـ trace (الأثر) بتاع square matrix هو مجموع عناصر القطر الرئيسي. بسيط بس قوي: trace(AB) = trace(BA) حتى لو AB ≠ BA. وبيساوي مجموع الـ eigenvalues.

تعريف الـ trace
\operatorname{tr}(A) = \sum_{i=1}^{n} a_{ii}
08 / 13
LA 101
M02 · L02
شكل الضرب

صف × عمود

العنصر (i,j) = الـ dot product بين الصف i من A والعمود j من B. الخانات المنوّرة بتوريك الصف الأول من A مع العمود الأول من B بيتجمّعوا إزاي:

[
1
2
3
4
]
×
[
5
6
7
8
]
=
[
19
22
43
50
]
09 / 13
LA 101
M02 · L02
التطبيقات

ليه ده مهم

  • الـ neural networks: كل layer هي Ax + b
  • الجرافيكس: الدوران في 3D = ضرب matrices
  • الإحصاء: الـ covariance = XTX
  • الـ signal processing: الـ filters على شكل ضرب matrices
  • الفيزياء: تطوّر الحالة Ax = x’
10 / 13
LA 101
M02 · L02
الحساب

تكلفة الضرب

ممر طويل في data center بين صفين دواليب servers عالية فيها لمبات حالة صغيرة، على أرضية بلاط.
عمليات الضرب والجمع اللي عددها O(n³) هي السبب إن الـ models الكبيرة بتشتغل على دواليب زي دي: الـ GPUs بتنفّذ آلاف منها في نفس الوقت.

ضرب matrix مقاسها m×k في واحدة مقاسها k×n محتاج O(mkn) عملية — تقريبًا m×k×n عمليات ضرب وجمع. ولو مربعة n×n: يبقى O(n3). الـ matrices الكبيرة تقيلة!

مربعة n×n
O(n³)
الـ GPUs بتساعد
بالتوازي
11 / 13
LA 101
اختبار سريع

شوف إيه اللي ثبت

أربع أسئلة من الدرس ده. جاوب عشان تشوف السبب — الشرح بيظهر سواء جاوبت صح أو غلط. ونتيجتك مش بتتحفظ.

السؤال 1 من 0
النتيجة 0/0

12 / 13
LA 101
M02 · L02
الخلاصة

اتعلّمت إيه

جمع الـ matrices عنصر بعنصر. الضرب في scalar بيكبّر كل العناصر. ضرب matrix في vector أو في matrix كله عمليات dot product. والضرب مش commutative بس هو associative.

الدرس الجاي
13 / 13