Time Series subcommand
Using this subcommand you can generate all the
resources leading to a time series and its forecasts.
The time series is a supervised learning model that works on
an ordered sequence of data to extract the patterns needed to make
forecasts. The bigmler time-series subcommand
will follow the steps to generate
time series and predict the forecasts for every numeric field in
the original dataset that has been set as objective field. As
shown in the bigmler command section, the simplest call is
bigmler time-series --train data/grades.csv
This command will upload the data in the data/grades.csv file and
generate
the corresponding source, dataset and time series objects in BigML.
You
can use any of the intermediate generated objects to produce new
time series. For instance, you
could set a subgroup of the numeric fields in the dataset to be used
as objective fields using the --objectives option.
bigmler time-series --dataset dataset/53b1f71437203f5ac30004ed \
--objectives "Assignment,Final"
its value is expected to be a comma-separated list of fields.
Similarly to the models and datasets, the generated clusters can be shared
using the --shared option, e.g.
bigmler time-series --source source/53b1f71437203f5ac30004e0 \
--shared
will generate a secret link for both the created dataset and time series that can be used to share the resource selectively.
As models were used to generate predictions (class names in classification problems and an estimated number for regressions), time series can be used to generate forecasts, that is, to predict the value of each objective field up till the user-given horizon. The command
bigmler time-series --time-series timeseries/58437a277e0a8d38ec028a5f \
--horizon 10
would produce a file forecast_000001.csv with ten rows, one per point, and
as many columns as ETS models the time series contains.
When the command is executed, the time series information is downloaded to your local computer and the forecasts are computed locally, with no more latencies involved. Just in case you prefer to use BigML to compute the forecasts remotely, you can do so too
bigmler time-series --time-series timeseries/58437a277e0a8d38ec028a5f \
--horizon 10 --remote
would create a remote forecast with the specified horizon. You can also
specify more complex inputs for the forecast. For instance, you can set a
different horizon to each objective field and you can give some criteria
to select the models used in the forecast. All of this can be done using
the --test option pointing to a JSON file that should contain the
input to be used in the forecast as described in the
API documentation. As an example,
let’s set a horizon of 5 points for the Final field and select the
first model in the time series array of ETS models, and also forecast 7
points for the Assignment field using the model with less aic (the one
used by default). The command call should then be:
bigmler time-series --time-series timeseries/58437a277e0a8d38ec028a5f \
--test test.json
and the test.json file should contain the following JSON:
{"Final": {"horizon": 5, "ets_models": {"indices": [0]}},
"Assignment": {"horizon": 7}}
Time Series Subcommand Options
|
BigML time series Id |
|
Path to a file containing timeseries/ids One time series per line (e.g., timeseries/4f824203ce80051) |
|
No time series will be generated. |
|
Comma-separated list of fields that will be used in the time series as objective fields |
|
Path to a JSON file containing attributes (any of the updatable attributes described in the developers section ) to be used in the time series creation call |
|
Path to a JSON file containing the time series info |
|
When used, all the numeric fields in the dataset are considered objective fields |
|
The value used by default if a numeric field is missing. Spline interpolation is used by default and other options are “mean”, “median”, “minimum”, “maximum” and “zero” |
|
Type of error considered: 1 - Additive, 2 - Multiplicative |
|
Expected period |
|
Type of seasonality: 0 - None, 1 - Additive, 2 - Multiplicative |
|
Type of trend: 0 - None, 1 - Additive, 2 - Multiplicative |
|
Comma-separated pair of values that set the range limits |
|
When set damping is used in trend |
|
When set, the time series default forecast is produced |
|
Set to an integer, is the number of points in the forecast |
|
Time starting point coordinate |
|
Time ending point coordinate |
|
Unit for the time interval. The options are described in the API documentation |
|
Time interval between two rows |