পরীক্ষা সেট এবং বৈধতা সেট মধ্যে পার্থক্য কি?


431

আমি যখন মাতালাবের নিউরাল নেটওয়ার্ক সরঞ্জামবাক্সটি ব্যবহার করি তখন আমি এই বিভ্রান্তিকরটি পেয়েছি।
এটি কাঁচা তথ্য সেটটি তিন ভাগে বিভক্ত করেছে:

  1. প্রশিক্ষণ সেট
  2. বৈধতা সেট
  3. পরীক্ষা সেট

আমি অনেক প্রশিক্ষণ বা শেখার অ্যালগরিদম লক্ষ্য করি, ডেটা প্রায়শই 2 ভাগে বিভক্ত হয়, প্রশিক্ষণ সেট এবং পরীক্ষার সেট।

আমার প্রশ্নগুলি হ'ল:

  1. বৈধতা সেট এবং পরীক্ষা সেট মধ্যে পার্থক্য কি?
  2. বৈধতা সেটটি কি নিউরাল নেটওয়ার্কের সাথে সত্যই নির্দিষ্ট? অথবা এটি alচ্ছিক।
  3. আরও যেতে গেলে, মেশিন লার্নিংয়ের প্রসঙ্গে বৈধতা এবং পরীক্ষার মধ্যে কোনও পার্থক্য রয়েছে কি?

56
পরিসংখ্যানগত পাঠ্য পৃষ্ঠার উপাদানসমূহ 222 বইয়ে প্রশ্নের উত্তর দেওয়া হয়েছে। বৈধতা সেটটি মডেল নির্বাচনের জন্য ব্যবহৃত হয়, চূড়ান্ত মডেলের পরীক্ষার সেট (যে মডেলটি নির্বাচন প্রক্রিয়া দ্বারা নির্বাচিত হয়েছিল) পূর্বাভাস ত্রুটি।
এমপিটকাস

@ এমপিক্টাস আপনি কি "মডেল মূল্যায়ন এবং নির্বাচন" অধ্যায়টি উল্লেখ করছেন?
সিল্ডার

2
হ্যাঁ. পৃষ্ঠা নম্বরটি ছিল 5 তম মুদ্রণ সংস্করণ থেকে।
এমপিক্টাস

13
@mpiktas স্পট এ আছে। এখানে প্রকৃত লেখাThe training set is used to fit the models; the validation set is used to estimate prediction error for model selection; the test set is used for assessment of the generalization error of the final chosen model. Ideally, the test set should be kept in a “vault,” and be brought out only at the end of the data analysis.
অরুণ

উত্তর:


254

সাধারণত তদারকি করা শেখার সঞ্চালনের জন্য আপনার জন্য দুই ধরণের ডেটা সেট প্রয়োজন:

  1. একটি ডেটাসেটে (আপনার "সোনার স্ট্যান্ডার্ড") আপনার কাছে সঠিক / প্রত্যাশিত আউটপুট সহ একসাথে ইনপুট ডেটা রয়েছে, এই ডেটাসেটটি সাধারণত মানব দ্বারা বা আধা-স্বয়ংক্রিয় পদ্ধতিতে কিছু ডেটা সংগ্রহ করে যথাযথভাবে প্রস্তুত করা হয়। তবে এখানে গুরুত্বপূর্ণ যে আপনার এখানে প্রতিটি ডেটা সারির প্রত্যাশিত আউটপুট রয়েছে, কারণ তদারকি শেখার জন্য আপনার এটি দরকার।

  2. আপনি আপনার মডেলটি প্রয়োগ করতে যাচ্ছেন সেই ডেটা। অনেক ক্ষেত্রে এটি এমন ডেটা যেখানে আপনি আপনার মডেলের আউটপুটটির জন্য আগ্রহী এবং সুতরাং এখানে আপনার কোনও "প্রত্যাশিত" আউটপুট নেই don't

মেশিন লার্নিংয়ের সময় আপনি নিম্নলিখিতগুলি করেন:

  1. প্রশিক্ষণ পর্ব: আপনি প্রত্যাশিত আউটপুটটির সাথে ইনপুটটি জোড়া দিয়ে আপনার "সোনার মান" থেকে আপনার ডেটা উপস্থাপন করেন এবং আপনার মডেলটিকে প্রশিক্ষণ দিন।
  2. বৈধতা / পরীক্ষার পর্ব: আপনার মডেলটি কতটা ভাল প্রশিক্ষিত হয়েছে তা অনুমান করতে (এটি আপনার ডেটার আকারের উপর নির্ভরশীল, আপনি যে মানটি ভবিষ্যদ্বাণী করতে চান, ইনপুট ইত্যাদি) এবং মডেল বৈশিষ্ট্যগুলি অনুমান করতে (সংখ্যার ভবিষ্যদ্বাণীকারীদের জন্য ত্রুটি, শ্রেণিবদ্ধকারীদের জন্য শ্রেণিবিন্যাস ত্রুটিগুলি, আইআর-মডেলগুলির জন্য প্রত্যাহার এবং যথার্থতা ইত্যাদি)
  3. অ্যাপ্লিকেশন পর্ব: এখন আপনি আপনার সদ্য-বিকাশযুক্ত মডেলটিকে বাস্তব-বিশ্বের ডেটাতে প্রয়োগ করুন এবং ফলাফলগুলি পান। যেহেতু আপনার সাধারণত এই ধরণের ডেটাতে কোনও রেফারেন্স মান থাকে না (অন্যথায়, আপনার মডেলটির প্রয়োজন হবে কেন?), আপনি কেবলমাত্র আপনার বৈধতা পর্বের ফলাফলগুলি ব্যবহার করে আপনার মডেল আউটপুটটির গুণমান সম্পর্কে অনুমান করতে পারেন।

