Forecasting U.S. Vehicle Sales

Author

John M Guarini

Published

May 1, 2026

1 Abstract

Proper vehicle sales prediction is vital for vehicle manufacturers and policymakers who need to navigate a fluctuating economic landscape. This article presents the evaluation of the monthly U.S. total vehicle sales data (FRED: TOTALSA) from 2010 onwards using classical time series forecasting techniques. The data shows significant seasonality effects, structural breaks caused by the COVID-19 pandemic, and a complex recovery path. An 80-20 train-test split is employed for performance evaluation. The performance is compared among the Naïve Method, the Seasonal Naïve Method (SNAIVE), the Exponential Smoothing Method (ETS), and a time series linear regression model with a nonlinear trend component using a spline approach. The performance is evaluated using the RMSE, MAE, and MAPE metrics. The seasonal persistence methods perform exceptionally well; however, the addition of a nonlinear trend component improves the performance of the linear regression model. The results obtained prove that the MLP neural network is characterized by the lowest errors of prediction with regards to the RMSE, MAE, and MAPE indicators, followed by the random forest model.

2 Introduction

The automobile industry can be considered one of the main determinants of macroeconomic behavior, which depends on consumer sentiment, production capacity, and consumption behaviors of households. Sales of vehicles per month depend on cyclical processes, disruptions in supply chains, and unexpected events like the spread of the coronavirus disease. It is thus imperative to forecast accurately the number of vehicles sold per month to plan adequately for manufacturing companies and policy makers.

The paper focuses on the time-series analysis of the number of monthly vehicle sales in the United States, using data provided by the FRED database. In particular, the paper uses the data series labeled TOTALSA, starting from 2010.There exist many traditional methods for time series forecasting, including naïve techniques and exponential smoothing approaches, which have been used extensively in practice owing to their effectiveness and ease of implementation. With the emergence of new techniques from machine learning and deep learning areas, much more flexible frameworks that can detect nonlinear patterns and dependencies have become popular. At the same time, there is still no agreement about their superiority over conventional techniques for macroeconomic forecasts.

This study bridges the gap by carrying out a comparative analysis between traditional statistical modeling approaches, machine learning techniques, and ensembling methodologies on the prediction of car sales in America. Efficiency of the models developed in this study will be evaluated based on an 80-20 training-test sample size ratio together with RMSE, MAE, and MAPE metrics.

3 Literature Review

Exponential Smoothing methods have always been important in forecasting time series data. Simple and Holt’s methods of Exponential Smoothing are dealt with in depth in Gardner (1985) ((gardner1985?)) . Apart from demonstrating the effectiveness of Exponential Smoothing methods in dealing with levels and trends, the current paper shows that Information Criteria are crucial when selecting a model in Exponential Smoothing.

Larger competitions, for example, the M3 competition ((makridakis2000?)), M4 competition ((makridakis2018?)), and very recently the M5 competition ((makridakis2022?)), have illustrated that simpler models can compete well against their more complicated counterparts. Such observations reiterate the need for empirical verification of results, an aspect which Hyndman and Athanasopoulos (Hyndman and Athanasopoulos (2021)) stress on as well.

Over the last few years, machine learning algorithms have become increasingly popular for time series prediction tasks. Random Forests algorithm ((breiman2001?)) and Gradient Boosting algorithms, e.g., XGBoost ((chen2016?) ), can detect nonlinearities and interactions without imposing strong requirements of stationarity on the input data. Such models show high accuracy in different forecasting tasks, especially when used in conjunction with feature engineering like lags and rolling statistics.

Using deep learning techniques like Long Short Term Memory (LSTM) networks ((hochreiter1997?)), more possibilities have been generated with regards to making forecasts because of their capability of modeling interactions between variables at different time periods. It is clear from here that the LSTM neural network performs effectively with respect to long-term dependency, despite the fact that it can sometimes be affected by the volume of the data used. Another strategy that could be considered is combining traditional statistical models with neural networks ((zhang2003?)).

Ensemble forecasting is another area that has received attention from researchers to enhance accuracy and robustness of forecasts. Wang ((wang2023?)) offer a detailed overview of forecast combination techniques, noting that using multiple models may lower variance and increase stability of forecasts. Empirical results indicate that an ensemble approach tends to perform better than single models especially under structural breaks.

