ওয়ান হট এনকোডিং বনাম লেবেলএনকোডার বনাম ডিকটেক্টরিজর কখন ব্যবহার করবেন?


95

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

আমি মধ্যে পার্থক্য বুঝতে OHE, LabelEncoderএবং DictVectorizorযা তারা ডেটাতে করছেন পরিপ্রেক্ষিতে, কিন্তু কি আমার কাছে পরিষ্কার নয় যখন অন্য এক ওভারে কৌশল চাকরী চয়ন করতে পারে।

কিছু নির্দিষ্ট অ্যালগরিদম বা পরিস্থিতি আছে যেখানে অন্যের সাথে সম্মানের সাথে কারও সুবিধাগুলি / অসুবিধা রয়েছে?


2
এএন 6 ইউ 5 এর উত্তরের এবং এই বিবৃতিটির প্রসঙ্গে :> এখনও সিদ্ধান্ত গাছ এবং এলোমেলো বন যেমন অ্যালগরিদম রয়েছে যা শ্রেণিবদ্ধ ভেরিয়েবলের সাথে কাজ করতে পারে ঠিক আছে এবং লেবেল এনকোডার কম ডিস্কের জায়গা ব্যবহার করে মান সংরক্ষণ করতে ব্যবহার করা যেতে পারে। LabelEncoder ব্যবহার না করে একটি সংখ্যাসূচক বৈশিষ্ট্যে শ্রেণীবদ্ধ রূপান্তরিত হবে, যার ফলে সিদ্ধান্তের গাছটি এমন কোনও মূল্যে বিভাজন ঘটায় যা ম্যাপিংটি স্বেচ্ছাসেবী হওয়ার কারণে সত্যই বোঝায় না?
নিকো

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

উত্তর:


124

কিছু ক্ষেত্রে রয়েছে যেখানে LabelEncoder বা DictVectorizor দরকারী তবে এগুলি অর্ডিনালটির কারণে আমার মতে বেশ সীমাবদ্ধ।

LabelEncoder [কুকুর, বিড়াল, কুকুর, মাউস, বিড়াল] কে [1,2,1,3,2] এ পরিণত করতে পারে, তবে তারপরে আরোপিত অর্ডিনালটির অর্থ কুকুর এবং মাউসের গড় বিড়াল। এখনও সিদ্ধান্ত গাছ এবং এলোমেলো বনগুলির মতো অ্যালগরিদম রয়েছে যা শ্রেণিবদ্ধ ভেরিয়েবলগুলির সাথে কাজ করতে পারে ঠিক আছে এবং LabelEncoder কম ডিস্কের জায়গা ব্যবহার করে মান সংরক্ষণ করতে ব্যবহার করা যেতে পারে।

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


1
আপনাকে অনেক ধন্যবাদ - এটি খুব সহায়ক এবং অনেক অর্থবোধ করে। নির্দিষ্ট / প্রান্তের ক্ষেত্রে আপনি ব্যবহার করেন এমন অন্য কোনও এনকোডিং স্কিম রয়েছে কি? আপনি কি কখনও খুঁজে পেয়েছেন যে আপনি এমন পরিস্থিতিতে আছেন যেখানে আপনি বিভিন্ন বৈশিষ্ট্যের জন্য বিভিন্ন এনকোডিং স্কিম ব্যবহার করবেন?
anthr

20

যদিও এএন 6 ইউ 5 খুব ভাল উত্তর দিয়েছে, আমি ভবিষ্যতের রেফারেন্সের জন্য কয়েকটি পয়েন্ট যুক্ত করতে চেয়েছিলাম। যখন বিবেচনা করা এক হট এনকোডিং (OHE) এবং লেবেল এনকোডিং , যদি আমরা চেষ্টা তা বুঝতে মডেল আপনি নির্মাণ করার চেষ্টা করছেন উচিত নয়। যাকে আমরা দুটি বিভাগের মডেল বিবেচনা করব তা হ'ল:

  1. গাছ ভিত্তিক মডেল : গ্রেডিয়েন্ট বুস্টড ডিসিশন ট্রি এবং এলোমেলো বন।
  2. নন-ট্রি ভিত্তিক মডেল : লিনিয়ার, কেএনএন বা নিউরাল নেটওয়ার্ক ভিত্তিক।

গাছ ভিত্তিক মডেলগুলি তৈরি করার সময় কখন OHE প্রয়োগ করতে হবে এবং কখন লেবেল এনকোডিং প্রয়োগ করতে হবে তা বিবেচনা করুন।

