(function (s, e, n, d, er) { s['Sender'] = er; s[er] = s[er] || function () { (s[er].q = s[er].q || []).push(arguments) }, s[er].l = 1 * new Date(); var a = e.createElement(n), m = e.getElementsByTagName(n)[0]; a.async = 1; a.src = d; m.parentNode.insertBefore(a, m) })(window, document, 'script', 'https://cdn.sender.net/accounts_resources/universal.js', 'sender'); sender('986212f6399684')
ریاضیات در یادگیری عمیق

  این مقاله را میتوانید در مدت زمان 3 دقیقه مطالعه کنید   منتشر شده در تاریخ: آبان ۲۰ام, ۱۳۹۹   آخرین بروزرسانی: آبان ۲۰ام, ۱۳۹۹


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

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

 

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

 

چرا ریاضیات در یادگیری عمیق مهم است؟

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

کمیت

در لغت‌نامه دهخدا «کمیت» را چندی و در مقابل کیفیت یا چونی تعریف کرده‌اند. کمیت در واقع مقدار چیزی است که سنجیده، پیموده یا شمرده شود. به عبارت دیگر، مقدار، اندازه و تعداد چیزی را کمیت آن گویند. کمیت و مقدار دو لفظ مترادف هستند. کمیت‌ها به دو نوع نرده‌ای (اسکالر یا عددی) و برداری تقسیم می‌شوند.

ریاضیات و دیپ لرنینگ

کمیت نرده‌ای

کمیت نرده‌ای یا اسکالر، با یک عدد نمایش داده می‌شود. برای مثال، فاصله دو نقطه (پنج متر) یک کمیت نرده‌ای است. کمیت‌های نرده‌ای برخلاف کمیت‌های برداری فاقد جهت هستند. در واقع کمیت نرده‌ای، یک تانسور مرتبه صفر است. از دیگر کمیت‌های نرده‌ای می‌توان به جرم، انرژی، دما و چگالی اشاره کرد. عبارت x ∈ ℝ حاکی از آن است که x یک کمیت اسکالر متعلق به مجموعه اعداد حقیقی ℝ است.
مجموعه داده‌های گوناگونی در بحث یادگیری عمیق مورد استفاده قرار می‌گیرند. ℕ یک مجموعه داده از اعداد صحیح مثبت (…،۱،۲،۳) و ℤ مجموعه‌ای از اعداد صحیح مثبت، منفی و صفر است. ℚ مجموعه‌ای از اعداد گویا است که به صورت کسر دو عدد صحیح نشان داده می‌شود. از جمله اسکالرهای موجود در پایتون می‌توان به نوع صحیح (int)، شناور (float)، بایت (byte) و یونی‌کد (Unicode) اشاره کرد. در کتابخانه NumPy پایتون، ۲۴ نوع داده پایه برای تعریف انواع اسکالرها موجود است.

 

کمیت برداری

