首页 国际新闻正文

禁闭岛,原创深度|周志华:“深”为什么重要,以及还有什么深的网络,绝世高手

许多特性并不是深度神经网络独有~

作者:杨晓凡

修改:Camel

8 月 10 日至 16 日,IJCAI 2019 在我国澳门隆重召开。14 日下午,南京大学周志华教授进行特邀大会讲演,讲演主题是《Deep Learning: Why deep and is it only doable for neural networks?》。在讲演中,周志华教授从自己的视点解读了深度神经网络之所以取得成功的实质要素,以及如安在统筹这些要素的一同,找到神经网络之外的其它的深度模型。

禁锢岛,原创深度|周志华:“深”为什么重要,以及还有什么深的网络,绝世高手 进藏遇事端丧生

AI 科技谈论把讲演全文收拾如下。

一、深度学习就等于深度神经网络吗?

深度学习今日现已有各式各样的运用,处处都是它,不管图画也好,视频也好,声响天然语言处理等等。那么咱们问一个问题,什么是深度学习?

我想大多数人的答案江湖孽缘,便是深度学习差不多就等于深度神经网络。有一个十分闻名的学会叫 SIAM,是国际工业与运用数学学会,他们有一个旗舰的报纸叫 SIAM news。在上一年的 6 月份,这个报纸的头版上就有这么一篇文章,直接就说了这么一句话,说深度学习是机器学习中运用深度神经网络的的子范畴。所以假如咱们要谈深度学习的话,是绕不开深度神经网络的。

首要咱们有必要从神经网络说起。神经网络其实并不是一个新生事物,神经网络能够说在人工智能范畴现已研讨了超越半个世纪。可是以往的话,一般咱们用的是很浅的神经网络,便是中心只需一个隐层,或许有两个隐层。在这样的神经网络里边,它的每一个接连的单元都是十分简略、有条件的,这样才干起作用。咱们收到一些简略的神经行为输入,这些输入经过一些核算得到输出,成为后续的神经元的输入。它便是这么一个十分简略的公式。所谓的神经网络,是许多这样的公式经过嵌套迭代得到的一个体系,这叫做 M-P 模型。现在咱们运用的神经网络里的神经元便是这样的,即使它是半个世纪前的产品。

那么今日当咱们说用深度神经网络的时分,它和从前的神经网络的差异是什么?简略来说,便是咱们用的层数会很深很深,网络有许多个隐层。在 2012 年深度学习、卷积神经网络刚刚开端遭到咱们注重的时分,那时分 ImageNet 竞赛的冠军是用了 8 层的神经网络。那么到了 2015 年是用了 152 层,到了 2016 年是 1207 层。现在,数千层深的网络十分常见。这是个十分巨大十分巨大的体系,把这么一个体系练习出来,难度是十分大的。

有一点十分好的音讯,咱们现在有很强壮的核算设备。可是说到最根底的层面,很走运的是,神经网络里边的核算单元,最重要的激活函数是接连的、可微的。比方说咱们在以往常用这样的 sigmoid 函数,它是接连可微的,现在咱们常用的 ReLu 函数或许它的变体,也是这样。这使得咱们能够简略地进行梯度核算,这样就能够很简略用闻名的 BP(backpropagation,反向传达)算法来练习。经过这样的算法,咱们的神经网络现已取得了十分多的成功。

不过它的条件是依靠梯度。假如一个问题是不行微分的、不行核算梯度的,咱们就无法为它练习一个神经网络。这十分重要。并且在 2006 年之前,也没有人知道怎样练习深度超越 5 层的神经网络,不是由于核算设备不行强壮,而是咱们无法处理梯度消失的问题。Geoffery Hinton 等人做出了巨大的奉献,他们标明经过逐层练习(layer-by-layer平和气候 precision)和预练习(pre-training)咱们能够战胜梯度消失的问题。介绍这些都是为了阐明神经网络需求可微的函数、需求能够核算梯度,这是最底子最重要的。虽然现在有一些研讨不行微的函数的,但仍是需求转化成某种可微的。