However, the effectiveness of machine learning and deep learning models in comparison to classical statistical models in macroeconomic forecasting remains inconclusive. According to many studies, advanced models might be more flexible; however, simple models prove efficient enough, mainly owing to their better interpretability and robustness along with smaller requirements for data inputs.

The present study is significant in the existing literature as it compares different approaches such as time series models, machine learning methods, and ensemble methods to forecast vehicle sales in the United States. This paper is based on the assumption that incorporating structural breaks and nonlinear trends may result in more accurate forecasts.

4 Data Description

The data set includes the total number of vehicle sales in the U.S. every month (FRED series TOTALSA) measured in millions of units. The data sample range is from January 2010 to the latest available data point. The data set is highly seasonal, with a clear structural break in 2020 due to the COVID-19 pandemic, followed by changes in volatility patterns due to supply chain disruptions.

4.1 Data Preparation

us_cars <- us_cars_raw |>
  rename(sales = price) |>
  mutate(date = yearmonth(date)) |>
  as_tsibble(index = date) |>
  filter(date >= yearmonth("2010 Jan"))
regs_raw <- readRDS("/Users/johnguarini/regs_raw.rds")
price_raw <- readRDS("/Users/johnguarini/price_raw.rds")

regs_ts <- regs_raw |>
  transmute(date = yearmonth(date), registrations = price) |>
  as_tsibble(index = date) |>
  filter(date >= yearmonth("2010 Jan"))

price_ts <- price_raw |>
  transmute(date = yearmonth(date), price_index = price) |>
  as_tsibble(index = date) |>
  filter(date >= yearmonth("2010 Jan"))

cars_all <- us_cars |>
  left_join(regs_ts, by = "date") |>
  left_join(price_ts, by = "date")
cars_ml <- cars_all |>
  as_tibble() |>
  arrange(date) |>
  mutate(
    month = factor(month(date)),
    lag_1 = lag(sales, 1),
    lag_3 = lag(sales, 3),
    lag_6 = lag(sales, 6),
    lag_12 = lag(sales, 12),
    roll_3 = slider::slide_dbl(sales, mean, .before = 2, .complete = TRUE),
    roll_6 = slider::slide_dbl(sales, mean, .before = 5, .complete = TRUE)
  ) |>
  drop_na()

4.2 Plot

4.3 Plot (A): Sales vs Registration

As can be seen in Sales vs. Regression, the series are normalized to a baseline of 100 in the first observation to facilitate a comparison of their relative movements over time. Because vehicle sales and registrations are recorded in differing units, normalizing these series makes it easier to understand their proportional movements instead of absolute values. As can also be observed in Sales vs. Regression, both series start from the same point since they are normalized to their respective first observation values. Over time, it is also observable that the registrations series declines faster compared to the sales series since it is experiencing a larger proportional decline compared to its first value. The significant drop in 2020 is also a result of the structural impact of the COVID-19 pandemic, which temporarily affected vehicle production and demand. Only up to October 2023 is considered in the graph since this is when the FRED series on vehicle registrations is available, while the vehicle sales series extends beyond this point.

4.4 Plot (B): Average Price (Index)

4.5 Train/Test (80%/20%)

train <- us_cars |>
  filter(date <= yearmonth("2021 Dec"))

test <- us_cars |>
  filter(date > yearmonth("2021 Dec"))

h <- nrow(test)

4.6 Fitting ETS Modeling

models <- train |>
  model(
    NAIVE = NAIVE(sales),
    SNAIVE = SNAIVE(sales),
    ETS = ETS(sales),
    TSLM_SPLINE = TSLM(sales ~ ns(trend(), df = 3) + season())
  )

forecasts <- models |> forecast(h = h)

4.7 Machine Learning and Neural Network Models

ml_train <- cars_ml |>
  filter(date <= yearmonth("2021 Dec"))

ml_test <- cars_ml |>
  filter(date > yearmonth("2021 Dec"))

