Join RMB and Zindi in revolutionizing the world of finance by predicting South Africa's inflation with CPI as a proxy, using alternative data in cutting-edge machine-learning models.
Inflation is a fundamental component of understanding how an economy works. If we think through the acronym, CPI stands for consumer price index. It has a bearing on household’s purchasing power and influences decisions on whether we can spend or save.
Based on the prices of a set basket of goods and services which are regularly bought, an overall price level is determined. In South Africa, this basket comprising 412 items grouped into 12 categories, is surveyed monthly by Statistics South Africa which assigns a weighting to each of the items to make up 100% of the basket. Comparing the changes in prices month-to-month and year-on-year tells us how quickly prices rise or fall over a given period. It is a generalized measure and we’re made aware of the changes through monthly publications by Stats SA.
Nowcasting CPI is an important indicator for banks and their clients as it provides insight into rate hikes/reductions which are influenced by inflation. Existing CPI prediction methods have generally focused on time series forecasting as well analysing economic data, such as GDP, and unemployment rates. Nowcasting is a modern approach to help monitor economic activity in the near future.
In this challenge, you will be provided with historical CPI data, air quality data from Sentinel-5P, as well as trade data from various sources.
Please note that these data sources are just a starting point to use as inputs to any model you may be building. Feel free to look for alternative sources outside of the starting list. The only prerequisites for using other data sources is that data should be freely available to all participants (no paid licensed data) and the data will need to be emailed to Zindi who will work with RMB to approve it for use in the challenge.
Your task is to nowcast the next CPI value as well as CPI sub-categories for 3 consecutive months. This is in order to test the robustness of models.
This challenge is the accumulation of participation in 5 Mini Challenges. Participants are to use the Mini Challenges to build and refine their models. Please note, for this challenge you will not be allowed to edit your solution/models for the duration of the 3 months. I.e the models/solution you used to nowcast September needs to be used to nowcast October and November.
To be eligible to compete in this challenge, you will need to participate in 3 out of 5 RMB Mini Monthly Challenges to nowcast monthly CPI values from April to August.
About RMB
We are a leading African Corporate and Investment Bank and part of one of the largest financial services groups (by market capitalisation) in Africa – FirstRand Limited.
We are passionate Solutionists who offer our clients innovative, advisory, funding, trading, corporate banking, principal investing and private banking solutions. We are innovative thinkers who turn challenges into opportunities to deliver on Traditional values. Innovative ideas.
The error metric for this competition is the Root Mean Squared Error.
This challenge will be evaluated on a rolling leaderboard, to be updated every month.
You are required to Nowcast the current CPI headline value as well as 12 sub-categories (unweighted). The 12 sub-categories are food and non-alcoholic beverages, alcoholic beverages and tobacco, clothing and footwear, housing and utilities, household contents and services, health, transport, communication, recreation and culture, education, restaurants and hotels, miscellaneous goods and services.
For the month of September, you will need to submit your September values and zeros for your October and November values.
For the month of October you will need to submit the SAME values for your September submissions, your nowcast for October and zeros for November values.
For the month of November you will need to submit the SAME values for your September and October submissions, and your nowcast for November.
A lack of consistency in your historical values will lead to disqualification.
There is a total of $20 000 USD up for grabs, split across 5 monthly Mini Challenges and our overall final prize categories: first and second place (based on accuracy in both total CPI and CPI sub-categories), a prize for the best South African solution and a prize for the most innovative approach.
Best model overall (1st prize): $7 500 USD
Best model overall (2nd prize): $4 500 USD
Awarded based on leaderboard position for September, October and November CPI values (a total of 13 values x 3 months)
Best South African model: $2 500 USD
Best South African model based on September, October and November CPI values (a total of 13 values x 3 months). If the top South African is in 1st or 2nd place, the next South African will be awarded.
Most innovative model: $2 500 USD
Most innovative model based on September, October and November CPI values (a total of 13 values x 3 months) at the discretion of the RMB team. Factors that contribute are usage of alternate data sources, creativity of features engineered and usefulness.
For each of the 5 Mini Challenges there is a prize pot of $600 USD.
1st place: $300 USD
2nd place: $200 USD
3rd place: $100 USD
This challenge starts on 1 September 2023. The datasets and submissions will be available at this time. You will be required to submit your September, October and November nowcast CPI and sub-category values.
The final leaderboard will be rescored and revealed on 14 December 2023.
To be eligible to compete you need to have competed in 3 out of the 5 RMB Monthly Mini Challenges. Mini Challenges will be announced on the discussion board.
The aim of the challenge is to create one model/solution that you can use to nowcast September, October, and November, CPI and sub-categories values.
The final leaderboard will be rescored and revealed on 14 December 2023.
We reserve the right to update the contest timeline if necessary.
To be eligible to compete in this challenge, you will need to participate in 3 out of 5 RMB Mini Monthly Challenges to nowcast monthly CPI values from April to August.
Sign up for the first RMB Monthly Mini Challenge #1: Nowcast April. The data and starter notebook will be available on 21 March 2023.
Each month Stats SA collects data on to determine the CPI values of that month. Usually, 2 weeks later these values are released.
For instance, the February 2023 CPI values will be released on 14 March 2023.
Reference Month Release Date
February 2023 14 March 2023
March 2023 12 April 2023
April 2023 10 May 2023
May 2023 13 June 2023
June 2023 12 July 2023
July 2023 10 August 2023
August 2023 13 September 2023
September 2023 12 October 2023
October 2023 14 November 2023
November 2023 12 December 2023
How to enroll in your first Zindi competition
How to create a team on Zindi
How to update your profile on Zindi
This challenge is open to all.
Teams and collaboration
You may participate in competitions as an individual or in a team of up to four people. When creating a team, the team must have a total submission count less than or equal to the maximum allowable submissions as of the formation date. A team will be allowed the maximum number of submissions for the competition, minus the total number of submissions among team members at team formation. Prizes are transferred only to the individual players or to the team leader.
Multiple accounts per user are not permitted, and neither is collaboration or membership across multiple teams. Individuals and their submissions originating from multiple accounts will be immediately disqualified from the platform.
Code must not be shared privately outside of a team. Any code that is shared, must be made available to all competition participants through the platform. (i.e. on the discussion boards).
The Zindi data scientist who sets up a team is the default Team Leader but they can transfer leadership to another data scientist on the team. The Team Leader can invite other data scientists to their team. Invited data scientists can accept or reject invitations. Until a second data scientist accepts an invitation to join a team, the data scientist who initiated a team remains an individual on the leaderboard. No additional members may be added to teams within the final 5 days of the competition or last hour of a hackathon.
The team leader can initiate a merge with another team. Only the team leader of the second team can accept the invite. The default team leader is the leader from the team who initiated the invite. Teams can only merge if the total number of members is less than or equal to the maximum team size of the competition.
A team can be disbanded if it has not yet made a submission. Once a submission is made individual members cannot leave the team.
All members in the team receive points associated with their ranking in the competition and there is no split or division of the points between team members.
Datasets and packages
The solution must use publicly-available, open-source packages only.
You may use only the datasets provided for this competition. Automated machine learning tools such as automl are not permitted.
You may use pretrained models as long as they are openly available to everyone.
The data used in this competition is the sole property of Zindi and the competition host. You may not transmit, duplicate, publish, redistribute or otherwise provide or make available any competition data to any party not participating in the Competition (this includes uploading the data to any public site such as Kaggle or GitHub). You may upload, store and work with the data on any cloud platform such as Google Colab, AWS or similar, as long as 1) the data remains private and 2) doing so does not contravene Zindi’s rules of use.
You must notify Zindi immediately upon learning of any unauthorised transmission of or unauthorised access to the competition data, and work with Zindi to rectify any unauthorised transmission or access.
Your solution must not infringe the rights of any third party and you must be legally entitled to assign ownership of all rights of copyright in and to the winning solution code to Zindi.
Submissions and winning
You may make a maximum of 3 submissions per day.
You may make a maximum of 9 submissions for this competition.
Before the end of the competition you need to choose 2 submissions to be judged on for the private leaderboard. If you do not make a selection your 2 best public leaderboard submissions will be used to score on the private leaderboard.
During the competition, your best public score will be displayed regardless of the submissions you have selected. When the competition closes your best private score out of the 2 selected submissions will be displayed.
Zindi maintains a public leaderboard and a private leaderboard for each competition. The Public Leaderboard includes approximately 30% of the test dataset. While the competition is open, the Public Leaderboard will rank the submitted solutions by the accuracy score they achieve. Upon close of the competition, the Private Leaderboard, which covers the other 80% of the test dataset, will be made public and will constitute the final ranking for the competition.
Note that to count, your submission must first pass processing. If your submission fails during the processing step, it will not be counted and not receive a score; nor will it count against your daily submission limit. If you encounter problems with your submission file, your best course of action is to ask for advice on the Competition’s discussion forum.
If you are in the top 10 at the time the leaderboard closes, we will email you to request your code. On receipt of email, you will have 48 hours to respond and submit your code following the Reproducibility of submitted code guidelines detailed below. Failure to respond will result in disqualification.
To be eligible for cash prizes, 1st, 2nd, or 3rd on the final leaderboard will release their top solutions under an open source license for ongoing use and learning.
If two solutions earn identical scores on the leaderboard, the tiebreaker will be the date and time in which the submission was made (the earlier solution will win).
The winners will be paid via bank transfer, PayPal, or other international money transfer platform. International transfer fees will be deducted from the total prize amount, unless the prize money is under $500, in which case the international transfer fees will be covered by Zindi. In all cases, the winners are responsible for any other fees applied by their own bank or other institution for receiving the prize money. All taxes imposed on prizes are the sole responsibility of the winners. The top 3 winners or team leaders will be required to present Zindi with proof of identification, proof of residence and a letter from your bank confirming your banking details.Winners will be paid in USD or the currency of the competition. If your account cannot receive US Dollars or the currency of the competition then your bank will need to provide proof of this and Zindi will try to accommodate this.
Payment will be made after code review and sealing the leaderboard.
You acknowledge and agree that Zindi may, without any obligation to do so, remove or disqualify an individual, team, or account if Zindi believes that such individual, team, or account is in violation of these rules. Entry into this competition constitutes your acceptance of these official competition rules.
Zindi is committed to providing solutions of value to our clients and partners. To this end, we reserve the right to disqualify your submission on the grounds of usability or value. This includes but is not limited to the use of data leaks or any other practices that we deem to compromise the inherent value of your solution.
Zindi also reserves the right to disqualify you and/or your submissions from any competition if we believe that you violated the rules or violated the spirit of the competition or the platform in any other way. The disqualifications are irrespective of your position on the leaderboard and completely at the discretion of Zindi.
Please refer to the FAQs and Terms of Use for additional rules that may apply to this competition. We reserve the right to update these rules at any time.
A README markdown file is required
It should cover:
Your code needs to run properly, code reviewers do not have time to debug code. If code does not run easily you will be bumped down the leaderboard.
Consequences of breaking any rules of the competition or submission guidelines:
Monitoring of submissions