বৈধতা পর্বটি প্রায়শই দুটি ভাগে বিভক্ত :

  1. প্রথম অংশে আপনি কেবল আপনার মডেলগুলি দেখুন এবং বৈধতা ডেটা (= যাচাইকরণ) ব্যবহার করে সর্বোত্তম পারফরম্যান্স পদ্ধতির নির্বাচন করুন
  2. তারপরে আপনি নির্বাচিত পদ্ধতির (= পরীক্ষা) নির্ভুলতার অনুমান করতে পারেন।

সুতরাং পৃথককরণ 50/25/25।

যদি আপনাকে বেশ কয়েকটি প্রতিদ্বন্দ্বী পদ্ধতির থেকে উপযুক্ত মডেল বাছাই করার প্রয়োজন না হয় তবে আপনি কেবলমাত্র আপনার সেটটি পুনরায় বিভাজন করতে পারেন যে আপনার প্রশিক্ষিত মডেলের বৈধতা না দেখিয়ে আপনার কেবলমাত্র প্রশিক্ষণ সেট এবং পরীক্ষার সেট রয়েছে। আমি ব্যক্তিগতভাবে তাদের 70/30 ভাগ করে নিই partition

আরও দেখুন এই প্রশ্নের


21
কেন আমি পুরোপুরি বৈধতা সেট থেকে মুক্তি পেয়ে পরীক্ষার সেটের ভিত্তিতে সেরা পারফর্মিং মডেলটি বেছে নেব না?
সেবাস্তিয়ান গ্রাফ

4
এটি কি ওভারফিটিংয়ের কারণে? বা কারণ আমরা পরীক্ষার ফলাফলের ভিত্তিতে কিছু ত্রুটি অনুমানের জন্য কিছু স্বাধীন পরিসংখ্যান চাই?
সেবাস্তিয়ান গ্রাফ

12
@ সেবাস্তিয়ান [যদি আপনি কেবল পরীক্ষার সেটটিই ব্যবহার করেন:] "চূড়ান্তভাবে নির্বাচিত মডেলটির পরীক্ষার সেট ত্রুটি সত্য পরীক্ষার ত্রুটিটিকে কখনও কখনও কম বিবেচনা করবে," [হ্যাস্টি এট আল]
ব্যবহারকারী 695652

23
বৈধতা সেটটি প্রায়শই হাইপার-প্যারামিটারগুলি সুর করার জন্য ব্যবহৃত হয়। উদাহরণস্বরূপ, গভীর শিক্ষণ সম্প্রদায়ের মধ্যে, নেটওয়ার্ক স্তর আকার, লুকানো ইউনিট নম্বর, নিয়ামককরণ শব্দ (ওয়েদার এল 1 বা এল 2)
টিউন করা

2
সেটগুলি বিভক্ত করার সঠিক উপায় কী? নির্বাচন এলোমেলো করা উচিত? আপনার যদি একই রকম ছবি থাকে তবে কী হবে? এটি সাধারণকরণের আপনার ক্ষতির ক্ষতি করবে না? আপনার যদি দুটি সেট পৃথক স্থানে নেওয়া হয় তবে একটির প্রশিক্ষণ সেট এবং অন্যটি পরীক্ষার সেট হিসাবে নেওয়া ভাল না?
ইয়োনাতান সিমসন

263

প্রশিক্ষণ সেট: শেখার জন্য ব্যবহৃত উদাহরণগুলির একটি সেট: শ্রেণিবদ্ধের পরামিতিগুলি ফিট করার জন্য মাল্টিলেয়ার পারসেপ্ট্রন (এমএলপি) ক্ষেত্রে, আমরা ব্যাক-প্রোপ নিয়মের সাহায্যে "অনুকূল" ওজন খুঁজে পেতে প্রশিক্ষণ সেটটি ব্যবহার করব

বৈধকরণ সেট: শ্রেণিবদ্ধের পরামিতিগুলির সাথে সুর করার জন্য ব্যবহৃত উদাহরণগুলির একটি সেট এমএলপি ক্ষেত্রে আমরা "অনুকূল" লুকানো ইউনিটগুলির সন্ধানের জন্য বৈধতা সেটটি ব্যবহার করব বা ব্যাক-প্রসারণ অ্যালগরিদমের জন্য একটি থামার পয়েন্ট নির্ধারণ করব

