Mengevaluasi model

Halaman ini berlaku untuk versi mesin dalam pengelompokan versi mesin utama berikut. Untuk melihat halaman versi mesin lainnya, gunakan pemilih di bagian atas halaman ini.

Singkatnya, berikut perubahan dari versi mesin v003 ke v004 (hingga v004.008):

  • Menambahkan metrik ObservedRecallValuesPerTypology ke output Pengujian ulang.
  • Menambahkan partiesCount dan identifiedPartiesCount ke nilai metrik ObservedRecallValues.

Ringkasan

Hasil pengujian ulang memberikan ringkasan performa model dalam jangka waktu tertentu. Prediksi ini dibuat dengan memprediksi semua pelanggan dalam periode backtest dan mengevaluasi performa model terhadap peristiwa risiko yang tersedia.

Hasil pengujian ulang dapat digunakan untuk mengukur performa model pada rentang waktu terpisah dari yang digunakan dalam pelatihan, atau juga dari waktu ke waktu untuk memeriksa penurunan performa.

Cara melakukan backtest

Untuk membuat resource BacktestResult, lihat Membuat dan mengelola hasil backtest.

Secara khusus, Anda perlu memilih hal berikut:

  • Data yang akan digunakan untuk pengujian ulang:

    Tentukan set data dan waktu berakhir dalam rentang tanggal set data.

    Pelatihan menggunakan label dan fitur berdasarkan bulan kalender lengkap hingga, tetapi tidak termasuk, bulan waktu berakhir yang dipilih. Untuk mengetahui informasi selengkapnya, lihat Rentang waktu set data.

    Tentukan jumlah bulan data berlabel yang akan digunakan untuk pengujian ulang (yaitu, jumlah periode pengujian ulang).

    Tentukan jumlah pihak yang akan dievaluasi sebagai bagian dari pengujian menggunakan kolom PerformanceTarget.

  • Perkiraan volume investigasi berdasarkan model:

    Tentukan partyInvestigationsPerPeriodHint Pengujian ulang mengevaluasi model AI AML pada berbagai volume investigasi bulanan, berdasarkan jumlah yang Anda tentukan. Untuk mengetahui informasi selengkapnya, lihat Output pengujian ulang.

  • Model yang dibuat menggunakan set data yang konsisten:

    Lihat Membuat model.

Periode pengujian ulang

Kolom backtestPeriods menentukan jumlah bulan kalender berturut-turut yang akan digunakan untuk fitur dan label dalam evaluasi performa model ini.

Hal berikut berlaku untuk data pengujian ulang:

  • Bulan yang digunakan dalam evaluasi adalah bulan kalender lengkap terbaru sebelum endTime yang ditentukan. Misalnya, jika endTime adalah 2023-04-15T23:21:00Z dan backtestPeriods adalah 5, maka label dari bulan-bulan berikut akan digunakan: 2023-03, 2023-02, 2023-01, 2022-12, dan 2022-11.
  • Anda harus menggunakan data terbaru yang tersedia untuk pengujian ulang saat mengevaluasi model sebagai persiapan untuk penggunaan produksi.
  • Periode pengujian ulang harus ditetapkan ke 3 atau lebih besar. Dua bulan periode backtest dicadangkan untuk memperhitungkan pemberitahuan berulang, dan bulan-bulan sisanya digunakan untuk membuat label positif untuk evaluasi performa.

  • Hindari penggunaan bulan yang tumpang-tindih untuk pelatihan dan pengujian ulang karena hal ini berisiko overfitting. Pastikan waktu berakhir backtest dan pelatihan berjarak minimal backtestPeriods. Artinya,

    (bulan waktu berakhir pengujian ulang) >= (bulan waktu berakhir model) + backtestPeriods

Secara opsional, Anda juga dapat membuat hasil prediksi untuk model dan melakukan analisis performa model tingkat pihak sendiri.

Output pengujian ulang

Metadata hasil pengujian ulang berisi metrik berikut. Secara khusus, metrik ini menunjukkan hal berikut:

Nama metrik Deskripsi metrik Contoh nilai metrik
ObservedRecallValues Metrik recall diukur pada set data yang ditentukan untuk pengujian ulang. API mencakup 20 pengukuran ini, pada titik operasi yang berbeda, didistribusikan secara merata dari 0 (tidak disertakan) hingga 2 * partyInvestigationsPerPeriodHint. API menambahkan pengukuran panggilan balik akhir di partyInvestigationsPerPeriodHint.

