成人免费xxxxx在线视频软件_久久精品久久久_亚洲国产精品久久久_天天色天天色_亚洲人成一区_欧美一级欧美三级在线观看

你在打王者農藥,有人卻用iPhone來訓練神經網絡

人工智能 深度學習 后端
在 iOS 設備上也可以直接訓練 LeNet 卷積神經網絡,而且性能一點也不差,iPhone 和 iPad 也能化為實實在在的生產力。

你知道嗎?在 iOS 設備上也可以直接訓練 LeNet 卷積神經網絡,而且性能一點也不差,iPhone 和 iPad 也能化為實實在在的生產力。

機器學習要想在移動端上應用一般分為如下兩個階段,第一個階段是訓練模型,第二個階段是部署模型。常規的做法是在算力強大的 GPU 或 TPU 上對模型進行訓練,之后再使用一系列模型壓縮的方法,將其轉換為可在移動端上運行的模型,并與 APP 連通起來。Core ML 主要解決的就是最后的模型部署這一環節,它為開發者提供了一個便捷的模型轉換工具,可以很方便地將訓練好的模型轉換為 Core ML 類型的模型文件,實現模型與 APP 數據的互通。

以上是常規的操作。然而,隨著 iOS 設備計算性能的提升,坊間不斷產生一些 iPad Pro 算力超過普通筆記本的言論。于是乎,就出現了這么一位「勇者」,開源了可以直接在 iOS 設備上訓練神經網絡的項目。

項目作者在 macOS、iOS 模擬器和真實的 iOS 設備上進行了測試。用 60000 個 MNIST 樣本訓練了 10 個 epoch,在模型架構與訓練參數完全相同的前提下,使用 Core ML 在 iPhone 11 上訓練大概需要 248 秒,在 i7 MacBook Pro 上使用 TensorFlow 2.0 訓練需要 158 秒(僅使用 CPU 的情況下),但準確率都超過了 0.98。

當然,在 248 秒和 158 秒之間還有非常大的差距,但進行此項實驗的目的并不是比速度,而是為了探索用移動設備或可穿戴設備在本地進行訓練的可行性,因為這些設備中的數據往往比較敏感,而且涉及隱私,本地訓練可以提供更好的安全性。

項目地址:https://github.com/JacopoMangiavacchi/MNIST-CoreML-Training

MNIST 數據集

在這篇文章中,作者介紹了如何使用 MNIST 數據集部署一個圖像分類模型,值得注意的是,這個 Core ML 模型是在 iOS 設備上直接訓練的,而無需提前在其他 ML 框架中進行訓練。

作者在這里使用了一個很有名的數據集——MNIST 手寫數字數據集。它提供了 60000 個訓練樣本和 10000 個測試樣本,都是從 0 到 9 的 28x28 手寫數字黑白圖像。

LeNet CNN 架構

如果你想了解 CNN 的細節和優勢,從 LeNet 架構著手是一個再好不過的起點。LeNet CNN+MNIST 數據集的組合是機器學習「訓練」的標準組合,簡直相當于深度學習圖像分類的「Hello, World」。

這篇文章主要著眼于如何在 iOS 設備上直接為 MNIST 數據集構建和訓練一個 LeNet CNN 模型。接下來,研究者將把它與基于著名的 ML 框架(如 TensorFlow)的經典「Python」實現方法進行比較。

在 Swift 中為 Core ML 的訓練準備數據

在討論如何在 Core ML 中創建及訓練 LeNet CNN 網絡之前,我們可以先看一下如何準備 MNIST 訓練數據,以將其正確地 batch 至 Core ML 運行中去。

在下列 Swift 代碼中,訓練數據的 batch 是專門為 MNIST 數據集準備的,只需將每個圖像的「像素」值從 0 到 255 的初始范圍歸一化至 0 到 1 之間的「可理解」范圍即可。

為 Core ML 模型(CNN)訓練做準備

處理好訓練數據的 batch 并將其歸一化之后,現在就可以使用 SwiftCoreMLTools 庫在 Swift 的 CNN Core ML 模型中進行一系列本地化準備。

在下列的 SwiftCoreMLTools DSL 函數構建器代碼中,還可以查看在相同的情況中如何傳遞至 Core ML 模型中。同時,也包含了基本的訓練信息、超參數等,如損失函數、優化器、學習率、epoch 數、batch size 等等。

