原标题:无需写代码!谷歌(谷歌(Google))推出机器学习模型分析神器,代号What-If

原标题:测试机器学习模型不用写代码!谷歌(谷歌)“what-if”工具轻松化解

引言

在机器学习园地,AUC值常常用来评价一个二分类模型的磨练效益,对于众多机器学习或然数额挖掘的从业者或在校学员来说,AUC值的概念也常常被提起,但鉴于多数时候大家都是借助一些软件包来演练机器学习模型,模型评价指标的计量往往被软件包所封装,由此我们平常会忽略了它们的具体意思,那在有个别时候会让我们对此手头正在拓展的职务感到嫌疑。我也曾境遇类似的标题,由此愿意借由正文来梳理下AUC值的意义与计量方法,通超过实际际的例子帮助读者加深领悟,同时提交了使用scikit-learn工具库计算AUC值的办法,供各位参考。

铜灵 编写翻译整理

图片 1

定义

AUC的全称是Area under the Curve of
ROC
,也就是ROC曲线下方的面积。那里出现了另2个定义,便是ROC曲线。那么ROC曲线是个什么样东西啊?我们参看下维基百科上的定义:在信号检查和测试理论中,接收者操作特征曲线(receiver
operating characteristic
curve
,或者叫ROC曲线)是一种坐标图式的解析工具,用于 (1)
选取最好的信号侦测模型、放弃次佳的模型。 (2)
在同等模型中设定最佳阈值。这么些定义最早是由世界世界第二次大战中的电子工程师和雷达工程师发明的,用来侦测战场上的敌军载具。回顾来说,能够把ROC曲线明白为一种用于总括分析的图纸工具。

那正是说具体到机械学习的辩论中,ROC曲线该怎么驾驭啊?首先,要求提出的是,ROC剖析的是二元分类模型,也正是出口结果唯有两种档次的模子,比如:(中性(neuter gender)/中性(neuter gender))(有病/没病)(垃圾邮件/非垃圾邮件)。在二分类难题中,数据的竹签经常用(0/1)来代表,在模型练习完结后进行测试时,会对测试集的每一个样本计算1个介于0~1之间的票房价值,表征模型认为该样本为阴性的可能率,大家能够选定多个阈值,将模型总括出的可能率举办二值化,比如选定阈值=0.5,那么当模型输出的值大于等于0.5时,我们就认为模型将该样本预测为阴性,也正是标签为1,反之亦然。选定的阈值不一致,模型预测的结果也会相应地改成。二元分类模型的单个样本预测有三种结果:

  1. 真中性(neuter gender)(TP):判断为阴性,实际也是中性(neuter gender)。
  2. 伪中性(neuter gender)(FP):判断为阴性,实际却是中性(neuter gender)。
  3. 真中性(neuter gender)(TN):判断为中性(neuter gender),实际也是中性(neuter gender)。
  4. 伪中性(neuter gender)(FN):判断为阳性,实际却是阴性。

那两种结果能够画成2 × 2的混淆矩阵:

图片 2

二阶混淆矩阵

有了混淆矩阵,就足以定义ROC曲线了。ROC曲线将假中性(neuter gender)率(FP昂Cora)定义为
X 轴,真中性(neuter gender)率(TPRubicon)定义为 Y 轴。在那之中:

  • TP路虎极光:在颇具实际为中性(neuter gender)的样本中,被正确地判定为中性(neuter gender)的样本比率。
  • FP奥迪Q7:在富有实际为阴性的范本中,被错误地判定为中性(neuter gender)的样本比率。
  • TPR = TP / (TP + FN)
  • FPR = FP / (FP + TN)

给定二个二分类模型和它的阈值,就足以依照全数测试集样本点的真实值和预测值总计出一个(X=FP奔驰G级, Y=TPENVISION)
坐标点,那也等于绘制单个点的措施。那整条ROC曲线又该怎么画吗?具体方法如下:

在我们陶冶完三个二分类模型后,能够动用该模型对测试集中的总体样本点总计一个一唱一和的可能率值,每种值都介于0~1之间。假如测试集有9多少个样本点,大家能够对那九17个样本的预测值从高到低排序,然后逐一取每一种值作为阈值,一旦阈值显明我们就能够绘制ROC曲线上的三个点,遵照这种艺术依次将玖17个点绘制出来,再将各类点依次连接起来,就拿走了大家想要的ROC曲线!

然后再回到最初的题材,AUC值其实正是ROC曲线下方所覆盖的面积,当大家绘制出ROC曲线之后,AUC的值自然也就总括好啊。

后天,谷歌生产了已开源的TensorFlow可视化学工业具TensorBoard中一项新功效:What-If
Tool,用户可在不编写程序代码的意况下分析机器学习(ML)模型。

倒计时**8**天

示例

此处引用上海航空航天大学张伟楠先生机器学习课件中的例子来证实:

图片 3

AUC计算示例

