米Facebook、Python深層学習フレームワーク「PyTorch」の正式版を発表

 米FacebookのPyTorch開発チームは12月7日、Pythonベースの深層学習フレームワーク「PyTorch 1.0 stable」の公開を発表した。

 PyTorchはFacebookが開発し、オープンソースで公開する深層学習プラットフォーム。GPUアクセラレーションを備えたTensor計算と、「テープベース」で自動的に学習処理を実行できる深層ニューラルネットワークの構築という大きく2つの機能を持つ。プロジェクトは2017年に立ち上がった。

 PyTorch 1.0ではPythonのサブセットである「Torch Script」を使ったJIT(ジャストインタイム)コンパイルを利用できるようになった。Pythonインタープリタに依存せずに実行できるモデルを構築でき、PyTorchリサーチと運用環境の間のギャップ縮小につながるとしている。

 Eagerモードとグラフ実行モードの間をシームレスに移行できるハイブリッドフロントエンドを導入した。これにより、リサーチのプロトタイプから運用環境の実装をシームレスに進めることができるという。

 分散トレーニングのtorch.distributedライブラリとtorch.nn.parallel.DistributedDataParallelライブライが新しくなった。また、高性能なリサーチ向けのC++フロントエンドも導入した。なお、APIはunstable扱いとなっている。

 クラウドプラットフォームと統合も進め、 Amazon Web Services(AWS)、Google Cloud Platform、Microsoft Azureなどのパブリッククラウドとの統合レベルを深化させた。たとえば、AWSの「Amazon SageMaker Neo」との統合により、PyTorchで機械学習モデルを構築し、一度トレーニングするとクラウドのやエッジのどこででも実装できる上、性能も2倍になるという。

 事前にトレーニングしたモデルのリポジトリである「Torch Hub」も強化した。hubconf.pyファイルを使ってgithubリポジトリへのパブリッシュできるという。

 このほかにも安定性強化や不具合修正などが行われている。

PyTorch
https://pytorch.org/