Telegram Web
🍉 استفاده از LSTM روی داده های مکانی


یکی از ایده های در ظاهر جالب در یادگیری عمیق، استفاده از شبکه های بازگشتی روی تصویر است. اگر دقت کرده باشید، وقتی embedding هر کلمه در جمله را به LSTM می دهیم، عملا با ماتریس دو بعدی کار می کنیم؛ به عبارتی می توان ستون های تصویر را هر بار به شبکه های بازگشتی داد. تقریبا در سالهای 2014 و 2015 میلادی ایده استفاده از این کار در OCR مطرح شد و نتایج بسیار مناسبی بدست آمد ولی با این حال دقت به چند نکته اهمیت دارد.

🔸 در تسکی مثل OCR اصولا توالی وجود دارد؛ یعنی داده ما علاوه بر داشتن ویژگی locality، شباهت پیکسلهای کنار هم، دارای ویژگی temporal هم هست؛ زیرا در نوشتن حروف یک ترتیبی وجود دارد. پس منطقی است که به صورت ستون به ستون به تصویر نگاه کنیم. نکته دقیقا همین جا است. در داده هایی مثل CIFAR یا ImageNet این توالی وجود ندارد. منطق خیلی درستی وجود ندارد که ویژگی temporal را به ستون های چنین دادگانی نسبت دهیم.
🔸 خیلی از مقالاتی که سعی کردند از LSTM روی تصویر استفاده کنند، بر این موضوع که باید ویژگی های مکانی حفظ شوند آگاه بوده اند و سعی کرده اند در stack کردن لایه ها، از LSTM تنها به عنوان feature extractor مشتق پذیر استفاده کنند تا در شبکه به صورت مستقیم این ویژگی ها استفاده شوند. این نکته اهمیت بسیار بالایی دارد. خود LSTM به هیچ وجه در هر time step ویژگی های مکانی را حفظ نمی کند؛ یعنی اصلا مکانیزمی برای یافتن ارتباط مکانی ندارد، دقیقا مشکلی که در MLP وجود دارد. وقتی از LSTM تنها برای word embedding استفاده می کنیم، attack زدن کمی چالش برانگیز است؛ به این علت که embedding ها در فضای latenet هستند ولی وقتی تصویر را تنها به LSTM می دهیم، به این علت که تصویر در فضای latent نیست و ما می توانیم به صورت مستقیم تصویر را درک کنیم، attack زدن ساده می شود؛ زیرا LSTM ویژگی مکانی را نمی فهمد و می توان، برای مثال، سطرهای متفاوت را چشمی جابه جا کرد و با آزمون و خطا شبکه را گول زد.
🔸 مهمترین ضعف LSTM برای تصاویر، ضعف در تعداد نورون است. اصولا دادگانی مثل ImageNet خیلی پیچیده هستند و اگر ویژگی های local استخراج نشوند، کاری که ConvNet خوب انجام می دهد، یادگیری بسیار چالش خواهد داشت. LSTM در این زمینه حرفی برای گفتن ندارد.


ـــــــــــــــــــــــــــــــــــــــــــــــــــــــــــــــــــ
#نکته_آموزشی #LSTM #یادگیری_عمیق #شبکه_عصبی #تئوری
ـــــــــــــــــــــــــــــــــــــــــــــــــــــــــــــــــــ
🌳 پشتیبانی | 🌺 کانال | 🌴 سایت
🍑 نرم های متفاوتِ لایه های میانی: Layer Norm vs Batch Norm


در تسک های مربوط به NLP می توان به دلایل متفاوتی اشاره کرد ولی در این پست به یک ایده کلی می پردازیم. احتمالا حتما دیده اید که در شبکه هایی که به transformerها ربط دارند، از layer normalization استفاده می شود. این یک قانون کلی نیست ولی مشکل batch norm این است که موازی کردن مدل هایش زمانبر است. اگر مدل و سایر محاسبات و دادگان روی سخت افزارهای متفاوت قرار داشته باشند، اصطلاحا توزیع شده باشند، به علت وابستگی به داده های بچ در batch norm، هماهنگی زمانبر است. معمولا برای کارهای مربوط به transformer، بدلیل محاسبات زیاد، تعداد سخت افزار، مثلا gpu، زیادی لازم است. وقتی وابستگی بین دستگاه ها وجود دارد، نیاز به sync کردن اجتناب ناپذیر است. استفاده از layer normalization این مزیت را دارد که به هر حال گونه ای از normalization را خواهیم داشت و از همه مهمتر این است که دیگر وابسته به batch نخواهیم بود تا آماره ها را بدست آوریم.

