卷積層后連接LSTM層的報錯(InvalidArgumentError (see above for traceback): Incompatible shapes: [128] vs. [384])


 

三通道編譯通過但無法訓練
報錯

InvalidArgumentError (see above for traceback): Incompatible shapes: [128] vs. [384]。其中384= 128×3
報錯原因
    本文為三通道2DCNN,在model的中間通過代碼:

 

        outputs = keras.layers.concatenate([inputs_1, inputs_2, inputs_3], axis = 0)

    將三個通道的輸出結合了在一起,注意是在axis = 0的維度上,這是導致報錯的原因所在。下面解釋為什么。
    首先,我們假設我們的數據形狀為(128,8,8),我們的batch_size = 128,那么model在fit編譯的時候,就會根據數據形狀的樣本數128去編譯。但是我們在通道concatenate()之后數據形狀變為了(128×3,8,8),這時候就會出現我們看到的這個報錯。
修改建議
    outputs = keras.layers.concatenate([inputs_1, inputs_2, inputs_3], axis = 1)
    即把在axis = 0 改為axis = 1,數據形狀為:(128,8×3,8)模型搭建。

如果你有問題,歡迎給我留言。


免責聲明!

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



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