Base Knowledge
The Time Series course is supported on the fundamental contents of Statistics. The programming knowledge provided by the programming courses is a plus.
Teaching Methodologies
The classes are designed, according to the curriculum plan, to be both theoretical and practical. They are planned and prepared to actively engage students at various moments or throughout the entire class.
In the theoretical part of the lesson, the expository method will be frequently used to introduce concepts, fundamental results, and methods, interspersed with tasks that encourage active participation by all students (interactive lectures). These tasks include posing questions to and by students, orally and/or on a platform, as well as proposing debates/discussions in small groups on certain exposed aspects/topics.
The practical part will be designed to comprehensively develop the listed skills. This will be achieved through commented exemplification of procedures and/or problem-solving under the guidance/tutoring of the teacher. Autonomous work or work in small groups will be encouraged, progressing towards project-based learning, with the completion of an assignment. There will be a strong interaction between theory and practice, with a central focus on visualizing and dealing with actual scenarios.
It is assumed that the studend attends classes regularly and is available for his/her involvement to continue beyond classes, with the beginning or completion of tasks agreed upon in class.
Learning Results
Data description and forecasting tasks often involve data in which the temporal component cannot be neglected. Therefore, in this curricular unit, the focus is on time series data.
Outcomes:
- Explain the key concepts of time series analysis and forecasting.
- Conduct exploratory analysis and the respective processing of time series data, taking into account the defined analysis and/or forecasting objectives.
- Select, apply and compare suitable forecasting methods for time series, critically evaluating and following best practices in assessing the predictive performance of the models obtained.
- Design, implement and communicate a complete forecasting solution for time series, justifying the methodological decisions taken.
Skills:
- Acquire, integrate and structure time series obtained from files, application programming interfaces (APIs) or databases, ensuring temporal integrity throughout the process.
- Describe time series through exploratory analysis combining visualisation, descriptive statistics and measures of temporal dependence, highlighting regularities, structural breaks and anomalies characteristic of this type of data.
- Identify and address potential problems affecting data quality (missing values, outliers and structural breaks, among others) and carry out the appropriate treatment.
- Construct new variables from time series (lags, differences, aggregations, exogenous indicators) that enhance the explanatory and/or predictive power of the models.
- Identify and implement suitable quantitative forecasting methods, according to the characteristics of the problem under study.
- Verify the assumptions of the estimated models, highlight their limitations and discuss the implications for practical use.
- Evaluate the predictive capacity of the models obtained and select the most appropriate alternative, following best practices.
- Use and automate computer tools to support all stages of the time series analysis and forecasting process.
- Document and communicate, both orally and in writing, the process followed (including choices and technical justifications), the results obtained and the final recommendations.
Program
1. Time series analysis
1.1. Exploratory analysis
1.2. Handling missing values
1.3. Anomaly detection
1.4. Feature transformation and extraction
2. Time series forecasting
2.1. Fundamental concepts
2.2. Diagnostics evaluation
2.3. Forecasting accuracy evaluation
2.4. Benchmark forecasting methods
2.5. Statistical forecasting methods
2.6. Machine learning forecasting methods
Curricular Unit Teachers
Joana Jorge de Queiroz LeiteInternship(s)
NAO
Bibliography
Fundamental:
- Hyndman, R.J., Athanasopoulos, G., Garza, A., Challu, C., Mergenthaler, M., Olivares, K.G. (2024). Forecasting: Principles and Practice, the Pythonic Way. OTexts. https://otexts.com/fpppy/
- Hewamalage, H., Ackermann, K., Bergmeir, C. (2023). Forecast evaluation for data scientists: common pitfalls and best practices. Data Mining and Knowledge Discovery, 37, 788-832. https://doi.org/10.1007/s10618-022-00894-5
- Support materials (slides and exercises) available on the InforEstudante|Nonio platform.
Complementary:
- Box, G.E., Jenkins, G.M., Reinsel G.C. (2015). Time Series Analysis: Forecasting and Control, 5th edition. Wiley.
- Gilliland, M., Tashman, L., Sglavo, U. (2021). Business Forecasting: The Emerging Role of Artificial Intelligence and Machine Learning. Wiley.
- Joseph, M., Tackes, J. (2024). Modern Time Series Forecasting with Python, 2nd Edition. Packt Publishing.
- Kolassa, S., Rostami-Tabar, B., Siemsen, E. (2023). Demand Forecasting for Executives and Professionals. CRC Press. https://dfep.netlify.app/
- Lones, M. A. (2024). Avoiding common machine learning pitfalls. Patterns, 5(10). https://doi.org/10.1016/j.patter.2024.101046
- Peixeiro, M. (2022). Time Series Forecasting in Python. Manning.
- Petropoulos, F. et al. (2022). Forecasting: theory and practice. International Journal of Forecasting, 38(3), 705-871. https://doi.org/10.1016/j.ijforecast.2021.11.001