Telegram Web
متن زیر، توییت اکانت MIT CSAIL هست: 😁
"Debugging is like being the detective in a crime movie where you are also the murderer."
- Filipe Fortes

میگه، دیباگ کردن یعنی اینکه کارآگاه یک فیلم جنایی هستی، ولی درعین حال قاتلم خودتی! 😁😁

واقعا قشنگ بود. دیباگ کردن هم یک مهارته که خیلی ها اون رو یاد نمیگیرن. اتفاقا خیلی اوقات شده که دانشجوها با خطاهاشون به ما مراجعه میکنن و بعد ما یکی دو تا خطا رو راهنمایی میکنیم ولی همینطوری ادامه میدن و خطاهای دیگه رو اسکرین شات میگیرن و میفرستن.

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

این اشتباهه. اگه فرد دنبال این باشه که به هر روشی که شده به هدفش برسه، میشه یک خونه ای که ساخته شده ولی با یک زلزله یک ریشتری هم فرو میریزه.

حالا ما چند نکته ساده درباره دیباگ کردن میگیم:
1- صبور باش 😁
2- متن خطا رو بخون کلمه به کلمه
3- محل دقیق خطا رو شناسایی کن و کدهای اون قسمت رو دقیق بررسی کن.
4- سرچ کن. متن اصلی خطا رو سرچ کن و پیجهای stackoverflow و github رو بخون.
5- حواست به تغییراتی که ایجاد میکنی باشه. اینجوری نباشه اونقدر تغییر بدی که کلاف درهم پیچیده بشه.
6- حذف نکن، کامنت کن. قبلی ها رو حذف کنی، داستان میشه.
7- بازم صبور باش 😁

خفنهای کانال و گروه شما چه پیشنهادهایی برای دیباگ دارید؟

@pytorch_howsam
This media is not supported in your browser
VIEW IN TELEGRAM
دیتا آگمنت در تصاویر پزشکی با TorchIO

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

تصویر بالا هم آگمنت random affine هست.

https://github.com/fepegar/torchio

@pytorch_howsam
کتابخانه ensemble learning با پایتورچ

حتما با ensemble learning آشنا هستید. روش محبوبی هست که یک گروه از شبکه‌ها یا مدل‌ها در تصمیم‌گیری شرکت دارن.

لینک زیر یک کتابخونه هست که کار رو راحت کرده و یکسری روش‌های معروفش رو آماده کرده که به راحتی میتونید ازشون استفاده کنید و کمتر کد بزنید. پایتورچی هم هست.
https://ensemble-pytorch.readthedocs.io/en/stable/

حسن یزدانی هم باخته، اعصابمونم خورده... 😕

@pytorch_howsam
وبلاگ آموزش شبکه عصبی کانولوشن هوسم یکی از پرطرف‌دارترین آموزش‌های هوسم است. دانشجویان ساعت‌ها زمان صرف مطالعه آن می‌کنند و 100 کامنت داشته است. لینک آموزش

تعدادی از کامنت‌های دانشجویان برای آموزش شبکه عصبی کانولوشن را در ادامه بخوانید:

1⃣ با سلام …من در حال آموزش طی یک دوره حضوری در یکی از مراکز تاپ اموزشی توی زمینه دیپ لرنینگم …ولی واقعا بعد از حدود ۴۵ ساعت آموزشی ک تا الان دیدم به جرات میتونم بگم درکی که توی این چن ساعت مطالعه مطالب رایگان شما داشتم واقعا خیلی خیلی مفیدتر بوده…انشالله بعد اتمام این دوره در جریانم حتما دانشجوی دوره های تصویری شما هم خواهم بود…خیلی خیلی ممنون بابت زحماتتون

2⃣ از شدت خفن بودنتون همینجور موندم عالیییی بود عالییییییییییییییی

3⃣ دوستان گرامی ، براتون قلبا آرزوی موفقیت می کنم
بسیار بیان شیوا و عالی دارید . خدا قوت .
هیات علمی دانشگاه آزاد اسلامی

4⃣ سلام خدا قوت
جامع و کامل بود
کلی سوال بی جواب منو جواب داد
ممنون

