È risaputo che una rete a 1 strato non è in grado di prevedere la funzione xor, poiché non è separabile linearmente. Ho tentato di creare una rete a 2 livelli, utilizzando la funzione sigmoid logistica e backprop, per prevedere xor. La mia rete ha 2 neuroni (e un bias) sul livello di input, 2 neuroni e 1 bias nel livello nascosto e 1 neurone di output. Con mia sorpresa, questo non converge. se aggiungo un nuovo livello, quindi ho una rete a 3 livelli con input (2 + 1), hidden1 (2 + 1), hidden2 (2 + 1) e output, funziona. Inoltre, se mantengo una rete a 2 livelli, ma aumento la dimensione del livello nascosto a 4 neuroni + 1 polarizzazione, converge anche. C'è un motivo per cui una rete a 2 strati con 3 o meno neuroni nascosti non sarà in grado di modellare la funzione xor?