هانیه مهدوی
هانیه مهدوی
خواندن ۸ دقیقه·۳ سال پیش

مفاهیم هندسی و پایه‌ای جبر خطی - جلسه چهارم - مفهوم ضرب ماتریس‌ها

منبع اصلی این پست، پلی‌لیست Essence of Linear Algebra از کانال یوتیوب 3blue1brown می‌باشد. لطفا برای حفظ حقوق منتشر کننده اصلی، ویدیوهارو از منبع اصلی دنبال کنید. همچنین، در عنوان تصاویری که از ویدیو اصلی آورده شده، دقیقه و ثانیه متناظر با ویدیو ذکر شده است.

سعی کردم هرچیزی که از ویدیوها فهمیدم رو به صورت متن در بیارم و در این پلت‌فورم با بقیه به اشتراک بذارم. کل ویدیوها 16 تاست که سعی می‌کنم هفته‌ای یک الی دو جلسه رو منتشر کنم. تا جایی که تونستم سعی کردم خوب و کامل بنویسم، اما اگر جایی ایرادی داشت، حتما تو کامنت‌ها بهم بگید تا درستش کنم.

مروری بر جلسات گذشته

همونطور که در جلسات گذشته گفتیم، تبدیل یا همون transformation مثل توابع عمل می‌کنه. یک بردار رو در ورودی می‌گیره و یک بردار رو خروجی تحویل میده. حالا اگه این تبدیل به صورت خطی باشه، خطوط صفحه باید باهم موازی باشن و فاصله‌شون هم یک‌نواخت باشه. به عبارتی دیگه، تمامی خطوط در دستگاه مختصات اصلی، بعد از تبدیل خطی روشون همچنان به صورت خط باقی می‌مونن و تبدیل به منحنی نمی‌شن. همچنین، مبدا هم باید ثابت بمونه و تغییر نکنه.

در مورد بردارهای پایه صحبت کردیم و گفتیم در دستگاه مختصات با دو محور افقی و عمودی، بردارهای پایه‌ای که داریم با نماد i و j نشون میدیم و همه بردارهارو میشه بر اساس همین بردارهای پایه نوشت.

1:01
1:01

همچنین گفتیم که وقتی یک تبدیل خطی انجام می‌دیم، بردار اولیه رو تو اون فضای جدید می‎‌تونیم بر اساس بردارهای پایه فضای جدید بنویسیم.

1:18
1:18

به عبارتی دیگه، اگه بدونیم بردارهای i و j تو فضای جدید چه مختصاتی می‌گیرن، دیگه فقط کافیه مختصات بردار اولیه رو تو اون بردارهای پایه جدید ضرب کنیم و مختصات بردار اولیه رو تو فضای جدید به دست بیاریم.

1:31
1:31

بعلاوه، می‌تونیم ضرب هر ماتریس 2 در 2 در هر برداری رو به صورت انجام یک ترکیب خطی روی اون ماتریس در نظر بگیریم و تعبیر کنیم.

1:45
1:45

ضرب ماتریس‌ها

گاهی اوقات ممکنه دو تبدیل خطی رو پشت سر هم انجام بدیم. یعنی اول با تبدیل خطی اول فضای اصلی رو یک بار تغییر بدیم، بعد دوباره روی اون فضای جدید مجددا یک تبدیل خطی دیگه بزنیم.

مثلا اول بیایم دستگاه مختصات خطی رو rotate کنیم و بعد روش از تبدیل خطی shear استفاده کنیم (این تبدیل خطی رو در جلسه گذشته بررسی کردیم). الان تصویر زیر داره چرخش صفحه مختصات اولیه رو به اندازه 90 درجه در خلاف جهت عقربه‌های ساعت نشون میده.

2:13
2:13

حالا اگه روی این دستگاه مختصات تبدیل خطی shear رو اعمال کنیم نتیجه نهایی به صورت زیر میشه:

2:19
2:19

این دو تبدیل خطی پشت سر هم، خودش می‌تونه یک تبدیل خطی متمایز باشه. به این حرکتی که بیایم دو تا تبدیل خطی رو پشت سر هم اعمال کنیم، ترکیب تبدیل‌های خطی میگن. حالا نتیجه نهایی که از ترکیب دو تا تبدیل خطی به دست میاد، خودش مستقلا می‌تونه دارای یک ماتریس تبدیل باشه که مشخص کننده بردارهای پایه‌ش باشن.

الان تو همین مثال، ماتریسی که داره این تبدیل خطی، که خودش ترکیبی از روتیشن و shear هست رو نشون میده به صورت زیر تعریف میشه:

2:50
2:50

این تبدیل خطی می‌تونه خودش به صورت مستقل هم انجام بشه. یعنی، به جای اینکه اول روتیشن بزنیم بعد shear رو اعمال کنیم، بیایم به صورت مستقیم همین تبدیل خطی رو، روی بردارهای پایه i و j اعمال کنیم.

3:01
3:01

