আমার কেরাস মডেলটি পটভূমিটি চিনতে কেন শেখে?


9

আমি পূর্ব- প্রশিক্ষিত মডেল (যা সেই ডেটাসেটেও প্রশিক্ষিত ছিল) ব্যবহার করে পাস্কাল ভিওসি ২০১২২ তে ডিপ্লাবভ ৩ + এর এই কেরাস বাস্তবায়নটি প্রশিক্ষণের চেষ্টা করছি ।

যথার্থতার সাথে দ্রুত 1.0 এ রূপান্তরিত করার সাথে আমি অদ্ভুত ফলাফল পেয়েছি:

5/5 [==============================] - 182s 36s/step - loss: 26864.4418 - acc: 0.7669 - val_loss: 19385.8555 - val_acc: 0.4818
Epoch 2/3
5/5 [==============================] - 77s 15s/step - loss: 42117.3555 - acc: 0.9815 - val_loss: 69088.5469 - val_acc: 0.9948
Epoch 3/3
5/5 [==============================] - 78s 16s/step - loss: 45300.6992 - acc: 1.0000 - val_loss: 44569.9414 - val_acc: 1.0000

মডেলটি পরীক্ষা করে 100% নির্ভুলতাও দেয়।

আমি প্রশিক্ষণের আগে এবং পরে এলোমেলো চিত্রের একই সেটটিতে ভবিষ্যদ্বাণীগুলি প্লট করার সিদ্ধান্ত নিয়েছি এবং দেখেছি যে মডেলটি সবকিছুকে কেবল পটভূমিতে বলতে উত্সাহিত করা হয় (এটি পাস্কাল ভিওসি ২০১২ এর প্রথম শ্রেণি)।

এখানে চিত্র বর্ণনা লিখুন

এখানে চিত্র বর্ণনা লিখুন

আমি গভীর শেখার পক্ষে যথেষ্ট নতুন এবং এটি কোথা থেকে আসতে পারে তা নির্ধারণের জন্য সহায়তা প্রয়োজন।

আমি ভেবেছিলাম সম্ভবত এটি আমার ক্ষতি ফাংশন হতে পারে, যা আমি সংজ্ঞায়িত করেছি:

def image_categorical_cross_entropy(y_true, y_pred):
    """
    :param y_true: tensor of shape (batch_size, height, width) representing the ground truth.
    :param y_pred: tensor of shape (batch_size, height, width) representing the prediction.
    :return: The mean cross-entropy on softmaxed tensors.
    """
    return tf.reduce_mean(tf.nn.softmax_cross_entropy_with_logits_v2(logits=y_pred, labels=y_true))

আমার টেনারগুলির সঠিক আকার আছে কিনা তা নিয়ে আমি কিছুটা অনিশ্চিত। আমি .tfrecordফাইলগুলি লোড করতে টিএফ এর ডেটাসেট এপিআই ব্যবহার করছি এবং আমার টিকাটি টেনসর আকার ধারণ করে (batch_size, height, width)। কি (batch_size, height, width, 21)প্রয়োজন হবে? মডেলের অভ্যন্তর থেকে অন্যান্য ত্রুটিগুলি উত্থাপিত হয় যখন আমি টিকাতে 21 টি চিত্র (প্রতিটি শ্রেণির জন্য একটি) টেনসরতে টীকাটি আলাদা করার চেষ্টা করি:

tensorflow.python.framework.errors_impl.InvalidArgumentError: Incompatible shapes: [12,512,512,21] vs. [12,512,512]
         [[Node: metrics/acc/Equal = Equal[T=DT_INT64, _device="/job:localhost/replica:0/task:0/device:GPU:0"](metrics/acc/ArgMax, metrics/acc/ArgMax_1)]]
         [[Node: training/Adam/gradients/bilinear_upsampling_2_1/concat_grad/Slice_1/_13277 = _Recv[client_terminated=false, recv_device="/job:localhost/replica:0/task:0/device:GPU:1", send_device="/job:localhost/replica:0/task:0/device:CPU:0", send_device_incarnation=1, tensor_name="edge_62151_training/Adam/gradients/bilinear_upsampling_2_1/concat_grad/Slice_1", tensor_type=DT_FLOAT, _device="/job:localhost/replica:0/task:0/device:GPU:1"]()]]

আপনার সাহায্যের জন্য ধন্যবাদ!