ـــــــــــــــــــــــــــــــــــــــــــــــــــــــــــــــــــ
#نکته_آموزشی #layer_normalization #یادگیری_عمیق #شبکه_عصبی #batch_normalization #تئوری
ـــــــــــــــــــــــــــــــــــــــــــــــــــــــــــــــــــ
🌳 پشتیبانی | 🌺 کانال | 🌴 سایت
Media is too big
VIEW IN TELEGRAM
در این ویدیو در مورد استفاده از هوش مصنوعی در صنعت رباتیک ژاپن سخن گفته می شود.

ـــــــــــــــــــــــــــــــــــــــــــــــــــــــــــــــــــ
#یادگیری_عمیق #رباتیک #هوش_مصنوعی #ژاپن #ویدیو
ـــــــــــــــــــــــــــــــــــــــــــــــــــــــــــــــــــ
🌳 پشتیبانی | 🌺 کانال | 🌴 سایت
🍕 استفاده از یادگیری عمیق در پروژه های تجاری - بخش سیزدهم

🥝 شناخت مناسب از شبکه

این موضوع به صورت کلی در تمامی پروژه های هوش مصنوعی، چه دانشگاهی چه تجاری، اهمیت دارد. شناخت ویژگی هر شبکه یکی از مواردی است که لازم است بسیار به آن توجه کنیم. خیلی اصرار داریم که سعی کنید مدل های base را خودتان از اول تا انتها نود به نود پیاده سازی کنید تا با تمامی جزییات شبکه های پایه آشنا باشید. جدا از شناخت bottleneck های احتمالی و گاها رسیدن به ایده های نوآورانه، با ریز عملیات آشنا می شوید و متوجه می شوید که هر قسمت دقیقا به چه کار می آید. با این حال دقت کنید که این کافی نیست؛ یعنی فقط به پیاده سازی شبکه های base بسنده نکنید و مدام جست و جو کنید که سازنده هر شبکه، دقیقا چه فرضیات، نیازها و پاسخ هایی را با شبکه اش ارایه کرده است. این موارد اهمیت بسیار بالایی دارند؛ مثال خیلی مهمی را می زنیم. شبکه های کپسول در لایه های ابتدایی می توانند لایه کانولوشنی عادی داشته باشند. در بسیاری از مقالات که در جاهای بسیار خوبی هم چاپ شده اند می بینید که برخی بلوک کانولوشنی را n بار تکرار کرده اند و بعد لایه های کپسولی را قرار داده اند. این که این کار صورت می گیرد بد است و اینکه جواب هم می دهد فاجعه است! کسی که فقط مقاله را خوانده باشد و آن را پیاده سازی کرده باشد شاید خیلی به نکته ای که ذکر خواهیم کرد توجه نکرده باشد ولی اگر کمی در اینترنت جست و جو می کرد و ارایه هینتون برای کپسولهای 2017 و 2018 را می دید، می فهمید که هینتون بارها در ارایه ذکر می کرد که لایه های کپسولی اولیه، مورد part به whole مد نظرمان است، وظیفه توصیف feature های low-level را دارند؛ بنابراین با یک استدلال ساده می توان گفت که خروجی های لایه های عمیق کانولوشنی به هیچ وجه نباید به لایه های کپسولی داده شوند زیرا خروجی لایه های عمیق کانولوشنی low-level نیستند. با این حال می بینیم که این اشتباه بارها صورت گرفته است. درست است که شاید کمی درصد یادگیری بهتر شود ولی دقت کنید که کاری که می کنید با منطق مناسبی صورت گرفته یا نه. به عنوان مثالی دیگر به ترنزفرمرِ ViT اشاره می کنیم. یکی از عجایب است که این اشتباه بارها صورت می گیرد با اینکه نویسندگان در خود مقاله صراحتا اعلام کرده اند که روششان برای transfer learning خیلی خوب است، حتما خود مقاله را هم به دقت بخوانید. مشاهده می شود در میان کسانی که فقط کد مقاله را دیده اند که به صورت مستقیم وقتی دادگانشان سایز معمولی دارد از این معماری برای تصویر استفاده و یادگیری را از ابتدا شروع می کنند در حالی که این معماری برای دادگانی با اندازه شاید 200 میلیون دیتا مناسب است تا یادگیری یا پیش یادگیری مناسبی داشته باشد.

