GSoC mlpack image

Organisation: mlpack

Project: Ready to use Models

Mentors: Ryan Curtin, Jeffin Sam and Kartik Dutt

Abstract

I was selected for google summer of code 2022 to work with mlpack on the project Ready to use models in mlpack. Mlpack is an intuitive, fast, and flexible C++ machine learning library with bindings to other languages. In recent years computer vision has taken many turns and at this point, it is at a mature stage that when you need to use say a classification model you don't need to construct the complete architecture on your own, you can just write a single line of code and it creates the complete pretrained model for you which is what I did and added multiple models with pretrained weights on imagenet.

Goal

The aim is to implement various pre-trained models ranging from very basic AlexNet to super complex models, including implementing different layers such as depthwise separable convolutions, inception layers, and residual layers. This project would fall under the idea: Ready to use models in mlpack, the pre-trained models will fall under the models repository, and layers will fall under the mlpack repository as a layer inside the artificial neural network (ANN) codebase.

Results

All the models that I proposed with pretrained weights with a lot of configuration are now available in the mlpack codebase. On the way, we faced and discovered small issues or implementation bugs which we corrected but we still face some issues with the parallelization of ANN layers and requires GPU support in the future to speed up, but I would like to thank Kartik because yes the format I choose for writing this is originally his and yes this is 100% inspired by his with little tweaks of mine.

g++ Contributions.cpp -o Contributions

I have divided my contributions according to the repositories and PR having this 👍 symbol in front of them was the core part of my projects others were mostly the ones that I picked up on the way but weren't mentioned in my project.

This repository was used to port weights for all the models from Pytorch using shubham1206agra / pretrained-models.pytorch in torch hub.

Final Thoughts

I loved the time I spent with mlpack and would like to thanks all my mentors for guiding me with the best practices and helping me out whenever I was stuck. I would keep contributing to the project and the community as a whole with the things I have learned and would continue to learn.

Ways to reach me

Gmail LinkedIn