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

با تشکر

دسته بندی ها

0 امتیاز

با سلام من میخوام این مدل رو برا دیتاست خودم بسازم 60*60*1 و 124 تا کلاس منتهی این ارور رومیده

Error when checking input: expected input_6 to have shape (124,) but got array with shape (1,)

و اینم مدلم:

      input_shape = [60, 60, 1]
       num_routing = 3
       NCLASSES =124
      x = layers.Input(shape=input_shape)
      conv1 = layers.Conv2D(filters=256, kernel_size=9, strides=1, padding='valid', 
      activation='relu',
      name='conv1')(x)
      primarycaps = PrimaryCap(conv1, dim_vector=8, n_channels=32, kernel_size=9, strides=2,
      padding='valid')
     digitcaps = DigitCaps(num_capsule=NCLASSES, dim_vector=16, num_routing=num_routing,
     name='digitcaps')(primarycaps)
     v_j_abs = Length(name='v_j_abs')(digitcaps)
     y = layers.Input(shape=(NCLASSES,))

    def Mask(inputs):
  return K.batch_dot(inputs[0], inputs[1], [1, 1])

   masked = layers.Lambda(Mask)([digitcaps, y])
    l = layers.Dense(512, activation='relu')(masked)
    l = layers.Dense(1024, activation='relu')(l)
    l = layers.Dense(3600, activation='sigmoid')(l)
    print(l.shape)
    decoded = layers.Reshape(target_shape=input_shape, name='decoded')(l)
    print(decoded)
    model = keras.models.Model([x, y], [v_j_abs, decoded])
    model.summary()

ممنون میشم چک کنید کد اصلی هم اینجاست روی mnist
https://github.com/leoniloris/CapsNet/blob/master/CapsNet-keras-tf_back.ipynb

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

1 پاسخ

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

سلام
باید کد لود کردن دیتا هاتون رو هم بذارید تا مطمئن بشیم
احتمال داره شما به جای اینکه به صورت one-hot خروجی رو داده باشید، فقط به صورت عدد صحیح دادید.
اگه اینطوری باشه باید قبلش از to_categorical استفاده کنید

توسط (1.6k امتیاز)
انتخاب شده توسط
توی خود کد اصلی ک لینک گذاشتم تعداد کلاس رو 10 داده برا mnist اصن بصورت one hot نیست
چرا، همون اول که اومده از to_categorical استفاده کرده برای همینه
keras.utils.to_categorical(y_train, num_classes=NCLASSES)
خیلی ممنون مشکل حل شد
...