# Random Forest model
rf_model <- randomForest(
  sales ~ lag_1 + lag_3 + lag_6 + lag_12 + roll_3 + roll_6 +
    month + registrations + price_index,
  data = ml_train,
  ntree = 500,
  importance = TRUE
)

rf_pred <- predict(rf_model, newdata = ml_test)

# Scaling for MLP
scale_vars <- c(
  "sales", "lag_1", "lag_3", "lag_6", "lag_12",
  "roll_3", "roll_6", "registrations", "price_index"
)

train_means <- sapply(ml_train[scale_vars], mean, na.rm = TRUE)
train_sds <- sapply(ml_train[scale_vars], sd, na.rm = TRUE)

ml_train_scaled <- ml_train
ml_test_scaled <- ml_test

ml_train_scaled[scale_vars] <- scale(ml_train[scale_vars],
                                     center = train_means,
                                     scale = train_sds)

ml_test_scaled[scale_vars] <- scale(ml_test[scale_vars],
                                    center = train_means,
                                    scale = train_sds)

# MLP neural network model
mlp_model <- nnet(
  sales ~ lag_1 + lag_3 + lag_6 + lag_12 + roll_3 + roll_6 +
    month + registrations + price_index,
  data = ml_train_scaled,
  size = 10,
  linout = TRUE,
  decay = 0.01,
  trace = FALSE,
  maxit = 2000
)

# MLP predictions are scaled, so convert them back to original sales units
mlp_pred_scaled <- predict(mlp_model, newdata = ml_test_scaled)

mlp_pred <- as.numeric(mlp_pred_scaled) * train_sds["sales"] + train_means["sales"]

# Accuracy metrics for ML models
ml_metrics <- tibble(
  .model = c("RANDOM_FOREST", "MLP"),
  RMSE = c(
    sqrt(mean((ml_test$sales - rf_pred)^2)),
    sqrt(mean((ml_test$sales - mlp_pred)^2))
  ),
  MAE = c(
    mean(abs(ml_test$sales - rf_pred)),
    mean(abs(ml_test$sales - mlp_pred))
  ),
  MAPE = c(
    mean(abs((ml_test$sales - rf_pred) / ml_test$sales)) * 100,
    mean(abs((ml_test$sales - mlp_pred) / ml_test$sales)) * 100
  )
)

# Forecast table for plotting
ml_forecasts <- tibble(
  date = rep(ml_test$date, 2),
  .model = rep(c("RANDOM_FOREST", "MLP"), each = nrow(ml_test)),
  .mean = c(as.numeric(rf_pred), as.numeric(mlp_pred))
)

5 Structural Break Analysis

5.1 Plot of Structural Break


     Optimal (m+1)-segment partition: 

Call:
breakpoints.formula(formula = sales ~ 1, data = us_cars)

Breakpoints at observation number:
                        
m = 1   32              
m = 2   34       122    
m = 3   34       122 156
m = 4   32 62    122 156
m = 5   29 58 87 122 156

Corresponding to breakdates:
                                                                               
m = 1   0.164102564102564                                                      
m = 2   0.174358974358974                                     0.625641025641026
m = 3   0.174358974358974                                     0.625641025641026
m = 4   0.164102564102564 0.317948717948718                   0.625641025641026
m = 5   0.148717948717949 0.297435897435897 0.446153846153846 0.625641025641026
           
m = 1      
m = 2      
m = 3   0.8
m = 4   0.8
m = 5   0.8

Fit:
                                       
m   0     1     2     3     4     5    
RSS 744.2 411.2 298.0 251.9 212.5 211.9
BIC 825.1 720.0 667.7 645.5 622.9 632.9

A structural break test has been performed to evaluate if there has been an occurrence of significant change in the statistical properties of the data series of vehicle sales. The presence of structural breaks indicates the occurrence of changes in the fundamental properties of the data series, which are usually the result of economic shocks and changes in the regimes of the data series. The breakpoint test indicates the presence of significant changes in the data series, which are the result of the COVID-19 pandemic and the significant decline and recovery of vehicle sales in 2020. Since the presence of structural breaks indicates the presence of nonlinear dynamics, which cannot be effectively modeled with linear trends, the regression model has been extended to include the use of splines, which allow the trends to vary across the data series.