Selain nilai recall, kami juga memberikan pembilang dan penyebut sebagai partiesCount dan identifiedPartiesCount masing-masing.
{
  "recallValues": [
    {
      "partyInvestigationsPerPeriod": 5000,
      "recallValue": 0.80,
      "partiesCount": 60,
      "identifiedPartiesCount": 48,
      "scoreThreshold": 0.42,
    },
    ...
    ...
    {
      "partyInvestigationsPerPeriod": 8000,
      "recallValue": 0.85,
      "partiesCount": 60,
      "identifiedPartiesCount": 51,
      "scoreThreshold": 0.30,
    },
  ],
}
ObservedRecallValuesPerTypology Metrik recall pada tingkat tipologi risiko yang diukur pada set data yang ditentukan untuk pengujian ulang. Pengukuran mengikuti pendekatan yang sama seperti ObservedRecallValues.
{
  "recallValuesPerTypology": [
    {
      "partyInvestigationsPerPeriod": 5000,
      "riskTypology": "risk_typology_id_1",
      "recallValue": 0.80,
      "partiesCount": 60,
      "identifiedPartiesCount": 48,
      "scoreThreshold": 0.42,
    },
    {
      "partyInvestigationsPerPeriod": 8000,
      "riskTypology": "risk_typology_id_1",
      "recallValue": 0.90,
      "partiesCount": 60,
      "identifiedPartiesCount": 54,
      "scoreThreshold": 0.30,
    },
    ...
    ...
    {
      "partyInvestigationsPerPeriod": 8000,
      "riskTypology": "risk_typology_id_2",
      "recallValue": 0.75,
      "partiesCount": 4
      "identifiedPartiesCount": 3,
      "scoreThreshold": 0.30,
    },
  ],
}
Nilai yang hilang

Proporsi nilai yang tidak ada di semua fitur dalam setiap grup fitur.

Idealnya, semua keluarga fitur AI AML harus memiliki Missingness mendekati 0. Pengecualian dapat terjadi jika data yang mendasari kelompok fitur tersebut tidak tersedia untuk integrasi.

Perubahan signifikan pada nilai ini untuk setiap kelompok fitur antara penyesuaian, pelatihan, evaluasi, dan prediksi dapat menunjukkan inkonsistensi dalam set data yang digunakan.

{
  "featureFamilies": [
    {
      "featureFamily": "unusual_wire_credit_activity",
      "missingnessValue": 0.00,
    },
    ...
    ...
    {
      "featureFamily": "party_supplementary_data_id_3",
      "missingnessValue": 0.45,
    },
  ],
}
Skew

Metrik yang menunjukkan skew antara set data pelatihan dan prediksi atau pengujian ulang. Ketidakseimbangan keluarga menunjukkan perubahan dalam distribusi nilai fitur dalam keluarga fitur, yang diberi bobot berdasarkan pentingnya fitur dalam keluarga tersebut. Penyimpangan maks menunjukkan penyimpangan maksimum fitur apa pun dalam grup tersebut.

Nilai kecondongan berkisar dari 0, yang menunjukkan tidak ada perubahan signifikan dalam distribusi nilai fitur dalam family, hingga 1 untuk perubahan paling signifikan. Nilai besar untuk kemiringan keluarga atau kemiringan maks menunjukkan perubahan signifikan pada struktur data Anda yang dapat memengaruhi performa model. Kemiringan keluarga mengambil nilai -1 jika tidak ada fitur dalam keluarga yang digunakan oleh model.

Untuk nilai kecondongan yang besar, Anda harus melakukan salah satu hal berikut:

  • Menyelidiki perubahan pada data yang digunakan oleh grup fitur tersebut (lihat materi pendukung tata kelola model) dan memperbaiki masalah data input
  • Melatih ulang model dengan data yang lebih baru

Anda harus menetapkan nilai minimum dan maksimum kemiringan untuk mengambil tindakan berdasarkan nilai kemiringan keluarga dan maksimum dengan mengamati variasi alami dalam metrik kemiringan selama beberapa bulan.

{
  "featureFamilies": [
    {
      "featureFamily": "unusual_wire_credit_activity",
      "familySkewValue": 0.10,
      "maxSkewValue": 0.14,
    },
    ...
    ...
    {
      "featureFamily": "party_supplementary_data_id_3",
      "familySkewValue": 0.11,
      "maxSkewValue": 0.11,
    },
  ],
}