PyTorch 1.11 のリリースからわずか数か月後、PyTorch 1.12 が登場しました。このバージョンは、バージョン 1.11 以降の 433 人の貢献者による 3124 件のコミットで構成されています。バージョン 1.12 では大幅な改善が行われ、多くのバグが修正されました。 新しいバージョンのリリースに伴い、最も話題になっているのは、PyTorch 1.12 が Apple M1 チップをサポートしているということかもしれません。 実際、今年 5 月には、PyTorch の担当者は、Mac の M1 バージョンで GPU アクセラレーションによる PyTorch 機械学習モデルのトレーニングを正式にサポートすると発表していました。これまで、Mac での PyTorch トレーニングでは CPU しか利用できませんでしたが、PyTorch 1.12 のリリースにより、開発者や研究者は Apple GPU を使用してモデル トレーニングを大幅に高速化できるようになりました。 Mac での高速 PyTorch トレーニングの導入PyTorch GPU トレーニング アクセラレーションは、バックエンドとして Apple Metal Performance Shaders (MPS) を使用して実現されます。 MPS バックエンドは PyTorch フレームワークを拡張し、Mac 上で操作を設定および実行するためのスクリプトと関数を提供します。 MPS は、各 Metal GPU ファミリの固有の特性に合わせて微調整されたカーネル機能を使用して、コンピューティング パフォーマンスを最適化します。新しいデバイスは、機械学習の計算グラフとプリミティブを MPS Graph フレームワークと MPS によって提供される調整されたカーネルにマッピングします。 Apple が独自に開発したチップを搭載したすべての Mac には統合メモリ アーキテクチャが搭載されており、GPU が完全なメモリ ストレージに直接アクセスできます。 PyTorch の担当者は、これにより Mac は機械学習に最適なプラットフォームとなり、ユーザーはより大きなネットワークやバッチ サイズをローカルでトレーニングできるようになると述べています。これにより、クラウドベースの開発に関連するコストや、追加のローカル GPU コンピューティング能力の必要性が削減されます。統合メモリ アーキテクチャにより、データ取得の待ち時間も短縮され、エンドツーエンドのパフォーマンスも向上します。 ご覧のとおり、GPU アクセラレーションにより、CPU ベースラインと比較してトレーニング パフォーマンスが数倍向上します。 GPUサポートにより、トレーニングと評価の速度がCPUを上回る 上の写真は、Apple M1 Ultra(20コアCPU、64コアGPU)、128GBのメモリ、2TBのSSDを搭載したMac Studioシステムを使用して、Appleが2022年4月に実施したテストの結果です。テスト対象モデルは、ResNet50 (バッチ サイズ = 128)、HuggingFace BERT (バッチ サイズ = 64)、VGG16 (バッチ サイズ = 64) です。パフォーマンス テストは特定のコンピュータ システムを使用して実施され、Mac Studio のおおよそのパフォーマンスを反映します。 PyTorch 1.12 のその他の新機能フロントエンド API: TorchArrowPyTorch は、ユーザーが試用できる新しいベータ版 TorchArrow を正式にリリースしました。バッチデータ処理を可能にする機械学習前処理ライブラリです。高いパフォーマンスと Pandas スタイルを組み合わせ、ユーザーの前処理ワークフローと開発を高速化する使いやすい API を備えています。 (ベータ) PyTorch の Complex32 と複素畳み込み現在、PyTorch は、複素数、複素自動階乗、複素モジュール、および多数の複素演算 (線形代数と高速フーリエ変換) をネイティブにサポートしています。複素数は、torchaudio や ESPNet などの多くのライブラリですでに使用されており、PyTorch 1.12 では、複素畳み込みと、半精度 FFT 演算をサポートする実験的な complex32 データ型によって複素数機能がさらに拡張されています。 CUDA 11.3 パッケージのバグのため、複素数を使用する場合は、CUDA 11.6 パッケージを使用することが公式に推奨されています。 (ベータ) フォワードモード自動微分フォワードモード AD では、フォワードパスで方向微分 (または同等のヤコビアン ベクトル積) を計算できます。 PyTorch 1.12 では、フォワードモード AD の範囲が大幅に改善されました。 より良いトランスフォーマーPyTorch は、複数の CPU および GPU 高速パス実装 (BetterTransformer)、つまり、TransformerEncoder、TransformerEncoderLayer、および MultiHeadAttention (MHA) 実装を含む Transformer エンコーダー モジュールをサポートするようになりました。新しいバージョンの BetterTransformer では、モデルと入力機能に応じて、多くの一般的なシナリオで最大 2 倍の速度を実現しました。新しい API は、以前の PyTorch Transformer API との互換性をサポートしており、高速パス実行要件を満たしている場合は既存のモデルを高速化し、以前のバージョンの PyTorch でトレーニングされたモデルを読み取ります。 さらに、新しいバージョンにはいくつかの更新が含まれています。
詳細については、https://pytorch.org/blog/pytorch-1.12-released/ をご覧ください。 |
>>: 虐殺後に行方不明になった親族をAIで探す! Googleのエンジニアが第二次世界大戦の70万枚以上の古い写真を識別できる顔認識プログラムを開発
[元記事は51CTO.comより] 近年、多くのインターネット企業がデータ、テクノロジー、AI、組織...
薬を買うとき、自動販売機のように、セルフサービス機で直接注文して、必要なときにすぐに受け取ることはで...
Transformer アーキテクチャは、ディープラーニング分野における最近の多くの成功の原動力であ...
人工知能と機械学習ソリューションは、今日、さまざまな業界の組織で一般的になりつつあります。組織が A...
[[407769]]ヘルスケア業界における人工知能の活用AI技術が進歩するにつれて、その応用も拡大し...
サイバー脅威の範囲は、企業資産や選挙から健康データや物理インフラまで拡大しており、新興技術の予期せぬ...
次の技術変化が始まる前に、将来の発展の方向を予測・判断し、技術変化に伴う可能性のある困難を軽減する必...
過去 1 年間、生成型人工知能の開発におけるキーワードは「ビッグ」でした。強化学習の先駆者であるリッ...
近年、人工知能技術の研究が継続的に進歩するにつれて、資本は熱い傾向を示し、さまざまな業界が人工知能に...
最近、ヘルシンキ大学の研究者らは、脳信号を監視することでコンピューターが視覚知覚をシミュレートできる...