淺談機器學習原理筆記--
機器學習
- Learing : 人類學習是透過各種觀察(observatoins)去學到能力 , 輸入:觀察、輸出:能力
- Machine Learning : 機器是透過各種資料的方式來學習到能力 ,輸入:資料、輸出:功能
範例: 使用股票資料來預測投資的方向。
總結: 我們希望機器可以像人一樣,透過學習就可以獲得技能,機器學習就像在解決一個任務(Y)透過資料(X)和找到一個方程式(F)來求出接近任務的解。Y = F(X) ,常用的範例:語音辨識、天氣預測、股票預測、圖片辨識、機器玩遊戲。簡單說機器學習利用資料與合適的模型來解決一個複雜的問題,通常這個問題無法使用簡單程式來解決。
Artifical Intelligence(AI) | Machine Learning(ML) | |
---|---|---|
說明 | 希望模擬人的智慧行為 | 透過資料學習來改善整體效能 |
範例 | 資料、演算法 | 資料、演算法 |
集合關係 | AI | AI的子集合 |
機器學習先決條件 :
- 解析問題的複雜度,是否真的需要建立模型來解決
- 必須有資料並需要處理
- 從資料中建立模型(Hypothesis)
- 選擇測量誤差的方法,模型得到的解與現實結果的誤差
- 建立模型到正式環境(沒有學習過的資料),也可以達到正確解
範例: KDD 2010 出題系統可以根據過去的練習,去調整出題的難度=> binary classifiation
機器學習過程
Step 0 : 定義問題是否需要使用ML
(1) 先理解這個問題是否需要透過ML來處理,如果可以使用if-else或是簡單邏輯判斷來解決,表示問題簡單,不需要使用ML來解決。ML通常解決比較複雜的問題,像股票預測是否可以使用ML來預測未來趨勢。 (2) 是否有資料跟結果有關聯
Step 1 : 收集資料
收集資料並且都須要有正確答案,範例: KDD 2010 出題系統可以根據過去的練習,去調整出題的難易度=> binary classifiation。
Step 2 : 定義模型
假設用線性方程式來舉例
透過資料特徵 x = (x1, x2 , ... xc),計算x乘上權重後相加,超過threshold就為1,否之為0。
我們可以假設模式為下面公式,幫我們WX>threshold,可以得到sign(0)=1,反之為-1
使用Perceptron的一次線性方程式來處理現實問題,也可以用來處理AND、OR、NOT的邏輯問題,但是無法處理XOR的問題。
Step 3 : 測量誤差
希望理想解為error趨近於0 => g(x)-f(x)=0,但實際上會有個誤差error,我們在In-sample(已經訓練過的資料)將每個g(x)-f(x)集合相加在求出平均,就是實際上誤差。Out-of-sample就是可以在實際環境上可以得到正確的解答。
ML 框架
參考資料
https://www.youtube.com/watch?v=_j9MVVcvyZI&list=PLJV_el3uVTsPM2mM-OQzJXziCGJa8nJL8&index=2
https://www.youtube.com/watch?v=redFUcvGcYU&list=PLOAQYZPRn2V658cD6AjiBmKohfMIevWO7&index=2
https://www.csie.ntu.edu.tw/~cjlin/libsvm/
https://kdd.org/kdd-cup/view/kdd-cup-2010-student-performance-evaluation/Data
留言
張貼留言