機器學習毫無疑問地已經成為 buzzword 了,在網路上也有多到數不清的教學文章,只要會一點程式就能夠透過函式庫兜出一個 model 來,甚至說點 AI、Deep learning 就可以把別人唬得不要不要的。
但問題是,許多文章及教學當中,都是直接跳過理論部分,直接把文件上的程式碼複製貼上,對於一位工程師來說,我們的確只要確定結果正確就好,不需要關心如何實作。
了解背後的理論對提升自己仍然有許多幫助,像是「是資料太少還是 overfitting?」這類的問題,如果不知道背後的 model 如何運作,那麼一般的工程師就是無腦地繼續塞更多資料或是胡亂修改參數而已;知道理論的工程師能夠透過學習率曲線、誤差函數等等,來判斷到底是否繼續增加(減少)資料量、特徵。
因此,本系列文並不會有太多範例代碼,盡量著重在背後理論的部分,希望能夠用通俗易懂的方式讓大家理解。同時,我也仍然持續在學習機器學習的相關知識,可能會有不足或是錯誤的地方,歡迎大家不吝指教。