MatlabTips
891 subscribers
462 photos
72 videos
54 files
304 links
آموزش MATLAB با "استفاده از ویدئو و متن" در سطوح مبتدی تا پیشرفته
پاسخ به سوالات تخصصی:
@roholazandie
Download Telegram
This media is not supported in your browser
VIEW IN TELEGRAM
۵۰ آونگ دو تایی:‌مثال کلاسیک از آشوب. هر کدام از آونگ ها فقط یک پنجاه میلیونیم با هم در شرایط اولیه تفاوت دارند. ابتدا کاملا روی هم قرار دارند اما بعد از مدتی سرنوشت های بسیار متفاوتی پیدا می کنند!!
This media is not supported in your browser
VIEW IN TELEGRAM
مدل سازی اثر فاصله گیری اجتماعی(social distancing ) برای جلوگیری از انتشار ویروس کرونا با استفاده از متلب در سیمولینگ
بیشتر:

https://blogs.mathworks.com/simulink/2020/03/23/covid-19-simulating-exponential-spread-in-simulink/?s_eid=psm_bl&source=15308
کامل کردن چهره با استفاده از شبکه های عمیق. در این وظیفه یک تصویر ناقص مانند ستون سمت چپ به شبکه داده می شود و شبکه آن را کامل می کند. ستون دوم توسط شبکه کامل شده است. ستون سوم تصویر واقعی ست
GT: Ground Truth چهره اصلی

⭐️مقاله:
https://arxiv.org/abs/2003.13903
🔵پایتورچ و تنسرفلو: دو فلسفه متفاوت در مهندسی نرم افزار🔵

بر طبق آخرین آمار کنفرانس های یادگیری ماشین پایتورچ محبوب ترین چارچوب یادگیری عمیق است و بر اساس بنچ مارک های مستقل سرعت آن بیشتر از تنسرفلو می دانند. پایتورچ تا سه سال پیش حتی وجود نداشت! اما ناگهان ظهور پیدا کرد و به طرز شگفت انگیزی رقیب بلامنازع خود یعنی تنسرفلو را از میدان به در کرد!‌ تنسرفلویی که توسط بزرگترین غول نرم افزاری جهان یعنی گوگل سه سال حتی قبل از تولد پایتورچ منتشر شد و برای نسل جدید سخت افزارهای شرکت گوگل یعنی TPUها بهینه شد. کنفرانس برگزار شد. کتاب برای آن نوشته شد و خلاصه تمام تبلیغاتی که مثلا برای یک برند لوکس بنظرتان برسد برایش انجام دادند. اما چه چیزی باعث شد از پایتورچی که حتی اوایل مشخص نبود چه شرکتی پشت آن باشد عقب افتاد؟! دلایل زیادی می توان ذکر کرد اما شاید مهمترین آن ها موارد زیر باشد:

تنسرفلو برای مدت طولانی یکه تاز بود هرچند چهارچوب های دیگری مثل caffe هم وجود داشتند اما ساپورت تنسرفلو برای اجرا در پایتون آن را یکتا میکرد. تنسرفلو اما مسیری را در توسعه نرم افزاری خود پیش گرفت که بسیاری از کاربران آن را نا امید میکرد. یک ضرب ماتریسی ساده در تنسرفلو نیاز به فراخوانی توابعی داشت که «مساله» ی کاربر دیتاساینتیست نبود. تعریف گراف و بعد اجرای آن در سشن ها و غیره. این عدم شناخت از زمینه کاری کاربران اولین مشکل تنسرفلو بود. چرا که توسعه یادگیری ماشین بر اساس تنسرفلو را بسیار کند می کرد.

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

تغییرات در مدیریت نسخه بندی تنسرفلو هم به همان اندازه بی نظم بود. شما در نسخه های قبل از ۲ میتوانستید یک تابع را در چندین جای مختلف پیدا کنید. برخی از این بخش ها deprecated شده بودند اما سنگینی محیط های legacy برای استفاده از آن ها وجود آن ها را ضروری میکرد. ساختار بی نظمی که خود توسعه دهندگان تنسرفلو به آن اشاره میکنند و اساس طراحی مجدد APIهای سطح بالا به تنسرفلو ۲ شد