اگه بخوایم چیزایی رو که تا اینجا گفتیم با زبان ریاضی بیان کنیم به تعریف زیر می‌رسیم. این تعریف میگه که بیا مختصات هر بردار دلخواهی رو تو دستگاه مختصات اولیه بگیر، بعد قرار بود روتیشن بزنیم، پس ضربش کن تو ماتریسی که داره تبدیل خطی rotation رو نشون میده. بعد این کار قرار بود shear داشته باشیم، پس نتیجه رو ضرب کن تو ماتریسی که داره تبدیل خطی shear رو مشخص میکنه. کل این کارها می‌تونه خلاصه بشه تو اینکه مختصات بردار دلخواه رو ضرب کنیم تو ماتریسی که از ترکیب دو تبدیل خطی rotation و shear به دست اومده.

3:33
3:33

محاسباتی که بالا آوردیم، عینا معادل این هست که انگار بگیریم دو ماتریس رو که نشون دهنده تبدیل‌های خطی مختلف هستن در هم ضرب کنیم و به یک تبدیل خطی نهایی برسیم که مستقل از هر کدوم از اون‌هاست.

3:49
3:49

الان اینارو گفتیم که چی بشه اصلا؟ هدف این بود که اگه از این به بعد ضرب دو ماتریس رو پشت سر هم دیدیم، این به ذهنمون بیاد که انگار داریم دو تا تبدیل خطی رو پشت سر هم اعمال می‌کنیم. در واقع، شهود ضرب دو ماتریس داره همچین چیزی رو نشون میده بهمون و الا، فرمول‌های ضرب ماتریس رو بلدیم که به چه صورت هست.

حالا، نکته‌ای که وجود داره اینکه، این ماتریس‌هارو باید از سمت راست‌ترین در نظر بگیریم. یعنی الان تو این مثال دو تا ماتریس دارن در هم ضرب میشن. باید اینجوری به قضیه نگاه کنیم که، ماتریس اول اونیه که سمت راست هست و داره تبدیل خطی rotation رو، روی دستگاه مختصات اصلی اعمال می‌کنه، بعد در نتیجه اون، تبدیل خطی shear اعمال میشه که جواب نهایی رو بهمون میده.

4:16
4:16

میشه این رو به کمک مفهوم توابع هم بیانش کرد. ما همیشه در محاسبه توابع تو در تو، از داخلی‌ترین تابع برای انجام محاسبات شروع می‌کردیم و همینطور میومدیم به سمت بیرون.

4:25
4:25

حالا مثال دیگه‌ای رو بررسی کنیم. فرض کنید روی دستگاه مختصات اولیه، تبدیل خطی زیر رو با نام M1 اعمال کردیم و دستگاه مختصات جدید به این صورت تغییر کرده.

4:39
4:39

حالا تبدیل خطی دوم رو هم با نام M2 داریم و اون رو هم روی دستگاه مختصات اولیه اعمال می‌کنیم. دقت کنید تصویر زیر تیجه اعمال تبدیل خطی M2 روی دستگاه مختصات اولیه‌ست، نه روی حالت قبلی که بالاتر گفتیم. نتیجه به صورت زیر میشه.

4:49
4:49

حالا اگه اول تبدیل خطی M1 رو روی دستگاه مختصات اولیه بزنیم، بعد تبدیل خطی M2 رو، روی نتیجه اون اعمال کنیم به تبدیل خطی جدیدی می‌رسیم که می‌خوایم بردارهای پایه رو براش حساب کنیم.

4:55
4:55

حالا می‌خوایم همین مثال رو با استفاده از ریاضیات ببریم جلو و به جواب برسیم. اول باید ببینیم که بردار پایه i معادل با چه چیزی میشه؟ اول، تبدیل خطی M1 اعمال میشه، در این حالت می‌دونیم که بردار i از حالت اولیه خودش که (1,0) هست به مختصات (1,1) میره.

5:11
5:11

حالا اگه بخوایم بدونیم بعد از اعمال تبدیل خطی M2 چه اتفاقی برای i میفته، باید بردار (1,1) رو در ماتریس M2 ضرب کنیم. برداری که زیر بعنوان جواب به دست میاد، بردار پایه فضایی هست که بعد از این دو تبدیل خطی برای i به‌دست میاد.

5:30
5:30

حالا به همین ترتیب باید ببینیم بردار پایه j بعد از اعمال این دو تبدیل خطی به چه مختصاتی مپ میشه. مختصات اولیه بردار پایه j برابر با (0,1) هست. بعد از تبدیل M1 این مختصات به (0 ,2-) تغییر می‌کنه.

5:42
5:42

حالا مثل بردار i، اگه بخوایم بدونیم بعد از اعمال تبدیل خطی M2 چه اتفاقی برای j میفته، باید بردار (0 ,2-) رو در ماتریس M2 ضرب کنیم. برداری که زیر بعنوان جواب به دست میاد، بردار پایه فضایی هست که بعد از این دو تبدیل خطی برای j به‌دست میاد.

5:52
5:52

حالا با این محاسبات فهمیدیم که بردار i و j بعد از تبدیل‌های M1 و M2 به کجا مپ میشن.

