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

با تشکر

دسته بندی ها

+1 امتیاز

با درود و احترام،
من یک سری پایگاه داده دارم که دارای سایز 480 در 640 هست....ایا راهی هست این تصاویر به تصاویر 28 در 28 بدون از دست دادن کیفیت تبدیل شوند؟

مثلا resize ....

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

1 پاسخ

0 امتیاز

به هر حال با resize کردن شما دارید information دور می ریزید. به این دلیل که عمل عکسش باعث نمی شه دوتا عکس 480 در 640 یکسان داشته باشید و حتما اطلاعات از بین می روند حین کوچک کردن. پیشنهاد می دم از لایه های کانولوشن با استراید بالا به شرطه که overlap داشته باشند کرنل ها و همچنین max-pooling با استراید نسبتا کوچیک استفاده کنید. اجازه بدید در طول شبکه اطلاعات کوچیک بشن. ابعاد ورودی زیاد تعداد پارامترهای شبکه رو زیاد نمی کنند. می تونید با تعیین پدینگ و استراید خودتون تعداد پارامترها رو کنترل کنید.

توسط (165 امتیاز)
سپاس از راهنمایی تون....
این راهکاری رو که فرمودید چطور می تونم در دستورات زیر عملی کنم؟

model = Sequential()

model.add(Conv2D(64, kernel_size=(3, 3), activation='relu', input_shape=input_shape))
model.add(MaxPooling2D(pool_size=(2, 2)))

model.add(Conv2D(128, kernel_size=(3, 3), activation='relu', padding='same'))
model.add(MaxPooling2D(pool_size=(2, 2)))

model.add(Conv2D(256, kernel_size=(3, 3), activation='relu', padding='same'))
model.add(MaxPooling2D(pool_size=(2, 2)))

model.add(Dropout(0.5))
model.add(Flatten())
model.add(Dense(128, activation='relu'))
model.add(Dropout(0.5))
model.add(Dense(n_classes, activation='softmax'))

model.compile(loss=['categorical_crossentropy'], optimizer='adam', metrics=['accuracy'])

model.summary()
vaqti ke darid ye laye, max-pooling ya convolution ezafe mikonid, parametr haye in tabe stride va padding ro neshun mide:
be farz agar padding ii mikhahid ke size taghir nakone az *same* padding estefade konid va agar mikhahid banabe size va stride kuchik she az *valid* estefade konid. baraye stride ham masalan stride = (5, 5) miad va har bar kernele convolution ro 5 bar jelo mibare.
tooye code Conv2D stride va padding jozve parametr hash hastan
movafaq bashid
...