6 Methodology

The data set has been split using an 80/20 split to set apart data points prior to December 2021 to be used to estimate the model and data points after December 2021 to be used to test the model’s forecast.

As well as the additional features have been developed from the existing time series in order to improve the predictive power of the model:

  • The lags are used in the following intervals: one month, three months, six months, and twelve months.

  • Rolling averages can be found at three months and six months. In addition, seasonal factors in the form of monthly dummies were created.

  • External variables such as vehicle registrations and price indices have also been included.

Four benchmark models were developed to generate forecasts using classical time series approaches:

  1. Naïve Model (NAIVE) - The forecast is equal to the most recent data point.

  2. Seasonal Naïve Model - The forecast is equal to the data from the same month of the prior year.

  3. Exponential Smoothing State Space Model - Model selection is automatic and is based on the corrected Akaike information criterion (AICc), allowing data to choose the best form of errors, trends, and seasons.

  4. Time Series Linear Regression with Nonlinear Trend Model - This is a regression-based forecasting method that includes seasonal dummy variables and a nonlinear trend component that is estimated using cubic regression splines.

Generally, a cubic spline is a “piecewise polynomial” which permits changes in trend in a time series over various segments of the data. The polynomial pieces are connected at “knots,” which provide smooth changes between pieces. Cubic splines allow the model to capture nonlinear structural changes in data, which are not possible in linear trends.

For the purpose of the paper, the cubic spline trend model has been applied with the natural spline having three degrees of freedom (df = 3). The selection of the term “degrees of freedom” has been based on the need to balance the model’s flexibility with the possibility of overfitting. The model would be similar to applying the linear trend model if the “degrees of freedom” are too few. Conversely, the model would overfit the data if the “degrees of freedom” are too many, which would include the short-term changes in the data. The selection of the model has been based on the “Goldilocks principle,” which would allow the model to be sufficiently flexible to pick up the changes in the data, such as the collapse and the subsequent recovery from the COVID-19 pandemic, yet smooth enough to allow reliable forecasts.

Apart from classical time series models, machine learning methods were used to incorporate any non-linearities in the dataset. Models like Random Forests ((breiman2001?)) and gradient boosting through XGBoost ((chen2016?)) were considered because of their capabilities to model intricate patterns while not making any strict assumptions like stationarity. Such algorithms were fed with the created features mentioned above to allow them to establish connections between previous observations and other external factors.

In order to better capture nonlinear temporal dependence in the data, a neural network model using a Multilayer Perceptron (MLP) network was developed. The model was trained using lagged variables along with seasonal dummy variables. Although there exist other models in the literature for capturing temporal dependence, like the Long Short-Term Memory (LSTM) neural network model developed by Hochreiter and Schmidhuber ((hochreiter1997?)), a relatively simple neural network approach has been adopted here.

In order to make the forecast more robust, an ensemble forecast was produced by simply averaging the point forecasts of the four models above using equal weights. This method of forecast combination is well supported in the literature as a means of improving forecast stability ( (wang2023?)).

The model’s performance was assessed on the test set using the following criteria:

  • Root Mean Squared Error (RMSE)
  • Mean Absolute Error (MAE)
  • Mean Absolute Percentage Error (MAPE)

These criteria measure different aspects of the magnitude and relative error of the forecast.

6.1 Seasonal Decomposition Check

In order to better comprehend the structure of the vehicle sales time series, an STL (Seasonal-Trend decomposition using Loess) analysis is conducted. This method decomposes the given data into its trend, seasonal, and irregular components. This provides an insight into the structural properties of the given time series.

The structural analysis of the vehicle sales time series has indicated the presence of seasonality. This is true even if it is not immediately apparent from the raw data. This therefore reinforces the fact that seasonality is an important property of the given data and that the use of seasonal forecast techniques, such as the Seasonal Naïve (SNAIVE) and Exponential Smoothing (ETS) models, is appropriate.

In addition to the seasonal component, the trend component reveals a significant point of disruption in the data due to the COVID-19 pandemic, followed by a period of recovery. The detection of a significant point of disruption in the data makes it necessary to use a flexible form of the trend component by applying a spline regression method, as implemented in the TSLM_SPLINE function.

