Pytorch: رسالة خطأ محيرة عند تعيين المساحة المتروكة على عائم في nn.Conv1d

تم إنشاؤها على ١٦ مايو ٢٠١٧  ·  3تعليقات  ·  مصدر: pytorch/pytorch

عندما أقوم بإنشاء طبقة Conv وأقوم بتمرير الحشو كعوامة عن طريق الخطأ ، أحصل على رسالة خطأ محيرة ، مما يجعل من الصعب تصحيح الأخطاء. أيضًا ، يظهر الخطأ عندما أقوم بتمريرة إلى الأمام.

self.cnn = nn.Conv1d(in_channels=self.input_size, out_channels=self.num_filters,kernel_size=kw_l,padding=1.0)
self.cnn(inp)  # error is thrown in this line

رسالة الخطأ هي "RuntimeError: الوسيطة 1 يجب أن تكون tuple من int ، وليس tuple"

ال 3 كومينتر

للتوضيح ، أعتقد أنه قد يكون من المفيد أن يتم تحديث RuntimeError ليشمل نوع المجموعة غير الصحيحة ، لذلك من الواضح أن النوع من المتوقع أن يكون int.

import torch
import torch.nn as nn
from torch.autograd import Variable
input = Variable(torch.randn(1, 1, 10))
output = nn.Conv1d(1, 1, 3, padding=1)(input)  # fine
output = nn.Conv1d(1, 1, 3, padding=1.0)(input)  # error

تم طرح رسالة الخطأ هذه بواسطة TupleParser ، وعند هذه النقطة لا تعرف المعلمة التي يتم تحليلها ولكن فقط فهرس المعلمة (في قائمة args).

نظرًا لأن المحلل اللغوي tuple يُستخدم فقط لتحليل المعلمات إلى autograd.functions.* يمكننا توسيع وظائف TupleParser::parse لتأخذ أيضًا اسم المعلمة حتى يتمكن من تمريرها إلى TupleParser::invalid_type إلى رمي خطأ أيهما أكثر وضوحا؟

أو يمكننا فقط إضافة هذه الشيكات على مستوى بيثون؟

apaszkesoumith يسعدني إرسال العلاقات العامة ، إذا سمحت لي بمعرفة الطريقة التي تفضلها / بديل.

إضافة أسماء البارامترات إلى المحلل اللغوي tuple تبدو جيدة بالنسبة لي

هل كانت هذه الصفحة مفيدة؟
0 / 5 - 0 التقييمات

القضايا ذات الصلة

eliabruni picture eliabruni  ·  3تعليقات

soumith picture soumith  ·  3تعليقات

soumith picture soumith  ·  3تعليقات

kuangliu picture kuangliu  ·  3تعليقات

miguelvr picture miguelvr  ·  3تعليقات