使用 Adam 優化器訓練神經網絡,具體參數如下:

接下來是構建 CNN 網絡,卷積層、激活與池化層定義如下:

再使用一組與前面相同的卷積、激活與池化操作,之后輸入 Flatten 層,再經過兩個全連接層后使用 Softmax 輸出結果。

得到的 CNN 模型

剛剛構建的 Core ML 模型有兩個卷積和最大池化嵌套層,在將數據全部壓平之后,連接一個隱含層,最后是一個全連接層,經過 Softmax 激活后輸出結果。

基準 TensorFlow 2.0 模型

為了對結果進行基準測試,尤其是運行時間方面的訓練效果,作者還使用 TensorFlow 2.0 重新創建了同一 CNN 模型的精確副本。

下方的的 Python 代碼展示了 TF 中的同一模型架構和每層 OutPut Shape 的情況:

可以看到,這里的層、層形狀、卷積過濾器和池大小與使用 SwiftCoreMLTools 庫在設備上創建的 Core ML 模型完全相同。

比較結果

在查看訓練執行時間性能之前,首先確保 Core ML 和 TensorFlow 模型都訓練了相同的 epoch 數(10),用相同的超參數在相同的 10000 張測試樣本圖像上獲得非常相似的準確度度量。

從下面的 Python 代碼中可以看出,TensorFlow 模型使用 Adam 優化器和分類交叉熵損失函數進行訓練,測試用例的最終準確率結果大于 0.98。

Core ML 模型的結果如下圖所示,它使用了和 TensorFlow 相同的優化器、損失函數以及訓練集和測試集,可以看到,其識別準確率也超過了 0.98。

 

 

責任編輯:龐桂玉 來源: 深度學習工坊
相關推薦

2020-05-27 11:10:54

KerasLSTM神經網絡

2017-12-22 08:47:41

神經網絡AND運算

2019-08-19 00:31:16

Pytorch神經網絡深度學習

2017-07-17 12:17:38

2017-08-28 21:31:37

TensorFlow深度學習神經網絡

2021-06-22 09:46:52

神經網絡人工智能深度學習

2020-08-13 09:30:30

谷歌Android開發者

2018-07-03 16:10:04

神經網絡生物神經網絡人工神經網絡

2017-07-19 11:39:25

深度學習人工智能boosting

2017-09-28 16:15:12

神經網絡訓練多層

2018-05-16 09:41:13

神經網絡NN函數

2020-05-11 13:44:38

神經網絡人工智能深度學習

2017-03-27 16:18:30

神經網絡TensorFlow人工智能

2021-12-28 08:48:54

PyTorch神經網絡人工智能

2023-08-21 10:48:25

2017-08-29 13:50:03

TensorFlow深度學習神經網絡

2018-01-24 10:48:34

神經網絡深度學習前端

2017-05-22 14:45:51

大數據神經網絡架構

2023-06-30 13:48:00

算法AI

2018-12-14 08:02:55

神經網絡機器學習二值模型
點贊
收藏

51CTO技術棧公眾號

主站蜘蛛池模板: 一区二区视频 | 欧美精品欧美精品系列 | www久久久| 一区二区三区视频在线观看 | 国产一级片一区二区 | 亚洲成人一区二区三区 | 精品视频久久久 | 日韩精品一区二区三区视频播放 | 东京av男人的天堂 | 午夜精品一区二区三区在线观看 | 琪琪午夜伦伦电影福利片 | 一区二区av在线 | 久久免费精品 | 男女网站免费观看 | 国产片侵犯亲女视频播放 | 日本精品视频在线观看 | 亚洲91精品| 成人日b视频 | 国产精品99久久久久久动医院 | 亚洲成人精品 | 草草视频在线观看 | 91精品久久久久久久久 | 97影院2| 国精产品一区二区三区 | 国产人成在线观看 | 欧美精品一区二区免费 | 91欧美激情一区二区三区成人 | 中文字幕精品一区 | www日本在线播放 | 黄网站涩免费蜜桃网站 | 欧美一级二级三级视频 | 91精品福利| 狠狠撸在线视频 | av黄色免费 | hitomi一区二区三区精品 | 国产美女视频一区 | 成人免费在线观看 | 欧美二区在线 | h片免费看 | 不卡一区 | 看真人视频一级毛片 |