ForecastingParameters Sınıf

Tahmin görevleri tarafından kullanılan parametreleri yönetin.

Devralma
builtins.object
ForecastingParameters

Oluşturucu

ForecastingParameters(time_column_name: str | None = None, forecast_horizon: str | int = 1, time_series_id_column_names: str | List[str] | None = None, group_column_names: str | List[str] | None = None, target_lags: List[int] | int | str | None = None, feature_lags: str | None = None, target_rolling_window_size: str | int | None = None, holiday_country: str | None = None, seasonality: str | int | None = 'auto', country_or_region_for_holidays: str | None = None, use_stl: str | None = None, short_series_handling: bool = True, short_series_handling_configuration: str | None = 'auto', freq: str | None = None, target_aggregation_function: str | None = None, cv_step_size: str | int | None = 'auto', features_unknown_at_forecast_time: str | List[str] | None = None, validate_parameters: bool = True, _enable_future_regressors: bool = False, **kwargs: Any)

Parametreler

time_column_name
str
varsayılan değer: None

Saat sütununun adı. Bu parametre, zaman serisini oluşturmak ve sıklığını çıkarsamak için kullanılan giriş verilerinde tarih saat sütununu belirtmek için tahminde bulunurken gereklidir.

forecast_horizon
int veya str
varsayılan değer: 1

Zaman serisi sıklığı birimleri cinsinden istenen maksimum tahmin ufku. Varsayılan değer 1’dir.

Birimler, eğitim verilerinizin zaman aralığına (örn. tahminde bulunanın tahmin etmesi gereken aylık, haftalık) bağlıdır. Görev türü tahmin edilirken bu parametre gereklidir. Tahmin parametrelerini ayarlama hakkında daha fazla bilgi için bkz. Zaman serisi tahmin modelini otomatik olarak eğitme.

time_series_id_column_names
str veya list(str)
varsayılan değer: None

Zaman aralıklarını gruplandırmak için kullanılan sütunların adları. Birden çok seri oluşturmak için kullanılabilir. Zaman serisi kimliği sütun adları tanımlanmamışsa veya belirtilen tanımlayıcı sütunları veri kümesindeki tüm serileri tanımmıyorsa, zaman serisi tanımlayıcıları veri kümeniz için otomatik olarak oluşturulur.

group_column_names
str veya list(str)
varsayılan değer: None
target_lags
int, str veya list(int)
varsayılan değer: None

Hedef sütundan geri alınacak geçmiş dönemlerin sayısı. Gecikmeler varsayılan olarak kapalıdır.

Tahmin yaparken, bu parametre verilerin sıklığına bağlı olarak hedef değerlerin gecikmesi için satır sayısını temsil eder. Bu, bir liste veya tek bir tamsayı olarak temsil edilir. Bağımsız değişkenler ile bağımlı değişken arasındaki ilişki varsayılan olarak eşleşmediğinde veya ilişkilendirilmediğinde gecikme kullanılmalıdır. Örneğin, bir ürünün talebini tahmin etmeye çalışırken, herhangi bir aydaki talep, 3 ay önceki belirli emtiaların fiyatına bağlı olabilir. Bu örnekte, modelin doğru ilişki üzerinde eğitim görebilmesi için hedefi (talebi) 3 ay gecikmeli olarak geçirmek isteyebilirsiniz. Daha fazla bilgi için bkz. Zaman serisi tahmin modelini otomatik olarak eğitme.

Hedef gecikmelerin ve sıralı pencere boyutunun otomatik olarak algılanmasıyla ilgili not. Lütfen sıralı pencere bölümünde ilgili yorumlara bakın. En uygun hedef gecikmesini ve sıralı pencere boyutunu algılamak için bir sonraki algoritmayı kullanırız.

  1. Geriye bakma özelliği seçimi için maksimum gecikme sırasını tahmin edin. Bizim örneğimizde bir sonraki tarih sıklığı ayrıntı düzeyine kadar olan dönem sayısıdır; örneğin sıklık günlükse bir hafta (7), hafta ise ay (4) olur. Bu değerlerin iki ile çarpılması, gecikme/hareketli pencerelerin mümkün olan en büyük değerleridir. Örneklerimizde sırasıyla 14 ve 8 maksimum gecikme sırasını dikkate alacaktır).

  2. Eğilim ve artık bileşenler ekleyerek mevsimselleştirilmiş bir seri oluşturun. Bu, sonraki adımda kullanılacaktır.

  3. (2) verilerinde PACF - Kısmi Otomatik Bağıntı İşlevi'ni tahmin edin ve noktaları arayın; burada otomatik bağıntı önemlidir; yani mutlak değeri daha fazladır ve %95'in önemine karşılık gelen 1,96/square_root(maksimum gecikme değeri).

  4. Tüm noktalar önemliyse, bunu güçlü mevsimsellik olarak değerlendiririz ve geriye dönüp bakma özellikleri oluşturmayız.

  5. PACF değerlerini baştan tararız ve ilk önemsiz otomatik bağıntıdan önceki değer gecikmeyi belirleyecektir. İlk önemli öğe (değer kendisiyle bağıntılı) ve ardından önemsiz bir öğe gelirse, gecikme 0 olur ve geçmişe bakma özelliklerini kullanmayız.

