বৈশিষ্ট্য নির্বাচন শুধুমাত্র প্রশিক্ষণ ডেটা (বা সমস্ত ডেটা) এ সঞ্চালিত করা উচিত?


10

শুধুমাত্র প্রশিক্ষণ ডেটা (বা সমস্ত ডেটা) এ বৈশিষ্ট্য নির্বাচন করা উচিত? আমি গায়ুন (2003) এবং সিংহি এবং লিউ (2006) এর মতো কিছু আলোচনা এবং কাগজপত্র পেরিয়েছি , তবে সঠিক উত্তর সম্পর্কে এখনও নিশ্চিত নই।

আমার পরীক্ষার সেটআপটি নিম্নরূপ:

  • ডেটাসেট: 50-স্বাস্থ্যকর নিয়ন্ত্রণ এবং 50-রোগীদের (সিসিএ 200 বৈশিষ্ট্য যা রোগের পূর্বাভাসের সাথে প্রাসঙ্গিক হতে পারে)।
  • টাস্কটি উপলভ্য বৈশিষ্ট্যের ভিত্তিতে রোগ নির্ণয় করা।

আমি যা করি তা হ'ল

  1. পুরো ডেটাসেট নিন এবং বৈশিষ্ট্য নির্বাচন (এফএস) সঞ্চালন করুন। আমি আরও প্রক্রিয়াজাতকরণের জন্য কেবল নির্বাচিত বৈশিষ্ট্যগুলি রাখি
  2. পরীক্ষা ও প্রশিক্ষণে বিভক্ত করুন, ট্রেনের ডেটা এবং নির্বাচিত বৈশিষ্ট্য ব্যবহার করে ট্রেনের শ্রেণিবদ্ধ করুন। তারপরে, ডেটা পরীক্ষা করতে শ্রেণিবদ্ধ প্রয়োগ করুন (আবার কেবলমাত্র নির্বাচিত বৈশিষ্ট্যগুলি ব্যবহার করে)। লেভ-ওয়ান-আউট বৈধতা ব্যবহৃত হয়।
  3. শ্রেণিবদ্ধকরণ নির্ভুলতা প্রাপ্ত
  4. গড়: পুনরাবৃত্তি 1) -3) এন বার। (100)N=50

আমি সম্মত হব যে পুরো ডেটাসেটে এফএস করা কিছু পক্ষপাতিত্ব চালু করতে পারে, তবে আমার অভিমত যে গড়ের সময় এটি "গড়পড়তা" হয় (4 ধাপ)। এটা কি ঠিক? (যথাযথ প্রকরণটি )<2%

1 গায়ন, আই। (2003) "পরিবর্তনশীল এবং বৈশিষ্ট্য নির্বাচনের একটি ভূমিকা", মেশিন লার্নিং রিসার্চ জার্নাল, খণ্ড। 3, পৃষ্ঠা 1157-1182
2 সিংহি, এসকে এবং লিউ, এইচ। (2006) "শ্রেণিবিন্যাস শেখার জন্য ফিচার সাবসেট নির্বাচন বায়াস", মেশিন লার্নিংয়ের 23 তম আন্তর্জাতিক সম্মেলনের প্রসেসিং আইসিএমএল '06 প্রসেসিং, পিপি। 849-856

উত্তর:


12

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

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

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

আরও তথ্যের জন্য, অ্যামব্রয়েস এবং ম্যাকলাচলান এবং এই প্রশ্নের আমার উত্তর দেখুন ।


তোমার উত্তরের জন্য ধন্যবাদ. প্রকৃতপক্ষে আমি প্রাসঙ্গিক বৈশিষ্ট্যগুলি খুঁজে পেতে এবং ভবিষ্যদ্বাণীমূলক কর্মক্ষমতা উন্নত করতে উভয়টিতেই আগ্রহী। আমার পরীক্ষায় (শ্রেণিবিন্যাসের জন্য এসভিএম), বৈশিষ্ট্য নির্বাচনটি পূর্বাভাসের নির্ভুলতার উল্লেখযোগ্যভাবে উন্নতি করেছে (তবে আপনি যেমনটি লক্ষ্য করেছেন এটি ডেটা অতিরিক্ত-ফিট করার ফলস্বরূপ হতে পারে)। আমি ধরে নিই, রিজ রিগ্রেশন দ্বারা আপনি কিছুটা তিখনভকে নিয়মিতকরণ হিসাবে পরিচিত বলে বোঝান?
পেড্রো 29

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

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

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

