고래밥 이야기
Python_inner product 본문
아래를 참고하였습니다.
L03_perceptron_slides (sebastianraschka.com)
import numpy as np
x, w = np.random.rand(100000), np.random.rand(100000)
def forloop(x, w):
z = 0.
for i in range(len(x)):
z += x[i] * w[i]
return z
def listcomprehension(x, w):
return sum(x_i*w_i for x_i, w_i in zip(x,w))
def vectorize(x, w):
x_vec = np.array(x)
w_vec = np.array(w)
return x_vec.dot(w_vec)
%timeit -r 100 -n 10 forloop(x, w)
>>> 52 ms ± 3.89 ms per loop (mean ± std. dev. of 100 runs, 10 loops each)
%timeit -r 100 -n 10 listcomprehension(x, w)
>>> 43.3 ms ± 2.05 ms per loop (mean ± std. dev. of 100 runs, 10 loops each)
%timeit -r 100 -n 10 vectorize(x, w)
>>> 924 µs ± 156 µs per loop (mean ± std. dev. of 100 runs, 10 loops each)
'잡다 > 잡다 그 잡채' 카테고리의 다른 글
Python_class (0) | 2022.11.09 |
---|---|
Python_def (0) | 2022.11.09 |
Python_module (0) | 2022.11.09 |
Python_The import system (0) | 2022.11.09 |
python_%timeit (0) | 2022.10.31 |
Comments