説明
Few-shot Learningのためのプロトタイプネットワークは、同名のNeurIPS 2017論文に基づいたAIモデルの実装です。このプロジェクトは、論文で発表された研究を支えるコードベースを提供し、特に少数学習のための特定のメソドロジーに焦点を当てています。少数学習は、トレーニングのために少数のラベル付き例しか利用できない問題に対処する機械学習のサブフィールドです。
続きを読む
プロトタイプネットワークの核心的なアイデアは、各クラスのプロトタイプ表現への距離を計算することで分類を実行できるメトリック空間を学習することです。各クラスについて、埋め込まれたサポート例の平均として単一のプロトタイプが計算されます。テスト中、新しい例はこれらのクラスプロトタイプへの距離に基づいて分類されます。このアプローチは、多くの実世界のアプリケーションで一般的な課題である、限られたトレーニングデータを扱う場合に特に効果的です。
このリポジトリは、プロトタイプネットワークのトレーニングと評価に必要なスクリプトとコードを提供します。環境のセットアップ、PyTorchやtorchnetなどの依存関係のインストール、Omniglotのようなデータセットの準備に関する手順が含まれています。ユーザーは特定のPythonスクリプトを実行してモデルをトレーニングでき、結果の出力ディレクトリを指定できます。評価も専用のスクリプトを通じて容易になり、ユーザーは未知のデータに対するモデルのパフォーマンスをテストできます。
このプロジェクトは、少数学習、メトリック学習、ディープラーニングに関心のある研究者や開発者にとって価値があります。プロトタイプネットワークの理解と実装のための実践的なリソースとして機能し、低データ学習シナリオでのさらなる実験と開発の基盤を提供します。コードはMITライセンスの下で提供されており、AIコミュニティ内でのオープンアクセスと協力を促進します。
- カテゴリーAIモデルとLLM
- 料金モデルオープンソース
- デプロイセルフホスト
- プラットフォームLinux, macOS, Windows
プロトタイプネットワークの主要機能
少数学習のためのプロトタイプネットワークの実装
NeurIPS 2017 の論文「Few-shot Learningのためのプロトタイプネットワーク」に基づくコード
少数学習モデルのトレーニングと評価をサポート
データセットセットアップ用のスクリプトを含む(例:Omniglot)
モデル実装にPyTorchを使用
依存関係インストールの手順を提供
トレーニング結果のカスタム出力ディレクトリの指定を許可
提供されたスクリプトによるモデル評価を容易にする
分類のためのメトリック空間を学習
埋め込まれたサポート例の平均としてクラスプロトタイプを計算
プロトタイプへの距離に基づいて新しい例を分類
プロトタイプネットワークをはじめる
依存関係のインストール: PyTorch、torchvision、torchnet をセットアップします。
パッケージのインストール: 'python setup.py install' または 'python setup.py develop' を実行します。
データセットのセットアップ: 提供されたスクリプトを使用して Omniglot データセットをダウンロードします。
モデルのトレーニング: 'python scripts/train/few_shot/run_train.py' を実行し、オプションでログディレクトリとGPUの使用を指定します。
trainval モードでの再実行: モデルを保存するために 'python scripts/train/few_shot/run_trainval.py' を使用します。
モデルの評価: モデルパスを指定して 'python scripts/predict/few_shot/run_eval.py' を実行します。
プロトタイプネットワークの使用例
- 少数画像分類
- 低データ学習シナリオ
- メトリック学習研究
- 迅速なプロトタイピング
- ロボット工学とAIエージェント
- 医療画像解析








