谷歌|谷歌开源AI模型“搜索引擎”,NLP、CV都能用

萧箫 发自 凹非寺量子位 报道 | 公众号 QbitAI
好消息 , 谷歌将AutoML算法库开源了!
这个名为“模型搜索”(Model Search)的平台 , 不仅可以用多个AutoML算法自动写出你想要的AI模型 , 还能帮你选出写得最好的那个 。
谷歌|谷歌开源AI模型“搜索引擎”,NLP、CV都能用
文章插图

最重要的是 , 各个领域都能用 。
也就是说 , 以往只支持NLP、图像分类等等单一领域模型搜索的AutoML算法 , 现在被整合到了一个平台上 , 可以帮你构建任何AI模型 。
现在 , 无需再重新设计参数、或反复微调 , “AI设计师”就能帮你写出想要的模型 。
“模型搜索”是个什么平台
此前 , AutoML算法已经被应用到了各个领域 , 用来减轻神经网络设计专家的负担 。
谷歌|谷歌开源AI模型“搜索引擎”,NLP、CV都能用
文章插图

这种算法 , 目的是让AI来设计神经网络 , 自动对网络深度、层类型、结构、优化算法等因素进行合理搭配 , 效果通常比人工直接设计更好 。
然而 , 这种由AI来设计AI模型的方法 , 会面临两个问题 。
其一 , 这些算法通常只能针对某一特定领域 , 无法被应用到其他领域中 。
谷歌|谷歌开源AI模型“搜索引擎”,NLP、CV都能用
文章插图

例如针对NLP的AutoML算法 , 就无法设计出图像分类的AI模型 。
其二 , 计算量很大 。
之前的NAS和PNAS算法 , 往往需要训练数千个模型 , 才能找到效果最好的 。
谷歌|谷歌开源AI模型“搜索引擎”,NLP、CV都能用
文章插图

针对这两个问题 , 谷歌现在推出了“模型搜索”开源平台 , 致力于解决它们 。
谷歌|谷歌开源AI模型“搜索引擎”,NLP、CV都能用
文章插图

这个系统由多个训练器(trainer)、1个搜索算法、1个迁移学习算法和1个包含多种评估模型的数据库构成 。
谷歌|谷歌开源AI模型“搜索引擎”,NLP、CV都能用
文章插图

过程中 , 每个训练器都会独立地构建模型、进行试验 , 但这些训练器能共享数据 , 并采用横向搜索 , 决定下一步尝试什么样的模型 。
“模型搜索”能根据一组预定义模块 , 来构建神经网络模型 , 每个模块包含一个经典微结构 , 包括LSTM、ResNet或是Transformer中的某些层等等 。
谷歌|谷歌开源AI模型“搜索引擎”,NLP、CV都能用
文章插图

这种微结构的模式 , 也减少了搜索规模 , 因为它探索的是这些模型的结构 , 而非更详细的基本部分 。
而为了进一步提高效率和准确性 , 这一算法还能在训练器完成各种实验时 , 进行迁移学习 。 主要通过知识提取和参数分配两种方法 。
谷歌|谷歌开源AI模型“搜索引擎”,NLP、CV都能用
文章插图

通过知识提取 , 新模型可以从高性能模型中借鉴损失函数 , 提高自身准确性;而通过参数分配 , 新模型采用之前训练模型中的部分参数 , 并初始化剩余的参数 , 就能训练得更快 。
谷歌|谷歌开源AI模型“搜索引擎”,NLP、CV都能用
文章插图

在逐渐迭代的过程中 , 最好的模型就被“搜索”出来了 。
谷歌表示 , “模型搜索”是个具有自适应性、贪婪性、而且比强化学习算法收敛速度更快的算法 。
这个算法 , 目前具有如下功能:
可以在数据上运行多个AutoML算法 , 可以自动搜索合适的模型结构、模型融合方法 , 并选择最佳模型 。
可以比较在搜索时发现的不同模型;
可以自行设计特殊的神经网络层并应用 。
目前 , “模型搜索”支持Tensorflow框架 。
谷歌|谷歌开源AI模型“搜索引擎”,NLP、CV都能用
文章插图

也就是说 , 各模块都能实现任何以张量为输入的函数 。
比人类设计得好 , 比PNAS更高效
经过实验 , “模型搜索”平台搞出来的AI模型 , 确实还不错 。
作者们用“模型搜索”平台 , 试着写了个语音AI模型 , 主要功能是关键字检测和语言识别 。
下图中 , 实线是AI写出来的模型迭代精度 , 虚线则是此前人工设计出的SOTA模型 。
谷歌|谷歌开源AI模型“搜索引擎”,NLP、CV都能用
文章插图

显然 , 无论是最小迭代次数、还是最后的迭代精度 , “模型搜索”平台用AI写出的模型 , 都比人工设计的要好得多 。
也就是说 , 设计所用的参数量更少了(相比于人工设计的31.5万 , AI只需要18.4万) , 精度反而还上升了 。
那么 , 这个“模型搜索”框架的搜索效果 , 相比于其他用AI写AI模型的搜索算法 , 哪个效果更好?
作者们用CIFAR-10数据集试了试图像分类模型 。
谷歌|谷歌开源AI模型“搜索引擎”,NLP、CV都能用
文章插图

测试发现 , 用AutoML尝试写了209个模型后 , 最好的模型就已经达到了91.83%的精确度 。
而此前 , NasNet需要尝试5807次、PNAS需要尝试1160次 , 才能达到相同的精度 。
也就是说 , 用这个平台设计的AI模型 , 不仅能达到在某些领域达到比人类设计更好的效果 , 还比其他“AI设计师”速度更快 。
不想辛苦调参的话 , 这绝对是个非常理想的模型设计平台了 。
不包含全部AutoML算法
所以 , 谷歌当真就把自己之前的收费项目开源了?
不不不 。
更高级的AutoML算法 , 目前还是要收费的 。
这是个名为AutoML Tables的项目 , 无需写代码 , 它就能帮你自动构建和部署最先进的机器学习模型 。
谷歌|谷歌开源AI模型“搜索引擎”,NLP、CV都能用
文章插图

而性能最优的AutoML算法 , 目前都包含在这里面了 。
目前 , 谷歌已经将AutoML、MLOps、AI Platform整合到一起 , 成为了一个更大的AI Platform平台 。
当然 , 也是要付费的 。
也就是说 , 目前开源的这个“模型搜索”平台 , 只包含一部分AutoML算法 。
作者介绍
Hanna Mazzawi , 谷歌研究工程师 , 研究方向是机器学习、算法设计和分析、数学软件 。
谷歌|谷歌开源AI模型“搜索引擎”,NLP、CV都能用
文章插图

Xavi Gonzalvo , 硕博均毕业于西班牙拉蒙尤以大学(Ramon Llull University) , 目前在谷歌任研究科学家 , 从事机器智能相关的工作 。
如果想快速写出需要的AI模型 , 可以上手这个项目了~
项目地址: https://github.com/google/model_search
【谷歌|谷歌开源AI模型“搜索引擎”,NLP、CV都能用】参考链接: https://cloud.google.com/automl-tableshttps://ai.googleblog.com/2021/02/introducing-model-search-open-source.html


    推荐阅读