AWSでのPyTorchの概要とメリット
AWSでのPyTorchの概要
AWSではPython言語用機械学習フレームワークのPyTorchを深層学習AMI、深層学習コンテナ、SageMakerなどのサービスを通じて利用できます。このことから機械学習モデルの開発や本番環境に対してのデプロイをスムーズに行うことができます。
フルマネージド型の機械学習サービスであるAmazon SageMakerのサービスを利用することで、コストパフォーマンスよくさらに大規模な構築であっても対応することができます。またトレーニングからデプロイまでフルマネージドで行うことができます。
特別な開発や管理などは必要ありません。さらにインフラストラクチャを自己管理する場合においては、AWS 深層学習 AMIもしくはAWS Deep Learning Containersを使うことにより、カスタムの機械学習のデプロイが可能となります。
PyTorch 向けのオープンソースのモデル提供フレームワークであるTorchServeを使うことにより、PyTorchモデルのデプロイをすることができます。オブジェクト検出やテキストの分類などのハンドラーが準備されていることからカスタムコードの記述が不要であるため、開発者の手間をかける必要はなく、さらに大規模なサイズであっても対応可能です。
これまでPyTorchでは簡単ではあってもカスタムコードが必要だったのですが、カスタムコードの記述がなくなりさらに便利に利用することができるようになったのです。またアプリケーション統合のためのマルチモデルやA/Bテストのモデルバージョンなどの提供が含まれています。
さらにAmazon SageMaker、コンテナサービス、Amazon Elastic Compute CloudなどにもTorchServeは対応しています。
AWSでのPyTorchの利点
AWSでのPyTorchには以下の利点があげられます。
- 便利である
- 高いパフォーマンス
- 充実したエコシステム
便利である
Amazon EC2インスタンス、Elastic Fabric Adapterもしくはほかのストレージなどを使うことができ、便利に設計されています。またTorchServeを使うことにより、本番環境へのデプロイが簡単になります。難しい知識が必要ないことからも、開発者の人件費を削減したり業務の効率化に進めることができます。
高いパフォーマンス
強力な GPU インスタンスを使うことで、耐障害性や伸縮性を備えているトレーニングバックエンドをトレーニングし、迅速に反復し高いパフォーマンスを維持することができます。そのため業務の効率化になります。
ハードウェアリソースの使用率が原因である問題を、迅速に見つけて修正することもできるのです。
充実したエコシステム
torchvision、torchaudio、torchtext、torchelastic、torch_xlなどツールで構成されているエコシステムが充実しています。さらにこれらのエコシステムを使って、PyTorchを拡張することにより、コンピュータービジョンやMLなどの開発を行うことができます。
AWSでのPyTorchのまとめ
AWSではPython言語用機械学習フレームワークのPyTorchを利用することができます。このフレームワークを使うことにより、機械学習モデルの開発などのデプロイを簡単に行うことができます。さらにTorchServeを使うことにより、PyTorch デベロッパーのデプロイができます。
参考資料