5:55
5:55

اگه بخوایم در حالت کلی این مثالی رو که دیدیم بیان کنیم به این صورت میشه. اول باید ببینیم بردار پایه i بعد از اعمال دو تبدیل M1 و M2 کجا میفته. برای اینکار به صورت زیر عمل می‌کنیم. شهود عملیات زیر به این صورت هست که میگه اول بردار i رو با تبدیل خطی M1 بردیم به یک فضای جدید و مختصات جدید بردار i شده (e,g). بعد با ضرب ماتریس M2 در مختصات جدید i می‌تونیم بفهمیم که بردار پایه فضای جدید، بعد از اعمال دو تبدیل خطی M1 و M2 پشت سر هم چی میشه.

6:37
6:37

بعد باید همین محاسبات رو برای بردار j هم حساب کنیم. شهودی هم که روابط زیر داره مشابه بالاست منتها برای بردار j.

6:59
6:59

در نهایت به جواب زیر خواهیم رسید.

7:05
7:05

حفظ کردن فرمول ضرب ماتریس‌ها کاری نداره و احتمالا هممون می‌دونیم که به چه صورت هست. چیزی که مهمه، اینکه بدونیم شهود ضرب ماتریس‌ها چیه و عملا داره چیو بهمون نشون میده که خب در موردش توضیح دادیم. ضرب دو ماتریس در هم داره درواقع اعمال دو تبدیل خطی پشت سر هم رو بهمون نشون میده.

7:16
7:16

حالا با این همه تعابیر، به نظرتون ترتیب اعمال تبدیل‌های خطی مهمه؟ به عبارتی دیگه، ترتیب در ضرب ماتریس‌ها اهمیت داره؟ احتمالا جواب رو می‌دونید ولی می‌خوایم به صورت شهودی دلیلش رو بررسی کنیم.

7:34
7:34

با یه مثال جواب این سوال رو بررسی می‌کنیم. فرض کنید دو تبدیل خطی داریم. یکی تبدیل shear و دیگری تبدیل rotation. اگه اول shear رو اعمال کنیم، بعد rotation رو بردارهای پایه i و j در نهایت به صورت زیر در میان.

7:51
7:51

حالا اگه اول rotation بزنیم بعد بریم سراغ shear، نتیجه نهایی به صورت زیر میشه.

7:57
7:57

همونطور که دیدیم، ترتیب مهمه و تو نتیجه نهایی اثر میذاره. تازه بدون استفاده از اعداد و ارقام تونستیم این قضیه رو نشون بدیم!

8:21
8:21

حالا رابطه زیر چطور؟ آیا برقرار هست؟ یعنی اگه بیایم نتیجه ضرب ماتریس A در ماتریس B رو حساب کنیم، بعد در ماتریس A ضرب کنیم، فرقی نداشته باشه، با اینکه بیایم ماتریس A رو در نتیجه ضرب دو ماتریس B و C ضرب کنیم. به عبارتی دیگه، مهم نباشه پرانتزهارو کجا می‌ذاریم.

8:31
8:31

اگه بخوایم این رو به صورت عددی محاسبه کنیم و نشون بدیم، خیلی کار سختیه و هیچ درکی هم احتمالا ازش نداشته باشیم. ولی اگه بیایم با استفاده از مفاهیمی که تو این جلسه بیان کردیم در نظر بگیریم، احتمالا با شهود خیلی راحت‌تری بتونیم برقرار بودن یا نبودن این رابطه رو بررسی کنیم.

رابطه A(BC) داره چیو نشون میده؟ میگه بیا از سمت راست شروع کن اول تبدیل C رو، روی دستگاه مختصات اولیه بزن. بعد برو سراغ تبدیل B و روی نتیجه قبلی اعمالش کن و در نهایت برو سراغ A و روی نتیجه قبلی تبدیل A رو اعمال کن.

رابطه (C)(AB) چیو نشون میده؟ میگه اول تبدیل C رو، روی مختصات اولیه بزن. بعد تبدیل B رو، روی نتیجه اون و در نهایت تبدیل A رو، روی نتیجه قبلیش بزن. عملا با رابطه بالا یکی میشه و هر دو رابطه با هم معادل هستن.

در جلسه آینده سعی می‌کنیم این مفاهیم رو به فضای سه بعدی تعمیم بدیم.

جمع‌بندی مطالب گفته شده

  • ترکیب تبدیل‌ها
  • شهود ضرب ماتریس‌ها

اگر جایی ایراد یا مشکلی بود، حتما بهم بگید تا تصحیحش کنم.

ویدیو این جلسه

محتوای جلسه قبلی (جلسه سوم)

محتوای جلسه بعدی (جلسه پنجم)

matrixcomposition
من هانیه‌ام. مدتیه شروع کردم به تولید محتوا در قالب متن و به زبان فارسی، از روی دوره‌هایی که می‌گذرونم. اگر دوست داشتین برام قهوه بخرید: https://coffeete.ir/honio
شاید از این پست‌ها خوشتان بیاید