ডেটাসেটের নমুনায় হাইপারপ্যারামিটার টিউন করা কি খারাপ ধারণা?


19

আমার কাছে 140000 উদাহরণ এবং 30 টি বৈশিষ্ট্য রয়েছে যার জন্য আমি বাইনারি শ্রেণিবদ্ধকরণের জন্য বেশ কয়েকটি শ্রেণিবদ্ধকে প্রশিক্ষণ দিচ্ছি (এসভিএম, লজিস্টিক রিগ্রেশন, র্যান্ডম ফরেস্ট ইত্যাদি)

অনেক ক্ষেত্রে গ্রিড বা র্যান্ডম অনুসন্ধান ব্যবহার করে পুরো ডেটাসেটে হাইপারপ্যারমিটার টিউন করা খুব ব্যয়বহুল time

আমি নিম্নলিখিত কৌশলটি ব্যবহার শুরু করেছি

  • সাব ডেটাবেস আমার ডেটাসেট
  • হাইপারপ্যারামিটার টিউন করতে প্রাপ্ত ভগ্নাংশটি ব্যবহার করুন
  • পুরো ডেটাसेट ব্যবহার করে কোনও মডেলকে প্রশিক্ষণের জন্য প্রাপ্ত পরামিতিগুলি ব্যবহার করুন

দ্বিতীয় ধাপ আমি ব্যবহারের উপর পরামিতি প্রতিটি সেট নির্ণয় করা sklearn's GridSearchCVCV = 10 দিয়ে। চূড়ান্ত মডেল যে আমি তৃতীয় ধাপে আমি ব্যবহারের সৃষ্টি নির্ণয় করা sklearn's cross_val_predict। সেই অর্থে আমি আমার মডেলগুলিকে 10% শতাংশ ডেটা ছেড়ে রেখে মূল্যায়ন করি, আমি বাকী অংশগুলিকে প্রশিক্ষণ দিয়েছি এবং 10% এর উপর পূর্বাভাসমূলক নির্ভুলতা পরিমাপ করি, পুনরাবৃত্তভাবে 10 বার, তারপরে স্কোরগুলির গড় গ্রহণ করে।

আমার উদ্বেগের কারণটি হ'ল আমার সম্পূর্ণ ডেটাসেটের প্রশিক্ষণ থেকে প্রাপ্ত ভবিষ্যদ্বাণী যথার্থতা, পরামিতিগুলির সেরা সেটগুলির জন্য পরামিতিগুলি সুর করার সময় আমার যে মূল্যায়ন হয় তা খুব কাছেই থাকে (প্রতিটি পরীক্ষিত সেট প্যারামিটারের সেট 10- গড় থেকে প্রাপ্ত স্কোরকে আউটপুট করে দেয়) ভাঁজ ক্রস বৈধতা ফলাফল)।

cross_val_predictসমস্ত প্রশিক্ষণের উদাহরণ (পুরো ডেটাসেট) ব্যবহার করে যথাযথতা পরিমাপ করা বেশিরভাগ সময় সর্বোত্তম প্যারামিটারগুলির মূল্যায়ন ফিরে আসে।

এটি চিত্রিত করার জন্য এখানে প্যারামিটারগুলির একটি সেটের মূল্যায়ন (আমি উপরে বর্ণিত তুলনায় একটি ছোট ডেটাসেটের উপর তবে প্রভাবটি একই)

Best parameters set found on development set:
{'kernel': 'rbf', 'C': 9, 'gamma': 0.1}
Scores for all sets of parameters
0.851 (+/-0.006) for {'kernel': 'rbf', 'C': 3, 'gamma': 0.5}
0.852 (+/-0.006) for {'kernel': 'rbf', 'C': 3, 'gamma': 0.1}
0.829 (+/-0.006) for {'kernel': 'rbf', 'C': 3, 'gamma': 0.001}
0.853 (+/-0.006) for {'kernel': 'rbf', 'C': 9, 'gamma': 0.1}
...

এবং এখানে cross_val_predictসেরা প্যারামিটারগুলি ব্যবহার করে আমার সম্পূর্ণ ডেটাসেটের প্রশিক্ষণ থেকে প্রাপ্ত গড় স্কোরগুলি (থেকে )

precision    recall  f1-score   support

      0       0.86      0.85      0.86     15417
      1       0.86      0.87      0.87     16561

avg / total       0.86      0.86      0.86     31978

