Öznitelik yönetimi ve soy

Databricks Özellik Deposu, özellik tablolarına erişimi yönetir ve model oluşturmak için kullanılan özellik tabloları, işlevler ve modeller genelinde kökeni otomatik olarak izler.

Sunulan modelin performansını izleme ve özellik tablosu verilerindeki değişiklikler hakkında bilgi için bkz. Veri profili oluşturma.

Özellik tablolarına erişimi denetleme

Unity Kataloğu'ndaki özellik tabloları için erişim denetimi Unity Kataloğu tarafından yönetilir. Bkz. Unity Kataloğu ayrıcalıkları.

Özellik tablosunu, işlevini ve model kökenini görüntüleme

Bir modeli FeatureEngineeringClient.log_model kullanarak günlüğe kaydettiğinizde, modelde kullanılan özellikler otomatik olarak izlenir ve Catalog Explorer'ın Köken sekmesinde görüntülenebilir. Özellik tablolarına ek olarak, isteğe bağlı özellikleri hesaplamak için kullanılan Python UDF'leri de izlenir.

Özellik tablosunun, işlevinin veya modelinin kökenini yakalama

Modellerde kullanılan soyağacı bilgilerini izleme işlevleri ve özellik tabloları, log_model çağırıldığında otomatik olarak yakalanır. Aşağıdaki örnek koda bakın.

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
)

Özellik tablosunun, modelinin veya işlevinin kökenini görüntüleme

Özellik tablosu, modeli veya işlevinin kökenini görüntülemek için şu adımları izleyin:

  1. Katalog Gezgini'nde tablo, model sürümü veya işlev sayfasına gidin.

  2. Köken sekmesini seçin. Sol kenar çubuğunda, bu tabloyla, model sürümüyle veya işleve kaydedilmiş olan Unity Kataloğu bileşenleri gösterilir.

    Katalog Gezgini'nde model sayfasındaki köken sekmesi

  3. Köken grafiğini gör'e tıklayın. Köken grafiği görüntülenir. Köken grafiğini keşfetme hakkında ayrıntılı bilgi için bkz. Unity Kataloğu'nda Köken.

    köken ekranı

  4. Köken grafiğini kapatmak için sağ üst köşedeki köken grafiği kapat düğmesine tıklayın.