- Several bugfixes in benchmarks methods and optimizations
This commit is contained in:
parent
692503704e
commit
38a1410b16
@ -11,7 +11,7 @@ class ARIMA(fts.FTS):
|
||||
Façade for statsmodels.tsa.arima_model
|
||||
"""
|
||||
def __init__(self, name, **kwargs):
|
||||
super(ARIMA, self).__init__(1, "ARIMA")
|
||||
super(ARIMA, self).__init__(1, "ARIMA"+name)
|
||||
self.name = "ARIMA"
|
||||
self.detail = "Auto Regressive Integrated Moving Average"
|
||||
self.is_high_order = True
|
||||
|
@ -8,6 +8,7 @@ python3 /usr/local/bin/dispynode.py -i [local IP] -d
|
||||
|
||||
import datetime
|
||||
import time
|
||||
from copy import deepcopy
|
||||
|
||||
import dispy
|
||||
import dispy.httpd
|
||||
@ -136,8 +137,9 @@ def point_sliding_window(data, windowsize, train=0.8, models=None, partitioners=
|
||||
pool.append(mfts)
|
||||
|
||||
for count, model in enumerate(benchmark_models, start=0):
|
||||
mfts = model("")
|
||||
mfts.order = benchmark_models_parameters[count]
|
||||
par = benchmark_models_parameters[count]
|
||||
mfts = model(str(par if par is not None else ""))
|
||||
mfts.order = par
|
||||
pool.append(mfts)
|
||||
|
||||
experiments = 0
|
||||
|
@ -7,7 +7,7 @@ from pyFTS import fts
|
||||
class Naive(fts.FTS):
|
||||
"""Naïve Forecasting method"""
|
||||
def __init__(self, name, **kwargs):
|
||||
super(Naive, self).__init__(1, "Naive " + name)
|
||||
super(Naive, self).__init__(1, "Naive")
|
||||
self.name = "Naïve Model"
|
||||
self.detail = "Naïve Model"
|
||||
self.benchmark_only = True
|
||||
|
@ -10,7 +10,7 @@ from pyFTS import fts
|
||||
class QuantileRegression(fts.FTS):
|
||||
"""Façade for statsmodels.regression.quantile_regression"""
|
||||
def __init__(self, name, **kwargs):
|
||||
super(QuantileRegression, self).__init__(1, "QR")
|
||||
super(QuantileRegression, self).__init__(1, "QR"+name)
|
||||
self.name = "QR"
|
||||
self.detail = "Quantile Regression"
|
||||
self.is_high_order = True
|
||||
@ -43,8 +43,11 @@ class QuantileRegression(fts.FTS):
|
||||
self.upper_qt = [uqt.params[k] for k in uqt.params.keys()]
|
||||
self.lower_qt = [lqt.params[k] for k in lqt.params.keys()]
|
||||
|
||||
self.shortname = "QAR(" + str(self.order) + ")"
|
||||
|
||||
def linearmodel(self,data,params):
|
||||
return params[0] + sum([ data[k] * params[k+1] for k in np.arange(0, self.order) ])
|
||||
#return params[0] + sum([ data[k] * params[k+1] for k in np.arange(0, self.order) ])
|
||||
return sum([data[k] * params[k] for k in np.arange(0, self.order)])
|
||||
|
||||
def forecast(self, data, **kwargs):
|
||||
ndata = np.array(self.doTransformations(data))
|
||||
|
@ -57,15 +57,15 @@ from statsmodels.tsa.tsatools import lagmat
|
||||
from pyFTS.benchmarks import distributed_benchmarks as bchmk
|
||||
#from pyFTS.benchmarks import parallel_benchmarks as bchmk
|
||||
from pyFTS.benchmarks import Util
|
||||
#from pyFTS.benchmarks import arima
|
||||
from pyFTS.benchmarks import arima, quantreg
|
||||
|
||||
#Util.cast_dataframe_to_sintetic_point("experiments/taiex_point_analitic.csv","experiments/taiex_point_sintetic.csv",11)
|
||||
|
||||
#Util.plot_dataframe_point("experiments/taiex_point_sintetic.csv","experiments/taiex_point_analitic.csv",11)
|
||||
|
||||
#tmp = arima.ARIMA("")
|
||||
#tmp.train(taiex[:1600],None,parameters=(2,0,1))
|
||||
#teste = tmp.forecast(taiex[1598:1601])
|
||||
#tmp.train(taiex[:1600],(2,1,1))
|
||||
#teste = tmp.forecast(taiex[1600:2000])
|
||||
|
||||
#print(teste)
|
||||
|
||||
|
Loading…
Reference in New Issue
Block a user