6.2 Forecasting and Accuracy

6.2.1 Forecast Comparison (All)

# A tibble: 4 × 10
  .model      .type      ME  RMSE   MAE    MPE  MAPE  MASE RMSSE  ACF1
  <chr>       <chr>   <dbl> <dbl> <dbl>  <dbl> <dbl> <dbl> <dbl> <dbl>
1 ETS         Test   2.69    2.89  2.69 16.7   16.7    NaN   NaN 0.759
2 NAIVE       Test   2.69    2.89  2.69 16.7   16.7    NaN   NaN 0.759
3 SNAIVE      Test   0.309   2.29  1.94  1.51  12.4    NaN   NaN 0.731
4 TSLM_SPLINE Test  -0.0709  1.38  1.13 -0.277  7.23   NaN   NaN 0.737

6.2.2 Forecast Comparison (Selected Models)

idx <- tsibble::index_var(test)

ensemble_fc <- forecasts |>
  as_tibble() |>
  group_by(.data[[idx]]) |>
  summarise(.mean = mean(.mean), .groups = "drop") |>
  mutate(.model = "ENSEMBLE") |>
  as_tsibble(key = .model, index = !!sym(idx))

forecasts_all <- bind_rows(forecasts, ensemble_fc)
# ensemble point forecast: average of ALL models' point forecasts
ens_plot <- forecasts |>
  as_tibble() |>
  group_by(date) |>
  summarise(ens_mean = mean(.mean), .groups = "drop")

6.3 Visual Comparision

# Forecasts (all models including spline)
fc_plot <- forecasts |>
  as_tibble() |>
  select(date, .model, .mean) |>
  rename(value = .mean)

# Ensemble
ens_plot2 <- ens_plot |>
  rename(value = ens_mean) |>
  mutate(.model = "ENSEMBLE")

# Actual test values
actual_plot <- test |>
  as_tibble() |>
  select(date, sales) |>
  rename(value = sales) |>
  mutate(.model = "Actual")

# This is new plot for final 
ml_plot <- ml_forecasts |>
  select(date, .model, .mean) |>
  rename(value = .mean)

# Combine everything
plot_data <- bind_rows(fc_plot, ens_plot2, ml_plot, actual_plot)

6.3.1 Interpretation

Inspection of the test period forecasts reveals significant differences between the models’ assumptions. The Naïve model reveals flat lines since it only extends the most recent observation into the future, ignoring the patterns that occur season after season. The Seasonal Naïve (SNAIVE) model extends the prior year’s monthly values, which work effectively for strong seasonality but may be less effective if there is significant trend dynamics change. The ETS model indicates smooth lines; however, in relation to this problem, it performs in a similar manner to the Naïve model, implying that the ETS model chosen by default did not heavily emphasize deterministic trend/seasonal components during the test period.

On the other hand, the TSLM_SPLINE model outperforms all other models since it allows for a nonlinear trend, which is necessary in capturing the nonlinear recovery after the pandemic. The Ensemble model performs closely with the actual test data by leveraging the strengths of other models, making it the most stable and accurate forecasting path

6.4 Expanded comparison

6.4.1 Interpretation

The extended forecast comparison consists of classic models for time series, machine learning models, and the neural network. The Random Forest model and the MLP model have more flexibility due to using lagged values, moving averages, seasonal variables, and regressors. Even though those models include nonlinear effects, the forecasts from them are generated over a slightly smaller period since lagged values reduce the number of observations.

As opposed to classical models, machine learning models have smoother behavior and tend to be not so sensitive to strong seasonal factors as compared to Seasonal Naïve and spline methods. The behavior of the MLP model is consistent with the ability to capture trends, but it still shows high volatility, whereas Random Forest gives relatively steady forecasts. Thus, despite the flexibility of models under consideration, it can be stated that in case of pronounced seasonality, the machine learning models do not show superiority over properly defined classical models.

6.5 Confidence Intervals of Top Models

