--- ---復元コンテンツ始まります
勾配降下の定義:
勾配降下は、コンピュータ記憶であると理由は緩やかなアプローチを取るために限られた能力のために解決するための反復法の。
勾配を下るステップ:
出発点として任意のポイントを取ります
モバイル最小Z値を参照して、現在の時点でその方向で得られ、そして移動の方向ことができます。
あなたは小さなz値を見つけることができるまで、この手順を繰り返し、その最低点に達したと思います。
コンセプトに基づいていくつかのアルゴリズム:
ステップサイズ:勾配は、前列の目標長さまで低下するたびに。
機能を仮定:ターゲット変数の機能は、機能によって生成されます。
損失機能:パラメータの任意の組み合わせにスコアリング機能として想像することができます。
長所と短所:
この方法は、より高速なOLSより解決が、時には勾配降下は、グローバルな最適解を見つけることができません。
確率的勾配降下:
全ての試料によって失われていない場合、関数計算、サンプルおよび損失値の単一または小グループの分散。
そして、通常の勾配降下の違い:
確率的勾配降下がはるかに高速であるため、反復回数は増加します。
平均勾配降下よりもグローバル最適ボローを見つける可能性が高くなります。
戦闘:
いくつかの一般的に使用されるパラメータ:
ペナルティ:損失関数ペナルティ項のレビュー線形回帰ペナルティ項の概念
ロス:関数型の損失は、トレーニングの有効性と速度に影響を与えます
max_iter:最大反復回数
シャッフル:シャッフルする必要の反復を完了した後、
n_job:CPUの数
learning_rate:ステップストラテジー(平均、型サイズの最初の後、等)
ETA0:最初のステップ
fit_intercept:モデルの切片があります
sklearn.linear_model インポートSGDRegressor から sklearn.linear_model インポートSGDClassifier からランダムインポートrandint インポートNP AS numpyの インポートAS PANDAS PD #確率的勾配回帰 DEF SGDregressor(): X- = [0,0]、[2,1]、[5。 、4] #のサンプル請求 Y = [0,2,2] #1 試料ターゲット分類 REG = SGDRegressor(ペナルティ= " L2 "、max_iter = 10000、公差= 100 ) reg.fit(X、Y) reg.predict( [[ 4,3]]) プリント(reg.coef_) #の表示回帰パラメータ プリント(reg.intercept_) #ビューカットデータ #確率的勾配降下 DEF SGDclassifier(): X-。= [0,0]、[2,1]、[5]、[ 4] #サンプル請求 Y = [0,2,2] #のサンプルターゲット分類 CLF = SGDClassifier(ペナルティ= " L2 "、max_iter = 1000、= 1E-TOL。3) #の初期分類器 clf.fit(X、Y ) #のトレーニング を印刷(clf.predict([[4,3]])) #の予測 #インクリメンタル学習 デフpartial_fit(): REG2 = SGDRegressor(損失= " squared_loss "、ペナルティ= " なし"、公差は= 1E-15 ) X- = np.linspace(0,1,50) #50のxの値 Y = X / 2 +0.3 np.random.normal +(0,0.15、LEN(X-)) #yは= X / 2 + 0.3サンプルプラス乱数発生 X-X.reshape =(-1,1 ) のための I における範囲(10000 ): IDXを randint =(0、LEN(Y)-1) #ランダムに選択されたサンプルインデックス reg2.partial_fit(X- [IDX:IDX + 10]、Y [IDX:IDX + 10]) #1 課トレーニング プリント(reg2.coef_) #の表示回帰パラメータ を印刷(reg2.intercept_) #の表示インターセプト
インクリメンタル学習がこれです:学習しながら、データを読み取ることができながら、