二、为什么深的模型是有用的?

可是实际上在学术界咱们一向没有想清楚一件作业,便是咱们为什么要用这么深的模型,或许说为什么深的模型要比浅的模型体现好那么多?到今日为止,学术界都还没有一致的观点。有许多的论说。我在这儿边跟咱们讲一个咱们前段时刻给出的一个论说。这个论说其实首要是从模型的杂乱度的视点来评论。

咱们知道一个机器学习模型,它的杂乱度实际上和它的容量有关,而容量又跟它的学习才能有关。所以便是说学习才能和杂乱度是有关的。机器学习界早就知道,假如咱们能够增强一个学习模型的杂乱度,那么它的学习才能能够前进。

那怎样样去前进杂乱度,对神经网络这样的模型来说,有两条很明显的途径。一条是咱们把模型变深,一条是把它变宽。假如从前进杂乱度的视点,那么变深是会更有用的。当你变宽的时分,你只不过是添加了一些核算单元,添加了函数的个数,在变深的时分不只添加了个数,其实还添加了它的嵌入的程度。所以从这个视点来说,咱们应该测验去把它变深。

那咱们或许就会问了,已然你们早就知道要树立更深的模型了?那么现在才开端做?这就涉及到其他一个问题,咱们把机器学习的学习才能变强了,这其实未必是一件功德。由于机器学习一向在奋斗的一个问题,便是经常会碰到过拟合(overfit)。这是一种什么样的现象?你给我一个数据集,我做机器学习要把数据集里边的东西学出来,学出来之后,我期望学到的是一般规则,能够用来猜想未来的作业。可是有时分我或许把这个数据自身的一些一起特性学出来了,而不是一般规则。过错地把它当成一般规则来用的时分,会犯巨大的过错。这种现象便是所谓的过拟合,便是由于模型的学习才能太强了。所以咱们以往一般不太乐意用太杂乱的模型。

那现在咱们为什么能够用很杂乱的模型?其实咱们规划了许多办法来对付过拟合,比方神经网络有 dropout、early-stop 等。但有一个要素十分简略、十分有用,那便是用很大的数据。比方说我手上假如只需 3000 个数据,那我学出来的特性一般不太或许是一般规则,可是假如有 3000 万、30 亿的数据,那这个数据里边的特性或许自身就现已是一般规则。所以运用大的数据是缓解过拟合的一个要害的途径。第二,今日咱们有了许多很强壮的核算设备,这使得咱们能够运用大规划数据练习模型。第三,经过咱们这个范畴许多学者的尽力,有了许多的练习这样杂乱模型的技巧、算法,这使得咱们运用杂乱模型成为或许。总结一下便是:榜首咱们有了更大的数据;第二咱们有强力的核算设备;第三咱们有许多有用的练习技巧。这导致咱们能够用高杂乱度的模型,热辣文而深度神经网络恰恰便是一种很便于完结的高杂乱度模型。

所以用这么一套理论,如同是能够解说咱们现在为什么能够用深度神经网络,为什么深度神经网络能成功?便是由于杂乱度大。在一年多之前,咱们把这个解说说出来的时分,其实国内外许多同行也还很附和,觉得还蛮有道理的。可是其实我自己一向对这个解说不是特其他满意,由于一个潜在的问题咱们一向没有答复。

假如从杂乱度这个视点去解说的话,咱们就无法说清楚为什么扁平的(flat),或许宽的网络做不到深度神经网络的功能?实际上咱们把网络变宽,虽然它的功率不是那么高,可是它相同也能起到添加杂乱度的才能。

实际上只需有一个隐层,加无限多的神经元进去,它的杂乱度也会变得很大。可是这样的模型在运用里边怎样试,咱们都发现它不如深度神经网络好。所以从杂乱度的视点或许很难答复这个问题,咱们需求一点更深化的考虑。所以咱们要问这么一个问题:深度神经网络里边最实质的东西究竟是什么?

三、深度神经网络有用性的三点猜想