পরীক্ষার সেট: কেবলমাত্র সম্পূর্ণ প্রশিক্ষিত শ্রেণিবদ্ধের পারফরম্যান্স মূল্যায়নের জন্য ব্যবহৃত উদাহরণগুলির একটি সেট, এমএলপি ক্ষেত্রে, আমরা চূড়ান্ত মডেল (এমএলপি আকার এবং প্রকৃত ওজন) বেছে নেওয়ার পরে ত্রুটি হারটি অনুমান করার জন্য পরীক্ষাটি ব্যবহার করব পরীক্ষার চূড়ান্ত মডেলটি, আপনি আর কোনও মডেল টিউন করতে হবে না!

কেন পৃথক পরীক্ষা এবং বৈধতা সেট? বৈধতা ডেটাতে চূড়ান্ত মডেলের ত্রুটি হারের প্রাক্কলন পক্ষপাতদুষ্ট হবে (সত্য ত্রুটির হারের চেয়ে ছোট) যেহেতু বৈধতা সেটটি চূড়ান্ত মডেল নির্বাচন করতে ব্যবহৃত হয় পরীক্ষার সেটটিতে চূড়ান্ত মডেলটি মূল্যায়ন করার পরে, আপনি কোনও মডেলটির সাথে টিউন করতে পারবেন না আরও!

উত্স: প্যাটার্ন অ্যানালাইসিসের পরিচিতি, রিকার্ডো গুতেরেস-ওসুনাটেক্সাস এএন্ডএম বিশ্ববিদ্যালয়, টেক্সাস এএন্ডএম বিশ্ববিদ্যালয়


42
"1 আপনি মডেলটির আর কোনও সুর করতে পারবেন না!"
স্ট্যাম্যাক্স

6
"পরামিতিগুলি ফিট করুন" এবং "পরামিতিগুলি টিউন করুন" এর মধ্যে পার্থক্য কী?
মেট্রিয়েট

18
@stmax পেডেন্টিক হওয়ার কথা নয়, তবে একবার যদি আমাদের চূড়ান্ত পরীক্ষার ত্রুটি হয় এবং আমরা ফলাফলটি নিয়ে সন্তুষ্ট না হই, আমরা কী করব, যদি আমরা আমাদের মডেলটির সাথে আর সুর করতে পারি না? ... আমি প্রায়শই এই মামলাটি নিয়ে ভাবছিলাম।
স্পেসি

5
@ টারান্টুলা আপনি মডেলটির সুরটি চালিয়ে যেতে পারেন, তবে আপনাকে একটি নতুন পরীক্ষার সেট সংগ্রহ করতে হবে। অবশ্যই কেউ তা করেন না;) তবে এটি লঙ্ঘন করা (বিশেষত যখন আপনি বেশ কয়েকবার পুনরাবৃত্তি করেন) আপনার মডেলটিকে টেস্ট সেটটি ফিট করতে পারে - যার ফলে অবাস্তব / খুব আশাবাদী স্কোর আসে।
stmax

4
আমি মনে করি এই নামকরণ বিভ্রান্তিকর। আপনি পরীক্ষা সেট ব্যবহার করার পরে "আপনি আরও মডেলটির সাথে টিউন করাতে পারবেন না" বলাই সঠিক, তবে ... আপনি কোন অঞ্চলটি বোঝাতে চেয়েছেন? এটির কাজ বন্ধ করবেন? বাস্তবে আপনার পরীক্ষার সেটগুলির পুরো শ্রেণিবিন্যাস দরকার। 1: বৈধকরণ সেট - একটি মডেল টিউন করার জন্য ব্যবহৃত, 2: টেস্ট সেট, কোনও মডেলকে মূল্যায়ন করতে ব্যবহৃত হয় এবং আপনাকে ড্রয়িং বোর্ডে ফিরে যেতে হবে কিনা তা দেখুন, 3: সুপার-টেস্ট সেট, চূড়ান্ত-চূড়ান্ত অ্যালগরিদমটিতে কীভাবে ব্যবহৃত হবে তা দেখুন ভাল এটা, 4: অধি-টেস্ট সেট, পরে গবেষকরা 10 বছর ধরে MNIST আলগোরিদিম উন্নয়নশীল হয়েছে ব্যবহৃত দেখতে কিভাবে পাগলের মতো তারা overfit ... ইত্যাদি ইত্যাদি
Timmmm

66

কম্পিউটার বিজ্ঞানে আমার 5 বছরের অভিজ্ঞতা আমাকে শিখিয়েছে যে সরলতার চেয়ে ভাল আর কিছুই নয়।

'প্রশিক্ষণ / ক্রস-বৈধকরণ / পরীক্ষা' ডেটা সেটগুলির ধারণাটি এর মতো সহজ। আপনার যখন একটি বড় ডেটা সেট থাকে, তখন এটিকে 3 টি ভাগে ভাগ করার পরামর্শ দেওয়া হয়:

++ প্রশিক্ষণ সেট (মূল ডেটা সেটের 60%): এটি আমাদের পূর্বাভাস অ্যালগরিদম তৈরি করতে ব্যবহৃত হয়। আমাদের অ্যালগরিদম প্রশিক্ষণের ডেটা সেটগুলির শিখরগুলির সাথে নিজেকে টিউন করার চেষ্টা করে। ক্রস-বৈধকরণ পর্যায়ে তাদের পারফরম্যান্সগুলির তুলনা করার জন্য এই পর্যায়ে আমরা সাধারণত একাধিক অ্যালগরিদম তৈরি করি।

