「 知識小集 」2019 · 第 1 期

知識小集發表於2019-01-11

2019 年,我們嘗試一下新的方式來發我們文章。每週我們會圍繞一個主題,挑選 2 ~ 3 篇相關的文章來介紹這個主題。文章的內容會有入門、進階等不同深度。當然,每週的文章也會有主題之外的內容,要不會顯得太單調了?。如果您有想了解的主題或不錯的文章,可以在公眾號給我們留言。我們會收集資訊,以備後續整理。?

本週主題:Core ML

近幾年來,機器學習發展的如火如荼,各大公司都開始在這方面發力。Apple 當然也不想落後。隨著硬體效能的提升,Apple 也適時推出了適合於移動平臺的機器學習框架 Core ML,讓我們能在手機上更方便地體驗機器學習這項技術。

本週內容

本期公眾號的主要內容有:

這周小集的內容有:

  • 在 UILabel 中渲染 HTML
  • iOS App 異常捕獲相互覆蓋問題
  • Aspects hook 類方法的正確姿勢
  • Debug Memory Graph 檢查記憶體異常

更多內容可以檢視我們的小程式,或者 Github

文章

Core ML 人工智慧快速上手

作者對 Core ML 的初步觀感是定位為一個易用的 AI 庫,把 AI 的使用做到了非常簡便。通過首先,Core ML 需要使用副檔名為 .mimodel 的檔案作為 AI 模型。 這個模型相當於大多數 AI 所建立的模型一樣,可以是神經網路,線性模型等等。對於純粹的使用者來說這些細節可以不用深究。

Core ML 入門:構建一個簡單的影象識別應用

SwiftGG 團隊的譯文。

Core ML 使得開發者能夠將各種各樣的機器學習模型整合到應用程式中。它除了支援超過 30 層型別的廣泛深度學習,還支援如樹整合、SVMs 和廣義線性模型等標準模型。Core ML 建立在像 Metal 和 Accelerate 這樣的底層技術之上,因此它能夠無縫地充分利用 CPU 和 GPU 以實現效能最大化。機器學習模型可直接執行在裝置上,以至於資料被分析時不需要脫離裝置。

本文的示例程式很簡單,讓使用者拍攝或者從相簿中選擇一張照片,然後機器學習演算法將會嘗試預測照片中的物體。雖然預測結果可能並不完美,但你將藉此瞭解到如何將 Core ML 應用到應用程式上。

Apple’s Core ML 2 vs. Google’s ML Kit: What’s the difference?

在Apple的2018年全球開發者大會上,Cupertino 公司宣佈推出 Core ML 2。而 Google 也在同一年的 I/O 2018 推出了適用於 iOS 和 Android 兩個平臺的 ML Kit。本文分別簡單介紹了兩個框架,並做了一個簡單的評價。兩者各有優點和短板,最大的區別可能是各自平臺對兩者的支援。Core ML 自然不能在 Android 上使用,而 Google 則提供了大量預先構建的機器學習模型和API供您選擇,包括用於上下文訊息回覆和條形碼掃描的 API。選擇使用哪個框架,更多的是取決的開發者。

What’s New in Core ML 2

這篇文章總結了 Core ML 2.0 中的所有新變化。Core ML 2.0旨在使模型更小,更快,更可定製。我們看到了如何通過權重量化來減小 Core ML 模型的大小,通過新的 Batch API 提高模型的效能,以及我們可能需要為模型編寫自定義層的示例。

開原始碼

CoreML-in-ARKit

這個小應用是用於檢測物件並通過 AR 在物體上方顯示 3D 標籤來標識物體名稱。物體的識別則是使用 Core ML 的 Vision 來實現,可以體驗一下。

CoreMLHelpers

這個庫封裝了 Core ML 的一些功能,提供一些型別和函式,讓我們可以更方便地使用 Core ML。

CoreMLHelpers 提供了以下功能:

  • 將影象轉換為CVPixelBuffer物件並返回
  • MLMultiArray到影象轉換
  • 一些簡便的功能,如獲得前 5 個預測、argmax,等等
  • 對邊界框的非最大抑制
  • 一個更加友好的 MLMultiArray

MobileNet with CoreML

這是使用 Apple 的 Core ML 實現的針對 MobileNets: Efficient Convolutional Neural Networks for Mobile Vision Applications 一文提出的 MobileNet 神經網路框架。同時包含兩個 Demo 來演示框架的使用。

視訊

Apple 在 WWDC 2017 推出了 Core ML,並且在 WWDC 2018 推出了升級版本 Core ML。在這兩次 WWDC 上,Apple 都花了不少時間來推廣這個框架,主要的視訊有:

WWDC 2017

WWDC 2018

資源

Awesome CoreML Models

Github 上的 Awesome 系列。

自 iOS 11 以來,Apple 釋出了Core ML框架,以幫助開發人員將機器學習模型整合到應用程式中。在這個 repo 中,收錄了大量的 Core ML 格式的機器學習模型,以 以幫助 iOS、macOS、tvOS 和 watchOS 開發人員嘗試機器學習技術。同時還有一個相關的網站 CoreML.Store,以視覺化的形式來展示這些模型。(不好意思,我沒有開啟?)

我們以Core ML格式提供了最大的機器學習模型集合,以幫助iOS,macOS,tvOS和watchOS開發人員嘗試機器學習技術。 我們已經建立了一個具有更好的CoreML.Store模型視覺化的站點,並且正在開發更多高階功能。

tfcoreml

將 TensorFlow (TF) 模型轉換為 CoreML 模型的 python 工具。

職位

最近各種裁員新聞,讓很多小夥伴成了受害者。我們希望能做一些力所能及的事。所以在 老司機週報 團隊的組織下,和 老司機週報、SwiftGG 團隊一起,收集整理一些招聘內推資訊,分享給大家,希望對失業的小夥伴有所幫助。

關注我們

歡迎關注我們的公眾號:iOS-Tips,也歡迎加入我們的群組討論問題。可以公眾號留言 iosflutter 等關鍵詞獲取入群方式。

「 知識小集 」2019 · 第 1 期

相關文章