發表文章

目前顯示的是 6月, 2017的文章

Regularization - Week_3_part2

圖片
Solving the Problem of Overfitting  The Problem of Overfitting 我們在使用hypothesis function在擬合y的值的時候,會有三種狀況發生分別如下面圖所示: 最左邊的是underfitting的狀況,中間是擬合剛好的狀況,最右邊是overfitting的狀況。uderfitting也稱之為high bias的狀況,就是hypothesis並沒有適當的擬合資料的趨勢。是因為擬合的函示太過簡單或者是因為使用太少的特徵。而overfitting也稱之為high variance,其hypothesis是可以擬合目前所取得的資料集,但卻沒辦法一般化(generalized)到新的資料,是因為其擬合函數太過複雜導致有著跟資料無相關的曲線和角度。 上述這三種狀況都適用於linear regression 和 logistic regression,下面提出一些方法來避免發生overfitting的狀況: 減少特徵(feature)的數量: 手動挑選那些特徵需要留下 使用model去挑選演算法 正規化: 保留所有的特徵,但是減少了 參數θ j 的magnitude 正規化一樣也可以運作得很好,當我們有一些有用的特徵時。 -------------------------------------------------------------------------------------------------------------------------- Cost Function 如果我們過度擬合我們的hypothesis function,我們可以利用減少hypothesis function裡面項目的權重來減少他們對hypothesis function的影響,如下圖所示: 要是想其cost function不受到過度擬合的影響,可以在cost function裡面加上正規化項,來最小化其 theta parameter,其數學式如下方: -----------------------------------------------------------...

在jupyter notebook中同時使用pyhton2和python3

圖片
作業系統環境:Windows 10 Python環境:Python 2.7.12和Python 3.5.12 若要在Python3底下安裝jupyter notebook,通常都使用下面命令在CMD底下執行 py -3 -m pip jupyter notebook 想說若是要同時在Python2底下安裝jupyter notebook,應該也是依理類推在CMD底下執行 py -2 -m pip jupyter notebook 但沒想到過程中出現問題,CMD上提示需要安裝Microsoft Visual C++  9.0,就去google並下載安裝完成後再次重新執行指令,想說應該就這樣就完成了。 但發現說打開jupyter notebook之後,居然是下面這畫面,沒有pyhton2的選項可以開啟新檔案(因為我是安裝完成後才重新截圖,故用紅色的線劃掉代表沒有這選項) 此時代表缺Python2的kernel,只要把Python2的kernel加入即可 py -2 -m ipykernel install --user 依理類推,如果缺少的是Python3的kernel,只要把Python3的kernel加入即可 py -3 -m ipykernel install --user 完成後打開jupyter notebook就會發現同時可以開啟Python2和Python3的檔案,如下圖