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

पायथन में डबल संकुचन के साथ अलग-अलग आयामों वाली सरणियों का टेंसर डॉट उत्पाद गणना करें

परिचय

पायथन में डबल संकुचन (axes=2) के साथ अलग-अलग आयामों वाली सरणियों का टेंसर डॉट उत्पाद गणना करने के लिए, numpy.tensordot() विधि का उपयोग करें। axes=2 का अर्थ है a के अंतिम 2 अक्ष और b के पहले 2 अक्ष पर योग करना।

पैरामीटर्स

  • a, b: टेंसर जिनका डॉट उत्पाद लेना है।
  • axes: पूर्णांक N। a के अंतिम N अक्ष और b के पहले N अक्ष पर योग करें। axes=2 डबल संकुचन के लिए।

चरण-दर-चरण उदाहरण

आवश्यक लाइब्रेरी आयात करें

import numpy as np

अलग-अलग आयामों वाली दो सरणी बनाएं

arr1 = np.array(range(1, 9))
arr1.shape = (2, 2, 2)
arr2 = np.array(('p', 'q', 'r', 's'), dtype=object)
arr2.shape = (2, 2)

सरणियों की जानकारी प्रदर्शित करें

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)

टेंसर डॉट उत्पाद की गणना करें (axes=2)

print("\nटेंसर डॉट उत्पाद...\n", np.tensordot(arr1, arr2, axes=2))

पूर्ण कोड उदाहरण

import numpy as np

# अलग-अलग आयामों वाली दो सरणी बनाएं
arr1 = np.array(range(1, 9))
arr1.shape = (2, 2, 2)
arr2 = np.array(('p', 'q', 'r', 's'), dtype=object)
arr2.shape = (2, 2)

# सरणी प्रदर्शित करें
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)

# टेंसर डॉट उत्पाद की गणना करें (axes=2)
print("\nटेंसर डॉट उत्पाद...\n", np.tensordot(arr1, arr2, axes=2))

आउटपुट

सरणी 1...
 [[[1 2]
   [3 4]]

  [[5 6]
   [7 8]]]
सरणी 2...
 [['p' 'q']
  ['r' 's']]
सरणी 1 के आयाम...
 3
सरणी 2 के आयाम...
 2
सरणी 1 का आकार...
 (2, 2, 2)
सरणी 2 का आकार...
 (2, 2)
टेंसर डॉट उत्पाद...
 ['pqqrrrssss' 'pppppqqqqqqrrrrrrrssssssss']

व्याख्या: axes=2 का अर्थ है arr1 के अंतिम 2 अक्ष (आकार 2,2) और arr2 के पहले 2 अक्ष (आकार 2,2) पर योग करना। यह ID 1005095045 के समान परिणाम देता है क्योंकि arr1 के अंतिम 2 अक्ष और arr2 के सभी अक्ष मेल खाते हैं।

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

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

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

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

  1. - Python में स्ट्रिंग चर के साथ डबल कोट्स कैसे प्रिंट करें?

    डबल कोट्स प्रिंट करना मुश्किल है, क्योंकि यह स्वयं स्ट्रिंग्स को प्रिंट करने के लिए उन्हें घेरने के लिए सिंटैक्स के हिस्से के रूप में आवश्यक है। इस लेख में हम देखेंगे कि इन डबल कोट्स को प्रिंट स्टेटमेंट का उपयोग करके कैसे प्रिंट किया जा सकता है। नीचे दिए गए परिदृश्य डबल कोट प्रिंट नहीं करेंगे। कोड क