version control tool
dvc-and-git-for-data-science.html
Our modern world runs on software and data, with Git - a version control tool we track and manage the different changes and versions of our software. Git is very useful in every programmer's work. It is a must-have tool for working in any software-related field, that includes data science to machine learning. What about the data and the ML models we build? How do we track and manage them?
Fundamentals of Data Versioning You Must Know
Fundamentally, every possible way of changing datasets and the way we process our datasets (which naturally involves changing our code) represents an "experiment", and we want to keep track of every "experiment" we do. We need to manage versions of the data that were used to TRAIN, VALIDATE, and TEST ML models along with the ML models themselves. Data versioning means recording a specific moment across the evolution of data through a specific version number. This process in machine learning is valuable because the necessity of rolling back to a specific situation that brought us to the creation of a specific model cannot be overstated. Briefly and practically, to be able to reconstruct our project to a specific point in time, we must maintain the record of three objects: The code, the data, and the model.
Model Versioning: Reduce Friction. Create Stability. Automate.
The research and development (R&D) phase of building an AI model to address a business problem is characterized by rapid exploration and iteration. Everything is on the table and experimentation is encouraged, from understanding how to frame the problem, to determining how to most effectively use the data on hand, to discovering the model architecture with the best performance. In stark contrast to this, the operationalization phase of AI model development requires that the model be completely characterized, produce reproducible results, and be stable for integration in automation processes. Model versioning best practices and version control tools are essential to successfully navigating and overcoming this gap between R&D and production engineering. The practice of version control is nothing new.