python和機器學習 第六章 梯度下降法(一)

2021-09-25 05:18:31 字數 1913 閱讀 1945

導數代表theta單位變化時,j相應的變化

導數可以代表方向,對應j增大的方向

太小,減慢收斂學習的速度

太大,甚至會導致不收斂

線性回歸法的損失函式具有唯一的最優解

模擬實現梯度下降法

in [1]

:import numpy as np

in [2]

:import matplotlib.pyplot as plt

in [3]

: plot_x = np.linspace(-1

,6,141

)#假設下列式子是損失函式

in [4]

: plot_y =

(plot_x-

2.5)**2

-1#返回theta這點的導數

in [7]

:def

dj(theta):.

..:return2*

(plot_x-

2.5)

#返回theta這點的損失函式的值

in [8]

:def

j(theta):.

..:return

(theta-

2.5)**2

-1#梯度下降的過程

in [10]

: theta =

0.0...

: eta =

0.1...

: epsilon =1e-

8...

: theta_history =

...:

while

true:.

..: gradient = dj(theta)..

.: last_theta = theta

...: theta = theta - eta * gradient

......:

if(abs(j(theta)

- j(last_theta)

)< epsilon):.

..:break

#繪製損失函式和梯度下降的過程

線性回歸中的梯度下降法損失函式 j =

梯度下降中的導數實際是損失函式對每個theta求偏導得到的:

為了使梯度下降的過程與m無關,實際目標公式如下:

mysql第六章 第六章 mysql日誌

第六章 mysql日誌 一 錯誤日誌 錯誤日誌的預設存放路徑是 mysql 存放資料的地方 hostname.err 1.修改錯誤日誌存放路徑 mysqld log error data mysql mysql.log 2.檢視配置命令 show variables like log error 3...

python 第六章 字典

1.在python中,字典用放在花括號 中的一系列鍵 值對表示 tip 鍵 值對的排列順序與新增順序不同。python不關心鍵 值對的新增順序,而只關心鍵和值之間的關聯關係 2.在對字典遍歷的時候要記住加上.items 表示獲取字典的內容 3.title將獲取的字母首字母大寫 4.鍵 值,其中鍵代表...

第六章 學習筆記

1.引數分為位置引數和關鍵字引數。def func positional para x,y,z passdef func keyword para kwd1 1,kwd2 4,kwd3 9 pass2.1 當有多個位置引數時,可以用乙個星號來收集引數,函式內使用這些位置引數時可以通過for 迴圈依次...