MatlabTips
892 subscribers
462 photos
72 videos
54 files
304 links
آموزش MATLAB با "استفاده از ویدئو و متن" در سطوح مبتدی تا پیشرفته
پاسخ به سوالات تخصصی:
@roholazandie
Download Telegram
This media is not supported in your browser
VIEW IN TELEGRAM
ربات های بوستون دینامیک اکنون قادر به حرکات ژیمناستیک هستند!!

@matlabtips
Forwarded from اتچ بات
گفتمش:
ـ «شیرین‌ترین آواز چیست؟»
چشم غمگینش به‌رویم خیره ماند،
قطره‌قطره اشکش از مژگان چکید،
لرزه افتادش به گیسوی بلند،
زیر لب، غمناک خواند:
ـ «ناله زنجیرها بر دست من!»
گفتمش:
ـ «آنگه که از هم بگسلند»
خنده تلخی به لب آورد و گفت:
ـ «آرزویی دلکش است، اما دریغ
بختِ شورم ره برین امید بست!
و آن طلایی زورق خورشید را
صخره‌های ساحل مغرب شکست! . . .»
من به‌خود لرزیدم از دردی که تلخ
در دل من با دل او می‌گریست.
گفتمش:
ـ «بنگر، درین دریای کور
چشم هر اختر چراغ زورقی ست!»
سر به سوی آسمان برداشت، گفت:
ـ «چشم هر اختر چراغ زورقی‌ست،
لیکن این شب نیز دریایی‌ست ژرف!
ای دریغا شبروان! کز نیمه‌راه
می‌کشد افسونِ شب در خوابشان . . .»
گفتمش:
ـ «فانوس ماه
می‌دهد از چشم بیداری نشان . . .»
گفت:
ـ «اما، در شبی این‌گونه گُنگ
هیچ آوایی نمی‌آید به‌گوش . . .»
گفتمش:
ـ «اما دل من می‌تپد.
گوش کُن اینک صدای پای دوست!»
گفت:
ـ «ای افسوس! در این دام مرگ
باز صید تازه‌ای را می‌برند،
این صدای پای اوست . . .»

گریه‌ای افتاد در من بی‌امان.
در میان اشک‌ها، پرسیدمش:
ـ «خوش‌ترین لبخند چیست؟»
شعله‌ای در چشم تاریکش شکفت،
جوش خون در گونه‌اش آتش فشاند،
گفت:
ـ «لبخندی که عشق سربلند
وقت مُردن بر لبِ مردان نشاند!» من زجا برخاستم،
بوسیدمش.

ه.ا. سایه
بالاخره Tensorflow 2.0 منتشر شد!

این نسخه دارای api بسیار تمیز تر با مجتمع سازی با keras یک قدم بزرگ در توسعه چارچوب های نرم افزاری هوش مصنوعی به شمار می رود.


بیشتر بخوانید: https://medium.com/tensorflow/tensorflow-2-0-is-now-available-57d706c2a9ab

یک کولب برای تمرین بدون نصب هیچ چیزی: https://colab.research.google.com/github/zaidalyafeai/Notebooks/blob/master/TF_2_0.ipynb
This media is not supported in your browser
VIEW IN TELEGRAM
"کتاب طبیعت به زبان ریاضیات نوشته شده است" گالیله

معادله گرما (بالا) در برابر معادله موج (پایین)
🌆معرفی بهترین ابزارها برای توسعه رابط کاربری در پایتون🌆

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

وجود چنین مشکلاتی ناچارا ما را به سمت گزینه های دیگری مانند چارچوب های وبی مثل Django یا flask سوق می دهد. هر دوی این گزینه ها هم بسیار خوب هستند و من در گذشته تجربیات خوبی از ساختن رابط کاربری با آن ها داشته ام. باید توجه کرد که آینده رابط های کاربری از دسکتاب به سوی وب در حال حرکت هست و عملا ممکن است تا چند سال آینده برنامه های دسکتاپ (به جز برنامه های خیلی سنگین) به کلی منسوخ شوند. اما Django و بقیه چارچوب های ساختن وبسایت بیشتر از آنکه برای ساختن یک رابط کاربری سریع باشند برای ساختن وب سایت هستند.

