AutoML tahmini ile derin öğrenme

Bu makale, AutoML'de zaman serisi tahmini için derin öğrenme yöntemlerine odaklanır. AutoML'de eğitim tahmin modellerine yönelik yönergeler ve örnekler, zaman serisi tahmini için AutoML'yi ayarlama makalemizde bulunabilir.

Derin öğrenme, dil modellemeden protein katlamaya kadar birçok alanda çok sayıda kullanım örneğine sahiptir. Zaman serisi tahminleri, derin öğrenme teknolojisindeki son gelişmelerden de yararlanır. Örneğin derin sinir ağı (DNN) modelleri, yüksek profilli Makridakis tahmin yarışmasının dördüncü ve beşinci yinelemelerinden en çok performans gösteren modellerde öne çıkar.

Bu makalede, modeli senaryonuza en iyi şekilde uygulamanıza yardımcı olmak için AutoML'de TCNForecaster modelinin yapısı ve işleyişi açıklanmaktadır.

TCNForecaster'a giriş

TCNForecaster, zaman serisi verileri için tasarlanmış bir DNN mimarisine sahip olan bir zamansal konvolusyon ağı veya TCN'dir. Model, hedefin belirli bir tahmin ufkunun olasılık tahminlerini yapmak için ilgili özelliklerle birlikte bir hedef miktar için geçmiş verileri kullanır. Aşağıdaki görüntüde TCNForecaster mimarisinin ana bileşenleri gösterilmektedir:

AutoML'nin TCNForecaster'ının ana bileşenlerini gösteren diyagram.

TCNForecaster aşağıdaki ana bileşenlere sahiptir:

  • Giriş zaman serisini ve özellik verilerini, kıvrımlı yığının işlediği bir dizi sinyal kanalında bir araya getiren bir ön karışım katmanı.
  • Kanal dizisini sıralı olarak işleyen genişleyen kıvrım katmanlarından oluşan bir yığın; yığındaki her katman, yeni bir kanal dizisi oluşturmak için önceki katmanın çıkışını işler. Bu çıkıştaki her kanal, giriş kanallarından gelen kıvrımlı filtrelenmiş sinyallerin bir karışımını içerir.
  • Bu gizli gösterimden çıkış sinyallerini birleştirmeye ve hedef miktarın tahminlerini oluşturmaya yönelik tahmin baş birimleri koleksiyonu. Her baş birimi, tahmin dağılımının niceli için ufuk çizgisine kadar tahminler üretir.

Genişlemiş nedensel konvolüsyon

TCN'nin merkezi işlemi, giriş sinyalinin zaman boyutu boyunca genişlemiş, nedensel bir kıvrımdır . Sezgisel olarak, konvolüsyon girişteki yakındaki zaman noktalarından değerleri bir araya getirir. Karışımdaki orantılar konvolüsyonun çekirdeği veya ağırlıkları, karışımdaki noktalar arasındaki ayrım ise dilasyondur. Çıkış sinyali, giriş boyunca çekirdeğin zaman içinde kaydırılması ve her konumda karışımın birikerek girişten oluşturulur. Nedensel konvolüsyon, çekirdeğin her çıkış noktasına göre yalnızca geçmişteki giriş değerlerini karıştırdığı ve çıkışın geleceğe "bakmasını" önlediği bir işlemdir.

Dilate convolutions istifleme, TCN'ye nispeten az çekirdek ağırlığına sahip giriş sinyallerinde uzun süreler boyunca bağıntıları modelleme olanağı sağlar. Örneğin, aşağıdaki görüntüde her katmanda iki ağırlıklı çekirdek içeren üç yığılmış katman ve üstel olarak artan dilasyon faktörleri gösterilmektedir:

Yığılmış, genişlemiş kıvrım katmanlarını gösteren diyagram.

Kesikli çizgiler, ağ üzerinden çıkışta $t$ bir zamanda biten yolları gösterir. Bu yollar girişteki son sekiz noktayı kapsar ve her çıkış noktasının girişteki en son sekiz noktanın bir işlevi olduğunu gösterir. Bir konvolüsyon ağının tahminlerde bulunmak için kullandığı geçmiş uzunluğu veya "geriye bak", alıcı alan olarak adlandırılır ve tamamen TCN mimarisi tarafından belirlenir.

TCNForecaster mimarisi

TCNForecaster mimarisinin temeli, ön karışım ile tahmin başlıkları arasındaki kıvrımlı katmanların yığınıdır. Yığın mantıksal olarak artık hücrelerden oluşan bloklar olarak adlandırılan yinelenen birimlere ayrılır. Artık hücre, normalleştirme ve doğrusal olmayan aktivasyon ile birlikte bir küme dilatasyonunda nedensel konvolutionlar uygular. Önemli olan, her artık hücre, artık bağlantı olarak adlandırılan bir bağlantı kullanarak çıktısını girişine ekler. Bu bağlantıların , ağ üzerinden daha verimli bilgi akışını kolaylaştırdığı için DNN eğitiminden yararlandığı gösterilmiştir. Aşağıdaki görüntüde, her blokta iki blok ve üç artık hücre bulunan örnek bir ağ için kıvrımlı katmanların mimarisi gösterilmektedir:

