北京時(shí)間 6 月 5 日凌晨,蘋果 2018 年全球開發(fā)者大會 (WWDC) 在圣何塞的 McEnery 會議中心開幕。在去年的開發(fā)者大會上,圍繞軟、硬件,蘋果介紹了融合機(jī)器學(xué)習(xí)與人工智能的產(chǎn)品,例如 CoreML 框架、智能音箱 HomePod 等。
而在今年的開發(fā)者大會上,蘋果的核心放在了軟件上。從 IOS 12 開始,庫克開啟了今年的 WWDC。而在機(jī)器學(xué)習(xí)方面,蘋果發(fā)布了最新的 Create ML 與 Core ML 2。
Create ML
Create ML 文檔地址:https://developer.apple.com/documentation/create_ml
在蘋果開發(fā)者文檔介紹中,Create ML 的目標(biāo)是為應(yīng)用程序創(chuàng)建機(jī)器學(xué)習(xí)模型。開發(fā)者可以使用 Swift 與 macOS 試驗(yàn)場等熟悉的工具在 Mac 上創(chuàng)建和訓(xùn)練定制化的機(jī)器學(xué)習(xí)模型,例如用于圖像識別、文本語義抽取或數(shù)值關(guān)系搜索等任務(wù)的模型。
據(jù)介紹,開發(fā)者可以使用具有代表性的樣本訓(xùn)練模型來做模式識別,例如使用大量不同種類的狗以訓(xùn)練模型識別「狗」。在訓(xùn)練完模型后,開發(fā)者在模型沒見過的數(shù)據(jù)集上測試并評估它的性能。當(dāng)模型有較好的性能時(shí),就能使用 Core ML 將其集成到應(yīng)用程序中。
Create ML 利用機(jī)器學(xué)習(xí)基礎(chǔ)設(shè)施建立進(jìn)蘋果 Photos 和 Siri 這樣的產(chǎn)品中。這意味著你的圖片分類和自然語言處理模型可以變得更小、花費(fèi)更少的訓(xùn)練時(shí)間。
目前 Create ML 支持的任務(wù)主要包含計(jì)算機(jī)視覺、自然語言處理和其它使用標(biāo)注信息進(jìn)行預(yù)測的一般模型。在計(jì)算機(jī)視覺中,開發(fā)者可以訓(xùn)練一個(gè)機(jī)器學(xué)習(xí)模型以完成圖像識別任務(wù)。重要的是,開發(fā)者在這一過程中可以使用 Xcode 試驗(yàn)場的 UI 來訓(xùn)練模型。自然語言處理主要展示了如何使用機(jī)器學(xué)習(xí)做文本分類,它允許創(chuàng)建文本級的自然語言分類與詞匯級地分類標(biāo)注。
當(dāng)然其它任務(wù)還有一般的分類問題與回歸問題,Create ML 允許開發(fā)者訓(xùn)練一個(gè)模型以將數(shù)據(jù)分類為離散的類別或連續(xù)的數(shù)值。除此之外,Create ML 還展示了機(jī)器學(xué)習(xí)很多模塊,包括用來提升分類或回歸模型性能的度量方法和格式化數(shù)據(jù)的方法等。
如下我們將簡要展示如何使用 Create ML 創(chuàng)建圖像分類應(yīng)用。簡單而言,我們希望給定分類器一些圖像的,然后它會輸出圖像的具體類別。當(dāng)然首先我們需要準(zhǔn)備一些訓(xùn)練樣本,包括圖像與對應(yīng)標(biāo)注。然后在 Xcode 試驗(yàn)場中創(chuàng)建一個(gè) MLImageClassifierBuilder 實(shí)例,并以實(shí)時(shí)的方式查看:
// Import CreateMLUI to train the image classifier in the UI.
// For other Create ML tasks, import CreateML instead.
import CreateMLUI
let builder = MLImageClassifierBuilder()
builder.showInLiveView()
先顯示 Xcode 中的助理編輯器,然后再運(yùn)行試驗(yàn)場(Playground),這樣實(shí)時(shí)的方式就會顯示一個(gè)圖像分類器:
隨后的訓(xùn)練和評估過程都是直接拖拽訓(xùn)練數(shù)據(jù)集與測試數(shù)據(jù)集完成,非常方便。如下將測試數(shù)據(jù)集拖拽到圖中位置后就可以開始測試性能:
當(dāng)開發(fā)者完成訓(xùn)練并獲得滿意的性能時(shí),一般就能保存為 Core ML 模型并添加到應(yīng)用程序中:
Core ML 2
去年,蘋果發(fā)布了 Core ML。這是一個(gè)在蘋果產(chǎn)品上(包括 Siri、Camera 和 QuickTyPe)使用的設(shè)備上高性能機(jī)器學(xué)習(xí)框架。Core ML 能夠幫助開發(fā)者快速的融合多種機(jī)器學(xué)習(xí)模型到 APP 中,包括多層的深度學(xué)習(xí)模型以及標(biāo)準(zhǔn)的 SVM、線性模型等。此外,Core ML 為設(shè)備性能進(jìn)行了優(yōu)化,從而減少了內(nèi)存占用和功耗。嚴(yán)格在設(shè)備上運(yùn)行能夠確保用戶數(shù)據(jù)的隱私,并且能保證你的應(yīng)用在沒有網(wǎng)絡(luò)連接時(shí)也能夠工作和響應(yīng)。
Core ML 支持用于圖像分析的 Vision;用于自然語言處理的 Foundation(比如 NSLinguisticTagger 類)和用于評估已經(jīng)學(xué)習(xí)到的決策樹的 GameplayKit。Core ML 本身構(gòu)建于低層面的原語(primitives)之上,比如 Accelerate、BNNS 和 Metal Performance Shaders。
今天,蘋果發(fā)布了 Core ML 2,一個(gè)更好的升級版本。據(jù)蘋果軟件高級副總裁 Craig Federighi 介紹,相比于上一版本使用 Batch 預(yù)測速度快了 30% 左右,使用 Quantization 模型大小減少了 75% 左右。
小結(jié)
歷史 2 個(gè)多小時(shí) Keynote,蘋果介紹了自己的多個(gè)軟件。除了發(fā)布 Create ML 與 Core ML 2 之外當(dāng)然還介紹了其他在人工智能領(lǐng)域的應(yīng)用,例如隱私保護(hù)、Siri、圖片等。
其實(shí),從 2016 年 Backchannel 對蘋果人工智能的專題報(bào)道開始,人們對這家公司的 AI 研究與產(chǎn)品都極為關(guān)注,而后這家公司在 AI 方面的動(dòng)作不斷。最近,蘋果從谷歌挖來了 John Giannandrea 來負(fù)責(zé)機(jī)器學(xué)習(xí)與 AI 策略。此外,一直也有消息透露蘋果在開發(fā)自己的芯片來加速計(jì)算機(jī)視覺、語音識別等 AI 應(yīng)用。
期待未來蘋果在產(chǎn)品融合人工智能上給我們帶來更大的驚喜