AutoMLConfig Klas
Vertegenwoordigt de configuratie voor het indienen van een geautomatiseerd ML-experiment in Azure Machine Learning.
Dit configuratieobject bevat en bewaart de parameters voor het configureren van de experimentuitvoering, evenals de trainingsgegevens die tijdens runtime moeten worden gebruikt. Zie voor hulp bij het selecteren van uw instellingen https://aka.ms/AutoMLConfig.
Maak een AutoMLConfig.
- Overname
-
builtins.objectAutoMLConfig
Constructor
AutoMLConfig(task: str, path: str | None = None, iterations: int | None = None, primary_metric: str | None = None, positive_label: Any | None = None, compute_target: Any | None = None, spark_context: Any | None = None, X: Any | None = None, y: Any | None = None, sample_weight: Any | None = None, X_valid: Any | None = None, y_valid: Any | None = None, sample_weight_valid: Any | None = None, cv_splits_indices: List[List[Any]] | None = None, validation_size: float | None = None, n_cross_validations: int | str | None = None, y_min: float | None = None, y_max: float | None = None, num_classes: int | None = None, featurization: str | FeaturizationConfig = 'auto', max_cores_per_iteration: int = 1, max_concurrent_iterations: int = 1, iteration_timeout_minutes: int | None = None, mem_in_mb: int | None = None, enforce_time_on_windows: bool = True, experiment_timeout_hours: float | None = None, experiment_exit_score: float | None = None, enable_early_stopping: bool = True, blocked_models: List[str] | None = None, blacklist_models: List[str] | None = None, exclude_nan_labels: bool = True, verbosity: int = 20, enable_tf: bool = False, model_explainability: bool = True, allowed_models: List[str] | None = None, whitelist_models: List[str] | None = None, enable_onnx_compatible_models: bool = False, enable_voting_ensemble: bool = True, enable_stack_ensemble: bool | None = None, debug_log: str = 'automl.log', training_data: Any | None = None, validation_data: Any | None = None, test_data: Any | None = None, test_size: float | None = None, label_column_name: str | None = None, weight_column_name: str | None = None, cv_split_column_names: List[str] | None = None, enable_local_managed: bool = False, enable_dnn: bool | None = None, forecasting_parameters: ForecastingParameters | None = None, **kwargs: Any)
Parameters
Het type taak dat moet worden uitgevoerd. Waarden kunnen classificatie, regressie of prognose zijn, afhankelijk van het type geautomatiseerde ML-probleem dat moet worden opgelost.
- path
- str
Het volledige pad naar de projectmap van Azure Machine Learning. Als dit niet is opgegeven, is de standaardinstelling dat de huidige map of '.' wordt gebruikt.
- iterations
- int
Het totale aantal verschillende combinaties van algoritmen en parameters dat moet worden getest tijdens een geautomatiseerd ML-experiment. Als dit niet is opgegeven, is de standaardwaarde 1000 iteraties.
De metrische waarde die geautomatiseerde machine learning optimaliseert voor modelselectie. Geautomatiseerde Machine Learning verzamelt meer metrische gegevens dan kan worden geoptimaliseerd. U kunt gebruiken get_primary_metrics om een lijst met geldige metrische gegevens voor uw opgegeven taak op te halen. Zie voor meer informatie over hoe metrische gegevens worden berekend https://docs.microsoft.com/azure/machine-learning/how-to-configure-auto-train#primary-metric.
Als dit niet is opgegeven, wordt nauwkeurigheid gebruikt voor classificatietaken, wordt genormaliseerd wortelgemiddelde kwadraat gebruikt voor prognose- en regressietaken, wordt nauwkeurigheid gebruikt voor afbeeldingsclassificatie en afbeeldingsclassificatie met meerdere labels, en gemiddelde gemiddelde precisie wordt gebruikt voor de detectie van afbeeldingsobjecten.
- positive_label
- Any
Het positieve klasselabel waarmee Geautomatiseerde Machine Learning binaire metrische gegevens berekent. Binaire metrische gegevens worden berekend in twee voorwaarden voor classificatietaken:
- de labelkolom bestaat uit twee klassen die aangeven dat de binaire classificatietaak autoML de opgegeven positieve klasse gebruikt wanneer positive_label wordt doorgegeven, anders kiest AutoML een positieve klasse op basis van label gecodeerde waarde.
- classificatietaak met meerdere klassen met positive_label opgegeven
Bekijk metrische gegevens voor classificatiescenario's voor meer informatie over classificatie.
- compute_target
- AbstractComputeTarget
Het Azure Machine Learning-rekendoel waarop het geautomatiseerde machine learning-experiment moet worden uitgevoerd. Zie https://docs.microsoft.com/en-us/azure/machine-learning/concept-automated-ml#local-remote voor meer informatie over rekendoelen.
- spark_context
- <xref:SparkContext>
De Spark-context. Alleen van toepassing wanneer deze wordt gebruikt in een Azure Databricks-/Spark-omgeving.
- X
- DataFrame of ndarray of Dataset of TabularDataset
De trainingsfuncties die moeten worden gebruikt bij het aanpassen van pijplijnen tijdens een experiment. Deze instelling wordt afgeschaft. Gebruik in plaats daarvan training_data en label_column_name.
- y
- DataFrame of ndarray of Dataset of TabularDataset
De trainingslabels die moeten worden gebruikt bij het aanpassen van pijplijnen tijdens een experiment. Dit is de waarde die uw model voorspelt. Deze instelling wordt afgeschaft. Gebruik in plaats daarvan training_data en label_column_name.
- sample_weight
- DataFrame of ndarray of TabularDataset
Het gewicht dat aan elk trainingsvoorbeeld moet worden toegewezen bij het uitvoeren van pijplijnen, elke rij moet overeenkomen met een rij in X- en y-gegevens.
Geef deze parameter op bij het opgeven van X
.
Deze instelling wordt afgeschaft. Gebruik in plaats daarvan training_data en weight_column_name.
- X_valid
- DataFrame of ndarray of Dataset of TabularDataset
Validatiefuncties die moeten worden gebruikt bij het aanpassen van pijplijnen tijdens een experiment.
Indien opgegeven, y_valid
moet of sample_weight_valid
ook worden opgegeven.
Deze instelling wordt afgeschaft. Gebruik in plaats daarvan validation_data en label_column_name.
- y_valid
- DataFrame of ndarray of Dataset of TabularDataset
Validatielabels die moeten worden gebruikt bij het aanpassen van pijplijnen tijdens een experiment.
Zowel als X_valid
y_valid
moeten samen worden opgegeven.
Deze instelling wordt afgeschaft. Gebruik in plaats daarvan validation_data en label_column_name.
- sample_weight_valid
- DataFrame of ndarray of TabularDataset
Het gewicht dat aan elk validatievoorbeeld moet worden opgegeven bij het uitvoeren van scorepijplijnen, elke rij moet overeenkomen met een rij in X- en y-gegevens.
Geef deze parameter op bij het opgeven van X_valid
.
Deze instelling wordt afgeschaft. Gebruik in plaats daarvan validation_data en weight_column_name.
Indexen waar trainingsgegevens moeten worden gesplitst voor kruisvalidatie. Elke rij is een afzonderlijke kruisvouw en biedt binnen elke kruismap twee numpy-matrices, de eerste met de indexen voor voorbeelden die moeten worden gebruikt voor trainingsgegevens en de tweede met de indexen die moeten worden gebruikt voor validatiegegevens. dat wil zeggen [[t1, v1], [t2, v2], ...] waarbij t1 de trainingsindexen voor de eerste kruisvouw is en v1 de validatie-indexen voor de eerste kruisvouw.
Als u bestaande gegevens wilt opgeven als validatiegegevens, gebruikt u validation_data
. Als u in plaats daarvan wilt toestaan dat AutoML validatiegegevens uit trainingsgegevens extraheert, geeft u n_cross_validations
of op validation_size
.
Gebruik cv_split_column_names
als u een of meer kolommen voor kruisvalidatie in training_data
hebt.
- validation_size
- float
Welk deel van de gegevens moet worden opgeslagen voor validatie wanneer er geen gebruikersvalidatiegegevens zijn opgegeven. Dit moet tussen 0,0 en 1,0 niet-inclusief zijn.
Geef op validation_data
om validatiegegevens op te geven, anders in te stellen n_cross_validations
of validation_size
om validatiegegevens uit de opgegeven trainingsgegevens te extraheren.
Gebruik cv_split_column_names
voor een aangepaste kruisvalidatievouw.
Zie Gegevenssplitsingen en kruisvalidatie configureren in geautomatiseerde machine learning voor meer informatie.
- n_cross_validations
- int
Hoeveel kruisvalidaties moeten worden uitgevoerd wanneer er geen gebruikersvalidatiegegevens zijn opgegeven.
Geef op validation_data
om validatiegegevens op te geven, anders in te stellen n_cross_validations
of validation_size
om validatiegegevens uit de opgegeven trainingsgegevens te extraheren.
Gebruik cv_split_column_names
voor een aangepaste kruisvalidatievouw.
Zie Gegevenssplitsingen en kruisvalidatie configureren in geautomatiseerde machine learning voor meer informatie.
- y_min
- float
Minimumwaarde van y voor een regressie-experiment. De combinatie van en y_max
wordt gebruikt om metrische gegevens van y_min
de testset te normaliseren op basis van het invoergegevensbereik. Deze instelling wordt afgeschaft. In plaats daarvan wordt deze waarde berekend op basis van de gegevens.
- y_max
- float
Maximumwaarde van y voor een regressie-experiment. De combinatie van en y_max
wordt gebruikt om metrische gegevens van y_min
de testset te normaliseren op basis van het invoergegevensbereik. Deze instelling wordt afgeschaft. In plaats daarvan wordt deze waarde berekend op basis van de gegevens.
- num_classes
- int
Het aantal klassen in de labelgegevens voor een classificatie-experiment. Deze instelling wordt afgeschaft. In plaats daarvan wordt deze waarde berekend op basis van de gegevens.
- featurization
- str of FeaturizationConfig
'auto' / 'uit' / FeaturizationConfig Indicator om te bepalen of de featurization-stap automatisch moet worden uitgevoerd of niet, of dat aangepaste featurization moet worden gebruikt. Opmerking: als de invoergegevens sparse zijn, kan featurization niet worden ingeschakeld.
Het kolomtype wordt automatisch gedetecteerd. Op basis van het gedetecteerde kolomtype wordt de voorverwerking/featurisatie als volgt uitgevoerd:
Categorisch: Doelcodering, één dynamische codering, categorieën met hoge kardinaliteit verwijderen, ontbrekende waarden invoeren.
Numeriek: Ontbrekende waarden, clusterafstand, bewijsgewicht invoeren.
DateTime: Verschillende functies, zoals dag, seconden, minuten, uren, enzovoort.
Tekst: Zak met woorden, vooraf getraind Word insluiten, tekstdoelcodering.
Meer informatie vindt u in het artikel Geautomatiseerde ML-experimenten configureren in Python.
Als u de stap featurization wilt aanpassen, geeft u een FeaturizationConfig-object op. Aangepaste featurisatie ondersteunt momenteel het blokkeren van een set transformatoren, het bijwerken van kolomdoeleinden, het bewerken van parameters voor transformatoren en het verwijderen van kolommen. Zie Functie-engineering aanpassen voor meer informatie.
Opmerking: Timeseries-functies worden afzonderlijk verwerkt wanneer het taaktype onafhankelijk van deze parameter is ingesteld op prognose.
- max_cores_per_iteration
- int
Het maximum aantal threads dat moet worden gebruikt voor een bepaalde trainingsiteratie. Acceptabele waarden:
Groter dan 1 en kleiner dan of gelijk aan het maximum aantal kernen op het rekendoel.
Gelijk aan -1, wat betekent dat alle mogelijke kernen per iteratie per onderliggende uitvoering moeten worden gebruikt.
Gelijk aan 1, de standaardwaarde.
- max_concurrent_iterations
- int
Geeft het maximum aantal iteraties aan dat parallel wordt uitgevoerd. De standaardwaarde is 1.
AmlCompute-clusters ondersteunen één interation die per knooppunt wordt uitgevoerd. Voor meerdere bovenliggende uitvoeringen van een AutoML-experiment die parallel worden uitgevoerd op één AmlCompute-cluster, moet de som van de
max_concurrent_iterations
waarden voor alle experimenten kleiner zijn dan of gelijk zijn aan het maximum aantal knooppunten. Anders worden uitvoeringen in de wachtrij geplaatst totdat knooppunten beschikbaar zijn.DSVM ondersteunt meerdere iteraties per knooppunt.
max_concurrent_iterations
moet kleiner zijn dan of gelijk zijn aan het aantal kernen op de DSVM. Als meerdere experimenten parallel worden uitgevoerd op één DSVM, moet de som van demax_concurrent_iterations
waarden voor alle experimenten kleiner zijn dan of gelijk zijn aan het maximum aantal knooppunten.Databricks
max_concurrent_iterations
: moet kleiner zijn dan of gelijk zijn aan het aantal werkknooppunten in Databricks.
max_concurrent_iterations
is niet van toepassing op lokale uitvoeringen. Voorheen heette concurrent_iterations
deze parameter .
- iteration_timeout_minutes
- int
Maximale tijd in minuten die elke iteratie kan uitvoeren voordat deze wordt beëindigd. Als dit niet is opgegeven, wordt een waarde van 1 maand of 43200 minuten gebruikt.
- mem_in_mb
- int
Maximaal geheugengebruik waarvoor elke iteratie kan worden uitgevoerd voordat deze wordt beëindigd. Als dit niet is opgegeven, wordt een waarde van 1 PB of 1073741824 MB gebruikt.
- enforce_time_on_windows
- bool
Of u een tijdslimiet wilt afdwingen voor modeltraining bij elke iteratie in Windows. De standaardwaarde is True. Als u een Python-scriptbestand (.py) uitvoert, raadpleegt u de documentatie voor het toestaan van resourcelimieten in Windows.
- experiment_timeout_hours
- float
Maximale tijdsduur in uren dat de combinatie van alle iteraties voordat het experiment wordt beëindigd, kan duren. Kan een decimale waarde zijn, zoals 0,25 die 15 minuten vertegenwoordigt. Als dit niet is opgegeven, is de standaardtime-out voor het experiment 6 dagen. Als u een time-out van minder dan of gelijk aan 1 uur wilt opgeven, moet u ervoor zorgen dat de grootte van uw gegevensset niet groter is dan 10.000.000 (kolom maal rijen) of dat er een fout optreedt.
- experiment_exit_score
- float
Doelscore voor experiment. Het experiment wordt beëindigd nadat deze score is bereikt. Als dit niet is opgegeven (geen criteria), wordt het experiment uitgevoerd totdat er geen verdere voortgang is gemaakt met het primaire metrische gegeven. Zie dit artikel voor meer informatie over afsluitcriteria.
- enable_early_stopping
- bool
Of vroegtijdige beëindiging kan worden ingeschakeld als de score op korte termijn niet verbetert. De standaardwaarde is True.
Logica voor vroeg stoppen:
Geen vroege stop voor de eerste 20 iteraties (oriëntatiepunten).
Vroeg stopvenster wordt gestart op de 21e iteratie en zoekt naar early_stopping_n_iters iteraties
(momenteel ingesteld op 10). Dit betekent dat de eerste herhaling waarbij stoppen kan plaatsvinden, de 31e is.
AutoML plant nog steeds 2 ensemble-iteraties NA een vroege stop, wat kan leiden tot
hogere scores.
Vroegtijdig stoppen wordt geactiveerd als de absolute waarde van de berekende beste score hetzelfde is voor het verleden
early_stopping_n_iters iteraties, dat wil gezegd, als er geen verbetering is in de score voor early_stopping_n_iters iteraties.
- blocked_models
- list(str) of list(Classification) <xref:for classification task> of list(Regression) <xref:for regression task> of list(Forecasting) <xref:for forecasting task>
Een lijst met algoritmen die moeten worden genegeerd voor een experiment. Als enable_tf
False is, worden TensorFlow-modellen opgenomen in blocked_models
.
- blacklist_models
- list(str) of list(Classification) <xref:for classification task> of list(Regression) <xref:for regression task> of list(Forecasting) <xref:for forecasting task>
Afgeschafte parameter gebruikt u in plaats daarvan blocked_models.
- exclude_nan_labels
- bool
Of rijen met NaN-waarden in het label moeten worden uitgesloten. De standaardwaarde is True.
- verbosity
- int
Het uitgebreidheidsniveau voor het schrijven naar het logboekbestand. De standaardwaarde is INFO of 20. Acceptabele waarden worden gedefinieerd in de python-logboekregistratiebibliotheek.
- enable_tf
- bool
De parameter is afgeschaft om Tensorflow-algoritmen in of uit te schakelen. De standaardwaarde is False.
- model_explainability
- bool
Of u uitleg van het beste AutoML-model aan het einde van alle AutoML-trainingsiteraties wilt inschakelen. De standaardwaarde is True. Zie Interpretability: model explanations in automated machine learning (Uitleg van modellen in geautomatiseerde machine learning) voor meer informatie.
- allowed_models
- list(str) of list(Classification) <xref:for classification task> of list(Regression) <xref:for regression task> of list(Forecasting) <xref:for forecasting task>
Een lijst met modelnamen om naar een experiment te zoeken. Als dit niet is opgegeven, worden alle modellen die voor de taak worden ondersteund, gebruikt minus opgegeven blocked_models
of afgeschafte TensorFlow-modellen.
De ondersteunde modellen voor elk taaktype worden beschreven in de SupportedModels klasse .
- whitelist_models
- list(str) of list(Classification) <xref:for classification task> of list(Regression) <xref:for regression task> of list(Forecasting) <xref:for forecasting task>
Afgeschafte parameter gebruikt u in plaats daarvan allowed_models.
- enable_onnx_compatible_models
- bool
Of het afdwingen van de ONNX-compatibele modellen moet worden in- of uitgeschakeld. De standaardwaarde is False. Zie dit artikel voor meer informatie over Open Neural Network Exchange (ONNX) en Azure Machine Learning.
- forecasting_parameters
- ForecastingParameters
Een ForecastingParameters-object voor het opslaan van alle prognosespecifieke parameters.
- time_column_name
- str
De naam van de tijdkolom. Deze parameter is vereist bij het voorspellen van de datum/tijd-kolom in de invoergegevens die worden gebruikt voor het samenstellen van de tijdreeks en het afleiden van de frequentie. Deze instelling wordt afgeschaft. Gebruik in plaats daarvan forecasting_parameters.
- max_horizon
- int
De gewenste maximale prognoseperiode in eenheden van de tijdreeksfrequentie. De standaardwaarde is 1.
Eenheden zijn gebaseerd op het tijdsinterval van uw trainingsgegevens, bijvoorbeeld maandelijks, wekelijks dat de prognosefunctie moet voorspellen. Wanneer het taaktype een prognose is, is deze parameter vereist. Zie Een tijdreeksprognosemodel automatisch trainen voor meer informatie over het instellen van prognoseparameters. Deze instelling wordt afgeschaft. Gebruik in plaats daarvan forecasting_parameters.
De namen van kolommen die worden gebruikt om een tijdreeks te groepeert. Het kan worden gebruikt om meerdere reeksen te maken. Als korrel niet is gedefinieerd, wordt ervan uitgegaan dat de gegevensset één tijdreeks is. Deze parameter wordt gebruikt voor taaktypeprognoses. Deze instelling wordt afgeschaft. Gebruik in plaats daarvan forecasting_parameters.
Het aantal eerdere perioden dat uit de doelkolom moet worden achtergelopen. De standaardwaarde is 1. Deze instelling wordt afgeschaft. Gebruik in plaats daarvan forecasting_parameters.
Bij het voorspellen vertegenwoordigt deze parameter het aantal rijen om de doelwaarden achter te laten op basis van de frequentie van de gegevens. Dit wordt weergegeven als een lijst of één geheel getal. Vertraging moet worden gebruikt wanneer de relatie tussen de onafhankelijke variabelen en afhankelijke variabelen niet standaard overeenkomen of correleren. Wanneer u bijvoorbeeld de vraag voor een product probeert te voorspellen, kan de vraag in een maand afhankelijk zijn van de prijs van specifieke goederen 3 maanden ervoor. In dit voorbeeld wilt u het doel (de vraag) mogelijk 3 maanden negatief laten liggen, zodat het model wordt getraind op de juiste relatie. Zie Een tijdreeksprognosemodel automatisch trainen voor meer informatie.
- feature_lags
- str
Vlag voor het genereren van vertragingen voor de numerieke functies. Deze instelling wordt afgeschaft. Gebruik in plaats daarvan forecasting_parameters.
- target_rolling_window_size
- int
Het aantal afgelopen perioden dat is gebruikt om een voortschrijdend venster van de doelkolom te maken. Deze instelling wordt afgeschaft. Gebruik in plaats daarvan forecasting_parameters.
Bij het voorspellen vertegenwoordigt deze parameter n historische perioden die moeten worden gebruikt om voorspelde waarden te genereren, <= grootte van trainingsset. Als u dit weglaat, is n de volledige grootte van de trainingsset. Geef deze parameter op als u alleen rekening wilt houden met een bepaalde hoeveelheid geschiedenis bij het trainen van het model.
- country_or_region
- str
Het land/de regio die wordt gebruikt om vakantiefuncties te genereren. Deze moeten ISO 3166 land-/regiocode van twee letters zijn, bijvoorbeeld 'US' of 'GB'. Deze instelling wordt afgeschaft. Gebruik in plaats daarvan forecasting_parameters.
- use_stl
- str
STL-ontleding van de doelkolom van de tijdreeks configureren. use_stl kunnen drie waarden aannemen: Geen (standaard) - geen stl-decompositie, 'season' - alleen seizoencomponent genereren en season_trend - zowel seizoens- als trendcomponenten genereren. Deze instelling wordt afgeschaft. Gebruik in plaats daarvan forecasting_parameters.
Seizoensgebondenheid van tijdreeksen instellen. Als seizoensgebondenheid is ingesteld op 'auto', wordt dit afgeleid. Deze instelling wordt afgeschaft. Gebruik in plaats daarvan forecasting_parameters.
- short_series_handling_configuration
- str
De parameter die definieert hoe autoML korte tijdreeksen moet verwerken.
Mogelijke waarden: 'auto' (standaard), 'pad', 'drop' en None.
- automatische korte reeksen worden opgevuld als er geen lange reeksen zijn, anders worden korte reeksen verwijderd.
- pad alle korte reeksen worden opgevuld.
- alle korte reeksen worden verwijderd".
- Geen de korte reeks wordt niet gewijzigd. Als dit is ingesteld op 'pad', wordt de tabel opgevuld met de nullen en lege waarden voor de regressors en willekeurige waarden voor het doel met het gemiddelde dat gelijk is aan de doelwaarde mediaan voor de opgegeven tijdreeks-id. Als de mediaan meer of gelijk is aan nul, wordt de minimale opgevulde waarde met nul afgekapt: Invoer:
Datum
numeric_value
tekenreeks
Doel
2020-01-01
23
groen
55
De uitvoer ervan uitgaande dat het minimale aantal waarden vier is:
Datum
numeric_value
tekenreeks
Doel
2019-12-29
0
NA
55.1
2019-12-30
0
NA
55.6
2019-12-31
0
NA
54.5
2020-01-01
23
groen
55
Opmerking: We hebben twee parameters short_series_handling_configuration en verouderde short_series_handling. Wanneer beide parameters zijn ingesteld, worden ze gesynchroniseerd zoals weergegeven in de onderstaande tabel (short_series_handling_configuration en short_series_handling zijn gemarkeerd als respectievelijk handling_configuration en verwerking).
Behandeling
handling_configuration
resulterende verwerking
resulterende handling_configuration
Waar
auto
Waar
auto
Waar
pad
Waar
auto
Waar
drop
Waar
auto
Waar
Geen
False
Geen
False
auto
False
Geen
False
pad
False
Geen
False
drop
False
Geen
False
Geen
False
Geen
Frequentie voorspellen.
Bij het maken van prognoses geeft deze parameter de periode aan waarmee de prognose wordt gewenst, bijvoorbeeld dagelijks, wekelijks, jaarlijks, enzovoort. De prognosefrequentie is standaard de frequentie van de gegevensset. U kunt deze desgewenst instellen op een hogere (maar niet minder) dan de frequentie van de gegevensset. We aggregeren de gegevens en genereren de resultaten met de prognosefrequentie. Voor dagelijkse gegevens kunt u bijvoorbeeld instellen dat de frequentie dagelijks, wekelijks of maandelijks is, maar niet per uur. De frequentie moet een pandas-offsetalias zijn. Raadpleeg de pandas-documentatie voor meer informatie: https://pandas.pydata.org/pandas-docs/stable/user_guide/timeseries.html#dateoffset-objects
De functie die moet worden gebruikt om de tijdreeksdoelkolom te aggregeren om te voldoen aan een door de gebruiker opgegeven frequentie. Als de target_aggregation_function is ingesteld, maar de freq-parameter niet is ingesteld, treedt de fout op. De mogelijke doelaggregatiefuncties zijn: 'som', 'max', 'min' en 'gemiddelde'.
Freq
target_aggregation_function
Mechanisme voor het vaststellen van gegevens regelmatigheid
Geen (standaard)
Geen (standaard)
De aggregatie wordt niet toegepast. Als de geldige frequentie niet kan worden bepaald, wordt de fout gegenereerd.
Bepaalde waarde
Geen (standaard)
De aggregatie wordt niet toegepast. Als het aantal gegevenspunten dat aan het opgegeven frequentieraster voldoet kleiner is dan 90%, worden deze punten verwijderd, anders treedt de fout op.
Geen (standaard)
Aggregatiefunctie
De fout over ontbrekende frequentieparameter wordt gegenereerd.
Bepaalde waarde
Aggregatiefunctie
Aggregeren naar frequentie met behulp van de functie providedaggregation.
- enable_voting_ensemble
- bool
Of u votingEnsemble-iteratie wilt in- of uitschakelen. De standaardwaarde is True. Zie Ensembleconfiguratie voor meer informatie over ensembles.
- enable_stack_ensemble
- bool
Hiermee wordt aangegeven of StackEnsemble-iteratie moet worden ingeschakeld of uitgeschakeld. De standaardwaarde is None. Als enable_onnx_compatible_models vlag wordt ingesteld, wordt stackEnsemble-iteratie uitgeschakeld. Op dezelfde manier wordt voor Timeseries-taken StackEnsemble-iteratie standaard uitgeschakeld om risico's van overfitting te voorkomen vanwege een kleine trainingsset die wordt gebruikt bij het aanpassen van de meta-learner. Zie Ensembleconfiguratie voor meer informatie over ensembles.
- debug_log
- str
Het logboekbestand om foutopsporingsgegevens naar te schrijven. Als dit niet is opgegeven, wordt 'automl.log' gebruikt.
- training_data
- DataFrame of Dataset of DatasetDefinition of TabularDataset
De trainingsgegevens die in het experiment moeten worden gebruikt.
Het moet zowel trainingsfuncties als een labelkolom bevatten (optioneel een voorbeeldkolom met gewichten).
Als training_data
is opgegeven, moet de label_column_name
parameter ook worden opgegeven.
training_data
is geïntroduceerd in versie 1.0.81.
- validation_data
- DataFrame of Dataset of DatasetDefinition of TabularDataset
De validatiegegevens die in het experiment moeten worden gebruikt.
Het moet zowel trainingsfuncties als labelkolom bevatten (optioneel een voorbeeldkolom met gewichten).
Als validation_data
is opgegeven, training_data
moeten en label_column_name
parameters worden opgegeven.
validation_data
is geïntroduceerd in versie 1.0.81. Zie Gegevenssplitsingen en kruisvalidatie configureren in geautomatiseerde machine learning voor meer informatie.
- test_data
- Dataset of TabularDataset
De functie Modeltest met behulp van testgegevenssets of splitsingen van testgegevens is een functie met de status Preview en kan op elk gewenst moment worden gewijzigd. De testgegevens die moeten worden gebruikt voor een testuitvoering die automatisch wordt gestart nadat de modeltraining is voltooid. De testuitvoering haalt voorspellingen op met behulp van het beste model en berekent metrische gegevens op basis van deze voorspellingen.
Als deze parameter of de test_size
parameter niet zijn opgegeven, wordt er geen testuitvoering automatisch uitgevoerd nadat de modeltraining is voltooid.
Testgegevens moeten zowel functies als labelkolommen bevatten.
Als test_data
is opgegeven, moet de label_column_name
parameter worden opgegeven.
- test_size
- float
De functie Modeltest met behulp van testgegevenssets of splitsingen van testgegevens is een functie met de status Preview en kan op elk gewenst moment worden gewijzigd. Welk deel van de trainingsgegevens moet worden gebruikt voor testgegevens voor een testuitvoering die automatisch wordt gestart nadat de modeltraining is voltooid. De testuitvoering haalt voorspellingen op met behulp van het beste model en berekent metrische gegevens op basis van deze voorspellingen.
Dit moet tussen 0,0 en 1,0 niet-inclusief zijn.
Als test_size
wordt opgegeven op hetzelfde moment als validation_size
, worden de testgegevens gesplitst training_data
voordat de validatiegegevens worden gesplitst.
Als validation_size=0.1
bijvoorbeeld en test_size=0.1
de oorspronkelijke trainingsgegevens 1000 rijen bevatten, hebben de testgegevens 100 rijen, bevatten de validatiegegevens 90 rijen en de trainingsgegevens 810 rijen.
Voor op regressie gebaseerde taken wordt willekeurige steekproeven gebruikt. Voor classificatietaken wordt gestratificeerde steekproeven gebruikt. Prognose biedt momenteel geen ondersteuning voor het opgeven van een testgegevensset met behulp van een train-/testsplitsing.
Als deze parameter of de test_data
parameter niet zijn opgegeven, wordt er geen testuitvoering automatisch uitgevoerd nadat de modeltraining is voltooid.
De naam van de labelkolom. Als de invoergegevens afkomstig zijn van een pandas. DataFrame dat geen kolomnamen heeft, kunnen in plaats daarvan kolomindexen worden gebruikt, uitgedrukt als gehele getallen.
Deze parameter is van toepassing op training_data
de parameters , validation_data
en test_data
.
label_column_name
is geïntroduceerd in versie 1.0.81.
De naam van de kolom met het gewicht van het voorbeeld. Geautomatiseerde ML ondersteunt een gewogen kolom als invoer, waardoor rijen in de gegevens omhoog of omlaag worden gewogen. Als de invoergegevens afkomstig zijn van een pandas. DataFrame dat geen kolomnamen heeft, kunnen in plaats daarvan kolomindexen worden gebruikt, uitgedrukt als gehele getallen.
Deze parameter is van toepassing op training_data
en validation_data
parameters.
weight_column_names
is geïntroduceerd in versie 1.0.81.
Lijst met namen van de kolommen die een aangepaste kruisvalidatiesplitsing bevatten. Elk van de cv-gesplitste kolommen vertegenwoordigt één CV-splitsing waarbij elke rij is gemarkeerd als 1 voor training of 0 voor validatie.
Deze parameter is van toepassing op training_data
de parameter voor aangepaste kruisvalidatiedoeleinden.
cv_split_column_names
is geïntroduceerd in versie 1.6.0
Gebruik of cv_split_column_names
cv_splits_indices
.
Zie Gegevenssplitsingen en kruisvalidatie configureren in geautomatiseerde machine learning voor meer informatie.
- enable_local_managed
- bool
Parameter uitgeschakeld. Lokaal beheerde uitvoeringen kunnen op dit moment niet worden ingeschakeld.
- enable_dnn
- bool
Of modellen op basis van DNN moeten worden opgenomen tijdens het selecteren van modellen. De standaardwaarde in de init is Geen. De standaardwaarde is echter True voor DNN NLP-taken en onwaar voor alle andere AutoML-taken.
Het type taak dat moet worden uitgevoerd. Waarden kunnen classificatie, regressie of prognose zijn, afhankelijk van het type geautomatiseerde ML-probleem dat moet worden opgelost.
- path
- str
Het volledige pad naar de projectmap van Azure Machine Learning. Als dit niet is opgegeven, is de standaardinstelling dat de huidige map of '.' wordt gebruikt.
- iterations
- int
Het totale aantal verschillende combinaties van algoritmen en parameters dat moet worden getest tijdens een geautomatiseerd ML-experiment. Als dit niet is opgegeven, is de standaardwaarde 1000 iteraties.
De metrische waarde die geautomatiseerde machine learning optimaliseert voor modelselectie. Geautomatiseerde Machine Learning verzamelt meer metrische gegevens dan kan worden geoptimaliseerd. U kunt gebruiken get_primary_metrics om een lijst met geldige metrische gegevens voor uw opgegeven taak op te halen. Zie voor meer informatie over hoe metrische gegevens worden berekend https://docs.microsoft.com/azure/machine-learning/how-to-configure-auto-train#primary-metric.
Als dit niet is opgegeven, wordt nauwkeurigheid gebruikt voor classificatietaken, wordt genormaliseerd wortelgemiddelde kwadraat gebruikt voor prognose- en regressietaken, wordt nauwkeurigheid gebruikt voor afbeeldingsclassificatie en afbeeldingsclassificatie met meerdere labels, en gemiddelde gemiddelde precisie wordt gebruikt voor de detectie van afbeeldingsobjecten.
- positive_label
- Any
Het positieve klasselabel waarmee Geautomatiseerde Machine Learning binaire metrische gegevens berekent. Binaire metrische gegevens worden berekend in twee voorwaarden voor classificatietaken:
- de labelkolom bestaat uit twee klassen die aangeven dat de binaire classificatietaak autoML de opgegeven positieve klasse gebruikt wanneer positive_label wordt doorgegeven, anders kiest AutoML een positieve klasse op basis van label gecodeerde waarde.
- classificatietaak met meerdere klassen met positive_label opgegeven
Bekijk metrische gegevens voor classificatiescenario's voor meer informatie over classificatie.
- compute_target
- AbstractComputeTarget
Het Azure Machine Learning-rekendoel waarop het geautomatiseerde machine learning-experiment moet worden uitgevoerd. Zie https://docs.microsoft.com/azure/machine-learning/how-to-auto-train-remote voor meer informatie over rekendoelen.
- spark_context
- <xref:SparkContext>
De Spark-context. Alleen van toepassing wanneer deze wordt gebruikt in een Azure Databricks-/Spark-omgeving.
- X
- DataFrame of ndarray of Dataset of DatasetDefinition of TabularDataset
De trainingsfuncties die moeten worden gebruikt bij het aanpassen van pijplijnen tijdens een experiment. Deze instelling wordt afgeschaft. Gebruik in plaats daarvan training_data en label_column_name.
- y
- DataFrame of ndarray of Dataset of DatasetDefinition of TabularDataset
De trainingslabels die moeten worden gebruikt bij het aanpassen van pijplijnen tijdens een experiment. Dit is de waarde die uw model voorspelt. Deze instelling wordt afgeschaft. Gebruik in plaats daarvan training_data en label_column_name.
- sample_weight
- DataFrame of ndarray of TabularDataset
Het gewicht dat aan elk trainingsvoorbeeld moet worden toegewezen bij het uitvoeren van pijplijnen, elke rij moet overeenkomen met een rij in X- en y-gegevens.
Geef deze parameter op bij het opgeven van X
.
Deze instelling wordt afgeschaft. Gebruik in plaats daarvan training_data en weight_column_name.
- X_valid
- DataFrame of ndarray of Dataset of DatasetDefinition of TabularDataset
Validatiefuncties die moeten worden gebruikt bij het aanpassen van pijplijnen tijdens een experiment.
Indien opgegeven, y_valid
moet of sample_weight_valid
ook worden opgegeven.
Deze instelling wordt afgeschaft. Gebruik in plaats daarvan validation_data en label_column_name.
- y_valid
- DataFrame of ndarray of Dataset of DatasetDefinition of TabularDataset
Validatielabels die moeten worden gebruikt bij het aanpassen van pijplijnen tijdens een experiment.
Zowel als X_valid
y_valid
moeten samen worden opgegeven.
Deze instelling wordt afgeschaft. Gebruik in plaats daarvan validation_data en label_column_name.
- sample_weight_valid
- DataFrame of ndarray of TabularDataset
Het gewicht dat aan elk validatievoorbeeld moet worden opgegeven bij het uitvoeren van scorepijplijnen, elke rij moet overeenkomen met een rij in X- en y-gegevens.
Geef deze parameter op bij het opgeven van X_valid
.
Deze instelling wordt afgeschaft. Gebruik in plaats daarvan validation_data en weight_column_name.
Indexen waar trainingsgegevens moeten worden gesplitst voor kruisvalidatie. Elke rij is een afzonderlijke kruisvouw en biedt binnen elke kruismap twee numpy-matrices, de eerste met de indexen voor voorbeelden die moeten worden gebruikt voor trainingsgegevens en de tweede met de indexen die moeten worden gebruikt voor validatiegegevens. dat wil zeggen [[t1, v1], [t2, v2], ...] waarbij t1 de trainingsindexen voor de eerste kruisvouw is en v1 de validatie-indexen voor de eerste kruisvouw. Deze optie wordt ondersteund wanneer gegevens worden doorgegeven als afzonderlijke functiesgegevensset en kolom Label.
Als u bestaande gegevens wilt opgeven als validatiegegevens, gebruikt u validation_data
. Als u in plaats daarvan wilt toestaan dat AutoML validatiegegevens uit trainingsgegevens extraheert, geeft u n_cross_validations
of op validation_size
.
Gebruik cv_split_column_names
als u een of meer kolommen voor kruisvalidatie in training_data
hebt.
- validation_size
- float
Welk deel van de gegevens moet worden opgeslagen voor validatie wanneer er geen gebruikersvalidatiegegevens zijn opgegeven. Dit moet tussen 0,0 en 1,0 niet-inclusief zijn.
Geef op validation_data
om validatiegegevens op te geven, anders in te stellen n_cross_validations
of validation_size
om validatiegegevens uit de opgegeven trainingsgegevens te extraheren.
Gebruik cv_split_column_names
voor een aangepaste kruisvalidatievouw.
Zie Gegevenssplitsingen en kruisvalidatie configureren in geautomatiseerde machine learning voor meer informatie.
Hoeveel kruisvalidaties moeten worden uitgevoerd wanneer er geen gebruikersvalidatiegegevens zijn opgegeven.
Geef op validation_data
om validatiegegevens op te geven, anders in te stellen n_cross_validations
of validation_size
om validatiegegevens uit de opgegeven trainingsgegevens te extraheren.
Gebruik cv_split_column_names
voor een aangepaste kruisvalidatievouw.
Zie Gegevenssplitsingen en kruisvalidatie configureren in geautomatiseerde machine learning voor meer informatie.
- y_min
- float
Minimumwaarde van y voor een regressie-experiment. De combinatie van en y_max
wordt gebruikt om metrische gegevens van y_min
de testset te normaliseren op basis van het invoergegevensbereik. Deze instelling wordt afgeschaft. In plaats daarvan wordt deze waarde berekend op basis van de gegevens.
- y_max
- float
Maximumwaarde van y voor een regressie-experiment. De combinatie van en y_max
wordt gebruikt om metrische gegevens van y_min
de testset te normaliseren op basis van het invoergegevensbereik. Deze instelling wordt afgeschaft. In plaats daarvan wordt deze waarde berekend op basis van de gegevens.
- num_classes
- int
Het aantal klassen in de labelgegevens voor een classificatie-experiment. Deze instelling wordt afgeschaft. In plaats daarvan wordt deze waarde berekend op basis van de gegevens.
- featurization
- str of FeaturizationConfig
'auto' / 'uit' / FeaturizationConfig Indicator om te bepalen of de featurization-stap automatisch moet worden uitgevoerd of niet, of dat aangepaste featurization moet worden gebruikt. Opmerking: als de invoergegevens sparse zijn, kan featurization niet worden ingeschakeld.
Het kolomtype wordt automatisch gedetecteerd. Op basis van het gedetecteerde kolomtype wordt de voorverwerking/featurisatie als volgt uitgevoerd:
Categorisch: Doelcodering, één dynamische codering, categorieën met hoge kardinaliteit verwijderen, ontbrekende waarden invoeren.
Numeriek: Ontbrekende waarden, clusterafstand, bewijsgewicht invoeren.
DateTime: Verschillende functies, zoals dag, seconden, minuten, uren, enzovoort.
Tekst: Zak met woorden, vooraf getraind Word insluiten, tekstdoelcodering.
Meer informatie vindt u in het artikel Geautomatiseerde ML-experimenten configureren in Python.
Als u de stap featurization wilt aanpassen, geeft u een FeaturizationConfig-object op. Aangepaste featurisatie ondersteunt momenteel het blokkeren van een set transformatoren, het bijwerken van kolomdoeleinden, het bewerken van parameters voor transformatoren en het verwijderen van kolommen. Zie Functie-engineering aanpassen voor meer informatie.
Opmerking: Timeseries-functies worden afzonderlijk verwerkt wanneer het taaktype onafhankelijk van deze parameter is ingesteld op prognose.
- max_cores_per_iteration
- int
Het maximum aantal threads dat moet worden gebruikt voor een bepaalde trainingsiteratie. Acceptabele waarden:
Groter dan 1 en kleiner dan of gelijk aan het maximum aantal kernen op het rekendoel.
Gelijk aan -1, wat betekent dat alle mogelijke kernen per iteratie per onderliggende uitvoering moeten worden gebruikt.
Gelijk aan 1, de standaardwaarde.
- max_concurrent_iterations
- int
Geeft het maximum aantal iteraties aan dat parallel wordt uitgevoerd. De standaardwaarde is 1.
AmlCompute-clusters ondersteunen één interation die per knooppunt wordt uitgevoerd. Als meerdere experimenten parallel worden uitgevoerd op één AmlCompute-cluster, moet de som van de
max_concurrent_iterations
waarden voor alle experimenten kleiner zijn dan of gelijk zijn aan het maximum aantal knooppunten.DSVM ondersteunt meerdere iteraties per knooppunt.
max_concurrent_iterations
moet kleiner zijn dan of gelijk zijn aan het aantal kernen op de DSVM. Als meerdere experimenten parallel worden uitgevoerd op één DSVM, moet de som van demax_concurrent_iterations
waarden voor alle experimenten kleiner zijn dan of gelijk zijn aan het maximum aantal knooppunten.Databricks
max_concurrent_iterations
: moet kleiner zijn dan of gelijk zijn aan het aantal werkknooppunten in Databricks.
max_concurrent_iterations
is niet van toepassing op lokale uitvoeringen. Voorheen heette concurrent_iterations
deze parameter .
- iteration_timeout_minutes
- int
Maximale tijd in minuten die elke iteratie kan uitvoeren voordat deze wordt beëindigd. Als dit niet is opgegeven, wordt een waarde van 1 maand of 43200 minuten gebruikt.
- mem_in_mb
- int
Maximaal geheugengebruik waarvoor elke iteratie kan worden uitgevoerd voordat deze wordt beëindigd. Als dit niet is opgegeven, wordt een waarde van 1 PB of 1073741824 MB gebruikt.
- enforce_time_on_windows
- bool
Of u een tijdslimiet wilt afdwingen voor modeltraining bij elke iteratie in Windows. De standaardwaarde is True. Als u een Python-scriptbestand (.py) uitvoert, raadpleegt u de documentatie voor het toestaan van resourcelimieten in Windows.
- experiment_timeout_hours
- float
Maximale tijdsduur in uren dat de combinatie van alle iteraties voordat het experiment wordt beëindigd, kan duren. Kan een decimale waarde zijn, zoals 0,25 die 15 minuten vertegenwoordigt. Als dit niet is opgegeven, is de standaardtime-out voor het experiment 6 dagen. Als u een time-out van minder dan of gelijk aan 1 uur wilt opgeven, moet u ervoor zorgen dat de grootte van uw gegevensset niet groter is dan 10.000.000 (kolom maal rijen) of dat er een fout optreedt.
- experiment_exit_score
- float
Doelscore voor experiment. Het experiment wordt beëindigd nadat deze score is bereikt.
Als dit niet is opgegeven (geen criteria), wordt het experiment uitgevoerd totdat er geen verdere voortgang is gemaakt met het primaire metrische gegeven. Zie dit >>article
https://docs.microsoft.com/azure/machine-learning/how-to-configure-auto-train#exit-criteria<<artikel voor meer informatie over afsluitcriteria.
- enable_early_stopping
- bool
Of vroegtijdige beëindiging kan worden ingeschakeld als de score op korte termijn niet verbetert. De standaardwaarde is True.
Logica voor vroeg stoppen:
Geen vroege stop voor de eerste 20 iteraties (oriëntatiepunten).
Het vroege stopvenster wordt gestart op de 21e iteratie en zoekt naar early_stopping_n_iters iteraties (momenteel ingesteld op 10). Dit betekent dat de eerste herhaling waarbij stoppen kan plaatsvinden, de 31e is.
AutoML plant nog steeds 2 ensemble-iteraties NA een vroege stop, wat kan leiden tot hogere scores.
Vroegtijdig stoppen wordt geactiveerd als de absolute waarde van de berekende beste score hetzelfde is voor eerdere early_stopping_n_iters iteraties, dat wil doen als er geen verbetering is in de score voor early_stopping_n_iters iteraties.
- blocked_models
- list(str) of list(Classification) <xref:for classification task> of list(Regression) <xref:for regression task> of list(Forecasting) <xref:for forecasting task>
Een lijst met algoritmen die moeten worden genegeerd voor een experiment. Als enable_tf
False is, worden TensorFlow-modellen opgenomen in blocked_models
.
- blacklist_models
- list(str) of list(Classification) <xref:for classification task> of list(Regression) <xref:for regression task> of list(Forecasting) <xref:for forecasting task>
Afgeschafte parameter gebruikt u in plaats daarvan blocked_models.
- exclude_nan_labels
- bool
Of rijen met NaN-waarden in het label moeten worden uitgesloten. De standaardwaarde is True.
- verbosity
- int
Het uitgebreidheidsniveau voor het schrijven naar het logboekbestand. De standaardwaarde is INFO of 20. Acceptabele waarden worden gedefinieerd in de python-logboekregistratiebibliotheek.
- enable_tf
- bool
Of u TensorFlow-algoritmen wilt in- of uitschakelen. De standaardwaarde is False.
- model_explainability
- bool
Of u uitleg van het beste AutoML-model aan het einde van alle AutoML-trainingsiteraties wilt inschakelen. De standaardwaarde is True. Zie Interpretability: model explanations in automated machine learning (Uitleg van modellen in geautomatiseerde machine learning) voor meer informatie.
- allowed_models
- list(str) of list(Classification) <xref:for classification task> of list(Regression) <xref:for regression task> of list(Forecasting) <xref:for forecasting task>
Een lijst met modelnamen om naar een experiment te zoeken. Als dit niet is opgegeven, worden alle modellen die voor de taak worden ondersteund, gebruikt minus opgegeven blocked_models
of afgeschafte TensorFlow-modellen.
De ondersteunde modellen voor elk taaktype worden beschreven in de SupportedModels klasse .
- allowed_models
Een lijst met modelnamen om naar een experiment te zoeken. Als dit niet is opgegeven, worden alle modellen die voor de taak worden ondersteund, gebruikt minus opgegeven blocked_models
of afgeschafte TensorFlow-modellen.
De ondersteunde modellen voor elk taaktype worden beschreven in de SupportedModels klasse .
- whitelist_models
Afgeschafte parameter gebruikt u in plaats daarvan allowed_models.
- enable_onnx_compatible_models
- bool
Of het afdwingen van de ONNX-compatibele modellen moet worden in- of uitgeschakeld. De standaardwaarde is False. Zie dit artikel voor meer informatie over Open Neural Network Exchange (ONNX) en Azure Machine Learning.
- forecasting_parameters
- ForecastingParameters
Een object voor het opslaan van alle prognosespecifieke parameters.
- time_column_name
- str
De naam van de tijdkolom. Deze parameter is vereist bij het voorspellen van de datum/tijd-kolom in de invoergegevens die worden gebruikt voor het samenstellen van de tijdreeks en het afleiden van de frequentie. Deze instelling wordt afgeschaft. Gebruik in plaats daarvan forecasting_parameters.
- max_horizon
- int
De gewenste maximale voorspellingshorizon in eenheden van tijdreeksfrequentie. De standaardwaarde is 1. Deze instelling wordt afgeschaft. Gebruik in plaats daarvan forecasting_parameters.
Eenheden zijn gebaseerd op het tijdsinterval van uw trainingsgegevens, bijvoorbeeld maandelijks, wekelijks dat de voorspellingsfunctie moet voorspellen. Wanneer het taaktype een prognose is, is deze parameter vereist. Zie Automatisch een tijdreeksprognosemodel trainen voor meer informatie over het instellen van prognoseparameters.
De namen van kolommen die worden gebruikt om een tijdreeks te groepeert. Het kan worden gebruikt om meerdere reeksen te maken. Als korrel niet is gedefinieerd, wordt ervan uitgegaan dat de gegevensset één tijdreeks is. Deze parameter wordt gebruikt voor taaktypeprognoses. Deze instelling wordt afgeschaft. Gebruik in plaats daarvan forecasting_parameters.
Het aantal eerdere perioden voor vertraging van de doelkolom. De standaardwaarde is 1. Deze instelling wordt afgeschaft. Gebruik in plaats daarvan forecasting_parameters.
Bij het voorspellen vertegenwoordigt deze parameter het aantal rijen dat de doelwaarden moet laten liggen op basis van de frequentie van de gegevens. Dit wordt weergegeven als een lijst of één geheel getal. Vertraging moet worden gebruikt wanneer de relatie tussen de onafhankelijke variabelen en afhankelijke variabelen niet standaard overeenkomen of correleren. Wanneer u bijvoorbeeld de vraag voor een product probeert te voorspellen, kan de vraag in elke maand afhankelijk zijn van de prijs van specifieke goederen 3 maanden eerder. In dit voorbeeld wilt u het doel (de vraag) mogelijk 3 maanden negatief laten liggen, zodat het model traint op de juiste relatie. Zie Een tijdreeksprognosemodel automatisch trainen voor meer informatie.
- feature_lags
- str
Vlag voor het genereren van vertragingen voor de numerieke functies. Deze instelling wordt afgeschaft. Gebruik in plaats daarvan forecasting_parameters.
- target_rolling_window_size
- int
Het aantal eerdere perioden dat is gebruikt voor het maken van een voortschrijdend venster gemiddelde van de doelkolom. Deze instelling wordt afgeschaft. Gebruik in plaats daarvan forecasting_parameters.
Bij het voorspellen vertegenwoordigt deze parameter n historische perioden die moeten worden gebruikt om voorspelde waarden te genereren, <= grootte van trainingsset. Als u dit weglaat, is n de volledige grootte van de trainingsset. Geef deze parameter op als u alleen rekening wilt houden met een bepaalde hoeveelheid geschiedenis bij het trainen van het model.
- country_or_region
- str
Het land/de regio die wordt gebruikt voor het genereren van vakantiefuncties. Deze moeten ISO 3166 tweeletterige land-/regiocodes zijn, bijvoorbeeld 'VS' of 'GB'. Deze instelling wordt afgeschaft. Gebruik in plaats daarvan forecasting_parameters.
- use_stl
- str
Configureer STL-ontleding van de doelkolom van de tijdreeks. use_stl kan drie waarden aannemen: Geen (standaard) - geen stl-decompositie, 'season' - alleen seizoensonderdeel genereren en season_trend - zowel seizoens- als trendonderdelen genereren. Deze instelling wordt afgeschaft. Gebruik in plaats daarvan forecasting_parameters.
- seasonality
- int
Seizoensgebondenheid van tijdreeksen instellen. Als seizoensgebondenheid is ingesteld op -1, wordt dit afgeleid. Als use_stl niet is ingesteld, wordt deze parameter niet gebruikt. Deze instelling wordt afgeschaft. Gebruik in plaats daarvan forecasting_parameters.
- short_series_handling_configuration
- str
De parameter die definieert hoe autoML korte tijdreeksen moet verwerken.
Mogelijke waarden: 'auto' (standaard), 'pad', 'drop' en None.
- automatische korte reeksen worden opgevuld als er geen lange reeksen zijn, anders worden korte reeksen verwijderd.
- pad alle korte reeksen worden opgevuld.
- alle korte reeksen worden verwijderd".
- Geen de korte reeks wordt niet gewijzigd. Als dit is ingesteld op 'pad', wordt de tabel opgevuld met de nullen en lege waarden voor de regressors en willekeurige waarden voor het doel met het gemiddelde dat gelijk is aan de doelwaarde mediaan voor de opgegeven tijdreeks-id. Als de mediaan meer of gelijk is aan nul, wordt de minimale opgevulde waarde met nul afgekapt: Invoer:
Datum
numeric_value
tekenreeks
Doel
2020-01-01
23
groen
55
Uitvoer ervan uitgaande dat het minimale aantal waarden vier is: +————+—————+———-+—–+ | Datum | numeric_value | tekenreeks | doel | +============+===============+==========+========+ | 29-12-2019 | 0 | N.B. | 55,1 | +————+—————+———-+——–+ | 30-12-2019 | 0 | N.B. | 55,6 | +————+—————+———-+——–+ | 31-12-2019 | 0 | N.B. | 54,5 | +————+—————+———-+——–+ | 2020-01-01 | 23 | groen | 55 | +————+—————+———-+——–+
Opmerking: We hebben twee parameters short_series_handling_configuration en verouderde short_series_handling. Wanneer beide parameters zijn ingesteld, worden ze gesynchroniseerd zoals weergegeven in de onderstaande tabel (short_series_handling_configuration en short_series_handling zijn gemarkeerd als respectievelijk handling_configuration en verwerking).
Behandeling
handling_configuration
resulterende verwerking
resulterende handling_configuration
Waar
auto
Waar
auto
Waar
pad
Waar
auto
Waar
drop
Waar
auto
Waar
Geen
False
Geen
False
auto
False
Geen
False
pad
False
Geen
False
drop
False
Geen
False
Geen
False
Geen
Prognosefrequentie.
Bij het maken van prognoses geeft deze parameter de periode aan waarmee de prognose wordt gewenst, bijvoorbeeld dagelijks, wekelijks, jaarlijks, enzovoort. De prognosefrequentie is standaard de frequentie van de gegevensset. U kunt deze desgewenst instellen op een hogere (maar niet minder) dan de frequentie van de gegevensset. We aggregeren de gegevens en genereren de resultaten met de prognosefrequentie. Voor dagelijkse gegevens kunt u bijvoorbeeld instellen dat de frequentie dagelijks, wekelijks of maandelijks is, maar niet per uur. De frequentie moet een pandas-offsetalias zijn. Raadpleeg de pandas-documentatie voor meer informatie: https://pandas.pydata.org/pandas-docs/stable/user_guide/timeseries.html#dateoffset-objects
De functie die moet worden gebruikt om de doelkolom van de tijdreeks te aggregeren om te voldoen aan een door de gebruiker opgegeven frequentie. Als de target_aggregation_function is ingesteld, maar de freq-parameter niet is ingesteld, treedt de fout op. De mogelijke doelaggregatiefuncties zijn: 'sum', 'max', 'min' en 'mean'.
Freq
target_aggregation_function
Mechanisme voor het herstellen van gegevens regelmatigheid
Geen (standaard)
Geen (standaard)
De aggregatie wordt niet toegepast. Als de geldige frequentie niet kan worden bepaald, wordt de fout gegenereerd.
Bepaalde waarde
Geen (standaard)
De aggregatie wordt niet toegepast. Als het aantal gegevenspunten dat aan het opgegeven frequentieraster voldoet kleiner is dan 90%, worden deze punten verwijderd, anders wordt de fout gegenereerd.
Geen (standaard)
Aggregatiefunctie
De fout over ontbrekende frequentieparameter wordt gegenereerd.
Bepaalde waarde
Aggregatiefunctie
Aggregeren naar frequentie met behulp van de functie providedaggregation.
- enable_voting_ensemble
- bool
Of u votingEnsemble-iteratie wilt in- of uitschakelen. De standaardwaarde is True. Zie Ensembleconfiguratie voor meer informatie over ensembles.
- enable_stack_ensemble
- bool
Hiermee wordt aangegeven of StackEnsemble-iteratie moet worden ingeschakeld of uitgeschakeld. De standaardwaarde is None. Als enable_onnx_compatible_models vlag wordt ingesteld, wordt stackEnsemble-iteratie uitgeschakeld. Op dezelfde manier wordt voor Timeseries-taken StackEnsemble-iteratie standaard uitgeschakeld om risico's van overfitting te voorkomen vanwege een kleine trainingsset die wordt gebruikt bij het aanpassen van de meta-learner. Zie Ensembleconfiguratie voor meer informatie over ensembles.
- debug_log
- str
Het logboekbestand om foutopsporingsgegevens naar te schrijven. Als dit niet is opgegeven, wordt 'automl.log' gebruikt.
- training_data
- DataFrame of Dataset of DatasetDefinition of TabularDataset
De trainingsgegevens die in het experiment moeten worden gebruikt.
Het moet zowel trainingsfuncties als een labelkolom bevatten (optioneel een voorbeeldkolom met gewichten).
Als training_data
is opgegeven, moet de label_column_name
parameter ook worden opgegeven.
training_data
is geïntroduceerd in versie 1.0.81.
- validation_data
- DataFrame of Dataset of DatasetDefinition of TabularDataset
De validatiegegevens die in het experiment moeten worden gebruikt.
Het moet zowel trainingsfuncties als labelkolom bevatten (optioneel een voorbeeldkolom met gewichten).
Als validation_data
is opgegeven, training_data
moeten en label_column_name
parameters worden opgegeven.
validation_data
is geïntroduceerd in versie 1.0.81. Zie Gegevenssplitsingen en kruisvalidatie configureren in geautomatiseerde machine learning voor meer informatie.
- test_data
- Dataset of TabularDataset
De functie Modeltest met behulp van testgegevenssets of splitsingen van testgegevens is een functie met de status Preview en kan op elk gewenst moment worden gewijzigd. De testgegevens die moeten worden gebruikt voor een testuitvoering die automatisch wordt gestart nadat de modeltraining is voltooid. De testuitvoering haalt voorspellingen op met behulp van het beste model en berekent metrische gegevens op basis van deze voorspellingen.
Als deze parameter of de test_size
parameter niet zijn opgegeven, wordt er geen testuitvoering automatisch uitgevoerd nadat de modeltraining is voltooid.
Testgegevens moeten zowel functies als labelkolommen bevatten.
Als test_data
is opgegeven, moet de label_column_name
parameter worden opgegeven.
- test_size
- float
De functie Modeltest met behulp van testgegevenssets of splitsingen van testgegevens is een functie met de status Preview en kan op elk gewenst moment worden gewijzigd. Welk deel van de trainingsgegevens moet worden gebruikt voor testgegevens voor een testuitvoering die automatisch wordt gestart nadat de modeltraining is voltooid. De testuitvoering haalt voorspellingen op met behulp van het beste model en berekent metrische gegevens op basis van deze voorspellingen.
Dit moet tussen 0,0 en 1,0 niet-inclusief zijn.
Als test_size
wordt opgegeven op hetzelfde moment als validation_size
, worden de testgegevens gesplitst training_data
voordat de validatiegegevens worden gesplitst.
Als validation_size=0.1
bijvoorbeeld en test_size=0.1
de oorspronkelijke trainingsgegevens 1000 rijen bevatten, hebben de testgegevens 100 rijen, bevatten de validatiegegevens 90 rijen en de trainingsgegevens 810 rijen.
Voor op regressie gebaseerde taken wordt willekeurige steekproeven gebruikt. Voor classificatietaken wordt gestratificeerde steekproeven gebruikt. Prognose biedt momenteel geen ondersteuning voor het opgeven van een testgegevensset met behulp van een train-/testsplitsing.
Als deze parameter of de test_data
parameter niet zijn opgegeven, wordt er geen testuitvoering automatisch uitgevoerd nadat de modeltraining is voltooid.
De naam van de labelkolom. Als de invoergegevens afkomstig zijn van een pandas. DataFrame dat geen kolomnamen heeft, kunnen in plaats daarvan kolomindexen worden gebruikt, uitgedrukt als gehele getallen.
Deze parameter is van toepassing op training_data
de parameters , validation_data
en test_data
.
label_column_name
is geïntroduceerd in versie 1.0.81.
De naam van de kolom met het gewicht van het voorbeeld. Geautomatiseerde ML ondersteunt een gewogen kolom als invoer, waardoor rijen in de gegevens omhoog of omlaag worden gewogen. Als de invoergegevens afkomstig zijn van een pandas. DataFrame dat geen kolomnamen heeft, kunnen in plaats daarvan kolomindexen worden gebruikt, uitgedrukt als gehele getallen.
Deze parameter is van toepassing op training_data
en validation_data
parameters.
weight_column_names
is geïntroduceerd in versie 1.0.81.
Lijst met namen van de kolommen die een aangepaste kruisvalidatiesplitsing bevatten. Elk van de cv-gesplitste kolommen vertegenwoordigt één CV-splitsing waarbij elke rij is gemarkeerd als 1 voor training of 0 voor validatie.
Deze parameter is van toepassing op training_data
de parameter voor aangepaste kruisvalidatiedoeleinden.
cv_split_column_names
is geïntroduceerd in versie 1.6.0
Gebruik of cv_split_column_names
cv_splits_indices
.
Zie Gegevenssplitsingen en kruisvalidatie configureren in geautomatiseerde machine learning voor meer informatie.
- enable_local_managed
- bool
Parameter uitgeschakeld. Lokaal beheerde uitvoeringen kunnen op dit moment niet worden ingeschakeld.
- enable_dnn
- bool
Of modellen op basis van DNN moeten worden opgenomen tijdens het selecteren van modellen. De standaardwaarde in de init is Geen. De standaardwaarde is echter True voor DNN NLP-taken en onwaar voor alle andere AutoML-taken.
Opmerkingen
De volgende code toont een eenvoudig voorbeeld van het maken van een AutoMLConfig-object en het indienen van een experiment voor regressie:
automl_settings = {
"n_cross_validations": 3,
"primary_metric": 'r2_score',
"enable_early_stopping": True,
"experiment_timeout_hours": 1.0,
"max_concurrent_iterations": 4,
"max_cores_per_iteration": -1,
"verbosity": logging.INFO,
}
automl_config = AutoMLConfig(task = 'regression',
compute_target = compute_target,
training_data = train_data,
label_column_name = label,
**automl_settings
)
ws = Workspace.from_config()
experiment = Experiment(ws, "your-experiment-name")
run = experiment.submit(automl_config, show_output=True)
Een volledig voorbeeld is beschikbaar op Regression
Voorbeelden van het gebruik van AutoMLConfig voor prognoses zijn in deze notebooks:
Voorbeelden van het gebruik van AutoMLConfig voor alle taaktypen vindt u in deze geautomatiseerde ML-notebooks.
Zie de artikelen voor achtergrondinformatie over geautomatiseerde ML:
Geautomatiseerde ML-experimenten configureren in Python. In dit artikel vindt u informatie over de verschillende algoritmen en primaire metrische gegevens die voor elk taaktype worden gebruikt.
Een prognosemodel voor tijdreeksen automatisch trainen. In dit artikel vindt u informatie over welke constructorparameters en
**kwargs
worden gebruikt bij het maken van prognoses.
Zie Gegevenssplitsingen en kruisvalidatie configureren in geautomatiseerde machine learning voor meer informatie over verschillende opties voor het configureren van splitsingen van training/validatiegegevens en kruisvalidatie voor uw geautomatiseerde machine learning, AutoML en experimenten.
Methoden
as_serializable_dict |
Converteer het object naar een woordenlijst. |
get_supported_dataset_languages |
Ondersteunde talen en de bijbehorende taalcodes ophalen in ISO 639-3. |
as_serializable_dict
Converteer het object naar een woordenlijst.
as_serializable_dict() -> Dict[str, Any]
get_supported_dataset_languages
Ondersteunde talen en de bijbehorende taalcodes ophalen in ISO 639-3.
get_supported_dataset_languages(use_gpu: bool) -> Dict[Any, Any]
Parameters
- use_gpu
Booleaanse waarde die aangeeft of GPU-rekenkracht wordt gebruikt of niet.
Retouren
woordenlijst met indeling {: }. De taalcode voldoet aan de ISO 639-3-standaard. Raadpleeg https://en.wikipedia.org/wiki/List_of_ISO_639-3_codes
Feedback
https://aka.ms/ContentUserFeedback.
Binnenkort beschikbaar: In de loop van 2024 zullen we GitHub-problemen geleidelijk uitfaseren als het feedbackmechanisme voor inhoud en deze vervangen door een nieuw feedbacksysteem. Zie voor meer informatie:Feedback verzenden en weergeven voor