我是python的新手,所以我的計算效率有一些問題。 我使用這個代碼,以填補我的矩陣H和我^ h向量(x_tr,x_te和c是列表):通過使用向量化來加速我的計算
for l in xrange(0, b):
for ls in xrange(0, b):
H[l][ls] = 1.0/n_tr * numpy.sum([numpy.exp(-((numpy.linalg.norm(x_tr[i]-c[l])**2 + numpy.linalg.norm(x_tr[i]-c[ls])**2)/(2*s**2))) for i in range(0, n_tr)])
h[l] = 1.0/n_te * numpy.sum([numpy.exp(-((numpy.linalg.norm(x_te[j]-c[l])**2)/(2*s**2))) for j in range(0, n_te)])
我想這可能是低效使用2圈......有沒有簡單的加快我的計算速度的方法?有人告訴我,我可能會使用矢量化,但我有點不知道這是如何工作
感謝您的幫助:)
你還不清楚什麼?你有沒有試過一個numpy教程? –
我甚至可以使用矢量化來加速計算嗎? 我嘗試了一些教程,但我不太明白,我怎樣才能將他們的例子引用到我的計算中 – hukd321
是的,矢量化會加速你的計算。我會盡力發佈一些幫助。 –