LoginSignup
15
11

More than 5 years have passed since last update.

CreateMLを使ってさらっと画像認識させてみた

Posted at

はじめに

こんにちは、先日WWDC2018報告会にいってきました。
そこでCreateMLについて発表されていた方がいて面白そう✨と思ったので
やってみました

CreateMLってまずなんだよ

SwiftやPlayGround上でCreateMLを使うことによって機械学習ができるフレームワークです。
データを学習させれば画像認識や文章の分類やデータの分類や量の推定ができるなどができるようになります。
その中から今回は画像認識についてやっていきまっせ
XcodeとSwiftだけで機械学習ができるなんてすごいね!!!

やる前に準備しなきゃね

  • macOS 10.14+ (mojave)
  • Xcode 10.0+

この二つが必要です
まだbetaなのでmojaveを入れる時にはバックアップを取っておくと安全ですね!
(ちなみに僕はアァーって感じでバックアップを取らずに会社のMacBookにぶち込みました)

やってみよう

PlayGroundを開いてtargetをmacOSにします

MyPlayGround
import CreateMLUI

//画像を分類するでってやつ
let buidler = MLImageClassifierBuilder()
//AssistantEditorのLiveViewに表示するでってやつ
buidler.showInLiveView()

コードはこれだけ!!!
わーすごい!
RunしてAssistantBuidlerを開くとこんな画面スクリーンショット 2018-06-29 16.33.35.png

そういえば...
データセットを用意してなかったね!
なんか適当にたくさん画像を拾って来ましょう
最低でも10枚は必要そうなので頑張って集めましょうね

スクリーンショット 2018-06-29 16.36.49.png
僕はこんな感じでトレーニングさせるようのデータを各フォルダに30枚ずつぶちこんでます
とりあえずはこれぐらいでいいかな(チョットメンドクサカッタヨネ)

テストデータとトレーニングデータは1:9の比率がベストらしいので(なんかで見た)
テスト用のデータを3枚ずつ準備しましょうスクリーンショット 2018-06-29 16.41.33.png
こんな感じで

そしたらAssistant Editorの点線のなかにDrop Images To Begin Trainingって書いてあるので
トレーニング用のフォルダをドロップアンドドロップしてやりましょう
そうすると学習している様を見学できます

終わったら点線の中身がDrop Images To Begin Testingに変更されているので
テスト用のフォルダをドロップアンドドロップしてやりましょう

スクリーンショット 2018-06-29 17.36.23.png

結果がでましたね!
全部あってました(すごいっ...)

あとはAssistantEditorのImage Classifierって書いてある横の下矢印を選択して保存する場所とかを
選んで保存すればプロジェクトなどで今回できたmlmodelを使うことができます。
*ちなみに保存したmlmodelのサイズは33KBととても軽量...!

終わりに

割と簡単にできましたね
CreateMLではPhotsとSiriの学習基盤を使っているおかげで軽量かつ速い学習が
実現しているみたいです

ざっくりとしか書いていないのでもし興味がある方は下記のURLから調べて見てくださいhttps://developer.apple.com/documentation/create_ml

ありがとうございました。マサカリ待ってます。

15
11
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
15
11