我們首先比較一下sklearn的機器學習大致使用流程和Keras的大致使用流程:
sklearn的機器學習使用流程:
fromsklearn.模型簇import模型名
fromsklearn.metricsimport評價指標
'''數據預處理及訓練測試集分離提取'''
myModel=模型名稱()#對象初始化
myModel.fit(訓練集x,訓練集y)#模型訓練
y預測集=myModel.predict(開發集x)#模型預測
評價指標=評價指標(y預測集,y測試集)#模型效果評估
Keras的機器學習使用流程:
importkeras
...根據具體需求引入keras的包...
...keras模型搭建...
...keras模型編譯(可選擇模型指標)...
kerasModel.fit(訓練集x,訓練集y)#keras模型訓練
y預測集=myModel.predict(開發集x)#keras模型預測
兩者的區別
由上面偽代碼可知Keras和sklearn最大不同在于需要進行模型搭建,可是既然有了這么多模型為什么還要模型搭建?
如果你了解過神經網絡感知機就會比較理解這個過程,一個感知器相當于一個神經元,可根據輸入信息反饋出需要的電信號,根據我們的世界觀,一個細胞可以單獨執行很多功能但是大量單純的任務會讓細胞只針對一個方向發展。用生物學的說話就是分化能力逐漸減弱,機器學習說法就是過擬合。因此,只有大量細胞通過不同的組合才能完成紛繁復雜的預測任務,因而有證明說神經網絡理論上可擬合出任何曲線。
那么話說回來,Keras需要自行搭建模型,搭建方法有兩種:序貫模型和函數式模型。而我本次的筆記就是學習序貫模型和函數式模型。
以上內容為大家介紹了python中sklearn和Keras機器學習的流程的區別,希望對大家有所幫助,如果想要了解更多Python相關知識,請關注IT培訓機構:千鋒教育。