Machine Learning based GDP Nowcasting Workshop

Dec 16-20,2024

9:00 am - 5:00 pm

Instructors: Yonas Mersha (Data Science Consultant), Issoufou Seidou (Principal Statistician), Anjana Dube (Presenter), Tesfaye Belay (Statistician)


General Information

The training workshop aims to equip participants with the knowledge and skills necessary to utilize machine learning techniques and Google Trends data for accurate and timely Gross Domestic Product (GDP) growth rate nowcasting. Comprehensive compilation of Gross Domestic Product (GDP) needs many data sources both administrative and survey data. Some of these sources supply data annually/ quarterly. Moreover, these datasets will be available only after 2-3 weeks of end of quarter. To address this, the workshop will explore the potential of Google Trends data as a leading indicator of economic activity. Participants will be introduced to a variety of machine learning techniques, including regression-based models, non-linear models like decision trees and support vector machines, ensemble methods, and neural networks. These techniques can help capture complex patterns, handle noise and outliers, and adapt to changing economic conditions. By combining Google Trends data with traditional economic indicators, participants will learn to build more accurate and robust GDP nowcasting models.

The workshop will offer practical training in essential data science techniques, including data cleaning, preprocessing, exploratory data analysis (EDA), handling missing data and outliers, addressing multicollinearity, analyzing time series data for stationarity, trends, and seasonality, feature engineering and selection, model building and evaluation, hyperparameter tuning, cross-validation, data visualization, and result interpretation. Participants will gain hands-on experience in applying these techniques to real-world data and interpreting the results. Ultimately, this training workshop aims to empower/enhance the capacity of the National Statistical System (NSS) to utilize Google Trends data and advanced machine learning techniques for accurate and timely nowcasting of economic indicators (GDP growth rate ), ultimately leading to data-driven decision-making and improved economic policy formulation.


Who: The workshop is designed for professionals from the following fields: National Accounts, Economics, Statistics, Data Science, Information Technology, and Related fields. You don't need to have any previous knowledge of the tools that will be presented at the workshop.

Where: Fraser Suites Abuja, Abuja, Nigerian. Get directions with OpenStreetMap or Google Maps.

When: Dec 16-20,2024. Add to your Google Calendar.

Requirements: Participants must bring a laptop with a Windows, Linux, Mac operating system (not a tablet, Chromebook, etc.) that they have administrative privileges on. There are no pre-requisites, and we will assume no prior knowledge about the tools.

Contact: Please email yonas.yigezu@un.org , seidoui@un.org or belayt@un.org for more information.


Collaborative Notepad

We will use the Carpentries Etherpad collaborative notepad on this workshop collaborative document for sharing resources and collaboration during the workshop. It allows participants and instructors to write and edit text in real-time, making it an excellent tool to foster collaboration during workshops.


Surveys

Please be sure to complete these surveys before and after the workshop.

Pre-workshop Survey

Post-workshop Survey


Registration Link

Please use the following form to register for the workshop:

Click here to register for the workshop


Schedule

Day 1

09:00-09:10Session 1: Opening Remarks (Dr. Baba Madu, National Bureau of Statistics, NBS)
09:10-09:20Opening Remarks (Issoufou Seidou, United Nations Economic Commission for Africa, UNECA)
09:20-09:40Session 2: Machine Learning based Nowcasting Macroeconomic Indicators (GDP) using Google Trends Data (Anjana Dube) via Teams
09:40-10:30Group Photos and Coffee Break
10:30-13:00Session 3: Setting up the Python Development Environment (Yonas, UNECA)
13:00-14:00Lunch break
14:00-15:30Session 4: Python Basics (Yonas, UNECA)
15:30-16:00Coffee
16:00-17:00Session 5: Python core libraries: NumPy, Pandas, & Matplotlib Fundamentals (Yonas, UNECA)

Day 2