در نهایت اگر از این دو مرحله عبور کنیم به دو گزینه میرسیم که بنظرم هر دو قابلیت های بسیار زیادی دارند و آینده ای درخشان! اولی Dash محصول شرکت plotly است که تخصص اصلی اش ساختن رابط های کاربری بسیار جذاب برای زبان هایی مثل python، R جاواسکریپت و MATLAB است. Dash دارای قابلیت های بسیار زیادی است و یادگیری آن هم ساده است. با Dash می توانید انواع اقسام کامپوننت های رابط کاربری از تکمه تا پروگرس بار و رادیو باتن را همراه با نمودارهایتان طراحی کنید و بصورت زنده آن ها را تغییر دهید.

اما گزینه حتی راحت تر که به تازگی شروع به کار کرده است streamlit.io است. هدف اصلی این گروه ساختن رابط کاربری به صورت تخصصی برای کاربردهای یادگیری ماشین است. با این که هنوز چند روزی از معرفی این محصول نگذشته است وقتی به داکیومنت های آن نگاه میکردم تقریبا همه ابزارک های لازم را داشت. این کتابخانه آنقدر ساده است که در عرض چند دقیقه همه چیز آن را یاد میگیرد! من یک سری تست های اولیه را بر روی آن انجام داده ام و در گیت هابم قرار داده ام که می توانید دانلود و نصب کنید و توسعه بدهید.
#GUI
@matlabtips
This media is not supported in your browser
VIEW IN TELEGRAM
استفاده از کتابخانه فوق العاده streamlit.io
#GUI
This media is not supported in your browser
VIEW IN TELEGRAM
یکی از خوبی های dash و streamlit این است که براحتی میتوان از روی مرورگر از هر وسیله ای که به شبکه وصل است نمودار ها را به صورت زنده دید. اینجا من نموداری که بر روی لپ تابم اجرا شده را فقط با وصل بودن به وای فای از روی گوشی قدیمی ام نگاه میکنم
کدهاش اگه دوست دارید تست کنید
🔵استفاده از کارت گرافیک برای محاسبات عددی( در پایتون و متلب)🔵


اگر در حال انجام محاسبات سنگین هستید حتما متوجه شده اید که تغییر دادن الگوریتم یا زبان می تواند تاثیر زیادی در سرعت داشته باشد. اینجا می خواهیم یکی از بهترین راهها برای افزایش سرعت را ببینیم: استفاده از کارت گرافیک!
ادامه در لینک زیر

https://vrgl.ir/2gsbq
من معمولا حوصله نمیکنم برنامه هام رو تست کنم، اما امروز سعی کردم یکم با چت باتی که ساختم حرف بزنم، نتیجه خیلی جالب بود! (سبز منم و سفید چت بات)
#fun
)بعد از اکسپت مقاله کد هاش رو براتون میذارم)
کراس+ تنسرفلو ۲ (TensorFlow 2.0 + Keras Crash Course)

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

https://colab.research.google.com/drive/1UCJt8EYjlzCs1H1d1X0iDGYJsHKwu-NO
خلاصه مقاله: یک مقایسه عالی بین دو رقیب قدرتمند در عرصه چارچوب های یادگیری عمیق


ظاهرا چرخش شدیدی بخصوص در دو سال اخیر به سمت pytorch در آکادمیا شده است. در کنفرانس های اصلی هوش مصنوعی یعنی CVPR، NAACL ICLR ICML رشد پایتورچ از ۲۰۱۸ به ۲۰۱۹بالای دویست درصد بوده است این در حالی است که رشد تنسرفلو منفی بوده است. این نشان می دهد بیشتر پژوهشگران به سمت پایتورچ در حال مهارجرت هستند.

