Keras模型是用於表示實際的神經網絡模型。有兩種方式創建模型Keras非常易於使用和實現。這兩個模式順序API和功能在Keras API,您可以使用它們來創建模型。
連續的API:
在這個API,您可以簡單地安排不同類型的層Keras按順序排列的。大多數人工神經網絡層是按順序排列的,流從一層到另一層的順序排列的。
創建一個ANN模型,您需要調用順序()API與指定的代碼如下:
從keras。模型導入順序
模型=順序()
現在,您可以添加一個層通過簡單地創建一個層Keras層API的幫助下以下內容:
從keras。模型導入順序
模型密度=順序()inpt_lyr = (32, input_shape =(8日))model.add密度(inpt_lyr) hdn_lyr =(64年,激活= ' relu ');model.add密度(hdn_lyr) otpt_lyr = (8) model.add (otpt_lyr)
現在,我們已經創建了一個輸入層、隱藏層和輸出層。您可能需要創建一個方法來訪問模型,下麵的代碼:
讓我們修改模型。層列表:
> > >層=模型。(< keras.layers.core層> > >層。密集的對象在0 x000001a7b828b6a0 >, < keras.layers.core。在0 x000002a7b828b6a8 > < keras.layers.core密集的對象。密集的對象在0 x000002a7b828b6a8 >)
現在,我們要修改一些文件如下:
model.inputs:
> > > inpt =模型。輸入> > > inpt[<特遣部隊。張量的dense_13_input: 0 =(形狀嗎?6)dtype = float32 >)模型。輸出:> > > otpts =模型。輸出> > > otpts <特遣部隊。張量的dense_15 / BiasAdd: 0 =(形狀嗎?8)dtype = float32 >)
該模型。get_weights文件將返回所有重量NumPy數組。和model.set_weights (weight_numpy_array)將模型的權重。
功能的API:這是另一種方法來創建更複雜的模型比連續模型。有各種各樣的輸入和輸出層函數模型,您可以實現。創建一個功能模型,您需要導入輸入層的幫助下模型如下所示:
從keras > > >。層進口輸入> > > dta =(形狀=(8、9))從keras > > >。層進口密集
接下來,您需要添加一個致密層的幫助下輸入以下代碼:
> > >層密度= (2)(dta) > > >打印(層)張量(“dense1 /添加:0”,形狀= (?3 3)data_type = float32)
模型的幫助下可以定義以下模塊:
從keras。模型導入模型
mdl =模型(輸入= dta,輸出=層)
最後的代碼和配置,您可能需要在您的代碼如下所示:
從keras。層進口輸入
從keras。模型導入模型
從keras。層進口密集
dta =輸入(形狀=(2、3)層密度=(2)(數據)模型=模型(輸入= dta,輸出=層)model.summary ()
形狀參數#層(類型)輸出
= = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = =
input_1 (InputLayer)(沒有3 3)0
________________________________________________________________
dense_1(致密)(沒有3 3)9
= = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = =
總參數:9
可訓練的參數:9
Non-trainable參數:0