وضعیت دشوار استفاده از tensorflow منجر به ساخت کتابخانه هایی شد که این پیچیدگی را از کاربر نهایی مخفی میکنند که معروف ترین آن ها keras بود. با انتقال به tensorflow2 قرار شد که که این دو API متحد شوند اما در عمل استفاده از کراس بدون ارجاع به backend غیر قابل استفاده است این کار منجر به بهم ریختن لایه های انتزاع در مهندسی نرم افزار می شود (levels of abstraction) و کد را غیر قابل فهم و بعضا دیباگ کردن آن را حتی دشوار تر می کند. از طرفی این اتحاد خیالی بین این دو هم در عمل رخ نداد.

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

ادامه
Media is too big
VIEW IN TELEGRAM
استفان ولفرام فیزیکدان و دانشمند علوم کامپیوتر در مورد مفهوم «پیچیدگی» و ارتباط آن با «واقعیت» بحث بسیار جالبی میکند.

ولفرام نشان داده است با جستجو در فضای «برنامه های ممکن» (possible programs in computational world) برنامه هایی یافت می شوند که ساده هستند ولی پیچیدگی می آفرینند!!

ولفرام از این ترفند در یافتن الگوریتم های بهینه در نرم افزار تولیدی شرکتش یعنی متمتیکا استفاده کرده و اعتقاد دارد طبیعت به روش های مختلفی راه حل ها را می یابد و بر خلاف دیدگاه سنتی که ما فکر میکنیم برای ساختن چیزی پیچیده نیاز به برنامه ای پیچیده است (برهان نظم) طبیعت این قاعده را نقض می کند! اما علم این واقعیت را بسیار دیر کشف کرد!

ویدیو با زیرنویس انگلیسی

برای درک جزییات بیشتر این پست من را روی ویرگول میتوانید بخوانید
همانطور که قول داده بودم چت باتی که رویش کار کردم را اوپن سورس کردم. تمام کدها + وزن های مورد نیاز بدون آموزش را می توانید از این ریپو تهیه کنید.

در پاورپوینت زیر خلاصه ای از کار را برای مخاطب عام توضیح داده ام. از کد استفاده کنید و ارجاع یادتان نرود!
(بزودی یک مطلب مفصل تر انگلیسی از نحوه کار چت بات را به اشتراک میگذارم)
🔵محاسبات ناپایدار: یک خطای مهندسی مهلک🔵


در تاریخ ۲۵ فوریه سال ۱۹۹۱ میلادی سیستم موشکی پاتریوت (patriot missile system) در عربستان دچار خطا شده و یک موشک بالستیک باعث کشته شدن ۲۸ سرباز آمریکایی شد. بررسی بعد از حادثه نکته ی شگفت انگیزی را آشکار کرد. ساعت داخلی پاتریوت بر اساس قدم های زمانی ۰.۱ ثانیه با یک عدد صحیح به عنوان آفست کار می کرد. این عدد سپس به یک عدد شناور (float) با ۲۴ بیت تبدیل می شد که برای محاسبه سرعت موشک و مکان حمله مورد استفاده قرار میگرفت. بیست ساعت آنلاین بودن سیستم باعث تجمیع خطا در یک «محاسبه ناپایدار» که ناشی از تبدیل عدد int به float بود به جایی رسید که سیستم پاتریوت عملا غیر قابل استفاده میشد چون تمام محاسبات عددی آن غلط بودند و همین باعث فاجعه شد!

اما «محاسبه ناپایدار» یعنی چه؟ ما هنگام محاسبات فرمولهای فیزیک و ریاضی فرض میگیرم که عددهایی که در داخل فرمول ها هستند حقیقی هستند و به همین خاطر ویژگی های خوبی مانند پیوستگی از آن ها انتظار داریم اما در عمل یعنی در کامپیوتر عدد حقیقی ای وجود ندارد بلکه با اعداد اعشاری floating point مواجه هستیم که دقت بی نهایت ندارند! برای اینکه مشکل را متوجه بشید به فرمول زیر دقت کنید

ادامه ..

https://vrgl.ir/xqPtr
Forwarded from MatlabTips (Rohola Zandie)
🔵مزیت بستن درها🔵

