LGJan 31, 2023

CMLCompiler: A Unified Compiler for Classical Machine Learning

arXiv:2301.13441v31 citationsh-index: 101
Originality Incremental advance
AI Analysis

This addresses performance and portability issues for practitioners deploying CML and hybrid CML-DL pipelines in production applications.

The paper tackles the inefficiency and lack of unified frameworks for classical machine learning (CML) inference, presenting CMLCompiler, a unified compiler that achieves speedups of up to 4.38x on CPU, 3.31x on GPU, and 5.09x on IoT devices compared to state-of-the-art solutions.

Classical machine learning (CML) occupies nearly half of machine learning pipelines in production applications. Unfortunately, it fails to utilize the state-of-the-practice devices fully and performs poorly. Without a unified framework, the hybrid deployments of deep learning (DL) and CML also suffer from severe performance and portability issues. This paper presents the design of a unified compiler, called CMLCompiler, for CML inference. We propose two unified abstractions: operator representations and extended computational graphs. The CMLCompiler framework performs the conversion and graph optimization based on two unified abstractions, then outputs an optimized computational graph to DL compilers or frameworks. We implement CMLCompiler on TVM. The evaluation shows CMLCompiler's portability and superior performance. It achieves up to 4.38$\times$ speedup on CPU, 3.31$\times$ speedup on GPU, and 5.09$\times$ speedup on IoT devices, compared to the state-of-the-art solutions -- scikit-learn, intel sklearn, and hummingbird. Our performance of CML and DL mixed pipelines achieves up to 3.04x speedup compared with cross-framework implementations. The project documents and source code are available at https://www.computercouncil.org/cmlcompiler.

Foundations

The foundational work for this paper's niche, ranked by how specifically the neighbourhood builds on it — not by global fame.

Your Notes