全部产品
Search
文档中心

Platform For AI:x13_auto_arima

更新时间:Jun 22, 2025

x13_auto_arima adalah algoritma yang digunakan untuk analisis deret waktu dengan pemilihan otomatis model ARIMA. Berdasarkan prosedur yang diimplementasikan oleh Gomez dan Maravall (1998) dalam TRMO (1996) dan revisi berikutnya, algoritma ini secara otomatis mengidentifikasi dan memilih parameter ARIMA optimal untuk menangani karakteristik musiman dan tren data. Proses ini menyederhanakan pembuatan model serta meningkatkan akurasi dan efisiensi prediksi.

Informasi Latar Belakang

Pemilihan x13_auto_arima didasarkan pada langkah-langkah berikut:

  • Estimasi Model Default

    Untuk frekuensi = 1, model default adalah (0,1,1).

    Untuk frekuensi > 1, model default adalah (0,1,1)(0,1,1).

  • Identifikasi Orde Pembedaan

    Jika Anda telah menentukan parameter diff dan seasonalDiff, lewati langkah ini.

    Gunakan unit root tests untuk menentukan perbedaan d dan perbedaan musiman D.

  • Identifikasi Orde Model ARMA

    Pilih model yang paling sesuai berdasarkan kriteria informasi Bayesian (BIC). Parameter maxOrder dan maxSeasonalOrder berlaku pada langkah ini.

  • Perbandingan Model Teridentifikasi dengan Model Default

    Gunakan statistik Q Ljung-Box untuk membandingkan model. Jika kedua model tidak dapat diterima, gunakan model (3,d,1)(0,D,1).

  • Pemeriksaan Model Akhir

Untuk informasi lebih lanjut tentang ARIMA, lihat wiki. Catatan penggunaan algoritma:

  • Skala yang Didukung

    • Baris: maksimal 1.200 catatan data dalam satu grup

    • Kolom: satu kolom numerik

  • Metode Perhitungan Sumber Daya

    • Metode perhitungan default jika parameter groupColNames tidak ditentukan:

      coreNum=1
      memSizePerCore=4096
    • Metode perhitungan default jika parameter groupColNames ditentukan:

      coreNum = floor(Jumlah total baris/120.000)
      memSizePerCore=4096

Batasan

Komponen x13_auto_arima hanya dapat digunakan dengan sumber daya komputasi MaxCompute.

Konfigurasikan komponen

Metode 1: Konfigurasikan komponen di konsol PAI

Anda dapat mengonfigurasi parameter komponen x13_auto_arima di halaman pipeline dari Machine Learning Designer. Tabel berikut menjelaskan parameter tersebut.

Tab

Parameter

Deskripsi

Fields Setting

Time Series Column

Wajib. Parameter ini hanya digunakan untuk mengurutkan nilai di kolom nilai.

Value Column

Wajib.

Stratification Column

Opsional. Anda dapat memisahkan beberapa kolom dengan koma (,), seperti col0,col1. Deret waktu dibuat untuk setiap grup.

Parameters Setting

Start Date

Format yang didukung adalah tahun.musim. Contoh: 1986.1.

Series Frequency

Nilainya harus bilangan bulat positif dalam rentang (0,12].

Maximum of p and q

Nilainya harus bilangan bulat positif dalam rentang (0,4].

Maximum of Seasonal p and q

Nilainya harus angka dalam rentang (0,2].

Maximum of Difference d

Nilainya harus bilangan bulat positif dalam rentang (0,2].

Maximum of Seasonal Difference d

Nilainya harus bilangan bulat positif dalam rentang (0,1].

Difference d

Nilainya harus bilangan bulat positif dalam rentang (0,2].

Jika parameter diff dan maxDiff keduanya ditentukan, parameter maxDiff tidak berlaku.

Parameter diff harus digunakan bersama dengan parameter seasonalDiff.

Seasonal Difference d

Nilainya harus bilangan bulat positif dalam rentang (0,1].

Jika parameter seasonalDiff dan maxSeasonalDiff keduanya ditentukan, parameter maxSeasonalDiff tidak berlaku.

predictNum

