Image Credit: Ludwig
I recently started a new newsletter focus on AI education and already has over 50,000 subscribers. TheSequence is a no-BS( meaning no hype, no news etc) AI-focused newsletter that takes 5 minutes to read. The goal is to keep you up to date with machine learning projects, research papers and concepts. Please give it a try by subscribing below:
If you follow this blog you know I am a fan of the Ludwig open source project. Initially incubated by Uber and now part of the Linux AI Foundation, Ludwig provides one of the best low-code machine learning(ML) stacks in the current market. Last week, Ludwig’s 0.4 was open sourced and includes a set of cool capabilities that could make it even a stronger fit for real world ML solutions.
What is Uber Ludwig?
Functionally, Ludwig is a framework for simplifying the processes of selecting, training and evaluating machine learning models for a given scenario. Think about configuring rather than coding machine learning models. Ludwig provides a set of model architectures that can be combined together to create an end-to-end model optimized for a specific set of requirements. Conceptually, Ludwig was designed based on a series of principles:
- No coding required: no coding skills are required to train a model and use it for obtaining predictions.
- Generality: a new data type-based approach to deep learning model design that makes the tool usable across many different use cases.
- Flexibility: experienced users have extensive control over model building and training, while newcomers will find it easy to use.
- Extensibility: easy to add new model architecture and new feature data types.
- Understandability: deep learning model internals are often considered black boxes, but we provide standard visualizations to understand their performance and compare their predictions.
A Declarative Experience for Everything ML
Ludwig’s trajectory is focusing on enabling configuration-based, declerative models to interact with the top ML stacks in the current market. From that perspective, Ludwig adds a layer of simplicity and a consistent experience for data science teams looking to leverage the best-of-breed ML frameworks in their solutions.
Image Credit: Ludwig
The focus of new release of Ludwig has been to streamline declarative models for MLOps practices. From that perspective, Ludwig 0.4 includes a set of capabilities that could simplify the implementation of MLOps pipelines in real world solutions. Let’s review a few:
1) Ludwig on Ray
By far my favorite feature of this release was the integration with the Ray platform. Ray is one of the most complete stacks for highly scalable ML training and optimization processes. In Ludwig 0.4, data scientists can scale training workloads from a single laptop to a large Ray cluster using a few lines of configuration code.
2) Hyperparameter Search with Ray Tune
Ray Tune is a component of the Ray platform that allow distributed hyperparameter search in large clusters of nodes. Ludwig 0.4 integrates Ray Tune allowing distributed hyperparameter search algorithms such as Population-Based Training, Bayesian Optimization, and HyperBand among others.
3) Declarative Tabular Models with TabNet
TabNet is one of the top deep learning stacks for tabular data which incorporate cutting edge features such as attention architectures. The new release of Ludwig enables a declarative experience for tabular models by adding a new TabNet combiner which also includes tabular feature transformation and attention mechanisms to achieve state-of-the-art performance.
4) Experiment Tracking and Model Serving with MLflow
MLflow is rapidly becoming one of the most popular platfoms for ML experiment tracking and model serving. Ludwig 0.4 enables MLflwo-based experiment tracking with a single command line. Additionally, the new version of Ludwig can deploy a ML model to the MLflow registry using a simple command line statement.
Original. Reposted with permission.