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

পাইথনে দুটি এক-মাত্রিক সিকোয়েন্সের বিচ্ছিন্ন লিনিয়ার কনভোলিউশন বের করুন


দুটি এক-মাত্রিক সিকোয়েন্সের বিচ্ছিন্ন লিনিয়ার কনভোলিউশন বের করতে পাইথন নামপাই-র numpy.convolve() মেথডটি ব্যবহার করা হয়।

কনভোলিউশন অপারেটর সিগন্যাল প্রসেসিং-এ প্রায়শই দেখা যায়, যেখানে এটি একটি লিনিয়ার টাইম-ইনভেরিয়েন্ট সিস্টেমের সিগন্যাল ওপর প্রভাব মডেল করে। সম্ভাবনা তত্ত্বে, দুটি স্বাধীন র‍্যান্ডম ভেরিয়েবলের যোগফল তাদের নিজস্ব বিতরণের কনভোলিউশন অনুযায়ী বিতরণ পায়। যদি v, a-এর চেয়ে বড় হয়, তবে গণনার আগে অ্যারে দুটি আদল-বদল করা হয়। মেথডটি a এবং v-র বিচ্ছিন্ন, লিনিয়ার কনভোলিউশন রিটার্ন করে। প্রথম প্যারামিটার a হলো প্রথম এক-মাত্রিক ইনপুট অ্যারে। দ্বিতীয় প্যারামিটার v হলো দ্বিতীয় এক-মাত্রিক ইনপুট অ্যারে। তৃতীয় প্যারামিটার mode অপশনাল, মানগুলো হলো 'full', 'valid', '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)

ডিফল্ট মোডে (full) কনভোলিউশন বের করতে numpy.convolve() মেথডটি ব্যবহার করুন:

print("\nফলাফল....\n", np.convolve(arr1, arr2))

সম্পূর্ণ উদাহরণ

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))

আউটপুট

Array1... [1 2 3]
Array2... [0. 1. 0.5]
Array1-এর ডাইমেনশন... 1
Array2-এর ডাইমেনশন... 1
Array1-এর শেপ... (3,)
Array2-এর শেপ... (3,)
ফলাফল.... [0. 1. 2.5 4. 1.5]

  1. পাইথনে দুটি মাল্টি-ডাইমেনশনাল অ্যারের ইনার প্রোডাক্ট

  2. পাইথনে দুটি ভেক্টরের ক্রস প্রোডাক্ট (Cross Product) ফেরত দিন

  3. পাইথনে লিনিয়ার অ্যালজেব্রায় কোলেসکی ডিকম্পোজিশন (Cholesky Decomposition) ফেরত দিন

  4. পাইথন প্যান্ডাস - ইন্ডেক্স মানগুলির মেমরি ব্যবহার ফেরত দেওয়া