به بخش پرسش و پاسخ یادگیری عمیق خوش آمدید,
این نسخه آزمایشی سایت است.
لطفا به نکات زیر توجه کنید:
  • برای ارتباط با مدیران میتوانید از صفحه مدیران اقدام کنید.
  • سوال و جواب ها باید به زبان فارسی باشند. استفاده از زبان انگلیسی یا فینگلیش برای پاسخ دادن مجاز نیست.
  • لطفا بعد از پرسش سوال لینک سوال خود را در گرو تلگرام (Iran Deep Learning Group) معرفی کنید تا سریعتر به جواب برسید. برای دسترسی به آخرین لینک از منابع یادگیری استفاده کنید
  • لطفا بجای عکس از متن استفاده کنید. اگر متون طولانی هستند از سایت pastebin.com برای اپلود استفاده کرده و لینک حاصل را در سوال خود قرار دهید. برای قرار دادن تصویر ، از بخش ارسال تصویر ادیتور سایت استفاده کنید.
  • بعد از دریافت پاسخ، بهترین پاسخ را از طریق کلیک بر روی علامت تیک انتخاب کنید
  • اگر با خطا و یا مشکلی مواجه شدید از بخش تماس با ما در انتهای صفحه و یا ایمیل Coderx7@gmail.com موضوع را اطلاع دهید.

با تشکر

دسته بندی ها

0 امتیاز

در مستندات و منابعی مثل Inception گوگل و Network in Network گفته شده لایه های کانولوشن با سایز فیلتر ۱*۱ از نظر ریاضیاتی دقیقا عملکرد مشابهی با لایه های Fully connected دارند. در لایه های fully connected یک نورون به همه ی نورون های دیگر متصل هست اما در 1x1 convolution یک نورون فقط به نورون های مقابلش در همه ی چنل ها متصل هست. پس چرا این دو را از نظر ریاضیاتی با هم یکسان در نظر می گیرند در حالیکه تعداد پارامتر های Fully connected خیلی بیشتر هست و با بقیه ی پیکسل ها هم در ارتباط هست؟

توسط (397 امتیاز)

1 پاسخ

+2 امتیاز
 
بهترین پاسخ

سلام .
لایه کانولوشن 1در1 هم تقریبی از یه لایه fully connected هست عین اون رفتار نمیکنه.
لایه کانولوشن هم فیلد ادراکیش تمام تصویر/فیچرمپ ورودی هست. یعنی به کل ورودی متصل هست هر نورون . نه به نورون جلوییش.
هر نورن یک فیچرمپ تولید میکنه. برای اینکه عملیات بسرعت و خیلی بهینه پیاده سازی بشه بجای یک نورون چند کپی از اون رو ایجاد میکنن . همونطور که میدونید همه نورون های موجود در یه برش ستونی دارای وزن یکسان هستن و همه هم یه تابع غیرخطی روشون اعمال میشه . این یعنی همه یک نورون هستن که صرفا برای داشتن پیاده سازی بهینه به این شکل پیاده سازی شدن.

توسط (4.3k امتیاز)
انتخاب شده توسط
سلام...ببخشید یه سوالی هم برای من پیش امده....به عنوان مثال ما در معماری الکس نت که fc6 , 7 , 8  رو داریم ، باید 3 تا لایه کانولوشن 1*1 قرار بدهیم یا یدونه کانولوشن 1*1 کافیه؟
همینطور طریقه پیاده سازیش رو هم ممنون میشم راهنمایی بفرمایید...متشکرم
سلام . میتونید بجای هر فولی کانکتد شما یه یک در یک بزارید. میتونید هم شبکه رو تغییر بدید بجای اینکه سه تا لایه فولی کانکتد داشته باشید یه لایه بصورت 1 در 1 داشته باشید .میتونید معادل سازی کنید برای اینکار یک فیلتر به اندازه توده ورودی مشخص میکنید (مثلا اگر توده ورودی به fc6 7در7 باشه شما یه لایه کانولوشن 7در7 تعریف میکنید و بعدش هم دوتا لایه کانولوشن 1 در 1 در ادامه تا fc7 , fc8 رو پیاده کرده باشید ) طراحی دست خود شماست .
سلام...ببخشید استفاده از این لایه مزیتی داره؟ برای چی باید از این لایه بجای لایه تماما متصل استفاده کرد؟
...