今日咱们的答复是,实质是表征学习的才能。这现已成为了学术界的新的一致,乃至有了专门的会议 ICLR。以往咱们用机器学习处理一个问题的时分,首要咱们拿到一个数据,比方说这个数据方针是个图画,然后咱们就用许多特征把它描绘出来,比方说色彩、纹路等等。这些特征都是咱们人类专家经过手艺来规划的,表达出来之后咱们再去进行学习。而今日咱们有了深度学习之后,现在不再需求手艺去规划特禁锢岛,原创深度|周志华:“深”为什么重要,以及还有什么深的网络,绝世高手征了。你把数据从一端扔进去,作用从其他一端就出来了,中心一切的特征彻底能够经过学习自己来处理。所以这便是咱们所谓的特征学习,或许说表征学习。咱们都认可这和以往的机器学习技能比较能够说是一个很大的前进,这一点十分重要。咱们不再需求依靠人类专家去规划特征了。

这个进程中的要害点是什么呢?是逐层核算,layer-by-layer processing。

我引述最近十分盛行的一本书——《深度学习》里边的一个图:当咱们拿到一个图画的时分,咱们假如把神经网络看作许多层,首要它在最底层,如同咱们看到的是一些像素这样的东西。当咱们一层一层往上的时分,渐渐的或许有边际,再网上或许有概括,乃至方针的部件等等。当然这实际上只是个示意图,在实在的神经网络模型里边不见得会有这么清楚的分层。可是整体受骗咱们逐步往上的时分,它确实是不断在对方针进行笼统。咱们现在以为这如同是深度学习为什么成功的要害要素之一。由于扁2017韩国道德电影平神经网络能做许多深层神经网络能做的事,可是有一点它是做不到的。当它是扁平的时分,它就没有进行这样的一个深度的加工。所以深度的逐层笼统这件作业,或许是很浅层神经网络和深层神经网络之间的要害差异。

当然了,这也是一种猜想,咱们现在还无法从数学上证明。

「逐层核算」在机器学习里边也不是新东西。比方说决策树便是一种逐层处理,这是十分典型的。决策树模型现已有五六十年的前史了,可是它为什么做不到深度神经网络这么好呢?我想答案很简略。首要它的杂乱度不行,决策树的深度,假如咱们只考虑离散特征的话,它最深的深度不会超越特征的个数,所以它的模型杂乱度是有限的;而在神经网络中,当咱们想要添加模型杂乱度的时分,咱们添加恣意数目的层,没有任何的约束。第二,民兵葛二蛋苗子也是更重要的,在整个决策树的学习进程中,它内部没有进行特征的改换,从榜首层到终究一层始终是在同一个原始特征空间里边进行的,这十分重要。咱们信任这两点关于深度神经网络是十分重要的。

而当咱们考虑到这两件作业的时分,咱们就会发现,其实深度模型是一个十分天然的挑选。有了这样的模型,咱们很简略就能够做上面两件事。可是当咱们挑选用这么一个深度模型的时分,咱们就会有许多问题,它简略 overfit,所以咱们要用大数据;它很难练习,咱们要有许多练习的 trick;这个体系的核算开支十分大,所以咱们要有十分强有力的核算的设备,比方 GPU 等等。

实际上一切这些东西是由于咱们选用了深度模型之后发作的一个作用,它们不是咱们用深度学习的原因。所以这和以往的考虑不太相同,以往咱们以为有了这些东西,导致咱们用深度模型。其完结在咱们觉得这个因果关系恰恰是反过来,由于咱们要用它,所以咱们才会考虑上面这些东西。这从前是运用浅网络的原因,现在也可所以运用很深的网络的原因。

其他还有一点咱们要注意的,当咱们有很大的练习数据的时分,这就要求咱们有必要要有很杂乱的模型。不然假定咱们用一个线性模型的话,给你 2000 万样本仍是 2 亿的样本,其实对它没有太大差异。它现已学不进去了。而咱们有了充沛的杂乱度,恰恰它又给咱们运用深度模型加了一分。所以正是由于这几个原因,咱们才觉得这是深度模型里边最要害的作业。