Jumlah prediksi. Misalnya, jika Anda menggunakan penjualan harian dari bulan lalu untuk memprediksi penjualan minggu baru, jumlah prediksi adalah 7. Jika Kolom Stratifikasi dipilih, setiap grup akan memiliki 7 prediksi.

Nilainya harus bilangan bulat positif dalam rentang (0,120].

Predicted Confidence Interval

Nilai default: 0,95.

Tolerance

Opsional. Nilai default: 1e-5.

Maximum Iterations

Nilainya harus bilangan bulat positif. Nilai default: 1500.

Execution Tuning

Cores

Jumlah inti. Secara default, sistem menentukan nilainya.

Memory

Ukuran memori per inti. Unit: MB.

Metode 2: Konfigurasikan komponen menggunakan perintah PAI

Anda dapat menggunakan CLI untuk mengonfigurasi parameter komponen. Gunakan skrip SQL untuk memanggil perintah PAI. Untuk informasi lebih lanjut, lihat SQL Script.

PAI -name x13_auto_arima
    -project algo_public
    -DinputTableName=pai_ft_x13_arima_input
    -DseqColName=id
    -DvalueColName=number
    -Dstart=1949.1
    -Dfrequency=12
    -DpredictStep=12
    -DoutputPredictTableName=pai_ft_x13_arima_out_predict2
    -DoutputDetailTableName=pai_ft_x13_arima_out_detail2

Parameter

Wajib

Deskripsi

Nilai Default

inputTableName

Ya

Nama tabel input.

Tidak Ada

inputTablePartitions

Tidak

Kolom fitur yang dipilih dari tabel input untuk pelatihan model.

Tabel Penuh

seqColName

Ya

Kolom deret waktu. Parameter ini hanya digunakan untuk mengurutkan nilai di kolom nilai.

Tidak Ada

valueColName

Ya

Kolom nilai.

Tidak Ada

groupColNames

Tidak

Kolom stratifikasi. Anda dapat memisahkan beberapa kolom dengan koma (,), seperti col0,col1. Deret waktu dibuat untuk setiap grup.

Tidak Ada

start

Tidak

Waktu mulai deret waktu. Nilainya harus string dalam format tahun.musim, seperti 1986.1. Untuk informasi lebih lanjut, lihat Format deret waktu.

1.1

frequency

Tidak

Frekuensi deret waktu. Nilainya harus bilangan bulat positif dalam rentang (0,12]. Untuk informasi lebih lanjut, lihat Format deret waktu.

12

null

Nilai 12 menunjukkan 12 bulan (satu tahun).

maxOrder

Tidak

Nilai maksimum p dan q. Nilainya harus bilangan bulat positif dalam rentang [0,4].

2

maxSeasonalOrder

Tidak

Nilai maksimum musiman p dan q. Nilainya harus bilangan bulat positif dalam rentang [0,2].

1

maxDiff

Tidak

Nilai maksimum perbedaan d. Nilainya harus bilangan bulat positif dalam rentang [0,2].

2

maxSeasonalDiff

Tidak

Nilai maksimum perbedaan musiman d. Nilainya harus bilangan bulat positif dalam rentang [0,1].

1

diff

Tidak

Perbedaan d. Nilainya harus bilangan bulat positif dalam rentang [0,2].

Jika parameter diff dan maxDiff keduanya ditentukan, parameter maxDiff tidak berlaku.

Parameter diff harus digunakan bersama dengan parameter seasonalDiff.

-1

null

Nilai -1 menunjukkan bahwa perbedaan d tidak ditentukan.

seasonalDiff

Tidak

Perbedaan musiman d. Nilainya harus bilangan bulat positif dalam rentang [0,1].

Jika parameter seasonalDiff dan maxSeasonalDiff keduanya ditentukan, parameter maxSeasonalDiff tidak berlaku.

-1

null

Nilai -1 menunjukkan bahwa perbedaan musiman d tidak ditentukan.

maxiter

Tidak

Jumlah iterasi maksimum. Nilainya harus bilangan bulat positif.

1500

tol

Tidak

Toleransi. Nilainya bertipe DOUBLE.

1e-5

predictStep

Tidak

