Keras搭建一個Wide & Deep 神經網絡


Wide & Deep 神經網絡

2016年谷歌公司的Cheng等人發表的文章Wide & Deep Learning for Recommender Systems介紹了一種新的架構,Wide & Deep ANNs.

通過將輸入層的部分或全部信息直接與輸出層相連接,簡單的特征可以通過捷徑(short path)進行學習,復雜的特征則通過深層路徑(deep path)進行學習。與典型的多層感知機(MLP)結構相比,這種架構可以避免數據集中的簡單特征在深層路徑中被過度處理而失真。

Keras實現

Wide & Deep 神經網絡實現起來非常簡單,Aurélien Géron的經典教材Hands-On Machine Learning with Scikit-Learn and TensorFlow給出了一段源碼。書中源代碼有錯誤,這里給出正確的。

input=keras.layers.Input(shape=X_train.shape[1:])
hidden1=keras.layers.Dense(30,activation="relu")(input)
hidden2=keras.layers.Dense(30,activation="relu")(hidden1)
concat=keras.layers.concatenate([input,hidden2])
output=keras.layers.Dense(1)(concat)
model=keras.Model(inputs=[input],outputs=[output])


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM