MatlabTips
891 subscribers
462 photos
72 videos
54 files
304 links
آموزش MATLAB با "استفاده از ویدئو و متن" در سطوح مبتدی تا پیشرفته
پاسخ به سوالات تخصصی:
@roholazandie
Download Telegram
اینکه چقدر به سمت داده حرکت می کنیم و چقدر در احتمال پیشینی می مانیم بستگی به میزان اعتماد ما به داده ها دارد. در اصطلاح مغز به این «توجه» (Attention) می گوییم. به عبارتی توجه میزان بالانس بین جریان های پایینی و بالایی است و با فاکتوری به اسم precision میزان آن تعیین می شود. در این جا precision چیزی جز معکوس واریانس داده های پایین به بالا نیست. (در شکل زیر همان ‌Noise). اما در عمل این چطور کار می کند. فرض کنید در یک شب تاریک و بارانی و طوفانی در یک مسیر آشنا به سمت خانه رانندگی می کنید در این حالت اعتماد شما به آنچه بیرون می بینید کمتر است به عبارتی در این حالت اعتماد شما به prior های مغز که همان جریان بالا به پایین است بیشتر از جریان داده های پایین به بالاست. از طرفی هنگامی که در یک جاده ی نا آشنا در روز رانندگی می کنید کمتر به اطلاعات پیشینی (prior) دقت می کنید و سعی می کنید بیشتر به اطلاعات جدید از پایین به بالا (از حسگر هایتان) اعتماد کنید. پیچیدگی این تنظیم ها آنقدر زیاد است که شاید آشکار کند چرا با وجود سالها وعده و وعید در مورد اتومبیل های خودران همچنان چنین سیستم هایی مشکلات زیادی دارند.
یک تصویر شماتیک از پردازش پیش بینی کننده در مغز. ورودی های پایین به بالا در کانتکست پیشینی ها (prior) که همان باورها و فرضیات باشند به سمت لایه های بالایی پردازش می شوند. بخش های پیش بینی نشده (خطاها) در این سلسله مراتب بالاتر می روند و منجر به تغییر (adjustment) پیش بینی های بعدی می شوند. اگر پیش بینی های بالایی با داده ها همخوانی داشته باشند این حرکت رو به بالا متوقف می شود و مغز با پیش فرض ها (prior) ادامه می دهد.
This media is not supported in your browser
VIEW IN TELEGRAM
هنگامی که در مورد پردازش پیش بینی کننده صحبت میکنیم بیشتر افراد باور نمیکنند که تقریبا تمام آنچه اطرافشان می بینند در بیشتر زمان ها ساخته و پرداخته ی مغز (generative model) است. گویا سازوکاری وجود دارد که به ما اعتماد بیش از حد به حس هایمان می دهد.

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

پست من در مورد پردازش پیش بینی کننده را با جزییات بیشتر می توانید روی ویرگول بخوانید (به فارسی)
مغز خوش باور (the believing brain)
نوشته: مایکل شرمر

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

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

پس از آن که باور ها شکل گرفتند مغز ما به دنبال یافتن شواهد تایید کننده برای آن باورها است. این فرآیند همراه با اعتماد بیشتر به باور و به دنبال آن باز هم سرعت بخشیدن هر چه بیشتر به فرآیند تقویت باور به آن هاست (reinforce) و این فرآیند آنقدر ادامه می یابد تا ما را دچار بایاس می کند(confirmation bias).
ادامه

https://vrgl.ir/tDNkO
🔵قابل تعویض نباشید🔵

زنده ماندن و رشد در حوزه فناوری همیشه یک چالش بوده است. برای کسانی که مهندس هستند چنین چیزی بسیار بیشتر هم قابل حس کردن است. اما چالش اصلی چیست؟

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

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

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

واقعیت این است میزان اهمیت شما در محیط کار علاوه بر چیزهایی که همه می دانیم به میزان «قابل تعویض بودن» شما بر می گردد. این معیار حتی برای رده های متوسط هم وجود دارد. سربازها همیشه از همه بیشتر «قابل تعویض» هستند و بعد فرمانده هان میانی و بالا دستی.

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

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

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

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

@matlabtips
میزان انرژی مصرفی زبان های برنامه نویسی مختلف به صورت نسبی

