2x2 행렬 x의 원소에 2x2 행렬 인 행렬 y를 곱해야합니다. 기존의 numpy 곱셈을 사용하면 전체 행렬 x를 취해 y의 각 행렬에 곱합니다. 나는 수치스러운 의사를 찾고 있었다. 뭔가 즉,이 복제됩니다Numpy : 행렬 요소에 행렬을 곱하는 것
>>> x = np.array([[1, 0], [0, 1]])
>>> x
array([[1, 0],
[0, 1]])
>>> y = np.ones((2, 2, 2, 2))
>>> y
array([[[[ 1., 1.],
[ 1., 1.]],
[[ 1., 1.],
[ 1., 1.]]],
[[[ 1., 1.],
[ 1., 1.]],
[[ 1., 1.],
[ 1., 1.]]]])
>>> multiply(x,y)
[[[[1, 1],
[1, 1]],
[[0, 0],
[0, 0]]],
[[[0, 0],
[0, 0]],
[[1, 1],
[1, 1]]]]
정확하게 귀하의 질문은 무엇인가 : @Dalek와의 의견에서 @DSM 실제로 당신이 원하는 것 같다? – Dalek
행렬 x의 각 요소에 y와 대응하는 행렬이있는 스칼라 인 것처럼 곱하면 어떻게됩니까? 기본적으로 나는 예제 코드에서 제공 한 multiply 함수를 복제 할 무언가가 필요하다. – user2909415
@ user2909415'np.tensordot (x, y, axes = [[0, 1], [0, 1]])'을 찾고있는 것 같지만 질문이 확실하지 않습니다 ... 예상되는 결과는 무엇입니까? –