Week1
什麼是Regression?
- 可以用來預測股市、房價、或是醫學上根據腦部掃描可以用來判讀你的情緒
Simple Linear Regression Model
- f(x)為x和y之間所期望的關係,yi是實際的資料值,可以用f(x)加上ℇi的偏差來表示
- w0跟w1代表regression的coefficients
- 要怎麼評估f(x)線段多麼fit資料呢?
- 用RSS (Residual Sum of Squares)表示這條線段的Cost,它統計各資料點和線段的差異,RSS越小的線段表示預測的越準確
An aside on optimization
- 在尋求怎麼求出RSS最小的線段前,先要了解一些事情
- Concave線段指的是在上面選兩點g(a), g(b)連成一條直線,則此直線都位在g(w)之下
- Convex線段則相反,直線都位在g(w)之上
- Neither則是不屬於Concave也不屬於Convex
- 針對Concave線段,我們可以找到它的最大值,會位於對g(w)微分為0的點
- 針對Convex線段,我們可以找到它的最小值,會位於g(w)微分為0的點
- Neither類型則可能找到好幾個微分為0的點,也可能一個微分為0的點也找不到
- 在Convex線段尋找最小值可以用下列的演算法一步步求得,η代表step size
- Step size可以是固定的,但設的太大的話可能要話很多時間才能收斂完。
- 所以Step size也可以是逐漸減小的,前面用較大的Step size快速收斂,後面需要精準一點的調整所以用較小的Step size
- 而這個演算法什麼時候收斂完成呢?最好的情況是當dg/dw微分為0時代表已經找到最小值,但一般在實作時會設定一個dg/dw微分值的絕對值的Threshold,當它小於Threshold時就代表收斂完成了。
Gradient Descent
- 上面提到的是一維只考慮一個w的情況,那如果是多維的情況呢?下面是w0, w1與RSS之間的關係圖,從2D變成3D了
- 多維的情況要怎麼求最小值呢?在這邊引入Gradient的概念,若g(w)的w有p+1維,則g(w)取Gradient(以▽g(w)表示)會等於一個p+1維的vector,每個Item是g對各個w項目的偏微分,例如當對w0作偏微分時,就把w1...wp當成常數。當對w1作偏微分時,就把w0,w2...wp當成常數。
- 我們可以把前面3D的圖轉換成2D的Contour Plot
- 如果要求最小值的話,可用Gradient Descent,把前面一維例子的dg/dw換成▽g(w),一樣是當Gradient小於Threshold時代表收斂完成
找出最好的線段
- 前面講過RSS的公式,則對其求Gradient的結果會如下(就是分別對w0,w1做偏微分)
- 找出最佳解有兩個方法,第一種就是把Gradient當作0,求出w0跟w1
- 第二種是Gradient Descent,改寫一下上面的式子,由於w0+w1xi等同於預測的值,所以Gradient可以改寫成右邊的樣式
- 最後Gradient Descent的演算法會如下
Asymmetric errors
- Symmetric Cost Functions
- Asymmetric Cost Functions
- 預測的結果整體比實際高或低的影響是不同的
- 以賣房的房價來說,預測的太高可能就沒人要買,預測的太低則會少賺
資料來源
沒有留言:
張貼留言