https://thenewstack.io/which-programming-languages-use-the-least-electricity/
الگوریتم quicksort (سریع ترین الگوریتم مرتب سازی) در یک خط در پایتون
Of touching:
A man hath (has) been deprived of his feelings

(Newton’s 1661 notebook)
This media is not supported in your browser
VIEW IN TELEGRAM
امروز copilot ابزار کامل کردن کد openai را امتحان کردم. میزان کمکی که این ابزار می کند تقریبا باور نکردنی ست. در مثال بالا به دنبال کد کوتاهترین مسیر در گراف بودم و برای این منظور کافی است یک کامنت بنویسید و تقریبا تمام بقیه کار به صورت اتوماتیک (با فشردن دکمه تب) کامل می شود. یعنی حتی نیازی نیست که در اینترنت به دنبال کد آماده باشید. از طرفی copilot تمام کد شما رو میخواند و بنابراین نام متغیرهایی که انتخاب می کند هوشمندانه و بدون تقریبا هیچ اشتباهی و هماهنگ با بقیه کدهاست.
با این تفسیر ما وارد عصر جدیدی از برنامه نویسی می شویم که برنامه نویسی معنای متفاوتی دارد. برنامه نویس ماهر دیگر کسی نیست که الگوریتم روتین های مختلف رو حفظ می کند بلکه کسی است که می تواند قدری انتزاعی تر فکر کرده و مانند یک معمار ماهر قطعه های پیش ساخته در کارخانه را کنار هم بچیند

کوپایلت برای محصولات jet brains
This media is not supported in your browser
VIEW IN TELEGRAM
One thing I learned in life in helping from family members and close relatives to friends and even strangers is that:
Don’t help until you asked for help
Or at least don’t insist on helping otherwise your help seems worthless and you lose respect

You can never bring somebody up if they don’t want to go up
چند نکته بسیار مهم در مورد یادگیری ماشین

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

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

https://vrgl.ir/ovAUb
Media is too big
VIEW IN TELEGRAM
ریاضیات زبانی است که جهان با آن نوشته شده است (گالیله)

موج های ابری پدیده ای از هواکره (اتمسفر) است که در آن ابرها مانند موج های آب حرکت میکنند. چنین موج های سینوسی ایستاده ای (standing sine waves) از معادلات دیفرانسیل مشخصی پیروی می کنند که دینامیک آن ها را توضیح میدهد.
🔵رمزگشایی تاریخ با یادگیری عمیق🔵

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

شرکت پژوهشی deepmind در یک پروژه ی جدید توانسته سیستم یادگیری عمیقی را آموزش دهد که بر روی متن های زبان یونانی آموزش دیده و می تواند با دقت بالاتری رمزگشایی کند. آنها توانستند خطای سیستم را به ۳۰ درصد برسانند در حالی که خطای بهترین متخصصان باستان شناسی ۵۷ درصد است.
کدهای این سیستم به صورت متن باز منتشر شده است که امکان استفاده آن برای سنگ نبشته های دیگر تمدن ها مانند ایران و چین و غیره (در صورت دسترسی به داده های دیجیتال عکس های خطی) امکان پذیر می شود.
Media is too big
VIEW IN TELEGRAM
مدل تصویر-زبانی DALLE-2 منتشر شد

این مدل علاوه بر افزایش کیفیت بسیار زیاد نسبت به نسخه ی اول قادر به کارهای جدیدی مانند اضافه یه حذف بخش هایی از تصویر با یک نوشته است. مثلا اگر عکس یک سگ در تصویر است می توانید بنویسید «به گربه تغییرش بده» و دقیقا تصویر با حفظ همه ی جزییات نور و رنگ و زمینه تغییر میکند

https://openai.com/dall-e-2/
Forwarded from زانکو (Javad Amirian)
This media is not supported in your browser
VIEW IN TELEGRAM
چرا بهتره تقلب نکنیم؟
توی این ویدیو، استاد دانشگاه کالیفرنیا، چه زیبا این موضوع رو توضیح میده.
ببینید و به اشتراک بگذارید.

زانکو
@zankoo_ai
مقایسه فراتر از مقدار ظاهری

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