机器学习正在从艺术和科学转变为可供每个开发人员使用的技术。在不久的将来,每个平台上的每个应用程序都将包含训练有素的大小单双倍投公式,以编码开发人员无法创作的基于数据的决策。这提出了一个重要的工程挑战,因为目前数据科学和建模在很大程度上与标准软件开发过程脱钩。这种分离使得在应用程序内部的机器学习能力不必要地变得困难,并且进一步阻碍了开发人员将MLin置于首位。在本文中,我们介绍了ML .NET,这是一个在过去十年中在Microsoft开发的框架,用于应对在大型软件应用程序中轻松发布机器学习大小单双倍投公式的挑战。我们提出了它的架构,并阐明了形成它的应用程序需求。具体而言,我们引入了DataView,它是ML .NET的核心数据抽象,它可以有效地,一致地捕获完整的预测管道,并在训练和推理生命周期中进行。我们结束了论文,对ML .NET进行了令人惊讶的有利的性能研究,与更多的接受者相比,并讨论了一些经验教训。
translated by 谷歌翻译
大小单双倍投公式 Data compression is a popular technique for improving the efficiency of data processing workloads such as SQL queries and more recently, machine learning (ML) with classical batch gradient methods. But the efficacy of such ideas for mini-batch stochastic gradient descent (MGD), arguably the workhorse algorithm of modern ML, is an open question. MGD's unique data access pattern renders prior art, including those designed for batch gradient methods, less effective. We fill this crucial research gap by proposing a new lossless compression scheme we call tuple-oriented compression (TOC) that is inspired by an unlikely source, the string/text compression scheme Lempel-Ziv-Welch, but tailored to MGD in a way that preserves tuple boundaries within mini-batches. We then present a suite of novel compressed matrix operation execution techniques tailored to the TOC compression scheme that operate directly over the compressed data representation and avoid decompression overheads. An extensive empirical evaluation with real-world datasets shows that TOC consistently achieves substantial compression ratios by up to 51x and reduces runtimes for MGD workloads by up to 10.2x in popular ML systems.
translated by 谷歌翻译