(ادامه دارد ⚾️🥎🎾)
ـــــــــــــــــــــــــــــــــــــــــــــــــــــــــــــــــــ
#نکته_آموزشی #یادگیری_عمیق #شبکه_عصبی #مثالهای_کاربردی #معماری_شبکه_عصبی #پروژه_تجاری #capsule_network
ـــــــــــــــــــــــــــــــــــــــــــــــــــــــــــــــــــ
🌳 پشتیبانی | 🌺 کانال | 🌴 سایت
ـــــــــــــــــــــــــــــــــــــــــــــــــــــــــــــــــــ
#اطلاع_رسانی
ـــــــــــــــــــــــــــــــــــــــــــــــــــــــــــــــــــ
🌳 پشتیبانی | 🌺 کانال | 🌴 سایت
🍓آیا لایه پولینگ مناسب است؟!

حتما شنیده اید که به لایه های پولینگ از جمله max-pool انتقادات زیادی وارد شده است. یکی از مهمترین این انتقادات این است که این لایه در هر بار استفاده حداقل 75% از اطلاعات تصاویر را دور می ریزد. با اینکه این انتقاد کاملا وارد است اما لایه max-pool یک ویژگی بسیار پراهمیت دارد که معمولا نادیده گرفته می شود. یکی از مهمترین کارهایی که این لایه انجام می دهد این است که باعث می شود receptive field لایه های نهایی شبکه های کانولوشنی افزایش پیدا کند تا دید جامع تری داشته باشند. خوبی این لایه زمانی خودش را نشان می دهد که شبکه های عادی مبتنی بر transformer دارای receptive field بسیار محدودی هستند و روی داده های با سایز متوسط نمی توانند خوب کار کنند.

ـــــــــــــــــــــــــــــــــــــــــــــــــــــــــــــــــــ
#نکته_آموزشی #pooling_layers #یادگیری_عمیق #شبکه_کانولوشنی #شبکه_عصبی #max_pool
ـــــــــــــــــــــــــــــــــــــــــــــــــــــــــــــــــــ
🌳 پشتیبانی | 🌺 کانال | 🌴 سایت
This media is not supported in your browser
VIEW IN TELEGRAM
قسمت اول

یکی از رایجترین اشتباهاتی که در ریپوهای گیت خیلی دیده می شود این است که در زمان تست هم کل سیگنال خروجی را به decoder می دهند. در حالی که همانند LSTM خروجی باید گام به گام درست شود.
(فایل را fullscreen ببینید)

ـــــــــــــــــــــــــــــــــــــــــــــــــــــــــــــــــــ
#نکته_آموزشی #transformer #یادگیری_عمیق #شبکه_عصبی
ـــــــــــــــــــــــــــــــــــــــــــــــــــــــــــــــــــ
🌳 پشتیبانی | 🌺 کانال | 🌴 سایت
This media is not supported in your browser
VIEW IN TELEGRAM
قسمت دوم

برای جلوگیری از محاسبات تکراری می توان encoder را یکبار اجرا کرد.

ـــــــــــــــــــــــــــــــــــــــــــــــــــــــــــــــــــ
#نکته_آموزشی #transformer #یادگیری_عمیق #شبکه_عصبی
ـــــــــــــــــــــــــــــــــــــــــــــــــــــــــــــــــــ
🌳 پشتیبانی | 🌺 کانال | 🌴 سایت
🍇 یکی از مفاهیمی که معمولا در مقالات زیاد دیده می شود reference frame یا frame of reference است.

