google提供了不少機器學習資源,包括我們很常用的colab,以及有一段歷史,提供方便介面的Teachable machine。由於網路上範例--其實google提供的文檔也夠仔細了,我們不討論使用方法,今天來看一下這兩款學習資源的主要差別吧。 |Colab|Teachable machine| |---|---| |取樣|自行取樣|提供webAPP| |訓練|雲端訓練|自機訓練| |預測|自行撰寫預測程式|使用範例的預測程式| |模型調整|完全自由|完全不可| |額外功能|markdown轉PDF報告,其他程式也可執行|功能限定在這個模型| ### 取樣 在便利性上面來看,Teachable machine由於有比較完整的網頁介面,因此優於必須自己撰寫的colab。但因為是寫死的東西,沒辦法跳脫原本設計的框架,若想訓練比較特殊的模型colab才有辦法自訂樣本形式。 不過Colab與其說是採樣,不如說他只能吃我們上傳的訓練資料。 ### 訓練 令人遺憾的是,Teachable machine本身是將訓練用的JS庫放入電腦中,並且用電腦本身的資源訓練。因此這一點來看使用雲端資源訓練的colab勝出--尤其是你萬一手上就只有有限運算資源的時候絕對不會想用Teachable machine。 ### 預測 Teachable machine一樣提供了完整介面,但和取樣一樣面對了同樣的問題:被寫死的框架綁住。優點就是方便、快速,作為初學來說無可挑剔。 ### 模型調整 colab在這一點上有絕對的自由度,Teachable machine則是限定的模型。 ### 額外功能 因為Teachable machine的不可變更性,因此額外功能只討論colab的部分。colab支援markdown語法,也可以輸出PDF直接變成報告形式。功能包括但不限於跑機器學習任務......如果想練習寫一般python也沒什麼問題。 ### 結論 #### Teachable machine 比較適合初學者或無基礎者,他提供了完整的配套方式建立機器學習系統。並且對於嵌入式裝置的配套也做得很好(Teachable machine有提供量化模型輸出和執行--這比起一昧的提升嵌入式的算力更理想一點)。 唯一缺點大概是因為操作太簡單,大概3分鐘左右就可以學會,因此無法拉長教學時間。比較常當成一個體驗型的範例,對於啟蒙階段的學生來說是個不錯的範例......但要開一整門課,過於勉強。別說是一整門,開一天本鳥都覺得有點困難...... #### Colab 可以使用的範圍更加廣泛,雖然需要學習一點colab的基本操作,但在他提供的資源和便利性面前其實算是很微小的問題。比較適合學校一學期性質的教學,或者是中高階人士需要自己調整模型時使用。 且因為雲端訓練,所以整個流程可以僅在嵌入式裝置上完成。若個人(或學校)電腦性能有限,這會是一個比較好的方案,可以直接將Colab的markdown語法輸出成PDF報告也很有魅力。