arXivDaily arXiv每日学术速递 周一至周五更新
arXiv周末暂无论文更新,休息一下吧,周末愉快~~
arXiv 2305.08770cs.DBcs.LGcs.PL
收藏

事务性 Python 用于持久化机器学习:愿景、挑战与可行性

Transactional Python for Durable Machine Learning: Vision, Challenges, and Feasibility

University of Illinois at Urbana-Champaign(伊利诺伊大学厄巴纳-香槟分校)

Supawit Chockchowwat, Zhaoheng Li, Yongjoo Park

AI总结:

本文提出事务性 Python 愿景,通过非侵入式对象级监控提供持久性、原子性、可复制性和时间版本化(DART),无需修改代码,开销仅为 1.5%–15.6%。

摘要:

在机器学习(ML)中,Python 作为一种便捷的抽象,用于处理 PyTorch、scikit-learn 等关键库。然而,与数据库管理系统(DBMS)不同,Python 应用程序可能会因机器故障或人为错误而丢失重要数据,如训练好的模型和提取的特征,导致时间和资源的浪费。具体而言,它们缺乏四个基本属性,这些属性本可以使机器学习更加可靠和用户友好——持久性、原子性、可复制性和时间版本化(DART)。本文提出了事务性 Python 的愿景,通过在对象级别非侵入式地监控应用程序状态,并确定足以重建整个应用程序的最小信息量,无需对用户程序或 Python 内核进行任何代码修改即可提供 DART。我们对使用公开的 PyTorch 和 scikit-learn 应用程序的概念验证实现的评估表明,DART 可以以 1.5% 至 15.6% 的开销提供。

英文摘要:

In machine learning (ML), Python serves as a convenient abstraction for working with key libraries such as PyTorch, scikit-learn, and others. Unlike DBMS, however, Python applications may lose important data, such as trained models and extracted features, due to machine failures or human errors, leading to a waste of time and resources. Specifically, they lack four essential properties that could make ML more reliable and user-friendly -- durability, atomicity, replicability, and time-versioning (DART). This paper presents our vision of Transactional Python that provides DART without any code modifications to user programs or the Python kernel, by non-intrusively monitoring application states at the object level and determining a minimal amount of information sufficient to reconstruct a whole application. Our evaluation of a proof-of-concept implementation with public PyTorch and scikit-learn applications shows that DART can be offered with overheads ranging 1.5%--15.6%.

机构、总结、中文摘要均由AI分析而来,可能存在错误,请以论文正文为准。

↑