Classification এবং Regression হল মেশিন লার্নিংয়ের দুটি প্রধান ধরনের সমস্যা। উভয় ক্ষেত্রেই মডেল তৈরির পদ্ধতি এবং কৌশল ভিন্ন। নিচে প্রতিটি সমস্যার বিস্তারিত আলোচনা এবং সমাধানের কৌশল দেওয়া হলো।
Classification হল একটি supervised learning সমস্যা যেখানে লক্ষ্য হল একটি ইনপুট ডেটা পয়েন্টের জন্য নির্দিষ্ট শ্রেণী নির্ধারণ করা। উদাহরণস্বরূপ, ইমেইল স্প্যাম শ্রেণীবিভাগ, রোগের সনাক্তকরণ ইত্যাদি।
ডেটা সংগ্রহ:
ডেটা প্রক্রিয়াকরণ:
মডেল নির্বাচন:
মডেল প্রশিক্ষণ:
মডেল মূল্যায়ন:
ভবিষ্যদ্বাণী:
import pandas as pd
from sklearn.model_selection import train_test_split
from sklearn.ensemble import RandomForestClassifier
from sklearn.metrics import classification_report
# উদাহরণ ডেটা তৈরি
data = {
'feature1': [1, 2, 3, 4, 5],
'feature2': ['A', 'B', 'A', 'B', 'A'],
'label': [0, 1, 0, 1, 0] # 0 = Negative, 1 = Positive
}
df = pd.DataFrame(data)
# ক্যাটাগরিকাল ফিচার এনকোডিং
df['feature2'] = df['feature2'].map({'A': 0, 'B': 1})
# প্রশিক্ষণ ও টেস্ট ডেটাতে বিভক্ত করা
X = df[['feature1', 'feature2']]
y = df['label']
X_train, X_test, y_train, y_test = train_test_split(X, y, test_size=0.2, random_state=42)
# Random Forest মডেল তৈরি করা
model = RandomForestClassifier()
model.fit(X_train, y_train)
# পূর্বাভাস করা
predictions = model.predict(X_test)
# মডেল মূল্যায়ন
print(classification_report(y_test, predictions))
Regression হল একটি supervised learning সমস্যা যেখানে লক্ষ্য হল একটি সংখ্যা হিসেবে আউটপুট তৈরি করা। উদাহরণস্বরূপ, বাড়ির দাম পূর্বাভাস, গ্রাহকের আয় পূর্বাভাস ইত্যাদি।
ডেটা সংগ্রহ:
ডেটা প্রক্রিয়াকরণ:
মডেল নির্বাচন:
মডেল প্রশিক্ষণ:
মডেল মূল্যায়ন:
ভবিষ্যদ্বাণী:
import pandas as pd
from sklearn.model_selection import train_test_split
from sklearn.ensemble import RandomForestRegressor
from sklearn.metrics import mean_absolute_error, mean_squared_error, r2_score
# উদাহরণ ডেটা তৈরি
data = {
'feature1': [1, 2, 3, 4, 5],
'feature2': [10, 15, 20, 25, 30],
'price': [100, 150, 200, 250, 300] # লক্ষ্য ভেরিয়েবল
}
df = pd.DataFrame(data)
# প্রশিক্ষণ ও টেস্ট ডেটাতে বিভক্ত করা
X = df[['feature1', 'feature2']]
y = df['price']
X_train, X_test, y_train, y_test = train_test_split(X, y, test_size=0.2, random_state=42)
# Random Forest Regressor তৈরি করা
model = RandomForestRegressor()
model.fit(X_train, y_train)
# পূর্বাভাস করা
predictions = model.predict(X_test)
# মডেল মূল্যায়ন
print("Mean Absolute Error:", mean_absolute_error(y_test, predictions))
print("Mean Squared Error:", mean_squared_error(y_test, predictions))
print("R-squared:", r2_score(y_test, predictions))
Classification এবং Regression হল মেশিন লার্নিংয়ের প্রধান সমস্যা। Classification-এ লক্ষ্য হল শ্রেণী নির্ধারণ করা, এবং Regression-এ লক্ষ্য হল একটি সংখ্যা হিসাবে পূর্বাভাস তৈরি করা। উভয় ক্ষেত্রেই ডেটা প্রক্রিয়াকরণ, মডেল নির্বাচন, প্রশিক্ষণ, এবং মূল্যায়নের প্রয়োজন। উপরোক্ত উদাহরণগুলি এই সমস্যা সমাধানের প্রক্রিয়া দেখাতে সহায়ক।
আরও দেখুন...