Ma forme d'entrée est supposée être 100x100. Cela représente une phrase. Chaque mot est un vecteur de 100 dimensions et il y a 100 mots au maximum dans une phrase.Lorsque je construis un CNN, je reçois des plaintes de Keras qui n'ont aucun sens pour moi.
Je nourris huit phrases au CNN. Je ne suis pas sûr si cela signifie que ma forme d'entrée devrait être 100x100x8 à la place.
Ensuite, les lignes suivantes
Convolution2D(10, 3, 3, border_mode='same',
input_shape=(100, 100))
se plaint:
entrée 0 est incompatible avec la couche convolution2d_1: attendu ndim = 4, trouvé ndim = 3
Cela n'a pas de sens pour moi ma dimension d'entrée est 2. Je peux passer à travers en changeant input_shape à (100,100,8). Mais le bit "attendu ndim = 4" n'a tout simplement aucun sens pour moi.
Je ne vois pas non plus pourquoi une couche de convolution de 3x3 avec 10 filtres n'accepte pas l'entrée de 100x100.
Même je reçois à travers les plaintes sur le "attendu ndim = 4". Je rencontre un problème dans ma couche d'activation. Il se plaint là:
Impossible d'appliquer softmax à un tenseur qui n'est pas 2D ou 3D. Ici, ndim = 4
Quelqu'un peut-il expliquer ce qui se passe ici et comment le réparer? Merci beaucoup.