পরিমাপ শব্দটি একটি বৈশিষ্ট্য ভেক্টরের উপাদানগুলির সংখ্যার প্রতিশব্দ। কিছু শ্রেণীগত বৈশিষ্ট্য নিম্ন মাত্রিক। যেমন:
বৈশিষ্ট্যের নাম | #টি বিভাগ | নমুনা বিভাগ |
---|---|---|
তুষারপাত_আজ | 2 | সত্য, মিথ্যা |
দক্ষতা_স্তর | 3 | শিক্ষানবিস, অনুশীলনকারী, বিশেষজ্ঞ |
ঋতু | 4 | শীত, বসন্ত, গ্রীষ্ম, শরৎ |
সপ্তাহের_দিন | 7 | সোমবার, মঙ্গলবার, বুধবার |
গ্রহ | 8 | বুধ, শুক্র, পৃথিবী |
যখন একটি শ্রেণীবদ্ধ বৈশিষ্ট্যের সম্ভাব্য বিভাগগুলির সংখ্যা কম থাকে, আপনি এটিকে একটি শব্দভান্ডার হিসাবে এনকোড করতে পারেন। একটি শব্দভান্ডার এনকোডিং সহ, মডেল প্রতিটি সম্ভাব্য শ্রেণীগত মানকে একটি পৃথক বৈশিষ্ট্য হিসাবে বিবেচনা করে। প্রশিক্ষণের সময়, মডেল প্রতিটি বিভাগের জন্য বিভিন্ন ওজন শিখে।
উদাহরণ স্বরূপ, ধরুন আপনি car_color
নামের একটি স্বতন্ত্র বৈশিষ্ট্যের উপর ভিত্তি করে একটি গাড়ির দামের পূর্বাভাস দেওয়ার জন্য একটি মডেল তৈরি করছেন। সম্ভবত লাল গাড়ির মূল্য সবুজ গাড়ির চেয়ে বেশি। যেহেতু নির্মাতারা সীমিত সংখ্যক বাহ্যিক রং অফার করে, car_color
হল একটি নিম্ন-মাত্রিক শ্রেণীগত বৈশিষ্ট্য। নিম্নলিখিত চিত্রটি car_color
এর জন্য একটি শব্দভান্ডার (সম্ভাব্য মান) প্রস্তাব করে:
ব্যায়াম: আপনার অন্তর্দৃষ্টি পরীক্ষা করুন
"Red"
একটি ভাসমান-বিন্দু সংখ্যা নয়। আপনাকে অবশ্যই "Red"
এর মত স্ট্রিংগুলিকে ফ্লোটিং-পয়েন্ট সংখ্যায় রূপান্তর করতে হবে৷সূচক সংখ্যা
মেশিন লার্নিং মডেলগুলি শুধুমাত্র ফ্লোটিং-পয়েন্ট নম্বরগুলিকে ম্যানিপুলেট করতে পারে। অতএব, আপনাকে অবশ্যই প্রতিটি স্ট্রিংকে একটি অনন্য সূচক নম্বরে রূপান্তর করতে হবে, যেমনটি নিম্নলিখিত চিত্রে রয়েছে:
ব্যায়াম: আপনার অন্তর্দৃষ্টি পরীক্ষা করুন
"Black"
(সূচক নম্বর 5) কে "Orange"
(সূচক নম্বর 1) থেকে মডেলের জন্য 5 গুণ বেশি অর্থবহ বলে বিবেচনা করবে।"Black"
(সূচক নম্বর 5) "Orange"
(সূচক নম্বর 1) থেকে মডেলের জন্য 5 গুণ বেশি অর্থবহ বলে বিবেচনা করবে। এক-গরম এনকোডিং
একটি শব্দভান্ডার তৈরির পরবর্তী ধাপ হল প্রতিটি সূচক নম্বরকে তার এক-হট এনকোডিং -এ রূপান্তর করা। এক-হট এনকোডিং-এ:
- প্রতিটি বিভাগকে N উপাদানগুলির একটি ভেক্টর (অ্যারে) দ্বারা প্রতিনিধিত্ব করা হয়, যেখানে N হল বিভাগের সংখ্যা। উদাহরণস্বরূপ, যদি
car_color
আটটি সম্ভাব্য বিভাগ থাকে, তাহলে প্রতিনিধিত্বকারী এক-হট ভেক্টরের আটটি উপাদান থাকবে। - এক-গরম ভেক্টরের উপাদানগুলির মধ্যে একটির মান 1.0 আছে; বাকি সব উপাদানের মান 0.0 আছে।
উদাহরণস্বরূপ, নিম্নলিখিত টেবিলটি car_color
এ প্রতিটির জন্য এক-হট এনকোডিং দেখায়:
বৈশিষ্ট্য | লাল | কমলা | নীল | হলুদ | সবুজ | কালো | বেগুনি | বাদামী |
---|---|---|---|---|---|---|---|---|
"লাল" | 1 | 0 | 0 | 0 | 0 | 0 | 0 | 0 |
"কমলা" | 0 | 1 | 0 | 0 | 0 | 0 | 0 | 0 |
"নীল" | 0 | 0 | 1 | 0 | 0 | 0 | 0 | 0 |
"হলুদ" | 0 | 0 | 0 | 1 | 0 | 0 | 0 | 0 |
"সবুজ" | 0 | 0 | 0 | 0 | 1 | 0 | 0 | 0 |
"কালো" | 0 | 0 | 0 | 0 | 0 | 1 | 0 | 0 |
"বেগুনি" | 0 | 0 | 0 | 0 | 0 | 0 | 1 | 0 |
"বাদামী" | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 1 |
এটি এক-হট ভেক্টর, স্ট্রিং বা সূচক নম্বর নয়, যা বৈশিষ্ট্য ভেক্টরে পাস হয়। মডেলটি বৈশিষ্ট্য ভেক্টরের প্রতিটি উপাদানের জন্য একটি পৃথক ওজন শেখে।
নিম্নলিখিত চিত্রটি শব্দভান্ডার উপস্থাপনার বিভিন্ন রূপান্তরের পরামর্শ দেয়:
বিক্ষিপ্ত প্রতিনিধিত্ব
একটি বৈশিষ্ট্য যার মান প্রধানত শূন্য (বা খালি) একটি স্পার্স বৈশিষ্ট্য বলা হয়। অনেক শ্রেণীবদ্ধ বৈশিষ্ট্য, যেমন car_color
, স্পার্স বৈশিষ্ট্য হতে থাকে। স্পার্স রিপ্রেজেন্টেশন মানে স্পার্স ভেক্টরে 1.0 এর অবস্থান সংরক্ষণ করা। উদাহরণস্বরূপ, "Blue"
এর জন্য এক-গরম ভেক্টর হল:
[0, 0, 1, 0, 0, 0, 0, 0]
যেহেতু 1
পজিশন 2 এ রয়েছে (0 এ গণনা শুরু করার সময়), পূর্ববর্তী ওয়ান-হট ভেক্টরের জন্য স্পার্স উপস্থাপনা হল:
2
লক্ষ্য করুন যে স্পার্স উপস্থাপনা আট-উপাদান এক-হট ভেক্টরের তুলনায় অনেক কম মেমরি গ্রহণ করে। গুরুত্বপূর্ণভাবে, মডেলটিকে অবশ্যই ওয়ান-হট ভেক্টরে প্রশিক্ষণ দিতে হবে, স্পার্স উপস্থাপনা নয়।
সুনির্দিষ্ট তথ্যে বহিরাগত
সাংখ্যিক তথ্যের মতো, শ্রেণীবদ্ধ ডেটাতেও বহিরাগত থাকে। ধরুন car_color
শুধুমাত্র জনপ্রিয় রংই নয়, কিছু কমই ব্যবহৃত আউটলিয়ার রংও রয়েছে, যেমন "Mauve"
বা "Avocado"
। এই বহিরাগত রঙগুলির প্রতিটিকে একটি পৃথক বিভাগ দেওয়ার পরিবর্তে, আপনি সেগুলিকে আউট-অফ-ভোকাবুলারি (OOV) নামে একটি একক "ক্যাচ-অল" বিভাগে নিয়ে যেতে পারেন। অন্য কথায়, সমস্ত বহিরাগত রং একটি একক আউটলার বালতিতে বাঁধা হয়। সিস্টেম সেই আউটলিয়ার বালতির জন্য একটি একক ওজন শেখে।
উচ্চ-মাত্রিক শ্রেণীগত বৈশিষ্ট্য এনকোডিং
কিছু শ্রেণীগত বৈশিষ্ট্যের উচ্চ সংখ্যক মাত্রা রয়েছে, যেমন নিম্নোক্ত সারণীতে রয়েছে:
বৈশিষ্ট্যের নাম | #টি বিভাগ | নমুনা বিভাগ |
---|---|---|
ইংরেজিতে_শব্দ | ~500,000 | "খুশি", "হাঁটা" |
US_postal_codes | ~42,000 | "02114", "90301" |
শেষ_নাম_জার্মানিতে | ~850,000 | "শ্মিড্ট", "স্নাইডার" |
যখন বিভাগের সংখ্যা বেশি হয়, এক-হট এনকোডিং সাধারণত একটি খারাপ পছন্দ। এম্বেডিং , একটি পৃথক এমবেডিং মডিউলে বিস্তারিত, সাধারণত একটি অনেক ভালো পছন্দ। এমবেডিংগুলি মাত্রার সংখ্যা উল্লেখযোগ্যভাবে হ্রাস করে, যা দুটি গুরুত্বপূর্ণ উপায়ে মডেলগুলিকে উপকৃত করে:
- মডেলটি সাধারণত দ্রুত ট্রেনিং করে।
- নির্মিত মডেলটি সাধারণত আরও দ্রুত ভবিষ্যদ্বাণী করে। যে, মডেল কম লেটেন্সি আছে.
হ্যাশিং (এটিকে হ্যাশিং ট্রিকও বলা হয়) মাত্রার সংখ্যা কমানোর একটি কম সাধারণ উপায়।