یک کمیت که توسط چند اسکالر (برای مثال اندازه و جهت) تعریف شود را بردار گویند. بردارها در واقع آرایه‌های مرتب شده‌ای از اعداد هستند. یک بردار، نمونه‌ای از تانسور مرتبه اول است. بردارها خود بخشی از چیزی هستند که با عنوان فضای برداری شناخته می‌شود. یک فضای برداری را می‌توان به عنوان مجموعه‌ای از همه بردارهای محتمل دارای طول مشخص (یا بُعد) در نظر گرفت. یک فضای برداری سه‌بُعدی مقدار‌گذاری شده با اعداد حقیقی، به صورت ℝ^3 نشان داده می‌شود و اغلب به عنوان نمایش جهان واقعی از فضای سه‌بعدی به‌صورت ریاضی به‌کار می‌رود.
برای تبیین مولفه‌های لازم جهت بیان یک بردار، iاُمین مولفه بردار به صورت [x[i نوشته می‌شود.
در یادگیری عمیق، معمولا از بردارها برای نمایش بردار ویژگی‌ها که با مولفه‌های اصلی خود میزان مرتبط بودن یک ویژگی مشخص را نمایش می‌دهند، مورد استفاده قرار می‌گیرند. بردار ویژگی می‌تواند در بر گیرنده اهمیت شدت یک مجموعه از پیکسل‌ها در یک فضای دو‌بُعدی، تصویر یا تاریخچه مقادیر قیمت‌ها در ابزارهای مالی باشد.

 

ماتریس‌ها

ماتریس‌ها آرایه‌هایی مستطیل شکل از اعداد هستند و در واقع تانسورهای مرتبه دوم محسوب می‌شوند. اگر m و n را اعداد صحیح مثبت در نظر بگیریم، که در آن m, n ∈ ℕ باشند، در نتیجه ماتریس m×n شامل اعداد m*n با m سطر و n ستون است.

در زبان برنامه‌نویسی پایتون، از کتابخانه Numpy استفاده می‌شود که امکان ساخت آرایه‌های nبُعدی که اساسا ماتریس‌ها هستند را فراهم می‌کند. با استفاده از متُد لیست و پاس دادن در لیست‌ها، می‌توان یک ماتریس را تعریف کرد.

 

ریاضیات و دیپ لرنینگ

تانسورها

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

 

جمع‌بندی

اگرچه زبان‌های برنامه‌نویسی (چه محاسباتی و چه اسکریپت‌نویسی) بخش مهمی از مباحث هوش مصنوعی را تشکیل می‌دهند و برای پیاده‌سازی الگوریتم‌ها و مفاهیم این علم مورد استفاده قرار می‌گیرند، اما یادگیری «ریاضیات و جبرخطی» از این‌رو که مبنای ساخت این دانش و دیگر علوم مرتبط با آن بوده بسیار حائز اهمیت و اجتناب‌ناپذیر است. در پس کلیه الگوریتم‌های هوش مصنوعی و یادگیری عمیق، ریاضیات و جبر خطی نهفته است. بدون داشتن تسلط کافی بر مفاهیم جبر خطی، فرد قطعا در یادگیری هوش مصنوعی دچار اشکال خواهد شد.

آیا این مطلب برای شما مفید بود؟

امتیازشو ثبت کنید

میانگین / 5. تعداد رای

اولین نفر شما امتیاز دهید

دوره تخصصی یادگیری ماشین

در یک دوره آموزشی متخصص یادگیری ماشین شوید.

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

شاید به این مطالب نیز علاقه مند باشید.

دیپ لرنینگ و یادگیری عمیق و شبکه عصبی و دیپ لرنینگ در پزشکی و آینده علم پزشکی

یادگیری عمیق چگونه به پزشکی کمک می کند؟

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

دیپ لرنینگ در 2020 و بهترین نرم افزارهای دیپ لرنینگ و زبان های برنامه نویسی برای دیپ لرنینگ

نکات مهمی که باید در سال ٢٠٢٠ درباره دیپ لرنینگ بدانید +( زبان های برنامه نویسی برای دیپ لرنینگ)

در گذشته، کامپیوترها به سادگی وظایفی را با استفاده از مجموعه دستورالعمل هایی كه به آن ها داده شده بود، انجام می دادند. اکنون با پیشرفت های چشم گیر در…

بینایی رایانه ای و یادگیری عمیق در بینایی رایانه ای

٨ کاربرد جالب یادگیری عمیق در بینایی رایانه ای

رشته بینایی رایانه ای در حال تغییر از روش های آماری به سمت شبکه عصبی یادگیری عمیق است. هنوز هم مشکلات چالش برانگیزی در دید رایانه ای وجود دارد. با…

0 0 رای
امتیازدهی به مقاله
دنبال کردن
با خبر کردن از
guest
0 دیدگاه
بازخورد داخلی
دیدن همه نظرات

تاییدیه ها

تهران - ستارخان، خیابان کوثر دوم، پلاک ۱۰، واحد ۳

آیا این مطلب برای شما مفید بود؟

امتیازشو ثبت کنید

میانگین / 5. تعداد رای

اولین نفر شما امتیاز دهید

دوره تخصصی یادگیری ماشین

در یک دوره آموزشی متخصص یادگیری ماشین شوید.

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