# [Note] CS229 Lecture 1 : Introduction # Part I Supervised Learning --- Online lecture: https://youtube.com/playlist?list=PLoROMvodv4rMiGQp3WXShtMGgzqpfVfbU&si=vuAUi_ytVYB1Jc8V Main notes: https://cs229.stanford.edu/main_notes.pdf Other resources: https://github.com/maxim5/cs229-2018-autumn/tree/main --- ## 機器學習 當我們有這樣一筆數據時 ![IMG_0731](https://hackmd.io/_uploads/S1JJSIq9p.jpg =60%x) 我們可能會想找出土地面積(左)與房價(右)的關係, 以此**預測**給定面積的房屋價格。 首先,我們將數據描繪在以price為y, 以square feet為x的圖表上。 我們可以觀察出x與y之間呈現了線性關係(即可以將x與y的關係以y=ax+b這樣的方程式表示)。 ![IMG_0732](https://hackmd.io/_uploads/r1yySI99p.jpg =60%x) 所以我們現在要做的就是找出這條方程式。 大家高一時應該會學到求這條方程式的方法(二維數據分析那章), 那就是**最小平方法**。 機器學習同理, 一樣是要用統計方法運算, 最後擬合出這條直線。 ![CS229 2](https://hackmd.io/_uploads/Sy_zduq9a.png =60%x) 不過擬合直線的方法有很多種, 甚至能拓展至高維特徵, 不只用於單變量數據, 之後會再提到。 --- ## 學習方法 ![CS229](https://hackmd.io/_uploads/r1yyHLccp.png =60%x) training set就是**資料集**, 就像上面的土地面積與房價的關係就是資料集, 通常我們把$x$(土地面積)稱為**feature**, $y$(房價)稱為**label**。 也就是說,$X$為資料輸入(the space of input values), $Y$為預測輸出(the space of output values)。 learning algorithm是**擬合方程式的方法**, 我剛剛有提到擬合直線的方法有很多種, 所以我們可以依照任務需求選擇適合的演算法來訓練model, 這會很大程度的影響效率和準確度。 $h$是指**hypothesis**, 也就是機器要算出來(優化)的方程式, 通常我們將h表示為: $$h_\theta(x)=\theta_0+\theta_1x_1+\theta_2x_2+...\theta_dx_d$$ 為了避免誤會,我們會將$h_\theta(x)$寫作$h(x)$。 機器學習的目標就是**希望找出$h(x)$能夠正確地將$X\mapsto Y$** (將$X$映射(map)至$Y$)。 $\theta$指的是**參數(parameters)**,又叫做**權重(weights)**, 是在訓練模型時會被調整的係數。 而$d$是指dimention,即特徵的**維度**。 我們通常將$(x^{(i)}, y^{(i)})$稱作**training example**, 也就是模型用來學習的資料, $\{(x^{(i)}, y^{(i)}) ; i=1,...,n\}$指的是整個**訓練集**, 上標$(i)$指的是資料的**索引值(index)**。 以下面數據做為例子, 現在這個訓練集的特徵變成了兩個(土地面積和房間數量), 也就是說特徵的$d=2$, 所以特徵$x^{(i)}_1$指的是第$i$筆資料的土地面積, $x^{(i)}_2$指的就是第$i$筆資料的房間數量了。 這裡特別注意,我們一律**令$x_0=1$**。 ![IMG_0740](https://hackmd.io/_uploads/ryxL8Bjc6.jpg) 所以假設要用這筆資料做模型的訓練, 就可以設 $$h_\theta(x)=\theta_0+\theta_1x_1+\theta_2x_2$$ $x_1$是放入Living area這個特徵, 而$x_2$是放入bedrooms這個特徵。 接著就是開始訓練、調整$\theta$, 直到$h(x)$可以很好的以$X$預測$Y$。 最後有一個東西要提醒, 假如這條擬合曲線是非線性的, 那$\theta_dx_d$可能會像是$\theta_d(x_d)^2$、$\theta_dlog(x_d)$之類的, 整個$h(x)$就可能變成像是$h(x)=\theta_0+\theta_1(x_1)^2+\theta_2(x_2)^3+\theta_3log(x_3)+...$ --- ## 總結 其實人工智慧根本就不是什麼玄奇的科技魔法, 只是一台大型的統計計算機罷了。