Jumlah entriprediksi. Nilainya harus bilangan bulat positif dalam rentang (0,365].

12

confidenceLevel

Tidak

Tingkat kepercayaan. Nilainya harus angka dalam rentang (0,1).

0,95

outputPredictTableName

Ya

Tabel output.

Tidak Ada

outputDetailTableName

Ya

Tabel detail.

Tidak Ada

outputTablePartition

Tidak

Menentukan apakah akan mengekspor data ke partisi.

Tidak mengekspor data ke partisi

coreNum

Tidak

Jumlah inti. Nilainya harus bilangan bulat positif. Parameter ini digunakan bersama dengan memSizePerCore.

Ditentukan oleh sistem

memSizePerCore

Tidak

Ukuran memori per inti. Unit: MB. Nilainya harus bilangan bulat positif dalam rentang [1024,64 × 1024].

Ditentukan oleh sistem

lifecycle

Tidak

Lifecycle tabel output.

Tidak Ada

Format deret waktu

Parameter start dan frequency menentukan dimensi waktu ts1 dan ts2 untuk kolom numerik.

  • Parameter frequency menentukan frekuensi data dalam periode unit, yaitu frekuensi ts2 dalam setiap ts1.

  • Nilai parameter start dalam format n1.n2. Ini menunjukkan bahwa tanggal mulai adalah ts2 ke-n2 dalam ts1 ke-n1.

Satuan Waktu

ts1

ts2

frekuensi

mulai

12 bulan/tahun

Tahun

Bulan

12

1949.2 menunjukkan bulan kedua tahun 1949.

4 kuartal/tahun

Tahun

Kuartal

4

1949.2 menunjukkan kuartal kedua tahun 1949.

7 hari/minggu

Minggu

Hari

7

1949.2 menunjukkan hari kedua minggu ke-1949.

1

Sembarang satuan waktu

1

1

1949.1 menunjukkan tahun 1949, atau hari ke-1949 atau jam ke-1949.

Contoh: value=[1,2,3,5,6,7,8,9,10,11,12,13,14,15]

  • start=1949.3,frequency=12 menunjukkan bahwa waktu unit adalah 12 bulan per tahun, dan prediksi dimulai dari Juni tahun 1950.

    tahun

    Jan

    Feb

    Mar

    Apr

    Mei

    Jun

    Jul

    Agu

    Sep

    Okt

    Nov

    Des

    1949

    1

    2

    3

    4

    5

    6

    7

    8

    9

    10

    1950

    11

    12

    13

    14

    15

  • start=1949.3,frequency=4 menunjukkan bahwa waktu unit adalah empat kuartal per tahun, dan prediksi dimulai dari kuartal kedua tahun 1953.

    tahun

    Qtr1

    Qtr2

    Qtr3

    Qtr4

    1949

    1

    2

    1950

    3

    4

    5

    6

    1951

    7

    8

    9

    10

    1952

    11

    12

    13

    14

    1953

    15

  • start=1949.3,frequency=7 menunjukkan bahwa waktu unit adalah tujuh hari per minggu, dan prediksi dimulai dari hari keempat minggu ke-1951.

    minggu

    Sun

    Sen

    Sel

    Rab

    Kam

    Jum

    Sab

    1949

    1

    2

    3

    4

    5

    1950

    6

    7

    8

    9

    10

    11

    12

    1951

    13

    14

    15

  • start=1949.1,frequency=1 menunjukkan bahwa prediksi dimulai pada tahun 1963.00.

    siklus

    p1

    1949

    1

    1950

    2

    1951

    3

    1952

    4

    1953

    5

    1954

    6

    1955

    7

    1956

    8

    1957

    9

    1958

    10

    1959

    11

    1960

    12

    1961

    13

    1962

    14

    1963

    15

Contoh

Siapkan data uji

Contoh ini menggunakan dataset AirPassengers.csv, yang mencatat jumlah penumpang penerbangan internasional setiap bulan dari tahun 1949 hingga tahun 1960. Untuk informasi lebih lanjut tentang dataset, lihat AirPassengers.

id

number

1

112

2

118

3

132

4

129

5

121

...

...

