কম্পিউটার টিউটোরিয়াল

পাইথনে scikit-learn লাইব্রেরি ব্যবহার করে ডেটাসেটকে ট্রেনিং ও টেস্টিং-এ কীভাবে ভাগ করবেন?


Scikit-learn (sklearn) পাইথনের একটি লাইব্রেরি যা মেশিন লার্নিং অ্যালগরिदম বাস্তবায়নের জন্য ব্যবহৃত হয়। এটি শক্তিশালী ও স্টেবল, কারণ এটি পরিসংখ্যানিক মডেলিং করার জন্য বিশাল টুলসেট প্রদান করে। এতে ক্লাসিফিকেশন, রিগ্রেশন, ক্লাস্টারিং, ডাইমেনশনালিটি রিডাকশন ইত্যাদি অন্তর্ভুক্ত। এটি Numpy, SciPy এবং Matplotlib-এর ওপর তৈরি।

মেশিন লার্নিং অ্যালগরিদমে ইনপুট ডেটা পাস করার আগে তা ট্রেনিং ও টেস্ট ডেটাসেটে ভাগ করতে হয়। ডেটা মডেলে ফিট হলে ইনপুট ডেটাসেট এই মডেলে ট্রেন করা হয়। ট্রেনিংয়ের সময় মডেল ডেটা থেকে শিখে এবং নতুন ডেটায় জেনারালাইজ করা শিখে। টেস্ট ডেটাসেট ট্রেনিংয়ের সময় ব্যবহৃত হয় না। সকল হাইপারপ্যারামিটার টিউন ও অপ্টিমাম ওয়েট সেট হলে টেস্ট ডেটাসেট অ্যালগরিদমে দিয়ে দেখা হয় কতটা ভালোভাবে এটি নতুন ডেটায় জেনারালাইজ করতে পারছে। নিচে scikit-learn দিয়ে ডেটা স্প্লিট করার উদাহরণ দেওয়া হলো।

উদাহরণ

from sklearn.datasets import load_iris
from sklearn.model_selection import train_test_split

my_data = load_iris()
X = my_data.data
y = my_data.target

X_train, X_test, y_train, y_test = train_test_split(
    X, y, test_size=0.2, random_state=2
)

print("ট্রেনিং ডেটার ফিচার ডাইমেনশন:")
print(X_train.shape)
print("টেস্ট ডেটার ফিচার ডাইমেনশন:")
print(X_test.shape)
print("ট্রেনিং ডেটার টার্গেট ডাইমেনশন:")
print(y_train.shape)
print("টেস্ট ডেটার টার্গেট ডাইমেনশন:")
print(y_test.shape)

আউটপুট

ট্রেনিং ডেটার ফিচার ডাইমেনশন: (120, 4)
টেস্ট ডেটার ফিচার ডাইমেনশন: (30, 4)
ট্রেনিং ডেটার টার্গেট ডাইমেনশন: (120,)
টেস্ট ডেটার টার্গেট ডাইমেনশন: (30,)

ব্যাখ্যা

  • প্রয়োজনীয় প্যাকেজগুলো ইম্পোর্ট করা হয়েছে।
  • আইরিস ডেটাসেট এনভায়রনমেন্টে লোড করা হয়েছে।
  • ফিচার ও টার্গেট মান ডেটাসেট থেকে পৃথক করা হয়েছে।
  • ট্রেনিং ও টেস্ট ডেটা ৮০:২০ অনুপাতে ভাগ করা হয়েছে।
  • অর্থাৎ ২০% ডেটা মডেলের জেনারালাইজেশন যাচাইতে ব্যবহৃত হবে।
  • স্প্লিটগুলো ও ডেটার ডাইমেনশন কনসোলে প্রিন্ট করা হয়েছে।
  1. TensorFlow ব্যবহার করে MNIST ডেটাসেটের জন্য ওজন সংরক্ষণ ও লোড করা

  2. পাইথনে scikit-learn দিয়ে ইমেজ আপলোড ও ভিউ করার পদ্ধতি

  3. পাইথনে Seaborn-র countplot দিয়ে ডেটা ভিজ্যুয়ালাইজ করার পদ্ধতি

  4. পাইথনে scikit-learn লাইব্রেরি ব্যবহার করে ইমেজের রেজোলিউশন কীভাবে বের করবেন?