feature_lags
str veya None
varsayılan değer: None

'auto' veya None ile sayısal özellikler için gecikme oluşturma bayrağı.

target_rolling_window_size
int, str veya None
varsayılan değer: None

Hedef sütunun sıralı pencere ortalamasını oluşturmak için kullanılan geçmiş dönemlerin sayısı.

Tahmin yaparken, bu parametre tahmin edilen değerleri oluşturmak için kullanılacak n geçmiş dönemi , <= eğitim kümesi boyutunu temsil eder. Belirtilmezse , n tam eğitim kümesi boyutudur. Modeli eğitirken yalnızca belirli bir geçmiş miktarını göz önünde bulundurmak istediğinizde bu parametreyi belirtin. 'otomatik' olarak ayarlanırsa, sıralı pencere PACF'nin anlam eşiğinden daha fazla olduğu son değer olarak tahmin edilir. Ayrıntılar için lütfen target_lags bölüme bakın.

holiday_country
str veya None
varsayılan değer: None
seasonality
int, str veya None
varsayılan değer: auto

Zaman serisi mevsimselliğini, seri sıklığının tamsayı katı olarak ayarlayın. Mevsimsellik 'otomatik' olarak ayarlanırsa, çıkarsanır. Hiçbiri olarak ayarlanırsa, zaman serisi mevsimsellik dışı kabul edilir ve bu da mevsimsellik=1 ile eşdeğerdir.

country_or_region_for_holidays
str veya None
varsayılan değer: None

Tatil özellikleri oluşturmak için kullanılan ülke/bölge. Bunlar ISO 3166 iki harfli ülke/bölge kodları olmalıdır, örneğin 'ABD' veya 'GB'.

use_stl
str veya None
varsayılan değer: None

Zaman serisi hedef sütununun STL Ayrıştırma'sını yapılandırın. use_stl üç değer alabilir: Yok (varsayılan) - ayrıştırma yok, 'sezon' - yalnızca sezon bileşeni ve season_trend oluştur - hem mevsim hem de eğilim bileşenlerini oluşturun.

short_series_handling
bool
varsayılan değer: True

Tahmin görevleri için kısa seri işlemeyi yapılandırın.

short_series_handling_configuration
str veya None
varsayılan değer: auto

AutoML'nin kısa zaman serisini nasıl işleyeceklerini tanımlayan parametre.

Olası değerler: 'auto' (varsayılan), 'pad', 'drop' ve None.

  • otomatik kısa seri, uzun seri yoksa doldurulur, aksi takdirde kısa seri bırakılır.
  • tuş takımı tüm kısa seriler doldurulacaktır.
  • tüm kısa seriler bırakılacaktır".
  • Hiçbiri kısa seri değiştirilmez. 'pad' olarak ayarlanırsa tablo, verilen zaman serisi kimliği için ortalama hedef değere eşit ortanca değere sahip hedef için regresörler ve rastgele değerler için sıfırlar ve boş değerlerle doldurulur. Ortanca değer sıfırdan büyük veya sıfıra eşitse, minimum doldurulmuş değer sıfıra kırpılır. Giriş:

Date

numeric_value

Dize

Hedef

2020-01-01

23

green

55

Minimum değer sayısının dört olduğunu varsayarsak çıkış:

Date

numeric_value

Dize

Hedef

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

green

55

Not: short_series_handling_configuration ve eski short_series_handling iki parametremiz vardır. Her iki parametre de ayarlandığında, bunları aşağıdaki tabloda gösterildiği gibi eşitleriz (short_series_handling_configuration ve kısaltma için short_series_handling sırasıyla handling_configuration ve işleme olarak işaretlenir).

Işleme

handling_configuration

sonuçta elde edilen işleme

sonuç handling_configuration

Doğru

auto

Doğru

auto

Doğru

Pad

Doğru

auto

Doğru

drop

Doğru

auto

Doğru

Hiçbiri

Yanlış

Hiçbiri

Yanlış

auto

Yanlış

Hiçbiri

Yanlış

Pad

Yanlış

Hiçbiri

Yanlış

drop

Yanlış

Hiçbiri

Yanlış

