この記事では、Azure Machine Learning デザイナーの DenseNet コンポーネントを使用し、DenseNet アルゴリズムを使ってイメージ分類モデルを作成する方法について説明します。
この分類アルゴリズムは、教師あり学習手法であり、ラベル付きデータセットが必要となります。
注
このコンポーネントは、スタジオの [データのラベル付け] から生成されたラベル付きデータセットはサポートしておらず、[Convert to Image Directory]\(イメージ ディレクトリへの変換\) コンポーネントから生成されたラベル付きイメージ ディレクトリのみサポートしています。
モデルとラベル付けされたイメージ ディレクトリを入力として指定して、PyTorch モデルのトレーニングすることで、モデルをトレーニングできます。 その後は、トレーニングされたモデルで画像モデルのスコア付けを使用して、新しい入力例の値を予測することができます。
DenseNet の詳細
DenseNet の詳細については、「Densely Connected Convolutional Networks」 (高密度に接続された畳み込みネットワーク) という研究論文を参照してください。
DenseNet の構成方法
デザイナーで、DenseNet コンポーネントをパイプラインに追加します。
Model name (モデル名) には、特定の DenseNet 構造の名前を指定します。これは、サポートされている DenseNet である 'densenet121'、'densenet161'、'densenet169'、'densenet201' から選択できます。
Pretrained (事前トレーニング済み) には、ImageNet で事前トレーニングされているモデルを使用するかどうかを指定します。 選択した場合は、選択した事前トレーニング済みモデルに基づいてモデルを微調整できます。選択を解除した場合は、ゼロからトレーニングできます。
Memory efficient (メモリ効率) には、チェックポイント処理を使用するかどうかを指定します。これは、メモリ効率が大幅に向上しますが、時間がかかります。 詳細については、「Memory-Efficient Implementation of DenseNets」 (DenseNets の高メモリ効率の実装) という研究論文を参照してください。
DenseNet コンポーネント、トレーニング、検証イメージ データセット コンポーネントの出力を、Train PyTorch モデルに接続します。
パイプラインを送信します。
結果
パイプラインの実行が完了した後、モデルをスコア付けに使用するには、PyTorch モデルのトレーニングを画像モデルのスコア付けに接続し、新しい入力例の値を予測します。
テクニカル ノート
コンポーネントのパラメーター
名前 | 範囲 | タイプ | 既定値 | 説明 |
---|---|---|---|---|
モデル名 | [任意] | モード | densenet201 | 特定の DenseNet 構造体の名前 |
Pretrained (事前トレーニング済み) | [任意] | ボーリアン | 正しい | ImageNet で事前トレーニング済みモデルを使用するかどうか |
Memory efficient (メモリ効率) | [任意] | ボーリアン | いいえ | メモリ効率が大幅に向上するが、時間がかかるチェックポイント処理を使用するかどうか |
出力
名前 | タイプ | 説明 |
---|---|---|
未トレーニング モデル | UntrainedModelDirectory | PyTorch モデルのトレーニングに接続できるトレーニングされていない DenseNet モデル。 |
次のステップ
Azure Machine Learning で使用できる一連のコンポーネントを参照してください。