📋 বিষয়সূচী (Table of Contents)

01

Features কী? (What are Features?)

Machine Learning-এর সবচেয়ে গুরুত্বপূর্ণ ধারণা

সহজ সংজ্ঞা

Feature হলো একটি জিনিসের বৈশিষ্ট্য বা গুণ, যা Machine Learning Model-কে সিদ্ধান্ত নিতে সাহায্য করে।

বাস্তব জীবনের উদাহরণ দিয়ে বোঝা যাক

মনে করো তুমি একটি বাসা কিনতে চাও। তুমি কোন কোন বিষয় দেখো?

তুমি যা দেখো (মানুষ)

📐 বাসার আয়তন কত?
🛏 কতটি বেডরুম?
📍 কোথায় অবস্থিত?
🏗 বয়স কত বছর?
🚗 পার্কিং আছে কি?

Machine কী দেখে

এই প্রতিটি প্রশ্নের উত্তরই একটি Feature। Machine ঠিক এই তথ্যগুলো ব্যবহার করে বাসার দাম অনুমান করে।

আরও বাস্তব উদাহরণ

পরিস্থিতিFeatures (বৈশিষ্ট্য)সিদ্ধান্ত (Target)
ডাক্তার রোগী দেখছেনবয়স, রক্তচাপ, জ্বরের মাত্রা, লক্ষণরোগের নাম
ব্যাংক লোন দেবে কি নাআয়, চাকরির ধরন, বয়স, আগের ঋণলোন অনুমোদন / বাতিল
ইমেইল Spam কি নাশব্দ, প্রেরক, লিঙ্ক সংখ্যা, বিষয়বস্তুSpam / Not Spam
ছাত্রের রেজাল্টউপস্থিতি, পরীক্ষার নম্বর, পড়ার সময়পাস / ফেল
Netflix সিনেমা সুপারিশআগে দেখা সিনেমা, রেটিং, ঘরানাপরবর্তী সিনেমা

Machine কীভাবে Features দিয়ে সিদ্ধান্ত নেয়?

একটি শিশু যেভাবে শেখে, Machine-ও সেভাবেই শেখে:

Raw Data
কাঁচা তথ্য
Features
বৈশিষ্ট্য
ML Model
প্রশিক্ষণ
Prediction
সিদ্ধান্ত

মনে রাখো: Features ছাড়া Machine Learning সম্ভব না। যত ভালো Feature, তত ভালো Model!

02

Features-এর প্রকারভেদ

৬ ধরনের Features বিস্তারিত

১. Numerical Features (সংখ্যাসূচক বৈশিষ্ট্য)

যেসব Feature সংখ্যা দিয়ে প্রকাশ করা যায় এবং যোগ-বিয়োগ করা সম্ভব।

১ক. Continuous Features (অবিচ্ছিন্ন)

সংজ্ঞা: যেসব মান যেকোনো দশমিক সংখ্যা হতে পারে — যেমন ওজন ৬৫.৩ কেজি হতে পারে।

উদাহরণমান
উচ্চতা৫.৭৩ ফুট
তাপমাত্রা৩৭.২°C
বেতন৪৫,৫০০ টাকা
বাসার আয়তন১৪৫০.৫ sqft
পরীক্ষার নম্বর৭৮.৫ / ১০০

১খ. Discrete Features (বিচ্ছিন্ন)

সংজ্ঞা: যেসব মান পুরো সংখ্যা হয় এবং দশমিক হয় না — যেমন বেডরুম ২.৫টি হয় না।

উদাহরণমান
বেডরুম সংখ্যা২, ৩, ৪
সন্তান সংখ্যা০, ১, ২, ৩
বয়স (বছর)২৫, ৩০, ৪৫
গাড়ির সংখ্যা০, ১, ২
বই পড়া৫, ১০, ২০

২. Categorical Features (শ্রেণীভিত্তিক বৈশিষ্ট্য)

যেসব Feature নাম বা গ্রুপ দিয়ে প্রকাশ করা হয়, সংখ্যা দিয়ে নয়।

২ক. Nominal Features (নামসূচক)

সংজ্ঞা: শ্রেণীগুলোর মধ্যে কোনো ক্রম নেই — লাল কি নীলের চেয়ে বড়? না!

