機器學習的基本模型

2021-07-06 08:05:56 字數 4027 閱讀 9708

機器學習的各種演算法在於如何使用特定函式與已知的資料集相匹配,從而達到訓練和測試的目的。本篇文章對一些近似的模型做一些相應的介紹。

假設學習物件

f 函式的輸入是一組實數,那麼對該函式進行近似的時候,最簡單的方案就是fθ

(x)=

θ⋅x。在這裡,

θ 是這個函式的斜率,也就是這個函式fθ

(x) 的引數。機器學習就是通過對這個引數的學習,完成函式的近似計算。這個模型對於

θ 而言是乙個線性函式,操作起來十分方便,但是對於實際的情況來說,該模型過於簡單,沒有太大的使用價值。

由於上面這個模型過於簡單,那麼在實際應用中,會對上述的模型進行必要的擴充套件,使得函式fθ

(x) 變成引數的線性模型,這樣這個模型就可以用來表示非線性的輸入和輸出了。可以把θ⋅

x 擴充套件成如下形式:fθ

(x)=

∑bj=

1θj⋅

ϕj(x

) 。

在這個式子中,ϕj

(x) 是基函式向量ϕ(

x)=(

ϕ1(x

),⋅⋅

⋅,ϕb

(x))

t 的第

j 個分量,θj

是θ=(

θ1,⋅

⋅⋅,θ

b)t 的第

j 個分量,

b是基函式ϕ(

x)的維數。根據上面fθ

(x) 的定義,可以得到該函式是引數向量

θ 的線性函式。也就是說對於

b 維引數θ,

θ′和α

∈r,滿足fθ

+θ′(

x)=f

θ(x)

+fθ′

(x) 和fα

θ(x)

=αfθ

(x) 。那麼這個時候如何選擇基函式ϕ(

x)就成為了乙個關鍵所在。數學分析裡面有乙個經典定理叫做weierstrass定理,陳述如下:

weierstrass第一逼近定理:假設f(

x)是閉區間[a

,b] 上的連續函式,對於任意的

ϵ>

0 ,則存在多項式p(

x)使得對於所有的x∈

[a,b

] ,有|f

(x)−

p(x)

|<

ϵ 。

根據weierstrass第一逼近定理,對於任何乙個閉區間上面的連續函式,都可以用多項式去逼近。所以聯絡到機器學習,就可以把基函式ϕ(

x)的分量設定為多項式,換句話說ϕj

(x)=

xj−1

和ϕ(x

)=(1

,x,x

2,⋅⋅

⋅,xb

−1)t

。那麼上述的

θ 的線性函式卻是關於自變數

x 的非線性函式,而且fθ

(x)=

∑bj=

1θj⋅

xj−1

可以逼近關於

x 的閉區間上任何乙個連續函式。

與weierstrass逼近定理類似,用fourier級數也可以逼近lipchitz連續函式。所以也可以選擇基函式ϕ0

=1,ϕ

2j−1

(x)=

sin(jx

),ϕ2

j(x)

=cos(j

x),這裡j≥1

。簡單來說就是令b=

2m+1

, ϕ(

x)=(

1,sinx

,cosx,

⋅⋅⋅,

sin(mx

),cos(mx

))t 。根據這些模型,fθ

(x) 就可以表示複雜的非線性模型了。

對於高維的變數x=

(x(1

),⋅⋅

⋅,x(

d)) ,函式依舊可以擴充套件成如下模式: fθ

(x)=

∑bj=

1θjϕ

j(x)

=θtϕ

(x) 。對於多維的輸入向量

x ,可以用一維的基函式來構造多維基函式的乘法模型加法模型

乘法模型指的是把一維的基函式作為因子,通過使其相乘而獲得多維基函式的方法。表示式如下: fθ

(x)=

∑b′j

1=1⋅

⋅⋅∑b

′jd=

1θj1

,⋅⋅⋅

,jdϕ

j1(x

(1))

⋅⋅⋅ϕ

jd(x

(d))