Hiçbiri

Yanlış

Hiçbiri

freq
str veya None
varsayılan değer: None

Tahmin sıklığı.

Tahmin yaparken, bu parametre tahminin istendiği dönemi (örneğin, günlük, haftalık, yıllık vb.) temsil eder. Tahmin sıklığı varsayılan olarak veri kümesi sıklığıdır. İsteğe bağlı olarak bunu veri kümesi sıklığından daha büyük (ancak daha küçük değil) olarak ayarlayabilirsiniz. Verileri toplayarak sonuçları tahmin sıklığında oluşturacağız. Örneğin, günlük veriler için sıklığı günlük, haftalık veya aylık olarak ayarlayabilirsiniz ancak saatlik olarak ayarlayamayabilirsiniz. Sıklığın pandas uzaklık diğer adı olması gerekir. Daha fazla bilgi için lütfen pandas belgelerine bakın: https://pandas.pydata.org/pandas-docs/stable/user_guide/timeseries.html#dateoffset-objects

target_aggregation_function
str veya None
varsayılan değer: None

Zaman serisi hedef sütununu kullanıcının belirtilen sıklığına uyacak şekilde toplamak için kullanılacak işlev. target_aggregation_function ayarlanmışsa ancak freq parametresi ayarlanmadıysa hata oluşur. Olası hedef toplama işlevleri şunlardır: "sum", "max", "min" ve "ortalama".

  • Hedef sütun değerleri belirtilen işleme göre toplanır. Genellikle toplam çoğu senaryo için uygundur.

  • Verilerinizdeki sayısal tahmin aracı sütunları toplam, ortalama, minimum değer ve maksimum değere göre toplanır. Sonuç olarak, otomatik ML toplama işlevi adıyla ekli yeni sütunlar oluşturur ve seçili toplama işlemini uygular.

  • Kategorik tahmin sütunları için veriler, penceredeki en belirgin kategori olan moda göre toplanır.

  • Tarih tahmincisi sütunları minimum değer, maksimum değer ve mod ile toplanır.

Frekans

target_aggregation_function

Veri düzenliliği düzeltme mekanizması

Hiçbiri (Varsayılan)

Hiçbiri (Varsayılan)

Toplama uygulanmaz. Geçerli sıklık belirlenemezse hata oluşur.

Bazı Değerler

Hiçbiri (Varsayılan)

Toplama uygulanmaz. Verilen frekans kılavuzuyla uyumlu veri noktası sayısı daha azsa bu noktalar %90 kaldırılır, aksi takdirde hata oluşur.

Hiçbiri (Varsayılan)

Toplama işlevi

Eksik sıklık parametresiyle ilgili hata oluştu.

Bazı Değerler

Toplama işlevi

providedaggregation işlevini kullanarak sıklık olarak toplama.

cv_step_size
str, int veya None
varsayılan değer: auto

Bir CV katlama ile bir sonraki katlamanın origin_time arasındaki dönem sayısı. Örneğin, günlük veriler için n_step = 3 ise, her katlamanın çıkış süresi üç gün arayla olur.

validate_parameters
bool
varsayılan değer: True

Giriş parametrelerini doğrulamak için yapılandırın.

features_unknown_at_forecast_time
varsayılan değer: None
_enable_future_regressors
varsayılan değer: False

Yöntemler

from_parameters_dict

Bir dikteden ForecastingParameters sınıfı oluşturun.

validate_parameters

ForecastingParameters sınıfındaki parametreleri doğrulayın.

from_parameters_dict

Bir dikteden ForecastingParameters sınıfı oluşturun.

static from_parameters_dict(parameter_dict: Dict[str, Any], validate_params: bool, show_deprecate_warnings: bool | None = True) -> ForecastingParameters

Parametreler

parameter_dict
Gerekli

Dikte tüm tahmin parametrelerini içerir.

validate_params
Gerekli

Giriş parametresinin doğrulanıp doğrulanmadığı.

show_deprecate_warnings
varsayılan değer: True

Kullanım dışı parametreler uyarısı göstermek için geçiş yapın.

validate_parameters

ForecastingParameters sınıfındaki parametreleri doğrulayın.

validate_parameters()

Öznitelikler

country_or_region_for_holidays

Tatil özellikleri oluşturmak için kullanılan ülke/bölge. Bunlar ISO 3166 iki harfli ülke/bölge kodu olmalıdır, örneğin "ABD" veya "GB".

cv_step_size

Bir CV katlama ile bir sonraki katlamanın origin_time arasındaki dönem sayısı. Örneğin, günlük veriler için n_step = 3 ise, her katlamanın çıkış süresi üç gün arayla olur.

drop_column_names

Tahmin görevleri için bırakılması gereken sütunların adları.

