CatBoost ব্যবহার করতে হলে সঠিকভাবে ডেটা সেটআপ করা খুব গুরুত্বপূর্ণ। CatBoost ক্যাটাগরিকাল ডেটা পরিচালনা করার জন্য বিশেষভাবে ডিজাইন করা হয়েছে, তবে এটি সংখ্যাত্মক ডেটার সাথেও কাজ করে। এখানে CatBoost এর জন্য ডেটা প্রস্তুতির পদ্ধতি আলোচনা করা হলো, Python এবং R উভয় ভাষায়।
আপনার ডেটাসেটকে pandas DataFrame-এ লোড করুন এবং ক্যাটাগরিকাল ফিচারগুলিকে চিহ্নিত করুন।
import pandas as pd
from catboost import CatBoostClassifier
# ডেটাসেট লোড করা
data = {
'feature1': [1, 2, 3, 4, 5],
'feature2': ['A', 'B', 'A', 'B', 'A'], # ক্যাটাগরিকাল ফিচার
'label': [0, 1, 0, 1, 0]
}
df = pd.DataFrame(data)
# ক্যাটাগরিকাল ফিচারগুলির সূচী নির্ধারণ করা
cat_features = ['feature2']
CatBoost-এর জন্য ডেটা সেটআপ করতে Pool
অবজেক্ট ব্যবহার করা হয়, যা ক্যাটাগরিকাল ফিচারগুলি বিশেষভাবে পরিচালনা করে।
from catboost import Pool
# ডেটা প্রস্তুত করা
X = df[['feature1', 'feature2']]
y = df['label']
# CatBoost Pool তৈরি করা
train_data = Pool(data=X, label=y, cat_features=cat_features)
এখন আপনি CatBoost মডেল তৈরি এবং প্রশিক্ষণ করতে প্রস্তুত।
# CatBoostClassifier তৈরি করা
model = CatBoostClassifier(iterations=100, depth=3, learning_rate=0.1, loss_function='Logloss', verbose=0)
# মডেল প্রশিক্ষণ
model.fit(train_data)
# নতুন ডেটার উপর পূর্বাভাস
predictions = model.predict([[3, 'A']])
print(predictions)
R এ ডেটাসেট তৈরি করুন এবং ক্যাটাগরিকাল ফিচারগুলি চিহ্নিত করুন।
# CatBoost লাইব্রেরি ইমপোর্ট করা
library(catboost)
# ডেটাসেট লোড করা
data <- data.frame(
feature1 = c(1, 2, 3, 4, 5),
feature2 = as.factor(c('A', 'B', 'A', 'B', 'A')), # ক্যাটাগরিকাল ফিচার
label = c(0, 1, 0, 1, 0)
)
# ক্যাটাগরিকাল ফিচারগুলির সূচী নির্ধারণ করা
cat_features <- c('feature2')
CatBoost-এর জন্য ডেটা প্রস্তুত করতে catboost.load_data
ফাংশন ব্যবহার করুন।
# CatBoost ডেটা লোড করা
train_data <- catboost.load_data(data, label = "label", cat_features = cat_features)
এখন CatBoost মডেল তৈরি এবং প্রশিক্ষণ করতে প্রস্তুত।
# প্রাথমিক কনফিগারেশন
params <- list(
iterations = 100,
depth = 3,
learning_rate = 0.1,
loss_function = 'Logloss'
)
# মডেল প্রশিক্ষণ
model <- catboost.train(train_data, params)
# নতুন ডেটার উপর পূর্বাভাস
test_data <- data.frame(feature1 = c(3), feature2 = as.factor(c('A')))
predictions <- catboost.predict(model, test_data)
print(predictions)
CatBoost এর জন্য ডেটা সেটআপ করা সহজ। Python এবং R উভয় ভাষায় ক্যাটাগরিকাল এবং সংখ্যাত্মক ডেটার সাথে কাজ করতে CatBoost-এর সুবিধা রয়েছে। উপরের উদাহরণগুলো আপনাকে CatBoost-এর কার্যকর ব্যবহার বোঝাতে সাহায্য করবে, এবং এটি বিভিন্ন প্রকল্পে ব্যবহারের জন্য প্রস্তুত করবে।
আরও দেখুন...