3

এখানে উত্তরের সংযোজন হিসাবে আমি দুটি লিঙ্ক পেয়েছি যা সত্যিই আমাকে বুঝতে সাহায্য করেছে যে এটি কেন ভাল পদ্ধতি নয়:

সম্পাদনা করুন: অনুরোধ হিসাবে লিঙ্কগুলির বিষয়বস্তুর সংক্ষিপ্ত বিবরণ:

মনে করুন আমি একটি শ্রেণিবদ্ধ প্রশিক্ষণ দিচ্ছি, এবং আমার ১০০০ টি নমুনার একটি ডেটাসেট রয়েছে, যার প্রতিটিতে 1 মিলিয়ন বৈশিষ্ট্য রয়েছে। আমি এই সমস্তগুলি প্রক্রিয়া করতে পারি না, সুতরাং আমার কম বৈশিষ্ট্য প্রয়োজন (বলুন, আমি 300 টি বৈশিষ্ট্য গণনা করতে পারি)। আমার বাহ্যিক-নমুনা, বাস্তব-বিশ্বের নির্ভুলতার সঠিকভাবে অনুমান করতে আমার কাছে 100 টি নমুনার একটি আউট-আউট টেস্ট সেট রয়েছে।

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

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

প্রাথমিকভাবে, আপনি নিম্নলিখিতগুলি করেন:

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

আপনি সম্পূর্ণ প্রশিক্ষণ সেট, টি 1 এর পরিবর্তে উপ-প্রশিক্ষণ সেটটিতে টি, লুপের ভিতরে ফিচার ইঞ্জিনিয়ারিং সম্পাদন করা সত্যিই গুরুত্বপূর্ণ।

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

সত্যিই একটি ভাল StackExchange উত্তর এই এক, যা সত্যিই এটা গভীরতা এবং আরো কোডের একটি উদাহরণ দিয়ে ব্যাখ্যা করে। আরো দেখুন এই একটি সংযোজন হিসেবে।


1
আপনি কি এই লিঙ্কগুলির সামগ্রীর সংক্ষিপ্তসার অন্তর্ভুক্ত করতে পারেন? আমরা স্ব-অন্তর্ভুক্ত উত্তরগুলি পছন্দ করি, অন্যথায় লিঙ্কগুলি স্থান পরিবর্তন করে তবে তারা "লিঙ্করোট" থেকে খুব ঝুঁকিপূর্ণ হতে পারে। বিকল্পভাবে, আমরা এটিকে আপনার জন্য একটি মন্তব্যে রূপান্তর করতে পারি।
সিলভারফিশ 11

@ সিলভারফিশ সম্পন্ন
অভিষেক

সুতরাং জন্য লুপ ভিতরে, এক বিভিন্ন ভাঁজ জন্য বিভিন্ন নির্বাচিত বৈশিষ্ট্য থাকতে পারে?
stackunderflow

2

ইফ্রন-গং "আশাবাদ" বুটস্ট্র্যাপ এর জন্য খুব ভাল। ভবিষ্যদ্বাণীপূর্ণ মডেলটি বিকাশের জন্য এবং সেই একই মডেলের সম্ভাব্য ভবিষ্যতের পারফরম্যান্সটি অনুমান করার জন্য সমস্ত ডেটা ব্যবহার করার ধারণাটি idea কাজ করার জন্য কোনও বিভাজন-নমুনা পদ্ধতির জন্য আপনার নমুনার আকার 100 এর ফ্যাক্টর দ্বারা খুব ছোট too

Y

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