TCNForecaster kıvrımlı katmanları için blok ve hücre yapısını gösteren diyagram.

Blok ve hücre sayısı, her katmandaki sinyal kanallarının sayısıyla birlikte ağın boyutunu denetler. TCNForecaster'ın mimari parametreleri aşağıdaki tabloda özetlenir:

Parametre Açıklama
$n_{b}$ Ağdaki blok sayısı; derinlik olarak da adlandırılır
$n_{c}$ Her bloktaki hücre sayısı
$n_{\text{ch}}$ Gizli katmanlardaki kanal sayısı

Alıcı alan derinlik parametrelerine bağlıdır ve formül tarafından verilir,

$t_{\text{rf}} = 4n_{b}\left(2^{n_{c}} - 1\sağ) + 1.$

Formüller açısından TCNForecaster mimarisinin daha kesin bir tanımını verebiliriz. $X$ her satırın giriş verilerinden özellik değerlerini içerdiği bir giriş dizisi olmasına izin verin. $X$ $X_{\text{num}}$ ve $X_{\text{cat}}$ olmak üzere sayısal ve kategorik özellik dizilerine bölebiliriz. Ardından, TCNForecaster formülleri tarafından verilir,

TCNForecaster işlemlerini açıklayan denklemler.

burada $W_{e}$ kategorik özellikler için bir ekleme matrisidir; $n_{l} = n_{b}n_{c}$ toplam artık hücre sayısıdır, $H_{k}$ gizli katman çıkışlarını belirtir ve $f_{q}$ tahmin dağılımının belirli nicelleri için tahmin çıkışlarıdır. Anlaşılmasına yardımcı olmak için, bu değişkenlerin boyutları aşağıdaki tabloda yer alır:

Değişken Açıklama Boyutlar
$X$ Giriş dizisi $n_{\text{input}} \times t_{\text{rf}}$
$H_{i}$ $i=0,1,\ldots,n_{l}$ için gizli katman çıkışı $n_{\text{ch}} \times t_{\text{rf}}$
$f_{q}$ Nicel $q$ için tahmin çıktısı $h$

Tabloda $n_{\text{input}} = n_{\text{features}} + 1$, tahmin edici/özellik değişkenlerinin sayısı ve hedef miktar. TCNForecaster doğrudan bir tahminci olduğundan, tahmin başlıkları tek bir geçişte en yüksek ufku ($h$) kadar tüm tahminleri oluşturur.

AutoML'de TCNForecaster

TCNForecaster, AutoML'de isteğe bağlı bir modeldir. Kullanmayı öğrenmek için bkz . Derin öğrenmeyi etkinleştirme.

Bu bölümde AutoML'nin verilerinizle birlikte TCNForecaster modellerini nasıl oluşturup önceden işleme, eğitim ve model arama açıklamalarını açıklıyoruz.

Veri ön işleme adımları

AutoML, model eğitimine hazırlanmak için verilerinizde çeşitli ön işleme adımları yürütür. Aşağıdaki tabloda bu adımlar gerçekleştirildikleri sırayla açıklanmaktadır:

Adımlar Açıklama
Eksik verileri doldurma Eksik değerleri ve gözlem boşluklarını açma/kapatma ve isteğe bağlı olarak kısa zaman serisini doldurma veya bırakma
Takvim özellikleri oluşturma Giriş verilerini haftanın günü ve isteğe bağlı olarak belirli bir ülke/bölge için tatiller gibi takvimden türetilen özelliklerle genişletin.
Kategorik verileri kodlama Etiket kodlama dizeleri ve diğer kategorik türler; tüm zaman serisi kimlik sütunlarını içerir.
Hedef dönüştürme İsteğe bağlı olarak, belirli istatistiksel testlerin sonuçlarına bağlı olarak hedefe doğal logaritma işlevini uygulayın.
Normalleştirme Z puanı tüm sayısal verileri normalleştirir; normalleştirme, zaman serisi kimlik sütunları tarafından tanımlandığı şekilde özellik ve zaman serisi grubu başına gerçekleştirilir.

Bu adımlar AutoML'nin dönüştürme işlem hatlarına dahil edildiğinden çıkarım zamanında gerektiğinde otomatik olarak uygulanır. Bazı durumlarda, bir adıma ters işlem çıkarım işlem hattına dahil edilir. Örneğin, AutoML eğitim sırasında hedefe $\log$ dönüşümü uyguladıysa, ham tahminler çıkarım işlem hattında üstelleştirilir.

Eğitim