++ ক্রস-বৈধকরণ সেট (মূল ডেটা সেটের 20%): এই ডেটা সেটটি ট্রেনিং সেটের উপর ভিত্তি করে তৈরি করা পূর্বাভাস অ্যালগরিদমের পারফরম্যান্সের তুলনা করতে ব্যবহৃত হয়। আমরা সেরা কার্য সম্পাদনকারী অ্যালগরিদম চয়ন করি।

++ টেস্ট সেট (মূল ডেটা সেটের 20%): এখন আমরা আমাদের পছন্দসই পূর্বাভাস অ্যালগরিদম বেছে নিয়েছি তবে এটি এখনও অদৃশ্য রিয়েল-ওয়ার্ল্ড ডেটা কীভাবে সম্পাদন করবে তা আমরা জানি না। সুতরাং, আমরা আমাদের পরীক্ষার সেটটিতে আমাদের নির্বাচিত ভবিষ্যদ্বাণীটি অ্যালগরিদম প্রয়োগ করি যাতে এটি কীভাবে সঞ্চালিত হয় তা দেখার জন্য যাতে অদেখা তথ্যে আমাদের অ্যালগরিদমের অভিনয় সম্পর্কে আমাদের ধারণা থাকতে পারে।

নোট:

- এটা মনে রাখা খুব গুরুত্বপূর্ণ যে পরীক্ষার পর্বটি এড়িয়ে যাওয়ার প্রস্তাব দেওয়া হয় না, কারণ ক্রস-বৈধকরণের পর্যায়ে যে অ্যালগরিদম ভালভাবে সম্পাদন করেছিল তার অর্থ এই নয় যে এটি সত্যই সেরা, কারণ অ্যালগরিদমকে ক্রসের উপর ভিত্তি করে তুলনা করা হচ্ছে বৈধকরণ সেট এবং এর উদ্বেগ এবং শোরগোল ...

-টেস্ট পর্ব চলাকালীন, উদ্দেশ্যটি হল আমাদের চূড়ান্ত মডেলটি কীভাবে বন্যের সাথে মোকাবিলা করতে চলেছে তা দেখার জন্য, সুতরাং এর কার্য সম্পাদন খুব কম হলে আমাদের প্রশিক্ষণ পর্ব থেকে শুরু হওয়া পুরো প্রক্রিয়াটি পুনরাবৃত্তি করা উচিত।


1
সেটগুলি পর্যায়ক্রমে এবং বিপরীতে হিসাবে উল্লেখ করা সহজ এবং বিভ্রান্তিকর।
ম্যাট ও'ব্রায়ান

2
@innovIsmail যদি আমি বৈধতা পদক্ষেপটি এড়িয়ে যাই? বলুন যে আমার অনেক অ্যালগরিদম আছে এবং আমি তাদের ট্রেনের সেটে প্রশিক্ষণ দিয়েছি, তারপরে আমি কেবল তাদের সকলকে পরীক্ষার সেটে প্রয়োগ করি, তারপরে আমি পরীক্ষার সেটে সেরা পারফরম্যান্সটি বেছে
নিয়েছি

3
আমার কাছে মনে হচ্ছে আপনি কেবল পরীক্ষার পদক্ষেপটি বাদ দিচ্ছেন।
মিহাই ড্যানিলা

1
> পূর্বাভাস অ্যালগরিদমের পারফরম্যান্সের তুলনা করুন - এই প্রসঙ্গে "একটি অ্যালগরিদম" কী? আপনার মডেল কি একটি অ্যালগরিদম নয়? বৈধকরণের জন্য বেশ কয়েকটি পর্যায় পেতে একজনকে কি বেশ কয়েকটি মডেল তৈরি করতে এবং তাদের আলাদাভাবে প্রশিক্ষণ দিতে হবে?
বপপিটি বুপ

2
এই সরলতাটি একটি বিভ্রম কারণ অ-বিশাল আকারের নমুনা আকারের পরিস্থিতিতে কেউ যথেষ্ট পরিমাণে ভবিষ্যদ্বাণীপূর্ণ অ্যালগরিদম পাবে এবং বৈধতার ফলাফলগুলি এলোমেলো বিভাজনগুলি পুনরাবৃত্তি করেছিল।
ফ্রাঙ্ক হ্যারেল

33

প্রতিটি পদক্ষেপে আপনাকে সিদ্ধান্ত নিতে বলা হয়েছে (অর্থাত্ বেশ কয়েকটি বিকল্পের মধ্যে একটি বিকল্প চয়ন করুন), আপনার পছন্দের যথার্থতাটি পরীক্ষা করতে আপনার অবশ্যই অতিরিক্ত সেট / পার্টিশন থাকতে হবে যাতে আপনি এলোমেলোভাবে সবচেয়ে অনুকূল ফলাফলটি বেছে না নিতে পারেন এবং কেন্দ্র 1 এর জন্য বিতরণের টেল-এন্ড ভুল করুন । বাম হতাশাবাদী। ডানটি আশাবাদী। কেন্দ্রটি বাস্তববাদী। বাস্তববাদী হন।

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