这是咱们现在的一个知道:榜首,咱们要有逐层的处理;第二,咱们要有特征的内部改换;第三,咱们要有满意的模型杂乱度。这三件作业是咱们以为深度神经网络为什么能够成功的比较要害的原因。或许说,这是咱们给出的一个猜想。

四、深度神经网络不是仅有挑选

那假如满意这几个条件,咱们其实马上就能够想到,那我不必定要用神经网络。神经网络或许只是我能够挑选的许多计划之一,我只需能够一同做到这三件事,那我或许用其他模型做也能够,并不是必定只能是用深度神经网络。

榜首,但凡用过深度神经网络的人都会知道,你要花许多的精力来调它的参数,由于这是个巨大的体系。那缉捕一只耳这会带来许多问题。首要咱们调参数的阅历其实是很难同享的。有的朋友或许说,你看我在榜首个图画数据集上调参数的阅历,当我用第二个图画数据集的时分,这个阅历肯定是能够重用一部分。可是咱们有没有想过,比方说咱们在图画上面做了一个很大的深度神经网络,这时分假如要去做语音的时分,其实在图画上面调参数的阅历,在语音问题上基本上不太有久闻齿科学习作用。所以当咱们跨使命的时分,这些阅历或许就很难同享。

第二个问题,今日咱们都十分重视咱们做出来的作用的可重复性,不管是科学研讨也好,技能开展也好,都期望这个作用可重复。而在整个机器学习范畴,能够说深度学习的可重复性是最弱的。咱们经常会碰到这样的状况,有一组研讨人员发文章说报告了一个作用,而这个作用其他的研讨人员很难重复。由于哪怕你用相同的数据,相同的办法,只需超豁拉子参数的设置不相同,你的作用就不相同。

还有许多问题,比方说咱们在用深度神电锯甜心小雨经网络的时分,模型杂乱度有必要是事前指定的。由于咱们在练习这个模型之前,咱们这个神经网络是什么样就有必要定了,然后咱们才干用 BP 算法等等去练习它。其实这会带来很大的问题,由于咱们在没有处理这个使命之前,咱们怎样知道这个杂乱度应该有多大呢?所以实际上咱们做的一般都是设更大的杂乱度。

假如咱们重视曩昔 3、4 年深度学习这个范畴的开展,你能够看到许多最前沿的作业在做的都是在有用的减缩网络的杂乱度。比方说 RestNet 这个网络经过加了 shortcuts,有用地使得杂乱度变小。还有最近咱们经常用的一些模型紧缩,乃至权重的二值化,其实都是在把杂乱度变小。实际上它是先用了一个过大的杂乱度,然后咱们再把它降下来。那么咱们有没有或许在一开端就让这个模型的杂乱度跟着数据而改变,这点对神经网络或许很困难,可是对其他模型是有或许的。还有许多其他问题,比方说理论剖析很困难,需求十分大的数据,黑箱模型等等。

那么从其他一个方面,有人或许说你是做学术研讨,你们要考虑这些事,我是做运用的,什么模型我都不管,你只需能给我处理问题就好了。其实就算从这个视点来想,咱们研讨神经网络之外的模型也是很需求的。

虽然在今日深度神经网络现已这么的盛行,这么的成功,可是其实咱们能够看到在许多的使命上,功能最好的不见得彻底是深度神经网络。比方说 Kaggle 上面的许多竞赛有各式各样的实在问题,有买机票的,有订旅馆的,有做各种的产品引荐等等,还有一些来自企业的实在的工业问题,他们只考虑模型的体现,咱们就能够看到在许多使命上的成功者并不是神经网络,它往往是像随机森林,像 xgboost 等等这样的模型。深度神经网络制胜的使命,往往便是在图画、视频、声响这几类典型使命上,都是接连的数值建模问题。而在其他但凡涉及到混合建模、离散建模、符号建模这样的使命上,其实深度神经网络的功能或许比其他模型还要差一些。这也便是咱们说的「没有免费的午饭定理」,现已有数学证明,一个模型不行能在一切使命中都得到最好的体现。所以咱们有必要探究神经网络之外的深度模型。

