def get_data(self): more=['name','length','nsamples'] d=dict.fromkeys(data.get_kwargs(ts[0]).keys())#,[]) <- python gotcha! for ak in d: d[ak]=[] #<-soln for am in more: d[am]=[] for s in ts: kw=data.get_kwargs(s) kw[more[0]]=s kw[more[1]]=data.get_series(s).shape[0] kw[more[2]]=len(data.get(s)) for ak in kw: d[ak].append(kw[ak]) return pd.DataFrame.from_dict(d)
def errs(ts_id, win, **kwargs): ts = data.get_series(ts_id)[:, 0] tsdf = pd.Series(ts) bn = get_best_net(ts_id) mse = lambda win: np.mean( bn.predict(np.array(win, dtype='float32')[:, None, None]) - win)**2 if win == 0: #no window. just return all errors at once pr = (bn.predict(ts[:, None, None])[:, 0, 0] - ts)**2 return pr return \ rolling_apply(tsdf ,win ,mse ,center=True )
def get_data(self): more = ['name', 'length', 'nsamples'] d = dict.fromkeys(data.get_kwargs( ts[0]).keys()) #,[]) <- python gotcha! for ak in d: d[ak] = [] #<-soln for am in more: d[am] = [] for s in ts: kw = data.get_kwargs(s) kw[more[0]] = s kw[more[1]] = data.get_series(s).shape[0] kw[more[2]] = len(data.get(s)) for ak in kw: d[ak].append(kw[ak]) return pd.DataFrame.from_dict(d)
def errs(ts_id,win,**kwargs): ts=data.get_series(ts_id)[:,0] tsdf=pd.Series(ts) bn=get_best_net(ts_id) mse=lambda win:np.mean( bn.predict(np.array(win,dtype='float32')[:,None,None]) -win )**2 if win==0: #no window. just return all errors at once pr= (bn.predict(ts[:,None,None])[:,0,0]-ts)**2; return pr return \ rolling_apply(tsdf ,win ,mse ,center=True )
def env(ts_id,**kwargs): """use dbts_id='test' kwargs to test things""" global gts_id gts_id=kwargs.setdefault('dbts_id',ts_id) global trn global vld global dim_out global dim_in global noise ts=data.get(ts_id) tl=int(.75*len(ts)) #potential <-param here trn=data.list_call(ts[:tl]) vld=data.list_call(ts[tl:]) dim_out=dim_in=data.dim(ts_id) noise=np.std(data.get_series(ts_id))*.75 #<- critical param
def env(ts_id, **kwargs): """use dbts_id='test' kwargs to test things""" global gts_id gts_id = kwargs.setdefault('dbts_id', ts_id) global trn global vld global dim_out global dim_in global noise ts = data.get(ts_id) tl = int(.75 * len(ts)) #potential <-param here trn = data.list_call(ts[:tl]) vld = data.list_call(ts[tl:]) dim_out = dim_in = data.dim(ts_id) noise = np.std(data.get_series(ts_id)) * .75 #<- critical param
def data(self): er=[analysis.errs(self.name,awin) for awin in self.wins ] tsd=data.get_series(self.name) return tsd,er
def data(self): er = [analysis.errs(self.name, awin) for awin in self.wins] tsd = data.get_series(self.name) return tsd, er