【51CTO.com クイック翻訳】 1. はじめに画像分類は、画像がどのクラスに属するかを予測するタスクです。このタスクは画像表現のため困難です。画像を平坦化すると、長い 1 次元ベクトルが作成されます。さらに、この表現では隣接する情報が失われます。したがって、特徴を抽出し結果を予測するにはディープラーニングが必要です。 場合によっては、ディープラーニング モデルの構築は困難な作業になることがあります。画像分類の基本モデルは作成しましたが、コードの作成にかなり時間がかかりました。データの準備、モデルのトレーニング、モデルのテスト、サーバーへのモデルのデプロイを行うためのコードを準備する必要があります。ここで Flash が役に立ちます! Flash は、ディープラーニング モデルを迅速に構築、トレーニング、テストするための高レベルのディープラーニング フレームワークです。 Flash は PyTorch フレームワークに基づいています。したがって、PyTorch を知っていれば、Flash にも精通しているはずです。 PyTorch や Lightning と比較すると、Flash は使いやすいですが、以前のライブラリほど柔軟ではありません。より複雑なモデルを構築する場合は、Lightning を使用するか、PyTorch を直接使用することができます。 Flash を使用すると、わずか数行のコードでディープラーニング モデルを構築できます。ディープラーニングを初めて使用する場合でも、心配する必要はありません。 Flash を使用すると、コードに混乱することなくディープラーニング モデルを構築できます。 この記事では、Flash を使用して画像分類器を構築する方法を説明します。 II. 実施ライブラリのインストールライブラリをインストールするには、次のように pip コマンドを使用します。
そのコマンドが機能しない場合は、GitHub リポジトリを使用してライブラリをインストールできます。コマンドは次のとおりです。
パッケージを正常にダウンロードできたら、ライブラリをロードできるようになります。シードも42番に設定しました。これを実行するコードは次のとおりです。
データをダウンロードライブラリがインストールされたので、次はデータを取得します。デモンストレーションのために、「Cat and Dog dataset」というデータセットを使用します。 このデータセットには、猫と犬の 2 つのカテゴリの画像が含まれています。データセットにアクセスするには、Kaggle で検索してください。データセットにはここからアクセスできます。 データの読み込み中データをダウンロードしたら、データセットをオブジェクトにロードしましょう。 from_folders メソッドを使用して、データを ImageClassification オブジェクトに格納します。これを実行するコードは次のとおりです。
モデルの読み込みデータをロードした後、次のステップはモデルをロードすることです。独自のアーキテクチャをゼロから構築するわけではないので、既存の畳み込みニューラル ネットワーク アーキテクチャに基づく事前トレーニング済みモデルを使用します。 事前トレーニング済みの ResNet-50 モデルを使用します。さらに、データセットに基づいてカテゴリの数を設定します。これを実行するコードは次のとおりです。
モデルのトレーニングモデルが読み込まれたら、次はモデルをトレーニングします。まず Trainer オブジェクトを初期化する必要があります。モデルを 3 エポックにわたってトレーニングします。さらに、GPU を使用してモデルをトレーニングできるようにします。これを実行するコードは次のとおりです。
オブジェクトを初期化したら、モデルをトレーニングしましょう。モデルをトレーニングするには、finetune と呼ばれる関数を使用できます。関数内で、モデルとデータを設定します。さらに、トレーニング戦略をフリーズに設定して、特徴抽出器をトレーニングしないことを示します。つまり、分類器部分のみをトレーニングします。 これを実行するコードは次のとおりです。
評価結果は次のとおりです。 結果から、モデルの精度は約 97% であることがわかります。悪くないですね!では、新しいデータでモデルをテストしてみましょう。 モデルのテストモデルがトレーニングされていないサンプル データを使用します。以下はテストするモデルのサンプルです。
モデルをテストするには、フラッシュ ライブラリの predict メソッドを使用できます。これを実行するコードは次のとおりです。
上記の結果から、モデルが正しいラベルを持つサンプルを予測していることがわかります。素晴らしい!後で使用するためにモデルを保存しましょう。 モデルを保存するモデルをトレーニングし、テストしました。 save_checkpoint メソッドを使用してモデルを保存しましょう。これを実行するコードは次のとおりです。
別のコードに対してモデルをロードする場合は、load_from_checkpoint メソッドを使用できます。これを実行するコードは次のとおりです。
3. 結論よくできました! Flash を使用して画像分類器を構築する方法を学びました。記事の冒頭で述べたように、必要なのはほんの数行のコードだけです。すごいと思いませんか? この記事が、皆さんの状況に合わせた独自のディープラーニング モデルの構築に役立つことを願っています。より複雑なモデルを実装したい場合は、PyTorch の学習を開始することをお勧めします。 原題: Flash を使って数行のコードで画像分類器を構築する方法、著者: Irfan Alghani Khalid [51CTOによる翻訳。パートナーサイトに転載する場合は、元の翻訳者と出典を51CTO.comとして明記してください] |
<<: ディープラーニングを使用して、写真用の強力な画像検索エンジンを構築します
>>: ドローン基地局は被災地の通信復旧にどのように役立つのでしょうか?
今日、言語を超えた効果的なコミュニケーションはこれまで以上に重要になっています。企業が新しい市場に進...
この記事では、画像編集の最先端の手法を包括的に研究し、技術的なルートに基づいて 3 つの主要なカテゴ...
GraphSAGE は 2017 年の論文ですが、その名前に含まれる 2 つのキーワード「帰納的」と...
先週、私たちは PaddlePaddle と Tensorflow を使用して画像分類を実装し、自分...
face_recognition は、強力でシンプル、使いやすい顔認識オープンソース プロジェクトで...
AI関連の学位取得者は高給を得るのが難しいとメディアが以前報じていたのとは全く対照的に、多くの応募...
国連のアントニオ・グテーレス事務総長は10月27日(現地時間10月26日)、国際社会がAIのガバナン...
近年、世界の人工知能産業は急速な発展の勢いを見せており、セキュリティ状況はますます複雑になっています...
AI システムへの世界的な支出は 2023 年から 2026 年の間に 2 倍になると予想されており...
AIインテリジェンスは近年急速に発展しており、技術の進歩をもたらす一方で、一部の業界にも影響を与え...
この記事はAI新メディアQuantum Bit(公開アカウントID:QbitAI)より許可を得て転載...