পদক্ষেপ 1) প্রশিক্ষণ: প্রতিটি ধরণের অ্যালগরিদমের নিজস্ব প্যারামিটার বিকল্প রয়েছে (একটি নিউরাল নেটওয়ার্কে স্তরগুলির সংখ্যা, একটি এলোমেলো বনে গাছের সংখ্যা ইত্যাদি)। আপনার প্রতিটি অ্যালগরিদমের জন্য আপনার অবশ্যই একটি বিকল্প বাছাই করতে হবে। এজন্য আপনার একটি প্রশিক্ষণ সেট রয়েছে।

পদক্ষেপ 2) যাচাইকরণ: আপনার কাছে এখন অ্যালগরিদমের সংকলন রয়েছে। আপনার অবশ্যই একটি অ্যালগরিদম বাছাই করা উচিত। এজন্য আপনার একটি পরীক্ষার সেট রয়েছে। বেশিরভাগ লোকেরা অ্যালগরিদমটি চয়ন করেন যা বৈধতা সেটটিতে সেরা সম্পাদন করে (এবং এটি ঠিক আছে)। তবে, যদি আপনি পরীক্ষার সেটটিতে আপনার শীর্ষ-সম্পাদনকারী অ্যালগরিদমের ত্রুটি হারটি পরিমাপ করেন না এবং কেবল বৈধতা সেটটিতে তার ত্রুটি হার নিয়ে যান, তবে আপনি "সম্ভবত সম্ভাব্য দৃশ্যের" জন্য অন্ধভাবে "সেরা সম্ভাব্য দৃশ্যাবলী" ভুল করেছেন। এটি বিপর্যয়ের একটি রেসিপি।

পদক্ষেপ 3) পরীক্ষা: আমি অনুমান করি যে যদি আপনার অ্যালগরিদমগুলির কোনও পরামিতি না থাকে তবে আপনার তৃতীয় ধাপের প্রয়োজন হবে না। সেক্ষেত্রে আপনার বৈধতা পদক্ষেপটি আপনার পরীক্ষার পদক্ষেপ হবে। সম্ভবত মতলব আপনাকে প্যারামিটারের জন্য জিজ্ঞাসা করবে না বা আপনি সেগুলি ব্যবহার না করা বেছে নিয়েছেন এবং এটিই আপনার বিভ্রান্তির উত্স।

1 অনুমানের সাথে প্রতিটি পদক্ষেপে যেতে প্রায়শই সহায়ক (নাল অনুমান) যে সমস্ত বিকল্প একই রকম (যেমন সমস্ত প্যারামিটার একই বা সমস্ত অ্যালগোরিদম একই), তাই বিতরণে আমার উল্লেখ।

2 এই চিত্রটি আমার নিজস্ব নয়। আমি এটি এই সাইট থেকে নিয়েছি: http://www.teamten.com/lawrence/writings/bell-curve.png


3
আমি মনে করি প্রথম বাক্যটি এই প্রশ্নের মৌলিক উত্তরটিকে অন্য যে কোনও উত্তরের চেয়ে ভালভাবে ধরা দিয়েছে। "আপনাকে প্রতিটি পদক্ষেপে সিদ্ধান্ত নিতে বলা হয়েছে (অর্থাত্ বেশ কয়েকটি বিকল্পের মধ্যে একটি বিকল্প চয়ন করুন), আপনার পছন্দের যথার্থতাটি নির্ধারণ করার জন্য আপনার অবশ্যই অতিরিক্ত সেট / পার্টিশন থাকতে হবে ..."
কোবিজোহন

প্রশ্নে: আমি যদি সেরা র‌্যান্ডমফোরস্ট (আরএফ) সন্ধান করতে এবং সেখানে আরএফের কেবলমাত্র একটি হাইপার প্যারামিটার দেখতে পাই, যা গাছের সংখ্যা (এন), তবে পদক্ষেপ 1 এ, আমি বন তৈরিতে বিভিন্ন এন এর সাথে অনেকগুলি আরএফ চালাচ্ছি ; পদক্ষেপ 2 এ, তাদের বৈধতা পরীক্ষায় প্রয়োগ করুন এবং আরএফটি এন * এর সাথে চয়ন করুন যা বৈধতা পরীক্ষার চেয়ে সর্বনিম্ন ত্রুটি দেয়, তবে স্টিপ 3 এ, আমি পরীক্ষার সেটে এন * এর সাথে আরএফ প্রয়োগ করি এবং এই আরএফের সত্যিকারের পরীক্ষার ত্রুটির নিরপেক্ষ অনুমান পেতে পারি এন *। তবে আমি পরীক্ষার সেটটিতে আমার সমস্ত আরএফ প্রয়োগ করতে পারি এবং সর্বনিম্ন পরীক্ষার ত্রুটির সাথে একটি বেছে নিতে পারি, যা এন * নাও হতে পারে। তাহলে যা যাচাইকরণের পদক্ষেপ 2?
কেভিনকিম

