前往小程序,Get更优阅读体验!
立即前往
首页
学习
活动
专区
工具
TVP
发布
社区首页 >专栏 >将Core ML模型集成到您的应用程序中

将Core ML模型集成到您的应用程序中

作者头像
iOSDevLog
发布2018-07-25 16:56:22
1.3K0
发布2018-07-25 16:56:22
举报
文章被收录于专栏:iOSDevLogiOSDevLog

将简单模型添加到应用程序,将输入数据传递给模型,并处理模型的预测。

下载

SDKs

  • iOS 11.0+
  • Xcode 9.0+

Framework

  • Core ML

概观

此示例应用程序使用经过训练的MarsHabitatPricer.mlmodel模型来预测火星上的栖息地价格。

将模型添加到Xcode项目中

通过将模型拖动到项目导航器中,将模型添加到Xcode项目中。

您可以通过在Xcode中打开模型来查看有关模型的信息,包括模型类型及其预期的输入和输出。在此示例中,输入是太阳能电池板和温室的数量,以及栖息地的地块面积(以英亩为单位)。输出是栖息地的预测价格。

在代码中创建模型

Xcode还使用有关模型输入和输出的信息来自动生成模型的自定义编程接口,您可以使用该接口与代码中的模型进行交互。因为,Xcode生成接口来表示model (MarsHabitatPricer),模型的输入(MarsHabitatPricerInput)和模型的输出(MarsHabitatPricerOutput)。

使用生成的MarsHabitatPricer类的初始值设定项来创建模型:

代码语言:javascript
复制
let model = MarsHabitatPricer()

获取输入值以传递给模型

此示例应用程序使用UIPickerView来获取用户的模型输入值。

代码语言:javascript
复制
func selectedRow(for feature: Feature) -> Int {
    return pickerView.selectedRow(inComponent: feature.rawValue)
}

let solarPanels = pickerDataSource.value(for: selectedRow(for: .solarPanels), feature: .solarPanels)
let greenhouses = pickerDataSource.value(for: selectedRow(for: .greenhouses), feature: .greenhouses)
let size = pickerDataSource.value(for: selectedRow(for: .size), feature: .size)

使用模型进行预测

MarsHabitatPricer类有一个prediction(solarPanels:greenhouses:size:),这些会用来从模型的输入预测价格的方法值-在这种情况下,太阳能电池板的数量,温室的数量和栖息地的大小(在英亩)。此方法的结果是一个实例。

代码语言:javascript
复制
guard let marsHabitatPricerOutput = try? model.prediction(solarPanels: solarPanels, greenhouses: greenhouses, size: size) else {
    fatalError("Unexpected runtime error.")
}

访问price属性以获取预测价格并在应用程序的UI中显示结果。

代码语言:javascript
复制
let price = marsHabitatPricerOutput.price
priceLabel.text = priceFormatter.string(for: price)

注意 生成的prediction(solarPanels:greenhouses:size:)方法可能会抛出错误。使用Core ML时遇到的最常见类型的错误发生在输入数据的详细信息与模型所期望的详细信息不匹配时 - 例如,图像格式错误。

构建并运行Core ML应用程序

Xcode将Core ML模型编译为经过优化以在设备上运行的资源。模型的优化表示包含在您的应用程序包中,用于在应用程序在设备上运行时进行预测。

也可以看看

第一步

获得核心ML模型

获取要在您的应用中使用的Core ML模型。

将训练模型转换为核心ML

将使用第三方机器学习工具创建的训练模型转换为Core ML模型格式。

原文:https://developer.apple.com/documentation/coreml/integrating_a_core_ml_model_into_your_app

本文参与 腾讯云自媒体分享计划,分享自作者个人站点/博客。
原始发表:2018.07.16 ,如有侵权请联系 cloudcommunity@tencent.com 删除

本文分享自 作者个人站点/博客 前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

本文参与 腾讯云自媒体分享计划  ,欢迎热爱写作的你一起参与!

评论
登录后参与评论
0 条评论
热度
最新
推荐阅读
目录
  • 概观
    • 将模型添加到Xcode项目中
      • 在代码中创建模型
        • 获取输入值以传递给模型
          • 使用模型进行预测
            • 构建并运行Core ML应用程序
            • 也可以看看
              • 第一步
              相关产品与服务
              TI-ONE 训练平台
              TI-ONE 训练平台(以下简称TI-ONE)是为 AI 工程师打造的一站式机器学习平台,为用户提供从数据接入、模型训练、模型管理到模型服务的全流程开发支持。TI-ONE 支持多种训练方式和算法框架,满足不同 AI 应用场景的需求。
              领券
              问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档