機器學習 從線性回歸說起

2021-07-09 04:48:48 字數 3791 閱讀 5974

接觸機器學習與深度學習僅一年的時間,現以筆記形式記錄描述心得體會,必要時會實現相關演算法。部落格中將會提到的演算法大多來自機器學習相關的書籍,如andrew ng的機器學習講義,李航老師的統計學習方法,機器學習實踐,prml,understanding machine learnning ,foundamentation of machine learning 以及部分**。總之,說到哪算到哪,或許以後不會從業機器學習相關工作,但現在還是坐下筆記為好!會在每一次部落格後面附上參考**。

區域性加權回歸

離線寫部落格

瀏覽器相容

在機器學習的一些常用演算法中,經常遇到的是兩類問題:分類 和 回歸。前者稱為classification ,後者稱為regression。區別這兩類問題的關鍵是看輸出變數y是連續變數還是離散變數。f(xi)=yi,f為學習演算法要學習的假設函式,可以看做是輸入變數x和輸出變數y之間的對映關係。若給定任一輸入變數xi,yi只有若干離散值可選,那麼這輸入分類問題;反之若輸出yi的可選值有無窮多個,且為連續空間,則成為回歸問題。 我們以andrew ng的機器學習講義中的例子來說明回歸問題。
問題:

已知房子的條件,包括居住面積、臥室個數等,**房子的售價!

訓練集

住房面積(m2)

臥室個數

售價2104

3400

1600

3330

2400

3369

1416

2232

3000

4540..

....

...

從這部分已知的資料,我們需要學習處在住房面積(m2)、臥室個數和最終售價之間的對映關係。這便是乙個典型的回歸問題,因為售價為連續的變數,而非可數個離散值。這裡的住房面積、臥室個數。。。便是輸入變數x,輸出變數y為收件。學習演算法需要學習的是二者之間的對映關係f。

線性回歸

我們假設輸入變數和輸出變數之間存在一次(線性)關係,即若以x1

表示住房面積,以x2

表示臥室個數,那麼線性關係可以理解為存在引數θ0

、θ1、θ2

,使得售價y可以表示為: y=

hθ(x

)=θ0

+θ1∗

x1+θ

2∗x2

這裡的 θ

i 成為引數(parameters),有時也稱為權重,一般情況下這也是機器學習演算法所要學習的東西。它描述了從輸入變數 x

1 、 x

2 到s輸出變數 y

之間的對映關係。

為了簡介的表示上面的關係式,我們通常會選擇增加乙個截距項x0

,令 x0

=1則可以向量乘表示上面的線性函式: h

(x)=

∑i=0

2θix

i=θt

x

當輸入變數x存在n個元素時,將2替換為n即可,即 h

(x)=

∑i=0

nθix

i=θt

x

這裡的

θ , x

均為n+1維的向量。

那麼問題來了,既然我們已經有了訓練資料,也假定了輸入、輸出之間存在一次(線性)關係,那麼究竟怎麼選擇引數

θ呢?

乙個顯然的方法就是,我們選擇的 θ

,要能夠使得輸出 h

θ(xi

) 盡可能接近於y_i,至少對訓練資料如此。也就是說應盡可能使得 |

hθ(x

i)−y

i|盡可能的小。

為此,我們定義損失函式(cost function)描述這個誤差: j

(θ)=

1/2∑

i=1m

(hθ(

x(i)

−y(i

))2

這裡的m為訓練資料中的樣本對的個數,通常樣本對以 (

x(i)

,yi)

表示。至於這裡為什麼要以二次項表示這個誤差函式,請見稍後的為什麼經常選擇最小二乘法作為損失函式?部分。

這裡定義的 j

(θ) 稱為最小二乘損失函式,最小二乘法在機器學習中是很常見的。

現在我們已經定義了誤差的表示,之前說過,我們的目的是選擇的引數 θ

要能夠使誤差越小越好。那麼接下來問題就變為如何最小化損失函式 j

(θ) 的問題了。也就是 m

inθj

(θ)

接下來以兩種方法來求解這個最優化問題,乙個稱謂隨機梯度下降法,另乙個稱謂拉格朗日極值法。這兩種方法也常用語其他機器學習演算法的求解中。

稍後再寫!

markdown extra定義列表語法:

專案1

專案2定義 a

定義 b

專案3定義 c

定義 d

定義d內容

**塊語法遵循標準markdown**,例如:

@requires_authorization

defsomefunc

(param1='', param2=0):

'''a docstring'''

if param1 > param2: # interesting

print

'greater'

return (param2 - param1 + 1) or

none

class

someclass:

pass

>>> message = '''interpreter

... prompt'''

生成乙個腳注1.

[toc]來生成目錄:

區域性加權回歸

離線寫部落格

瀏覽器相容

使用mathjax渲染latex 數學公式,詳見math.stackexchange.com. x

=−b±

b2−4

ac−−

−−−−

−√2a

更多latex語法請參考 這兒.

可以渲染序列圖:

或者流程圖:

即使使用者在沒有網路的情況下,也可以通過本編輯器離線寫部落格(直接在曾經使用過的瀏覽器中輸入write.blog.csdn.net/mdeditor即可。markdown編輯器使用瀏覽器離線儲存將內容儲存在本地。

使用者寫部落格的過程中,內容實時儲存在瀏覽器快取中,在使用者關閉瀏覽器或者其它異常情況下,內容不會丟失。使用者再次開啟瀏覽器時,會顯示上次使用者正在編輯的沒有發表的內容。

部落格發表後,本地快取將被刪除。 

使用者可以選擇 把正在寫的部落格儲存到伺服器草稿箱,即使換瀏覽器或者清除快取,內容也不會丟失。

注意:雖然瀏覽器儲存大部分時候都比較可靠,但為了您的資料安全,在聯網後,請務必及時發表或者儲存到伺服器草稿箱

ie9以下不支援

ie9,10,11存在以下問題

不支援離線功能

ie9不支援檔案匯入匯出

ie10不支援拖拽檔案匯入

這裡是腳注的 內容. ↩

機器學習 線性回歸

可以說基本上是機器學習中最簡單的模型了,但是實際上其地位很重要 計算簡單 效果不錯,在很多其他演算法中也可以看到用lr作為一部分 先來看乙個小例子,給乙個 線性回歸是什麼 的概念。圖來自 2 假設有乙個房屋銷售的資料如下 面積 m 2 銷售價錢 萬元 123 250 150 320 87 160 1...

機器學習(線性回歸)

在機器學習中,回歸 分類和標註共同構成了監督學習技術。監督學習 supervised learning 是機器學習在工業界應用最廣的乙個領域分支。在學術界中也是研究最多的領域之一。大家都知道的資料探勘十大經典演算法中,監督學習技術佔據6席。方法 自變數 特徵 因變數 結果 關係 回歸演算法是試圖採用...

機器學習 線性回歸

line fitter linearregression 建立模型 line fitter.fit temperature,sales 傳入引數 sales predict line fitter.predict temperature 模型 直線 直線上會有loss 計算loss時 要使用平方距離...