TCNForecaster, görüntü ve dildeki diğer uygulamalar için yaygın olarak kullanılan DNN eğitim en iyi uygulamalarını izler. AutoML, önceden işlenmiş eğitim verilerini karıştırılan ve toplu olarak birleştirilen örneklere böler. Ağ, ağ ağırlıklarını kayıp işlevine göre iyileştirmek için geri yayma ve stokastik gradyan düşüşü kullanarak toplu işlemleri sıralı olarak işler. Eğitim, tam eğitim verilerinden birçok geçiş gerektirebilir; her geçiş bir dönem olarak adlandırılır.

Aşağıdaki tabloda, TCNForecaster eğitimi için giriş ayarları ve parametreleri listelenmiş ve açıklanmıştır:

Eğitim girişi Açıklama Değer
Doğrulama verileri Ağ iyileştirmesine yol göstermek ve uyumu azaltmak için eğitimden alınan verilerin bir kısmı. Kullanıcı tarafından sağlanır veya sağlanmazsa eğitim verilerinden otomatik olarak oluşturulur.
Birincil ölçüm Her eğitim döneminin sonundaki doğrulama verilerine ilişkin ortanca değer tahminlerinden hesaplanan ölçüm; erken durdurma ve model seçimi için kullanılır. Kullanıcı tarafından seçilen; normalleştirilmiş kök ortalama kare hatası veya normalleştirilmiş ortalama mutlak hata.
Eğitim dönemleri Ağ ağırlığı iyileştirmesi için çalıştırılacak en fazla dönem sayısı. 100; otomatik erken durdurma mantığı, eğitimi daha az sayıda dönemle sonlandırabilir.
Erken durarak sabır Eğitim durdurulmadan önce birincil ölçüm geliştirmesinin bekleştirilmesi gereken dönem sayısı. 20
Loss işlevi Ağ ağırlığı iyileştirmesi için hedef işlev. Nicel kayıp ortalaması 10., 25., 50., 75. ve 90. yüzdebirlik dilim tahminleridir.
Toplu iş boyutu Toplu işlemdeki örnek sayısı. Her örnekte $n_{\text{input}} \times t_{\text{rf}}$ ve çıkış için $h$ boyutları vardır. Eğitim verilerindeki toplam örnek sayısından otomatik olarak belirlenir; en fazla 1024 değeridir.
Boyutları ekleme Kategorik özellikler için ekleme alanlarının boyutları. Her özellikteki ayrı değer sayısının dördüncü köküne otomatik olarak ayarlanır ve en yakın tamsayıya yuvarlanmış olur. Eşikler en az 3 ve en fazla 100 değerinde uygulanır.
Ağ mimarisi* Ağın boyutunu ve şeklini denetleen parametreler: derinlik, hücre sayısı ve kanal sayısı. Model arama tarafından belirlenir.
Ağ ağırlıkları Sinyal karışımlarını, kategorik eklemeleri, konvolüsyon çekirdeği ağırlıklarını ve tahmin değerlerine eşlemeleri denetleen parametreler. Rastgele başlatıldı, ardından kayıp işlevine göre iyileştirildi.
Öğrenme oranı* Her gradyan azalma yinelemesinde ağ ağırlıklarının ne kadar ayarlanabileceğini denetler; yakınsama yakınında dinamik olarak azaltıldı . Model arama tarafından belirlenir.
Açılan menü oranı* Ağ ağırlıklarına uygulanan bırakma normalleştirme derecesini denetler. Model arama tarafından belirlenir.

Yıldız (*) ile işaretlenmiş girişler, sonraki bölümde açıklanan bir hiper parametre araması tarafından belirlenir.

AutoML, aşağıdaki hiper parametrelerin değerlerini bulmak için model arama yöntemlerini kullanır:

  • Ağ derinliği veya kıvrımlı blok sayısı,
  • Blok başına hücre sayısı,
  • Her gizli katmandaki kanal sayısı,
  • Ağ düzenlileştirme için açılan menü oranı,
  • Öğrenme oranı.

Bu parametreler için en uygun değerler sorun senaryosuna ve eğitim verilerine bağlı olarak önemli ölçüde farklılık gösterebilir, bu nedenle AutoML hiper parametre değerleri alanında birkaç farklı model eğiter ve doğrulama verilerindeki birincil ölçüm puanına göre en iyi olanı seçer.

Model aramasının iki aşaması vardır:

  1. AutoML, 12 "yer işareti" modeli üzerinde arama yapar. Yer işareti modelleri statiktir ve hiper parametre alanına makul bir şekilde yayılması için seçilir.
  2. AutoML, rastgele bir arama kullanarak hiper parametre alanında aramaya devam eder.

Durdurma ölçütleri karşılandığında arama sonlandırılır. Durdurma ölçütleri tahmin eğitimi işi yapılandırmasına bağlıdır, ancak bazı örnekler arasında zaman sınırları, gerçekleştirilecek arama denemesi sayısı sınırları ve doğrulama ölçümü iyiye gitmiyorken erken durdurma mantığı sayılabilir.

Sonraki adımlar