ـــــــــــــــــــــــــــــــــــــــــــــــــــــــــــــــــــ
#یادگیری_عمیق #reference_frame #شبکه_کانولوشنی #capsule_network #ویدیو #نکته_آموزشی
ـــــــــــــــــــــــــــــــــــــــــــــــــــــــــــــــــــ
🌳 پشتیبانی | 🌺 کانال | 🌴 سایت
A Neural Representation of Sketch Drawings.pdf
5.3 MB
🫒 احتمالا نام quickdraw را شنیده باشید. یکی از مزیت هایی که این سایت دارد این است که دیتاهایش را با فرمت های مختلف از جمله عکس و svg در اختیار کاربران قرار می دهد. از روی این دیتاست مقالات و آنالیزهای بسیار جالبی بدست آمده است. در اینجا ما یکی از مقالات بسیار جالبی که وجود دارد را قرار می دهیم. اگر پروپزال ارشد را نداده اید، کار کردن روی این دادگان و ارایه مدلی جدید پیرامون نقاشی کار بسیار جالبی است.

پینوشت: مقاله را حتما بخوانید.

ـــــــــــــــــــــــــــــــــــــــــــــــــــــــــــــــــــ
#معرفی #معرفی_منبع #معرفی_منبع_آموزشی #یادگیری_عمیق #معرفی_مقاله
ـــــــــــــــــــــــــــــــــــــــــــــــــــــــــــــــــــ

🌴 سایت | 🌺 کانال | 🌳 پشتیبانی
Media is too big
VIEW IN TELEGRAM
Some ideas to utilize AI and learning in mobile applications!

ـــــــــــــــــــــــــــــــــــــــــــــــــــــــــــــــــــ
#یادگیری_عمیق #machine_learning #ویدیو #ایده
ـــــــــــــــــــــــــــــــــــــــــــــــــــــــــــــــــــ
🌳 پشتیبانی | 🌺 کانال | 🌴 سایت
🍓 در نظر گرفتن Inductive Bias

هر مدلی برای یادگیری نیاز به یکسری پیش فرضها دارد که لازم است برقرار باشند تا مدل یادگیری به درستی کار کند. این فرضها مواردی هستند که در حین اجرای روش یا در روابطش نیاز می شوند. برای عنوان کردن مثالی ساده، به ساخت ساختمان اشاره می کنیم. کسی که سابقه ساخت ساختمان داشته باشد، پیش از ساخت و با توجه به نیازها می داند که برای مثال لازم است که بودجه ای مشخص با ابزارآلاتی خاص فراهم آیند تا در حین ساخت ساختمان با مشکل روبه رو نشویم. به عبارتی، می توان گفت که وجود جرثقیل یکی از پیش فرضهایی است که لازم است در نظر گرفته شود تا ساخت ساختمان ممکن شود. در مورد مدل های یادگیری نیز چنین است. اگر مثلا گفته می شود که نیاز است در شبکه های عصبی داده های i.i.d داشته باشیم، به این خاطر است که در بدنه روش یادگیری این فرض به ما کمک می کند تا cost function مناسب داشته باشیم. یکی از مواردی که خیلی در ساخت مدل های عمیق اهمیت دارد، توجه به همین inductive bias است. در شبکه های کانولوشنی، فرض این است که ویژگی های پیکسل های کنار هم در سرتاسر عکس ممکن است تکرار شوند یا در شبکه های حافظه دار، توالی time step ها در نظر گرفته می شود. در این زمینه می توان نوآوری های جالبی با توجه به ساختارهای داده هایی که اصطلاحا structure ندارند، داشت.

ـــــــــــــــــــــــــــــــــــــــــــــــــــــــــــــــــــ
#نکته_آموزشی #inductive_bias #یادگیری_عمیق #یادگیری_ماشین #یادگیری
ـــــــــــــــــــــــــــــــــــــــــــــــــــــــــــــــــــ
🌳 پشتیبانی | 🌺 کانال | 🌴 سایت
🍔 نقطه بحرانی در ترنزفرمرها