。 在上面的式子中,b′

是各個維數的引數個數。對於這個模型而言,它的表現力十分豐富,但是不足之處在於所有的引數個數是(b

′)d ,是乙個非常巨大的數字,導致的維數災難,所以在實際運用中,不主張用這個模型。

加法模型指的是把一維的基函式作為因子,通過相加而活得高維基函式的方法。表示式如下: fθ

(x)=

∑dk=

1∑b′

j=1θ

k,jϕ

j(x(

k)) 。

加法模型中所有引數的個數是b′

d ,是乙個關於維數

d 的線性函式,複雜度沒有乘法模型大,但是表現力和乘法模型比起來則差很多。ni

=1。 在核模型中,會使用核函式k(

x,c)

=exp(−

||x−

c||2

2/(2

h2))

,其中||

⋅||2

指的是歐幾里德2-範數,

h 表示核函式的頻寬

c指的是核函式的均值

從核函式的定義可以可以延伸出模型 fθ

(x)=

∑nj=

1θj⋅

k(x,

xj) 。

在這個模型中,關於

θ 而言仍然滿足線性關係。換句話說,對於θ,

θ′∈r

n , α∈

r ,有fθ

+θ′(

x)=f

θ(x)

+fθ′

(x) 和fα

θ(x)

=αfθ

(x) 。對於核函式來說,無論輸入的是一維變數還是高維變數,核函式都可以容易的進行擴充套件。

對引數來說是非線性的模型,都稱為非線性模型。下面要介紹的就是非線性模型中的層級模型,它在很多領域都有應用。假設模型是 fθ

(x)=

∑bj=

1αj⋅

ϕ(x;

βj) 。

上式中,ϕ(

x;β)

是關於引數向量

β 的基函式,層級模型是基於引數向量α=

(α1,

⋅⋅⋅,

αb)t

的線性形式。同時也包含引數向量bj

=1,所以層級模型是基於引數向量θ=

(αt,

βt1,

⋅⋅⋅,

βtb)

t 的非線性形式。

基函式通常採用s型函式 ϕ(

x;β)

=1/(

1+exp(−x

tω−γ

)),其中β=

(ωt,

γ)t

或者高斯函式 ϕ(

x;β)

=exp(−

||x−

c||2

2/(2

h2))

,其中β=

(ct,

h)t 。

其中s函式模仿的是人類腦細胞的輸入輸出函式,因此使用s函式的層級模型也被稱為人工神經網路模型

針對像人工神經網路這樣的層級模型,採用貝葉斯學習的方法是不錯的選擇。人工神經網路也以學習過程艱難異常而著稱。

機器學習模型 如何口述機器學習模型原理

重磅乾貨,第一時間送達 有時碰到跟別人聊起模型的熟悉時,不免要闡述下模型的原理,但一般口頭交流都比較難,因為腦海裡面都是一些公式,似乎從功利角度有必要把模型原理用文字表達一遍,所以自己整理了下機器學習的部分,有遺漏或者不對的地方也請多多指教 線性回歸 首先我們會定乙個函式假定y和x的關係,如y wx...

機器學習模型 知乎 最簡單的機器學習模型

今天學習感知機,乙個最簡單的線性分類器 考慮平面上的一系列點,他們有兩種類別,分別用 1,1表示,如圖 能夠確定的是可以找到一條直線,可以將這些點完美分割開來 那麼問題在於,如何找出這條直線呢?手上現在有,每個點 的座標 以及每個點的類別標記 這裡吧平面直角座標系的兩個維度定義為 而不是 假設這條直...

機器學習 基本概念,常用經典模型

1.機器學習 明白一些基本概念 什麼是機器學習 研究如何通過計算的手段,利用經驗來改善系統自身的效能 通俗來講,讓 學著幹活 特徵 自變數 標籤 因變數 學習的種類 有監督學習 提供標籤,分類 回歸 無監督學習 無標籤,聚類 增強學習 也稱強化學習,馬爾科夫決策過程 markov decision ...