در حال بارگزاری

آموزش ضرب ماتریس ها در پایتون (Python)

شما اینجا هستید:
آموزش ضرب ماتریس ها در پایتون (Python)

آموزش ضرب ماتریس ها در پایتون (Python)

در این آموزش، به طور کامل ضرب ماتریس ها (از ضرب ماتریسی گرفته [با دستور dot در پکیج numpy] تا ضرب درایه درایه ماتریس ها) رو در پایتون (python) آموزش میدیم!

پیش نیاز

خود پایتون (python) به صورت پیش فرض، چیزی نداره که بشه باهاش ماتریس درست کرد (به اووون معنی که ما از ماتریس میدونیم)! امّا میشه از پکیج های پایتون (python) برای انجام عملیات ماتریسی استفاده کرد! مثلاً میشه از پکیج NumPy استفاده کرد! (هرچند پکیج‌های دیگه‌ای هم وجود داره؛ اما اگر از من بپرسید؛ میگم که بهتره آموزش مربوط به پکیج numpy رو یاد بگیرید! چون بی‌نهایت فراگیرتر و پرکاردبردتر است!)

قطعا می‌دونید که مثل هر پکیج دیگه‌ای اول باید پکیج numpy نصب باشه! برای آموزش نصب این پکیج، مراجعه کنید به آموزش نصب پکیج های مختلف در پایتون (python) که به طور کامل و با روش‌های مختلف نحوه نصب پکیج‌های مختلف رو آموزش میدیم!

ضرب ماتریسی دو ماتریس

حتماً بخش پیش نیاز رو خوندین دیگه! نه؟! اگر نخوندین و همینجوری سریع اومدین اینجا، اشتباه کردین! پس لطفا اول یکم برین بالاتر و اون بخش پیش نیاز رو بخونین! بعد بیاین اینجا…!

فرض کنید دو ماتریس تعریف کردیم به نام‌های A و B و به صورت زیر:!

import numpy as np
A=np.array([
    [1,2,3],
    [4,5,6]
])
B=np.array([
    [7,8],
    [9,10],
    [11,12]
])

خب در خط اول که پکیج numpy رو با نام مستعار np وارد برنامه کردیم! و در خطوط بعدی هم ماتریس A و B رو تعریف کردیم! اگر نمی‌فهمید چی دارم میگم، یعنی پیش‌نیاز این مطلب رو طِی نکردید! پس حتماً قبلش باید مراجعه کنید به آموزش تعریف ماتریس در پایتون ! چون تا اینجا رو ما در آموزش‌های قبلی گفتیم و تا الان اصلاً کار جدیدی نکردیم!!!

حالا فرض کنید قراره ضرب ماتریسی این دو ماتریس رو محاسبه کنیم! (قطعاً میدونید که ضرب ماتریسی با ضرب معمولی فرق میکنه!)

برای اینکار فقط کافیه بنویسیم!:

print( A.dot(B) )

خروجی:

[[ 58 64]
[139 154]]

تذکر [یادآوری از ریاضیات]

هرچند خودتون خیلی بهتر از من میدونید، اما برای کامل شدن آموزش مجبورم این رو هم بگم!

در ضرب ماتریس ها میدونید که باید فی نقسه دو ماتریس رو بشه در هم ضرب کرد! یعنی اگر ماتریس اوّلمووون a در m باشه، ماتریس دوم باید m در b باشه تا بشه این دو ماتریس رو در هم ضرب کرد! حالا اون a و b مهم نیست چی باشه! ولی قطعاً m ها باید باهم برابر باشن! وگرنه قطعاً خطا دریافت میکنید! چون در اون صورت نمیشه دو ماتریس رو در هم ضرب ماتریسی کرد!

ضرب درایه درایه دو ماتریس

حالا اگر بخوایم دو ماتریس رو درایه درایه در هم ضرب کنیم، باید چیکار کنیم؟! یعنی نخوایم با فرمت معمولی ضرب ماتریسی، ضرب انجام بدیم و فقط بیایم ماتریس ها رو درایه درایه در هم ضرب کنیم!

نکته مهم اول اینه که باید دو ماتریس هم بُعد باشن! یعنی اگر یکی 2 در 3 است، اون یکی دیگه هم حتماً باید همین بُعد (یعنی 2 در 3) رو داشته باشه!

فرض کنید ماتریس D و E رو به صورت زیر تعریف کردیم!

D=np.array([
    [1,2],
    [3,4]
])
E=np.array([
    [2,3],
    [4,5]
])

برای محاسبه ضرب درایه درایه این دو ماتریس در پکیج numpy باید بگیم!

print( D*E )

خروجی:

[[ 2 6]
[12 20]]

این آموزش هم به پایان رسید! اگر سوالی، نکته‌ای، پیشنهادی، نقدی داشتین، خوشحال میشیم در بخش نظرات با ما در میون بذارید…!

مطالب پیشنهادی:

آموزش محاسبه دترمینان یک ماتریس در پایتون !

محاسبه جمع و تفریق و ترانهاده ماتریس در پایتون !

آموزش محاسبه مقادیر ویژه و بردارهای ویژه یک ماتریس

آموزش تابع ones و zeros در numpy پایتون !

با این دوتا دستور ones و zeros می‌تونید ماتریس های مختلفی، با ابعاد مختلفی بسازید که درایه‌هاشون صفر یا یک است!

آموزش محاسبه معکوس یک ماتریس در پایتون !

آموزش کامل و رایگان زبان برنامه نویسی پایتون !

مطالب مرتبط

آموزش تابع ndim در numpy پایتون (python) این تابع (تابع ndim) در numpy پایتون میاد و  تعداد ابعاد...

آموزش jupyter notebook (ژوپیتر نوت بوک) - ایجاد یک فایل جدید در این آموزش، از سری آموزش‌های Jupyter...

جزئیات نوشته
تعداد دیدگاه 0
تعداد بازدید 14.6K
تاریخ انتشار 29/11/2019
تاریخ بروزرسانی 29/11/2019
نویسنده گروه آموزشی کولاک
برای ارسال دیدگاه ابتداواردشوید