Feature Store 系列を表示する
FeatureEngineeringClient.log_model
を使用してモデルをログすると、モデル内で使用されている特徴量が自動的に追跡され、カタログ エクスプローラーの [系列] タブで表示できます。 特徴量テーブルに加えて、オンデマンド特徴量の計算に使用される Python UDF も追跡されます。
特徴量テーブル、関数、またはモデルの系列をキャプチャする方法
モデル内で使用される特徴量テーブルと関数を追跡する系列情報は、log_model
を呼び出す際に自動的にキャプチャされます。 次のサンプル コードを参照してください。
from databricks.feature_engineering import FeatureEngineeringClient, FeatureLookup, FeatureFunction
fe = FeatureEngineeringClient()
features = [
FeatureLookup(
table_name = "main.on_demand_demo.restaurant_features",
feature_names = ["latitude", "longitude"],
rename_outputs={"latitude": "restaurant_latitude", "longitude": "restaurant_longitude"},
lookup_key = "restaurant_id",
timestamp_lookup_key = "ts"
),
FeatureFunction(
udf_name="main.on_demand_demo.extract_user_latitude",
output_name="user_latitude",
input_bindings={"blob": "json_blob"},
),
FeatureFunction(
udf_name="main.on_demand_demo.extract_user_longitude",
output_name="user_longitude",
input_bindings={"blob": "json_blob"},
),
FeatureFunction(
udf_name="main.on_demand_demo.haversine_distance",
output_name="distance",
input_bindings={"x1": "restaurant_longitude", "y1": "restaurant_latitude", "x2": "user_longitude", "y2": "user_latitude"},
)
]
training_set = fe.create_training_set(
label_df, feature_lookups=features, label="label", exclude_columns=["restaurant_id", "json_blob", "restaurant_latitude", "restaurant_longitude", "user_latitude", "user_longitude", "ts"]
)
class IsClose(mlflow.pyfunc.PythonModel):
def predict(self, ctx, inp):
return (inp['distance'] < 2.5).values
model_name = "fe_packaged_model"
mlflow.set_registry_uri("databricks-uc")
fe.log_model(
IsClose(),
model_name,
flavor=mlflow.pyfunc,
training_set=training_set,
registered_model_name=registered_model_name
)
特徴量テーブル、モデル、または関数の系列を表示する
特徴量テーブル、モデル、または関数の系列を表示するには、以下の手順に従います。
カタログ エクスプローラーのテーブル、モデル バージョン、または関数のページに移動します。
[系列] タブを選択します。左側のサイドバーには、このテーブル、モデル バージョン、または関数でログされた Unity Catalog コンポーネントが表示されます。
[系列グラフの表示] をクリックします。 系列グラフが表示されます。 系列グラフの確認の詳細については、「系列のキャプチャと確認」を参照してください。
系列グラフを閉じるには、右上隅の をクリックします。