[Bayes] *Bayesian Deep Learning for Transparency Improvement

为何有必要进修统计机器学习?

因为你没有那么多的数据

因为未知的东西最终还是需理论所解释


 

基于规则?基于概率?

                   ---- 图灵奖得主、贝叶斯之父 Judea Pearl 谈深度学习局限,想造自由意志机器人

从科学角度来说,基于规则的系统就是错误的。它们为专家建模,而不是对疾病本身建模。

问题在于,程序员创建的规则没有正确的组合。当添加更多新的规则时,你必须撤消旧的规则。它是一个非常脆弱的系统。

例如,如果医院出现程序上的变动,整个系统都必须得重写。而且我们这里谈的规则不是一两个,而是有数百个,包括专家(在这个例子中是医生)理解的所有互动方式;当专家输入100 条规则,可能就已经忘了前面几条。

我不喜欢基于规则的系统的另一个原因是它不具有科学透明性。我很懒。所以我需要了解我在做什么,我需要了解它的数学理据。基于规则的系统在数学上是不稳定的。

数学可以优雅地告诉你:“如果你的过程没出错,就能保证得出确定的结果。”这种保证令人愉快,但基于规则的系统缺乏这种保证。

 

上世纪 80 年代初,我们从基于规则的系统转变为贝叶斯网络时,出现了一种新的思路。贝叶斯网络是一个概率推理系统。

专家可以把自己对所在领域的专业知识输入其中,这和专家系统的目标是一致的。这一思路是对某个领域而不是应用过程建模。拿疾病的例子来说,你需要把疾病相关的局部概率知识和相关变量表现形式输入,如果你观察到一些证据,计算机将会采纳并在需要的时候激活这些概率知识,并为你计算出新的证据所需要的修正概率。

 

专家系统能在小数据提供精确的回答,但专家的知识本身就具有“局限性”。

世界是概率的,且目前人类已经具备处理大数据的能力,大数据便意味着“大数收敛”,这个世界的未来,毕竟还是概率的。

 

失去透明性

贝叶斯网络主要卖点:可重组和透明

  问题在于紧凑性和速度,这是两个主要的障碍。理论上,信念修正需要指数级的时间指数级的存储能力,而这些难以提供。

  知识构建者理解哪些事实是相关的,哪些是无关的,这是我们的优势。这给了我们一个稀疏的网络,而当你有一个稀疏的网络,就可以利用它的稀疏性,获得速度和紧凑性。

     贝叶斯网络是一种在告诉它初始信念后,快速计算出修正信念的方式。这显然是飞跃性的进步,因为它具有概率演算的所有有利属性,再加上基于规则的系统的程序优势。而且,它是透明的。

 

我们现在的深度学习失去了透明性。我有跟那些说深度学习“效果很好”的用户交谈过,但他们不知道为什么效果好。一旦解开了它的束缚,它会有自己的动态性,会自己做修复,做优化,而且大多数情况下能得出正确的结果。但当它被束缚,你就没有线索知道它哪里出了错,哪里需要修复。这是让我担心的事情。

 


 

插播:机器学习专家与统计学家观点上有哪些不同?

作者:麦子

链接:https://www.zhihu.com/question/29687860/answer/45794666
来源:知乎

共同点:

统计建模或者机器建模的目的都是从数据中挖掘到感兴趣的信息。下面只讨论supervised learning, 就是对一个pair:

( 自变量x,因变量y)进行建模。 也就是找到一个函数 y=f(x) , 用x 来刻画 (解释、预测)y。

首先我们要一组观察值(x,y),来 回归(learn)这个未知的函数 f。

 

区别:

统计学家: 在刻画 f 的过程中,统计学家用的方法是: 对于 f 的形状y 的random distribution 进行一些假设。

比如说假设 f 是线性模型, 或者y 是normal distribution。

然后来求在一定标准下最优的 f。

比如说,在BLUE (Best Linear Unbiased Estimators 最佳线性无偏估计)的标准下,最小二乘估计出来的 f 就是最好的估计。

然后根据对数据的distribution的假设或者是大数定律,可以求出 参数估计的不确定性 或者是 standard error。

进而构建置信区间,来表达我对我能做出的 f 的最好的估计 的信心。

 

优点: 可以对不确定性度量。 简单模型的可解释性强。当假设的assumptions满足时模型科学、准确、严谨。

缺点:复杂情况下assumptions难以验证。


机器学习专家:不对 y 的distribution进行过多的假设不计算standar error不 care bias。 通过 cross validation来判断 对于 f 的估计的好坏。

也就是说,在机器学习领域,数据量大,机器学习专家拿一部分来估计(train,learn )f,留一部分来验证预测结果的好坏。预测结果好的模型就是好模型,不计算估计参数的偏差。

 

 

缺点: 缺乏科学严谨性。

优点: 简单粗暴。 有一次听一个大牛的seminar几个教授的段子记忆尤新:"those machine learning people are making predictions without probability! "。成为了一门玄学。

 

对于这句话:“统计学家更关心模型的可解释性,而机器学习专家更关心模型的预测能力” : 总体来说,可解释性强的模型会损失预测能力,预测能力强的模型往往比较难解释。

常见的模型中,"可解释性强 --> 预测强" 的模型依顺序排列是

    1. Lasso+线性回归     // least absolute shrinkage and selection operator
    2. 线性回归
    3. 非线性模型
    4. 非参模型
    5. SVM

构建简单的模型,比如线性模型,更容易解释因变量对自变量的影响。 适合于那种目的是解释一个变量对另外一个变量的影响的问题。也是经典统计中最常用到的模型。

变化再多一些,非线性模型,非参模型,更灵活,选择更多,所以可能达到更好的预测效果。但是往往比较难解释x对y的影响。(这些模型都来源于统计,推广于机器学习。这些模型都是几十年前统计的研究成果了好么!!因为最近计算机速度提上来了,原来没名气,是因为计算速度带不动,数据没收集辣么多啊!!)!

因为机器学习领域的数据大,运算能力强,所以能把复杂的非参或者非线性模型用的效果比较好。

 

各自的领域优势?

在一些传统领域,工程实验,生物试验,社会调查,物理实验,我们能获得的数据量非常小,我们必须小心翼翼的对待我们的模型,从有限的数据中提取尽量可能多的信息。抑或是一些对参数很敏感的预测,差之毫厘失之千里,
比如检验一个艾滋病新药物是否有效,来决定要不要投入funding去进行研发,我们就要用严谨的概率统计模型。(个人做项目,小公司做项目,数据量不大,或者项目具有唯一性,那么统计机器学习便是必要的)

但是在搜索引擎,淘宝用户购买信息,人脸特征识别等领域,我们能够获得很大量的数据,而且数据维度也非常高,用传统方式建模,很有可能维度高到严谨的function根本解不出来,机器学习的理论就非常有效了。
 

那么,为什么要学统计机器学习?

Can you guarantee a certain level of inferential accuracy within a certain time budget even as the data grow in size.

 

Link: 

History of Bayesian Neural Networks

PPT

  


 

如何加强透明性

这便是Bayesian Deep Learning的价值。

From: Deep Learning Is Not Good Enough, We Need Bayesian Deep Learning for Safe AI

 

 

 

Epistemic and aleatoric uncertainty.

认知和偶然的不确定性

 

 

 

 

  GMIS 2017 | 清华大学朱军详解珠算:贝叶斯深度学习的GPU库(附视频)

 

posted @ 2017-05-30 07:20  郝壹贰叁  阅读(1140)  评论(0编辑  收藏  举报