5⃣ با سلام خدمت تیم هوسم
من کلی سایت خارجی و فارسی رو در مورد شبکه عصبی کانولوشن مطالعه کردم و کلی سوال، بی جواب برام موند.
ولی شما در این سایت بسیار ساده و روان تمام مفاهیم مهم و اصلی رو توضیح دادید.
ممنون از شما
باز هم به هوسم سر میزنم
به امید آموزش های بیشتر

6⃣ چرا انقد خوبه آخه سایتتون؟! :((
هیچ منبعی رو سراغ ندارم که انقدر ساده و شیوا تشریح کرده باشه مفاهیم رو، حتی منابعی که هزینه دریافت میکنند!
مارو گرفتار آموزشاتون کردید رفت …
بهترین هارو برای تیم باانگیزه و پرقدرتتون آرزو دارم
دستمریزاد!

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

8⃣ سلام،
نحوه توضیح و مثال ها به اندازه ای خوانا بود که باعث شد چند ساعتی بشینم و کامل تمام آموزش رو از اول مطالعه کنم. خسته نباشید و خدا قوت به خاطر وقتی که میذارید و این مطالب رو آماده می کنید. این نوع توضیح دادن نشان دهنده درک بالا و عمقی شما در این زمینه می باشد. امیدورام که این آموزش ها با ویدیو هم همراه باشه. و به عنوان پیشنهاد هم میتونید یک بخش به سایت اضافه کنید که در مورد مقالات هات و روز دنیا صحبت کنید و توضیح بدید. مقالاتی مثل BERT , MT_DNN, GPT3 و … این بخش باعث میشه افراد مختلف وب سایت شما رو همیشه چک کنند و به روز باشند.
تشکر از زحماتتون

سپاس از تمام عزیزانی که نظر و پیشنهادهای خود را با ما به اشتراک گذاشتند. از خواندن تک‌تک پیام‌های شما لذت میبریم و انگیزه‌مان بیشتر می‌شود. 🌹

@howsam_org
سلام سلام

گوگل از یک پلن جدید برای کولب رونمایی کرده. + Colab pro

از نکات جالب این پلن، امکان اجرای کد در بکگراند هست. یعنی کولب رو ببندید هم کد اجرا میشه!

هزینش برای ما دور از دسترسه متاسفانه...

@pytorch_howsam
کتاب و کورس ویدیویی رایگان برای یادگیری ماشین. مجموعه ارزشمندیه...

The code from the Machine Learning Bookcamp book and a free course based on the book.

https://github.com/alexeygrigorev/mlbookcamp-code

@pytorch_howsam
تو این پست میخواییم labml.ai رو به شما معرفی کنیم.

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

اگه به آدرس papers.labml.ai برید، مقاله‌های ترند رو می‌تونید ببینید. ظاهر خیلی شیکی هم داره.

اگه به آدرس labml.ai برید، به شما این امکان رو میده که فرآیند آموزش مدلتون رو حتی با موبایل مانیتور کنید.

چه مجموعه پرخیر و برکتیه! 😁

@pytorch_howsam
Media is too big
VIEW IN TELEGRAM
🎞 چگونه مدل‌های کانولوشنی در پایتورچ را فراخوانی کنیم؟

در این ویدئو، به آموزش فراخوانی مدل‌های آماده مانند ResNet در پایتورچ پرداخته‌ایم. بسیار ساده...

تهیه شده در آکادمی هوش مصنوعی هوسم
@howsam_org
اگه دنبال منبع خوب برای پردازش صوت هستید، حتما حتما به کانال یوتیوب آقای Valerio Velardo سر بزنید. آموزش‌های بسیار خوبی داره. 👌

زلفشم که... 😁👌

https://youtube.com/c/ValerioVelardoTheSoundofAI

@pytorch_howsam
دیتاست بزرگ پزشکی MedMnist

دیتاست MedMNIST شامل 12 دیتاست دوبعدی و 6 دیتاست سه بعدی پزشکی هست که با الهام گیری از MNIST ساخته شده.

توی این دیتاست، تصاویر در اندازه 28*28 هستن و طیف وسیعی از داده‌های پزشکی رو شامل میشه. توی تصویر بالا میتونید ببینید.

دیتاست جالبیه! 👏🏻

این لینک گیتهاب دیتاست:
https://github.com/MedMNIST/MedMNIST

این هم یک نمونه کد پایتورچی از کار با دیتاست:
https://github.com/MedMNIST/MedMNIST/blob/main/examples/getting_started.ipynb

@pytorch_howsam
یک فیچر جدید و عالی در گوگل کولب 😍

گوگل کولب، پنجره مشاهده متغیرها رو اضافه کرده! با نام Variable Inspector

همونطور که در تصویر مشاهده می‌کنید، یک گزینه جدید در سمت چپ اضافه شده که لیست متغیرهای موجود در کدها رو نشون میده. شبیه به متلب یا پایچارم...

مثلا الان دو تا متغیر img و label رو همراه با سایز و مقدارشون لیست کرده.

قابلیت جالبیه و البته برای دیباگ کردن خیلی کاربردی هست. فکر می‌کنم در آینده تریس کردن کدها رو هم در کولب ببینیم. 👌

@pytorch_howsam
Forwarded from Zoomit | زومیت
This media is not supported in your browser
VIEW IN TELEGRAM
🔹 هوش مصنوعی GauGAN2 انویدیا از کلمات، تصاویر دقیق و گاهی دلهره‌آور تولید می‌کند

🔹 پروژه‌ی GauGAN2 انویدیا به‌کمک یادگیری عمیق می‌تواند از کلمات و عبارت‌های تایپ‌شده، تصاویری خلق کند که گاه بسیار شبیه به عبارت تایپ‌شده و گاه هنری و گاه بسیار دلهره‌آور هستند.


🔹 شما می‌توانیدبه صفحه‌ی مربوط به پروژه‌ی GauGAN2 بروید و خودتان با این پروژه کار کنید. دقت کنید پس از قبول‌کردن شرایط و ضوابط در انتهای صفحه، در قسمت Input utilization، حتما تیک text را بزنید و برای نتیجه‌ی دقیق‌تر، تیک segmentation را بردارید. سپس، عبارت مدنظرتان را در نوار Input text تایپ و روی دکمه‌ی جهت راست (render output) کلیک کنید. حواستان باشد از فشردن دکمه‌ی اینتر خودداری کنید؛ چون نتایج جست‌وجو را ریست می‌کند.

🚀 @theZoomit
#تمرین

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

به عنوان تمرین اول، شبکه رزنت-18 رو روی دیتاست Oxford 102 Flower آموزش بدید.

🔴 سطح پروژه: مبتدی

پیشنهاد میکنیم مراحل زیر رو انجام بدید:
1- سرچ در گوگل و پیدا کردن این دیتاست و آشنایی باهاش
2- خوندن این دیتاست توی گوگل کولب
3- بررسی اولیه دیتاست (نگاه کردن به تصاویر و کلاس‌ها و ...)
4- نوشتن بخش لود دیتاست با پایتورچ
5- فراخوانی مدل رزنت-18 پری‌ترین
6- تعریف بهینه‌ساز و تابع اتلاف
7- نوشتن بخش ترین و تست
8- شروع ترین و تلاش دیوانه‌وار برای رسیدن به دقت بالا 😅
9- تست‌های نهایی
10- تهیه یک نوتبوک تروتمیز همراه با توضیحات خوب برای هر بخش و قرار دادن در گیتهاب 🤓
11- نوشیدن چای
12- بررسی کدهای لینک زیر که همین تسک رو حل کرده:
https://github.com/Muhammad-MujtabaSaeed/102-Flowers-Classification

الان یکسری، مرحله 1 تا 10 رو ول میکنن و یک لیوان چای برمیدارن و میرن کدهای آماده 12 رو نگاه میکنن 😅 خودت کد بزن که پایتورچ و دیپ با پوست، گوشت و خونت عجین بشه. 😊

@pytorch_howsam
This media is not supported in your browser
VIEW IN TELEGRAM
📈 آیا جهش دقت یا دراپ اتلاف را تابحال به‌صورت عملی دیده‌اید؟

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

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

🌐 دوره بینایی کامپیوتر حرفه‌ای هوسم:
https://howsam.org/downloads/computer-vision-course/

@howsam_org
🔥 یه کانال یوتیوب بمب! 🔥

با سایت W&B آشنا هستید؟ قبلا اینجا معرفیش کردیم.

این سایت یه کانال یوتیوب خفن داره. واقعا ارزش این رو داره که تا یه مدتی روزی یک ساعت براش وقت بذارید و ویدئوهاشو ببینید. لینک کانال

مثلا یه نمونه آموزشش رو بهتون معرفی کنم: ریاضیات برای یادگیری ماشین. الان یکسری قلبشون شروع میکنه به تندتند زدن! 😅

توی هفت تا ویدئوی 30 40 دقیقه‌ای اومده ریاضیات موردنیاز رو گفته. حالا چه شاخه‌هایی از ریاضی رو گفته؟ اینا:
1- جبر خطی
2- حساب (مشتق)
3- آمار
4- احتمال

هرکی ریاضیش ضعیفه حتما این رو ببینه. اینم لینک

@pytorch_howsam
Audio
سوال: چرا با هربار آموزش شبکه عصبی به یک دقت متفاوت می‌رسم؟

@pytorch_howsam
📝 لیستی از منابع آموزشی خوب برای شبکه GAN

📘 کتاب GANs in Action:
http://github.com/GANs-in-Action/gans-in-action

📑 وبلاگ آشنایی مقدماتی با GAN:
http://wiki.pathmind.com/generative-adversarial-network-gan

🌐 گیتهاب مجموعه کدهای GAN با پایتورچ:
https://github.com/eriklindernoren/PyTorch-GAN

🌐 گیتهاب مجموعه کدهای GAN با تنسورفلو:
https://github.com/YadiraF/GAN

🌐 گیتهاب مجموعه کدهای GAN با کراس:
https://github.com/eriklindernoren/Keras-GAN

🎞 دوره‌ ویدیویی کورسرا:
https://www.coursera.org/specializations/generative-adversarial-networks-gans

📑 وبلاگ آشنایی مقدماتی با GAN هوسم:
https://howsam.org/generative-adversarial-network/

@pytorch_howsam
با ترجمه ماشینی یا Machine Translation آشنا هستید؟

ساختار بالا مربوط به شبکه‌های بازگشتی هست. اغلب از این ساختار در ترجمه ماشینی یا همان Machine Translation استفاده می‌شود.

این ساختار شامل دو بخش انکدر و دیکدر هست. در بخش‌های انکدر و دیکدر شبکه‌های بازگشتی مانند RNN LSTM GRU قرار داده می‌شود.

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

ابتدا در بخش انکدر، جمله انگلیسی وارد شبکه بازگشتی می‌شود و درنهایت پس از پردازش، یک بردار ویژگی به عنوان hidden state حاصل می‌شود.

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

نکته: در دیکدر، خروجی مرحله قبل به عنوان ورودی در مرحله بعدی استفاده می‌شود. به فلش‌ها در بخش دیکدر دقت کنید.

منبع برای مطالعه بیشتر:
1- towardsdatascience
2- pytorch
3- youtube
می‌تونیم از تابع پله به عنوان تابع فعال‌ساز استفاده کنیم؟ جوابش رو مفصل توضیح میدیم.
Final Results
54%
بله
46%
خیر
PyTorch Howsam
می‌تونیم از تابع پله به عنوان تابع فعال‌ساز استفاده کنیم؟ جوابش رو مفصل توضیح میدیم.
سلام
اما جواب سوال بالا:
اول این نکته را مدنظر داشته باشید که تابع پله یک تابع پیوسته نیست. از این تابع نمی‌توانیم مشتق بگیریم.

دوم، فرآیند آموزش یک شبکه عصبی با الگوریتم‌های بهینه‌سازی مانند گرادیان کاهشی با مشتق‌گیری همراه هست.

با درنظر گرفتن دو مورد بالا، به این نتیجه می‌رسیم که از تابع پله نمی‌توان به عنوان فعال‌ساز استفاده کرد. پس جواب خیر هست!

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

@pytorch_howsam
2025/07/14 16:53:48
Back to Top
HTML Embed Code: