[R-sig-Geo] Parameter tuning of the bfastlite function

Roger Bivand Roger@B|v@nd @end|ng |rom nhh@no
Fri Sep 27 09:47:12 CEST 2024


Could I suggest waiting until https://github.com/bfast2/bfast/issues/113 which contains the same content has been attended to? Alternatively link to the list archives in the github issue to ensure that any responses to one channel do not get overlooked on the other channel (I've linked for now)? Emailing directly or github pinging the package developers may also help if this is urgent. Also consider reaching out to authors/maintainers of packages using bfast https://cran.r-project.org/package=bfast, and look (I'm sure you already have looked) among the many articles citing the underlying work. The package description mentions a forthcoming paper on BFAST Lite - this seems to be https://doi.org/10.3390/rs13163308. This isn't my field, but I think that bfast isn't being developed actively, and you may need to search broadly to try to resolve your issues, so looking at how other users handle this may help.

Hope this helps,

 Roger

--
Roger Bivand
Emeritus Professor
Norwegian School of Economics
Postboks 3490 Ytre Sandviken, 5045 Bergen, Norway
Roger.Bivand using nhh.no

________________________________________
From: R-sig-Geo <r-sig-geo-bounces using r-project.org> on behalf of Nikolaos Tziokas <nikos.tziokas using gmail.com>
Sent: 27 September 2024 02:19
To: r-sig-geo
Subject: [R-sig-Geo] Parameter tuning of the bfastlite function

[You don't often get email from nikos.tziokas using gmail.com. Learn why this is important at https://aka.ms/LearnAboutSenderIdentification ]

I am using the bfastlite() function from the BFAST package to run a
time-series analysis. From the author's paper (BFAST Lite: A Lightweight
Break Detection Method for Time Series Analysis) (table 2), I quote:

"Needs parameter tuning to optimise performance, does not differentiate
between breaks in seasonality and trend"

So far, I was fine-tuning the model manually, that is, I was changing the
parameters one by one, which is time-consuming. Does someone have a better
solution regarding the fine-tuning of the model?

To see which parameters of the model achieve the best results, I was
checking the dates in the detected breakpoints (visual inspection). I am
not sure if that method (visual inspection) is appropriate.

I apologize if this question sound a bit vague, so let me expand a little
bit. After running the bfastlite() using the default parameters (i.e., bp =
bfastlite(datats)), we get a result. Is there a way to measure (something
like rmse, or r-squared) how well the algorithm modeled the ts? What I
basically mean is that if there is an index equivalent to let's say rmse
when someone is running a linear regression. For example, what if the
parameter breaks with BIC instead of LWZ detects more accurate the
breakpoints (by visually inspecting the detected breakpoints)? Apart from
the visual inspection, shouldn't be some other way to measure the
performance of the model?

Based on the above, is there a more efficient way to optimize the
parameters of the model (based on some metric)? What do I mean by
optimizing the parameters? I think with an example I can explain it better.
When someone is tuning a random forest model, he/she can perform a full
grid search to find the optimal parameters of the model (mtry, number of
trees, etc) by searching all the possible combinations and for each
combination he/she checks the rmse (or mse, r-squared). Is this what the
authors of the paper meant when they said "Needs parameter tuning to
optimise performance"? And if so, how did they do it?

library(bfast)

plot(simts) # stl object containing simulated NDVI time series
datats <- ts(rowSums(simts$time.series))

# sum of all the components (season,abrupt,remainder)
tsp(datats) <- tsp(simts$time.series) # assign correct time series
attributes
plot(datats)

# Detect breaks. default parameters
bp = bfastlite(datats)
plot(bp)

# optimized model ??????
bp_opt <- bfastlite()

R 4.4.1, bfast 1.6.1, Windows 11.

        [[alternative HTML version deleted]]

_______________________________________________
R-sig-Geo mailing list
R-sig-Geo using r-project.org
https://stat.ethz.ch/mailman/listinfo/r-sig-geo



More information about the R-sig-Geo mailing list