Mój wejściowy kształt ma wynosić 100x100. Reprezentuje zdanie. Każde słowo jest wektorem o 100 wymiarach, aw zdaniu jest maksymalnie 100 słów.Podczas budowania CNN, otrzymuję skargi od Keras, które nie mają dla mnie sensu.
Dostarczam osiem zdań do CNN. Nie jestem pewien, czy to oznacza, że mój kształt wejściowy powinien mieć wartość 100x100x8.
Wtedy następujące linie
Convolution2D(10, 3, 3, border_mode='same',
input_shape=(100, 100))
narzeka:
Wejście 0 jest niezgodna z warstwy convolution2d_1: Oczekuje ndim = 4, uznał ndim = 3
To nie ma sensu do mnie mój wymiar wejściowy to 2. Potrafię przez to przejść zmieniając input_shape na (100,100,8). Ale "oczekiwany bit ndim = 4" po prostu nie ma dla mnie sensu.
Nie widzę też, dlaczego warstwa splotu 3x3 z 10 filtrami nie akceptuje wejścia o wartości 100x100.
Nawet ja otrzymuję skargę na temat "oczekiwanego ndim = 4". Występuje problem w mojej warstwie aktywacyjnej. Tam narzeka:
Nie można zastosować softmax do tensora, który nie jest 2D ani 3D. Tutaj ndim = 4
Czy ktoś może wyjaśnić, co się tutaj dzieje i jak to naprawić? Wielkie dzięki.