Model Search来了! 谷歌开源最优ML模型新平台

2月19日,谷歌宣布发布搜索模型Model Search,这是一个新开源平台,旨在帮助研究人员更高效、自动地开发机器学习模型。Model Search不针对某个特定域,它足够灵活,能够找出最适合给定数据集和问题的架构,同时最小化编程时间和计算资源。
Model Search入口:
https://github.com/google/model_search
一个AI模型的成功往往取决于它在不同工作量下的表现,要设计一个可以很好普及的模型是极具挑战性的。近年来,AutoML算法的出现取代了手工试验,对研究人员帮助巨大。神经架构搜索 (NAS) 等技术利用强化学习、进化算法和组合搜索等算法,基于给定搜索空间构建神经网络。在恰当的设置下,这些技术找到的神经网络架构优于手动设计的网络架构。

然而这些算法往往计算量大,需要数千个模型来训练。而且,它们探索的搜索空间是域特定的,无法很好地实现跨域迁移。比如在图像分类领域中,传统 NAS 技术搜索两个不错的构造块卷积和下采样,然后遵循惯例创建完整的网络。

很多时候在某一领域使用机器学习得到了效果很好的模型,但是在另一个领域使用该模型则不一定适用,而且通常需要大量的专业知识。正是由于受到这样的限制,才有了AutoML技术的发展。

AutoML的本质工作是将各个过程的方法进行选择、组合、优化。它主要依赖以下两个技术:
  • 迁移学习(transfer learning)——运用一种神经网络,处理其他相似任务,比如一个训练的差不多的CNN,可以识别猫也可以稍加再次训练识别红绿灯,这个对模型和数据的要求都较高。
  • 神经架构搜索——之前的AutoML用的是增强学习(迭代)+RNN生成的方法,实际上针对的是CNN的网络结构,用深度学习调参来训练确定网络构架。
但是AutoML也存在如下问题:由于我们通常并不知道所优化的参数和预期效果之间是什么样的显示表达,所以目标函数形式未知;由于可能的组合方式太多,所以搜索空间大;正是由于组合方式太多,而且每一个组合都需要从头做数据预处理,特征处理,模型训练等操作,所以函数计算代价大。
可喜的是,ML模型平台Model Search有望克服这些缺陷。
Model Search框架基于TensorFlow构建,既可以在一台机器上运行,也可以在多台机器上运行。Model Search系统包含多个训练器、一种搜索算法、一种迁移学习算法和一个存储多种评估模型的数据库。
模型以自适应和异步的方式运行多种机器学习模型(采用不同架构和训练方法)的训练和评估实验。每个训练器单独执行训练时,所有训练器共享从实验中获得的知识。
在每轮的第一步,算法查找所有已完成的试验,并决定下一步尝试什么,之后算法找到的最佳架构上稍作变形,将生成的模型分配回训练器。

模型搜索示意图说明了分布式搜索和集成。每个训练器独立运行,以训练和评估一个给定的模型。搜索结果会与搜索算法共享,并存储在搜索算法中。S是训练和验证示例的集合,A是训练和搜索过程中使用的所有候选示例。

为了进一步提高效率和准确性,模型搜索在实验中使用了迁移学习。例如,它使用知识精炼和权分担值从先前训练过的模型中获得一些变量,这使训练速度更快,同时有可能发现更好的架构。
在模型搜索运行之后,用户可以比较搜索过程中发现的许多模型。他们也可以创建自己的搜索空间来定制模型中的结构元素。
模型在多次实验中演变的例子,每种颜色代表一种不同类型的架构组件。
谷歌称在一次内部实验中,Model Search以最少的迭代改进了生产模型,尤其是在关键字识别和语言识别领域。它还设法找到了一个适合于在CIFAR-10开源图像数据集上进行图像分类的架构。
谷歌研究工程师Hanna Mazzawi和研究科学家Xavi gonzalez在博客中写道:“我们希望Model Search为机器学习模型探索提供一个灵活的、和领域无关的框架。在已知领域的知识之上,我们相信当提供由标准构建块组成的搜索空间时,Model Search足够强大,可以在研究过的问题上构建最先进的模型。”

ref:

https://venturebeat.com/2021/02/19/googles-model-search-automatically-optimizes-and-identifies-ai-models/

https://ai.googleblog.com/2021/02/introducing-model-search-open-source.html

Illustration by Thierry Fousse from Icons8

-The End-
(0)

相关推荐