FeaturizationConfig Osztály
Az Azure Machine Learning automatizált gépi tanulási kísérleteinek funkciótervezési konfigurációját határozza meg.
Használja a FeaturizationConfig osztályt az featurization
AutoMLConfig osztály paraméterében. További információ: Automatizált gépi tanulási kísérletek konfigurálása.
Hozzon létre egy FeaturizationConfig elemet.
- Öröklődés
-
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)
Paraméterek
Name | Description |
---|---|
blocked_transformers
|
A featurizálás során letiltandó transzformátornevek listája. Alapértelmezett érték: None
|
column_purposes
|
Az oszlopnevek és szolgáltatástípusok szótára az oszlop céljának frissítéséhez. Alapértelmezett érték: None
|
transformer_params
|
A transzformátor szótára és a hozzá tartozó testreszabási paraméterek. Alapértelmezett érték: None
|
drop_columns
|
A featurizálási folyamat során figyelmen kívül hagyandó oszlopok listája. Ez a beállítás elavult. Mielőtt az adathalmazokat az AutoML-nek adja meg, az adathalmazok az adathalmazok előkészítése során elvetik az oszlopokat az adathalmazokból. Alapértelmezett érték: None
|
prediction_transform_type
|
A céloszlop típusának leadásához használandó céltranszformálási strukt. Alapértelmezett érték: None
|
blocked_transformers
Kötelező
|
A featurizálás során letiltandó transzformátornevek listája. |
column_purposes
Kötelező
|
Az oszlopnevek és szolgáltatástípusok szótára az oszlop céljának frissítéséhez. |
transformer_params
Kötelező
|
A transzformátor szótára és a hozzá tartozó testreszabási paraméterek. |
drop_columns
Kötelező
|
A featurizálási folyamat során figyelmen kívül hagyandó oszlopok listája. Ez a beállítás elavult. Mielőtt az adathalmazokat az AutoML-nek adja meg, az adathalmazok az adathalmazok előkészítése során elvetik az oszlopokat az adathalmazokból. |
dataset_language
|
Három karakteres ISO 639-3 kód az adathalmazban található nyelv(ek)hez. Az angoltól eltérő nyelvek csak AKKOR támogatottak, ha GPU-kompatibilis számítást használ. Ha az adatkészlet több nyelvet tartalmaz, a "mul" langugage_code kell használni. A különböző nyelvek ISO 639-3 kódjainak megkereséséhez tekintse meg a következőt https://en.wikipedia.org/wiki/List_of_ISO_639-3_codes: . Alapértelmezett érték: None
|
prediction_transform_type
Kötelező
|
A céloszlop típusának leadásához használandó céltranszformálási strukt. |
Megjegyzések
A featurization testreszabása olyan módszerekkel rendelkezik, amelyek lehetővé teszik a következő lehetőségeket:
Oszlop céljának hozzáadása vagy eltávolítása. A és
remove_column_purpose
metódusokkaladd_column_purpose
felülbírálhatja a megadott oszlopok funkciótípusát, például ha az oszlop funkciótípusa nem tükrözi megfelelően a célját. Az add metódus támogatja az osztály FULL_SET attribútumában megadott összes funkciótípus hozzáadását FeatureType .Transzformátorparaméterek hozzáadása vagy eltávolítása. A és
remove_transformer_params
metódusokkaladd_transformer_params
módosíthatja a testre szabható transzformátorok paramétereit, például az Imputer, a HashOneHotEncoder és a TfIdf paramétereket. A testre szabható transzformátorok az SupportedTransformers osztály CUSTOMIZABLE_TRANSFORMERS attribútumban találhatók.get_transformer_params
A használatával megkereshet testreszabási paramétereket.Transzformátorok blokkolása. Tiltsa le a módszerrel a featurizálási folyamathoz használni kívánt transzformátorokat
add_blocked_transformers
. A transzformátoroknak a BLOCKED_TRANSFORMERS osztály attribútumában SupportedTransformers felsorolt transzformátorok egyikének kell lenniük.Adjon hozzá egy elvetési oszlopot, amely figyelmen kívül hagyja a metódussal való featurizálást és betanítást
add_drop_columns
. Elvethet például egy olyan oszlopot, amely nem tartalmaz hasznos információkat.Előrejelzési átalakítási típus hozzáadása vagy eltávolítása. És
add_prediction_transform_type
remove_prediction_transform_type
metódusok felülbírálhatják a meglévő céloszloptípust.
Az előrejelzési átalakítási típusok szerepelnek az PredictionTransformTypes attribútumban.
Az alábbi példakód bemutatja, hogyan szabhatja testre a featurizációt az automatizált gépi tanulásban az előrejelzéshez. A példakódban megjelenik egy oszlop elvetése és az átalakítási paraméterek hozzáadása.
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"})
A teljes minta a következő forrásból érhető el: 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
A következő példa egy regressziós probléma featurizációjának testreszabását mutatja be a Hardverteljesítmény-adatkészlet használatával. A példakódban egy blokkolt transzformátor van definiálva, oszlopcélok lesznek hozzáadva, és transzformátorparaméterek lesznek hozzáadva.
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})
A teljes minta a következő forrásból érhető el: https://github.com/Azure/MachineLearningNotebooks/blob/master/how-to-use-azureml/automated-machine-learning/regression-explanation-featurization/auto-ml-regression-explanation-featurization.ipynb
A fenti kód példában definiált FeaturizationConfig ezután használható egy automatizált gépi tanulási kísérlet konfigurációjában a következő kód példában látható módon.
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,
)
A teljes minta a következő forrásból érhető el: https://github.com/Azure/MachineLearningNotebooks/blob/master/how-to-use-azureml/automated-machine-learning/regression-explanation-featurization/auto-ml-regression-explanation-featurization.ipynb
Metódusok
add_blocked_transformers |
A letiltandó transzformátorok hozzáadása. |
add_column_purpose |
Adjon hozzá egy funkciótípust a megadott oszlophoz. |
add_drop_columns |
Adja hozzá az oszlopnevet vagy a figyelmen kívül hagyandó oszlopnevek listáját. |
add_prediction_transform_type |
Adjon hozzá egy előrejelzési átalakítási típust a céloszlophoz. PredictionTransformTypes Osztály. :type prediction_transform_type: str |
add_transformer_params |
Adjon hozzá testreszabott transzformátorparamétereket az egyéni transzformátorparaméterek listájához. Alkalmazza az összes oszlopra, ha az oszloplista üres. |
get_transformer_params |
Az oszlopok transzformátor-testreszabási paramétereinek lekérése. |
remove_column_purpose |
Távolítsa el a megadott oszlop szolgáltatástípusát. Ha egy oszlophoz nincs megadva szolgáltatás, a rendszer az észlelt alapértelmezett funkciót használja. |
remove_prediction_transform_type |
Állítsa vissza az előrejelzési átalakítási típust alapértelmezettre a céloszlop esetében. |
remove_transformer_params |
Távolítsa el a transzformátor testreszabási paramétereit az adott oszlophoz vagy az összes oszlophoz. |
add_blocked_transformers
A letiltandó transzformátorok hozzáadása.
add_blocked_transformers(transformers: str | List[str]) -> None
Paraméterek
Name | Description |
---|---|
transformers
Kötelező
|
Transzformátornév vagy transzformátornevek listája. A transzformátorneveknek az osztály BLOCKED_TRANSFORMERS attribútumában felsorolt transzformátorok egyikének SupportedTransformers kell lenniük. |
add_column_purpose
Adjon hozzá egy funkciótípust a megadott oszlophoz.
add_column_purpose(column_name: str, feature_type: str) -> None
Paraméterek
Name | Description |
---|---|
column_name
Kötelező
|
Egy frissítendő oszlopnév. |
feature_type
Kötelező
|
Az oszlophoz használandó funkciótípus. A szolgáltatástípusoknak az osztály FULL_SET attribútumában FeatureType megadottaknak kell lenniük. |
add_drop_columns
Adja hozzá az oszlopnevet vagy a figyelmen kívül hagyandó oszlopnevek listáját.
add_drop_columns(drop_columns: str | List[str]) -> None
Paraméterek
Name | Description |
---|---|
drop_columns
Kötelező
|
Oszlopnév vagy oszlopnevek listája. |
add_prediction_transform_type
Adjon hozzá egy előrejelzési átalakítási típust a céloszlophoz.
PredictionTransformTypes Osztály. :type prediction_transform_type: str
add_prediction_transform_type(prediction_transform_type: str) -> None
Paraméterek
Name | Description |
---|---|
prediction_transform_type
Kötelező
|
A céloszlop formázásához használandó előrejelzési átalakítási típus. A szolgáltatástípusoknak a FULL_SET attribútumban megadottaknak kell lenniük |
add_transformer_params
Adjon hozzá testreszabott transzformátorparamétereket az egyéni transzformátorparaméterek listájához.
Alkalmazza az összes oszlopra, ha az oszloplista üres.
add_transformer_params(transformer: str, cols: List[str], params: Dict[str, Any]) -> None
Paraméterek
Name | Description |
---|---|
transformer
Kötelező
|
A transzformátor neve. A transzformátor nevének az osztályban SupportedTransformers felsorolt CUSTOMIZABLE_TRANSFORMERS egyikének kell lennie. |
cols
Kötelező
|
Megadott transzformátor bemeneti oszlopai. Egyes transzformátorok több oszlopot is használhatnak listaként megadott bemenetként. |
params
Kötelező
|
Kulcsszavak és argumentumok szótára. |
Megjegyzések
Az alábbi példakód bemutatja, hogyan szabhatja testre a featurizációt az automatizált gépi tanulásban az előrejelzéshez. A példakódban megjelenik egy oszlop elvetése és az átalakítási paraméterek hozzáadása.
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"})
A teljes minta a következő forrásból érhető el: 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
Az oszlopok transzformátor-testreszabási paramétereinek lekérése.
get_transformer_params(transformer: str, cols: List[str]) -> Dict[str, Any]
Paraméterek
Name | Description |
---|---|
transformer
Kötelező
|
A transzformátor neve. A transzformátor nevének az osztályban SupportedTransformers felsorolt CUSTOMIZABLE_TRANSFORMERS egyikének kell lennie. |
cols
Kötelező
|
Az oszlopok neve, amelyről információt szeretne lekérni. Az összes oszlop megadásához használjon üres listát. |
Válaszok
Típus | Description |
---|---|
Transzformátorparaméter-beállítások. |
remove_column_purpose
Távolítsa el a megadott oszlop szolgáltatástípusát.
Ha egy oszlophoz nincs megadva szolgáltatás, a rendszer az észlelt alapértelmezett funkciót használja.
remove_column_purpose(column_name: str) -> None
Paraméterek
Name | Description |
---|---|
column_name
Kötelező
|
A frissíteni kívánt oszlop neve. |
remove_prediction_transform_type
Állítsa vissza az előrejelzési átalakítási típust alapértelmezettre a céloszlop esetében.
remove_prediction_transform_type() -> None
remove_transformer_params
Távolítsa el a transzformátor testreszabási paramétereit az adott oszlophoz vagy az összes oszlophoz.
remove_transformer_params(transformer: str, cols: List[str] | None = None) -> None
Paraméterek
Name | Description |
---|---|
transformer
Kötelező
|
A transzformátor neve. A transzformátor nevének az osztályban SupportedTransformers felsorolt CUSTOMIZABLE_TRANSFORMERS egyikének kell lennie. |
cols
|
A testreszabási paraméterek eltávolításához használt oszlopok nevei. Adja meg a Nincs (alapértelmezett) értéket a megadott transzformátor összes testreszabási paramjának eltávolításához. Alapértelmezett érték: None
|