Spazio di Hilbert a kernel riproducente (RKHS)

Indice dei contenuti

    Uno spazio di Hilbert a kernel riproducente, indicato spesso con RKHS (reproducing kernel Hilbert space), è uno spazio di Hilbert formato da funzioni in cui valutare una funzione in un punto è un’operazione continua. Questa continuità permette di rappresentare ogni valutazione tramite un kernel.

    Se \mathcal H è uno spazio di funzioni su un insieme S, la proprietà chiave è che per ogni x\in S esiste una funzione K_x\in\mathcal H tale che

    f(x)=\langle f,K_x\rangle_{\mathcal H} \qquad \text{per ogni }f\in\mathcal H.

    La funzione K:S\times S\to\mathbb C definita da K_x(y)=K(y,x) è il kernel riproducente dello spazio.

    Proprietà riproducente

    La parola “riproducente” indica che il valore puntuale f(x) viene riprodotto da un prodotto scalare nello spazio di funzioni.

    ConcettoFormulaRuolo
    Valutazione puntuale\displaystyle L_x(f)=f(x)Trasforma una funzione in un numero.
    Rappresentante di Riesz\displaystyle K_x\in\mathcal HRappresenta il funzionale di valutazione.
    Proprietà riproducente\displaystyle f(x)=\langle f,K_x\rangle_{\mathcal H}Recupera il valore della funzione con un prodotto scalare.
    Kernel\displaystyle K(x,y)=\langle K_y,K_x\rangle_{\mathcal H}Codifica la geometria dello spazio.

    La convenzione sul lato complesso del prodotto scalare può cambiare tra testi diversi. Il contenuto matematico resta lo stesso: il kernel rappresenta i funzionali di valutazione e ricostruisce i valori puntuali delle funzioni.

    Kernel positivo-definito

    Ogni kernel riproducente è una funzione positiva-definita. Infatti, per punti x_1,\ldots,x_n\in S e coefficienti c_1,\ldots,c_n,

    \sum_{j=1}^n\sum_{k=1}^n c_j\overline{c_k}\,K(x_j,x_k) = \left\lVert \sum_{j=1}^n c_jK_{x_j} \right\rVert_{\mathcal H}^2 \ge0.

    Il risultato inverso è altrettanto importante: ogni kernel positivo-definito genera un unico RKHS, a meno di isometrie naturali. Questa corrispondenza è il motivo per cui i metodi kernel possono lavorare con prodotti scalari impliciti senza costruire esplicitamente lo spazio delle feature.

    DirezioneIpotesiConclusione
    Da RKHS a kernel\displaystyle \mathcal H ha valutazioni puntuali continueIl kernel riproducente è positivo-definito.
    Da kernel a RKHS\displaystyle K è positivo-definitoEsiste un RKHS con kernel \displaystyle K.
    Geometria implicita\displaystyle K(x,y)=\langle K_y,K_x\rangle_{\mathcal H}Il kernel agisce come prodotto scalare tra feature.

    Feature map e kernel trick

    Un modo operativo di leggere un RKHS è attraverso la mappa di feature

    \Phi:S\to\mathcal H, \qquad \Phi(x)=K_x.

    Allora il kernel è un prodotto scalare implicito:

    K(x,y)=\langle \Phi(y),\Phi(x)\rangle_{\mathcal H}.

    Nelle support vector machine, questa identità permette di sostituire prodotti scalari tra vettori trasformati con valori del kernel. È il kernel trick: si lavora in uno spazio di funzioni potenzialmente infinito-dimensionale senza rappresentare direttamente tutte le coordinate.

    OggettoFormulaInterpretazione
    Feature implicita\displaystyle \Phi(x)=K_xPunto del dominio visto come funzione nello spazio RKHS.
    Prodotto scalare implicito\displaystyle K(x,y)=\langle \Phi(y),\Phi(x)\rangle_{\mathcal H}Similarità calcolata senza coordinate esplicite.
    Modello lineare nello spazio feature\displaystyle f(x)=\langle w,K_x\rangle_{\mathcal H}Diventa una funzione non lineare nel dominio originale.
    Regolarizzazione\displaystyle \lVert f\rVert_{\mathcal H}^2Penalizza complessità e oscillazioni nello spazio indotto dal kernel.

    Esempi di kernel

    KernelFormulaUso tipico
    Lineare\displaystyle K(x,y)=x^TyModelli lineari e margini in spazi vettoriali finiti.
    Polinomiale\displaystyle K(x,y)=(x^Ty+c)^pInterazioni tra feature fino al grado \displaystyle p.
    Gaussiano RBF\displaystyle K(x,y)=\exp(-\gamma\lVert x-y\rVert^2)Frontiere lisce e non lineari.
    Covarianza gaussiana\displaystyle K(s,t)=\operatorname{Cov}(X_s,X_t)Processi gaussiani e campi aleatori.

    Questi kernel non hanno tutti lo stesso RKHS: cambiare kernel significa cambiare geometria, nozione di regolarità e classe di funzioni preferite dal modello.

    Schema operativo

    PassoControlloEsito
    1Scegliere un kernel \displaystyle KDefinisce la similarità tra punti.
    2Verificare positiva-definitezzaGarantisce che esista un RKHS associato.
    3Usare \displaystyle K(x,y) al posto di un prodotto scalareEvita di costruire feature esplicite.
    4Regolarizzare con \displaystyle \lVert f\rVert_{\mathcal H}^2Controlla la complessità della funzione stimata.
    5Interpretare il modello nel dominio originaleUna regola lineare in RKHS può essere non lineare nei dati.

    Errori comuni

    • Pensare che ogni funzione di similarità sia un kernel valido: per generare un RKHS serve positiva-definitezza.
    • Confondere il kernel informatico con il kernel matematico: qui “kernel” significa funzione di similarità o nucleo integrale, non nucleo di sistema operativo.
    • Credere che lo spazio feature sia sempre finito-dimensionale: molti RKHS, come quelli associati al kernel RBF, sono infinito-dimensionali.
    • Separare troppo kernel e regolarizzazione: la norma RKHS dipende dal kernel e determina quali funzioni sono considerate semplici.

    Vedi anche: mappa di feature, kernel trick, Random Fourier features, funzione positiva-definita, spazi di Hilbert, support vector machine, processo gaussiano, teorema di Bochner.

    Ultimo aggiornamento: