Matt Ambrogi

Recurse Center Weekly Recap #9

I'm going to keep this one short.

Last Week

Last week I focused on two things:

  1. Getting into a few weeks of tinkering with machine learning projects
  2. Starting to practice algorithms problems everyday.

I made a good bit of progress.

On the ML front:

  • I learned how to take a trained model and put it inside a Flask API. I was able to clone a GitHub repo, make some changes, and put together a template app with a React frontend, Flask backend.
  • I spent a few days exploring different datasets and potential projects I could dive into - all focused on image classification.
  • I trained models that could detect coyotes, identify a type of fruit, and even identify diseases from chest x-rays.
  • I decided to dive into that last idea and build a prototype web app that a doctor might use to aid in diagnoses.
  • I feel I began to build out my practical understanding of things that I had previously only been familiar with in theory: why getting data and wrangling it is one of the biggest challenges in machine learning, how easy it is to fall into the trap of overfitting, what that even means, what hyper-parameter tuning looks like in practice, and much more.

On the algorithms front:

  • I started attending our DailyLeet code group and practicing at least one problem everyday.
  • I have a long way to go before I feel like I can quickly write clean solutions to a wide variety of problems. But starting felt good. I really enjoy these type of problems. They bring me back to a certain type of mental struggle that I haven't worked through much since college. It's one I missed, even if some days it's painful.

This coming week

I only have three weeks left at RC. I have a lot left that I want to tackle and I'm excited to continue diving in.

This coming week I have three goals:

  1. Continue daily algorithms practice. I want to not just do problems, but focus on learning underlying patterns.
  2. Wrap up my x-ray classification app. My focus here is improving the model's performance metrics.
  3. Start and finish one more model development project. I am going to do this by entering a Kaggle competition. I'm particularly interested in NLP and am planning to do a competition aimed at training a model which can identify real Tweets about natural disasters. I think the general pattern of 'is this chunk of text about x?' is an interesting one.

And that's all. After I wrap this up I'll reflect and jump into another project. If I'm really enjoying the ML work, I could see doing another project there. Otherwise, I'll probably jump into something with Go or Solidity - which are the last two languages I really want to get a taste of before picking one area to dive into a meatier project with.

- 1 toast