做網(wǎng)站需要做什么頁面媒體網(wǎng)絡(luò)推廣價(jià)格優(yōu)惠
用iOS的ML(機(jī)器學(xué)習(xí))創(chuàng)建自己的AI App
目錄
- 用iOS的ML(機(jī)器學(xué)習(xí))創(chuàng)建自己的AI App
- 機(jī)器學(xué)習(xí)如同迭代過程
- CoreML 的使用方法?
- 軟件要求
- 硬件
- 開始吧?。?/li>
- 構(gòu)建管道:
- 設(shè)計(jì)和訓(xùn)練網(wǎng)絡(luò)
- Keras 轉(zhuǎn) CoreML
- 將模型集成到 Xcode 中
- 結(jié)論
推薦超級課程:
- Docker快速入門到精通
- Kubernetes入門到大師通關(guān)課
- AWS云服務(wù)快速入門實(shí)戰(zhàn)
在機(jī)器學(xué)習(xí)中,一切都始于模型,這是進(jìn)行預(yù)測或識別的系統(tǒng)。教計(jì)算機(jī)學(xué)習(xí)涉及使用訓(xùn)練數(shù)據(jù)的機(jī)器學(xué)習(xí)算法進(jìn)行學(xué)習(xí)。從訓(xùn)練中生成的輸出通常稱為機(jī)器學(xué)習(xí)模型。有不同類型的機(jī)器學(xué)習(xí)模型來解決同一個(gè)問題(例如對象識別),但使用不同的算法。神經(jīng)網(wǎng)絡(luò), 樹集成, 支持向量機(jī)(SVM)是其中一些機(jī)器學(xué)習(xí)算法。
機(jī)器學(xué)習(xí)如同迭代過程
首先,我們嘗試使用公共模型,但為了帶來獨(dú)特的市場價(jià)值和優(yōu)勢,我們希望我們的模型能勝過其他模型。我們在尋找的是所謂的ML反饋循環(huán)。谷歌在其ML功能中遵循以下模式:
- 獲取初始數(shù)據(jù)(一次性)
- — — — — —
- 對數(shù)據(jù)進(jìn)行標(biāo)記
- 訓(xùn)練模型
- 測試模型
- 將模型投入生產(chǎn)運(yùn)行
- 獲取新數(shù)據(jù)(并重復(fù))
現(xiàn)在,對于一個(gè)移動(dòng)應(yīng)用程序,流程看起來像是:
在上圖中,移動(dòng)應(yīng)用程序似乎使用了由ML創(chuàng)建的模型,但是它是如何工作的?是的,這里就是Core ML發(fā)揮作用的地方。
CoreML 的使用方法?
Core ML 是蘋果的一種新的機(jī)器學(xué)習(xí)框架。它將機(jī)器學(xué)習(xí)模型帶到蘋果設(shè)備上,并讓開發(fā)者能夠輕松利用機(jī)器學(xué)習(xí)。我們可以使用蘋果準(zhǔn)備的十幾種模型,或者從流行的ML框架(比如Keras,Caffe 或 scikit-learn)中轉(zhuǎn)換開源模型。
使用 CoreML 創(chuàng)建IOS應(yīng)用程序的工作流程如下:
1- 您需要使用如Caffe、turi、Keras等ML框架創(chuàng)建一個(gè)數(shù)據(jù)模型。
2- 安裝名為Core ML Tools的Python框架,將數(shù)據(jù)模型轉(zhuǎn)換為Core ML格式。此轉(zhuǎn)換的結(jié)果將是一個(gè)帶有mlmodel擴(kuò)展的文件。
3- 就是這樣,您可以使用Core ML Tools創(chuàng)建的模型,并將其用于您的移動(dòng)應(yīng)用程序。
軟件要求
為了訓(xùn)練模型,我們需要一個(gè)ML框架。最流行的是由Google開發(fā)的Tensorflow。它受到社區(qū)最好的支持,并擁有大量的教程和開發(fā)者的關(guān)注。然而,當(dāng)您深入了解時(shí),您可能會(huì)最終發(fā)現(xiàn)自己在Github 問題頁面或堆棧溢出上處理一些數(shù)學(xué)問題或未記錄的代碼。與Web應(yīng)用程序或移動(dòng)開發(fā)相比,ML仍處于嬰兒階段,作為開發(fā)者,您需要準(zhǔn)備好面對這些。建議您留出額外的時(shí)間來探索ML的神秘之處。開始使用高級庫如Keras或許更容易。您可以在文章結(jié)尾處查看一些訓(xùn)練教程的鏈接。
Tensorflow 和 Keras 是最常見的ML庫之一
硬件
許多人說我們需要一個(gè)GPU來訓(xùn)練模型。對于需要高精度或進(jìn)行一些網(wǎng)絡(luò)架構(gòu)調(diào)整的項(xiàng)目來說這是正確的。如果我們需要一個(gè)包含10個(gè)類別的圖像分類器,那么我們可以利用遷移學(xué)習(xí),在標(biāo)準(zhǔn)CPU上對我們的模型進(jìn)行10分鐘的微調(diào)。然而,對于真實(shí)的生產(chǎn)應(yīng)用,我們通常需要GPU的性能。我們已經(jīng)嘗試了幾家云服務(wù)提供商,亞馬遜AWS的g2.2xlarge實(shí)例是一個(gè)不錯(cuò)的選擇。
開始吧??!
到目前為止,您已經(jīng)知道了使用機(jī)器學(xué)習(xí)創(chuàng)建IOS應(yīng)用所需的必要工具,那就開始吧!
構(gòu)建管道:
要使用Core ML工具,第一步是在您的Mac上安裝Python。首先,下載Anaconda(選擇Python 2.7版本)。Anaconda是一種在Mac上運(yùn)行Python而不會(huì)出現(xiàn)問題的超級簡單方式。安裝Anaconda后,請轉(zhuǎn)到終端并輸入以下命令:
conda install python=2.7.13conda update python
接下來是創(chuàng)建一個(gè)虛擬環(huán)境。在虛擬環(huán)境中,您可以使用不同版本的Python或包來編寫程序。要?jiǎng)?chuàng)建一個(gè)新的虛擬環(huán)境,請輸入以下命令。
conda create --name handwriting當(dāng)終端提示您時(shí),pr