Computer >> कंप्यूटर ट्यूटोरियल >  >> प्रोग्रामिंग >> Python

पायथन में 4D और 3D आयाम वाली सरणियों का क्रोनेकर प्रोडक्ट प्राप्त करना

4D और 3D आयाम वाली सरणी का क्रोनेकर प्रोडक्ट प्राप्त करने के लिए, पायथन NumPy में numpy.kron() विधि का उपयोग करें। क्रोनेकर प्रोडक्ट की गणना करें, जो दूसरी सरणी के ब्लॉकों से बनी एक समग्र सरणी है जिसे पहली सरणी द्वारा स्केल किया गया है।

यह फ़ंक्शन मानता है कि a और b के आयामों की संख्या समान है, यदि आवश्यक हो तो सबसे छोटे के साथ एक को पूर्वसंलग्न करके। यदि a.shape = (r0,r1,..,rN) और b.shape = (s0,s1,...,sN), तो क्रोनेकर प्रोडक्ट का आकार (r0*s0, r1*s1, ..., rN*SN) होगा। तत्व a और b के तत्वों के गुणनफल हैं, जो स्पष्ट रूप से निम्न द्वारा व्यवस्थित हैं:

kron(a,b)[k0,k1,...,kN] = a[i0,i1,...,iN] * b[j0,j1,...,jN]

चरण

सबसे पहले, आवश्यक लाइब्रेरी आयात करें:

import numpy as np

arange() और reshape() विधि का उपयोग करके अलग-अलग आयामों वाली दो numpy सरणियाँ बनाएं:

arr1 = np.arange(40).reshape((2,5,2,2))
arr2 = np.arange(18).reshape((2,3,3))

सरणियाँ प्रदर्शित करें:

print("सरणी 1...\n", arr1)
print("\nसरणी 2...\n", arr2)

दोनों सरणियों के आयाम जांचें:

print("\nसरणी 1 के आयाम...\n", arr1.ndim)
print("\nसरणी 2 के आयाम...\n", arr2.ndim)

दोनों सरणियों का आकार जांचें:

print("\nसरणी 1 का आकार...\n", arr1.shape)
print("\nसरणी 2 का आकार...\n", arr2.shape)

दो सरणियों का क्रोनेकर प्रोडक्ट प्राप्त करने के लिए numpy.kron() विधि का उपयोग करें:

print("\nपरिणाम (क्रोनेकर प्रोडक्ट)...\n", np.kron(arr1, arr2))

उदाहरण

import numpy as np
# arange() और reshape() विधि का उपयोग करके अलग-अलग आयामों वाली दो numpy सरणियाँ बनाएं
arr1 = np.arange(40).reshape((2,5,2,2))
arr2 = np.arange(18).reshape((2,3,3))
# सरणियाँ प्रदर्शित करें
print("सरणी 1...\n", arr1)
print("\nसरणी 2...\n", arr2)
# आयाम जांचें
print("\nसरणी 1 के आयाम...\n", arr1.ndim)
print("\nसरणी 2 के आयाम...\n", arr2.ndim)
# आकार जांचें
print("\nसरणी 1 का आकार...\n", arr1.shape)
print("\nसरणी 2 का आकार...\n", arr2.shape)
# क्रोनेकर प्रोडक्ट प्राप्त करें
print("\nपरिणाम (क्रोनेकर प्रोडक्ट)...\n", np.kron(arr1, arr2))

आउटपुट

सरणी 1... [[[[0 1] [2 3]] [[4 5] [6 7]] [[8 9] [10 11]] [[12 13] [14 15]] [[16 17] [18 19]]] [[[20 21] [22 23]] [[24 25] [26 27]] [[28 29] [30 31]] [[32 33] [34 35]] [[36 37] [38 39]]]]
सरणी 2... [[[0 1 2] [3 4 5] [6 7 8]] [[9 10 11] [12 13 14] [15 16 17]]]
सरणी 1 के आयाम... 4
सरणी 2 के आयाम... 3
सरणी 1 का आकार... (2, 5, 2, 2)
सरणी 2 का आकार... (2, 3, 3)
परिणाम (क्रोनेकर प्रोडक्ट)... [[[[...]]]]
  1. - Python में दो 1D ऐरे का इनर प्रोडक्ट निकालें

    NumPy का numpy.inner() फंक्शन दो 1-डायमेंशनल ऐरे का इनर प्रोडक्ट (डॉट प्रोडक्ट) निकालता है। यह संगत एलिमेंट्स का गुणनफल लेकर उनका योग करता है: Σ aᵢbᵢ। सिंटैक्स numpy.inner(a, b) a, b: इनपुट वैक्टर्स (1D ऐरे)। वापसी: स्केलर (इनर प्रोडक्ट)। शर्त: यदि नॉन-स्केलर हैं तो अंतिम आयाम मेल खाने चाहि

  1. - Python में अलग-अलग डायमेंशन्स के दो वैक्टर्स का क्रॉस प्रोडक्ट निकालें

    NumPy का numpy.cross() फंक्शन दो वैक्टर्स का क्रॉस प्रोडक्ट (वेक्टर गुणनफल) निकालता है। यह अलग-अलग डायमेंशन्स (2D और 3D) के वैक्टर्स को भी हैंडल कर सकता है — छोटे वैक्टर को शून्य से पैड किया जाता है। सिंटैक्स और पैरामीटर्स numpy.cross(a, b, axisa=-1, axisb=-1, axisc=-1, axis=None) a, b: इनपुट व

  1. - Python में दो मल्टी-डायमेंशनल ऐरे का इनर प्रोडक्ट निकालें

    NumPy का numpy.inner() फंक्शन दो मल्टी-डायमेंशनल ऐरे का इनर प्रोडक्ट निकालता है। 1D के लिए डॉट प्रोडक्ट, उच्च आयामों के लिए अंतिम अक्ष पर सम-गुणनफल। सिंटैक्स numpy.inner(a, b) a, b: इनपुट ऐरे। नॉन-स्केलर होने पर अंतिम आयाम समान होना चाहिए। वापसी: आकार a.shape[:-1] + b.shape[:-1] का ऐरे। 2D