1
@ কেভিনকিম: আপনি যদি সমস্ত আরএফগুলিতে আপনার পরীক্ষার সেটটি প্রয়োগ করেন এবং ফলাফলকে আরও পছন্দ করতে (অন্য কোনও মডেল বাছাই করুন) ব্যবহার করেন, তবে আপনি কেবলমাত্র বৈধতার পদক্ষেপটি পুনরাবৃত্তি করেছেন। আপনি "আপনার একটি মডেল দিয়ে সর্বনিম্ন ত্রুটি পাওয়া উচিত!"! এটি পরীক্ষার নয়, প্রশিক্ষণের এবং বৈধতার বিষয়টি। টেস্টিং কেবলমাত্র: আমি একটি মডেল প্রশিক্ষণ এবং বেছে নিয়েছি, এখন এটি কীভাবে "সাধারণভাবে" সম্পাদন করে তা দেখুন। স্পষ্টতই "জেনারেল" টেস্ট সেটটি হ'ল ডেটাগুলির আরও একটি স্লাইস যা অতিরিক্ত মানানসই বা নাও হতে পারে, তবে মুল্যটি হ'ল আপনি নিজের মডেলটিকে পছন্দমতো পছন্দ করে নিচ্ছেন না।
হানিবার

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

1
বাট: মডেল কীভাবে "আসল বিশ্বে" অভিনয় করবে তা এখনও অজানা। এটি কেবলমাত্র একটি বৈধ ও পরীক্ষিত অনুমান, এটি অদেখা তথ্যে ভাল সম্পাদন করবে এবং বৈজ্ঞানিক উদ্দেশ্যে এটি সাধারণত যথেষ্ট হিসাবে বিবেচিত হয়। যদি আপনি এখন আবার যান এবং মডেলগুলি জেনারেট করে বাছাই করেন, যতক্ষণ না কোনও বৈধতা সেট এবং টেস্ট সেটটি পুরোপুরি ফিট করে, তবে আপনি নিজের পরীক্ষার সেটটিকে একটি বৈধতা সেটটিতে অধঃপতিত করেছেন। এটির জন্য ক্রস-বৈধকরণ আরও ভাল। যদি আপনার কার্য সম্পাদন টেস্ট সেটটিতে ক্রমাগত উল্লেখযোগ্যভাবে খারাপ হয় তবে সর্বদা এটি এমন একটি বিকল্প যা আপনার ডেটা কেবল খারাপভাবে বিভক্ত হয় এবং আপনি পুনরায় শ্যাফাল সেটগুলি দিয়ে পুনরায় চালু করতে চান।
হানিবার

21

এটি আপনাকে কোনও উপায়ে ডেটা বিভক্ত করতে হবে তা অনুসরণ করে না। বুটস্ট্র্যাপ মডেলটি বিকাশ এবং পরীক্ষার জন্য পুরো নমুনা ব্যবহার করে ভবিষ্যদ্বাণী নির্ভুলতার ছোট ছোট স্কোয়ার ত্রুটির প্রাক্কলন সরবরাহ করতে পারে।


1
সুতরাং আপনি ভবিষ্যদ্বাণীমূলক মডেল পরীক্ষার / বৈধতার জন্য বড় ডেটা-সেট বিভক্ত করার মাধ্যমে ক্রস-বৈধকরণের পক্ষে নন?
অফিশ

9
না, যদি না ডেটাসেটটি বিশাল হয় বা সংকেত: শব্দের অনুপাত বেশি থাকে। ক্রস-বৈধতা আমার অভিজ্ঞতার বুটস্ট্র্যাপের মতো যথাযথ নয় এবং এটি সম্পূর্ণ নমুনার আকার ব্যবহার করে না। পর্যাপ্ত নির্ভুলতা অর্জনের জন্য অনেক ক্ষেত্রে আপনাকে 50-100 বার ক্রস-বৈধকরণ পুনরাবৃত্তি করতে হবে। তবে আপনার ডেটাসেটে> 20,000 বিষয় রয়েছে, বিভক্ত-নমুনার বৈধতার মতো সহজ পদ্ধতির প্রায়শই ঠিক থাকে।
ফ্র্যাঙ্ক হ্যারেল

2
এটা জেনে রাখা সত্যিই ভাল! ধন্যবাদ। এবং আপনার কাছ থেকে আসছে, এটি তথ্যের একটি দুর্দান্ত "উত্স"। চিয়ার্স!
অফিশ

1
বিভক্ত-নমুনার বৈধতা প্রায়শই কঠোর বুটস্ট্র্যাপিংয়ের চেয়ে খারাপ সম্পাদন করে। একটি বহিরাগত বুটস্ট্র্যাপ চেহারা তৈরি করুন যা সমস্ত তদারকী শেখার পদক্ষেপগুলি পুনরায় করে (সমস্ত ধাপ যা ওয়াই ব্যবহার করে)। ইফ্রন-গং আশাবাদ বুটস্ট্র্যাপ অনুমান করে যে ভবিষ্যদ্বাণীমূলক মডেলটি অ্যালগরিদমের দ্বারা দেখা না গিয়ে ডেটা ব্যয় না করে ডেটাতে কতটা আলাদা হয়ে যায়।
ফ্র্যাঙ্ক হ্যারেল

1
হ্যাঁ পুনরাবৃত্তি উপর জোর দিয়ে । এটি একক বিভাজন যা সমস্যাযুক্ত।
ফ্র্যাঙ্ক হ্যারেল

13