如上海教室所示,大家有九个测试样本,模型的预测值(按大小排序)和范本的真正标签如右表所示,绘制ROC曲线的万事进度如下所示:

  1. 令阈值等于第③个预测值0.91,全部大于等于0.91的预测值都被判定为阳性,此时TP路虎极光=四分一,FPRubicon=0/4,全体大家有了第三个点(0.0,0.25)
  2. 令阈值等于第①个预测值0.85,全部大于等于0.85的预测值都被判定为中性(neuter gender),那种气象下第三个样本属于被错误预测为中性(neuter gender)的中性(neuter gender)样本,也正是FP,所以TPR=四分一,FPCRUISER=四分之一,所以大家有了第三个点(0.25,0.25)
  3. 依照那种措施依次取第1 、四…个预测值作为阈值,就能挨个获得ROC曲线上的坐标点(0.5,0.25)、(0.75,0.25)…(1.0,1.0)
  4. 将相继点依次连接起来,就获取了如图所示的ROC曲线
  5. 计算ROC曲线下方的面积为0.75,即AUC=0.75

不用写代码?

新智元将于7月27日在东京(Tokyo)国家会议宗旨设立AI WO讴歌MDXLD
2018社会风气人工智能高峰会议,MIT物理助教、今后生命商量所创办人、《生命3.0》小编MaxTegmark,将刊登演说《大家什么利用AI,而不是被其幸免》,研商怎么样面对AI军事化和杀人民武装器的产出,欢迎到现场调换!

代码

在领悟了AUC值的乘除原理后,大家再来看看哪些在代码中贯彻它。平日很多的机器学习工具都卷入了模型目的的总结,当然也席卷AUC值。那里大家来一同看下scikit-learnAUC的一个钱打二15个结格局,如下所示:

>>> import numpy as np
>>> from sklearn.metrics import roc_auc_score
>>> y_true = np.array([0, 0, 1, 1])
>>> y_scores = np.array([0.1, 0.4, 0.35, 0.8])
>>> roc_auc_score(y_true, y_scores)
0.75

能够观察,使用scikit-learn工具提供的roc_auc_score函数总括AUC值杰出简单,只须要提供样本的骨子里标签和预测值那五个变量即可,大大便利了笔者们的应用,真心感激这个开源软件的小编们!

是的,只需为TensorFlow模型和数据集提供指针,What-If
Tool就能交到一个可用来探究模型结果的可相互的视觉界面。

总结

看样子那里的同伙们是还是不是对AUC值的定义有了更好的通晓啊。总的来说,AUC值就是三个用来评论二分类模型优劣的常用目的,AUC值越高常常表明模型的职能越好,在实际应用中我们得以注重软件包的照应函数举办火速计算。借使各位还有一些题材也许是对小说中的某个部分有疑问,欢迎在评论区商量。

图片 4

来源:Google AI

参考

ROC曲线维基百科
张伟楠先生课件
机器学习和总括里面的auc怎么精晓? –
乐乎

250张人脸和在模型中检查和测试微笑后的结果

编辑:大明

What-If
Tool里成效很多,蕴含机关用Facets将数据集可视化,也有从数额汇总手动编辑示例并查阅更改效果的遵从,还能够自动生成都部队分关系图,展现模型预测随着单个特征的变更而改变的取向。

【新智元导读】谷歌 AI推出“what-if
”工具,用户完全不供给编写制定代码就能分析机器学习模型。该工具提供交互式可视化界面,用户可以探索并相比较模型结果,能够高速地意识模型中的错误。

然则,这还不是What-If Tool的百分百实力。

创设快速的机器学习系统,须要建议并缓解广大难点。仅仅磨练模型然后就放着不管是遥远不够的。杰出的机器学习从业者要像侦探一样,时刻放在心上探索怎样更好地通晓创设的模型:数据点的扭转将对模型的推断结果造成怎么着震慑?同2个模型对区别的部落会有哪些分歧的呈现?用来测试模型的数据集的各样化程度怎么样等等。

7大功能

要应对这个难点并不便于。要回应那么些“借使”难题,常常要编写自定义的二次性代码来分析特定模型。这些进度不仅效能低下,还要除了程序员,其余人很难参加创新机器学习模型的进程。

What-If Tool重要有七大作用,不掌握有没有您供给的那一款:

谷歌 AI
PAI哈弗安插的3个生死攸关就是让更宽广的人群可以更方便地对机器学习种类开始展览检查、评估和调剂。

功用一:可视化揣测结果

前几日,大家专业发布What-If工具,该工具是开源的TensorBoard
Web应用程序的一项新职能,它同意用户在不编写代码的意况下分析机器学习模型。
What-If工具给出了TensorFlow模型和数据集的指针,提供了二个交互式可视化界面,用于探索模型结果。

听大人说猜想结果的不等,你的演示会被分成差别的颜色,之后可用混淆矩阵和其余自定义情势展开处理,从不相同特点的角度体现预计结果。

图片 5

图片 6

What-If工具突显一组250张面部图片及其检查和测试微笑模型的结果

功用二:编辑二个数据点,看模型表现怎样

What-If工具效能强大,能够应用Facets自动展现数据集,从数据集手动编辑示例并查阅更改的效能,仍是能够自动生成都部队分依赖图(partial
dependence
plots),展现模型的前瞻结果随任何单个功效的改动而变化的事态。