Pytorch: UserWarning: فهرس غير صالح للموتر 0 خافت

تم إنشاؤها على ٢٨ مارس ٢٠١٨  ·  10تعليقات  ·  مصدر: pytorch/pytorch

عندما قمت بتثبيت أحدث إصدار من pytorch برمز المصدر ، تلقيت الخطأ:

UserWarning: فهرس غير صالح للموتر 0 خافت. سيكون هذا خطأ في PyTorch 0.5. استخدم tensor.item () لتحويل موتر 0 خافت إلى رقم بايثون
train_loss + = loss.data [0]
التتبع (آخر مكالمة أخيرة): ......................... 10/2984 الخطوة: 61 مللي ثانية | Tot: 2s170ms | الخسارة: ملف "testgn.py" ، السطر 267 ، بتنسيق
قطار (حقبة)
ملف "testgn.py" ، السطر 199 ، في القطار
٪ (train_loss / (batch_idx + 1) ، 100. * صحيح / إجمالي ، صحيح ، إجمالي))
خطأ وقت التشغيل: لا يمكن تحويل القيمة إلى نوع uint8_t بدون تجاوز: 264

بالمناسبة ، يعمل الكود جيدًا على pytorch الذي تم تثبيته بواسطة conda.

التعليق الأكثر فائدة

قد تضطر إلى تغيير loss.data[0] إلى loss.item() كما هو موضح في رسالة الخطأ.

ال 10 كومينتر

أعتقد أنك بحاجة إلى حل مشكلة النوع الصحيح ، أعتقد أن نوع الصحيح الذي تحصل عليه هو "byteTensor".

يؤسفني سماع ذلك ، لقد واجهت هذه المشكلة من قبل ، وآمل أن تساعدك فكرتي.

قد تضطر إلى تغيير loss.data[0] إلى loss.item() كما هو موضح في رسالة الخطأ.

نعم ، هذا أحد الآثار الجانبية لدمج المتغير / الموتر. اتبع رسالة الخطأ (أو قم بتثبيتها بشكل صريح على عوامة باستخدام float(loss)

/home/kerax/usys/anaconda3/lib/python3.6/site-packages/ipykernel_launcher.py:31: UserWarning: فهرس غير صالح للموتر 0 باهت. سيكون هذا خطأ في PyTorch 0.5. استخدم tensor.item () لتحويل موتر 0 خافت إلى رقم بايثون
/home/kerax/usys/anaconda3/lib/python3.6/site-packages/ipykernel_launcher.py:32: UserWarning: فهرس غير صالح للموتر 0 باهت. سيكون هذا خطأ في PyTorch 0.5. استخدم tensor.item () لتحويل موتر 0 خافت إلى رقم بايثون

Iter: 0، D: 1.351، G: 0.6499

حصلت على نفس الخطأ ولكن أصلحته مع الخسارة.item () كما [vishwakftw] المذكورة أعلاه. شكرا لك

شكرًا لـ [vishwakftw] ، هذه هي مشكلة تحويل pytorch

أتلقى هذا الخطأ ، هل يعرف أي شخص كيفية حله ، شكرًا مقدمًا!


IndexError Traceback (آخر مكالمة أخيرة)

في()
21 save_file_name = 'jigsaw_cifar100_e {} _ s {}. pk'.format (n_epochs، sinkhorn_iter)
22 history = train_model (نموذج ، معيار ، مُحسِّن ، أداة تحميل قطار ، أداة تحميل_صادقة ،
---> 23 n_epochs = n_epochs ، save_file_name = save_file_name)
24

في train_model (النموذج ، المعيار ، المحسن ، أداة تحميل القطار ، أداة تحميل التحقق من الصحة ، n_epochs ، save_file_name)
38 محسن .zero_grad ()
39 مخرجات = نموذج (x_in)
---> 40 n_correct_pred + = compute_acc (vecmat2perm2x2 (مخرجات) ، perms ، خطأ). البيانات [0]
41 خسارة = المعيار (النواتج ، y_in)
42 الخسارة. backward ()

IndexError: فهرس غير صالح للموتر 0 خافت. استخدم tensor.item () لتحويل موتر 0 خافت إلى رقم بايثون

أتلقى هذا الخطأ ، هل يعرف أي شخص كيفية حله ، شكرًا مقدمًا!


IndexError Traceback (آخر مكالمة أخيرة)

في()
21 save_file_name = 'jigsaw_cifar100_e {} _ s {}. pk'.format (n_epochs، sinkhorn_iter)
22 history = train_model (نموذج ، معيار ، مُحسِّن ، أداة تحميل قطار ، أداة تحميل_صادقة ،
---> 23 n_epochs = n_epochs ، save_file_name = save_file_name)
24

في train_model (النموذج ، المعيار ، المحسن ، أداة تحميل القطار ، أداة تحميل التحقق من الصحة ، n_epochs ، save_file_name)
38 محسن .zero_grad ()
39 مخرجات = نموذج (x_in)
---> 40 n_correct_pred + = compute_acc (vecmat2perm2x2 (مخرجات) ، perms ، خطأ). البيانات [0]
41 خسارة = المعيار (النواتج ، y_in)
42 الخسارة. backward ()

IndexError: فهرس غير صالح للموتر 0 خافت. استخدم tensor.item () لتحويل موتر 0 خافت إلى رقم بايثون

اتبع التعليمات الواردة في رسالة الخطأ

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