澳门新萄京娱乐场 / Blog / 科技成果 / 测试机器学习模型不用写代码,iOS11中的机器学习教程
科技成果 9

测试机器学习模型不用写代码,iOS11中的机器学习教程

What-If工具展现一组250张面部图片及其检查实验微笑模型的结果

作用肆:探寻反事实示例

苹果提供了什么样?

苹果在iOS5中引进了NSLinguisticTagger来分析自然语言。Metal出现在iOS第88中学,提供对设施GPU的起码访问。
二零一八年,苹果公司将主导神经网络子程序(BNNS)增多到其加快框架中,使开辟职员能够营造神经互连网来开始展览推导(而不是磨炼)。
目前年,苹果给出了CoreML和Vision!

  • Core ML 使您更便于在你的应用程序中运用经过陶冶的模型
  • Vision
    让您轻巧访问Apple的模子,以检验脸部,面部地方统一标准,文字,矩形,条形码和指标。

你还足以在Vision模型中包装任何图像分析Core
ML模型,那在本教程旅长会怎样。
因为那五个框架是基于Metal创设的,所以它们在设备上海飞机创制厂快运维,因而你不须求将用户的数量发送到服务器。

运用What-if工具对微笑检查测试模型两有个别数据的推测表现的比较,个中推断模型分类阈值设置满意“机会公平”

传送门

应用模型来分类场景

于今只须要在七个地点调用detectScene(image :)
viewDidLoad()imagePickerController(_:didFinishPickingMediaWithInfo :)的末尾加多以下行:

guard let ciImage = CIImage(image: image) else {
  fatalError("couldn't convert UIImage to CIImage")
}

detectScene(image: ciImage)

编译并运维。非常快就足以看出分类:

科技成果 1

image.png

啊,是的,图像中有摩天津大学楼。 还有高铁。
点击按键,并采纳照片库中的第3个图像:1些阳光斑点的卡牌的特写镜头:

科技成果 2

image.png

引用:

  • Apple’s Core ML
    Framework
    documentation
  • WWDC 2017 Session
    703
    Introducing Core ML
  • WWDC 2017 Session
    710
    Core ML in depth
  • Core ML and Vision: Machine Learning in iOS 11
    Tutorial

科技成果 3

在Vision模型中包装Core ML模型

谈起底,你将索要写些代码!展开ViewController.swift,在import UIKit上面导入四个框架:

import CoreML
import Vision

然后在IBActions扩张末尾增加如下扩张:

// MARK: - Methods
extension ViewController {

  func detectScene(image: CIImage) {
    answerLabel.text = "detecting scene..."

    // Load the ML model through its generated class
    guard let model = try? VNCoreMLModel(for: GoogLeNetPlaces().model) else {
      fatalError("can't load Places ML model")
    }
  }
}

代码意思如下:
先是,您出示一条消息,以便用户明白一点事情正在发生。
GoogLeNetPlaces的钦点的起先化程序会吸引错误,由此在开创时必须利用try。
VNCoreMLModel只是1个用以Vision请求的Core ML模型的器皿。
标准Vision工作流程是创建立模型型,创建三个或八个请求,然后成立并运转请求处理程序。
您刚刚成立了该模型,因而你的下一步是开创二个呼吁。

detectScene(image:):终极增添上边代码:

// Create a Vision request with completion handler
let request = VNCoreMLRequest(model: model) { [weak self] request, error in
  guard let results = request.results as? [VNClassificationObservation],
    let topResult = results.first else {
      fatalError("unexpected result type from VNCoreMLRequest")
  }

  // Update UI on main queue
  let article = (self?.vowels.contains(topResult.identifier.first!))! ? "an" : "a"
  DispatchQueue.main.async { [weak self] in
    self?.answerLabel.text = "\(Int(topResult.confidence * 100))% it's \(article) \(topResult.identifier)"
  }
}