আমরা যখন OHE প্রয়োগ করি তখন:

  1. লেবেল এনকোডিংয়ে একে অপরের নিকটে থাকা মানগুলি যখন লক্ষ্য মানের সাথে মিল থাকে না (অ-লিনিয়ার ডেটা)।
  2. শ্রেণীবদ্ধ বৈশিষ্ট্যটি যখন অর্ডিনাল নয় (কুকুর, বিড়াল, মাউস)।

আমরা লেবেল এনকোডিং প্রয়োগ করি যখন:

  1. শ্রেণীবদ্ধ বৈশিষ্ট্যটি হ'ল অর্ডিনাল (জুনিয়র কেজি, সিনিয়র কেজি, প্রাইমারী স্কুল, উচ্চ বিদ্যালয়, ইত্যাদি)।
  2. যখন আমরা একই রকম বিভাগগুলিতে ঘনিষ্ঠ লেবেলগুলি নির্ধারণ করে এমন একটি লেবেল এনকোডার নিয়ে আসতে পারি : এটি ট্র্রেসে কম স্পিল্টের দিকে নিয়ে যায় তাই কার্যকর করার সময় হ্রাস করে।
  3. যখন ডেটাসেটে শ্রেণিবদ্ধ বৈশিষ্ট্যগুলির সংখ্যা বিশাল: এক-হট এনকোডিংয়ের সাথে বিপুল সংখ্যক মান সহ শ্রেণীবদ্ধ বৈশিষ্ট্যটি (1) উচ্চ মেমরির গ্রাহক হতে পারে এবং (2) ক্ষেত্রে যখন অ-বিভাগীয় বৈশিষ্ট্যগুলি মডেল দ্বারা খুব কমই ব্যবহৃত হয়। আপনি স্পার্স ম্যাট্রিক্স নিযুক্ত করলে আপনি 1 ম কেস নিয়ে কাজ করতে পারেন। আপনি যদি বৈশিষ্ট্যের একটি উপসেট ব্যবহার করে একটি গাছ তৈরি করেন তবে ২ য় ক্ষেত্রে ঘটতে পারে। উদাহরণস্বরূপ, যদি আপনার কাছে 9 টি সংখ্যাসূচক বৈশিষ্ট্য এবং 100 টি স্বতন্ত্র মানগুলির সাথে 1 শ্রেণীবদ্ধ থাকে এবং আপনি সেই শ্রেণীবদ্ধ বৈশিষ্ট্যটিকে এক-হট-এনকোড করেন তবে আপনি 109 টি বৈশিষ্ট্য পাবেন। যদি কোনও গাছ কেবলমাত্র বৈশিষ্ট্যের একটি উপসেট দিয়ে নির্মিত হয় তবে প্রাথমিক 9 টি সংখ্যাসূচক বৈশিষ্ট্য খুব কমই ব্যবহৃত হবে। এই ক্ষেত্রে, আপনি এই উপসেটটির প্যারামিটার নিয়ন্ত্রণের আকার বাড়াতে পারেন। এক্সজিবিস্টে একে কলসাম্পল_বাইট্রি বলা হয়, স্কেলের্নের র‌্যান্ডম ফরেস্ট সর্বাধিক ফিচারে।

আপনি যদি ওএনএইচই দিয়ে চালিয়ে যেতে চান তবে @ এএন 6 ইউ 5 এর পরামর্শ অনুসারে আপনি পিসিএকে ওএইচইয়ের সাথে সংযুক্ত করতে চাইতে পারেন।

বৃক্ষবিহীন মডেলগুলি তৈরি করার সময় কখন OHE এবং লেবেল এনকোডিং প্রয়োগ করবেন তা বিবেচনা করতে দিন।

লেবেল এনকোডিং প্রয়োগ করতে, লেবেল এনকোডিং কার্যকরভাবে ব্যবহারের জন্য বৈশিষ্ট্য এবং লক্ষ্যটির মধ্যে নির্ভরতা লিনিয়ার হতে হবে।

একইভাবে, নির্ভরতা যদি অ-রৈখিক হয়, আপনি একই জন্য ওএইচই ব্যবহার করতে চাইতে পারেন।

দ্রষ্টব্য: কয়েকটি ব্যাখ্যা কোরাসেরা থেকে ডেটা বিজ্ঞান প্রতিযোগিতা কীভাবে জিততে হবে তা থেকে উল্লেখ করা হয়েছে ।


খুব স্বজ্ঞাত ব্যাখ্যা। এটি "স্পিলিট" হওয়া উচিত নয়, "স্পিল্টস" নয়?
dzieciou

0

LabelEncoder হ'ল সাধারন ডেটার জন্য, যখন OHE নামমাত্র ডেটার জন্য।

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