مهم ترین دلایل آن:
سادگی: سادگی پایتورچ از نامپای الهام گرفته شده است و همچنین سادگی در دیباگ که از اول در آن وجود داشت.
ای پی آی عالی: بیشتر کاربران api پایتورچ را ترجیح میدهند، تنسورفلو خودش را با تغییرات زیاد در اسم گذاری و پخش و پلا کردن زیر بخش ها فلج کرد
سرعت: بسیاری از بنچ مارکها نشان میدهند پایتورچ اگر سریعتر از تنسرفلو نباشد کندتر نیست، به همین دلیل ازین لحاظ تنسرفلو حرف بیشتری برای گفتن ندارد.

با این حال تنسرفلو هنوز بازار را بیشتر در دست دارد. دلیل آن هم این است که صنعت معمولا کند تر از آکادمیا خود را با چارچوب های جدید وفق می دهد اما جدای از آن دلایل مهم دیگری هم وجود دارند:
تنسرفلو بر روی سرورها و گوشی های موبایل اجرا می شود و قابلیت اجرا در وضعیت های گوناگون را دارد. پایتورچ تازه شروع به گسترش در این زمینه ها کرده است. از طرفی کدهای تنسرفلو در عمل سی هستند که overhead بسیار پایینی دارند و این برای کارهای صنعتی بسیار مهم ست.
در سال ۲۰۱۹ پایتورچ سعی در ایجاد torchscript‌ کرد تا ضعف اجرا در پایتون را حل کند. از طرفی تنسرفلو حالت eager خود را معرفی کرد که مشکل دیباگینگ را حل کند. هر دوی این تلاش ها برای رفع کاستی های هر دو فریم ورک بود. اما هر دو همچنان مشکلاتی دارند. بخصوص روش eager در تنسرفلو باعث کند شدن و مشکلات زیادی شده است.

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

خوش­بینی برادرت ترکان را آواز داد
تو را و مرا گردن زدند
بر گُرده­مان نشستند
و گورستانی چندان بی مرز شیار کردند

کوچ غریب را به یاد آر
از غربتی به غربت دیگر
به یاد آر:
تاریخ ما بی­قراری بود
نه باوری
نه وطنی.

#rojava
#kurds
👑 مشتق بگیر و راحت باش!👑

مشتق گیری در مرکز تقریبا تمام الگوریتم های یادگیری ماشین وجود دارد. در بسیاری از مواقع مانند شبکه های عصبی (در backpropagation) مشتق های مرتبه اول کافی هستند. بیشتر کتابخانه های معروف هم برای همین منظور بهینه شده اند. اما گاهی مشتق های مراتب بالاتر هم مهم می شوند. به صورت سنتی روش های زیادی برای چنین مشتق هایی ایجاد شده بود که برخی از آن ها کند بودند. اکنون که استفاده از GPU همه گیر شده است باز هم جان تازه ای به این روش ها دمیده شده است. دو کتابخانه معروف در این زمینه autograd ‌و jax هستند. یادگیری این کتابخانه ها از دو جهت اهمیت دارد:
۱- این کتابخانه ها به صورت بسیار ساده نشان می دهند که چگونه می توان روش های یادگیری ماشین را پیاده سازی کرد. در عمل بسیاری از مکانیزم های مورد استفاده از چشم پنهان هستند ولی اینجا می توان پیاده سازی سطح پایین را دید که از لحاظ یادگیری بسیار مهم است.

۲- آینده ی کتابخانه هایی که بر اساس مشتقات مرتبه اول کار میکنند هنوز روشن نیست. بعید نیست در آینده نیاز به مشتقات مراتب بالاتر بخصوص محاسبه ماتریس هسین برای محاسبات سریع تر یا دقیق تر باشیم.

برخلاف خود تنسرفلو jax بسیار پایتونیک نوشته شده است. به این معنا که تا جای ممکن استانداردهای نوشتن کد در پایتون و بخصوص numpy را رعایت کرده است. همین باعث می شود کار کردن با آن ساده و یادگیری سریعی داشته باشد.

پروژه jax توسط google
https://github.com/google/jax

