由机器之心报告。
编辑:Egg Sauce、Du Wei
机器学习在许多领域都取得了巨大的成功,大量高质量的机器学习模型正在开发中。 但与此同时,对于普通用户来说,要获得适合他们任务的模型并不容易,更不用说从头开始构建一个新模型了。 南京大学周志华教授提出的Learnware范式,通过模型+规范的思想,构建了Learnware市场(现称为Learnware基础系统),允许用户根据自己的需求统一选择和部署模型。 如今,学术软件范式迎来了第一个开源基础平台——北明武。
在经典的机器学习范式中,为一项新任务从头开始训练一个高性能模型需要大量的高质量数据、专家经验和计算资源,这无疑是费时、费力、成本高昂的。 此外,复用现有模型还存在许多问题,例如难以使特定的训练模型适应不同的环境,以及在逐步改进训练模型的过程中可能出现灾难性遗忘。
不仅如此,数据隐私和所有权问题还阻碍了开发人员之间的经验共享,并限制了大型模型在许多数据敏感场景中发挥作用的能力。 事实上,大多数研究都是针对这些问题单独进行的,而且大多数问题在实践中往往同时发生并相互作用。
此外,在自然语言处理和计算机视觉领域取得显著成就的主流大规模模型开发范式并没有解决上述问题。 由于计划外任务和场景的无限性、环境的千变万化、灾难性的遗忘、极高的资源需求、隐私问题、本地化部署的需要以及个性化和定制化的需求,为每个潜在任务构建一个大模型显然是不切实际的。
面对这些问题,南京大学周志华教授在2016年提出了学习软件的概念,并利用一种新的范式,基于学习软件求解机器学习任务。 此外,Learnware范式首次提出建立一个基础平台——Dock系统,以容纳全球开发者自发提交的机器学习模型,然后根据潜在用户的任务需求,利用模型能力解决新的任务。
工件范式的核心设计是,对于来自不同任务的任意结构的高质量模型,工件是一个统一的基本单元,其中包含模型本身和描述模型特征的规范。 愿意分享的开发者可以自由提交模型,Hardware Dock 系统协助生成协议形成学习片段并存储在 Learning Dock 中,让开发者在这个过程中不需要向 Hardware Dock 透露自己的训练数据。 未来,用户可以向学习软件基础系统提交需求,借助学习软件系统,通过搜索和复用学习部分来解决自己的机器学习任务,用户不能向学习软件系统透露自己的数据。
为了建立学术软件范式的初步科研平台,周志华教授团队近日构建了北明武,这是第一个用于未来工件范式研究的开源工件基座系统。相关**已经出版,长达37页。
从技术角度来看,得益于可扩展的系统和引擎架构设计、广泛的工程实现和优化、全流程基线算法的集成、算法基础评估场景的构建,北英武系统不仅为未来学习软件相关算法和系统的研究提供了基础,也为托管大量学习软件、建立学习软件、建立学习软件提供了可能性。学习软件生态系统。
*书名:北明武:一个学习软件扩展坞系统
*地址:北冥界主页:
北明坞开源仓库:
核心引擎开源存储库:
在本文中,研究人员的贡献可以总结如下:
基于学习范式,为用户解决新任务简化模型开发:数据高效,无需专业知识,原始数据不泄露;
提出了一种完整、统一、可扩展的系统引擎架构设计。
开发了具有统一用户界面的开源学术软件基础系统;
不同场景的全流程基线算法的实现与评估。
工件范式概述
Learnware范式由周志华教授团队于2016年提出,并于2024年在《学习软件:小模型做大》中进行了总结和进一步设计。 下面的图 1 说明了此范式的简化流程:对于任何类型和结构的高质量机器学习模型,其开发人员或所有者都可以自发地将经过训练的模型提交到 Artifact Pedestal System(以前称为 Artifact Marketplace)。
如上所述,工件范式提出建立一个工件基座系统,统一容纳、组织和利用现有表现良好的模型,从而统一利用所有社区的努力来解决新的用户任务,并潜在地解决一些大家同时关心的重大问题,包括缺乏训练数据和训练技能, 灾难性遗忘、难以实现持续学习、开放世界中的数据隐私或专有、计划外的新任务,以及重复浪费培训造成的碳排放。
最近,范式及其核心思想越来越受到关注。 但关键问题和主要挑战是:鉴于工件基座系统可以容纳数千甚至数百万个模型,您如何识别和选择对新用户任务最有帮助的一个或多个工件组? 显然,将用户数据直接提交到系统中进行实验是昂贵的,并且会泄露用户的原始数据。
学术范式的核心设计在于规范,最近的研究主要基于简化核均值嵌入(rkme)协议。
虽然现有的理论和实证分析研究已经证明了基于协议的工件识别的有效性,但工件基础系统的实现仍然缺失,面临巨大挑战,这需要基于协议的新型模式设计来应对各种真实世界的任务和模型,并根据用户的任务需求统一搜索和复用大量工件。
研究人员构建了第一个工件基础系统 North Dock,以支持整个过程,包括提交、可用性测试、组织、管理、识别、部署和工件重用。
使用 North Dock 解决学习任务
基于学习对象范式的首次系统实现,Beiyingwu大大简化了为新任务构建机器学习模型的过程。 现在,我们可以按照工件范式的流程构建模型。 并得益于统一的学习结构、统一的架构设计和统一的用户界面,北兴武所有提交的模型都实现了统一识别和复用。
令人振奋的是,给定一个新的用户任务,如果 Underwood 拥有可以解决此任务的工件,用户只需几行**即可轻松获取并在其中部署高质量的模型,而无需大量数据和专业知识,也不会泄露自己的原始数据。
下面的图 2 是使用 North Underwood 解决学习任务的示例。
下面的图 3 说明了使用 North Dock 的整个工作流程,包括统计协议生成、工件识别、加载和重用。 基于工程实现和统一的接口设计,每个步骤都可以用一行键**实现。
据研究人员介绍,在求解学习任务时,基于北英武的学习对象范式的模型开发过程具有以下显著优势:
它不需要大量的数据和计算资源;
不需要重要的机器学习专业知识;
为各种模型提供系统。
1.简单的本地部署;
隐私保护:不泄露用户的原始数据。
目前,早期基于开源数据集构建的学术工件只有1100个,覆盖的场景数量较少,处理大量特定和看不见的场景的能力仍然有限。 基于可扩展的架构设计,北英武可作为学术对象范式的研究平台,为学术对象相关研究提供便捷的算法实现和实验设计。
同时,依托基础实现和可扩展架构支持,学术工件的不断提交和算法的不断改进,将不断增强系统解决任务的能力,增强系统复用现有训练有素的模型来解决超出开发者原有目标的新任务的能力。 未来,学习基地系统的不断演进,将使其能够响应越来越多的用户任务,而不会出现灾难性的遗忘,自然而然地实现终身学习。
北冥界设计
*第 4 部分描述了北哈迪斯系统的设计。 如图 4 所示,该系统由四层组成:工件存储、系统引擎、系统后端和用户界面。 本节首先对每一层进行概述,然后介绍基于规范设计的系统的核心引擎,最后介绍系统中实现的算法。
让我们从每个楼层的概述开始:
学习对象存储层。在北码头,工件以压缩包的形式存储。 这些软件包主要包括四类文件:模型文件、规范文件、模型执行环境依赖文件和学术配置文件。
这些项目包由项目数据库集中管理。 数据库中的工件表存储关键信息,包括工件 ID、存储路径和工件状态(例如未验证和已验证)。 该数据库为北英武后续核心引擎提供统一的接口,用于访问学习片段信息。
此外,可以使用SQLite(开发和实验室环境的简单设置)或PostgreSQL(建议在生产环境中进行稳定部署)来构建数据库,两者都使用相同的接口。
核心引擎层。为了保持《北冥世界》的简洁性和结构性,作者将核心组件和算法与大量的工程细节分开。 这些提取的组件现在以 Python 包的形式提供,这是 North Underworld 的核心引擎。
作为系统的核心,该引擎涵盖了工件范式中的所有流程,包括工件提交、可用性测试、组织、识别、部署和复用。 它独立于后端和前台运行,为工件相关任务和研究实验提供全面的算法接口。
此外,规范是引擎的核心组件,它从语义和统计的角度表示每个模型,并连接学习系统的所有重要组件。 除了开发人员提交模型时生成的规范外,引擎还可以利用系统知识为工件生成新的系统规范,从而增强工件的管理并进一步表征其功能。
与现有的模型管理平台(如Hugging Face)相比,Hugging Face被动地收集和托管模型,允许用户自己决定哪些模型能够做什么以及与任务的相关性,而Underworld使用其引擎通过新的系统架构主动管理学习工件。 这种主动管理并不局限于收集和存储,系统根据协议组织工件,可以根据用户的任务需求匹配相关工件,并提供相应的工件复用和部署方式。
核心模块的设计如下:
系统的后端层。为了实现北英武的稳定部署,笔者在核心引擎层的基础上开发了系统后台。 通过多模块的设计和大量的工程开发,北营武目前具备了稳定部署的能力,为前端和客户端提供了统一的后端应用接口。
为了保证系统的高效稳定运行,笔者在系统的后端层进行了多项工程优化,包括异步学习对象校验、跨多个后端节点的高并发、接口级权限管理、后端数据库读写分离、系统数据自动备份等。
用户界面层。为了方便北英武用户使用,作者开发了相应的用户界面层,包括基于Web的浏览器前端和命令行客户端。
基于 Web 的前端提供用户和管理员版本,具有各种用户交互和系统管理页面。 此外,它还支持多节点部署,以便顺利访问北码头系统。
命令行客户端与学习 python 包集成。 通过调用相应的接口,用户可以通过前端调用后端API,访问学习软件的相关模块和算法。
实验评估
在第 5 节中,作者构建了各种类型的基本实验场景,以评估用于规范生成、伪影识别和多路复用的基准算法。
数据实验
在各种数据集上,作者首先评估了识别和重用与工件系统中用户任务具有相同特征空间的工件的性能。 此外,由于**任务通常来自不同的特征空间,因此作者还评估了来自不同特征空间的工件的识别和重用。
同质案例。 在同构情况下,PFS 数据集中的 53 个存储充当 53 个唯一用户。 每个商店都利用自己的测试数据作为用户任务数据,并采用统一的功能工程方法。 然后,这些用户可以在基本系统中搜索与其任务具有相同特征空间的同类工件。
当用户没有注释数据或注释数据数量有限时,作者比较了不同的基准算法,所有用户的平均损失如图 6 所示。 左表显示,无数据方法比从市场上随机选择和部署一块要好得多; 右图显示,当用户的训练数据有限时,识别和复用单个或多个工件比用户的自训练模型更好。
异质性案例。 根据市场上学习部分与用户任务的相似性,异构案例可以进一步划分为不同的功能项目和不同的任务场景。
不同的特征工程场景:图 7 左侧显示的结果表明,即使用户缺少注释数据,系统中的工件也能表现出强大的性能,尤其是重用多个工件的 **erageensemble 方法。
不同的任务场景。 图 7 显示了用户训练模型的损失曲线和右侧的几种工件重用方法。 显然,在用户标注数据量有限的情况下,对异构片段进行实验验证是有益的,有助于更好地与用户的特征空间对齐。
图像和文本数据实验
此外,作者还在图像数据集上对系统进行了基本评估。
图 8 显示,当用户面临稀缺的注释数据或只有有限数量的数据(少于 2000 个实例)时,Artifact Pedestal System 可以产生良好的性能。
最后,作者在基线文本数据集上对系统进行了基本评估。 使用统一的特征提取器执行特征空间对齐。
结果如图 9 所示,同样,即使没有注释数据,通过伪影识别和重用实现的性能也与系统中最好的伪影相当。 此外,与从头开始训练模型相比,样本数量可以减少约 2000 个。
有关研究的更多详细信息,请参阅原文**。