Refactoring A Data Science Project Part 1 - Abstraction and Composition

ArjanCodes • October 8, 2021
Video Thumbnail

About

No channel description available.

Video Description

💡 Learn how to design great software in 7 steps: https://arjan.codes/designguide. This is the first part of a 3-part miniseries in which I refactor a hand-written digit recognition data science project based on the MNIST dataset to improve the software design so it's easier to reuse and adapt. In this first part I cover using abstract classes and protocols to better separate the various aspects of the application, and I talk about function composition as a generic solution to dealing with data pipelines. Links to Pytorch and Scikit learn functional composition tools: - https://pytorch.org/docs/stable/generated/torch.nn.Sequential.html - https://scikit-learn.org/stable/modules/generated/sklearn.pipeline.Pipeline.html Part 1: https://youtu.be/ka70COItN40 Part 2: https://youtu.be/Tx4AxbQNv3U 🎓 ArjanCodes Courses: https://www.arjancodes.com/courses/ 🔖 Chapters: 0:00 Intro 1:29 Explaining the code 6:41 About data science 7:35 Separating experiment tracking from the rest of the code 16:52 Improving data type consistency 19:44 Improving the way variables are handled 22:26 About function composition 29:03 Final thoughts #arjancodes #softwaredesign #python