五、需求探究深度学习之外的办法

那么,有没有或许做出适宜的深度模型,在这些使命上得到更好的功能呢?

咱们从学术的观点来总结一下,今日咱们谈到的深度模型基本上都是深度神经网络。假如用术语来说的话,它是多层、可参数化的、可微分的非线性模块所组成的模型,而这个模型能够用 BP 算法来练习。

那么这儿边有两个问题。榜首,咱们实际国际遇到的各式各样的问题的性质,并不是肯定都是可微的,或许用可微的模型能够做最佳建模的。第二,曩昔几十年里边,咱们的机器学习界做了许多模型出来,这些都能够作为咱们构建一个体系的柱石,而中心有恰当一部分模块是不行微的。

现在咱们遇到了这样一个大应战,可不行以用不行微的模块构建深度模型?这不光是学术上的,也是技能上的一个应战,便是咱们能不能用不行微的模块来构建深度模型?

这个问题一旦得到了答复,咱们一同就能够得到许多其他问题的答案。比方说深度模型是不是便是深度神经网络?咱们能不能用不行微的模型把它做深,这个时分咱们不能用 BP 算法来练习,那么一同咱们能不能让深度模型在更多的使命上制胜?

六、一个作用:gcForest

咱们小组近期做出了一些作用,提出了一种新的模型结构 gcForest。这是一个依据决策树森林的办法,是依据集成模型的深度模型;它也能够在除了大规划图画数据之外的使命中取得和深度神经网络相似的体现。在大规划图画数据使命中不能制胜,其间原因是咱们现在没有恰当的硬件练习满意大的模型。

从姓名能够看出,这个模型有两个要害性质:级联树结构,以及多粒度。我今日首要介绍榜首部分的一些要害,这也是这个办法的要害所在。

这是它的级联树结构。图中我用赤色标出了原始的输入特征向量。依据输入的特征向量,咱们能够练习出一些森林,每个森林都是多个决策树的集成模型。假定咱们有三个分类需求猜想,每个分类用一个 bit 来表明,那么每个森林的输出奥利卡的诗就有 3 个 bit 长。在榜首个标签练习完结后,咱们把这 3bit 输出和原始的输入特征向量串联起来,也便是说咱们用更多的特征扩增了原始的输入向量;接着,咱们用扩增后的向量,练习模型的下一层。这个进程能够不断地重复,直到我的清闲御史生计终究一个标签,就能够对一切猜想值取均匀,得到终究的猜想作用。模型的终究层数能够由各种方针决议,比方当你发现添加更多的层之后模型的体现并没有前进,这时分你就能够停下来了。这样,你就不需求在开端练习前就设定好模型有多少层。其他,在工业运用中,当你的数据十分大的时分,你也能够用练习差错(training error)来操控这个进程什么时分中止:当练习差错不再持续下降的时分,就能够中止。就这么简略。

在这儿,当你把输出从榜首层传递到第二层的时分,对集成办法比较了解的人能看出来这和层叠(st禁锢岛,原创深度|周志华:“深”为什么重要,以及还有什么深的网络,绝世高手acking)有点像:这是一种 kaggle 竞赛中常见的办法,先练习一个模型,然后把输入和榜首个模型的猜想作用一同输入第二个模型,构成一个两层的模型。可是,假如咱们只是这样简略地做层叠的话,想要练习一个超越 3 层的模型是十分困难的,原因是会发作十分严峻的过拟合;即使是模型的第二层就会呈现过拟合。

但咱们做出了十分深的模型。这是不同模型体现随层数改变的曲线,和 CNN、MLP 等其它模型做比照。跟着层数变多,模型的体现越来越好。当咱们运用 cross-validation 的时分,模型的体现会停在这儿。但假如咱们能够有更好的办法决议中止机遇,或许咱们能够停在更靠右的方位,模型的体现能够更好。但这并不重要,咱们只需求知道模型能够有十分多层就够了。