در شبکه های ترنزفرمر محاسبات متفاوتی صورت می گیرد که سبب می شوند در نهایت بتوان نگاشتهایی غیر خطی از token ها یا embedding های ورودی داشته باشیم. یکی از قسمت های مهم در این شبکه ها، قسمت مربوط به ماتریس attention است. به صورت کلی اگر نگاه کنیم، هر query لازم است میزان attention با تمامی key ها را پیدا کند؛ بر همین اساس، یک ماتریس مربعی تشکیل خواهد شد که ماتریس attention نام دارد. دقت کردن به ابعاد این ماتریس در کاربردها و سخت افزارهای مختلف اهمیت بسیار بالایی دارد. اگر طول دنباله بالا باشد، این ماتریس تعداد المانهایش خیلی زیاد می شود؛ برای مثال، اگر طول دنباله n باشد، ابعاد ماتریس توان دوم n خواهد بود. مقالات زیادی در literature سعی کرده اند که به نحوی محاسبات مربوط به این ماتریس را کم کنند یا حتی به نوعی تغییراتی در آن ایجاد کنند. دنبال کردن مقالات این زمینه برای بهبود کیفیت شبکه های ترنزفرمر بسیار حیاتی است.

ـــــــــــــــــــــــــــــــــــــــــــــــــــــــــــــــــــ
#نکته_آموزشی #transformer #یادگیری_عمیق
ـــــــــــــــــــــــــــــــــــــــــــــــــــــــــــــــــــ
پشتیبانی | کانال | سایت | اینستاگرام | آپارات
This media is not supported in your browser
VIEW IN TELEGRAM
🧀 روش های deep RL به صورت کلی سعی می کنند که یک معیاری برای خوب بودن را بهبود ببخشند. این روند با تجربه کردن و آزمون و خطا انجام می شود. در حین این فرآیند، پاسخ های پیدا شده دارای تفاوت های ماهوی هستند. به گونه ای که نحوه حل مساله در طی یادگیری ممکن است به کل تغییر کند.

ـــــــــــــــــــــــــــــــــــــــــــــــــــــــــــــــــــ
#یادگیری_عمیق #یادگیری_عمیق_تقویتی #شبکه_عصبی #ویدیو
ـــــــــــــــــــــــــــــــــــــــــــــــــــــــــــــــــــ
پشتیبانی | کانال | سایت | اینستاگرام | آپارات
🍔🍟 بالاخره بعد از مدت ها کامیونیتی دیتا ساینسِ وبسایت Stack Exchange به صورت رسمی اسپانسر پیدا کرد و اگر به سایت رجوع کنید می بینید که حالت حرفه ای نظیر stackoverflow پیدا کرده است. یکی از مزایای اعضای این کامیونیتی در مقایسه با stats یا AI همین مجموعه این است که طیفشان گستره مناسبی دارد. اعضا تا میزان مناسبی با ریاضیات و برنامه نویسی آشنا هستند.

ـــــــــــــــــــــــــــــــــــــــــــــــــــــــــــــــــــ
#اطلاع_رسانی
ـــــــــــــــــــــــــــــــــــــــــــــــــــــــــــــــــــ
پشتیبانی | کانال | سایت | اینستاگرام | آپارات
This media is not supported in your browser
VIEW IN TELEGRAM
🌽 معرفی Kornia

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

ـــــــــــــــــــــــــــــــــــــــــــــــــــــــــــــــــــ
#معرفی_منبع #معرفی_منبع_آموزشی #یادگیری_عمیق #بینایی_ماشین
ـــــــــــــــــــــــــــــــــــــــــــــــــــــــــــــــــــ
پشتیبانی | کانال | سایت | اینستاگرام | آپارات
🥗🍕 اخیرا شاهد این هستیم که در خیلی از مقالات برای اینکه نسبت به rotation ویژگی های مناسب GCNN ها را داشته باشیم از group convolution استفاده می شود و GCNN ها در حال گرفتن جای CNN های معمولی در مقالات هستند. دقت کنید که این ایده با چیزی که در AlexNet دیده ایم متفاوت است. این ایده در مقاله Group Equivariant Convolutional Networks معرفی شد. بنابراین همچنان به اهمیت گروپ تئوری تاکید می کنیم. با توجه به ویژگی های گروپ کانولوشن، خیلی از کانولشوهای مطرح دیگر به چشم نمی آیند.

