Featuregovernance und -herkunft
Auf dieser Seite werden die Governance- und Lineage-Funktionen des Feature Engineerings im Unity-Katalog beschrieben.
Informationen zur Überwachung der Leistung eines bereitgestellten Modells und Änderungen an den Merkmaltabellendaten finden Sie unter Lakehouse Monitoring.
Steuern des Zugriffs auf Featuretabellen
Die Zugriffssteuerung für Featuretabellen im Unity-Katalog wird vom Unity-Katalog verwaltet. Weitere Informationen finden Sie unter Unity Catalog-Berechtigungen.
Anzeigen von Featuretabellen, Funktionen und Modellherkunft
Wenn Sie ein Modell mit FeatureEngineeringClient.log_model
protokollieren, werden die im Modell verwendeten Features automatisch nachverfolgt und können im Katalog-Explorer auf der Registerkarte Lineage angezeigt werden. Zusätzlich zu Featuretabellen werden Python-UDFs, die zum Berechnen von On-Demand-Features verwendet werden, ebenfalls nachverfolgt.
So erfassen Sie die Lineage einer Featuretabelle, -Funktion oder eines Modells
Datenherkunftsinformationen zur Nachverfolgung von Featuretabellen und in Modellen verwendeten Funkionen werden automatisch erfasst, wenn Sie log_model
aufrufen. Sehen Sie sich den folgenden Beispielcode an.
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
)
Abstammung einer Featuretabelle, eines Modells oder einer Funktion anzeigen
Führen Sie die folgenden Schritte aus, um die Linien einer Featuretabelle, eines Modells oder einer Funktion anzuzeigen:
Navigieren Sie im Katalog-Explorer zur Tabelle, Modellversion oder Funktionsseite.
Wählen Sie die Registerkarte Linie aus. Die linke Randleiste zeigt Unity-Katalogkomponenten an, die mit dieser Tabelle, Modellversion oder Funktion protokolliert wurden.
Klicken Sie auf Siehe Liniendiagramm. Das Liniendiagramm wird angezeigt. Ausführliche Informationen zum Untersuchen des Liniendiagramms finden Sie unter Erfassen und Erkunden von Linien.
Klicken Sie zum Schließen des Abstammungsgraphen auf die Schließen-Schaltfläche
in der oberen rechten Ecke.