機器學習各類演算法思路總結二 梯度下降與資料標準化

2021-09-19 04:03:45 字數 901 閱讀 9495

必備的庫

**實現

# 得到隨機梯度下降的物件,eta0指定學習率,就是每次跳躍的幅度

sgd = sgdregressor(eta0=0.2)

# 訓練

sgd.fit(x, y)

# 得出模型的效果

print(f"r^2值:")

必要的包

**實現

from sklearn.model_selection import train_test_split

from sklearn.linear_model import sgdregressor

from sklearn.pipeline import pipeline

from sklearn.preprocessing import standardscaler, minmaxscaler

# **資料集得到訓練集與測試集

x_train, x_test, y_train, y_test = train_test_split(x, y, test_size=0.25, random_state=0)

# 使用流水線(我們的訓練集和測試集都需要資料標準化,故而流水線更加的方便)

pipeline = pipeline([("ss", standardscaler()), ("sgd", sgdregressor(eta0=0.01, max_iter=100))])

# 訓練

pipeline.fit(x_train, y_train)

# 對於訓練集和測試集進行評分

print(pipeline.score(x_train, y_train))

print(pipeline.score(x_test, y_test))

資料標準化的必要性

機器學習(九)梯度下降演算法

梯度 是乙個向量,其方向上的方向導數最大,其大小正好是此最大方向導數。關於梯度的更多介紹請看 如何直觀形象的理解方向導數與梯度以及它們之間的關係?乙個標量函式 的梯度記為 在三維直角座標系中表示為 梯度下降法 英語 gradient descent 是乙個一階最優化演算法,通常也稱為最速下降法。要使...

機器學習(二) 梯度下降法

前言 在上篇博文機器學習 一 中,最後我們提到,通過計算代價函式j 是否收斂於最小值來確定假設函式的引數 進而訓練出機器學習中的線性回歸演算法,那麼如何來找到使得j 最小話的引數 呢,本篇博文將介紹一種常用的方法,梯度下降法來確定引數 值。一 對於單特徵線性回歸,梯度下降法的演算法如下 repeat...

機器學習演算法(四) 梯度下降法

在對模型優化時,希望通過梯度下降法使得模型的損失函式降低。目前主要的梯度下降法有sgd momentum adagrad rmsprop adam幾種,接下來將詳細討論這幾種方法以及他們的優缺點。隨機選取乙個樣本的損失來近似整體樣本的平均損失,sgd在進行引數更新時的計算方式為 t t 1 gt t...