Snowflake ML:エンドツーエンドの機械学習

Snowflake MLは、お客様の管理データの上に、単一のプラットフォームでエンドツーエンドの機械学習を行うための統合機能セットです。

SQL すぐに使えるML ワークフロー向けに、準備のできている ML 関数 は、開発時間を短縮し、組織全体で ML を民主化するのに役立ちます。これらの関数により、予測や異常検知などのビジネスユースケースのモデルを、コードを書くことなくトレーニングすることができます。

Pythonのカスタム ML ワークフロー向けに、データサイエンティストと ML エンジニアは、データの移動、サイロ化、またはデータガバナンスのトレードオフなしに、スケーラブルな機能とモデルを簡単かつ安全に開発し、プロダクション化することができます。 snowflake-ml-python ライブラリは、Snowflake ML パイプラインの開発とデプロイのための APIs を提供します。

モデルの構築と運用のために、データサイエンティストと ML エンジニアは、Snowflake ML の一連の機能を活用することができます。モデル開発については、 Snowflake ML Modeling APIs が、 CPUs または GPUs を使用した分散処理によるスケーラブルなデータロード、フィーチャーエンジニアリング、モデルトレーニングを提供します。ML 操作(ML Ops)では、Snowflake ML に Feature StoreModel Registry が含まれ、プロダクションの全体にわたって機能とモデルを一元管理します。

Snowpark ML ライブラリからPython APIs を Snowflake NotebooksSnowsight worksheets. またはお好みのローカルのPython IDE から使用できます。

Snowflake MLの主要コンポーネント:MLモデリング、フィーチャーストア、モデルレジストリ

Snowflake MLコンポーネントは、MLライフサイクルの合理化に役立ちます。

SnowflakeMLがサポートする開発および展開プロセスML

Snowflakeモデルレジストリ

Snowflake Model Registry は、Snowflakeにおけるモデルのセキュアな展開と管理を可能にし、Snowflakeの内部と外部の両方でトレーニングされたモデルをサポートします。

Snowflake特徴ストア

Snowflake Feature Store は、データから派生した ML 機能を定義、管理、保存、発見するための統合ソリューションです。Snowflake Feature Storeは、バッチおよびストリーミングデータソースからの自動的な増分リフレッシュをサポートしているため、機能パイプラインを1回定義するだけで、新しいデータで継続的にリフレッシュすることができます。

Snowflake Datasets

Snowflake Datasets は、機械学習モデルによる取り込みに適した、バージョン管理された不変のデータスナップショットを提供します。

Snowflake Notebooks

Snowflake Notebooks は、Snowflake内でPythonを操作するために、Jupyterノートブックに似た使い慣れたエクスペリエンスを提供します。すでに使い方を知っているツールを使って、カスタム ML ワークフローやモデルを構築するのに理想的です。Snowpark Container Services (SPCS) 上で実行されるNotebooksは、機械学習ワークフロー用に構築された環境である Container Runtime for ML 上で実行されます。

ML のContainer Runtime

Snowflake は、 ML の様々な開発ワークロード用に構築された、構成済みでカスタマイズ可能な環境を提供します。プリインストールされた ML パッケージとフレームワークの包括的なセットで、簡単に拡張できるため、データサイエンティストと ML エンジニアは、Snowflake データ上でオープンソースのベストを直接活用することができます。

Snowpark Container Service (SPCS) のコンピューティングプールの形で GPUs にWIth 簡単にアクセスできること、オープンソースパッケージを柔軟に利用できること、データのロードとモデリングが分散されていること APIs など、Container Runtime for ML は大規模な ML 開発に適しています。これらのノートブックはSnowpark Container Services上で実行されるため、価格性能に最適化された柔軟でスケーラブルなコンピュート インフラストラクチャを提供します。

詳細については、 Notebooks on Container Runtime for ML および ML のContainer Runtime をご参照ください。

Snowflake ML Library

snowflake-ml-python Pythonパッケージは、Snowflake Feature Store、Snowflake Model Registry、およびDataset バージョン データ オブジェクトを含む、さまざまなSnowflake ML ワークフロー コンポーネントのためのPython APIs を提供します。また、 APIs 、scikit-learnのような一般的なPython ML ライブラリに基づいており、Snowflakeクラウド内で独自のモデルを構築し、スケールの大きな学習を行うことができます。Snowflake ML の機能は、ローカルの Python 開発環境、Snowsight ワークシート、または Snowflake Notebooks で使用できます。

Tip

エンドツーエンドのSnowflake ML ワークフローの例については、 機械学習入門 をご参照ください。

ML Modeling

snowflake-ml-python Pythonパッケージの ML Modeling APIs は、scikit-learn、xgboost、lightgbm、pytorchなどの一般的な機械学習フレームワークを使用して、データの前処理、特徴量エンジニアリング、Snowflakeでのモデル学習をサポートします。すべての処理は、インフラ構成やデータ移動の必要なく実行されます。

Container Runtime for ML 上のノートブックから実行する場合、これらのモデリング APIs は、使用しているコンピューティングプールに応じて、利用可能なすべての CPU コアまたは GPUs に分散して実行することができます。他のケースでは、プロセスはSnowflakeの仮想ウェアハウスで実行され、前処理とハイパーアラメータの最適化は複数のノードで分散して実行されます。

注釈

Container Runtime for ML は現在プライベート・プレビュー中です。

追加のリソース

Snowflake ML APIs モデリングについては、以下のリソースをご参照ください。

エンドツーエンド ML ワークフロー

Snowflakeの担当者にお問い合わせいただくと、現在開発中の他の特徴量に関するドキュメントをいち早く入手できます。