مردی را می شناسم که با سه زن قرار ملاقات میگذارد. او عاشق هر سه نفرشان است و می تواند تصور کند که با هر یک از آن ها تشکیل خانواده بدهد. با این حال او جرات انتخاب بین هیچ کدام از آن ها را ندارد. صرفا به این خاطر که انتخاب یکی به معنای کنار گذاشتن دو تای دیگر برای همیشه است.
دانشجویی بین ادامه دادن رشته کامپیوتر یا ادبیات مردد است او هر دوی آن ها را دوست دارد به همین خاطر در کلاس های هر دو شرکت می کند و وقتش را بین هر دو تقسیم می کند.او احساس می کند اینطوری هر دو گزینه را خواهد داشت و اینطور برایش بهتر است.
مادری فرزندش را به کلاس شنا، پیانو، نقاشی و زبان می فرستند. حتی خود مادر هم می داند که امکان ندارد فرزندش در همه موفق شود اما فکر می کند شاید روزی به کارش آمد.
همه ما سعی میکنیم تا جایی که ممکن است تمام گزینه ها را باز باقی بگذاریم. اما متاسفانه معمولا هیچ کدام را به نتیجه نمی رسانیم و مقدار زیادی وقت و انرژی هدر می دهیم. به همین خاطر است که امروزه با این همه گزینه های زیادی که داریم معمولا از قدیمی ها عقب تر هستیم.
روانشناسان رفتار شناسی اقتصادی Dan Ariely و Jiwoong Shin با اختراع بازی کامپیوتری که این شرایط را تقیلد می کند این رفتار غیر منطقی انسان ها را مطالعه کردند[1]. بازی به این صورت است که در ابتدای بازی با سه در مواجه می شوید. که با کلیک کردن در را باز و وارد اتاقی می شوید. در اتاق می توانید با کلیک کردن داخل اتاق امتیاز بدست بیاورید یا با کلیک کردن روی درِ داخل اتاق به اتاق دیگری بروید. باید حواستان باشد که تعداد محدودی می توانید کلیک کنید(زمان و انرژی محدود در زندگی). و اگر درِ اتاقی را باز کرده باشید و به آن نروید به تدریج درش بسته می شود(از دست دادن یک گزینه به تدریج با بی توجهی). در مجموع سه اتاق بیشتر وجود ندارد و بازی طوری طراحی شده که یکی از اتاق ها به طور متوسط امتیاز بیشتری نصیب شما می کند.
بهترین استراتژی (از لحاظ ریاضی) این است که پس از بررسی چند گزینه محدود، در اتاقی بمانیم و مابقی کلیک ها را مصرف کنیم که به طور متوسط بیشترین امتیاز را می دهد. اما رفتار کاربران متفاوت بود: آن ها سراسیمه تا جایی که می توانستند درهای بیشتری را باز می کردند و زمانی که دری در حال بسته شدن بودن سعی می کردند با صرف یک کلیک آن را باز نگه دارند. این رفتار حتی زمانی که جریمه باز نگه داشتن یک در بیش از یک کلیک شد، تغییری نکرد. وقتی از آن ها پرسیده شد که چرا اینکار را می کنند آن ها پاسخ می دادند:" ممکن است در آینده به دردم بخورد" در صورتی که آن ها هرگز به آن آینده نمی رسیدند و قبل از آن که بتوانند از آن اتاق آن طور که باید استفاده کنند کلیک هایشان تمام می شد. روانشناسان اما نتیجه گرفتند دلیل اصلی باز نگه داشتنِ در این است که افراد نمی خواهند سختی و دردِ بسته شدن یک در را تحمل کنند.
ما همواره می خواهیم در آنِ واحد کارهای زیادی را بکنیم، از هیچ امکانی نمی گذریم و می خواهیم همه گزینه ها را با هم داشته باشیم. این امر به سادگی می تواند موفقیت ما را نابود کند. باید یاد بگیریم درها را ببندیم حتی اگر اینکار برایمان سخت باشد. کارهایی که در زندگی نباید بکنی را بنویس. به بیان دیگر تصمیم های حساب شده ای بگیر تا برخی چیز ها را کلا نادیده بگیری. یک بار خوب فکر کن و تصمیمت را بگیر که سراغ چه چیزهایی، حتی اگر فرصتش بود، نروی. بیشتر درها ارزش وارد شدن ندارند، حتی اگر به نظر برسد چرخاندن دسته در بسیار ساده است.