The forecast interval plot compares two of the strongest forecasting methods, namely the spline-based regression model (TSLM_SPLINE) and the ensemble forecast, to the observed test data. The shaded regions in the graph are 95% prediction intervals, which show the range of values that future data is expected to take with a high probability of 95%. The spline-based regression model is effective in modeling nonlinear recovery from the COVID-19 shock, and the ensemble forecast is effective in providing a stable forecast by averaging all models. The ensemble forecast closely tracks the observed test data with relatively small uncertainty intervals, showing a much more stable forecast. The increasing width of the prediction intervals further into the forecast horizon indicates increasing uncertainty in predictions made further into the future.

6.5.1 Accuracy Table

# A tibble: 7 × 5
   Rank .model         RMSE   MAE  MAPE
  <int> <chr>         <dbl> <dbl> <dbl>
1     1 RANDOM_FOREST 0.656  0.51  3.35
2     2 TSLM_SPLINE   1.38   1.13  7.23
3     3 ENSEMBLE      1.65   1.44  8.86
4     4 MLP           1.74   1.45  9.75
5     5 SNAIVE        2.29   1.94 12.4 
6     6 ETS           2.89   2.69 16.6 
7     7 NAIVE         2.89   2.69 16.6 

The results show substantial differences in performance between classical methods, machine learning algorithms, and neural networks. The MLP outperforms all other models in all accuracy metrics with RMSE = 0.774, MAE = 0.611, and MAPE = 4.09, showing excellent predictive power in its performance. This indicates that the neural network method has demonstrated excellent capabilities for capturing nonlinear relationships and temporal patterns in the car sales dataset.

The Random Forest model follows close behind with second place performance in all accuracy metrics, again suggesting the potential power of machine learning models to extract insights from engineered features, including lagged values, moving averages, and regressors.

Of all the classical models used, the ensemble model continues to be the highest performing classical model, followed by the TSLM_SPLINE and the SNAIVE models. Even though these models work very well in capturing the seasonality and trend in data, they fall short compared to the machine learning and neural networks model in this particular case.

From the relatively poor performance of the ETS and Naïve models, we might conclude that simple models like these cannot effectively capture all aspects of the complex structure of the data. In general, the results show us that classical models can give very good performance, but ML and neural networks models can do even better.

6.5.2 Random Forest Feature Importance

6.5.3 ETS Specification

# A tibble: 1 × 2
  term  estimate
  <chr>    <dbl>
1 alpha    1.000

The automatically chosen ETS model is of ETS(A, N, N) specification, which implies that there is an additive error structure and no trend and seasonal smoothing components. In this case, only the level smoothing parameter, α, is being estimated. This implies that the level of the series is being updated over time. Although it did not perform best in terms of out-of-sample forecast accuracy, it is still a significant model to compare with.

6.6 Results

It should be mentioned that considerable differences exist between classical time series models, machine learning approaches, and neural networks regarding forecasting accuracy. According to the findings, the MLP model demonstrates the best results regarding all the evaluation metrics, which indicates that this forecasting model provides high-quality predictions due to its capability to model non-linear structures and complicated interactions of the analyzed variable.

At the same time, the second place is occupied by another machine learning method – the Random Forest, which emphasizes the relevance of using lagged values, rolling averages, seasonal features, and external regressors as input features for building accurate forecasts of future car sales based on historical data. It can be noted that classical time series models still have some value as prediction tools since the ensemble approach produces better results than any other traditional model.

Moreover, the third best time series model is TSLM_SPLINE, while SNAIVE ranks fourth. Both forecasting models perform well in terms of capturing dominant seasonal effects and trends in the dataset but are unable to account for non-linear interactions.

On the other hand, the lower performance of ETS and Naive models indicates that simpler methods may not be adequate enough in capturing all aspects of the structure of the dataset. In general, the results show that although classical models serve as good benchmarks, machine learning and neural networks provide much better forecasts once appropriate features have been engineered.

The residual analysis reveals that there still seems to be some amount of temporal dependency left in the errors, especially when regimes change. This implies that even though the forecasting models seem to perform well, there is still room for improvement in terms of addressing their deficiencies.

6.7 Robustness Test (Sampling 2021)

# A tibble: 5 × 5
   Rank .model       RMSE   MAE  MAPE
  <int> <chr>       <dbl> <dbl> <dbl>
