FeaturizationConfig Klasse
Definiert die Konfiguration der Featurisierung für Experimente zum automatisierten maschinellen Lernen in Azure Machine Learning.
Verwenden Sie die FeaturizationConfig-Klasse im featurization
-Parameter der AutoMLConfig-Klasse. Weitere Informationen finden Sie unter Konfigurieren automatisierter ML-Experimente.
Erstellen Sie eine FeaturizationConfig.
- Vererbung
-
builtins.objectFeaturizationConfig
Konstruktor
FeaturizationConfig(blocked_transformers: List[str] | None = None, column_purposes: Dict[str, str] | None = None, transformer_params: Dict[str, List[Tuple[List[str], Dict[str, Any]]]] | None = None, drop_columns: List[str] | None = None, dataset_language: str | None = None, prediction_transform_type: str | None = None)
Parameter
Eine Liste von Transformatornamen, die während der Featurisierung blockiert werden sollen.
- column_purposes
- dict
Ein Wörterbuch mit Spaltennamen und Featuretypen, die zum Aktualisieren des Spaltenzwecks verwendet werden.
- transformer_params
- dict
Ein Wörterbuch mit Transformatoren und entsprechenden Anpassungsparametern.
Eine Liste von Spalten, die im Featurisierungsprozess ignoriert werden sollen. Diese Einstellung wird als veraltet eingestuft. Löschen Sie im Rahmen des Datenaufbereitungsprozesses Spalten aus den Datasets, bevor Sie die Datasets für automatisiertes maschinelles Lernen bereitstellen.
- prediction_transform_type
- str
Str des Zieltransformationstyps, der zum Umwandeln des Zielspaltentyps verwendet werden soll.
Eine Liste von Transformatornamen, die während der Featurisierung blockiert werden sollen.
- column_purposes
- dict
Ein Wörterbuch mit Spaltennamen und Featuretypen, die zum Aktualisieren des Spaltenzwecks verwendet werden.
- transformer_params
- dict
Ein Wörterbuch mit Transformatoren und entsprechenden Anpassungsparametern.
Eine Liste von Spalten, die im Featurisierungsprozess ignoriert werden sollen. Diese Einstellung wird als veraltet eingestuft. Löschen Sie im Rahmen des Datenaufbereitungsprozesses Spalten aus den Datasets, bevor Sie die Datasets für automatisiertes maschinelles Lernen bereitstellen.
- dataset_language
- str
Iso 639-3-Code mit drei Zeichen für die Sprache(en) im Dataset. Andere Sprachen als Englisch werden nur unterstützt, wenn Sie GPU-fähiges Compute verwenden. Die langugage_code "mul" sollte verwendet werden, wenn das Dataset mehrere Sprachen enthält. Iso 639-3-Codes für verschiedene Sprachen finden Sie unter https://en.wikipedia.org/wiki/List_of_ISO_639-3_codes.
- prediction_transform_type
- str
Str des Zieltransformationstyps, der zum Umwandeln des Zielspaltentyps verwendet werden soll.
Hinweise
Die Anpassung der Featurisierung verfügt über Methoden für folgende Aufgaben:
Hinzufügen oder Entfernen des Spaltenzwecks. Mit den Methoden
add_column_purpose
undremove_column_purpose
können Sie den Featuretyp für angegebene Spalten überschreiben, z. B. wenn der Featuretyp der Spalte den Zweck nicht richtig wiedergibt. Die add-Methode unterstützt das Hinzufügen aller Featuretypen, die im FULL_SET-Attribut der FeatureType-Klasse angegeben sind.Hinzufügen oder Entfernen von Transformatorparametern. Mit den Methoden
add_transformer_params
undremove_transformer_params
können Sie die Parameter anpassbarer Transformatoren wie Imputer, HashOneHotEncoder und TfIdf ändern. Anpassbare Transformatoren werden im CUSTOMIZABLE_TRANSFORMERS-Attribut der SupportedTransformers-Klasse aufgeführt. Verwenden Sieget_transformer_params
, um nach Anpassungsparametern zu suchen.Blockieren von Transformatoren. Blockieren Sie mit der Methode
add_blocked_transformers
Transformatoren, die für den Featurisierungsprozess verwendet werden sollen. Bei den Transformatoren muss es sich um einen der Transformatoren handeln, die im BLOCKED_TRANSFORMERS-Attribut der SupportedTransformers-Klasse aufgeführt sind.Fügen Sie mit der Methode
add_drop_columns
eine zu löschende Spalte hinzu, die bei Featurisierung und Training ignoriert werden soll. Beispielsweise können Sie eine Spalte verwerfen, die keine nützlichen Informationen enthält.Hinzufügen oder Entfernen des Vorhersagetransformationstyps. Mit den Methoden
add_prediction_transform_type
und
remove_prediction_transform_type
können Sie den vorhandenen Zielspaltentyp außer Kraft setzen.
Vorhersagetransformationstypen sind im PredictionTransformTypes-Attribut aufgeführt.
Das folgende Codebeispiel zeigt, wie Sie die Featurisierung in automatisiertem maschinellem Lernen vorhersagen. Im Beispielcode werden das Löschen einer Spalte und das Hinzufügen von Transformationsparametern gezeigt.
featurization_config = FeaturizationConfig()
# Force the CPWVOL5 feature to be numeric type.
featurization_config.add_column_purpose("CPWVOL5", "Numeric")
# Fill missing values in the target column, Quantity, with zeros.
featurization_config.add_transformer_params(
"Imputer", ["Quantity"], {"strategy": "constant", "fill_value": 0}
)
# Fill missing values in the INCOME column with median value.
featurization_config.add_transformer_params(
"Imputer", ["INCOME"], {"strategy": "median"}
)
# Fill missing values in the Price column with forward fill (last value carried forward).
featurization_config.add_transformer_params("Imputer", ["Price"], {"strategy": "ffill"})
Das vollständige Beispiel finden Sie unter https://github.com/Azure/MachineLearningNotebooks/blob/master/how-to-use-azureml/automated-machine-learning/forecasting-orange-juice-sales/auto-ml-forecasting-orange-juice-sales.ipynb.
Das nächste Beispiel zeigt das Anpassen der Featurisierung für ein Regressionsproblem mithilfe des Datasets zur Hardwareleistung. Im Beispielcode wird ein blockierter Transformator definiert. Außerdem werden Spaltenzwecke und Transformatorparameter hinzugefügt.
featurization_config = FeaturizationConfig()
featurization_config.blocked_transformers = ["LabelEncoder"]
# featurization_config.drop_columns = ['MMIN']
featurization_config.add_column_purpose("MYCT", "Numeric")
featurization_config.add_column_purpose("VendorName", "CategoricalHash")
# default strategy mean, add transformer param for for 3 columns
featurization_config.add_transformer_params("Imputer", ["CACH"], {"strategy": "median"})
featurization_config.add_transformer_params(
"Imputer", ["CHMIN"], {"strategy": "median"}
)
featurization_config.add_transformer_params(
"Imputer", ["PRP"], {"strategy": "most_frequent"}
)
# featurization_config.add_transformer_params('HashOneHotEncoder', [], {"number_of_bits": 3})
Das vollständige Beispiel finden Sie unter https://github.com/Azure/MachineLearningNotebooks/blob/master/how-to-use-azureml/automated-machine-learning/regression-explanation-featurization/auto-ml-regression-explanation-featurization.ipynb.
Die im obigen Codebeispiel definierte Featurisierungskonfiguration (FeaturizationConfig) kann dann wie im nächsten Codebeispiel gezeigt in der Konfiguration eines Experiments für automatisiertes maschinelles Lernen verwendet werden.
automl_settings = {
"enable_early_stopping": True,
"experiment_timeout_hours": 0.25,
"max_concurrent_iterations": 4,
"max_cores_per_iteration": -1,
"n_cross_validations": 5,
"primary_metric": "normalized_root_mean_squared_error",
"verbosity": logging.INFO,
}
automl_config = AutoMLConfig(
task="regression",
debug_log="automl_errors.log",
compute_target=compute_target,
featurization=featurization_config,
training_data=train_data,
label_column_name=label,
**automl_settings,
)
Das vollständige Beispiel finden Sie unter https://github.com/Azure/MachineLearningNotebooks/blob/master/how-to-use-azureml/automated-machine-learning/regression-explanation-featurization/auto-ml-regression-explanation-featurization.ipynb.
Methoden
add_blocked_transformers |
Hinzufügen zu blockierender Transformatoren. |
add_column_purpose |
Hinzufügen eines Featuretyps für die angegebene Spalte. |
add_drop_columns |
Fügen Sie einen zu ignorierenden Spaltennamen oder eine Liste von zu ignorierenden Spaltennamen hinzu. |
add_prediction_transform_type |
Fügen Sie einen Vorhersagetransformationstyp für die Zielspalte hinzu. PredictionTransformTypes -Klasse. :type prediction_transform_type: str |
add_transformer_params |
Hinzufügen angepasster Transformatorparameter zur Liste der benutzerdefinierten Transformatorparameter. Gilt für alle Spalten, wenn die Spaltenliste leer ist. |
get_transformer_params |
Abrufen der Anpassungsparameter für Transformatoren für Spalten. |
remove_column_purpose |
Entfernen des Featuretyps für die angegebene Spalte. Wenn für eine Spalte kein Feature angegeben ist, wird das erkannte Standardfeature verwendet. |
remove_prediction_transform_type |
Setzt den Vorhersagetransformationstyp für die Zielspalte auf den Standardwert zurück. |
remove_transformer_params |
Entfernen der Anpassungsparameter für Transformatoren für eine bestimmte Spalte oder alle Spalten. |
add_blocked_transformers
Hinzufügen zu blockierender Transformatoren.
add_blocked_transformers(transformers: str | List[str]) -> None
Parameter
Ein Transformatorname oder eine Liste von Transformatornamen. Bei den Transformatornamen muss es sich um einen der Transformatoren handeln, die im BLOCKED_TRANSFORMERS-Attribut der SupportedTransformers-Klasse aufgeführt sind.
add_column_purpose
Hinzufügen eines Featuretyps für die angegebene Spalte.
add_column_purpose(column_name: str, feature_type: str) -> None
Parameter
- feature_type
- FeatureType
Ein Featuretyp, der für die Spalte verwendet werden soll. Bei den Featuretypen muss es sich um einen der Typen handeln, die im FULL_SET-Attribut der FeatureType-Klasse angegeben sind.
add_drop_columns
Fügen Sie einen zu ignorierenden Spaltennamen oder eine Liste von zu ignorierenden Spaltennamen hinzu.
add_drop_columns(drop_columns: str | List[str]) -> None
Parameter
add_prediction_transform_type
Fügen Sie einen Vorhersagetransformationstyp für die Zielspalte hinzu.
PredictionTransformTypes -Klasse. :type prediction_transform_type: str
add_prediction_transform_type(prediction_transform_type: str) -> None
Parameter
- prediction_transform_type
Ein für die Umwandlung der Zielspalte zu verwendender Vorhersagetransformationstyp. Featuretypen müssen angegeben werden im FULL_SET-Attribut der
add_transformer_params
Hinzufügen angepasster Transformatorparameter zur Liste der benutzerdefinierten Transformatorparameter.
Gilt für alle Spalten, wenn die Spaltenliste leer ist.
add_transformer_params(transformer: str, cols: List[str], params: Dict[str, Any]) -> None
Parameter
- transformer
- str
Name des Transformators. Beim Transformatornamen muss es sich um einen der Namen handeln, die im CUSTOMIZABLE_TRANSFORMERS-Attribut der SupportedTransformers-Klasse aufgeführt sind.
Die Eingabespalten für den angegebenen Transformator. Einige Transformatoren akzeptieren mehrere als Liste angegebene Spalten als Eingabe.
Hinweise
Das folgende Codebeispiel zeigt, wie Sie die Featurisierung in automatisiertem maschinellem Lernen vorhersagen. Im Beispielcode werden das Löschen einer Spalte und das Hinzufügen von Transformationsparametern gezeigt.
featurization_config = FeaturizationConfig()
# Force the CPWVOL5 feature to be numeric type.
featurization_config.add_column_purpose("CPWVOL5", "Numeric")
# Fill missing values in the target column, Quantity, with zeros.
featurization_config.add_transformer_params(
"Imputer", ["Quantity"], {"strategy": "constant", "fill_value": 0}
)
# Fill missing values in the INCOME column with median value.
featurization_config.add_transformer_params(
"Imputer", ["INCOME"], {"strategy": "median"}
)
# Fill missing values in the Price column with forward fill (last value carried forward).
featurization_config.add_transformer_params("Imputer", ["Price"], {"strategy": "ffill"})
Das vollständige Beispiel finden Sie unter https://github.com/Azure/MachineLearningNotebooks/blob/master/how-to-use-azureml/automated-machine-learning/forecasting-orange-juice-sales/auto-ml-forecasting-orange-juice-sales.ipynb.
get_transformer_params
Abrufen der Anpassungsparameter für Transformatoren für Spalten.
get_transformer_params(transformer: str, cols: List[str]) -> Dict[str, Any]
Parameter
- transformer
- str
Der Name des Transformators. Beim Transformatornamen muss es sich um einen der Namen handeln, die im CUSTOMIZABLE_TRANSFORMERS-Attribut der SupportedTransformers-Klasse aufgeführt sind.
Die Spaltennamen, für die Informationen abgerufen werden sollen. Verwenden Sie eine leere Liste, um alle Spalten anzugeben.
Gibt zurück
Einstellungen der Transformatorparameter.
Rückgabetyp
remove_column_purpose
Entfernen des Featuretyps für die angegebene Spalte.
Wenn für eine Spalte kein Feature angegeben ist, wird das erkannte Standardfeature verwendet.
remove_column_purpose(column_name: str) -> None
Parameter
remove_prediction_transform_type
Setzt den Vorhersagetransformationstyp für die Zielspalte auf den Standardwert zurück.
remove_prediction_transform_type() -> None
remove_transformer_params
Entfernen der Anpassungsparameter für Transformatoren für eine bestimmte Spalte oder alle Spalten.
remove_transformer_params(transformer: str, cols: List[str] | None = None) -> None
Parameter
- transformer
- str
Name des Transformators. Beim Transformatornamen muss es sich um einen der Namen handeln, die im CUSTOMIZABLE_TRANSFORMERS-Attribut der SupportedTransformers-Klasse aufgeführt sind.
Attribute
blocked_transformers
column_purposes
dataset_language
drop_columns
prediction_transform_type
transformer_params
Feedback
https://aka.ms/ContentUserFeedback.
Bald verfügbar: Im Laufe des Jahres 2024 werden wir GitHub-Issues stufenweise als Feedbackmechanismus für Inhalte abbauen und durch ein neues Feedbacksystem ersetzen. Weitere Informationen finden Sie unterFeedback senden und anzeigen für