咱们要怎样做出有许多层的模型?要害是要有多样性(diversity),决议整个模型体现的便是多样性。有更好的多样性,咱们就能够有一个更深的模型。这也是来自集成学习的一个启示,集成学习中咱们就期望不同的学习者各自既精确又多种多样。

在 gcForest 中,咱们也规划了许多机制来前进多样性。我举一个比方阐明,在这个模型的榜首层中咱们运用了两种不同的森林,用两种色彩表明。赤色的是随机森林,是随机树的集成模型。咱们都知道,关于决策树,首要给定一系列特征,然后挑选最佳的特征用于分叉:比方你有 100 个不同的特征,在分叉时需求从其间挑选最好的那一个。在这个树中,咱们首要从 100 个特征里随机挑选 10 个,然后从这 10 个特征中挑选最好的那个特征。经过这种办法,咱们为模型引入了一些随机性,能够鼓舞模型添加多样木加乐性。蓝色的就更风趣了,它是彻底随机的树的集成,便是说彻底随机地挑选特征并用它们分叉。能够看到,咱们构建这些树和森林的进程中乃至都不需求用到任何的标示数据,只需求随机挑选特征、随机分配特征。

为什么咱们要在模型的同一层运用这两种不同的森林呢?假如把整个一层看作一个模型的话,这便是几个集成模型组成的集成模型,其间的每个集成模型都有所不同,这就能够添加模型的多样性。那么一个很天然的后续问题是,为什么不运用更多的模型、更多不同类型的树?这当然是能够测验的,咱们现在只是演示了一种细微的改善,而它现已能够带来一些长处。能够等候,当你运用更多种不同的模型、有了更好的多样性,就能够得到更好的终究作用。咱们还运用了其它的一些技巧,由于时刻约束我就不打开介绍了。

这是模型的整体架构。给定数据今后,我禁锢岛,原创深度|周志华:“深”为什么重要,以及还有什么深的网络,绝世高手们首要会做一些扫描,用窗口扫描一些样本今后得到特征,并得到数据的表征。咱们运用不同巨细的窗口,也便是不同的粒度(grain);关于每一种粒度,都有许多集成模型。所以大局来看,这便是一群级联模型的级联模型;每高兴农妇的微博个级联模型里有多种不同的粒度,每个粒度里含有集成模型的集成模型。模型的结构或许杂乱,可是它能够做得很深。

这种模型也会涉及到一些超参数问题,比方,每个森林里有多少树、树成长到什么深度或许什么时刻、扫描数据的时分要运用多少个不同的窗口,但总的来说涉及到的超参数的数量仍是比神经网络少。

咱们也在许多种不同的使命上运转了试验,除了大规划图画数据之外,在其间的大多数使命上 gcForest 都能够取得和深度神经网络相似的体现。它的重要意义在于,这是首个不依靠梯度、不依靠反向传达的深度模型。关于可微分的机器学习问题,咱们能够把神经网络的那一系列技巧都运用起来;依据决策树的模型虽然无法转化成神经网络模型,可是能够处理不行微、无法核算梯度的问题。

七、gcForest 出路怎样

Keras 作者 Franois Chollet 曾说,可微分的层是当时的模型的根底缺点;gcForest 不运用任何可微分的层。深度学习之父 Geoffery Hinton 说,他想把反向传达丢掉、从头再来;gcForest 就不运用反向传达,连梯度都不运用。所以,从学术研讨的视点讲,研讨 gcForest 这样的不依靠梯度的深度模型将会是机器学习的重要分支。

有一些来自工业界的人或许会说,这当然是很好的学术新作用,可是它对实践能起到什么协助吗?那么我来给咱们报告一个工业运用的作用,这是关于不合法套现检测的。我国的电子支付十分兴旺、买卖量十分大,即使其间只需一小部分是不合法的,也会形成很大的影响。和咱们协作的这家公司有很强的技能功底,他们规划了大规划分布式的 gcForest,并且用在了他们的分布式机器学习体系中。下面我展现一个测验作用,这或许是不合法套现检测的最大规划的实在数据集,禁锢岛,原创深度|周志华:“深”为什么重要,以及还有什么深的网络,绝世高手练习数据超越 1.3 亿条买卖数据,测验数据也超越 5200 万条;每条买卖数据由超越 5000 个特征描绘。