The axioms for a group are short and natural. . . . Yet somehow hidden behind these axioms is the monster simple group, a huge and extraordinary mathematical object, which appears to rely on numerous bizarre coincidences to exist. The axioms for groups give no obvious hint that anything like this exists. Richard Borcherds, in Mathematicians: An Outer View. . . . The one thing I would really like to know before I die is why the monster group exists.
John Conway, in a 2014 interview on Numberphile. Group

ـــــــــــــــــــــــــــــــــــــــــــــــــــــــــــــــــــ
#یادگیری_عمیق #جبر #شبکه_کانولوشنی #شبکه_عصبی #quote
ـــــــــــــــــــــــــــــــــــــــــــــــــــــــــــــــــــ
پشتیبانی | کانال | سایت | اینستاگرام | آپارات
🍋🍊 قبلا در مورد TDD و نوشتن تست صحبت کرده بودیم. یکی از کتابهای معروف تست نویسی در پایتون، Python Testing with Pytest، اخیرا چاپ جدیدش ارایه شده، به همین سبب تصمیم گرفتیم که وبلاگ نویسنده را که دارای بلاگها و پادکستهای جالبی است را معرفی کنیم. یکی از مزایای نوشتن تست در pytest سادگی کار کردن با این فریم ورک است که حتی برای نوشتن تست کیس های پیچیده با چالش خاصی رو به رو نمی شوید و نیاز به دانستن توابع متفاوت نیست. در ادامه می توانید از این وبلاگ دیدن کنید.

ـــــــــــــــــــــــــــــــــــــــــــــــــــــــــــــــــــ
#پایتون #TDD #معرفی_منبع_آموزشی #معرفی_منبع #معرفی_کتاب
ـــــــــــــــــــــــــــــــــــــــــــــــــــــــــــــــــــ
پشتیبانی | کانال | سایت | اینستاگرام | آپارات
شاهد این ماجرا هستیم که اخیرا در فیلم ها و کارتونهای زیادی روی عدد بیس تود و تاکید می شود. از سویی در سال 2022 میلادی هستیم که بیس تود ومین جام جهانی در آن اتفاق می افتد. معمولا وقتی مایند کنترلرها اینگونه روی چیزی تاکید می کنند، نشانه ای از اتفاقی مهم دارد؛ همچنین می دانیم که هر چهار سال یکبار با برگزاری جام جهانی، در نقطه ای از کره زمین ج نگی روی می دهد. ولی احتمالا اتفاقی که رخ خواهد داد، کمی بیشتر از این خواهد بود. سال پیش در فیلم جنگ فردا دقیقا به جام جهانی اشاره شده بود و شاهد این هستیم که روی عدد ذکر شده در کارتونهایی نظیر انکانتو به صورت غیر مستقیم تاکید شده بود. یک موضوعی که وجود دارد این است که اگر دقت کرده باشید، هم لوگوی جام جهانی امسال، هم لوگوی المپیک پارسال شکل گیت مانند داشتند. نمی دانیم در آبان و آذر شاهد چه باشیم ولی اتفاقاتی در جریان است. برای شفاف شدن یک مثال می زنیم. قبل از اینکه برج های معروف سقوط کنند، تاریخ این اتفاق بارها در ذهن مردم وارد شده بود؛ برای مثال، کتاب کیمیاگر که سالها قبل از آن اتفاق چاپ شده بود، اعداد را کد کرده بود. هیچ توجه کرده بودید که چرا کتاب تا آن میزان هایپ شد؟ برای اثبات سخنمان، کوئیلو کتابی دارد به نام Like a floating river. کتاب را اگر دیدید، ترجمه پرتغالی به انگلیسی را بررسی کنید. در آنجا صراحتا و به طرز عجیبی خودش را لو می دهد که به چه کسانی وابسته است.

ـــــــــــــــــــــــــــــــــــــــــــــــــــــــــــــــــــ
#خبر #تئوری_توطئه
2025/06/29 06:23:17
Back to Top
HTML Embed Code: