Apache Beam 2.40 で導入された scikit-lean, Pytorch の効率的な推論が可能になる RunInference API を試してみる

2022-07-21 に Google Cloud が Cloud DataFlow の新機能として、DataFlow ML という新機能を発表した。1 Dataflow ML - Speaking of ML transforms, Dataflow now has added out of the box support for running PyTorch and scikit-learn models directly within the pipeline. The new RunInference transform enables simplicity by allowing models to be used in production pipelines with very little code. These features are in addition to Dataflow’s existing ML capabilities such as GPU support and the pre and post processing system for ML training, either directly or via frameworks such as Tensorflow Extended (TFX)....

August 18, 2022 Â· Shunya Ueta

PythonでApache beam 入門

TensorFlowの勉強をしていたら、Apache beam を前処理に採用していたケースがあり、興味を持ったので深堀りしてみます。 興味が湧いたモチベーションとしては、 データ量が増加しても前処理部分を難なくスケールできそう(前処理部分をスケールさせて高速に実験を回したい、並列化などはすべて良い感じにbeamに任せれそう バッチとストリーミングの両者に対応可能なので、柔軟な機械学習の推論サービスが提供できるのでは? (GCPの参考資料 Data preprocessing for machine learning: options and recommendations) Apache beam を触りつつ分散データ処理を学びたい https://github.com/jhuangtw/xg2xg#services を見てみるとGoogle 内部のFlume という並列データパイプライン技術がApache beam として公開されているみたいです。 Apache beam について端的に説明すると Apache beam は3つの考えを基礎にしています。 Unified ストリーミング、バッチの両者のケースに一つのプログラミングモデルで対応可能な統一性 Portable 実行パイプラインが複数の実行環境で実行可能な可搬性 Extensible 新しいSDK、IO Connectorsや変換ライブラリなどをを書いて共有することができる拡張性 Java, Python, Go やScalaを使ってBeam Model を作成して任意のruntime で実行する流れです。 自分はPythonが一眼手軽に書けるのでこの記事ではPythonで紹介していきます。 Version 2.14.0 からPython 3がサポートされたのは非常にありがたいですね。それまではPython 2のみをサポートしており、その影響で技術選定時に採用しづらかったのでは無いのでしょうか? Spotify が作成しているApach BeamとDataflowのScala APIであるscioが開発されており、そちらも気になっています。 https://github.com/spotify/scio https://engineering....

December 26, 2020 Â· Shunya Ueta