4
다음과 같은 방법으로 조작하려고하는 3 차원 데이터 세트가 있습니다.Numpy-Dot 스칼라 벡터가있는 행렬 벡터 제품
data.shape = (643, 2890, 10)
vector.shape = (643,)
I가 2890x10 매트릭스 (643)의 길이는 1-D 어레이로 데이터를 참조 데이터와 벡터 간의 내적 (합곱?)를 계산 NumPy와 싶다. 루프를 사용하여이 작업을 수행 할 수 있지만 원시 노드를 사용하여이를 수행하는 방법을 찾고 싶습니다 (병렬 노드에서 여러 번 실행 됨).
등가 루프 (내가 믿는) :
a = numpy.zeros ((2890, 10))
for i in range (643):
a += vector[i]*data[i]
정말 감사합니다! 미안 해요, 재교육이라면, 저는 멀리서 수색을했고, 결국 여러분에게 물어볼 계정을 만들었습니다. 당신의 NumPy와가 (1.6 이상) 충분히 새로운 경우
a = numpy.array ([[[1,1,1,1],[2,2,2,2],[3,3,3,3]], [[3,3,3,3],[4,4,4,4],[5,5,5,5]]])
b = numpy.array ([10,20])
# Thus,
a.shape = (2,3,4)
b.shape = (2,)
# Want an operation . such that:
a . b = [[10,10,10,10],[20,20,20,20],[30,30,30,30]] + [[60,60,60,60],[80,80,80,80],[100,100,100,100]]
= [[70,70,70,70],[100,100,100,100],[130,130,130,130]]
감사합니다. 내가 원했던대로 정확하게 일했다. – user2411693