Turi Create 是什么?
Turi Create 是 Apple 開源的一款機器學習工具庫, 可用于通過遷移學習, 構建對象檢測、圖像分類菲驴、圖像相似性或活動分類功能的 ML 模型.
Turi Create 支持的平臺包括 macOS 10.12+
, Linux (with glibc 2.12+)
, Windows 10 (via WSL)
使用Turi Create
- 建議安裝 Anaconda, 機器學習全家桶. 安裝完, 打開 Anaconda 程序, 添加一個獨立的環(huán)境, 如果嫌麻煩, 可以直接使用 root 下的環(huán)境.
- 創(chuàng)建完環(huán)境后, 安裝需要的第三方庫, 比如
turicreate
,jupyter notebook
,
- 創(chuàng)建完環(huán)境后, 安裝需要的第三方庫, 比如
pip install turicreate jupyter
- 利用 jupyter notebook 編寫代碼
下面展示了 Turi Create 目前能做的事, 基本上都是在訓練的時候, 下載相關的機器學習模型的權重文件, 來創(chuàng)建新的模型. 也叫遷移學習.
- 利用 jupyter notebook 編寫代碼
ML Task | Description |
---|---|
Recommender | 用戶推薦 |
Image Classification | 圖片分類 |
Object Detection | 物體識別 |
Style Transfer | 圖片風格化 |
Activity Classification | 動作識別 |
Image Similarity | 圖片歸同 |
Classifiers | 預測標簽 |
Regression | 回歸分析 |
Clustering | 數(shù)據(jù)分組 |
Text Classifier | 文本識別 |
下面是風格轉化. 我是在 jupyter notebook 里編寫代碼, 最大的好處是分步展示輸出代碼效果.
mport turicreate as tc
# 加載數(shù)據(jù)
styles = tc.load_images('style_image/')
content = tc.load_images('content_image/')
# 創(chuàng)建模型
model = tc.style_transfer.create(styles, content)
# 測試圖片
test_images = tc.load_images('content_image2/')
# 風格化
# 輸出所有效果
stylized_images = model.stylize(test_images)
# 輸出第一種效果
stylized_images2 = model.stylize(test_images, style=0)
# 輸出第一種和第二種效果
stylized_images3 = model.stylize(test_images, style=[0, 1])
# 調整圖片最大值
stylized_images4 = model.stylize(test_images, max_size=1024)
# 展示效果
stylized_images.explore()
# 保存模型
model.save('transfer.model')
# 導出為 Core ML 模型
model.export_coreml('transfer.mlmodel')
Turi Create 的優(yōu)缺點
- 優(yōu)點: 利用遷移學習, 大大簡化了機器學習的過程.
- 缺點:
- 目前只支持
macOS 10.12+
,Linux (with glibc 2.12+)
,Windows 10 (via WSL)
, 這三個平臺. 如果沒有GPU加速的話, 訓練會非常費勁. - 目前只能做到遷移學習, 而且訓練的過程是不可參與的, 內(nèi)部無法調試, 與其相對, TFiwS 可以自定義模型, 但是目前還不成熟.
- 目前只支持
IBM_Watson 服務是什么?
app 可通過接入 Watson 的服務, 來快速分析圖像道批,準確地對視覺內(nèi)容進行分類错英,并輕松地訓練模型.
Watson 服務有哪些?
在 IBM 官網(wǎng)注冊賬號, 登錄后, 在這里可以看到有一些比較有意思的服務, 比如Text to Speech
, Speech to Text
, Language Translator
, visual Recognition
.
使用 Watson 服務
- 這里有一個 Watson 提供的一個 圖片識別的項目. 項目里面有詳細介紹怎么使用 Waston 服務, 我就不贅述. 基本上大部分服務都支持中文.
- 免費用戶的 API 調用次數(shù)是 10000次/月, 一般的使用應該是足夠的.
模型轉換器:
- Core ML Tools 這個 python 包支持將機器學習工具箱中的模型轉換為 Core ML 格式.
- MXNet -> CoreML 支持將 MXNet 模型轉化為 CoreML格式
- TF -> CoreML支持將 TensorFlow 模型轉化為 CoreML 格式.
- ONNX -> CoreML支持將 ONNX 模型 轉化為 CoreML 格式.
官方提供的可下載的預訓練模型:
MobileNet, SqueezeNet, Places205-GoogLeNet, ResNet50, Inception v3, VGG16
這些模型基本上擅長的工作都是 圖像識別 一類的
總結:
基本上關于 Apple 在 ML 這一領域的系列文章可以暫時告一段落, 總得來說, Apple 在 ML 這一領域在不斷發(fā)展, 雖然目前來看, 還遠遠達不到生產(chǎn)的程度, TFiwS 還是太年輕, 畢竟只開源了 5 個月左右.
參考
Apple官網(wǎng)-機器學習-中文
使用 Core ML 模型-中文
CoreML 模型集錦
iOS-機器學習