উদাহরণসহ Trainer ব্যবহার করে মডেল ট্রেনিং

Trainer API এবং তার ব্যবহার - পাইটর্চ লাইটনিং (PyTorch Lightning) - Latest Technologies

197

PyTorch Lightning ব্যবহার করে মডেল ট্রেনিং করা সহজ এবং কার্যকর। Trainer ক্লাসের সাহায্যে আপনি ট্রেনিং প্রক্রিয়া সহজে পরিচালনা করতে পারেন। নিচে Trainer ব্যবহার করে একটি মডেল ট্রেনিংয়ের প্রক্রিয়া উদাহরণসহ আলোচনা করা হলো।

১. প্রয়োজনীয় লাইব্রেরি ইমপোর্ট করা

import pytorch_lightning as pl
import torch
from torch import nn
from torch.utils.data import DataLoader, TensorDataset

২. Lightning Module তৈরি করা

Lightning Module তৈরি করতে, আপনাকে pl.LightningModule শ্রেণীকে হেরিটেজ করতে হবে। এতে ট্রেনিং, যাচাইকরণ এবং অপটিমাইজারের সেটআপের জন্য বিভিন্ন মেথড সংজ্ঞায়িত করতে হয়।

class LitModel(pl.LightningModule):
    def __init__(self):
        super(LitModel, self).__init__()
        self.model = nn.Linear(10, 1)  # ইনপুট সাইজ 10, আউটপুট সাইজ 1
        self.criterion = nn.MSELoss()  # লস ফাংশন

    def forward(self, x):
        return self.model(x)

    def training_step(self, batch, batch_idx):
        x, y = batch
        y_hat = self.forward(x)  # মডেল থেকে পূর্বাভাস পাওয়া
        loss = self.criterion(y_hat, y)  # লস হিসাব করা
        self.log('train_loss', loss)  # লস লগ করা
        return loss

    def configure_optimizers(self):
        return torch.optim.Adam(self.model.parameters(), lr=0.001)  # অপটিমাইজার

৩. ডেটাসেট তৈরি করা

একটি কাস্টম ডেটাসেট তৈরি করুন এবং DataLoader ব্যবহার করুন।

python

Copy code

# ডেটা তৈরি করা
x_train = torch.randn(100, 10)  # 100 টির মধ্যে 10টি বৈশিষ্ট্য
y_train = torch.randn(100, 1)    # লক্ষ্য পরিবর্তনশীল
train_dataset = TensorDataset(x_train, y_train)
train_loader = DataLoader(train_dataset, batch_size=32, shuffle=True)  # ব্যাচ সাইজ 32

৪. Trainer ব্যবহার করে মডেল ট্রেনিং

Lightning Trainer ব্যবহার করে মডেলটি প্রশিক্ষণ দিন।

# Lightning মডেল তৈরি করা
model = LitModel()

# Trainer তৈরি করা
trainer = pl.Trainer(max_epochs=10)  # প্রশিক্ষণের জন্য সর্বাধিক এপোক

# মডেল প্রশিক্ষণ দেওয়া
trainer.fit(model, train_loader)

৫. ইনফারেন্স করা

মডেল প্রশিক্ষণের পরে ইনফারেন্স করতে পারেন।

# ইনফারেন্স করার জন্য নতুন ডেটা
test_data = torch.randn(5, 10)  # 5 টি ইনপুট উদাহরণ

# মডেল ব্যবহার করে ইনফারেন্স
with torch.no_grad():
    predictions = model(test_data)

print(f'Predictions: {predictions}')

উপসংহার

এই নির্দেশিকাগুলি অনুসরণ করে, আপনি PyTorch Lightning ব্যবহার করে Trainer ক্লাসের মাধ্যমে সহজে একটি মডেল ট্রেনিং করতে পারবেন। Lightning Module তৈরি করে এবং Trainer ব্যবহার করে, আপনি মডেল ট্রেনিংয়ের প্রক্রিয়াটি সহজতর করতে পারেন, যা কোডের পঠনযোগ্যতা এবং রক্ষণাবেক্ষণ উন্নত করে। 

Promotion

Are you sure to start over?

Loading...