天天看點

機器學習課堂筆記(三)------向量化

向量化

通過向量運算的方法可以大大減小代碼量以及複雜度和時間

向量化之後将會提高運算速度

在進行深度學習中盡量避免使用顯式的for

現在對機器學習課堂筆記(二)中的計算a得過程進行向量化

隻需要把如下代碼

num = 0.0                ##分子
d = 0.0					 ##分母
for x_i,y_i in zip(x,y):
    num += (x_i - x_mean) * (y_i - y_mean)
    d += (x_i - x_mean) ** 2
           

改為

num = (x - x_mean).dot(y - y_mean)
d = (x - x_mean).dot(x - x_mean)
           

即可

下面對向量化之後效率究竟有多大的提升進行測試

機器學習課堂筆記(三)------向量化

每次循環大概差距是5ns,但是每次大概有10的7次方次,是以差距至少有5ns

繼續閱讀