को देखते हुए दो मैट्रिक्सअजगर - मैट्रिक्स बाहरी उत्पाद
A: m * r
B: n * r
मैं प्रत्येक प्रविष्टि C_ij
एक मैट्रिक्स A_i
और B_j
के बाहरी उत्पाद द्वारा गणना होने के साथ, एक और मैट्रिक्स C: m * n
उत्पन्न करना चाहते हैं।
उदाहरण के लिए,
A: [[1, 2],
[3, 4]]
B: [[3, 1],
[1, 2]]
देता
C: [[[3, 1], [[1 ,2],
[6, 2]], [2 ,4]],
[9, 3], [[3, 6],
[12,4]], [4, 8]]]
मैं छोरों के लिए उपयोग कर ऐसा कर सकते हैं, जैसे
for i in range (A.shape(0)):
for j in range (B.shape(0)):
C_ij = np.outer(A_i, B_j)
मुझे आश्चर्य है कि अगर इस गणना करने का एक vectorised तरीका है इसे तेज करने के लिए?
आप एक 4D, '(एम, एन, आर, आर)' -shape सरणी, चाहते हैं या आप एक 2D, 'चाहते हो करो (एम, एन) '' ऑब्जेक्ट 'प्रकार का शेप सरणी जहां प्रत्येक तत्व एक और सरणी है? मैं दृढ़ता से पहले विकल्प की सिफारिश करता हूं, लेकिन आपका वर्णन दूसरे के करीब लगता है। – user2357112
भ्रम के लिए खेद है, लेकिन मैं पहले व्यक्ति को पसंद करता हूं, एक 4 डी '(एम, एन, आर, आर)' -शिप सरणी। –