[1] Shin, J., & Ariely, D. (2004). Keeping doors open: The effect of unavailability on incentives to keep options viable. Management Science, 50(5), 575-586.
🔵آیا ریاضیات اختراع است یا کشف؟🔵

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


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

ادامه دارد
🔵آیا ریاضیات اختراع است یا کشف؟🔵

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

پرده چهارم: گریگوری چایتین (ریاضیدان):‌
از دیدگاه چایتین ریاضیات اختراع نیست چون شبیه به یک بازی می شود مانند شطرنج یا هر چیزی دیگری. اما از طرفی او اعتقاد دارد که دیدگاه سنتی به ریاضیات اشتباه است ریاضیدان ها باید با کامپیوتر ها دست به آزمایش بزنند و اگر چیزی را یافتند آن را قبول کنند. این نگاه به نحوی تجربه گرایی را به ریاضیات وارد می کند. به این ترتیب ریاضیات در مرز کشف و اختراع است گاهی کشف می شود و گاهی اختراع می شود.
ترکیب تصاویر با Adversarial Latent Autoencoders

مقاله: https://arxiv.org/abs/2004.04467

کد:‌https://github.com/podgorskiy/ALAE
🛑برند بازی در علم ممنوع!🛑

جامعه یادگیری ماشین احتیاجی به برند سازی های پابلیشرهای پر زرق و برق برای نشان دادن موفقیت خود ندارد. جامعه متن باز نشان داده است که می تواند بدون دخالت شرکت های خصوصی و کاسبان سرمایه سالار با کیفیت ترین نرم افزارها را خلق کند. یادگیری ماشین باز (Open Machine Learning) نیازی نمی بینید که علم را کالای دلالی کاسبان کند و نه تنها بدون این پابلیشر ها (مانند Nature, Springer , Elsevier) می تواند زنده بماند بلکه بسیار بهتر هم عمل میکند. ما از اینترنت برای ساختن ژورنال هایی که برای عموم مردم رایگان هستند استفاده می کنیم و زمانه ی پرداخت عضویت برای استفاده از مقالات پشت سر ماست!‌ فرآیند ساخت، جمع آوری و بازبینی چند جانبه پژوهش ها و مقالات بسیار بهتر و سریع تر انجام می شود.

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

https://www.theguardian.com/science/blog/2018/may/29/why-thousands-of-ai-researchers-are-boycotting-the-new-nature-journal
🔵معرفی اپلیکیشن یادگیری زبان WordUp🔵

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

۱- این برنامه تمام لغات انگلیسی را بر اساس اینکه «چقدر مفید» هستند مرتب می کند. این بسیار مهم است چون به شخصه کتاب های لغت بسیار زیادی می دیدم که پر از لغاتی بود که شاید سالی یک بار هم آن ها را نمی دیدیم. وقتی چنین اتفاقی بیفتد وقت و انرژی بیهوده تلف می شود و آن لغت هم بعد از مدتی از خاطر فراموش می شود.

۲- این برنامه با استفاده از هوش مصنوعی رخنه هایی که در زبان شما هست را پیدا می کند. آن رخنه هایی که از همه زودتر نیاز به بسته شدن دارند! منظورم از رخنه کلماتی هست که بلد نیستید. صد البته هزاران لغت بلد نیستیم ولی سوال اساسی این است که کدام ها برای من اولویت بالاتری دارد؟ این برنامه آن لغت ها را با شناخت از دایره لغاتتان از طریق یک آزمون ساده تعیین سطح پیدا می کند.

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

۴- این گزینه شاید خیلی مهم نباشد چون بسیاری از برنامه های دیگر هم دارند اما یادگیری از طریق لایتنر (یا g5) یعنی یادگیری بر اساس بازه های زمانی منظم هم در این برنامه گنجانده شده است.

۵- و مهم تر از همه اینکه این برنامه به صورت رایگان در اختیار شماست!! تمام این امکانات که بعضا از کلاس زبان بیشتر است را یکجا بدون پرداخت می توانید داشته باشید.

نسخه اندروید آیفون و ویندوز هم وجود دارد


