উদাহরণসহ Autograd ব্যবহার করে গ্রেডিয়েন্ট নির্ধারণ

অটোগ্রাড এবং ব্যাকপ্রোপাগেশন - টর্চ (Torch) - Latest Technologies

219

PyTorch-এ Autograd একটি শক্তিশালী টুল যা মেশিন লার্নিং মডেলগুলোর গ্রেডিয়েন্ট স্বয়ংক্রিয়ভাবে নির্ধারণ করতে সাহায্য করে। এটি মূলত টেনসর অপারেশনগুলির জন্য স্বয়ংক্রিয় ডিফারেনশিয়েশন সিস্টেম, যা মডেল ট্রেনিং এবং ব্যাকপ্রপাগেশন সময়ে গ্রেডিয়েন্টের মান নির্ধারণ করে। নিচে Autograd ব্যবহার করে একটি উদাহরণসহ গ্রেডিয়েন্ট নির্ধারণের ধাপ আলোচনা করা হলো:

Autograd কীভাবে কাজ করে?

Autograd প্রতিটি টেনসর অপারেশনের একটি computational graph তৈরি করে, যেখানে নোডগুলো অপারেশন এবং এজগুলো টেনসর নির্দেশ করে। গ্রেডিয়েন্ট নির্ধারণের জন্য, Autograd backward() মেথড ব্যবহার করে computational graph-এর মাধ্যমে গ্রেডিয়েন্ট propagate করে।

উদাহরণ: একটি সাধারণ ফাংশনের গ্রেডিয়েন্ট নির্ধারণ

ধরা যাক আমাদের একটি ফাংশন আছে:

আমরা PyTorch Autograd ব্যবহার করে এর গ্রেডিয়েন্ট নির্ধারণ করব।

import torch

# টেনসর তৈরি করা (requires_grad=True করলে PyTorch এই টেনসরের গ্রেডিয়েন্ট সংরক্ষণ করবে)
x = torch.tensor(2.0, requires_grad=True)

# ফাংশন y নির্ধারণ করা
y = x**2 + 3*x + 2

# ব্যাকপ্রপাগেশন এবং গ্রেডিয়েন্ট নির্ধারণ করা
y.backward()

# x এর গ্রেডিয়েন্ট প্রিন্ট করা
print(x.grad)  # Output: 7.0

কীভাবে এটি কাজ করে:

আরো উদাহরণ: গ্রেডিয়েন্ট ক্লিয়ার করা

যখনই backward() কল করা হয়, PyTorch পূর্বের গ্রেডিয়েন্ট যোগ করে। একাধিক অপারেশন করার আগে গ্রেডিয়েন্ট রিসেট করতে হবে।

# নতুন অপারেশন এর জন্য গ্রেডিয়েন্ট ক্লিয়ার করা
x.grad.zero_()

# আবার নতুন y ফাংশন
y = x**3

# ব্যাকপ্রপাগেশন
y.backward()

print(x.grad)  # Output: 12.0

এইভাবে PyTorch এর Autograd ব্যবহার করে গ্রেডিয়েন্ট নির্ধারণ করা যায় এবং মেশিন লার্নিং মডেল ট্রেনিং ও ব্যাকপ্রপাগেশন সঠিকভাবে সম্পন্ন করা যায়।

Promotion

Are you sure to start over?

Loading...