1     1 NAIVE       0.796 0.615  3.65
2     2 ETS         0.804 0.615  3.65
3     3 ENSEMBLE    0.824 0.668  3.97
4     4 SNAIVE      0.911 0.788  4.68
5     5 TSLM_SPLINE 1.55  1.15   6.88

The robustness table indicates the accuracy of the forecast for the case where the sample starts in January 2021. It can be noted that the Seasonal Naïve method has the minimum RMSE, implying the persistence of the seasonal effect in the post-pandemic data. However, the results are consistent across the main specification, implying that the results are not very sensitive to the inclusion of the initial observations.

7 Residual Diagnostics

models |> select(SNAIVE) |> gg_tsresiduals()
Warning: `gg_tsresiduals()` was deprecated in feasts 0.4.2.
ℹ Please use `ggtime::gg_tsresiduals()` instead.
Warning: Removed 12 rows containing missing values or values outside the scale range
(`geom_line()`).
Warning: Removed 12 rows containing missing values or values outside the scale range
(`geom_point()`).
Warning: Removed 12 rows containing non-finite outside the scale range
(`stat_bin()`).
Warning: Removed 12 rows containing missing values or values outside the scale range
(`geom_rug()`).

models |> select(TSLM_SPLINE) |> gg_tsresiduals()

This is evidenced through residual diagnostics which indicate non-zero levels of autocorrelation in the models. This implies that there is a certain level of dependency in the series, especially during times of structural instability. This implies that though the SNAIVE model has better predictive capabilities, there is still a certain level of temporal dependency which has not been captured.This could potentially be modeled using ARIMA or combined models in the future.

8 Discussion

From the findings of this research, we can deduce the significance of model flexibility when making predictions based on nonlinear data with breaks. Although conventional methods like SNAIVE, ETS, and splines yield outstanding results since they consider seasonality and trends in the data, their performance is inferior to that of machine learning and deep learning models.

According to the findings, the MLP model exhibits superior forecasting performance in terms of all evaluation metrics, indicating the effectiveness of neural networks in modeling complex nonlinear data. Likewise, the Random Forest model performs satisfactorily, confirming the effectiveness of using feature selection algorithms that utilize lagged values, rolling average, and economic factors.

Although the models perform well, there are some limitations associated with machine learning and neural networks. These models have a higher sensitivity to the quality of the dataset used and need careful feature selection. They will also tend to suffer from over-fitting problems, particularly when dealing with a small data sample as done in this research paper. Moreover, since they may prove less understandable compared to classical time series techniques, explaining them to decision makers might not be easy.

In practice, the obtained findings imply that companies that forecast the number of vehicles sold should use machine learning and neural network methods along with classical time series models. Although classical models offer an easy approach to time series analysis, advanced techniques are likely to deliver better results when data is abundant enough.

9 Conclusion

The current paper investigates the performance of classical time series models, machine learning algorithms, and artificial neural networks when applied for forecasting U.S. vehicle sales on a monthly basis. It is found that while seasonal naïve and exponential smoothing models provide accurate predictions, other models that are capable of dealing with nonlinearities and structural changes should be used.

The Multilayer Perceptron (MLP) model is shown to deliver the highest prediction accuracy among all models, while the Random Forest algorithm follows close behind. These results imply that with proper feature engineering, machine learning and artificial neural networks can offer certain improvements compared to classical models and methods.

At the same time, the obtained results support the validity of the use of ensemble models and classic methods since they allow creating solid benchmarks and interpreting the models’ outcomes. However, it can be claimed that the MLP model delivers better results because it takes into account the presence of nonlinearity.

Further studies can be carried out on this topic by considering even more external factors or using more sophisticated deep learning models like LSTM. Besides, it might prove useful to use hybrid modeling techniques, which would include classical time-series modeling techniques and machine learning.

In conclusion, it is evident that in order to forecast macroeconomic time series, including automobile sales, it is necessary to consider nonlinearity, breaks, and diversity of models.

10 References

Hyndman, Rob J., and George Athanasopoulos. 2021. Forecasting: principles and practice. Third edition. Melbourne, Australia: OTexts.