Free cookie consent management tool by TermsFeed Policy Generator

Ignore:
Timestamp:
09/10/12 17:13:46 (12 years ago)
Author:
gkronber
Message:

#1902 implemented LS Gaussian Process classification

File:
1 edited

Legend:

Unmodified
Added
Removed
  • trunk/sources/HeuristicLab.Problems.DataAnalysis/3.4/Implementation/Classification/ThresholdCalculators/NormalDistributionCutPointsThresholdCalculator.cs

    r7259 r8623  
    107107        double maxDensityClassValue = -1;
    108108        foreach (var classValue in originalClasses) {
    109           double density = NormalDensity(m, classMean[classValue], classStdDev[classValue]);
     109          double density = LogNormalDensity(m, classMean[classValue], classStdDev[classValue]);
    110110          if (density > maxDensity) {
    111111            maxDensity = density;
     
    139139    }
    140140
    141     private static double NormalDensity(double x, double mu, double sigma) {
    142       if (sigma.IsAlmost(0.0)) {
    143         if (x.IsAlmost(mu)) return 1.0; else return 0.0;
    144       } else {
    145         return (1.0 / Math.Sqrt(2.0 * Math.PI * sigma * sigma)) * Math.Exp(-((x - mu) * (x - mu)) / (2.0 * sigma * sigma));
    146       }
     141    private static double LogNormalDensity(double x, double mu, double sigma) {
     142      return -0.5 * Math.Log(2.0 * Math.PI * sigma * sigma) - ((x - mu) * (x - mu)) / (2.0 * sigma * sigma);
    147143    }
    148144
Note: See TracChangeset for help on using the changeset viewer.