T.grad ফাংশন ব্যবহার করে Gradient বের করা

Theano এর জন্য Gradient এবং Derivative - থিয়ানো (Theano) - Machine Learning

380

Theano লাইব্রেরিতে T.grad() ফাংশন ব্যবহার করে আপনি গ্রেডিয়েন্ট বের করতে পারেন। এটি একটি শক্তিশালী ফাংশন যা ডিপ লার্নিং মডেল প্রশিক্ষণ এবং অন্যান্য অপটিমাইজেশন অ্যাপ্লিকেশনগুলিতে ব্যবহার করা হয়।

Theano এর T.grad() ফাংশন আপনাকে কোনো ফাংশনের গ্রেডিয়েন্ট (ডেরিভেটিভ) বের করতে দেয়, যেখানে আপনি ফাংশনের ভ্যারিয়েবল (যেমন, প্যারামিটার বা ইনপুট) এবং এর সম্পর্কিত লস ফাংশন উল্লেখ করেন।

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

প্রথমে, Theano এবং NumPy ইম্পোর্ট করুন:

import theano
import theano.tensor as T
import numpy as np

ধাপ ২: ভেরিয়েবল তৈরি করা

এখন, আপনি ফাংশনের জন্য টেনসর তৈরি করবেন:

# ইনপুট ভেরিয়েবল তৈরি করা
x = T.dscalar('x')  # dscalar means a scalar (single floating-point number)

# লস ফাংশন তৈরি করা (যেমন একটি সাধারণ কোস্ট ফাংশন)
y = (x - 3)**2

এখানে, y = (x - 3)**2 একটি সাধারণ কোস্ট ফাংশন যা x থেকে 3 এর পার্থক্যের বর্গ নেয়। লক্ষ্য হল x = 3 এ ফাংশনের মান সর্বনিম্ন হবে (যেহেতু এটি একটি বর্গমূল ফাংশন)।

ধাপ ৩: গ্রেডিয়েন্ট বের করা

এখন T.grad() ফাংশন ব্যবহার করে y এর গ্রেডিয়েন্ট বের করতে হবে। এখানে, আমরা গ্রেডিয়েন্ট বের করবো x এর জন্য, যা লস ফাংশন y এর ডেরিভেটিভ।

# গ্রেডিয়েন্ট বের করা
grad_y = T.grad(y, x)

এখন grad_y-এ y এর x এর গ্রেডিয়েন্ট সংরক্ষিত থাকবে।

ধাপ ৪: ফাংশন তৈরি করা

গ্রেডিয়েন্ট বের করার জন্য একটি Theano ফাংশন তৈরি করতে হবে, যা ইনপুট হিসেবে x নেবে এবং গ্রেডিয়েন্ট হিসাব করবে।

# Theano ফাংশন তৈরি করা যা x এর জন্য গ্রেডিয়েন্ট বের করবে
f_grad = theano.function([x], grad_y)

এখন f_grad(x) ফাংশনটি x এর জন্য গ্রেডিয়েন্ট বের করবে।

ধাপ ৫: গ্রেডিয়েন্টের মান বের করা

এখন, আপনি বিভিন্ন মানের জন্য গ্রেডিয়েন্ট বের করতে পারেন:

# গ্রেডিয়েন্টের মান বের করা
input_value = 5
result = f_grad(input_value)
print(f'Gradient at x = {input_value} is: {result}')

এখানে, x = 5 এর জন্য গ্রেডিয়েন্ট বের করা হচ্ছে।

সারাংশ:

  • T.grad() ফাংশন ব্যবহার করে Theano এ গ্রেডিয়েন্ট বের করা যায়।
  • প্রথমে একটি টেনসর (যেমন x) এবং একটি ফাংশন (যেমন y = (x - 3)**2) তৈরি করুন।
  • তারপর, T.grad() ব্যবহার করে গ্রেডিয়েন্ট বের করুন।
  • একটি Theano ফাংশন তৈরি করুন যাতে ইনপুট ভ্যালু থেকে গ্রেডিয়েন্ট বের করা যায়।

এই প্রক্রিয়া ডিপ লার্নিং মডেলের গ্রেডিয়েন্ট বেকপ্রোপাগেশন প্রক্রিয়ায় ব্যবহৃত হয়, যেখানে প্যারামিটার আপডেট করতে গ্রেডিয়েন্ট বেকপ্রোপাগেশন প্রয়োজন।

Content added By
Promotion

Are you sure to start over?

Loading...