09:00-10:00Session 1: Exploratory Data Analysis (EDA) (Yonas, UNECA)
10:00-10:30Session 2: Data Quality and Preprocessing (Yonas, UNECA)
10:30-11:00Coffee
11:00-12:00Data Quality and Preprocessing (Conti...) (Yonas, UNECA)
12:00-13:00Lunch break
13:00-14:00Session 3: Time Series Analysis (Yonas, UNECA)
14:00-14:30Session 4: Feature Engineering and Selection (Yonas, UNECA)
14:30-15:00Coffee
15:00-15:30Feature Engineering and Selection (Conti...) (Yonas, UNECA)
15:30-17:00Session 5: Time Series Data Splitting & Evaluation Metrics, Model Selection (Yonas, UNECA)

Day 3

09:00-10:30Session 1: Fundamentals of Machine Learning Algorithms & Frameworks (Yonas, UNECA)
10:30-11:00Coffee
11:00-12:00Session 2: Fundamentals of Deep Learning Algorithms & Frameworks (Yonas, UNECA)
12:00-13:00Lunch break
13:00-14:30Session 3: ML/DL Model Implementation (Yonas, UNECA)
14:30-15:00Coffee
15:00-16:00ML/DL Model Implementation (Conti...) (Yonas, UNECA)
16:00-17:00Session 4: Hyperparameter Tuning and Cross-validation (Yonas, UNECA)

Day 4

09:00-10:30Session 1: ML/DL based GDP Nowcasting Workflow & Understanding Basics of Google Trends (Yonas, UNECA)
10:30-11:00Coffee
11:00-12:00Session 2: Acquiring and Pre-Processing Google Trends (Yonas, UNECA)
12:00-13:00Lunch break
13:00-14:30Session 3: GDP Data Preprocessing (Yonas, UNECA)
14:30-15:00Coffee
15:00-16:00Session 4: Implement ML/DL Models to nowcast GDP (Yonas, UNECA)
16:00-17:00Session 5: Visualization, Evaluation, Interpretation, & Deployment (Yonas, UNECA)

Day 5

09:00-09:10Session 1: Effective Communication of Nowcasted GDP Growth Predictions to Stakeholders and Policymakers (Anjana Dube) via Teams
09:10-10:30Session 2: Dedicated Group Project Work Sessions (NBS)
10:30-11:00Coffee
11:00-12:00Dedicated Group Project Work Sessions (NBS) (Conti...)
12:00-13:00Lunch break
13:00-14:30Session 3: Group Work Presentations (NBS)
14:30-15:00Coffee
15:00-17:00Session 4: Discussions, Final Remarks, and Future Directions (NBS & UNECA)

Syllabus


Python Software Setup

Python is a popular language for research computing, and great for general-purpose programming as well. Installing all of its research packages individually can be a bit difficult, so we recommend Anaconda, an all-in-one installer.

Regardless of how you choose to install it, please make sure you install Python version 3.x (e.g., 3.4 is fine).

We will teach Python using the IPython notebook, a programming environment that runs in a web browser. For this to work you will need a reasonably up-to-date browser. The current versions of the Chrome, Safari and Firefox browsers are all supported (some older browsers, including Internet Explorer version 9 and below, are not).

Windows

Video Tutorial
  1. Open http://continuum.io/downloads with your web browser.
  2. Download the Python 3 installer for Windows.
  3. Install Python 3 using all of the defaults for installation except make sure to check Make Anaconda the default Python.

Mac OS X

Video Tutorial
  1. Open http://continuum.io/downloads with your web browser.
  2. Download the Python 3 installer for OS X.
  3. Install Python 3 using all of the defaults for installation.

Linux

  1. Open http://continuum.io/downloads with your web browser.
  2. Download the Python 3 installer for Linux.
    (Installation requires using the shell. If you aren't comfortable doing the installation yourself stop here and request help at the workshop.)
  3. Open a terminal window.
  4. Type
    bash Anaconda3-
    and then press tab. The name of the file you just downloaded should appear. If it does not, navigate to the folder where you downloaded the file, for example with:
    cd Downloads
    Then, try again.
  5. Press enter. You will follow the text-only prompts. To move through the text, press the space key. Type yes and press enter to approve the license. Press enter to approve the default location for the files. Type yes and press enter to prepend Anaconda to your PATH (this makes the Anaconda distribution the default Python).
  6. Close the terminal window.