第七色在线视频,2021少妇久久久久久久久久,亚洲欧洲精品成人久久av18,亚洲国产精品特色大片观看完整版,孙宇晨将参加特朗普的晚宴

為了賬號安全,請及時綁定郵箱和手機立即綁定
已解決430363個問題,去搜搜看,總會有你想問的

為什么我的層輸出與模型摘要中顯示的維度不同?

為什么我的層輸出與模型摘要中顯示的維度不同?

尚方寶劍之說 2021-10-12 17:39:48
我設(shè)法創(chuàng)建了一個成功的 RNN,它可以預(yù)測字母序列中的下一個字母。但是,我無法弄清楚為什么我遇到的問題的解決方案有效。我的訓(xùn)練數(shù)據(jù)是維度的 (39000,7,7)我的模型如下:    model = Sequential()    model.add(SimpleRNN(7, input_shape = [7,7], return_sequences = True))    model.add(Flatten())    model.add(Dense(7))     model.add(Activation('softmax'))    adam = optimizers.Adam(lr = 0.001)    model.compile(loss='categorical_crossentropy',optimizer=adam, metrics=['accuracy'])    model.summary()    return modelLayer (type)                 Output Shape              Param #   =================================================================simple_rnn_49 (SimpleRNN)    (None, 7, 7)              105       _________________________________________________________________flatten_14 (Flatten)         (None, 49)                0         _________________________________________________________________dense_49 (Dense)             (None, 7)                 350       _________________________________________________________________activation_40 (Activation)   (None, 7)                 0         =================================================================Total params: 455Trainable params: 455Non-trainable params: 0_________________________________________________________________這完美地工作。我的問題是,為什么我需要展平層?當(dāng)我不包括它時,我會得到這個模型摘要:跟著這個錯誤ValueError: Error when checking target: expected activation_41 to have 3 dimensions, but got array with shape (39000, 7)我的問題是:當(dāng)模型摘要說第二個例子中密集層的輸出應(yīng)該是 (None, 7 , 7) 并且錯誤消息說激活級別正在期待這樣一個 3D 輸入時,為什么密集層實際上是(39000,7)根據(jù)錯誤消息輸出形狀張量?我意識到 flatten() 層通過將所有內(nèi)容都放在 2D 中解決了這個問題,但我很困惑為什么沒有它它就無法工作。
查看完整描述

1 回答

?
慕運維8079593

TA貢獻1876條經(jīng)驗 獲得超5個贊

在您的錯誤聲明中,您可以看到錯誤是在檢查目標(biāo)尺寸時引起的。沒有展平層的模型輸出的形狀(None, 7, 7)在模型摘要中正確顯示。這里的問題是您的標(biāo)簽的形狀是(None, 7),因此 Keras 拋出 a ValueError(可能在反向傳播期間),因為您的標(biāo)簽的維度比網(wǎng)絡(luò)的輸出少一個。Keras 期望(None, 7, 7)from 標(biāo)簽與您的激活層的尺寸相匹配,但收到了一個(None, 7)

這就是為什么model.add(Flatten())在添加密集層之前使用可以正常工作的原因,因為目標(biāo)維度和輸出維度都是(None, 7).


查看完整回答
反對 回復(fù) 2021-10-12
  • 1 回答
  • 0 關(guān)注
  • 236 瀏覽
慕課專欄
更多

添加回答

舉報

0/150
提交
取消
微信客服

購課補貼
聯(lián)系客服咨詢優(yōu)惠詳情

幫助反饋 APP下載

慕課網(wǎng)APP
您的移動學(xué)習(xí)伙伴

公眾號

掃描二維碼
關(guān)注慕課網(wǎng)微信公眾號