Jalankan perintah Tunnel berikut pada klien MaxCompute untuk mengunggah data. Untuk informasi tentang cara menginstal dan mengonfigurasi klien MaxCompute, lihat Klien MaxCompute (odpscmd). Untuk informasi lebih lanjut tentang perintah Tunnel, lihat Perintah Tunnel.

create table pai_ft_x13_arima_input(id bigint,number bigint);
tunnel upload xxx/airpassengers.csv pai_ft_x13_arima_input -h true;

Jalankan Perintah PAI

Anda dapat menggunakan Skrip SQL atau komponen ODPS SQL untuk menjalankan perintah PAI berikut:

PAI -name x13_auto_arima
    -project algo_public
    -DinputTableName=pai_ft_x13_arima_input
    -DseqColName=id
    -DvalueColName=number
    -Dstart=1949.1
    -Dfrequency=12
    -DmaxOrder=4
    -DmaxSeasonalOrder=2
    -DmaxDiff=2
    -DmaxSeasonalDiff=1
    -DpredictStep=12
    -DoutputPredictTableName=pai_ft_x13_arima_auto_out_predict
    -DoutputDetailTableName=pai_ft_x13_arima_auto_out_detail

Deskripsi Output

  • Tabel Output outputPredictTableName

    • Deskripsi Bidang

      nama kolom

      komentar

      pdate

      Tanggal prediksi.

      forecast

      Kesimpulan prediksi.

      lower

      Batas bawah hasil prediksi ketika tingkat kepercayaan ditentukan. Tingkat kepercayaan default adalah 0,95.

      upper

      Batas atas hasil prediksi ketika tingkat kepercayaan ditentukan. Tingkat kepercayaan default adalah 0,95.

    • Data yang Dihasilkan

      image

  • Tabel Output outputDetailTableName

    • Deskripsi Bidang

      nama kolom

      komentar

      key

      • model: model yang digunakan.

      • evaluation: hasil evaluasi.

      • parameters: parameter pelatihan.

      • log: log pelatihan.

      summary

      Detail penyimpanan.

    • Data yang Dihasilkan

      image

FAQ

  • Mengapa hasil prediksi sama?

    Jika terjadi pengecualian selama pelatihan model, model rata-rata dipanggil. Dalam hal ini, semua hasil prediksi adalah rata-rata dari data pelatihan. Pengecualian umum termasuk ketidakstabilan setelah pembelajaran perbedaan temporal, pelatihan tanpa konvergensi, dan varians 0. Anda dapat melihat file stderr node individual di Logview untuk mendapatkan informasi spesifik tentang pengecualian.

  • Bagaimana cara mengonfigurasi parameter komponen?

    Anda perlu mengonfigurasi parameter p, d, q, sp, sd, dan sq untuk komponen x13_arima. Jika Anda tidak yakin dengan pengaturan parameter, kami sarankan Anda menggunakan komponen x13_auto_arima.

    Anda hanya perlu menetapkan batas atas untuk komponen. Komponen secara otomatis menyesuaikan parameter.

  • Pesan kesalahan: ERROR: Jumlah observasi setelah pembedaan dan/atau estimasi AR bersyarat adalah 9, yang kurang dari panjang seri minimum yang diperlukan untuk model yang diestimasi, 24

    Data pelatihan tidak mencukupi. Ubah parameter frekuensi atau tambahkan lebih banyak data pelatihan.

  • Pesan kesalahan: ERROR: Orde operator MA terlalu besar

    Dalam sebagian besar kasus, kesalahan ini terjadi karena data pelatihan tidak mencukupi.

  • Pesan kesalahan: ERROR: Seri yang akan dimodelkan dan/atau disesuaikan secara musiman harus memiliki setidaknya 3 tahun data lengkap

    Jika Anda telah menentukan parameter musiman, setidaknya tiga tahun data diperlukan.

Referensi

X-13-ARIMA adalah algoritma autoregressive integrated moving average (ARIMA) yang disesuaikan secara musiman berdasarkan algoritma X-13ARIMA-SEATS sumber terbuka. Anda dapat menggunakan komponen x13_arima untuk memproses data. Untuk informasi lebih lanjut, lihat x13_auto_arima.