安妮 编译自 Hackernoon 量子位出品 | 公众号 QbitAI 昨天,年仅18岁的iOS app开发者Alex Wulff在Hackrnoon上发布了一篇教程,手把手教你如何将苹果在WWDC上发布的众多API应用到你的电脑上。量子位全文编译如下: △Alex Wulff iOS 11真的来了。 苹果在iOS 11里引入了本地机器学习和机器视觉框架,直播,承诺这将促进app和游戏的一大飞跃性进步,也解锁了一大堆可能性。 目前机器学习解决方案已经可以在云端实现了。但这些系统不仅需要持续连网,经常在iOS上有明显的延迟,也为敏感数据带来了安全风险。有些App在用第三方Swift AI系统,但是这些框架很难占据主流开发社区。 你也想知道如何将苹果新发布的API集合到你的电脑上?其实比你想象的简单。 你首先需要在电脑上下载Xcode 9 beta程序,链接在这里: https://developer.apple.com/download/ 这个文件非常大,可能需要很长时间下载。而且这个早期测试版含有很多bug和一些其他问题。不过在Xcode漫长的下载过程中,你可以继续把这篇文章的剩余部分看完,之后就能进行下面的操作了。 下面这个是我编写的一个演示iOS中新引入的机器学习功能的小样例。 Github链接: https://github.com/AlexFWulff/Machine-Learning-Demo-iOS
我的样例可以为输入的图片进行分类,所有计算都是在含Core ML和视觉框架的设备上完成的。 这个项目内容不多,其中,希望你能注意GoogLeNetPlaces.mlmodel。这是几年前谷歌研究人员训练的机器视觉模型,苹果的新机器学习API允许开发者在他们的iOS app中轻松地访问这些标准化的模型。当你把.mlmodel格式的文件拖进App中时,Xcode会为它自动创建Swift wrapper。一些这样的模型文件大小可超几百兆。 不幸的是,Core ML文件离“人类可读”还很远,它们只是大量字节的集合,告诉设备如何处理输入的“神经元”。模型越复杂,文件就越大。
苹果提供四种不同的训练模型。你可以在这个链接中找到这些模型: https://developer.apple.com/machine-learning/ 苹果的Core ML Tools Python软件包允许开发人员将现有的模型转化为iOS可读取的Core ML格式。希望格式对你来说没有限制,并且期待你能掌握各种用例的训练模型。
△众多bug之一:即使你的项目正在被编写,但编辑器仍然认为Swift wrapper不存在 接下来,打开ViewController文件。第一个代码片段(见上图)只是简单尝试创建一个变量来存储你所选模型的视觉展示。即使在这一节中出现了错误,项目仍能被编辑。我在Xcode 9测试版中发现了不少bug,这是其中一个。 为了支持Core ML模型,苹果也推出了自己的机器视觉API,并命名为Vision。Vision包含了许多不同的机器视觉模型,它们可以检测人脸、条形码、文本等多种类型,还提供基于图像的Core ML模型wrapper。例如,项目中的模型可以以图片作为输入,并且返回一个描述性字符串作为输出。对于非基于图像的模型,苹果已经创建了小型示例项目演示它的使用方法,它独立于Vision,只依赖Core ML。 你也需要这个示例项目?给你链接: https://developer.apple.com/documentation/coreml/integrating_a_core_ml_model_into_your_app
接下来该建立和处理请求了。你可以在项目导航器中看到尝试此模型的不同图像。用其他任何文件名替代“airport”字符串,建立并且运行项目,看看如何将结果输出到控制台更改。
最后一个片段代码只接受请求的结果并会将它打印出来。在这个Demo中,我没有设置出错时提醒之类的机制,所以一旦出现了错误,整个程序就会崩溃。 另一个影响项目的大bug是将文件拖放带项目导航器中发生的。bug修复前,不要在Xcode 9中尝试这个功能,atv,会因为它将给依赖链带去巨大的影响。你只需在Xcode的早期版本中打开Xcode项目,如果有需要的话,选择copy项,并确认。 最后一个bug可能会在你运行项目的时候突然出现。如果模拟器无法启动,你需要先退出模拟器和Xcode。 以上就是我带来的iOS 11中轻松使用机器学习的示例项目。苹果链接中的其他三个模型应该都与VNCoreMLRequest兼容。 附上这个18岁小码农的个人网站:。 【完】 学习推荐 6月15号量子位组织沙龙活动,邀请到了图森首席科学家王乃岩博士分享自动驾驶相关话题,欢迎大家长按下图扫码报名~ One More Thing… 今天AI界还有哪些事值得关注?在量子位(QbitAI)公众号对话界面回复“今天”,看我们全网搜罗的AI行业和研究动态。笔芯~ 追踪人工智能领域最劲内容 (责任编辑:本港台直播) |