説明
このGitHubリポジトリ、locuslab/convmixerは、Asher TrockmanとZico KolterによるICLR 2022の論文「Patches Are All You Need? 🤷」で詳述されているニューラルネットワークアーキテクチャ、ConvMixerの実装をホストしています。ConvMixerモデルの主要なコードは`convmixer.py`にあります。このプロジェクトは、トレーニングのために`pytorch-image-models` (timm) フレームワークを活用しており、ConvMixerをサポートするためにこのフレームワークに変更が加えられています。
続きを読む
`pytorch-image-models`フレームワーク内の主な変更点には、`timm/models/convmixer.py`の追加、`timm/models/__init__.py`の更新、および対応するスケジューラファイルとともに"OneCycle"学習率スケジュールの統合が含まれます。OneCycleスケジュールは注目されていますが、著者らは標準的なコサインスケジュールもConvMixerのトレーニングに効果的である可能性を示唆しています。
このリポジトリは、ConvMixer-1536/20、ConvMixer-768/32、ConvMixer-1024/20を含むいくつかのConvMixerバリアントの事前学習済みモデルの重みを提供しており、カーネルサイズ、パッチサイズ、ファイルサイズに関する詳細が含まれています。ImageNet-1kなどのデータセットでこれらのモデルを評価するための指示とコマンド例が提供されており、高い精度を目指しています。例えば、ConvMixer-1536/20はImageNet-1k検証で81.37%の精度を達成すると予想されています。
ConvMixerのトレーニングについても詳細に説明されており、ImageNet-1kでのマルチGPUセットアップでの分散トレーニング用のコマンド例が含まれています。トレーニングコマンドは、バッチサイズ、ワーカー数、オプティマイザ、エポック数、学習率スケジュール、拡張手法(例:RandAugment、CutMix、MixUp)、および入力サイズなどのハイパーパラメータを指定します。このリポジトリには、Pythonで記述されたConvMixerアーキテクチャの簡略化された、ツイート可能なバージョンも含まれています。
さらに、CIFAR-10でConvMixerをトレーニングするための別のリポジトリへのリンクがあり、小さい入力サイズのための`--scale`のようなトレーニングパラメータの調整に関するアドバイスも提供されています。このプロジェクトはMITライセンスの下でオープンソースであり、コミュニティの貢献とさらなる開発を奨励しています。
- カテゴリーAIモデルとLLM
- 料金モデルオープンソース
- デプロイクラウド, セルフホスト
- プラットフォームWeb
ConvMixerの主要機能
ConvMixerニューラルネットワークアーキテクチャの実装
研究論文「Patches Are All You Need? 🤷」に基づいています
ConvMixerのトレーニング用コードが含まれています
評価用の事前学習済みモデルの重みを提供します
ImageNet-1kおよびCIFAR-10データセットでのトレーニングをサポートします
`pytorch-image-models` (timm) フレームワークを活用します
"OneCycle"学習率スケジューラの実装が含まれています
モデル評価用のコマンド例を提供します
分散トレーニング用のコマンド例が含まれています
ConvMixerモデルの簡略化された、ツイート可能なバージョンが含まれています
ダウンロード可能なモデルの重みがあります
MITライセンスの下でオープンソースです
ConvMixerをはじめる
モデルへのアクセス: GitHubリポジトリをローカルマシンにクローンします。
環境設定: PyTorchおよび`pytorch-image-models`を含む必要なPythonライブラリをインストールします。
モデルのロード: 提供されているPythonスクリプトを使用してConvMixerモデルをインスタンス化します。
モデルの評価: ダウンロードした重みと検証データセットを使用して`validate.py`スクリプトを使用します。
モデルのトレーニング: 指定されたデータセットパスとトレーニングパラメータを使用して`distributed_train.sh`スクリプトを実行します。
統合: カスタムトレーニングループまたは推論パイプラインのために`convmixer.py`コードを適応させます。
ConvMixerの使用例
- 画像分類
- モデル評価
- カスタムモデルトレーニング
- 研究開発
- 転移学習
- ベンチマーキング