acc score: 0.863750078179
roc au score: 0.863370490059
[[13147  2270]
 [ 2087 14474]]

আপনি দেখতে পাচ্ছেন পুরো ডেটাসেটের উপর প্রশিক্ষণ ফলাফলকে উন্নত করে। আমিও যাচাই যে খারাপভাবে টিউন মডেল (যেমন ডিফল্ট মান বা র্যান্ডম মানের জন্য ব্যবহার Cএবং gammaঅনেক খারাপ ভবিষ্যদ্বাণী সঠিকতা জন্য) বাড়ে।

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

আমার উদ্বেগগুলি হ'ল:

আমি কি আমার শ্রেণিবিন্যাসের নির্ভুলতা সীমাবদ্ধ করব? আমার ডেটাসেটটি কেবলমাত্র একটি উপসেটে টিউন করে প্রস্তাব করতে পারে এমন সমস্ত পূর্বাভাস শক্তি ব্যবহার করা কি আমি এড়াতে পারি? যদি পারফরম্যান্সের এমন ক্ষতি হয় তবে এটি কোনও কোনও কারণে সীমাবদ্ধ?


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

আমার আপডেট হওয়া প্রশ্নটি দেখুন। আমি আশা করি এটি এখন আরও পরিষ্কার হয়ে গেছে।
LetsPlayYahtzee

উত্তর:


15

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

মিআমিএন12W2+ +সিΣআমি=1ξআমি

বিষযে

Yআমি(এক্সআমিW)1-ξআমি,একটিএনξআমি0আমি

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

এসভিএম পুনঃনির্মাণের কিছু বাস্তবায়ন

মিআমিএন12W2+ +সিΣআমি=1ξআমি

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

আমি জিমের সাথে একমত হই যে মডেল নির্বাচনের মানদণ্ডকে ছাড়িয়ে যাওয়া কোনও সমস্যা হতে পারে, তবে আপনার যদি সাবমামে পর্যাপ্ত ডেটা থাকে তবে এটি যথেষ্ট পরিমাণে সমস্যা নাও হতে পারে।


11

ডেটাসেটের নমুনায় হাইপারপ্যারামিটার টিউন করা কি খারাপ ধারণা?

উত্তর: হ্যাঁ, কারণ আপনি আপনার নির্বাচিত ট্রেন-পরীক্ষার বিভাজনের ফলে নির্দিষ্ট পরীক্ষার সেটগুলিতে ওভারফিটিং (হাইপারপ্রেমিটার) ঝুঁকিপূর্ণ করছেন।

আমি কি আমার শ্রেণিবিন্যাসের নির্ভুলতা সীমাবদ্ধ করব?

উত্তর: হ্যাঁ, তবে সাধারণ মেশিন শেখার জ্ঞান হ'ল: আপনার সর্বোত্তম হাইপারপ্যারামিটারগুলির সাথে, , পুরো ডেটাসেটটিতে আপনার মডেল (গুলি) রিফিট করুন এবং সেই মডেলটিকে নতুন, অদেখা, ভবিষ্যতের ক্ষেত্রে আপনার চূড়ান্ত মডেল হিসাবে তৈরি করুন।λ*

আমার ডেটাসেটটি কেবলমাত্র একটি উপসেটে টিউন করে প্রস্তাব করতে পারে এমন সমস্ত পূর্বাভাস শক্তি ব্যবহার করা কি আমি এড়াতে পারি?

উত্তর: পূর্ববর্তী উত্তর দেখুন।

যদি পারফরম্যান্সের এমন ক্ষতি হয় তবে এটি কোনও কোনও কারণে সীমাবদ্ধ?

উঃ আইডেম

আমি পরামিতিগুলি মূল্যায়ন করতে ব্যবহার করার সাথে সাথে আমার নির্ভুলতাটি 10-ভাঁজ ক্রস ব্যবহার করে পরিমাপ করি

উত্তর: খেয়াল করুন যে শিরোনামে জিজ্ঞাসা করা হয়েছে তার থেকে এটি আলাদা। সাধারণীকরণের "নিরপেক্ষ" (কম পক্ষপাতমূলক) প্রাক্কলন (নির্ভুলতার সাথে এই ক্ষেত্রে পরিমাপ করা হয়) এ পৌঁছানোর জন্য 10-ভাঁজ সিভি 10 টিরও বেশি টেস্ট-ট্রেন বিভক্ত হয়। প্রথম ভাগে আমি যে বিষয়টির বিষয়ে কথা বলি তা 10-ভাণ্ডার সিভি ঠিক ঠিক সম্বোধন করে।

