簡體   English   中英

了解基本的神經網絡結構

[英]Understanding of Basic Neural Network Structure

假設我想在 Keras 中編寫這個基本的神經網絡結構,它在輸入層有 10 個單元,在 Output 層有 3 個單元。

這個

現在,如果我使用 Keras,並給出大於 10 的 input_shape,它將如何調整它。

from tensorflow.keras.models import Sequential 
from tensorflow.keras.layers import Dense
model = Sequential()
model.add(Dense(10, activation = 'relu', input_shape = (64,)))
model.add(Dense(3, activation = 'sigmoid'))

model.summary()

你看,這里的 input_shape 的大小是 64,但是它將如何在 model 中調整,它的第一層有 10 個單位,因為據我所知,輸入形狀/向量的大小應該等於輸入層中的單位數。

或者我沒有實現這個神經網絡嗎?

那不會是一個問題。 形狀 (10,64) 的權重矩陣將用於輸入層。 您的輸入形狀為 64,第一個隱藏層有 10 個單位,給出 3 個單位的 output。 對我來說似乎很好。

但是你的輸入層本身是 64。所以你得到的是一個 3 層網絡,隱藏層為 10 個單元。

如果你的輸入向量的形狀是 64,那么你真的需要一個大小為 64 的輸入層。神經網絡的輸入層不執行任何計算。 它只是將輸入向前傳遞到第一個隱藏層。 另一方面,它對其中包含的所有神經元執行計算(輸入向量和權重的線性組合,后來用作激活 function 的輸入,在您的情況下是 ReLU)。

在您的代碼中,您正在構建一個具有 64 個輸入神經元(同樣不執行任何計算)、第一個(也是唯一一個)隱藏層中的 10 個神經元和 output 層中的 3 個神經元的神經網絡。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM