কেরাসে প্রশিক্ষণের মধ্যে val_loss
এবং এর মধ্যে পার্থক্য কী loss
?
যেমন
Epoch 1/20
1000/1000 [==============================] - 1s - loss: 0.1760, val_loss: 0.2032
কিছু সাইটগুলিতে আমি পড়েছি যে বৈধতার উপর, ড্রপআউট কাজ করছে না।
কেরাসে প্রশিক্ষণের মধ্যে val_loss
এবং এর মধ্যে পার্থক্য কী loss
?
যেমন
Epoch 1/20
1000/1000 [==============================] - 1s - loss: 0.1760, val_loss: 0.2032
কিছু সাইটগুলিতে আমি পড়েছি যে বৈধতার উপর, ড্রপআউট কাজ করছে না।
উত্তর:
val_loss
আপনার ক্রস-বৈধতা ডেটার জন্য ব্যয় ফাংশনের মান এবং হ্রাস হ'ল আপনার প্রশিক্ষণ ডেটার জন্য ব্যয় কার্যকারিতার মান। বৈধতার ডেটাতে, ড্রপ আউট ব্যবহার করে নিউরনগুলি এলোমেলো নিউরনগুলি ফেলে না। কারণটি হ'ল প্রশিক্ষণের সময় আমরা অতিরিক্ত-ফিটনেস এড়ানোর জন্য কিছু শব্দ যোগ করার জন্য ড্রপ আউট ব্যবহার করি। ক্রস-বৈধকরণ গণনা করার সময়, আমরা প্রশিক্ষণ পর্বে নয়, পুনরুদ্ধার পর্যায়ে আছি। আমরা নেটওয়ার্কের সমস্ত ক্ষমতা ব্যবহার করি।
আমাদের প্রিয় এক বন্ধু ধন্যবাদ, আমি উদ্ধৃত এবং সামগ্রী ব্যাখ্যা এখানে যা দরকারী।
validation_split
: 0 এবং 1 এর মধ্যে ভেসে উঠুন প্রশিক্ষণের ডেটার ভগ্নাংশ বৈধতা ডেটা হিসাবে ব্যবহার করতে। মডেল প্রশিক্ষণের ডেটাগুলির এই ভগ্নাংশটি পৃথক করবে, এটির উপর প্রশিক্ষণ দেবে না এবং প্রতিটি যুগের শেষে এই ডেটাতে হওয়া ক্ষয় এবং কোনও মডেল মেট্রিকের মূল্যায়ন করবে। বৈধতা ডেটা স্থানান্তরিত এক্স এবং ওয়াই ডেটার সর্বশেষ নমুনাগুলি থেকে বদলে যাওয়ার আগে নির্বাচন করা হয়।
validation_data
: টিপল (এক্স_ওয়াল, ওয়_ওয়াল) বা টিপল (এক্স_ওয়াল, ওয়_ওয়াল, ভাল_সাম্পল_ওয়েট) যার উপর নির্ভর করে প্রতিটি যুগের শেষে ক্ষতি এবং যে কোনও মডেল মেট্রিকের মূল্যায়ন করতে হবে। এই ডেটা সম্পর্কে মডেলকে প্রশিক্ষণ দেওয়া হবে না। এটি বৈধতা_স্প্লিটকে ওভাররাইড করবে।
যেমন আপনি দেখতে পারেন
fit(self, x=None, y=None, batch_size=None, epochs=1, verbose=1, callbacks=None, validation_split=0.0, validation_data=None, shuffle=True, class_weight=None, sample_weight=None, initial_epoch=0, steps_per_epoch=None, validation_steps=None)
fit
ব্যবহৃত পদ্ধতিতে Keras
ভ্যালিডেশন_স্প্লিট নামের একটি প্যারামিটার রয়েছে, যা প্রতিটি যুগের পরে তৈরি হওয়া মডেলটির মূল্যায়নের জন্য ব্যবহৃত ডেটার শতাংশ নির্দিষ্ট করে। এই পরিমাণের ডেটা ব্যবহার করে মডেলটি মূল্যায়ন করার পরে, val_loss
আপনি যদি ভার্বোস সেট করে রেখেছেন তা জানিয়ে দেওয়া হবে 1
; তদ্ব্যতীত, ডকুমেন্টেশন যেমন স্পষ্টভাবে নির্দিষ্ট করে, আপনি validation_data
বা হয় ব্যবহার করতে পারেন validation_split
। আপনার মডেল ডেটা বেশি ফিট করে কি না তা খতিয়ে দেখতে ক্রস-বৈধতা ডেটা ব্যবহার করা হয়। আমাদের মডেলটির সাধারণীকরণের ক্ষমতা আছে কি না তা আমরা এটি বুঝতে পারি।
dropout
হয় নাNone
), ড্রপআউট কেবলমাত্র প্রশিক্ষণের সময় প্রয়োগ করা হয় (অর্থাত্ বৈধতার সময় কোনও ড্রপআউট প্রয়োগ করা হয় না)। যেমন, বৈধতা হ্রাস (val_loss
) এবং প্রশিক্ষণ ক্ষতি (loss
) এর মধ্যে একটি পার্থক্য হ'ল, ড্রপআউট ব্যবহার করার সময়, বৈধতা হ্রাস প্রশিক্ষণের ক্ষতির চেয়ে কম হতে পারে (সাধারণত ড্রপআউট ব্যবহার করা হয় না এমন ক্ষেত্রে প্রত্যাশিত নয়)।