Featureমান
রক্তের গ্রুপA, B, AB, O
রঙলাল, নীল, সবুজ
শহরঢাকা, চট্টগ্রাম, রাজশাহী
পেশাডাক্তার, শিক্ষক, প্রকৌশলী
মোবাইল ব্র্যান্ডSamsung, Apple, Xiaomi

২খ. Ordinal Features (ক্রমসূচক)

সংজ্ঞা: শ্রেণীগুলোর মধ্যে একটি নির্দিষ্ট ক্রম আছে — Excellent > Good > Poor

Featureমান (ক্রম অনুযায়ী)
শিক্ষার স্তরSSC < HSC < গ্র্যাজুয়েট
হোটেল রেটিং★ < ★★ < ★★★★★
সন্তুষ্টিখারাপ < মাঝারি < ভালো < চমৎকার
পদমর্যাদাJunior < Mid < Senior
ব্যথার মাত্রাহালকা < মাঝারি < তীব্র

৩. Date & Time Features (তারিখ ও সময়)

সংজ্ঞা: তারিখ বা সময়সম্পর্কিত তথ্য। Machine Learning-এ এগুলো সরাসরি ব্যবহার না করে বিভিন্নভাবে ভেঙে ব্যবহার করা হয়।

মূল তারিখFeature হিসেবে ব্যবহারML-এ কাজে লাগে
01-01-2024বছর = 2024, মাস = 1, দিন = 1মৌসুমী বিক্রয় বিশ্লেষণ
রবিবারসাপ্তাহিক দিন = 0সপ্তাহের কোনদিন বেশি বিক্রি হয়
বিকাল ৫টাঘণ্টা = 17, রাত না দিনট্রাফিক জ্যাম পূর্বাভাস
ঈদের দিনছুটি = হ্যাঁ (1)বাজারে কেনাকাটার হার

৪. Text Features (টেক্সট বৈশিষ্ট্য)

সংজ্ঞা: যেকোনো লেখা বা বাক্য। Machine এটি সরাসরি বুঝতে পারে না, তাই সংখ্যায় রূপান্তর করতে হয়।

Text FeatureউদাহরণML-এ কাজে লাগে
পণ্যের রিভিউ"এই পণ্যটি অসাধারণ!"Sentiment Analysis
ইমেইলের বিষয়"আপনি ১ কোটি টাকা জিতেছেন!"Spam Detection
চাকরির বিজ্ঞাপন"Software Engineer চাই"চাকরি শ্রেণীকরণ
সংবাদ শিরোনাম"ঢাকায় বৃষ্টি"বিভাগ নির্ধারণ

৫. Boolean / Binary Features (হ্যাঁ/না বৈশিষ্ট্য)

সংজ্ঞা: শুধুমাত্র দুটি মান থাকে — হ্যাঁ বা না, ১ বা ০, সত্য বা মিথ্যা।

Featureহ্যাঁ (১)না (০)ব্যবহার
গ্যারেজ আছে?গ্যারেজ আছেগ্যারেজ নেইবাসার দাম
ডায়াবেটিস আছে?আছেনেইরোগ নির্ণয়
বিবাহিত?বিবাহিতঅবিবাহিতলোন অনুমোদন
প্রিমিয়াম সদস্য?হ্যাঁনাগ্রাহক ধরে রাখা

সারসংক্ষেপ: Features মূলত ৫ ধরনের — Numerical (Continuous, Discrete), Categorical (Nominal, Ordinal), Date/Time, Text, এবং Boolean।

03

Features বনাম Target

Input এবং Output-এর পার্থক্য বোঝা

Feature (বৈশিষ্ট্য)
যা আমরা Model-কে দিই। এটি Input।
এর উপর ভিত্তি করে Model শেখে।

Target (লক্ষ্য)
Model যা ভবিষ্যদ্বাণী করে। এটি Output।
আমরা এটি জানতে চাই।

উদাহরণ ১: বাসার দাম নির্ধারণ

Columnধরনকেন?
Featureবাসার আয়তন (sqft)Continuous Numericalএটি Input — দাম নির্ধারণে সাহায্য করে
Featureবেডরুম সংখ্যাDiscrete Numericalএটি Input — দাম নির্ধারণে সাহায্য করে
Featureএলাকার নামNominal Categoricalএটি Input — দাম নির্ধারণে সাহায্য করে
Featureবাসার বয়স (বছর)Continuous Numericalএটি Input — দাম নির্ধারণে সাহায্য করে
Targetবাসার দাম (লক্ষ টাকা)Continuous Numericalএটি Output — আমরা এটি জানতে চাই!

