Sto implementando il metodo Naive Bayes con distribuzione gaussiana.
Il problema che ho è che la varianza usata sulla curva gaussiana (calcolata da un set di allenamento) è VERAMENTE piccola. Sono nell'ordine di e-07. Ciò significa l'intera equazione,
(1/:math.sqrt(2*:math.pi*:math.sqrt(variance))) *
:math.exp(-0.5*(:math.pow(elem - mean, 2) / variance))
produce valori molto alti (come 500
o anche più). Questo diventa un problema in seguito, quando moltiplicherò ogni probabilità p (x | C) insieme (è un vettore di 256 caratteristiche).
Ho sentito che è possibile usare i logaritmi per evitare questo tipo di numeri. Ho cercato su google ma non ho trovato nulla relativo all'argomento. Qualcuno lo sa?