My first time Hackathon experience — Part I

Naethreepremnath
Python’s Gurus
Published in
4 min readMay 5, 2024

However scary it sounds, there is no denying that participating in hackathons improves knowledge and also helps keeping in touch with real word applications of machine learning.

Photo by Azamat E on Unsplash

When I was given the opportunity to join a team at my university for my first ever hackathon, there was no doubt in my mind, I said YES! It was the first time for all my teammates as well, so we had no high expectations but we wanted to give our absolute best. It was called “Mini Hackathon” and it was organized by the Stat Circle of University of Colombo in collaboration with Octave as a part of the 2nd International Conference in Data Science in Sri Lanka (ICDS 2023). It was huge platform and we knew we wanted to prepare well.

After few sessions in what could be expected in the hackathon, we started revising through the steps in building a machine learning model. Here’s what I did:

  • Youtube Videos

Youtube videos is where I started exploring machine learning. I watched some videos regarding data pre-processing and feature engineering. I also started exploring into machine learning algorithms. The channel ‘StatQuest with Josh Starmer’ helped me understand the basics of each algorithm in a not so boring way. It is important for you to understand what happens behind the scenes of an algorithm and why we use them. Blindly just memorizing them WILL DEFINETELY NOT HELP!

  • Kaggle Notebooks

Once I had the basics in mind, I was eager to learn how to apply them. Since I had already some experience with working on R and Python, I started looking through some popular datasets and the kaggle notebooks under them. For most of the datasets on Kaggle, you can find notebooks in which some users have already done their analysis for the solution. By choosing a dataset and exploring all the notebooks under them, you can understand how one problem can have many solutions or different perspectives, but at the end the model you build should have a good accuracy.

Few examples of popular datasets where you can start are: Titanic, Red Wine Quality, Credit Card Fraud Detection

That’s all that I did. I now had an understanding about the steps I needed to follow. It was the Day of the Preliminary Round. It was supposed to be a 24-hour hackathon and our team was ready. We received the dataset and the problem. We took about 30 minutes to read the problem, understand the dataset and divide the parts.

We spent almost 7 hours doing the data-preprocessing, EDA and feature engineering. As the saying goes “You can’t build a great building on a weak foundation”, we made sure we were extra careful before we started model building. After what seemed like forever, my team mates started building the models while I started making the report. At the end of the hackathon, a report should be submitted including findings from our analysis and the solutions to the questions asked.

My teammates built the models and XGBoost came on top. We had 3 chances to submit our model to Kaggle, so we decided to take a chance and submit it. We got a score of 0.40436 but we were at second place. We knew that other teams were yet to submit, so we pushed harder.

We started tuning the parameters of the model to get better results, but nothing worked. Suddenly I remembered learning that sometimes doing a transformation on the response like log or sqrt, can improve the model. Upon further reading, we realized that we had overlooked the fact that our response was indeed skewed. So, we did a log transformation on the response and fitted the model. We had about 6 more hours to go, we were sleep deprived and tired but we knew this model should be better than our previous.

We submitted and to our relief we jumped to first place with a score of 0.33455. Phew! We had done it!

While my hardworking teammates caught on some sleep, I completed the report and I too finally went to take a power nap. We woke up when there were 2 more hours to go, we were still on top of the leaderboard! We submitted our report and code. We knew that the leaderboard scores might change since the scores will be calculated on unseen data. But we had confidence in our model.

The time came when our final scores were published. We received a score of 0.33167 which was even better than what we anticipating and we were in FIRST PLACE. We got selected to the semifinals and do you want to know how we did?

Stay tuned for part 2 of my exciting first time hackathon experience!

P.S. You can also find the report we submitted using this link: Report

Python’s Gurus🚀

Thank you for being a part of the Python’s Gurus community!

Before you go:

  • Be sure to clap x50 time and follow the writer ️👏️️
  • Follow us: Newsletter
  • Do you aspire to become a Guru too? Submit your best article or draft to reach our audience.

--

--

Naethreepremnath
Python’s Gurus

BSc(Hons) in Data Science, University of Colombo (Reading) | Public Speaker | Writer