উদাহরণ ২: ছাত্রের ফলাফল

Columnধরন
Featureউপস্থিতি (%)Continuous
Featureপ্রতিদিন পড়ার ঘণ্টাContinuous
Featureমিড পরীক্ষার নম্বরContinuous
Featureটিউশন নেওয়া হয়?Boolean
Targetপাস / ফেলBoolean (Output)

উদাহরণ ৩: Customer Churn (গ্রাহক হারানো)

Columnধরন
Featureগ্রাহকের বয়সDiscrete
Featureপ্রতি মাসে বিলContinuous
Featureসার্ভিসের মাসDiscrete
Featureঅভিযোগ সংখ্যাDiscrete
Targetচলে যাবে? (হ্যাঁ/না)Boolean (Output)

সহজ নিয়ম: যা দিয়ে আমরা সিদ্ধান্ত নিই = Feature। যে সিদ্ধান্তটি নিই = Target।

04

Feature Engineering

কাঁচা তথ্যকে শক্তিশালী Feature-এ রূপান্তর

Feature Engineering মানে হলো — বিদ্যমান তথ্য থেকে নতুন, আরও তথ্যবহুল Feature তৈরি করা যা Model-কে আরও ভালো শিখতে সাহায্য করে।

বাস্তব জীবনের উপমা

রান্নার উপমা

কাঁচা সবজি হলো Raw Data। সেগুলো কেটে, রান্না করে, মশলা দিয়ে সুস্বাদু খাবার বানানোই হলো Feature Engineering।

সোনার উপমা

মাটি থেকে কাঁচা সোনা বের করা হলো Data Collection। সেই সোনা গলিয়ে গহনা বানানোই Feature Engineering।

উদাহরণ ১: বাসার Dataset

কাঁচা তথ্য (Raw Data)তৈরি করা Feature (Engineered)কেন উপকারী?
জন্মতারিখ: 1985-03-12বয়স: ৩৯ বছরসরাসরি ব্যবহারযোগ্য সংখ্যা
নির্মাণ সাল: 2010বাসার বয়স: ১৪ বছরপুরনো বাসার দাম কম
দৈর্ঘ্য: ৩০ ফুট, প্রস্থ: ২০ ফুটআয়তন: ৬০০ sqftআলাদা দুটি সংখ্যার চেয়ে একটি ভালো
মোট রুম: ৬, বেডরুম: ৩ননবেডরুম রুম: ৩বাথরুম+রান্নাঘর সংখ্যা বোঝা যায়

উদাহরণ ২: Sales Dataset

কাঁচা তথ্যতৈরি করা Featureউদ্দেশ্য
বিক্রির তারিখ: 2024-12-25মাস=12, ঈদ/উৎসব=হ্যাঁমৌসুমী বিক্রয় ধরা
মোট বিক্রয়: ১০,০০০ টাকা, পরিমাণ: ১০০প্রতি পণ্যের দাম: ১০০ টাকামূল্য বিশ্লেষণ
গত সপ্তাহের বিক্রয়: ৮,০০০বিক্রয় বৃদ্ধি: +২৫%ট্রেন্ড বোঝা

উদাহরণ ৩: Customer Dataset

কাঁচা তথ্যতৈরি করা Feature
প্রথম কেনার তারিখ: ২০২০গ্রাহক কতদিন ধরে: ৪ বছর
মোট ক্রয়: ৫০,০০০, বার: ২০গড় ক্রয়: ২,৫০০ টাকা
শেষ কেনার তারিখশেষ কেনার কতদিন আগে: ৯০ দিন

উদাহরণ ৪: Date Column Engineering

তারিখবছরমাসদিনসপ্তাহের দিনত্রৈমাসিকছুটি?
2024-01-01202411সোমবারQ1হ্যাঁ
2024-06-152024615শনিবারQ2না
2024-12-3120241231মঙ্গলবারQ4হ্যাঁ

কেন Feature Engineering দরকার? একটি ভালো Engineered Feature মাঝে মাঝে Model-এর কার্যকারিতা ৩০-৫০% বাড়িয়ে দিতে পারে!