5
এখানে বেশ কয়েকটি আইটেম বিবেচনা করতে হবে, আমি প্রায় জানি না কোথা থেকে শুরু করতে হবে (1) আপনি প্রশিক্ষণের জন্য 5 এর একটি নমুনা আকার ব্যবহার করছেন ??? (২) কী, যদি কোনও হয় তবে প্রাক-প্রক্রিয়াজাতকরণ আপনি আপনার চিত্রগুলিতে করছেন? আমার অনুভূতি আছে যে উত্তরটির মধ্যে রয়েছে এবং (3) আপনাকে আপনার মডেলটিতে আরও অনেক তথ্য সরবরাহ করতে হবে। আপনার কাছে কতগুলি লেবেলযুক্ত নমুনা রয়েছে? কতগুলি সম্ভাব্য বিভাগ? আপনার কি একটি ভারসাম্য প্রশিক্ষণ সেট আছে? (4) আপনার নির্ভুলতার 1.0 এর অর্থ হ'ল কিছুই হ'ল না কারণ আপনার ক্ষতি অতি-উচ্চ এবং ক্রমবর্ধমান। আপনার ক্ষতির উচিত হ্রাস হিসাবে আপনার সঠিকতা উন্নত।
I_Play_With_Data

(1) আমি 12 মাপের ব্যাচগুলি ব্যবহার করছি তবে এটি আমার মনে হয় এটি অপ্রাসঙ্গিক। আমি এখানে কেবলমাত্র 5 টি ধাপের 3 টি ছোট ছোট পর্ব দেখিয়েছি কারণ এটি কত দ্রুত রূপান্তরিত হয়। (২) আমার প্রিপ্রোসেসিং প্রতিটি ইমেজ এবং এর সাথে সম্পর্কিত এনেটেশনের জন্য কিছু বৃদ্ধি এবং পুনরুদ্ধার (সম্ভবত ক্রপিং) থেকে 512x512 নিয়ে গঠিত। (৩) পাস্কাল ভিওসি ২০১২-তে প্রায় 11,500 লেবেলযুক্ত চিত্র রয়েছে Gran অনুমোদিত এই বেশিরভাগ কাগজপত্র এই ডেটাসেটে 85% + এমআইওউতে পৌঁছে যায়, আমি ধরে নিব এটি ভারসাম্যযুক্ত। এই ডেটাসেটে 20 টি বিভিন্ন বিভাগ রয়েছে যা মোট 21 টির জন্য পটভূমির জন্য বা ig অস্পষ্ট »রয়েছে।
ম্যাট

আমি কৌতুহলী। আপনি কি আপনার মডেলের ফলাফলের কারণ খুঁজে পেয়েছেন?
মার্ক.এফ

3
আপনি যদি নিজের কোডটি ভাগ করে নেন তবে ভুলটি পাওয়া সম্ভব হবে।
Dmytro Prylipko

1
প্রাক-প্রশিক্ষিত মডেলটি 3 প্রাথমিক যুগের মধ্যে 100% নির্ভুলতা পাওয়ার জন্য কোনও উপায় খুঁজে পেয়েছিল, এটি একইভাবে ডেটাটি ব্যবহার করা হয়েছিল যা মূলত ব্যবহৃত হয়েছিল, আমাকে ত্রুটিযুক্ত মনে করে যে আপনার প্রশিক্ষণ লেবেলগুলি ভুল, সম্ভবত লেবেলের সাথে সংযুক্ত সমস্ত সেট পটভূমি. যাই হোক না কেন, এই ইস্যুটির থ্রেডটি একবার দেখুন , যেখানে লোকেরা তাদের সমস্যাগুলি এবং মডেলটিকে সুরক্ষিত করার সমাধানগুলি নিয়ে আলোচনা করে। মডেলটি অগত্যা ভাঙা হয়নি, এবং টেনসরফ্লোতে ব্যাচনর্ম বাগটি সম্বোধন করা যেতে পারে।
n1k31t4

উত্তর:


1

আপনার মডেল অত্যধিক মাননীয়। প্রতিটি যুগে কেবল 5 টি চিত্র থাকে। মডেল প্রতিটি চিত্রের উত্তর "মুখস্থ" করছে।

ওভারফিট করার সুযোগটি কমাতে চিত্রের সংখ্যা বাড়িয়ে দিন। প্রতিটি বিভাগের অবজেক্টের জন্য কয়েক হাজার উদাহরণ চিত্র থাকতে হবে।

আমাদের সাইট ব্যবহার করে, আপনি স্বীকার করেছেন যে আপনি আমাদের কুকি নীতি এবং গোপনীয়তা নীতিটি পড়েছেন এবং বুঝতে পেরেছেন ।
Licensed under cc by-sa 3.0 with attribution required.