3 つの異なる店舗からの売上データを含む Vertex AI の管理された表形式データセットを使用して、トレーニング、検証、テスト セット間でデータを分割するための最良のオプションは、Vertex AI のデフォルト データ分割を使用することです。
このオプションを使用すると、Vertex AI のパワーとシンプルさを活用して、データをパーセンテージで 3 つのセットに自動的かつランダムに分割できます。Vertex AI は、Google Cloud 上で機械学習ソリューションを構築およびデプロイするための統合プラットフォームです。Vertex AI は、線形回帰、ロジスティック回帰、K 平均法クラスタリング、行列因数分解、ディープ ニューラル ネットワークなど、さまざまなタイプのモデルをサポートできます。Vertex AI は、データ分析、モデル開発、モデル展開、モデル監視、モデル ガバナンスのためのさまざまなツールとサービスも提供できます。デフォルトのデータ分割は、Vertex AI によって提供されるデータ分割方法であり、ユーザーの入力や構成は必要ありません。デフォルトのデータ分割は、ランダム サンプリング方法を使用してデータをトレーニング、検証、テスト セットに分割し、データの固定パーセンテージを各セットに割り当てるのに役立ちます。デフォルトのデータ分割はデータ分割プロセスを簡素化するのに役立ち、ほとんどの場合にうまく機能します。
トレーニング セットは、モデルをトレーニングし、モデル パラメーターを調整するために使用されるデータのサブセットです。トレーニング セットは、入力特徴とターゲット変数の間の関係を学習し、モデルのパフォーマンスを最適化するのに役立ちます。検証セットは、モデルを検証し、モデルのハイパーパラメーターを調整するために使用されるデータのサブセットです。検証セットは、目に見えないデータに対するモデルのパフォーマンスを評価し、過剰適合または過小適合を回避するのに役立ちます。テスト セットは、モデルのテストに使用されるデータのサブセットであり、最終的な評価指標を提供します。テスト セットは、新しいデータに対するモデルのパフォーマンスを評価し、モデルの汎化能力を測定するのに役立ちます。Vertex AI のデフォルト データ分割を使用すると、ランダム サンプリング方法を使用してデータをトレーニング、検証、テスト セットに分割し、次の割合のデータを各セットに割り当てることができます1。

他のオプションは、次の理由により、オプション B ほど優れていません。
* オプション A: Vertex AI 手動分割を使用し、ストア名機能を使用して各セットに 1 つのストアを割り当てると、データを代表的なバランスのとれたセットに分割できず、エラーやパフォーマンスの低下が発生する可能性があります。手動分割は、ml_use ラベルまたはデータ フィルター式を使用して、データをセットに分割する方法を制御できるデータ分割方法です。手動分割は、データ分割ロジックをカスタマイズし、複雑なデータ形式または非標準のデータ形式を処理するのに役立ちます。店名特徴量は、売上データを収集した店舗の名前を示す特徴量です。店舗名機能は、データのソースを特定し、店舗ごとにデータをグループ化するのに役立ちます。ただし、Vertex AI の手動分割を使用し、ストア名機能を使用して各セットに 1 つのストアを割り当てると、データを代表的なバランスの取れたセットに分割できず、エラーやパフォーマンスの低下が発生する可能性があります。書く必要があります
* コードを作成し、ml_use ラベルまたはデータ フィルター式を作成して構成し、セットごとに 1 つのストアを割り当てます。さらに、このオプションでは、各セットのデータがデータセット全体のデータと同じ分布と特性を持つことが保証されないため、データの一般的なパターンを学習できなくなり、モデルに偏りや分散が生じる可能性があります2。
* オプション C: Vertex AI 時系列分割を使用し、販売タイムスタンプ機能を時間変数として指定すると、データを代表的なバランスのとれたセットに分割できず、エラーやパフォーマンスの低下が発生する可能性があります。時系列分割は、データの順序に基づいてデータをセットに分割できるデータ分割方法です。時系列に分割すると、データの時間的な依存関係と順序を保持し、データ漏洩を防ぐことができます。販売タイムスタンプ機能は、販売データが収集された日時を示す機能です。販売タイムスタンプ機能は、時間の経過に伴うデータの変化と傾向を追跡し、データの季節性と周期性を把握するのに役立ちます。ただし、Vertex AI 時系列分割を使用し、販売タイムスタンプ機能を時間変数として指定すると、データを代表的なバランスのとれたセットに分割できず、エラーやパフォーマンスの低下が発生する可能性があります。コードを記述し、時間変数を作成して構成し、時間変数の順序でデータを分割する必要があります。さらに、このオプションでは、各セットのデータがデータセット全体のデータと同じ分布と特性を持つことが保証されないため、データの一般的なパターンを学習できなくなり、モデルに偏りや分散が生じる可能性があります3。
* Option D: Using Vertex AI random split, assigning 70% of the rows to the training set, 10% to the validation set, and 20% to the test set would not allow you to use the default data splitmethod that is provided by Vertex AI, and could increase the complexity and cost of the data split process. A random split is a data split method that allows you to split your data into sets by using a random sampling method, and assign a custom percentage of the data to each set. A random split can help you split your data into representative and balanced sets, and avoid data leakage. However, using Vertex AI random split, assigning 70% of the rows to the training set, 10% to the validation set, and 20% to the test set would not allow you to use the default data split method that is provided by Vertex AI, and could increase the complexity and cost of the data split process. You would need to write code, create and configure the random split method, and assign the custom percentages to each set. Moreover, this option would not use the default data split method that is provided by Vertex AI, which can simplify the data split process, and works well in most cases1.
References:
* About data splits for AutoML models | Vertex AI | Google Cloud
* Manual split for unstructured data
* Mathematical split