dropna

Timeseries veri transformatöründe dropna'yi yapılandırın.

feature_lags

Sayısal özellikler için gecikme oluşturma bayrağı.

features_unknown_at_forecast_time

Eğitim için kullanılabilen ancak tahmin/çıkarım zamanında bilinmeyen özelliklerin sütun adları. Bu tanımlanmamışsa, tüm özellik sütunlarının tahmin zamanında bilindiği varsayılır.

forecast_horizon

Zaman serisi sıklığı birimleri cinsinden istenen maksimum tahmin ufku. Varsayılan değer 1’dir. Birimler, eğitim verilerinizin zaman aralığına (örn. tahminde bulunanın tahmin etmesi gereken aylık, haftalık) bağlıdır.

formatted_drop_column_names

Tahmin görevleri için bırakılması gereken sütunların biçimlendirilmiş adları.

formatted_group_column_names

formatted_target_lags

Hedef sütundan geri alınacak geçmiş dönemlerin biçimlendirilmiş sayısı.

formatted_time_series_id_column_names

Zaman aralıklarını gruplandırmak için kullanılan sütunların adları. Birden çok seri oluşturmak için kullanılabilir. time_series_id_column_names tanımlanmamışsa, veri kümesinin tek bir zaman serisi olduğu varsayılır.

formatted_unknown_features

Eğitim için kullanılabilen ancak tahmin/çıkarım zamanında bilinmeyen özelliklerin sütun adları. Bu tanımlanmamışsa, tüm özellik sütunlarının tahmin zamanında bilindiği varsayılır. Yalnızca dnn/tcn'de desteklenir. Kullanıcı hiçbir şey belirtmediğinde, gelecekteki özellikler dnn'de etkinleştirilmez. Ancak, boş bir liste sağlarlarsa, gelecekteki özellikler etkinleştirilir ve tüm özellik sütunlarının tahmin zamanında bilindiği varsayılır.

freq

Veri kümesinin sıklığı.

group_column_names

holiday_country

Tatil özellikleri oluşturmak için kullanılan ülke/bölge. Bunlar ISO 3166 iki harfli ülke/bölge kodu olmalıdır, örneğin "ABD" veya "GB".

overwrite_columns

Zaman overwrite_columns veri transformatöründe yapılandırın.

seasonality

Seri sıklığının tamsayı katı olarak zaman serisi mevsimselliği.

short_series_handling_configuration

Kısa tahıl doldurulması gerekiyorsa geri dönün.

target_aggregation_function

Hedef toplama işlevini döndürür.

target_lags

Hedef sütundan geri alınacak geçmiş dönemlerin sayısı.

target_rolling_window_size

time_column_name

Saat sütununun adı. Bu parametre, zaman serisini oluşturmak ve sıklığını çıkarsamak için kullanılan giriş verilerinde tarih saat sütununu belirtmek için tahminde bulunurken gereklidir.

time_series_id_column_names

Zaman aralıklarını gruplandırmak için kullanılan sütunların adları. Birden çok seri oluşturmak için kullanılabilir. time_series_id_column_names tanımlanmamışsa, veri kümesinin tek bir zaman serisi olduğu varsayılır.

transform_dictionary

Transform_dictionary zaman zamanları veri transformatöründe yapılandırın.

use_stl

Zaman serisi hedef sütununun STL Ayrıştırma'sını yapılandırın. use_stl üç değer alabilir: Yok (varsayılan) - ayrıştırma yok, 'sezon' - yalnızca sezon bileşeni ve season_trend oluştur - hem mevsim hem de eğilim bileşenlerini oluşturun.

DEFAULT_TIMESERIES_VALUE

DEFAULT_TIMESERIES_VALUE = {'_enable_future_regressors': False, 'cv_step_size': 'auto', 'feature_lags': None, 'features_unknown_at_forecast_time': None, 'forecast_horizon': 1, 'freq': None, 'max_horizon': 1, 'seasonality': 'auto', 'short_series_handling': True, 'short_series_handling_configuration': 'auto', 'target_aggregation_function': None, 'target_lags': None, 'target_rolling_window_size': None, 'use_stl': None}

DEPRECATED_DICT

DEPRECATED_DICT = {'country': 'country_or_region_for_holidays', 'country_or_region': 'country_or_region_for_holidays', 'grain_column_names': 'time_series_id_column_names', 'holiday_country': 'country_or_region_for_holidays', 'max_horizon': 'forecast_horizon'}

EMPTY_TIME_COLUMN_NAME

EMPTY_TIME_COLUMN_NAME = '_EMPTY_TIME_COLUMN_NAME'

MAX_LAG_LENGTH

MAX_LAG_LENGTH = 2000