Python PR

【Gradio】爆速で機械学習アプリを作る -PyTorch・TensorFlow・scikit-learnの好きなモデルで遊ぼう-

爆速で機械学習アプリを作る
記事内に商品プロモーションを含む場合があります

こんにちは。現役エンジニアの”はやぶさ”@Cpp_Learningです。

今から3分機械学習アプリを作ります。

【Step1】Google Colaboratory のノートブックを新規作成

Google Colab を起動して、ノートブックを新規作成します。

【Step2】Gradio インストール

以下のコマンドでPythonライブラリの Gradio をインストールします。

!pip install -q gradio

スポンサーリンク

【Step3】プログラミング

約20行のソースコード書きます。

Import

まずはimportから

PyTorch Hubからモデルをダウンロード

PyTorch Hub から好きな学習済みモデルをダウンロードします。今回は ResNeSt を採用しました。

ResNeSt について知りたい人は、以下の参考資料を読んでみて下さい。

『月刊ディープラーニング部 vol.1 “ResNeSt”特集』の表紙だけでも見てほしい。

機械学習モデルによる画像認識の関数を作る

先程ダウンロードしたモデルを使って、画像認識(推論)を行う関数を作成します。

インターフェイスを作成して起動

好きなインターフェイス(UI)を作成して、アプリを起動します。

爆速で機械学習アプリを作る今回は画像関連のUIを作成したので、上記のアプリが起動します。

3分機械学習アプリを作れました。

機械学習アプリのデモ

好きな画像をアップロードし、SUBMITすれば推論結果が表示されます。

爆速で機械学習アプリを作る

愛鳥”くるる”の画像をアップロードしたところ、great grey owl(和名:カラフトフクロウ)という結果が表示されました。

くるる
くるる
ぶっぶーですわ!!

正解は Southern white-faced owl(和名:アフリカオオコノハズク) でした。

はやぶさ
はやぶさ
ResNeSt でもダメかー

と思ったけど、ラベル確認したら、owl(フクロウ)と名の付くラベルが great grey owl しかないようです。

くるる
くるる
じゃあしょうがない!フクロウと認識できてスゴーイ!

アフリカオオコノハズクの”くるるちゃん”が今日も可愛い(*・ω・)ノ♪

GradioはPyTorch・TensorFlow・scikit-learnのモデルをサポート

今回はPyTorchのモデルを採用しましたが、GradioならTensorFlow・scikit-learnのモデルも簡単に扱うことができます。

Gradio Hub で様々な機械学習アプリ(Interfaces for your ML Models)を公開しているので、遊んでみてください。

まとめ -3分で機械学習アプリ作成-

Gradioを活用し3分機械学習アプリを作りました。本記事で良い刺激をもらえた人は、ぜひ機械学習アプリ作りに挑戦してみて下さい。

くるる
くるる
いつか自作モデルを使ったアプリを作りたーい♪

本記事では学習済みモデルを採用しましたが、自作モデルを使ったオリジナルMLアプリとか作れたらカッコイイですね(*・ω・)ノ♪

本記事をきっかけに…

どんなアプリが便利かな?
使い勝手の良いUIとは?

などを考えながら、楽しく”機械学習””アプリ”の勉強をしてくれたら、とても嬉しいです。

はやぶさ
はやぶさ
現役エンジニアの”はやぶさ”@Cpp_Learningは頑張っている人を応援します

おまけ -本ブログのサポートについて-

もし本記事が参考になり、ブログ『はやぶさの技術ノート』をサポートしたいという人がいれば、以下の方法でサポートして頂けると嬉しいです!

本ブログのサポート方法
  • 本ブログの記事をSNS(Twitterやfacebookなど)でシェア
  • ブログをやっている人ならリンクを張ってシェア
  • 本ブログで紹介した本などを購入
  •  LINEスタンプ 購入
  • 【くるるの野望ショップ】でフクロウグッズ購入

私のプロフィールにも書いていますが、学生さんや勉強したい人の”学び”を支援したいと考えています。

ブログ『はやぶさの技術ノート』では本記事も含め、多くのチュートリアル記事を無料で公開しています。SNSなどで友達にも教えてあげてほしいです!

また応援メッセージなどを頂けると、次も良い記事書きたいな!というモチベーションに繋がります。Twitterなどで気軽にコメントして頂けると嬉しいです。

くるる
くるる
よろしくお願いします
はやぶさ
はやぶさ
よろしくお願いします

PICK UP BOOKS

  • 数理モデル入門
    数理モデル
  • Jetoson Nano 超入門
    Jetoson Nano
  • 図解速習DEEP LEARNING
    DEEP LEARNING
  • Pythonによる因果分析
    Python