VNCoreMLRequest是选取Core
ML模型来达成工作的图像分析请求。它的成功处理程序接收request科技成果,和error对象。
你检查该request.results是一组VNClassificationObservation目的,那是当Core
ML模型是分类器而不是预测器或图像处理器时,Vision框架重临的。而GoogLeNetPlaces是三个分类器,因为它仅预测了四个特色:图像的情景分类。
VNClassificationObservation有三个属性:identifier – 3个String类型 –
和confidence – 介于0和一以内的数字 –
那是分类正确的概率。当使用对象检查评定模型时,您可能只会看出那一个confidence抢先某些阈值的指标,例如30%。
然后,取第1个结实将享有最高的相信度值,并将不定冠词设置为“a”或“an”,具体取决于标记符的率先个假名。最终,您将赶回主队列更新标签。你快捷会合到分类职业产生在主队列中,因为它大概极慢。
现行反革命,到第2步:创设和周转请求处理程序。
detectScene(image:):说起底增加下边代码:

// Run the Core ML GoogLeNetPlaces classifier on global dispatch queue
let handler = VNImageRequestHandler(ciImage: image)
DispatchQueue.global(qos: .userInteractive).async {
  do {
    try handler.perform([request])
  } catch {
    print(error)
  }
}

VNImageRequestHandler是正统的Vision框架请求处理程序;
它不是主导ML模型的具体。
你给它作为一个参数进入detectScene(image :)的图像。
然后经过调用其perform方法运行处理程序,传递三个呼吁数组。
在那种状态下,您唯有3个伸手。
perform艺术抛出三个张冠李戴,所以您把它包裹在一个try-catch。

检查实验错误分类:多类分类模型,模型依照对植物的花的4次考查来预测植物的品类。What-if工具有助于展现模型的仲裁边界,弄清导致错误分类的原故。

将CoreML模型集成到你的App中

本课程使用Places205-GoogLeNet模型,您能够从Apple的“机械学习页面.”页面下载。
向下滚动到Working with Models,并下载第二个。
当您在那边时,请留意其余多少个模型,它们都会在图像中检查测试物体 –
树木,动物,人物等。

若果你使用受协助的机械学习工具(如Caffe,Keras或scikit-learn)成立的练习模型,将陶冶模型转变为CoreML可讲述如何将其转移为Core
ML格式。

我们期待谷歌内外的稠人广众都来行使What-If工具,以更加好地理解机器学习模型,并初始评估预测模型的公平性。
大家的代码是开源的,欢迎对该工具继续添砖加瓦。

—回到天涯论坛,查看越来越多

iOS机器学习

机器学习是1种人工智能,个中Computer“学习”而不被确定编制程序。机器学习工具不用编码算法,而是经过大气数据中查找方式,使总计器能够开采和优化算法。

责编:

中度一点,你就能相比数办事处与模型预测出差别结果的最相似点。我们将那么些点称为“反事实”(Counterfactuals),能够映现出模型的决策边界。

累加模型到花色中

下载完GoogLeNetPlaces.mlmodel后,拖到项指标Resources目录中。

科技成果 4

image.png

当选那个文件,并稍等一下。当Xcode生成模型类时,将会现出三个箭头:

科技成果 5

image.png

点击箭头就足以看到变化的类:

科技成果 6

image.png

Xcode已经转移输入输出类,并且首要的类GoogLeNetPlaces有3个model属性和五个prediction方法。
GoogLeNetPlacesInput用三个CVPixelBuffer类型的sceneImage属性。那是如何?不要惧怕,不要哭泣,Vision框架将会将大家属性的图像格式装换为不易的输入类型。
Vision框架还将GoogLeNetPlacesOutput属性调换为协调的结果类型,并管理对预测方法的调用,所以在装有更改的代码中,代码将只行使model属性。

评估二元分类模型的公平性:上边提到的用来微笑表情检查评定的图像分类模型。What-if工具备助于评估分化子图像组的算法公平性。在该模型的教练中,有意未有提供来自特定人群的言传身教,目标是为着表现What-if工具怎么着能够揭露模型中的那种偏向。对模型预测公平性的评估必要仔细思量全部背景,但是What-if工具是三个实惠的量化源点。

成效一:可视化估计结果

深度学习

