Implementing a Gaussian Naive Bayes Classifier in Python
antoniomallia.it
antoniomallia.it
This feature is then used when transforming probabilities to log-probabilities in one go without any mention which would make it particularly confusing for beginners.
I would recommend decomposing p(x|C) before applying the log transform for clarity.
the probability of any x value in a continuous range is infinitely small. Is it really using the probability of a value "as extreme or more" as x?
pdf = slope of the cdf. The value of the pdf at a given point is not a probability, it's the instantaneous rate of change of a probability. You need to integrate the pdf over a range to get a probability.
You could take the area under the pdf (i.e., integrate) for a window around a given x or use the area under the tail of the pdf past x (i.e., p-value).
2^-2 * (1 + 3823195*2^-23) = 0.3639400899410247802734375
The numbers directly before and after it are: 2^-2 * (1 + 3823194*2^-23) = 0.363940060138702392578125
2^-2 * (1 + 3823196*2^-23) = 0.36394011974334716796875
Giving a range of size 2.980232238769531250 * 10^-8 in which all numbers compare equal to 0.3639401 in IEEE754 32-bit floating point. And since we're looking at a domain of [0, 1], that's also immediately our probability.(I'm fully aware this isn't what you were asking, but I found it fun either way)
https://en.wikipedia.org/wiki/Joint_probability_distribution...
p-values are unrelated to this but are computed by looking at the cumulative distribution function (the integral of the density).