05

Feature Representation

মানুষ কী দেখে, Machine কী দেখে

মানুষ যেভাবে ডেটা দেখে (Human-Readable)

ছাত্রের নামবয়সউপস্থিতি (%)পড়ার ঘণ্টাপাস/ফেল
রাহেলা১৮৯০পাস
করিম১৯৬০ফেল
সুমাইয়া২০৮৫পাস
তানভীর১৭৪৫ফেল
Human Data
নাম, শব্দ, ছবি
রূপান্তর
Encoding
Machine Data
শুধু সংখ্যা

Machine যেভাবে দেখে (Feature Matrix X এবং Target Vector y)

বয়স উপস্থিতি পড়ার_ঘণ্টা → পাস/ফেল (y)
X = [ [ 18, 90, 6 ] → 1 (পাস) ]
[ [ 19, 60, 2 ] → 0 (ফেল) ]
[ [ 20, 85, 5 ] → 1 (পাস) ]
[ [ 17, 45, 1 ] → 0 (ফেল) ]

গুরুত্বপূর্ণ শব্দগুলো বোঝা

ML শব্দসহজ মানেউদাহরণ
Row (সারি)একটি সম্পূর্ণ নমুনা বা রেকর্ডএকজন ছাত্রের সব তথ্য
Column (কলাম)একটি বৈশিষ্ট্যশুধু বয়সের কলাম
Feature (X)Input চলকবয়স, উপস্থিতি, পড়ার ঘণ্টা
Feature Matrixসকল Features-এর সমন্বয়X = সকল Input কলাম
Target Vector (y)Output কলামপাস/ফেল
Sample / Instanceএকটি সারি = একটি উদাহরণরাহেলার তথ্য = ১টি sample

মনে রাখো: Machine কখনো "রাহেলা" বোঝে না। সে শুধু [18, 90, 6] বোঝে। তাই সব তথ্যকে সংখ্যায় রূপান্তর করতে হয়।

06

Good Features বনাম Bad Features

ভালো Feature Model-কে শক্তিশালী করে, খারাপ Feature নষ্ট করে

ভালো Feature-এর বৈশিষ্ট্য

প্রাসঙ্গিকতা

Target-এর সাথে সরাসরি সম্পর্ক আছে

পরিমাপযোগ্যতা

সঠিক ও নির্ভরযোগ্যভাবে মাপা যায়

স্বাধীনতা

অন্য Feature-এর উপর নির্ভর করে না

তথ্যবহুলতা

Model শিখতে নতুন কিছু পায়

সহজলভ্যতা

বাস্তবে সংগ্রহ করা সম্ভব

সামঞ্জস্যতা

সব সারিতে একই ফরম্যাটে আছে

বিস্তারিত তুলনা

ভালো Feature (Good)খারাপ Feature (Bad)কারণ
বাসার আয়তন (sqft)বাসার ID নম্বরID শুধু পরিচয়, দামের সাথে সম্পর্ক নেই
রক্তচাপরোগীর নামনাম রোগ নির্ণয়ে কোনো কাজে আসে না
পড়ার ঘণ্টা / দিনছাত্রের রোল নম্বররোল নম্বর ফলাফল নির্ধারণ করে না
শেষ কেনার কতদিন আগেগ্রাহকের ইমেইলইমেইল থেকে চলে যাওয়া বোঝা যায় না
গড় মাসিক বিলঅ্যাকাউন্ট নম্বরঅ্যাকাউন্ট নম্বর র‍্যান্ডম
মেঘাচ্ছন্নতার মাত্রা (%)আবহাওয়াবিদের নামনাম বৃষ্টি হওয়া-না-হওয়া বলে না
CPU তাপমাত্রাকম্পিউটারের ক্রমিক নম্বরSerial number র‍্যান্ডম সংখ্যা
লেনদেনের পরিমাণলেনদেনের সময়স্ট্যাম্প (Raw)Raw timestamp সরাসরি কাজ করে না

সতর্কতা: খারাপ Feature Model-এ শুধু Noise যোগ করে, accuracy কমায়, এবং training সময় বাড়ায়। বেশি Feature সবসময় ভালো না!

07

বাসার দাম নির্ধারণ — বিস্তারিত উদাহরণ

