import numpy as np
# 匯入動畫包
import matplotlib.animation as animation
data = np.array([
[80,200],
[95,230],
[104,245],
[112,247],
[125,259],
[135,262]
])# 兩個陣列記錄m和b的變化過程
mhistroy=
bhistroy=
# 記錄mse的變化過程
msehistory=
weight =np.ones((2,1)) # m和b 採用矩陣的方式指定權重
ones = np.ones((len(data),1))
feature = np.hstack((data[:,0:1],ones))
label = data[:,1:2]
learningrate = 0.1
# 記錄歷史的梯度變換 m,b
cache = np.ones((2,1))
decay = 0.9
def grandentdecent2():
global weight,cache,learningrate
# 計算mse
mse = np.sum(np.square(np.dot(feature,weight)-label))
# 計算slop
slop = np.dot(feature.t,(np.dot(feature,weight)-label))
##關鍵**,rmsprop
## 記錄歷史變換,使用decay表示衰減
cache = decay*cache + (1-decay)*slop**2
weight = weight - learningrate * slop/np.sqrt(cache+0.000000001)
for i in range(50000):grandentdecent2()
## 以動畫的方式展示m和b收斂的過程
mse優化方法(四) adarm
import numpy as np 匯入動畫包 import matplotlib.animation as animation data np.array 80,200 95,230 104,245 112,247 125,259 135,262 兩個陣列記錄m和b的變化過程 mhistroy ...
優化演算法 3 RMSProp演算法和Adam演算法
rmsprop演算法全稱root mean square prop演算法。從前面的例子可以知道,當我們利用梯度下降法的時候,雖然橫軸也在前進,但縱軸擺動太大。假設縱軸是b橫軸是w,假如我們想減弱b的幅度,加快或者不減少w的前進,rmsprop演算法就可以起到這個作用。其執行過程是這樣的 那麼該演算法...
資料庫優化方法 三
接上文,根據上文中的方法我們可以得到我們需要優化的一連串的tsql語句,下面我們就來看看,如何進行優化。1。在sql server management studio中 開啟乙個新的查詢視窗,然後在查詢視窗中輸入需要優化的tsql語句。2。在輸入完tsql語句之後,在視窗中點選滑鼠右鍵,會彈出乙個選...