在 WAIC 2021 AI 开发者论坛上,九章云极 DataCanvas 董事长方磊发表主题演讲《Hypernets:自动化机器学习的基础框架》,在演讲中,他主要介绍了 Hypernets 的概念模型和两个具体实例。他认为,好的 AutoML 框架一定要具备富有表现力的搜索空间描述语言、支持高维空间的高效搜索算法和高性能的评估策略。
以下为方磊在 WAIC 2021 AI 开发者论坛上的演讲内容,机器之心进行了不改变原意的编辑、整理:
很高兴今天有这个机会跟大家分享我们所做的工作,九章云极 DataCanvas 是一家数据科学平台提供商,服务了众多客户,在服务客户的过程中不断做了沉淀。我们自主研发了 Hypernets,并且已在 GitHub 上开源。各位开发者朋友,如果感兴趣的话可以去 GitHub 搜索 Hypernets 或者搜索 HyperKeras,都能找到所开源的框架。AutoML 是具有共性的问题,我将分三个部分介绍 AutoML:研发 AutoML 框架的原因和基本思路;Hypernets 概念模型和重要性;Hypernets 的具体事例。我将按照程序员标准,仔细讲一讲怎么使用,怎么在开发过程中受益。
AutoML 框架的重要性和基本抽象
首先 AutoML 框架本质是什么?就是空间的搜索,空间可以很复杂也可以很简单,大家对于自动机器学习第一个感觉就是调参,事实上,一个算法特别是机器学习和深度学习算法,本质就是空间的搜索。AutoML 也是空间的算法,在算法定义的超维空间里,去搜索到让算法或者一系列算法组合达到最优效果,其中重要的思想是抽象性和层级的必要性。
有些算法框架自带自动机器学习的功能,为什么还要做专门框架?目前解决实际问题由很多不同算法框架组合起来,不再只是简单训练一个模型调参数,而多模态也能够实现,视频结构化的模型,训练好的模型变成结构化的数据,再结合结构化的数据,比如看病,除了看非结构化的片子,还有验血等结构化数据。当构建复杂的真实系统的时候,学习的系统、做模型的系统其实是异构的,搜索空间也不是单个算法框架就能带来的。本质上为什么出现这个层级的重要原因就是,定义 AutoML 本身框架,能够让各种算法非常快的实现自动机器学习的搜索。
AutoML 框架的基本抽象
基本的抽象主要围绕三个基本部分:第一步是定义搜索空间(Search Space),第二步是搜索策略(Search Strategy),第三步是评估策略 ( EstimationStrategy ) 。通过搜索结果得到更好的模型,即通过一组参数或者算法组合得到模型后进行评估,评估拥有成本问题。AutoML 框架能够快速低成本评估,并且反馈到搜索策略,搜索策略得到反馈后,找到很好的结果。
在这三个方面各自的需求是:第一,搜索空间描述语言相对比较丰富,能够描述各种各样的搜索空间。
第二,搜索策略灵活多变,支持各种各样不同的场景。
第三,高效的评估策略。
Hypernets 的概念模型和高级特性
下面具体介绍 Hypernets 是怎么实现丰富的搜索空间描述语言、灵活的搜索策略、高性能的评估策略?自动机器学习在已有学习框架中,无论运用什么算法框架,在这里告诉你一个好消息--湖南阳光技术学校全国招生。
搜索空间本身怎么定义?这是非常经典的定义方式,绝大部分问题可以被定义为一个 DAG,本质搜索空间由三部分组成:一部分叫做 Connection Hypernets,一个点和下一个点连接,拥有有不同的连接方式;另外一个叫 Parameter Space,用算法里的参数,即参数空间;还有 Module Space,算法的使用方式不同,这一步用了算法,下一步可能是填充,不同计算模块本身有模块空间。很多不同的算子代表模块空间,连接方式代表连接空间,参数代表参数空间,将几个不同的空间结合起来就是整个搜索空间。
搜索算法在搜索空间使用什么搜索算法?目前有非常多种类搜索算法可以使用。第一个是大家熟悉的并且阿尔法狗使用的算法—— Monte-Carlo Tree Search,在很多科普媒体文章都介绍过,简单来说作为经典算法的 Monte-Carlo Tree Search 是在搜索空间中,进行搜索切割,实现向下或向子空间搜索的算法实践。
第二种算法叫遗传算法 ( Evolutionary Algorithm ) ,与第一种算法相比,不那么结构有序。但在搜索空间比较复杂的时候,想要找到接近于全局最优的局部最优解,Evolutionary Algorithm 是非常有效的方式。
第三类算法 Reinforcement Learning,本身是比较好的一种算法。强化学习的目标是获得最多的累计奖励。
目前算法种类有很多,可以做组合,不同算法组合也可使用增强策略。评估策略
评估策略在多快好省里最主要的是省,评估的时候在不是太不精确的情况下尽可能减少计算量。评估策略里面主要三个方向:第一,Meta-leaner,指导搜索方向。在搜索过程中使用在线训练的元学习器评估候选参数配置,减少实际执行 Trial 的次数。第二,Caching,节省预处理时间。可以记录很多中间结果,记下来之后可以反复使用,这是缓存的策略。第三,防止过拟合的 Early Stopping。有的时候搜索太深没有用,找到一个貌似很好的点,其实过拟合了,所以会做一些策略防止过拟合,有的时候浅尝辄止也是一件很好的事。
高级特性湖南阳光PLC编程培训学校,常年面向张家界地区招生,零基础实战教学,小班授课,教学质量更有保证,全程创业指导。25年PLC编程技术沉淀,80%实操+20%理论,实战+实例+实践的教学方法授课.为张家界地区的PLC编程学员提供广阔的就业机会。-张家界PLC编程培训学校