একটি সাধারণ মেশিন লার্নিং টাস্কটি নীচের নেস্টেড লুপ হিসাবে ভিজ্যুয়ালাইজ করা যায়:

while (error in validation set > X) {
    tune hyper-parameters
    while (error in training set > Y) {
        tune parameters
    }
}

সাধারণত বাইরের লুপটি মানব দ্বারা , বৈধতা সেটটিতে এবং অভ্যন্তরীণ লুপটি মেশিন দ্বারা , প্রশিক্ষণ সেটে সঞ্চালিত হয় । তারপরে মডেলের চূড়ান্ত পারফরম্যান্সটি মূল্যায়নের জন্য আপনার তৃতীয় পরীক্ষার সেট দরকার ।

অন্য কথায়, বৈধতা সেট হ'ল মানুষের জন্য প্রশিক্ষণ সেট।


9

এই তিনটি সেট সম্পর্কে ভাবার একটি উপায় হ'ল এগুলির মধ্যে দুটি ( trainingএবং validation) অতীত testথেকে আসে , যেখানে সেটটি "ভবিষ্যত" থেকে আসে। "অতীত" ( training/ validationডেটা) থেকে ডেটা ব্যবহার করে মডেলটি তৈরি এবং সুর করা উচিত , তবে test"ভবিষ্যত" থেকে আসে এমন ডেটা কখনও নয় ।

একটি বাস্তব উদাহরণ দেওয়ার জন্য, আসুন আমরা বলি যে ভবিষ্যতে বেসবল খেলোয়াড়রা কতটা ভাল করবে তা অনুমান করার জন্য আমরা একটি মডেল তৈরি করছি। আমরা 1899-2014 থেকে ডেটা ব্যবহার করব testএবং validationসেট তৈরি করব । এই ডেটাগুলিতে মডেলটি তৈরি ও সুর করা হয়ে গেলে, আমরা ২০১৫ সালের ডেটা ব্যবহার করব (আসলে অতীতে!) একটি পরীক্ষার সেট হিসাবে, যা মডেলের দৃষ্টিকোণ থেকে "ভবিষ্যতের" ডেটার মতো প্রদর্শিত হয় এবং কোনওভাবেই মডেল তৈরির উপর প্রভাব ফেলেনি influenced । (স্পষ্টতই, তাত্ত্বিকভাবে, আমরা সত্যই চাইলে আমরা 2016 থেকে ডেটার জন্য অপেক্ষা করতে পারি!)

স্পষ্টতই আমি সর্বত্র কোট ব্যবহার করছি, কারণ তথ্যগুলির প্রকৃত সাময়িক ক্রমটি প্রকৃত ভবিষ্যতের সাথে মিলিত হতে পারে না (সংজ্ঞা অনুসারে সমস্ত ডেটা উত্পন্নকরণ সম্ভবত প্রকৃত অতীতে হয়েছিল)। বাস্তবে, testসেটটি কেবল সেটগুলি training/ validationসেটগুলির একই সময়কাল থেকে ডেটা হতে পারে , যা আপনি "রাখা" hold এইভাবে, মডেলটির সুরের ক্ষেত্রে এর কোনও প্রভাব ছিল না, তবে যাঁরা তথ্য রাখেন তা ভবিষ্যত থেকে আসলে আসে না।


4
অন্যান্য সমস্ত উত্তর পড়ার পরে, এই উত্তরটি এটি আমার জন্য "ক্লিক" করে দিয়েছে! আপনি ট্রেনের সেট দিয়ে প্রশিক্ষণ দিন, আপনি যাচাইকরণ সেটটি (এবং মডেল এবং হাইপারপ্যারামিটারগুলি "অজানা ডেটা" দিয়ে কাজ করেন) এর চেয়ে বেশি ফিট করছেন না তা পরীক্ষা করুন এবং তারপরে আপনি পরীক্ষার সেটটি নির্ধারণ করুন - "নতুন ডেটা" - আপনি এখন কিনা কোন ভবিষ্যদ্বাণীপূর্ণ ক্ষমতা আছে ..!
stolsvik

এটি এই অর্থে দেখার মতো উপযুক্ত উপায় যে testডেটাটি প্রশিক্ষণ প্রক্রিয়ার কোনও অংশই হওয়া উচিত নয়: এবং আমরা যদি এটি "ভবিষ্যতের" ডেটা হিসাবে বিবেচনা করি তবে এটি করা অসম্ভব ভুল হয়ে যায়।
জাভাদবা

7

সর্বাধিক তদারকি করা ডেটা মাইনিং অ্যালগরিদমগুলি এই তিনটি পদক্ষেপ অনুসরণ করে:

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

4

কিছু লোকের কেন আমরা বৈধতা সেট ব্যবহার করি তা নিয়ে বিভ্রান্তি রয়েছে, তাই আপনি যদি কোনও বৈধতা ডেটাसेट ব্যবহার না করেন তবে কী হবে তার একটি সহজ এবং স্বজ্ঞাত ব্যাখ্যা দেব।

