ブログ · ガイド

自分で撮った写真からApp Storeまで、すべてiPadで

MagicaLCoreでモデルをトレーニングし、Swift Playgroundsでアプリを作り、App Store Connectに送信。Macを使わずにたどる全行程を、ステップごとに紹介します。

文:MagicaLCore ·

自分のモデルで物を認識するアプリを作るには、以前はすべての段階でMacが必要でした。トレーニング用のツール、Xcode、そしてビルドをアップロードするためのコンピュータ。今では、M1以降のチップを搭載したiPadが1台あれば、最初から最後までたどれます。植物を識別するアプリを例に、それぞれの部品がどうつながるかを見ていきましょう。

アイデア

自分が興味を持てて、カメラ、マイク、またはデータの表でとらえられるものを選びます:

  • 写真から、この観葉植物は何か?
  • 録音から、鳴いているのはどの鳥か?
  • この文は、質問か、苦情か、それともほめ言葉か?
  • 手の写真から、グー、チョキ、パーのどれか?

広い問いより、狭い問いのほうがうまくいきます。「世界中のあらゆる植物」より、「ベランダにあるこの8つの植物のどれか」のほうが良い結果になります。

ステップ1. 例を集める

iPadでそれぞれの植物の写真を撮ります。角度を変え、光を変え、近くからも遠くからも。植物ごとにフォルダを1つ作り、その植物の名前を付けます。その名前が、アプリに表示されるラベルになります。テスト用に、植物ごとに数枚の写真を別に取っておきましょう。

ステップ2. MagicaLCoreでトレーニングする

新しい画像モデルを作り、名前と作成者を付けて、フォルダを追加します。まずはデフォルトの設定で始めましょう。トレーニング中は、トレーニングと検証の精度と損失を見守ります。時間が足りなくなったら一時停止して、あとで履歴から続けられます。

ステップ3. 難しいケースを試す

カメラを植物に向けて、それぞれの予測の信頼度を確かめます。暗い隅、ごちゃごちゃした背景の前の葉、リストにない植物などを試してみましょう。モデルが間違えたら、そのような例を追加して、もう一度トレーニングします。良いモデルは、この繰り返しから生まれます。

ステップ4. .mlmodelを書き出す

名前、作成者、説明を付けてモデルを書き出し、「ファイル」に保存します。Swift PlaygroundsとXcodeですぐに使えます。

ステップ5. Swift Playgroundsでアプリを作る

Swift Playgroundsは、iPadとMacでSwiftのコードを書き、SwiftUIでアプリを作るためのAppleの無料アプリです。新しいAppプロジェクトを始め、.mlmodelを追加して画面を書きます。入力しながらライブプレビューで確認できます。MagicaLCoreの「モデルを使う」ガイドでは、モデルの種類ごとのコードを紹介しています。モデルの読み込み方、写真、音、データの行、文の渡し方、そして答えの読み取り方です。

シンプルな最初のバージョンに必要なのは、次の3つだけです:

  1. 写真を撮る、または選ぶボタン。
  2. モデルの答えと、その信頼度。
  3. 結果についての短いカード。植物のアプリなら、名前と育て方。

ステップ6. 公開する

iPadでアプリが動いたら、Swift PlaygroundsからApp Store Connectに送信できます。App Storeで公開するには、Apple Developer Programのメンバーシップが必要です。あとでもっと必要になったら、同じプロジェクトをMacのXcodeで開けます。

知っておきたいこと

  • 認識はデバイス上で行われます。 モデルはアプリの中に入っているので、サーバーなしで、写真をどこにも送らずに答えます。
  • 小さく始めて、育てる。 少しのクラスで公開し、例が集まるにつれてクラスを増やしましょう。
  • ユーザーに正直に。 信頼度を表示し、アプリが知らないことは知らないと伝えましょう。

学生のみなさんへ:Swift Student Challenge

Appleは毎年、学生が自分で作ったApp PlaygroundをSwift Student Challengeに応募するよう呼びかけています。学生が自分の写真、音、データでトレーニングしたモデルは、そのプロジェクトの中心になれますし、オフラインで動作します。MagicaLCoreはChallengeの一部ではなく、Appleとも関係がないので、その年の公式ルールを読み、使ったツールを明記してください。

全行程をひと目で

ステップ アプリ デバイス
例を集める カメラ、ボイスメモ、ファイル iPad
トレーニングとテスト MagicaLCore iPad
.mlmodelを書き出す MagicaLCore iPad
アプリを作る Swift Playgrounds iPad
App Store Connectに送信 Swift Playgrounds iPad

ほかのアプリやサービスについての情報は記事の日付時点で確認したもので、変わる可能性があります。製品名はすべて各所有者に帰属します。

あわせて読みたい

すべての記事