Я не согласен с ответом Дуга выше по нескольким пунктам.
У вас есть 4 дискретных (3-х категориальных) входа.Вы должны (если у вас нет веских оснований этого не делать) представлять это как 12 двоичных входов, используя кодировку «1 из 3» для каждого из четырех ваших концептуальных входов.Таким образом, если вы вводите [2,0,1,1], то ваша сеть должна быть задана: 0 0 1 1 0 0 0 1 0 0 1 0 Если ваша сетевая реализация требует ручного смещения, то вы должны добавить еще один бит всегдадля предвзятости, но большинство разумных реализаций нейронных сетей не требуют этого.
Попробуйте несколько разных количеств скрытых юнитов.Вам не нужно ограничивать себя скрытым размером слоя, меньшим, чем размер входного слоя, но если вы увеличите его, вы должны быть осторожны, чтобы упорядочить ваши веса, возможно, с уменьшением веса L2 или L1 и, возможно, даже сделать раннюю остановкуна тренировке (прекратите тренировку, когда ваша ошибка в сохраненном наборе проверки перестает улучшаться).