本系列文集主要會記錄我在“將機器學(xué)習(xí)模型部署到iOS App上”的一些學(xué)習(xí)和研究干旧,記錄下來渠欺,以備查詢。如果能夠?qū)Υ蠹矣兴鶐椭得校且彩亲詈貌贿^的了挠将。
關(guān)注點
術(shù)業(yè)有專攻胳岂,對于iOS Developer而言,要部署機器學(xué)習(xí)模型舔稀,我們應(yīng)該關(guān)注一些我們應(yīng)該關(guān)注的點旦万,而把其他點,交給其他更加專業(yè)的人來做镶蹋。
比如成艘,我們的關(guān)注點包括(當然不僅限于):
- 如何在iOS中部署機器學(xué)習(xí)模型
- 模型在iOS中的性能優(yōu)化
- 性能優(yōu)化對模型各項指標的影響
- 模型的熱更新
而并不是特別關(guān)注:
- 模型算法的優(yōu)化
- 模型的訓(xùn)練過程
- 模型經(jīng)過訓(xùn)練后,在部署前贺归,對我們而言已經(jīng)固化的各項指標淆两,比如性能、準確度等
知識儲備
如果你需要在iOS中部署機器學(xué)習(xí)模型拂酣,除了需要掌握iOS的一些基本知識外秋冰,你還需要了解一下機器學(xué)習(xí)的一些基礎(chǔ)的理論知識和主流的技術(shù)。以下是一些個人建議婶熬,如果你是一名iOS Developer剑勾,同時對機器學(xué)習(xí)理論、Python赵颅、機器學(xué)習(xí)主流框架都有一定的了解虽另,可以跳過本文,直接閱讀后續(xù)文章饺谬。
- iOS基礎(chǔ)
你至少需要是一名iOS Developer捂刺,最好對圖像處理、音視頻處理有所了解募寨。
- 機器學(xué)習(xí)理論基礎(chǔ)
對于新手而言族展,知乎的這邊文章,能夠幫助你很好的入門機器學(xué)習(xí)的理論知識:《如何用3個月零基礎(chǔ)入門「機器學(xué)習(xí)」拔鹰?》仪缸。當然了,如果你對機器學(xué)習(xí)算法不感興趣列肢,或者急于將現(xiàn)成的算法模型集成到iOS恰画,以獲取成就感,大可暫時跳過其中的數(shù)學(xué)推導(dǎo)部分例书,留到以后慢慢精進锣尉,也是可以的刻炒,這取決于個人的學(xué)習(xí)路線决采。
- 機器學(xué)習(xí)技術(shù)
你需要對一些主流的機器學(xué)習(xí)技術(shù)有一定的了解,包括Python坟奥、TensorFlow树瞭、Keras拇厢、Caffe,并且實際使用過他們晒喷。
Core ML
Core ML 2 是一個機器學(xué)習(xí)框架孝偎,能用于眾多 Apple 的產(chǎn)品,包括 Siri凉敲、相機和快速輸入衣盾。Core ML 2 帶來了極速的性能和機器學(xué)習(xí)模型的輕松整合,使您僅用幾行代碼就能為 app 構(gòu)建智能功能∫ィ現(xiàn)在势决,您還可以在 Mac 上使用 Create ML 和 Xcode 10 中的 playground 構(gòu)建自己的模型。
更多Core ML的介紹請參閱蘋果官方蓝撇。
TensorFlow Lite
TensorFlow Lite is the official solution for running machine learning models on mobile and embedded devices. It enables on?device machine learning inference with low latency and a small binary size on Android, iOS, and other operating systems.
TensorFlow Lite 是用于在移動端和嵌入式設(shè)備上跑機器學(xué)習(xí)模型的Google官方解決方案果复。它為Android和iOS提供了更小、更快的運行機器學(xué)習(xí)模型的解決方案渤昌。
好吧虽抄,廢話那么多,讓我們從最簡單的開始吧独柑!