দুটি এক-মাত্রিক সিকোয়েন্সের বিচ্ছিন্ন লিনিয়ার কনভোলিউশন বের করতে পাইথন নামপাই-র numpy.convolve() মেথডটি ব্যবহার করা হয়। কনভোলিউশন অপারেটর সিগন্যাল প্রসেসিং-এ প্রায়শই দেখা যায়, যেখানে এটি একটি লিনিয়ার টাইম-ইনভেরিয়েন্ট সিস্টেমের সিগন্যাল ওপর প্রভাব মডেল করে। সম্ভাবনা তত্ত্বে, দুটি স্বাধীন র্যান্ডম ভেরিয়েবলের যোগফল তাদের নিজস্ব বিতরণের কনভোলিউশন অনুযায়ী বিতরণ পায়। যদি v, a-এর চেয়ে বড় হয়, তবে গণনার আগে অ্যারে দুটি আদল-বদল করা হয়।
মেথডটি a এবং v-র বিচ্ছিন্ন, লিনিয়ার কনভোলিউশন রিটার্ন করে। প্রথম প্যারামিটার a হলো প্রথম এক-মাত্রিক ইনপুট অ্যারে। দ্বিতীয় প্যারামিটার v হলো দ্বিতীয় এক-মাত্রিক ইনপুট অ্যারে। তৃতীয় প্যারামিটার mode অপশনাল, মানগুলো হলো 'full', 'valid', 'same'। মোড 'same' আউটপুট দরজা max(M, N) দিয়ে ফেরত দেয়। বাউন্ডারি ইফেক্ট এখনও দৃশ্যমান থাকে।
ধাপসমূহ
প্রথমে প্রয়োজনীয় লাইব্রেরি ইম্পোর্ট করুন:
import numpy as np
array() মেথড ব্যবহার করে দুটি নামপাই এক-মাত্রিক অ্যারে তৈরি করুন:
arr1 = np.array([1, 2, 3]) arr2 = np.array([0, 1, 0.5])
অ্যারে দুটি প্রদর্শন করুন:
print("Array1...\n", arr1)
print("\nArray2...\n", arr2)
দুটি অ্যারের ডাইমেনশন পরীক্ষা করুন:
print("\nArray1-এর ডাইমেনশন...\n", arr1.ndim)
print("\nArray2-এর ডাইমেনশন...\n", arr2.ndim)
দুটি অ্যারের শেপ পরীক্ষা করুন:
print("\nArray1-এর শেপ...\n", arr1.shape)
print("\nArray2-এর শেপ...\n", arr2.shape)
কনভোলিউশন বের করতে numpy.convolve() মেথডটি 'same' মোডে ব্যবহার করুন:
print("\nফলাফল....\n", np.convolve(arr1, arr2, mode='same'))
সম্পূর্ণ উদাহরণ
import numpy as np
# array() মেথড ব্যবহার করে দুটি নামপাই এক-মাত্রিক অ্যারে তৈরি করা
arr1 = np.array([1, 2, 3])
arr2 = np.array([0, 1, 0.5])
# অ্যারে দুটি প্রদর্শন
print("Array1...\n", arr1)
print("\nArray2...\n", arr2)
# দুটি অ্যারের ডাইমেনশন পরীক্ষা
print("\nArray1-এর ডাইমেনশন...\n", arr1.ndim)
print("\nArray2-এর ডাইমেনশন...\n", arr2.ndim)
# দুটি অ্যারের শেপ পরীক্ষা
print("\nArray1-এর শেপ...\n", arr1.shape)
print("\nArray2-এর শেপ...\n", arr2.shape)
# কনভোলিউশন বের করা
print("\nফলাফল....\n", np.convolve(arr1, arr2, mode='same'))
আউটপুট
Array1... [1 2 3] Array2... [0. 1. 0.5] Array1-এর ডাইমেনশন... 1 Array2-এর ডাইমেনশন... 1 Array1-এর শেপ... (3,) Array2-এর শেপ... (3,) ফলাফল.... [1. 2.5 4. ]