CatBoost একটি শক্তিশালী এবং সহজে ব্যবহারযোগ্য Gradient Boosting লাইব্রেরি, যা ক্যাটেগোরিক্যাল ডেটার জন্য বিশেষভাবে ডিজাইন করা হয়েছে। এটি দুটি প্রধান মডেল প্রদান করে: CatBoostClassifier (ক্লাসিফিকেশন সমস্যার জন্য) এবং CatBoostRegressor (রিগ্রেশন সমস্যার জন্য)। নিচে এই দুটি মডেলের সাহায্যে মডেল ট্রেনিংয়ের প্রক্রিয়া এবং উদাহরণ আলোচনা করা হলো।
প্রথমে CatBoost ইনস্টল করুন (যদি আগে না করে থাকেন)।
pip install catboost
এখন একটি ডেটাসেট তৈরি করুন বা লোড করুন। এখানে একটি উদাহরণ ব্যবহার করা হলো।
import pandas as pd
from sklearn.model_selection import train_test_split
# উদাহরণস্বরূপ একটি ডেটাসেট তৈরি করুন
data = {
'feature1': [1, 2, 3, 4, 5, 6, 7, 8, 9, 10],
'feature2': ['A', 'B', 'A', 'B', 'A', 'B', 'A', 'B', 'A', 'B'],
'target': [0, 1, 0, 1, 0, 1, 0, 1, 0, 1]
}
df = pd.DataFrame(data)
# ডেটা ভাগ করা: 80% ট্রেনিং এবং 20% টেস্টিং
X = df[['feature1', 'feature2']]
y = df['target']
X_train, X_test, y_train, y_test = train_test_split(X, y, test_size=0.2, random_state=42)
from catboost import CatBoostClassifier
# ক্যাটেগোরিক্যাল বৈশিষ্ট্যগুলি উল্লেখ করুন
categorical_features_indices = [1] # feature2 হল ক্যাটেগোরিক্যাল ফিচার
# CatBoostClassifier মডেল তৈরি করা
model_classifier = CatBoostClassifier(iterations=100, learning_rate=0.1, depth=6, cat_features=categorical_features_indices, verbose=0)
# মডেল প্রশিক্ষণ
model_classifier.fit(X_train, y_train)
# ভবিষ্যদ্বাণী করা
predictions_classifier = model_classifier.predict(X_test)
# ফলাফল দেখানো
print("\nClassifier Predictions:")
print(predictions_classifier)
রিগ্রেশন সমস্যার জন্য একটি নতুন ডেটাসেট তৈরি করুন বা লোড করুন।
# উদাহরণস্বরূপ একটি রিগ্রেশন ডেটাসেট তৈরি করুন
regression_data = {
'feature1': [1, 2, 3, 4, 5, 6, 7, 8, 9, 10],
'feature2': ['A', 'B', 'A', 'B', 'A', 'B', 'A', 'B', 'A', 'B'],
'target': [1.5, 2.5, 3.0, 4.2, 5.1, 6.3, 7.8, 8.7, 9.5, 10.0]
}
df_regression = pd.DataFrame(regression_data)
# ডেটা ভাগ করা: 80% ট্রেনিং এবং 20% টেস্টিং
X_regression = df_regression[['feature1', 'feature2']]
y_regression = df_regression['target']
X_train_regression, X_test_regression, y_train_regression, y_test_regression = train_test_split(X_regression, y_regression, test_size=0.2, random_state=42)
from catboost import CatBoostRegressor
# ক্যাটেগোরিক্যাল বৈশিষ্ট্যগুলি উল্লেখ করুন
categorical_features_indices_regression = [1] # feature2 হল ক্যাটেগোরিক্যাল ফিচার
# CatBoostRegressor মডেল তৈরি করা
model_regressor = CatBoostRegressor(iterations=100, learning_rate=0.1, depth=6, cat_features=categorical_features_indices_regression, verbose=0)
# মডেল প্রশিক্ষণ
model_regressor.fit(X_train_regression, y_train_regression)
# ভবিষ্যদ্বাণী করা
predictions_regressor = model_regressor.predict(X_test_regression)
# ফলাফল দেখানো
print("\nRegressor Predictions:")
print(predictions_regressor)
CatBoostClassifier এবং CatBoostRegressor ব্যবহার করে মডেল ট্রেনিং একটি সহজ এবং কার্যকর প্রক্রিয়া। CatBoost-এর ক্যাটেগোরিক্যাল ডেটার প্রতি বিশেষ মনোযোগ এবং বিভিন্ন হাইপারপ্যারামিটার ব্যবহার করে এটি উচ্চমানের ফলাফল প্রদান করে। এই প্রযুক্তি ব্যবহার করে আপনি বিভিন্ন ক্লাসিফিকেশন এবং রিগ্রেশন সমস্যার সমাধান করতে সক্ষম।
আরও দেখুন...