Feed-Forward Network

term_id: feed_forward_network

Category: basic_concepts

Definition

Le Feed-Forward Networks (FFN), note anche come Multi-Layer Perceptrons (MLP), elaborano i dati sequenzialmente attraverso strati di neuroni dall’input all’output senza loop di feedback. Ogni neurone riceve input, li combina tramite somme pesate e applica una funzione di attivazione non lineare prima di passare il risultato allo strato successivo, permettendo l’apprendimento di funzioni complesse.

Summary

Una classe di rete neurale artificiale in cui le connessioni tra i nodi non formano cicli, propagando le informazioni in una sola direzione.

Key Concepts

  • Assenza di cicli
  • Strati (Input, Nascosti, Output)
  • Funzioni di attivazione
  • Somme pesate

Use Cases

  • Compiti semplici di regressione
  • Problemi di classificazione con dati tabellari
  • Blocchi costitutivi per architetture più profonde

Code Example

 1
 2
 3
 4
 5
 6
 7
 8
 9
10
11
12
13
14
import torch.nn as nn

class SimpleFFN(nn.Module):
    def __init__(self, input_size, hidden_size, output_size):
        super(SimpleFFN, self).__init__()
        self.fc1 = nn.Linear(input_size, hidden_size)
        self.relu = nn.ReLU()
        self.fc2 = nn.Linear(hidden_size, output_size)

    def forward(self, x):
        x = self.fc1(x)
        x = self.relu(x)
        x = self.fc2(x)
        return x