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

با تشکر

دسته بندی ها

0 امتیاز

سلام
می تونید یک شبکه CIFAR از پیش آموزش دیده به من معرفی کنید تا برای finetune دیتاست خودم استفاده کنم. من قبلا از این https://gist.github.com/mavenlin/e56253735ef32c3c296d استفاده کردم ولی مشکل داشت و نمی شد وزن هاش رو ویژولایز کرد.
یه راهنماییی کلی هم میشه بکنیدکه چگونه باید تشخیص بدیم کدوم مدل روی چه دیتاستی عملکرد بهتری خواهد داشت؟منظورم اینه من در ابتدای کار با چه معیاری می تونم انتخاب کنم سراغ چه مدلی باید برم
دیتاست من 1000 تا عکس 1500*1500هست که می خوام به 25 کلاس تقسیم کنم.که چون میخواستم از Cifar استفاده کنم به بچ های 32*32 تقسیم کردم که الان 2 میلیون عکس 32*32 دارم

شبکه ای که رو دیتاست CIFAR آموزش دیده و به شبکه CIFAR معروف شده و شبکه ای که روی MNIST آموزش داده شده و به MNIST معروف شده نام اصلیش چی هست؟

توسط (105 امتیاز)
ویرایش شده توسط

1 پاسخ

+1 امتیاز

سلام
میتونید از این هم استفاده کنید.
اول باید نیازمندی های کارتون رو مشخص کنید. عموما اینطوریه که اول با بهترین مدلی که مثلا روی ایمیج نت تونسته دقت خوبی بدست بیاره شروع میکنید و روی دیتاست خودتون فاین تون میکنید. بعد دقتش رو ثبت میکنید. حالا میرید روی معماری های سبک تر که در عین حالی که دقت بالایی میدن (برابر یا نزدیک به مدل سنگین تر) سربار پردازشی خیلی کمتری داشته باشن.
مثلا یکی ممکنه با AlexNet استارت بزنه بببینه خوبه حالا میره میگیرده میبینه یک معماری دیگه هست به اسم Squeezenet که 50 برابر از الکس نت کوچیکتره و سربار کمتری داره ولی دقت بهتری نسبت به اون ارائه میده (الکس نت مثلا 200 مگ فضا میگیره و 60 میلیون پارامتر داره اما اسکویز نت دو سه مگابایت میگیره و 1 و نیم میلیون پارامتر داره)
یا یکی میره با VGGNet کار میکنه که دقتش بالاس ولی 500 600 مگ فضا اشغال میکنه و 130 140 میلیون پارامتر داره و خیلی سنگینه . بعد میبینه معماری های دیگه ای هستن مثل گوگل نت که 5 6 میلیون پارامتر داره اما دقت بهتری ارائه میده. یا باز دوباره معماری بنام MobileNet هست که 4 5 میلیون پارامتر داره و از دوتای قبلی بهتر عمل کرده مثلا.

به همین صورت در مورد CIFAR10 و امثالهم (دیتاست های متوسط و کوچیک ) میتونید پیش برید. میبینید مثلا معماری های مطرح چیان؟ میبنیید ResNet هست یا VGGNet و یا DenseNet که هرکدوم دقت های خیلی بالایی گرفتن . بعد میبینید مثلا DenseNet از بقیه خیلی بهتر بوده اما سربارش زیاد بود در همونجا میبینید یه معماری دیگه هست WRN که از ResNet خیلی بهتره اما کمی از دنزنت بدتر و به همین شکل به simpleNet میرسید که در همین قافیه هاست .
بعد بر اساس نیازتون نگاه میکنید کدوم رو انتخاب کنید.

بطور خلاصه .
1.عموما یک مدل که دقت خوبی روی ایمیج نت گرفته انتخاب میکنید (دقت و سربار رو نگاه میکنید و یک مدل که دقت خوب با سربار کمتر داره انتخاب میکنید. مثلا موبایل نت یا گوگل نت) و بعد رو دیتاست خودتون فاین تون میکنید.
2.اگه مدل کوچکتری مورد نیاز هست میرید روی مدلهایی که روی دیتاستهایی مثل سیفار10 و امثالهم ترین کردن و بعد مثل ایمیج نت رفتار میکنید یک مدلی که سربار کمتر و دقت بالاتری داره انتخاب میکنید.

شبکه ها اسم های مختلفی دارن . مثل DenseNet یا ResNet یا Wide Residual Network یا همون WRN .
سیفار خودش اسم یه موسسه اس (انستیتو Canadian Institute for Advanced Research ) و چندتا دیتاست داره یکیش CIFAR10 هست که خیلی معروفتره (CIFAR100 هم هست) . این دیتاست ها خیلی معروفن و معمولا قدم اول برای معرفی معماری ها هستن خصوصا برای کسایی که سخت افزار قوی برای ترین روی ایمیج نت ندارن .
اون معماری اولی که لینکشو دادید معماری Network in Network بود. که روی سیفار10 ترین شده بود.
به همین شکل پیش میرید. البته این مثالهایی که زدم بیشتر برای ایده دادن بودن وگرنه تعداد معماری ها خیلی زیاده و اینجا نمیشه بازش کرد و همه رو قیاس کرد یا توضیح داد

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

توسط (4.3k امتیاز)
ببخشید منظورتون از ایمیج نت اون مدل هایی  هست که روی تصویر خوب جوای دادند؟
می تونید لینکی بهم معرفی کنید که راجع به انواع مدل ها و دقت و سربار و... صحبت کرده باشه؟


درمورد دیتاست:
من بر اساس یک مقاله که لینکش رو براتون ارسال میکنم ابتدا 100 تصویر داشتم و با چرخش زاویه تصاویر از 10 تا 90 درجه 900 تصویر دیگه هم بدست آوردم در نتیجه دیتاست من شامل  1000 تا عکس 1500*1500هست که می خوام به 25 کلاس تقسیم کنم(از هر کلاس 40عکس).من تصویرهام رو ریسایز نکردم.هر عکس که سایز 1500*1500 داشته رو به بلاک های 32*32  تبدیل کردم.که هر عکس تقسیم به  تقریبا 2116 عکس دیگه شد. که در نهایت تعداد عکسام 1000*2116 عکس 32*32 شد.دلیل تقسیم به بلاک های 32 *32 هم این بود که سیفار هم از عکسها با همین سایز استفاده می کند.
لینک مقاله
https://www.sciencedirect.com/science/article/pii/S0957417417303032
من مثل این مقاله روی دیتاست کاشی گرانیت کار میکنم ،باید برم سراغ مدل هایی که روی سیفار 10 بهتر جواب دادن یا ایمیج نت؟ اینطور که من متوجه شدم در ایمیج نت توصیف تصویرمد نظر هست
سلام. نه منظور مدلهایی هست که روی دیتاست ایمیج نت ترین شدن. در سایت، من در مورد بعضی ها صحبت کردم سایت رو ببینید. علاوه بر اون یه سرچ کوچیک هم کنید اطلاعات مختلفی پیدا میکنید.

من در مورد ماهیت تصویر یا کار شما اطلاعاتی ندارم اما با توضیحاتتون بنظر میاد این تصاویر خودشون از تصاویر کوچکتری تشکیل شدن که تقسیم اونها مشکلی ایجاد نمیکنه برای شما اگر اینطور هست مساله ای نیست.
اگر از ایمیج نت استفاده کنید نتیجه نهاییتون بهتر میشه چون فیلترهای متنوع ترو خیلی بهتری نسبت به سیفار10 بدست میده.
...