Inspiration

All of us in the group are passionate about learning how to utilize Artificial Intelligent systems in real-world applications, therefore, we picked this project.

What it does

In real world, we do not always have access to labeled datasets. Can machine learning work for unlabeled datasets as well? Self-supervised learning is a technique to achieve this. In our project, we learned to train a simple self-supervised model on images, train the encoder over our data, and visualize embeddings to show that they are linearly separable.

How we built it

We used Pytorch to implement our Neural Net and Matplotlib for visualizing the results.

Challenges we ran into

Most of us in the group were very new to Machine Learning. Therefore, it was quite difficult for us to even grasp the logic and the syntax of what we were trying to write.

Accomplishments that we're proud of

We learned a lot of new concepts very quickly and figured out a bulk of how the code works. We also brainstormed and successfully wrote our own implementations for most of the methods.

What we learned

We learned about the concept of self-supervised learning and how to implement a simple model based on it.

What's next for Learning By Observation

We gained a lot of knowledge from this experience and ventured outside our comfort zone. We would all love to work on future Machine Learning projects similar to this one!

Built With

Share this project:

Updates