UFLDL學習筆記系列 1

2021-08-29 20:23:28 字數 2632 閱讀 5741

exercise 1a:linear regression

此為斯坦福無監督特徵學習和深度學習教程(ufldl)的學習筆記。

我們的目標為從輸入向量x∈ℜ

nx\in\re^n

x∈ℜn

**目標值yyy。

以**房價為例,y

yy代表房價,x

xx表示描述房子的特徵向量(比如其大小和房間的數目)。假設給定大量的樣本,其中x(i

)x^

x(i)

代表第i個房子樣本的特徵,y(i

)y^

y(i)

代表第i個房子的**。則我們的目標為找到乙個函式y=h

(x

)y = h(x)

y=h(x)

,使得對每個訓練樣本都有y≈h

(x)y≈

h(x)

。若這個函式h(x

)h(x)

h(x)

擬合的足夠好的話,那麼當遇到新的樣本x

xx時,該函式能夠很好的**房價。

首先,我們使用線性函式來表示h(x

):hθ

(x)=

∑jθj

xj=θ

⊤x

h(x):h_\theta(x) = \sum_j\theta_j x_j = \mathbf^\top x

h(x):h

θ​(x

)=∑j

​θj​

xj​=

θ⊤x。現在目標轉變為找到合適的θ

\theta

θ使得hθ(

x(i)

)h_\theta(x^)

hθ​(x(

i))盡可能接近y(i

)y^

y(i)

。因此可以設定乙個cost function:

j (θ

)=12

∑i(h

θ(x(

i))−

y(i)

)2=1

2∑i(

θ⊤x(

i)−y

(i))

j(\theta) = \frac\sum_i(h_\theta(x^) - y^)^2 = \frac\sum_i(\mathbf^\top x^ - y^)

j(θ)=2

1​i∑

​(hθ

​(x(

i))−

y(i)

)2=2

1​i∑

​(θ⊤

x(i)

−y(i

))該公式度量了對於乙個特定的θ

\theta

θ,**y(i

)y^

y(i)

產生了多少錯誤。

現在我們想要找到使得j(θ

)j(\theta)

j(θ)

最小的θ

\theta

θ值,其中乙個高效的演算法是梯度下降(gradient descent)。

隨機初始化θ

\theta

θ,並重複迭代:θj:

=θj−

α∂∂θ

jj(θ

)\theta_j := \theta_j - \alpha\fracj(\theta)

θj​:=θ

j​−α

∂θj​

∂​j(

θ)(同時更新所有的j=0

,...

n.

j=0,...n.

j=0,..

.n.)這裡α

\alpha

α是學習率(learning rate),代表了走的步長。其中,我們有:∂∂θ

jj(θ

)=∑i

(hθ(

x)−y

)xj(

i)

\fracj(\theta) = \sum_i(h_\theta(x) - y) x_j^

∂θj​∂​

j(θ)

=i∑​

(hθ​

(x)−

y)xj

(i)​

偽**如下所示:

repeat until convergence^m(y^ - h_\theta(x^))x_j^ \ \ \ \ (for\ every\ j)

θj​:=θ

j​+α

i=1∑

m​(y

(i)−

hθ​(

x(i)

))xj

(i)​

(for

ever

yj)}

該練習題是要實現目標函式j(θ

)j(\theta)

j(θ)

的計算和梯度的計算,公式已在上面給出。在linear_regression.m檔案中實現**如下:

%計算j(theta)

for i = 1 : m

f = f + (theta' * x(:,i) - y(i))^2;

endf = f / 2;

%計算梯度

for i = 1 : n

for j = 1 :m

g(i) = g(i) + x(i,j) * (theta' * x(:,j) - y(j));

endend

UFLDL 教程學習筆記目錄

ufldl unsupervised feature learning and deep learning tutorial 是由 stanford 大學的 andrew ng 教授及其團隊編寫的一套教程,內容深入淺出,有很強的實用性,學習起來,讓人有種酣暢淋漓的感覺。下邊是我學習的筆記 1.1神經...

UFLDL 教程學習筆記(四)

在之前的練習中,比較小,這節課的方法可以應用到更大的影象上。在sparse autoencoder 後面會講到 中,一種設計選擇是將輸入層與隱藏層fully connect,這種方式對小的情況下計算量還 可以接受,但對大來說變得不可接受。一種簡單的解決方式是隱藏層只連線一部分的輸入層,即只對特定的輸...

UFLDL教程筆記(二)

softmax是邏輯回歸在多分類問題上的擴充套件,適合有k類情況下的分類任務。首先看下邏輯回歸的假設函式 h 11 e tx 更多邏輯回歸請戳 有上面可以看出h 和e tx是正相關的,而softmax回歸和logistic 回歸的在形式上也很類似,其中softmax將x分類為類別j的概率為 p yi...