PyTorch Howsam
3K subscribers
337 photos
48 videos
5 files
472 links
از هوش مصنوعی میگیم...

ارتباط با ادمین
@howsam_support
Download Telegram
📝 لیستی از منابع آموزشی خوب برای شبکه GAN

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

📑 وبلاگ آشنایی مقدماتی با GAN:
https://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
سلام دوستان

این گالری تصاویر رو از پیج اینستای شهرسخت‌افزار برداشتیم. تبلیغاتی نیستا 😅

یک‌سری سیستم با قیمت‌های متفاوت پیشنهاد داده. برای دوستانی که میخوان سیستم بخرن شاید مناسب باشه.

راستی، دوستانی که تجربه دارن لطفا نظر بدن بقیه استفاده کنن.

@pytorch_howsam
اتنشن تکنیکی هست که خیلی پرطرفداره و خب انصافا تکنیک موثری هم هست.

خیلی‌ها دنبال شناختن تکنیک‌ها یا ماژول‌های مختلف اتنشن هستن. خبر خوب اینکه یک مقاله survey درباره اتنشن در بینایی کامپیوتر داریم که خوندنش میتونه خیلی مفید باشه.

https://arxiv.org/pdf/2111.07624v1.pdf

@pytorch_howsam
یک کتاب آنلاین خوب 👌

کتاب یا گیری عمیق در NLP

دامنه مباحثی که پوشش داده، وسیع هست. فهرست مطالب رو در تصویر بالا مشاهده کنید.

nlpoverview.com

@pytorch_howsam
خب کم کم jax داره رشد میکنه...

قبلا از jax گفتیم. اونهایی که تنسورفلو یا پایتورچ مسلط هستن و وقت آزاد دارن، نیم‌نگاهی به jax داشته باشن.

این یک نمونه پیج آموزشی از jax که فقط با مثال جلو رفته. اصلا توضیح نداره، فقط مثال...

https://github.com/vopani/jaxton

@pytorch_howsam
Graph Neural Networks (GNN)

اگه میخوایید GNN یاد بگیرید، حتما به این پیج سر بزنید. منابع خوبی رو معرفی کرده.
https://github.com/dair-ai/GNNs-Recipe#-tutorials

@pytorch_howsam
🎁 تخفیف بزرگ دوره بینایی کامپیوتر حرفه‌ای 🔥

⭕️ به مناسبت سال جدید، دوره بینایی کامپیوتر با 40 درصد تخفیف عرضه شده است.

🌐 اطلاعات بیشتر و تهیه دوره: لینک دوره

@howsam_org
چطوری می‌تونم یک متن رو در پایتورچ توکنایز کنم؟ 🤔

ساده هست؛ بیایید مرحله به مرحله پیش بریم...

اول، ایمپورت get_tokenizer از لایبرری تورچ‌تکست:
from torchtext.data.utils import get_tokenizer

دوم، کانفیگ کردن تابع get_tokenizer؛ یعنی با دستور زیر بگیم که چه نوع توکنایزری می‌خواییم. مثلا، ما از توکنایزر آماده پایتورچ برای انگلیسی استفاده کردیم:
tokenizer = get_tokenizer('basic_english')

سوم، یک جمله بنویسیم. جمله زیر معنی خاصی نداره. یک جمله ناقص از دیتاست ag_news هست. پرانتز داره می‌خواییم ببینیم توکنایزر با پرانتزها چیکار میکنه:
line = "Carlyle Looks Toward Commercial Aerospace (Reuters) Reuters"

چهارم، توکنایزر لطفا توکنایز کن:
tokens = tokenizer(line)
print(tokens)

این هم نتیجه:
['carlyle', 'looks', 'toward', 'commercial', 'aerospace', '(', 'reuters', ')', 'reuters']

⭕️ انصافا ساده بود، نه؟
برگرفته از دوره جدید آموزش پایتورچ هوسم 😎

@pytorch_howsam
چقدر این دغدغه رو دارید که کد پایتون رو زیبا و تمیز بنویسید؟

اگه چنین دغدغه‌ای دارید، باید دنبال Style Guide برای پایتون باشید.
مثلا pep8 یک راهنما برای همین کار هست. به شما پیشنهادهایی رو میده که بتونید تمیز و اصولی کد بزنید.

مثلا به تصویر بالا نگاه کنید؛ گفته، فاصله‌های الکی نذار. هم شکل درست رو نشون داده و هم شکل اشتباه رو. این اشتباهات معنیش این نیست که کد ما به خطا میخوره، نه! بلکه، میخواد به ما استاندارد کد زدن در پایتون رو یاد بده.

لینک pep8:
https://peps.python.org/pep-0008/

حتما یاد بگیرید. دوست دارید هرازگاهی چند تا نکاتش رو بگیم؟

@pytorch_howsam