আমার সম্পূর্ণ ডেটাসেটের প্রশিক্ষণ থেকে ভবিষ্যদ্বাণীটির নির্ভুলতা পাওয়া যায়

উত্তর: এটি একটি "ইন-স্যাম্পল" পরিমাপ যা আশাবাদী পক্ষপাতদুষ্ট হতে পারে। তবে ভুলে যাবেন না যে আপনার অনেকগুলি কেস এবং অপেক্ষাকৃত কয়েকটি বৈশিষ্ট্য রয়েছে, যাতে এই আশাবাদ পক্ষপাতটি কোনও সমস্যা নাও হতে পারে। মেশিন লার্নিং ন্যগেট: "সেরা নিয়ন্ত্রক আরও ডেটা।"

[cont'd], পরামিতিগুলির সর্বোত্তম সেটের জন্য পরামিতিগুলির টিউন করার সময় আমি যে মূল্যায়ণ পাই তা সবসময় সত্যই কাছে।

উত্তর: পূর্ববর্তী উত্তর দেখুন। হাইপারপ্যারামিটার প্লটগুলি দেখুন: টিউনিংয়ের ফলে ত্রুটি কমেছে এবং কতটা? আপনি যা বলছেন তা থেকে, টিউনিং খুব বেশি করছে না।

আপনি নিম্নলিখিত হিসাবে এটি পরীক্ষা করতে পারে। 70% -30% ট্রেন-পরীক্ষার বিভাজন নিন। ভবিষ্যদ্বাণীমূলক পারফরম্যান্সের তুলনা করুন:

  1. ট্রেনের সেটটিতে প্রশিক্ষিত একটি অবিশ্রুত মডেল,
  2. ট্রেনের সেটটিতে প্রশিক্ষিত একটি 10-ভাণ্ডার-সিভি সুরযুক্ত মডেল।

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


1

আমি কৃত্রিম নিউরাল নেটওয়ার্কগুলির জন্য উত্তর দেব (এএনএন)।

এএনএনগুলির হাইপারপ্যারামিটারগুলি তার শেখার প্রক্রিয়াটি (যেমন, শেখার হার বা মিনি-ব্যাচের আকার) বা এর আর্কিটেকচার (যেমন, লুকানো ইউনিট বা স্তরগুলির সংখ্যা) সংজ্ঞায়িত করতে পারে।

আপনার প্রশিক্ষণ সেটটির একটি উপসেটে আর্কিটেকচারাল হাইপারপ্যারামিটারগুলি টিউন করা সম্ভবত কোনও ভাল ধারণা নয় (যদি না আপনার প্রশিক্ষণ সংস্থায় বৈচিত্রের অভাব হয়, যেমন প্রশিক্ষণের সেট আকার বৃদ্ধি করা এএনএন কার্যকারিতা বৃদ্ধি করে না), কারণ আর্কিটেকচারাল হাইপারপ্যারামিটারগুলি এএনএন এর ক্ষমতা পরিবর্তন করে।

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



0

পুরো ডেটাসেটের জন্য সর্বোত্তম হাইপারপ্যারামিটার মান সম্পর্কে মোটামুটি তবে দরকারী অনুমানের জন্য আপনি হাইপারপ্যারমিটার অপ্টিমাইজেশন অ্যালগরিদমগুলি ব্যবহার করতে পারেন যা মাল্টিফিডিলিটি মূল্যায়নগুলিকে সমর্থন করে, অর্থাত্ আপনার ডেটার উপ-সেটগুলিতে মূল্যায়নগুলি। এই জাতীয় পদ্ধতির সাধারণত হাইপারপ্যারমিটার অপ্টিমাইজেশন চালানোর জন্য প্রয়োজনীয় মোট গণনা ব্যয় হ্রাস করতে দেয়।


-1

আপনি https://link.springer.com/chapter/10.1007/978-3-319-53480-0_27 এ একবার দেখে নিতে পারেন যেখানে আমরা 100 রিয়েল- ব্যবহার করে এসভিএম হাইপার-প্যারামিটার টিউনিংয়ের এলোমেলো নমুনার প্রভাবগুলি অনুসন্ধান করেছি in বিশ্ব ডেটাসেট ...

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