কোন Feature কাজের, কোনটি বেকার?
Featureভালো / খারাপকারণ
বাসার আয়তন (sqft)ভালোসরাসরি প্রভাব আছে — বড় বাসা = বেশি দাম
বেডরুম সংখ্যাভালোপরিবারের চাহিদা নির্ধারণ করে
এলাকার নাম (গুলশান/মিরপুর)ভালোঅবস্থান দামের সবচেয়ে বড় কারণ
শহর কেন্দ্র থেকে দূরত্বভালোকম দূরত্ব = বেশি দাম
বাসার বয়স (বছর)ভালোপুরনো বাসার দাম সাধারণত কম
নিকটতম স্কুল/হাসপাতালের দূরত্বভালোসুবিধাজনক অবস্থান = বেশি চাহিদা
গ্যারেজ আছে কি নাভালোগ্যারেজ বাসার মান বাড়ায়
বাসার রঙখারাপরঙ সহজে পরিবর্তনযোগ্য, দামে প্রভাব নেই
মালিকের নামখারাপনাম বাসার দাম নির্ধারণ করে না
বাসার ID নম্বরখারাপএটি শুধু পরিচয়, তথ্য নয়
র‍্যান্ডম সংখ্যাখারাপকোনো অর্থ নেই, Model বিভ্রান্ত হয়
মালিক কতদিন আগে বাড়িটি কিনেছিলেনমাঝামাঝিকিছুটা প্রাসঙ্গিক তবে সরাসরি নয়
08

সাধারণ শিক্ষার্থীদের ভুল

এই ভুলগুলো এড়িয়ে চলো
ভুল ১: Feature ও Target গুলিয়ে ফেলা

যেমন: বাসার দামকেই Feature হিসেবে ব্যবহার করা।

সমাধান:

নিজেকে জিজ্ঞেস করো — "আমি কি এটি জানতে চাই, নাকি এটি দিয়ে জানতে চাই?"

ভুল ২: অপ্রাসঙ্গিক Feature ব্যবহার

বাসার দাম বলতে মালিকের জন্মতারিখ ব্যবহার করা।

সমাধান:

প্রতিটি Feature-এর জন্য জিজ্ঞেস করো — "এটি কি Target-এর সাথে সরাসরি সম্পর্কিত?"

ভুল ৩: Data Leakage

ভবিষ্যতের তথ্য Feature হিসেবে ব্যবহার। যেমন: রোগীর ডিসচার্জ তারিখ দিয়ে রোগের পূর্বাভাস।

সমাধান:

শুধু সেই তথ্য ব্যবহার করো যা পূর্বাভাসের আগে পাওয়া যায়।

ভুল ৪: অতিরিক্ত Feature (Feature Overload)

১০০টি Feature দিলে Model ভালো হবে — এই ধারণা ভুল।

সমাধান:

কম কিন্তু মানসম্পন্ন Feature বেছে নাও। "Less is more"।

ভুল ৫: খুব কম Feature

মাত্র ১-২টি Feature দিয়ে জটিল সমস্যা সমাধান করতে চাওয়া।

সমাধান:

সমস্যার জটিলতা অনুযায়ী যথেষ্ট প্রাসঙ্গিক Feature রাখো।

09

Classroom Summary — রিভিশন

পরীক্ষার প্রশ্ন, MCQ, ও ব্যবহারিক অনুশীলন

দ্রুত রিভিশন নোট

5
Feature-এর ধরন
1
Target প্রতি Problem
X
Feature Matrix
y
Target Vector

৫টি মূল পয়েন্ট:
১. Feature = Input তথ্য যা Model শেখার জন্য ব্যবহার করে
২. Target = যা আমরা ভবিষ্যদ্বাণী করতে চাই
৩. Feature ৫ ধরনের: Numerical, Categorical, Date/Time, Text, Boolean
৪. Feature Engineering = কাঁচা তথ্য থেকে ভালো Feature তৈরি করা
৫. Machine সব তথ্য সংখ্যা হিসেবে দেখে (Feature Matrix)

Interview / Viva প্রশ্ন

