AutoML'de zaman serisi tahmini için takvim özellikleri
Bu makalede, AutoML'nin tahmin regresyon modellerinin doğruluğunu artırmak için oluşturduğu takvim tabanlı özelliklere odaklanmaktadır. Tatiller modellenen sistemin davranışları üzerinde güçlü bir etkiye sahip olabileceğinden, tatil öncesi, sırasında ve sonrasındaki zaman serinin desenlerini sapmaya neden olabilir. Her tatil, öğrencilerin etki atayabileceği mevcut veri kümeniz üzerinde bir pencere oluşturur. Bu özellikle tatiller gibi belirli ürünler için yüksek talepler oluşturan senaryolarda yararlı olabilir. AutoML'de tahmin metodolojisi hakkında daha fazla genel bilgi için yöntemlere genel bakış makalesine bakın. AutoML'deki eğitim tahmin modellerine yönelik yönergeler ve örnekler , zaman serisi tahmini için AutoML'yi ayarlama makalemizde bulunabilir.
Özellik mühendisliğinin bir parçası olarak AutoML, eğitim verilerinde sağlanan tarih saat türü sütunlarını takvim tabanlı özelliklerin yeni sütunlarına dönüştürür. Bu özellikler regresyon modellerinin çeşitli tempolarda mevsimsel desenleri öğrenmelerine yardımcı olabilir. AutoML her zaman zaman serisinin zaman dizininden takvim özellikleri oluşturabilir çünkü bu, eğitim verilerinde gerekli bir sütundur. Takvim özellikleri, varsa tarih saat türüne sahip diğer sütunlardan da yapılır. Veri gereksinimleri hakkında daha fazla bilgi için AutoML'nin veri kılavuzunuzu nasıl kullandığına bakın.
AutoML, takvim özelliklerinin iki kategorisini dikkate alır: tamamen tarih ve saat değerlerini temel alan standart özellikler ve dünyanın bir ülkesine veya bölgesine özgü tatil özellikleri. Makalenin geri kalanında bu özelliklerin üzerinden geçeceğiz.
Standart takvim özellikleri
Aşağıdaki tabloda, AutoML'nin standart takvim özelliklerinin tam kümesinin yanı sıra örnek bir çıkış gösterilmektedir. Örnek, tarih saat gösterimi için standart YY-mm-dd %H-%m-%d
biçimi kullanır.
Özellik adı | Description | 2011-01-01 00:25:30 için örnek çıktı |
---|---|---|
year |
Takvim yılını temsil eden sayısal özellik | 2011 |
year_iso |
ISO 8601'de tanımlandığı gibi ISO yıllarını temsil eder. ISO yılları, Perşembe günü olan yılın ilk haftası başlar. Örneğin, 1 Ocak bir Cuma ise, ISO yılı 4 Ocak'ta başlar. ISO yılları takvim yıllarından farklı olabilir. | 2010 |
half |
Tarihin yılın ilk veya ikinci yarısında olup olmadığını gösteren özellik. Tarih 1 temmuzdan önceyse 1, aksi takdirde 2 olur. | |
quarter |
Verilen tarihin üç aylık dönemini temsil eden sayısal özellik. Takvim yılının birinci, ikinci, üçüncü, dördüncü çeyreğini temsil eden 1, 2, 3 veya 4 değerlerini alır. | 1 |
month |
Takvim ayını temsil eden sayısal özellik. 1 ile 12 arasında bir değer alır. | 1 |
month_lbl |
Ay adını temsil eden dize özelliği. | 'Ocak' |
day |
Ayın gününü temsil eden sayısal özellik. 1 ile 31 arasında değerler alır. | 1 |
hour |
Günün saatini temsil eden sayısal özellik. 0 ile 23 arasında bir değer alır. | 0 |
minute |
Saat içindeki dakikayı temsil eden sayısal özellik. 0 ile 59 arasında değerler alır. | 25 |
second |
Verilen tarih saat ikincisini temsil eden sayısal özellik. Yalnızca tarih biçiminin sağlandığı durumlarda 0 olarak kabul edilir. 0 ile 59 arasında değerler alır. | 30 |
am_pm |
Saatin sabah mı yoksa akşam mı olduğunu gösteren sayısal özellik. Saat 12:00'nin öncesinde 0, 12:00'nin ardından 1 kez 1 olur. | 0 |
am_pm_lbl |
Saatin sabah mı yoksa akşam mı olduğunu gösteren dize özelliği. | 'am' |
hour12 |
12 saatlik bir saatte günün saatini temsil eden sayısal özellik. Günün ilk yarısı için 0 ile 12, ikinci yarı için 1 ile 11 arasında değerler alır. | 0 |
wday |
Haftanın gününü temsil eden sayısal özellik. 0 ile 6 arasında bir değer alır ve burada 0 Pazartesi'ye karşılık gelir. | 5 |
wday_lbl |
Haftanın gününün adını temsil eden dize özelliği. | |
qday |
Üç aylık dönem içindeki günü temsil eden sayısal özellik. 1 ile 92 arasında bir değer alır. | 1 |
yday |
Yılın gününü temsil eden sayısal özellik. Artık yıl söz konusu olduğunda 1 ile 365 arasında veya 1 ile 366 arasında değerler alır. | 1 |
week |
ISO 8601'de tanımlandığı gibi ISO haftasını temsil eden sayısal özellik. ISO haftaları her zaman Pazartesi günü başlar ve Pazar günü biter. 1 Ocak'ın Perşembe günü düşmesine veya 1 Ocak'ın Çarşamba'ya düşmesine neden olan artık yıllarda 1 ile 52 arasında veya 53 değerini alır. | 52 |
Standart takvim özelliklerinin tamamı her durumda oluşturulamayabilir. Oluşturulan küme, zaman serisinin sıklığına ve eğitim verilerinin saat dizinine ek olarak tarih saat özellikleri içerip içermediğine bağlıdır. Aşağıdaki tabloda farklı sütun türleri için oluşturulan özellikler gösterilmektedir:
Sütun amacı | Takvim özellikleri |
---|---|
Zaman dizini | Diğer özelliklerle yüksek bağıntıya sahip tam küme eksi takvim özellikleri. Örneğin, zaman serisi sıklığı günlükse, yararlı bilgi sağlamadıkları için günlükten daha ayrıntılı frekansa sahip tüm özellikler kaldırılır. |
Diğer tarih saat sütunu | , , , , , DayOfYear WeekOfMonth Day DayOfWeek QuarterOfYear , Minute Hour , ve Second içeren Year azaltılmış bir küme. Month Sütun saati olmayan bir tarihse, Hour , Minute ve Second 0 olur. |
Tatil özellikleri
AutoML isteğe bağlı olarak belirli bir ülke veya bölgeden gelen tatilleri temsil eden özellikler oluşturabilir. Bu özellikler AutoML'de ISO ülke kodunu kabul eden parametresi kullanılarak country_or_region_for_holidays
yapılandırılır.
Not
Tatil özellikleri yalnızca günlük sıklıkta zaman serisi için yapılabilir.
Aşağıdaki tabloda tatil özellikleri özetlenmiştir:
Özellik adı | Description |
---|---|
Holiday |
Tarihin ulusal/bölgesel tatil olup olmadığını belirten dize özelliği. Bir tatil aralığındaki günler de işaretlenir. |
isPaidTimeOff |
Belirtilen ülke veya bölgede gün "ücretli izin tatili" ise 1 değerini alan ikili özellik. |
AutoML, tatil bilgileri için kaynak olarak Azure Açık Veri Kümelerini kullanır. Daha fazla bilgi için PublicHolidays belgelerine bakın.
Tatil özelliği oluşturmayı daha iyi anlamak için aşağıdaki örnek verileri göz önünde bulundurun:
Bu veriler için Amerikan tatil özellikleri oluşturmak için, aşağıdaki kod örneğinde gösterildiği gibi tahmin ayarlarında 'US' olarak ayarlıyoruzcountry_or_region_for_holiday
:
from azure.ai.ml import automl
# create a forcasting job
forecasting_job = automl.forecasting(
compute='test_cluster', # Name of single or multinode AML compute infrastructure created by user
experiment_name=exp_name, # name of experiment
training_data=sample_data,
target_column_name='demand',
primary_metric='NormalizedRootMeanSquaredError',
n_cross_validations=3,
enable_model_explainability=True
)
# set custom forecast settings
forecasting_job.set_forecast_settings(
time_column_name='timeStamp',
country_or_region_for_holidays='US'
)
Oluşturulan tatil özellikleri aşağıdaki çıktıya benzer:
Oluşturulan özelliklerin ön ekinin _automl_
sütun adlarına eklendiğini unutmayın. AutoML, giriş özelliklerini mühendislik özelliklerinden ayırmak için genellikle bu ön eki kullanır.
Sonraki adımlar
- Zaman serisi tahmin modelini eğitmek için AutoML'yi ayarlama hakkında daha fazla bilgi edinin.
- AutoML Tahmin Sık Sorulan Sorular'a göz atın.
- AutoML Tahmini Lagged Özellikleri hakkında bilgi edinin.
- AutoML'nin tahmin modelleri oluşturmak için makine öğrenmesini nasıl kullandığı hakkında bilgi edinin.