Skip to content

Defaults, ranges on irregular dates ​

match flagged ← All linear growth benchmarks

80% ranges from 1,000 simulated paths on the unevenly spaced history and its 48 forecast dates.

Input ​

benchmark/inputs/v1/map-irregular-medium.json: 192 history rows and 48 forecast rows.

Output ​

Largest difference: 0.11 (0.15% of the input's range).

Every forecast row from both libraries.

DateEffect ProphetPython ProphetDifference
2020-01-0112.383012.33540.048
2020-01-0212.879512.83710.042
2020-01-0313.045713.00620.039
2020-01-0413.503113.46850.035
2020-01-0513.837113.80820.029
2020-01-0614.138114.10300.035
2020-01-0714.339914.30490.035
2020-01-0915.327315.29700.030
2020-01-1015.493415.46610.027
2020-01-1115.950915.92840.023
2020-01-1216.284816.26810.017
2020-01-1316.585916.56290.023
2020-01-1416.787616.76480.023
2020-01-1517.278517.25520.023
2020-01-1717.941117.92600.015
2020-01-1818.398618.38830.010
2020-01-1918.732618.72800.0046
2020-01-2019.033619.02280.011
2020-01-2119.235419.22470.011
2020-01-2320.222820.21670.0061
2020-01-2420.388920.38580.0031
2020-01-2621.180321.18790.0075
2020-01-2721.481421.48270.0013
2020-01-2821.683121.68460.0015
2020-01-2922.174022.17490.00098
2020-01-3022.670522.67660.0061
2020-01-3122.836622.84570.0091
2020-02-0123.294123.30800.014
2020-02-0323.929123.94260.013
2020-02-0424.130924.14440.014
2020-02-0524.621724.63480.013
2020-02-0625.118325.13650.018
2020-02-0725.284425.30560.021
2020-02-0825.741925.76790.026
2020-02-0926.075826.10760.032
2020-02-1126.578626.60430.026
2020-02-1227.069527.09470.025
2020-02-1327.566027.59640.030
2020-02-1528.189628.22780.038
2020-02-1628.523628.56750.044
2020-02-1728.824628.86230.038
2020-02-1829.026429.06420.038
2020-02-2030.013830.05620.042
2020-02-2130.179930.22530.045
2020-02-2230.637430.68770.050
2020-02-2330.971331.02740.056
2020-02-2431.272431.32220.050
2020-02-2531.474131.52410.050
2020-02-2631.964932.01440.049
2020-02-2832.627632.68520.058
2020-02-2933.085133.14750.062
2020-03-0133.419133.48720.068
2020-03-0233.720133.78210.062
2020-03-0333.921833.98390.062
2020-03-0434.412734.47430.062
2020-03-0534.909334.97600.067
2020-03-0735.532935.60740.075
2020-03-0936.167936.24190.074
2020-03-1036.369636.44380.074
2020-03-1136.860436.93420.074
2020-03-1237.357037.43590.079
2020-03-1337.523137.60500.082
2020-03-1437.980638.05550.075
2020-03-1638.615538.66640.051
2020-03-1738.817138.85650.039
2020-03-1839.307939.33510.027
2020-03-1939.804539.82490.020
2020-03-2039.970539.98220.012
2020-03-2140.372740.37780.0051
2020-03-2240.651340.65070.00059
2020-03-2441.043441.01380.030
2020-03-2541.478941.43740.041
2020-03-2641.920141.87230.048
2020-03-2742.030941.97470.056
2020-03-2842.347142.29350.054
2020-03-2942.539842.48980.050
2020-03-3142.760042.69970.060
2020-04-0243.464943.40480.060
2020-04-0343.489743.43050.059
2020-04-0443.806043.74940.057
2020-04-0543.956843.90470.052
2020-04-0644.074844.01510.060
2020-04-0744.093444.03260.061
2020-04-0844.401244.33860.063
2020-04-1044.697744.64050.057
2020-04-1144.972144.91840.054
2020-04-1245.123045.07360.049
2020-04-1345.240945.18400.057
2020-04-1445.259645.20140.058
2020-04-1545.567345.50720.060
2020-04-1645.880845.82440.056
2020-04-1846.138346.08680.051
2020-04-1946.289146.24200.047
2020-04-2046.407146.35230.055
2020-04-2146.425746.36970.056
2020-04-2347.047046.99270.054
2020-04-2447.030046.97730.053
2020-04-2547.304447.25510.049
2020-04-2747.573247.52050.053
2020-04-2847.591947.53790.054
2020-04-2947.899647.84380.056
2020-04-3048.213148.16090.052
2020-05-0148.196248.14550.051
2020-05-0248.470648.42330.047
2020-05-0348.621448.57850.043
2020-05-0548.758048.70610.052
2020-05-0649.065849.01200.054
2020-05-0749.379349.32910.050
2020-05-0849.362349.31370.049
2020-05-0949.636749.59150.045
2020-05-1049.787649.74670.041
2020-05-1149.905649.85700.049
2020-05-1350.232050.18020.052
2020-05-1450.545550.49740.048
2020-05-1650.802950.75970.043
2020-05-1750.953850.91490.039
2020-05-1851.071851.02520.047
2020-05-1951.090451.04260.048
2020-05-2051.398251.34840.050
2020-05-2251.694851.65020.045
2020-05-2351.969251.92800.041
2020-05-2452.120152.08310.037
2020-05-2552.238152.19340.045
2020-05-2652.262852.22840.034
2020-05-2752.576652.55180.025
2020-05-2852.896152.88650.0096
2020-05-3053.165653.18400.018
2020-05-3153.322553.35670.034
2020-06-0153.446553.48460.038
2020-06-0253.541353.58660.045
2020-06-0353.925153.97700.052
2020-06-0454.314754.37870.064
2020-06-0554.373854.44790.074
2020-06-0855.145255.24500.10
2020-06-0955.239955.34690.11
2020-06-1055.734055.83400.10
2020-06-1156.233856.33250.099
2020-06-1256.403156.49840.095
2020-06-1356.863956.95740.094
2020-06-1457.201057.29390.093
2020-06-1657.710357.78410.074
2020-06-1758.271058.33410.063
2020-06-1858.837458.89530.058
2020-06-1959.073459.12400.051
2020-06-2059.600759.64580.045
2020-06-2160.004560.04510.041
2020-06-2260.375460.39950.024
2020-06-2461.228261.24670.018
2020-06-2561.804961.82580.021
2020-06-2662.051162.07230.021
2020-06-2762.588762.61210.023
2020-06-2863.002863.02930.027
2020-06-3063.665763.68090.015
2020-07-0164.236764.24870.012
2020-07-0365.059665.07440.015
2020-07-0465.597265.61410.017
2020-07-0566.011266.03130.020
2020-07-0666.392466.40360.011
2020-07-0766.674266.68290.0087
2020-07-0867.245167.25070.0056
2020-07-0967.821867.82980.0080
2020-07-1168.605668.61620.011
2020-07-1269.019769.03330.014
2020-07-1369.400869.40560.0048
2020-07-1469.682769.68490.0023
2020-07-1570.253670.25270.00086
2020-07-1670.830370.83190.0016
2020-07-1771.076571.07840.0019
2020-07-1972.028172.03540.0072
2020-07-2072.409372.40760.0017
2020-07-2172.691172.68700.0042
2020-07-2373.838773.83390.0049
2020-07-2474.085074.08050.0045
2020-07-2574.622674.62020.0023
2020-07-2675.036675.03740.00079
2020-07-2875.699675.68900.011
2020-07-2976.270576.25680.014
2020-07-3076.847276.83590.011
2020-07-3177.093477.08250.011
2020-08-0177.631077.62220.0088
2020-08-0278.045178.03940.0056
2020-08-0378.426278.41170.015
2020-08-0579.279079.25880.020
2020-08-0679.855779.83800.018
2020-08-0780.101980.08450.017
2020-08-0880.639580.62430.015
2020-08-0981.053581.04140.012
2020-08-1081.434781.41370.021
2020-08-1181.716581.69300.023
2020-08-1382.864182.84000.024
2020-08-1583.647983.62630.022
2020-08-1684.062084.04350.018
2020-08-1784.443184.41570.027
2020-08-1884.725084.69510.030
2020-08-1985.295985.26290.033
2020-08-2085.872685.84200.031
2020-08-2286.656486.62830.028
2020-08-2387.070487.04550.025
2020-08-2487.451687.41780.034
2020-08-2587.733487.69710.036
2020-08-2688.304488.26490.039
2020-08-2788.881088.84400.037
2020-08-2889.127389.09060.037
2020-08-3090.078990.04750.031
2020-08-3190.460090.41980.040
2020-09-0190.741990.69910.043
2020-09-0291.312891.26700.046
2020-09-0391.889591.84610.043
2020-09-0492.135792.09260.043
2020-09-0693.087393.04960.038
2020-09-0893.750393.70120.049
2020-09-0994.321394.26900.052
2020-09-1094.898094.84810.050
2020-09-1195.144295.09470.049
2020-09-1295.681895.63440.047
2020-09-1396.095896.05160.044
2020-09-1496.477096.42390.053
2020-09-1697.329797.27100.059
2020-09-1797.906497.85010.056
2020-09-1898.152698.09670.056
2020-09-1998.690298.63650.054
2020-09-2099.104399.05360.051
2020-09-2199.485499.42590.060
2020-09-2299.767399.70520.062
2020-09-24100.9149100.85220.063
2020-09-25101.1611101.09870.062
2020-09-26101.6987101.63850.060
2020-09-27102.1127102.05570.057
2020-09-29102.7757102.70730.068
2020-09-30103.3467103.27510.072
2020-10-01103.9233103.85420.069
2020-10-03104.7071104.64050.067
2020-10-04105.1212105.05770.063
2020-10-05105.5023105.43000.072
2020-10-06105.7842105.70930.075
2020-10-07106.3551106.27710.078
2020-10-08106.9318106.85620.076
2020-10-09107.1780107.10280.075
2020-10-11108.1296108.05970.070
2020-10-12108.5108108.43200.079

Internal fit differences ​

The forecasts match, so this case passes. Both libraries search for the best-fitting parameters and stop when they are close enough. On this input they stopped at slightly different points, so these internal numbers differ by more than the threshold where we take a closer look.

CheckEffect ProphetPython ProphetThreshold
Fitting objective (lower is a better fit)-745.4706-744.87590.01

Timing ​

Median of all measured repetitions.

StepEffect ProphetPython ProphetEffect Prophet is
Convert input rows49 µs609 µs12× faster
Save model to JSON19 µs527 µs27× faster
Load model from JSON189 µs2.31 ms12× faster
Simulate uncertainty11.9 ms158 ms13× faster
First simulation in a new process197 ms1.73 s8.7× faster
Load and simulate in a new process175 ms1.68 s9.6× faster

Settings ​

The case declaration both libraries ran.

json
{
  "kind": "map",
  "comparison": {
    "kind": "equivalent-objective",
    "evidenceId": "linear-output-first-v4"
  },
  "fitRequest": "growth-only",
  "configuration": {
    "growth": "linear",
    "scaling": "absmax",
    "seasonalityMode": "additive",
    "holidaysMode": "additive",
    "changepoints": {
      "mode": "auto",
      "count": 25,
      "range": 0.8
    },
    "changepointPriorScale": 0.05,
    "seasonalities": [
      {
        "name": "weekly",
        "periodDays": 7,
        "fourierOrder": 3,
        "priorScale": 10
      }
    ],
    "events": [],
    "regressors": []
  },
  "pythonOptimizer": {
    "algorithm": "Auto",
    "maxIterations": 10000,
    "newtonFallback": true
  },
  "uncertainty": {
    "seed": 19,
    "samples": 1000,
    "intervalWidth": 0.8,
    "output": "intervals",
    "algorithm": "scalar-continuous-time",
    "evidence": "docs/validation/uncertainty.md#evidence-classes",
    "samplerMemoryLimitBytes": 67108864
  }
}

Inspired by Prophet from Meta. Not affiliated with Meta.