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() विधि का उपयोग करें। a, bparameters "डॉट" के लिए टेंसर हैं। अक्ष पैरामीटर, पूर्णांक_जैसे यदि एक int N, क्रम में a के अंतिम Naxes और b के पहले N अक्षों पर योग। संबंधित कुल्हाड़ियों का आकार मेल खाना चाहिए।

कदम

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

import numpy as np

सरणी () विधि का उपयोग करके दो सुस्पष्ट 3D सरणियाँ बनाना -

arr1 = np.arange(60.).reshape(3,4,5)
arr2 = np.arange(24.).reshape(4,3,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() विधि का उपयोग करें। a, bparameters "डॉट" के टेंसर हैं -

print("\nTensor dot product...\n", np.tensordot(arr1,arr2, axes=([1,0],[0,1])))

उदाहरण

import numpy as np

# Creating two numpy 3D arrays using the array() method
arr1 = np.arange(60.).reshape(3,4,5)
arr2 = np.arange(24.).reshape(4,3,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, use the numpy.tensordot() method in Python
# The a, b parameters are Tensors to “dot”.
print("\nTensor dot product...\n", np.tensordot(arr1,arr2, axes=([1,0],[0,1])))

आउटपुट

Array1...
[[[ 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.]]

[[40. 41. 42. 43. 44.]
[45. 46. 47. 48. 49.]
[50. 51. 52. 53. 54.]
[55. 56. 57. 58. 59.]]]

Array2...
[[[ 0. 1.]
[ 2. 3.]
[ 4. 5.]]

[[ 6. 7.]
[ 8. 9.]
[10. 11.]]

[[12. 13.]
[14. 15.]
[16. 17.]]

[[18. 19.]
[20. 21.]
[22. 23.]]]

Dimensions of Array1...
3

Dimensions of Array2...
3

Shape of Array1...
(3, 4, 5)

Shape of Array2...
(4, 3, 2)

Tensor dot product...
[[4400. 4730.]
[4532. 4874.]
[4664. 5018.]
[4796. 5162.]
[4928. 5306.]]


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

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

  1. सूची में सूचकांक तत्व द्वारा शक्ति की गणना करने के लिए पायथन कार्यक्रम

    जब किसी सूची में सूचकांक तत्व द्वारा शक्ति की गणना करने की आवश्यकता होती है, तो ** ऑपरेटर के साथ सरल पुनरावृत्ति का उपयोग किया जाता है। उदाहरण नीचे उसी का एक प्रदर्शन है my_list = [62, 18, 12, 63, 44, 75] print("The list is :") print(my_list) my_result = [] for my_index, elem in enumer

  1. 'जी' पैटर्न को प्रिंट करने के लिए पायथन प्रोग्राम

    जब * अक्षर G के पैटर्न को प्रिंट करने की आवश्यकता होती है, तो एक विधि को परिभाषित किया जा सकता है, और नेस्टेड लूप का उपयोग संख्याओं के माध्यम से पुनरावृति करने के लिए किया जा सकता है और G पैटर्न बनाने के लिए * प्रिंट किया जा सकता है। नीचे उसी का एक प्रदर्शन है - उदाहरण def display_pattern(my_line):