https://www.wordupapp.co/
🎷🎺جعبه جادوی موسیقی🎸🎼🎻

گاهی در جمع های خودمانی میگوییم ای کاش هنوز هایده زنده بود و برایمان میخواند. یا این شعر خیلی قشنگه کاش ایرج بسطامی می توانست آن را بخواند! هیچ چیز لذت بخش تر از این نیست که تصور کنیم یک غول چراغ جادو وجود می داشت که تمام این کارها را می کرد. اما خبر خوب اینکه غول چراغ جادو وجود دارد و همه آن را می شناسیم. این غول قدرتمند چیزی نیست جز خود علم! و این آرزو امروز توسط openai برآورد شد!
شرکت openai در آخرین دستاورد هوش مصنوعی خود امروز از jukebox رونمایی کرد: یک شبکه عصبی که قادر به تولید موسیقی با یک جعبه ابزار قدرتمند برای کنترل بسیاری از بخش های آن است. به طور مشخص تر jukebox شامل بخش های زیر است:
۱- شبکه عصبی با ورودی های شعر و خواننده در سبک مشخص آهنگ آن را درست می کند!!
۲- بازخوانی: شبکه عصبی قادر است یک آهنگ ورودی را با همان خواننده به همان سبک اما به صورتی متفاوت اجرا کند!
۳- کامل سازی: شبکه عصبی با گرفتن ۱۲ ثانیه نخست آهنگ بقیه آن را در سبک دلخواه شما ادامه می دهد. مثلا می توانید آهنگ هتل کالیفرنیا را بدهید و بخواهید آن را به سبک متال ادامه دهد!

جزییات این شبکه عصبی و اینکه چگونه کار می کند را در این لینک می توانید مطالعه کنید
🔵پویا نمایی از نمونه های تصادفی از فرآیند گاوسی🔵

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

دسته دیگری از فرآیندها هستند که قدری عجیب تر و فهم آن ها در آغاز دشوار تر است. این فرآیند ها به جای اعداد تابع تولید میکنند!!‌ برای ساده ترین حالت فرض کنید میخواهید فضای تمام خط های مستقیم را ببینید. هر خطی به صورت معادله ساده ax+b در می آیند که a , b هر عدد حقیقی ای می توانند باشند. حالا فرض کنید فضایی داشته باشیم که حتی از این گسترده تر باشد و تمام تابع های ممکن (نه فقط خط راست ها) ‌را شامل شود!‌ چنین فضایی به فضای هیلبرت معروف است.

اما کاربرد فضای هیلبرت چیست؟ در عمل فضای هیلبرت بسیار مفید است چرا که تابع ها از عدد ها مفید ترند!! هر تابع می تواند یک فرضیه باشد. مثلا فرض کنید تعدادی نقطه دارید و میخواهید بدانید بهترین تابعی که به آن ها برازش می شود چیست. روش های معمول برازش یا رگرسیون به شما می گویند بهترین تابع خطی (درجه یک) درجه دو یا سه چیست. اما بیایید بزرگ تر نگاه کنیم و بپرسیم احتمال درست بودن هر تابع چقدر است؟!! این دقیقا کاری است که در فرآیند های گاوسی (Gaussian Process) می پرسیم. فرآیند های گاوسی یک چارچوب ریاضی بسیار زیبا برای یافتن رگرسیون و فراتر از آن است. اما ممکن است بپرسید وقتی چنین کاری را با شبکه های عصبی عمیق (دیپ لرنینگ) می توان انجام داد چرا باید از GP استفاده کرد؟ پاسخ این است که فرآیند های گاوسی به شما میزان uncertainty یا درجه اطمینان برای هر پاسخ را می دهند. کاری که از شبکه های عصبی بر نمی آید. به طور مثال اگر شبکه عصبی شما بر روی عکس گربه و سگ آموزش داده شده باشد حتی اگر عکس یک اتومبیل را به آن نشان دهید باز هم به یکی از این دو کلاس تخصیص می دهد بدون اینکه درجه ای از عدم اطمینان این کار را بدهد.

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


https://github.com/roholazandie/gaussian_process_animation

یک دمو لایو بدون نصب هیچ چیز هم بر روی هروکو درست کرده ام

https://gpkernels.herokuapp.com/