他们自己也有逻辑回归、深度神经网络和自研的模型,能够看到不管关于学术点评方针仍是工业界方针,大规划分布式的 gcForest 都得到了最好的体现。这也印证了咱们的猜想:gcForest 能够在某些使命中发挥很好的作用,尤其是在带有离散信息、符号信息的使命中。在这儿,用户信息中的许多内容便是符号化的。

虽然 gcForest 有一些成功的运用,但我仍是要提示咱们,不要马上就对 gcForest 抱有过高的等候。实际上咱们现已开源了适用于小规划、中等规划数据的代码,但假如你期望下载代码今后就直接运用,期望得到不错的作用的话,那你的等候太高了。关于每种新技能,都要阅历很长的研制之路。假如你在笔记本上直接运转的话,你的内存很快就会用完。想要彻底发挥这种技能的长处的途径有两种,一种是方才这样的大规划分布式布置,另一种是凭借现代核算硬件。

八、gcForest 面临的应战

比较于 CNN 现现已历了 30 年的开展,gcForest 还在自己的幼年时期。下面我简略介绍一些值得研讨的应战、敞开性问题。

方才我介绍了 gcForest 代表了集成模型,其间的多样性十分重要,实际上 gcForest 运用到了集成模型研讨范畴内的各种添加多样性的办法。假如咱们对集成模型感兴趣的话,欢迎阅览我的这本关于专著《Ensmiaoboemble Methods: Foundations and Algorithms》,里边有一整章的内容是介绍怎样添加多样性的。

咱们发现 gcForest 和神经网络有一些相似性。在神经网络的练习中,咱们期望防止梯度消失,而在 gcForest 中,咱们期望防止多样性消失。假如多样性消失了,咱们最多只能做出三层、四层的网络。怎样规划更多的机制给模型添加更多的多样性,这将是 gcForest 研讨的要害,就像研讨怎样防止梯度消失是神经网络研讨的要害相同。

下一点是特征扩增。方才我说到,假如要猜想三个类、每个类用一个 bit 表明,那么每个森林只能在本来的特征向量的根底上添加 3 个 bit。这是一个十分小的数字,比方当你有 1000 维的数据特征时,只添加 3 个 bit 太少了,很简略淹没在原有的特征中。所以关于高维数据,咱们需求规划新的机制,提取更多的特征来扩增原有的特征向量。

这一点十分重要,但在着手之前,咱们也需求提出这个问题:森林是否能够提取出满意的信息,用来重构出有用的扩增特征。假如森林的提取才能不强,那么或许 3 个 bit 就够用了。

咱们也针对这个问题做了一些研讨。咱们发现,一个经过练习的森林乃至能够被用作一个主动编码器(AutoEncoder)。此前人们都以为「能够用作主动编码器」是神禁锢岛,原创深度|周志华:“深”为什么重要,以及还有什么深的网络,绝世高手经网络模型专属的一种特性,现在咱们也能够用森林做到这一点。在给定数据上练习完结一个森林模型今后,再拿一些新数据做猜想,你能够找到新数据能够归属鄙人面的叶子节点。那么,关于叶子信息,你就能够简直完美禁锢岛,原创深度|周志华:“深”为什么重要,以及还有什么深的网络,绝世高手地回溯、重建出原始数据。这就意味着,假如你有一个数据集、依据数据集构建了森林,你乃至能够丢掉整个数据集,它的信息都现已编码在了森林模型里。它的重现体现很好,比方在图画数据集上有很好的重建作用,在文本数据集上也比神经网络更好,由于神经网络处理符号信息之前需求先经过 word2vec 之类的办法把它转化为数值信息,这就会带来额定的偏倚。但树模型就能够直接处理符号化信息,不需求任何转化。所以,依据森林办法规划更好的特征增强办法其实有十分多的或许性等候咱们探究。

