Path: blob/master/site/ja/hub/tutorials/cropnet_cassava.ipynb
25118 views
CropNet: Cassava Disease Detection
このノートブックでは、TensorFlow Hub の CropNet キャッサバの病気の分類モデルの使用方法を説明します。このモデルはキャッサバの葉の画像を 6 つのクラスのいずれかに分類します。クラスは斑点細菌病、褐色条斑病、緑ダニ、モザイク病、健康、不明です。
この Colab では、以下の方法を実演します。
TensorFlow Hub からモデル https://tfhub.dev/google/cropnet/classifier/cassava_disease_V1/2 を読み込む。
TensorFlow Datasets (TFDS) からキャッサバデータセットを読み込む。
キャッサバの葉の画像を、4 つの異なるキャッサバの病気のカテゴリ、あるいは健康または不明として分類する。
分類器の精度を評価し、ドメイン外の画像を適用した際のモデルのロバスト性を検査する。
インポートとセットアップ
データセット
TFDS からキャッサバデータセットを読み込みます。
データセットの情報を見て、説明や引用、例の数などの詳細情報を確認しましょう。
キャッサバデータセットには、健康なキャッサバの葉とそれぞれ異なる病気を持つ 4 枚のキャッサバの葉の画像があります。モデルはこれらの全てのクラスの予測ができ、予測に自信がない場合、モデルは 6 番目の "unknown(不明)" のクラスを予測します。
データをモデルに送る前に、少し前処理をする必要があります。モデルは RGB チャンネル値が [0, 1] の 224 x 224 の画像を想定しています。画像を正規化してサイズを変更しましょう。
データセットからいくつかの例を見てみましょう。
モデル
TF-Hub から分類器を読み込んで予測値をいくつか取得し、複数の例のモデルの予測値を見てみましょう。
評価とロバスト性
データセットを分割した場合の分類器の精度を測定してみましょう。また、キャッサバ以外のデータセットで性能を評価して、モデルのロバスト性を調べることもできます。iNaturalist や豆など、他の植物のデータセット画像を使用すると、モデルは殆ど全ての画像に対して不明を返すはずです。
詳細情報
TensorFlow Hub のモデルに関する詳細情報: https://tfhub.dev/google/cropnet/classifier/cassava_disease_V1/2
このモデルの TensorFlow Lite 版を使い、ML Kit を使用して携帯電話で動作するカスタム画像分類器の構築方法を学びましょう。