#প্রশ্নসংক্ষিপ্ত উত্তর
Feature কী?ML Model-এ Input হিসেবে ব্যবহৃত তথ্যের বৈশিষ্ট্য
Feature ও Target-এর পার্থক্য কী?Feature = Input (X), Target = Output (y)
Continuous ও Discrete-এর পার্থক্য?Continuous = দশমিক সম্ভব, Discrete = পূর্ণসংখ্যা
Nominal ও Ordinal-এর পার্থক্য?Nominal = কোনো ক্রম নেই, Ordinal = ক্রম আছে
Feature Engineering কেন দরকার?Raw data থেকে Model-এর জন্য আরও তথ্যবহুল Feature তৈরি করতে
Data Leakage কী?ভবিষ্যতের তথ্য Training-এ ব্যবহার করা
Feature Matrix কী?সব Features-এর সমন্বয়ে তৈরি Matrix (X)
Boolean Feature-এর উদাহরণ দাও।গ্যারেজ আছে? হ্যাঁ=১, না=০

MCQ প্রশ্ন

কার্ডে ক্লিক করলে উত্তর দেখাবে।

১. বাসার দাম নির্ধারণে নিচের কোনটি Target?
(ক) বাসার আয়তন · (খ) বেডরুম সংখ্যা · (গ) বাসার দাম · (ঘ) এলাকার নাম
✓ সঠিক উত্তর: (গ) বাসার দাম — কারণ এটিই আমরা জানতে চাই
২. "রক্তের গ্রুপ (A, B, AB, O)" কোন ধরনের Feature?
(ক) Ordinal Categorical · (খ) Nominal Categorical · (গ) Discrete Numerical · (ঘ) Boolean
✓ সঠিক উত্তর: (খ) Nominal Categorical — কারণ A, B-র মধ্যে কোনো ক্রম নেই
৩. Feature Engineering-এর মূল উদ্দেশ্য কী?
(ক) Data মুছে ফেলা · (খ) Model-এর জন্য আরও তথ্যবহুল Feature তৈরি করা · (গ) Target পরিবর্তন করা · (ঘ) সব Row মুছে ফেলা
✓ সঠিক উত্তর: (খ) Raw data থেকে ভালো Feature বের করা
৪. নিচের কোনটি খারাপ Feature?
(ক) বাসার আয়তন · (খ) বেডরুম সংখ্যা · (গ) বাসার মালিকের নাম · (ঘ) বাসার বয়স
✓ সঠিক উত্তর: (গ) মালিকের নাম — দামের সাথে কোনো সম্পর্ক নেই
৫. Feature Matrix-কে সাধারণত কোন অক্ষর দিয়ে বোঝানো হয়?
(ক) y · (খ) Z · (গ) X · (ঘ) W
✓ সঠিক উত্তর: (গ) X — Feature Matrix সবসময় X এবং Target Vector হলো y

ব্যবহারিক অনুশীলন

অনুশীলন ১: তোমার শহরের একটি রেস্তোরাঁর সফলতা বা ব্যর্থতা নির্ধারণ করার জন্য ৫টি Feature এবং ১টি Target বের করো।

অনুশীলন ২: একজন ব্যক্তির বেতন নির্ধারণ করার জন্য নিচের তালিকা থেকে Features বাছাই করো: বয়স, নাম, শিক্ষাগত যোগ্যতা, জাতীয় পরিচয়পত্র নম্বর, কাজের অভিজ্ঞতা, ঠিকানা, দক্ষতা।

অনুশীলন ৩: "জন্মতারিখ: 15-06-1995" এই একটি Column থেকে কতটি নতুন Feature তৈরি করা যায়? সেগুলো লেখো।

অনুশীলন ৪: নিচের Features-গুলো কোন ধরনের সেটা বলো: (১) শরীরের তাপমাত্রা, (২) চাকরির পদমর্যাদা, (৩) বিবাহিত কি না, (৪) পণ্যের রিভিউ লেখা, (৫) সন্তান সংখ্যা।

অনুশীলন ৫ (গ্রুপ কাজ): একটি Spam Email Detection System তৈরি করতে তোমার দলকে ৮টি ভালো Feature বের করতে হবে এবং ব্যাখ্যা করতে হবে কেন সেগুলো ভালো।

পরবর্তী ক্লাসে আসছে: Feature Scaling (Normalization & Standardization), Handling Missing Values, এবং Categorical Encoding — এগুলোর জন্য আজকের পাঠ ভালোভাবে বুঝে আসো!