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

पायथन में विभिन्न आयामों वाले सरणियों के लिए टेंसर डॉट उत्पाद की गणना करें

दो टेंसर, a और b, और एक array_like ऑब्जेक्ट जिसमें दो array_like ऑब्जेक्ट हैं, (a_axes,b_axes), a_axes और b_axes द्वारा निर्दिष्ट कुल्हाड़ियों पर a और b के तत्वों (घटकों) के उत्पादों को योग करें। तीसरा तर्क एक एकल गैर-ऋणात्मक पूर्णांक_जैसे अदिश, N हो सकता है; यदि ऐसा है, तो a के अंतिम N आयामों और b के पहले N आयामों को जोड़ दिया जाता है।

विभिन्न आयामों वाले सरणियों के लिए टेंसर डॉट उत्पाद की गणना करने के लिए, numpy.tensordot()विधि का उपयोग करें। ए, बी पैरामीटर "डॉट" के लिए टेंसर हैं। अक्ष पैरामीटर, पूर्णांक_जैसे यदि एक int N, a के अंतिम N अक्षों और b के पहले N अक्षों को क्रम से जोड़ दें। संबंधित कुल्हाड़ियों का आकार मेल खाना चाहिए।

कदम

सबसे पहले, आवश्यक पुस्तकालयों को आयात करें -

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("Array1...\n",arr1)
print("\nArray2...\n",arr2)

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

print("\nDimensions of Array1...\n",arr1.ndim)
print("\nDimensions of Array2...\n",arr2.ndim)

दोनों सरणियों के आकार की जाँच करें -

print("\nShape of Array1...\n",arr1.shape)
print("\nShape of Array2...\n",arr2.shape)

विभिन्न आयामों वाले सरणियों के लिए टेंसर डॉट उत्पाद की गणना करने के लिए, पायथन में numpy.tensordot() विधि का उपयोग करें -

print("\nTensor dot product...\n", np.tensordot(arr1, arr2))

उदाहरण

import numpy as np

# Creating two numpy arrays with different dimensions using the array() method
arr1 = np.array(range(1, 9))
arr1.shape = (2, 2, 2)
arr2 = np.array(('p', 'q', 'r', 's'), dtype=object)
arr2.shape = (2, 2)

# Display the arrays
print("Array1...\n",arr1)
print("\nArray2...\n",arr2)

# Check the Dimensions of both the arrays
print("\nDimensions of Array1...\n",arr1.ndim)
print("\nDimensions of Array2...\n",arr2.ndim)

# Check the Shape of both the arrays
print("\nShape of Array1...\n",arr1.shape)
print("\nShape of Array2...\n",arr2.shape)

# To compute the tensor dot product for arrays with different dimensions, use the numpy.tensordot() method in Python
print("\nTensor dot product...\n", np.tensordot(arr1, arr2))
में numpy.tensordot() विधि का उपयोग करें।

आउटपुट

Array1...
[[[1 2]
[3 4]]

[[5 6]
[7 8]]]

Array2...
[['p' 'q']
['r' 's']]

Dimensions of Array1...
3

Dimensions of Array2...
2

Shape of Array1...
(2, 2, 2)

Shape of Array2...
(2, 2)

Tensor dot product...
['pqqrrrssss' 'pppppqqqqqqrrrrrrrssssssss']

  1. पायथन में विभिन्न आयामों वाले दो (सरणी) वैक्टर का क्रॉस उत्पाद लौटाएं

    दो वैक्टर के क्रॉस उत्पाद की गणना करने के लिए, Python Numpy में numpy.cross() विधि का उपयोग करें। विधि c देता है, वेक्टर क्रॉस उत्पाद। पहला पैरामीटर ए है, पहले वेक्टर के घटक। दूसरा पैरामीटर बी है, दूसरे वेक्टर के घटक। तीसरा पैरामीटर isaxisa, a का अक्ष जो वेक्टर को परिभाषित करता है। डिफ़ॉल्ट रूप से,

  1. पायथन में दो बहु-आयामी सरणियों का आंतरिक उत्पाद प्राप्त करें

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

  1. पायथन में 4D और 3D आयामों के साथ सरणियों का क्रोनकर उत्पाद प्राप्त करें

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