This article provides the motivation and overview of the Collective Knowledge framework (CK or cKnowledge). The CK concept is to decompose research projects into reusable components that encapsulate research artifacts and provide unified application programming interfaces (APIs), command-line interfaces (CLIs), meta descriptions and common automation actions for related artifacts. The CK framework is used to organize and manage research projects as a database of such components. Inspired by the USB "plug and play" approach for hardware, CK also helps to assemble portable workflows that can automatically plug in compatible components from different users and vendors (models, datasets, frameworks, compilers, tools). Such workflows can build and run algorithms on different platforms and environments in a unified way using the universal CK program pipeline with software detection plugins and the automatic installation of missing packages. This article presents a number of industrial projects in which the modular CK approach was successfully validated in order to automate benchmarking, auto-tuning and co-design of efficient software and hardware for machine learning (ML) and artificial intelligence (AI) in terms of speed, accuracy, energy, size and various costs. The CK framework also helped to automate the artifact evaluation process at several computer science conferences as well as to make it easier to reproduce, compare and reuse research techniques from published papers, deploy them in production, and automatically adapt them to continuously changing datasets, models and systems. The long-term goal is to accelerate innovation by connecting researchers and practitioners to share and reuse all their knowledge, best practices, artifacts, workflows and experimental results in a common, portable and reproducible format at https://cKnowledge.io .
翻译:本篇文章提供了集体知识框架(CK或Cnowledge)的动力和概览。CK概念是将研究项目分解成可重新使用的组件,这些组件包括研究文物,并提供统一的应用程序编程接口(APIs)、指令-线接口(CLIs)、元描述和相关艺术品的共同自动化行动。CK框架用于组织和管理作为这些组成部分数据库的研究项目。在USB硬件“插头和游戏”方法的启发下,CK还帮助装配便携式工作流程,这些工作流程可以自动插入不同用户和供应商(模型、数据集、框架、编译员、汇编员、工具)的兼容组件(模型、数据集、框架、编译员和工具)的兼容组件。这些工作流程可以统一地在不同平台和环境上建立和运行算法,使用通用的CK程序管道,使用软件检测插件和自动安装缺失的软件包。本文章介绍了一些工业项目,模块CK方法得到了成功验证,以便实现自动化基准、自动调整和共同配置的软件和硬件,用于机器学习(ML)和人工智能智能(AI),其速度、精度、精度、精度、精度、精度、精度、体、规模和速度、规模和速度比力和速度化等数据格式化文件的流程框架,还有助于在不断更新过程中,在不断更新的流程中,在不断更新的流程中,在不断更新过程中,将最佳的流程和再利用中,将最佳的流程和再利用中,在不断进的流程中,将最佳的流程和再利用。