除此之外,咱们还发现一些以往人们以为神经网络独有的才能也能够在森林中完结。比方在这篇 NerIPS20明日南京气候18 论文中,咱们标明晰森林能够做层次化分布式表征学习。从前这也被以为是神经网络独有的性质。这都意味着,许多咱们从前以为的特别性质,其实并不需求只是局限于神经网络。未来或许咱们还能找到更多能够完结这些才能的模型。

另一件事,关于奶味大哥大前进模型的运转速度来说十分重要的,便是改善运用的硬件。这是来自咱们试验的图表,能够看到,假如添加粒度数目,模型的体现整体是前进的;添加森林的数量、添加每个森林中的树的数量,模型的体现都能够前进。便是说,更大的模型总的来说能够带来更好的体现。不幸的是,咱们无法把模型做得更深,由于咱们没有恰当的核算设备,就相似于做深度神经网络需求有 GPU。

实际上,假如咱们考虑练习时的核算开支的话,深度森林的开支比深度神经网络要小,可是深度神经网络能够用 GPU 加快,由于其间的核算都能够转化为矩阵运算;在深度森林中,大多数的树成长进程是依据切换的,很难用 GPU 加快。所以,假如考虑到 GPU 的加快作用的话,深度神经网络的功率要更高。

已然不能用 GPU 加快深度森林,那么咱们就要问了,咱们能用什么来加快深度森林呢?能不能规划恰当的硬件来加快它呢?咱们猜想英特尔的多核 KNL 芯片有必定的潜力,但咱们还不确认它加快深度森林的作用是否能和 GPU 加快深度神经网络的作用相同被轮。最近英特尔也和咱们(南京大学)联合设立了一个人工智能研讨中心,方针便是磷光之刃一起探究是否有或许规划新的人工智能芯片为深度森林供给加快。

另一个问题是算法自身。咱们都知道深度神经网络的研讨现已进行了大约三十年了,有许多学者、研讨员、从业者为深度神经网络的开展做出了奉献。深度森林还在自己的幼儿期,还有许多的研讨作业需求做。

理论研讨也不能忽视。咱们都知道深度学习有一个很大的不方便之处便是短少理论根底,所以深度神经网络很难剖析,尤其是从学习理论的视点;从这个视点来说,决策树要好一些。可是对决策树、对森林、集成模型做剖析仍是很难的,最近咱们提出了一个新的办法,mdDF,它是深度森林的一种变体,咱们也现已得到了一些开始的理论作用,这篇论文近期就会宣布。不过,这件事依然不简略,还需求许多后续的深化研讨。

需求战胜的问题还有许多,不过一切这些支付都是值得的。由于,「没有免费的午饭」,没有哪个学习模型永远都是最好的,虽然深度神经网络很成功,咱们仍是要持续探究其他类型的模型。咱们猜想深度神经网络确实是适用于数值建模问题的,可是当你面临的是符号化、离散、表格数据的时分,深度森林能够做得更好。

由于现在咱们不知道深度森林能够开展到什么程度,由于咱们还构建不出十分深的模型,但即使未来咱们构建出很深的模型了、并且发现它的体现没有咱们料想的那么好,咱们的研讨也依然是有价值的。由于深度森林的构建进程为咱们的这几个猜想供给了依据:当你用一个模型就能够做到逐层信号处理、特征改换、满意的模型杂乱度的时分,你就能够享遭到深度模型的长处。这也便是深度森林比之前的各种森林都有更好的体现的原因。它也带给咱们新的启示:咱们是否有或许规划出一同统筹到这几点的新的模型?

终究总结一下,从前咱们以为深度学习是一个「小黑屋」,里边只需深度神经网络。现在咱们打开门,发现了里边有深度森林,或许未来还能发现更多其他东西。

谢谢咱们!

声明:本文未经周志华教授自己审理,内容为依据周教授讲演听写翻译而成,仅供咱们参阅。

版权声明

本文仅代表作者观点,不代表本站立场。
本文系作者授权发表,未经许可,不得转载。