最初接觸Tensorflow的時候,還是在1.x版本,那時候Keras支援性不高,因此和同學之間都以Tensorflow為主,但是在2019年Tensorflow更新到2.0版本,將Keras融入,但其中有段時間我都還在使用1.x版本,直到Anaconda的Python被我灌入很多環境,因此就搞爆了,重新安裝的時候才發現有最新版本,因此就來研究一下Tensorflow和Keras。
Tensorflow主要為了機器學習而建立的,tensor意味著有很多階層,每一層都有不同的功用,直到輸出為主,flow就是資料會在各階層中進行運算、移動,Keras會比Tensorflow來的更為方便,舉例來說,早期的Tensorflow中常常要先建立session,才能進行機器學習,但是Keras就不用,各個階層已經建立好,只需要會用就好了,但是運算上沒有比Tensorflow好,另外在程式語言上,Tensorflow會比Keras來的靈活性更高,Tensorflow可以應用在C++、Python、JAVA上,然而Keras僅能在Python,比Tensorflow少了許多,因此用Tensorflow的人仍然不少。
但是在Tensorflow2.0版本融入Keras之後,不僅融合了Tensorflow強大的運算性,以及Keras的方便性,以往session無需再建立,就可以進行機器學習。