আপনি যদি কোনও বৈধতা সেট ব্যবহার না করেন, তবে আপনাকে পরিবর্তে হাইপারপ্যারামিটারগুলি বেছে নিতে হবে এবং কখন টেস্টিং ডেটাসেটের মডেলটির পারফরম্যান্সের ভিত্তিতে প্রশিক্ষণ বন্ধ করতে হবে তা সিদ্ধান্ত নিতে হবে। আপনি যদি টেস্টিং ডেটাসেটের মডেলটির পারফরম্যান্সের ভিত্তিতে প্রশিক্ষণ কখন বন্ধ করবেন তা স্থির করেন, যখন মডেলটি টেস্টিং ডেটাসেটটিতে ভাল করতে পারে তখন আপনি কেবল প্রশিক্ষণ বন্ধ করতে পারেন। তারপরে আপনি যখন আপনার ফলাফলগুলি প্রতিবেদন করেন, আপনি পরীক্ষার ডেটাসেটে নির্ভুলতার প্রতিবেদন করেন। এটির সাথে সমস্যাটি হ'ল আপনি বলতে পারেন যে আপনার মডেলটি সত্যিই ভাল করেছে যখন বাস্তবে এটি কেবল একটি এলোমেলো প্রকরণ ছিল যা এটি কেবল পরীক্ষার সেটটিতে আরও ভাল করে তোলে।

প্রশিক্ষণ কখন বন্ধ করবেন তা স্থির করার পরিবর্তে যদি আপনি কোনও বৈধতা সেট ব্যবহার করেন, পরীক্ষার সেটটিতে মডেলটির যথার্থতাটি সাধারণভাবে কার্যটিতে কতটা কার্য সম্পাদন করে তার একটি নিরপেক্ষ প্রতিচ্ছবিই আরও বেশি, এবং এটি দেখায় যে আপনি অপ্টিমাইজ করেননি মডেল শুধু পরীক্ষার সেট ভাল পারফরম্যান্স।


2

"ডিফারেনশিয়াল প্রাইভেসি" নামক মেশিন লার্নিংয়ের তুলনামূলকভাবে নতুন পদ্ধতির দিকে ইঙ্গিত করে আমি এখানে খুব ভাল উত্তর যুক্ত করতে চাই (আরও তথ্যের জন্য ডি ওয়ার্কের কাগজপত্রগুলি দেখুন; উইন ভেক্টর ব্লগ )। ধারণাটি চূড়ান্ত মডেলটির পারফরম্যান্সের সাথে আপস না করেই পরীক্ষার সেটটিকে পুনরায় ব্যবহার করতে দেয়। একটি সাধারণ সেটিংয়ে পরীক্ষার সেটটি কেবল চূড়ান্ত পারফরম্যান্সের অনুমানের জন্য ব্যবহৃত হয়; আদর্শভাবে একজনকে এটি দেখারও অনুমতি নেই।

যেহেতু এই উইন ভেক্টর ব্লগে এটি বর্ণিত হয়েছে (অন্যান্য এন্ট্রিগুলিও দেখুন), মডেলটির পারফরম্যান্সকে পক্ষপাতদুষ্ট না করে পরীক্ষার সেটটি "ব্যবহার" করা সম্ভব। এটি "ডিফারেনশিয়াল প্রাইভেসি" নামক বিশেষ পদ্ধতিটি ব্যবহার করে করা হয়। শিক্ষার্থীর পরীক্ষার সেটটিতে সরাসরি প্রবেশাধিকার থাকবে না।


-1

আমার ধারণাটি হ'ল নিউরাল নেটওয়ার্ক টুলবক্সের সেই বিকল্পগুলি ওভারফিটিং এড়ানোর জন্য। এই পরিস্থিতিতে ওজনগুলি কেবল প্রশিক্ষণের ডেটার জন্য নির্দিষ্ট করা হয় এবং বৈশ্বিক প্রবণতাটি দেখায় না। একটি বৈধতা সেট থাকার দ্বারা, পুনরাবৃত্তিগুলি ট্রেনিং ডেটা ত্রুটির কারণ হ্রাস বৈধতা ডেটা হ্রাস এবং বৈধতা ডেটা ত্রুটিতে বৃদ্ধি ঘটে যেখানে অভিযোজ্য; প্রশিক্ষণের ডেটা ত্রুটি হ্রাসের পাশাপাশি, এটি অত্যধিক উপযুক্ত ঘটনাটি প্রদর্শন করে।


আমি সাহস করে বলি টেস্ট সেটগুলি পুরো প্রক্রিয়াতে একটি বিবেক পরীক্ষা করে। আপনার কাছে একটি প্রশিক্ষণ বক্ররেখা থাকতে পারে যা প্রতিটি পর্বে বৈধতা / ক্ষতি বক্ররেখাকে প্রতিলিপি করে। তবে যদি আপনার পরীক্ষার সেট নির্ভুলতাটি ইওপস বা ট্যাঙ্কগুলির সাথে উন্নত না হয় তবে আপনি কোনও লাভ করবেন না। আপনি খুব সুন্দর হয়।
আগকাল
আমাদের সাইট ব্যবহার করে, আপনি স্বীকার করেছেন যে আপনি আমাদের কুকি নীতি এবং গোপনীয়তা নীতিটি পড়েছেন এবং বুঝতে পেরেছেন ।
Licensed under cc by-sa 3.0 with attribution required.