今天是鐵人賽挑戰的第15天,不知不覺撐過一半的日子了,在這裡我要先謝謝我的好隊員們,雖然途中發生了一些意外導致團隊挑戰失敗,但是隊友們依舊互相提醒互相扶持,還要謝謝願意讀我文章的人們,每一個人的點閱對我來說都是一份小小的鼓勵,最後我要謝謝自己,當初肯下定決心接下這份挑戰,讓我把握住這個成長的機會!
回歸正題,有認識的人私下跟我提到說,既然我這幾天把Keras介紹的多好又多棒,那麼為什麼我們還要去認識TensorFlow呢?原因其實很簡單,如果把研究深度學習開發想像成是在學習一項才藝,好比學騎腳踏車,對於從零開始的初學者而言,一定是先嘗試有裝設輔助輪的腳踏車,再進階到一般單車,最後才學會駕馭競速單車;又好比學攝影,若是一開始就給新手一臺上萬元的單眼相機,不僅無法發揮它的價值,還可能搞的自己一頭霧水甚至放棄,先從手機相機去學基礎觀念,再試著接觸數位相機或是類單眼相機,最後才入手專業級的單眼相機,這樣由淺到深,一步步紮實的從簡易基礎學習到深入專業,才是真正學好一項技能的不二法門。
因此,不同的學習階段適用不同的工具,回到上個段落被問到的問題,Keras確實易學又好用,善加運用內建的輔助工具,就能以比較輕鬆的方法建立深度學習模型,相較之下,雖然張量矩陣運算等內容需要自行做設計,但TensorFlow擁有更高的使用彈性,可以因應需求做到更精確更客製化的模型,所以說先從適合初學者的Keras中學習,等到對基本的程式設計模式和操作多加熟悉後,再進階到TensorFlow的使用,會是比較恰當的選擇。