自20世纪50年代以来,AI研商人口付出了众多机械学习方法。苹果的为主ML框架协助神经网络,树组合,扶助向量机,广义线性模型,特征工程和流程模型。但是,神经网络已经发生了数不尽最壮观的方今的打响,从二〇一一年谷歌(Google)二零一一年使用YouTube录制来磨练其人工智能来识别猫和人。唯有5年后,谷歌(Google)正在支持二个竞技,以分明五千种植物和动物。像Siri和亚历克斯a那样的应用程序也设有于神经网络中。
二个神经互联网试图用层次的节点来模拟人类脑部进程,并以差别的办法调换在联合具名。各类附加层要求大量扩大总结本领:英斯ption
v三,1个对象识别模型,有4八层和平条约三千万个参数。然而总结基本上是矩阵乘法,哪些GPU处理分外管用。
GPU的血本降低使得人们能够创建多层深层神经互联网,由此是尖锐学习的术语。

科技成果 7

image.png

神经网络供给大批量的教练多少,理想地意味着了整整的可能性。
用户生成数据的爆裂也招致了机械学习的再生。
教练模型意味着向神经网络提供练习多少,并使其总计用于组合输入参数以发出输出的公式。
培养和练习发生在离线状态,日常在全体三个GPU的机器上。
要选拔这几个模型,你给它新的输入,它总括输出:这被誉为推论。
推论依旧要求大量的总计,来测算新输入的输出。
由于像Metal那样的框架,现在得以在手持设备上开始展览这个总计。
如本教程末尾所示,深远学习远非完美。
建立真正有代表性的作育数据真的很辛劳,过分练习模型太轻便了,所以对奇幻的性情给予太多的尊重。

在底下的截图中,该工具用于2进制分类模型,该模型依照意大利人口普遍检查数据集的公亲人口普遍检查数据,预测一人的年收入是不是超过5万欧元。那是机器学习钻研职员接纳的规则预测任务,特别是在解析算法的公平性时。

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

机械学习是非常的红的,许四个人只是听别人讲过,但知之甚少。那篇iOS机器学习的科目将会介绍CoreML和Vison,这是iOS1第11中学引进的的七个斩新的框架。
具体来说,将学习怎么使用Places205-GoogLeNet模型将这个新API用于对图像的场景

模型品质和算法公平性分析

科技成果 8

开始

下载启航项目。他现已包括了呈现图片的用户分界面,并且只是让用户从照片库中选择另一张图纸。所以您能够小心于完结应用程序的机器学习和视觉方面。
编写翻译并运行项目,你将见到3个城市的图样和一个按键:

科技成果 9

image.png

从相册中甄选领一张图片。这几个运维项目标Info.plist已经包蕴了Privacy – Photo Library Usage Description,因而将会提醒您同意采取。
在图片和按键之间还蕴藏三个文本框,它用来展现模型对图纸场景的归类。

在那种情景下,对于选定的数根据地,模型预测该人年收入超越五万日币的信度为7三%。该工具自动定位数据集中最相似的人,模型预测其年收入低于伍万美元,然后将选定数根据地和与之最相似、但估量结果反而的数分部举办并排比较。一般来说图所示,2者唯有在年纪和事情上存在微小的出入,但模型的前瞻结果早就完全相反了。

不过,那还不是What-If Tool的凡事实力。

检查评定错误分类、评估模型公平性、调查模型差异数据集

对于富含描述真实标签性情的二分拣模型和演示,使用阈值、ROC曲线、数值混淆矩阵和资金比交互式地研究模型质量。

下图所示数据集中的面孔图像依据头发是还是不是为碳灰分开,七个图像中的每1组都建立一条ROC曲线和1个推测结果的混淆矩阵,再设置三个置信度滑块,设定模型必须在超越某1置信度时本事推断目的的脸部是微笑的。本例中,What-If工具自动安装两组的置信度阈值,以优化模型,实现机会均等。

能够用来搜求为当选数办事处中的单个特征自动生成的图,展现特征使得值不相同时测度结果的成形。

What-If Tool主要有柒大要义,不了然有未有你要求的那壹款:

对Counterfactuals的比较。二位唯有在年纪和职业上设有微小的歧异,但模型的展望结果已经完全相反

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

来源:Google AI

效果伍:按相似度排列示例

发表评论

电子邮件地址不会被公开。 必填项已用*标注

相关文章

网站地图xml地图