یک کولب برای کار با jax:
https://colab.research.google.com/github/google/jax/blob/master/docs/notebooks/How_JAX_primitives_work.ipynb

یک پست وبلاگی بسیار جالب در مورد استفاده از jax
https://colindcarroll.com/2019/04/06/exercises-in-automatic-differentiation-using-autograd-and-jax/
پیاده سازی یک شبکه عصبی کامل با jax
⭐️معجزه جدید OpenAI: ربات جدید OpenAI با یک دست مکعب روبیک را حل می کند! ⭐️

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

شاید حتی تا چند سال پیش ساختن دست مکانیکی که بتواند به چنین سطحی از پیچیدگی برسد غیر ممکن بود اما امروز (۱۵ اکتبر ۲۰۱۹) OpenAI از دست رباتیک جدید خود رونمایی کرد که با ایجاد یک چارچوب یادگیری مبتنی بر یادگیری تقویتی در محیطی شبیه سازی شده به این هدف رسیده است. دست مکانیکی ساخت OpenAI‌ می تواند مکعب روبیک را با یک دست حل کند. ظاهرا چیزهایی که ربات ها می توانند انجام بدهند و ما نمی توانیم دارند بیشتر می شوند!

مساله در اینجا حل خود مکعب روبیک نیست که صد البته کار بسیار ساده ای برای کامپیوتر است. نکته اصلی حتی سخت افزار آن نیست (سخت افزار دست حداقل ۱۵ سال است که وجود دارد) مساله اصلی نگه داشتن مکعب در «یک دست» و انجام یک کار بسیار ظریف بدون انداختن مکعب یا انجام اشتباه آن است. کاری که حتی برای انسان هم بسیار دشوار است. (باور نمی کنید سعی کنید فقط با مکعب روبیک چند لحظه در یک دستتان بازی کنید،‌ حل کردنش پیشکش)
برای این منظور قبل از ساخت دست فیزیکی محیطی شبیه سازی ساخته شده و با استفاده از یادگیری تقویتی عمیق شبکه آموزش داده شده است. اما برای اینکه الگوریتم قادر باشد در محیط جهان واقعی کار کند یک چارچوب جدید به نام Autimatic Domain Randomization (ADR) را ایجاد کرده اند که هر بار شرایط را برای ربات با تغییر یک پارامتر سخت تر می کند. مثلا تغییر سایز یا وزن مکعب، بستن دو انگشت ربات به هم، ناخنک زدن در حین حل، انداختن پارچه بر روی دست و غیره باعث شده اند که الگوریتم راهی برای حل مکعب بدون انداختن آن در شرایط پیچیده جدید انجام دهد.
این دست اگرچه هنوز فقط مکعب روبیک حل می کند اما یکبار و برای همیشه طلسم فایق آمدن بر پیچیدگی های غیر قابل برنامه نویسی در دست رباتیک را شکست. این در را برای دست های رباتیک (و به طور کلی ربات ها) باز می کند تا بتوانند تقریبا هر حرکت پیچیده حرکتی انسان را یاد گرفته و شبیه سازی کنند.

مقاله
چارچوب نرم افزاری مورد استفاده
Media is too big
VIEW IN TELEGRAM
معجزه جدید OpenAI: ربات جدید OpenAI با یک دست مکعب روبیک را حل می کند!

توضیحات بیشتر
@matlabtips
یک شوخی با تنسرفلو #fun
کجا چه نموداری استفاده کنیم؟

Credit: https://twitter.com/MesgariSaber
This media is not supported in your browser
VIEW IN TELEGRAM
قانون مور قاعده‌ای سرانگشتی است که بیان می‌کند تعداد ترانزیستورهای روی یک تراشه با مساحت ثابت هر دو سال، به طور تقریبی دو برابر می‌شود.
صد البته این قاعده به دلیل محدودیت های فیزیکی تا ابد نمی تواند پایدار باشد.
سال ۲۰۲۰ آخرین سال برقراری قانون مور با فیزیک حال حاضر برای توسعه تراشه هاست. اما این لزوما پایان داستان نیست...