Terjemahan disediakan oleh mesin penerjemah. Jika konten terjemahan yang diberikan bertentangan dengan versi bahasa Inggris aslinya, utamakan versi bahasa Inggris.
File Konfigurasi Analisis
Untuk menganalisis data dan model Anda untuk menjelaskan dan bias menggunakan SageMaker Clarify, Anda harus mengonfigurasi pekerjaan pemrosesan. Bagian dari konfigurasi untuk pekerjaan pemrosesan ini mencakup konfigurasi file analisis. File analisis menentukan parameter untuk analisis bias dan penjelasan. Lihat Konfigurasikan SageMaker Clarify Processing Job untuk mempelajari cara mengonfigurasi pekerjaan pemrosesan dan file analisis.
Panduan ini menjelaskan skema dan parameter untuk file konfigurasi analisis ini. Panduan ini juga mencakup contoh file konfigurasi analisis untuk metrik bias komputasi untuk kumpulan data tabel, dan menghasilkan penjelasan untuk masalah pemrosesan bahasa alami (), visi komputer (CVNLP), dan deret waktu (TS).
Anda dapat membuat file konfigurasi analisis atau menggunakan SageMaker Python SDK
Skema untuk file konfigurasi analisis
Bagian berikut menjelaskan skema untuk file konfigurasi analisis termasuk persyaratan dan deskripsi parameter.
Persyaratan untuk file konfigurasi analisis
Pekerjaan pemrosesan SageMaker Clarify mengharapkan file konfigurasi analisis terstruktur dengan persyaratan berikut:
-
Nama input pemrosesan harus
analysis_config.
-
File konfigurasi analisis dalam JSON format, dan dikodekan dalam UTF -8.
-
File konfigurasi analisis adalah objek Amazon S3.
Anda dapat menentukan parameter tambahan dalam file konfigurasi analisis. Bagian berikut menyediakan berbagai opsi untuk menyesuaikan pekerjaan pemrosesan SageMaker Clarify untuk kasus penggunaan Anda dan jenis analisis yang diinginkan.
Dalam file konfigurasi analisis, Anda dapat menentukan parameter berikut.
-
versi - (Opsional) String versi skema file konfigurasi analisis. Jika versi tidak disediakan, SageMaker Clarify menggunakan versi terbaru yang didukung. Saat ini, satu-satunya versi yang didukung adalah
1.0
. -
dataset_type — Format dataset. Format dataset input dapat berupa salah satu dari nilai berikut:
Tabular
-
text/csv
untuk CSV -
application/jsonlines
untuk format padat SageMaker JSON Garis -
application/json
untuk JSON -
application/x-parquet
untuk Apache Parquet -
application/x-image
untuk mengaktifkan penjelasan untuk masalah penglihatan komputer
-
Penjelasan model peramalan deret waktu
application/json
untuk JSON
-
dataset_uri — (Opsional) Pengidentifikasi sumber daya seragam (URI) dari kumpulan data utama. Jika Anda memberikan URI awalan S3, pekerjaan pemrosesan SageMaker Clarify secara rekursif mengumpulkan semua file S3 yang terletak di bawah awalan. Anda dapat memberikan URI awalan S3 atau S3 ke file manifes gambar URI untuk masalah penglihatan komputer. Jika
dataset_uri
disediakan, itu lebih diutamakan daripada input pekerjaan pemrosesan dataset. Untuk semua jenis format kecuali kasus penggunaan gambar dan deret waktu, pekerjaan pemrosesan SageMaker Clarify memuat kumpulan data input ke dalam bingkai data tabel, sebagai kumpulan data tabular. Format ini memungkinkan SageMaker untuk dengan mudah memanipulasi dan menganalisis dataset input. -
header - (Opsional)
Tabular: Sebuah array string yang berisi nama kolom dari dataset tabular. Jika nilai tidak disediakan
headers
, tugas pemrosesan SageMaker Clarify akan membaca header dari kumpulan data. Jika kumpulan data tidak memiliki header, maka pekerjaan pemrosesan Clarify secara otomatis menghasilkan nama placeholder berdasarkan indeks kolom berbasis nol. Misalnya, nama placeholder untuk kolom pertama dan kedua adalahcolumn_0
,column_1
, dan seterusnya.catatan
Dengan konvensi, jika
dataset_type
adaapplication/jsonlines
atauapplication/json
, makaheaders
harus berisi nama-nama berikut secara berurutan:nama fitur
nama label (jika
label
ditentukan)nama label yang diprediksi (jika
predicted_label
ditentukan)
Contoh
headers
untuk tipeapplication/jsonlines
dataset jika ditentukanlabel
adalah:["feature1","feature2","feature3","target_label"]
.Deret waktu: Daftar nama kolom dalam kumpulan data. Jika tidak disediakan, Clarify menghasilkan header untuk digunakan secara internal. Untuk kasus penjelasan deret waktu, berikan header dengan urutan sebagai berikut:
id barang
timestamp
seri waktu target
semua kolom deret waktu terkait
semua kolom kovariat statis
-
label — (Opsional) Sebuah string atau indeks integer berbasis nol. Jika disediakan,
label
digunakan untuk menemukan label kebenaran dasar, juga dikenal sebagai label yang diamati atau atribut target dalam kumpulan data tabel. Label kebenaran dasar digunakan untuk menghitung metrik bias. Nilai untuklabel
ditentukan tergantung pada nilaidataset_type
parameter sebagai berikut.-
Jika
dataset_type
yatext/csv
,label
dapat ditentukan sebagai salah satu dari berikut ini:-
Nama kolom yang valid
-
Indeks yang berada dalam rentang kolom dataset
-
-
Jika
dataset_type
yaapplication/parquet
,label
harus nama kolom yang valid. -
Jika
dataset_type
yaapplication/jsonlines
,label
harus berupa JMESPathekspresi yang ditulis untuk mengekstrak label kebenaran dasar dari kumpulan data. Dengan konvensi, jika headers
ditentukan, maka harus berisi nama label. -
Jika
dataset_type
yaapplication/json
,label
harus berupa JMESPathekspresi yang ditulis untuk mengekstrak label kebenaran dasar untuk setiap catatan dalam kumpulan data. JMESPathEkspresi ini harus menghasilkan daftar label di mana label ke-i berkorelasi dengan catatan ke-i.
-
-
predicted_label — (Opsional) Sebuah string atau indeks integer berbasis nol. Jika disediakan,
predicted_label
digunakan untuk menemukan kolom yang berisi label yang diprediksi dalam kumpulan data tabel. Label yang diprediksi digunakan untuk menghitung metrik bias pasca-pelatihan. Parameterpredicted_label
opsional jika kumpulan data tidak menyertakan label yang diprediksi. Jika label yang diprediksi diperlukan untuk komputasi, maka pekerjaan pemrosesan SageMaker Clarify akan mendapatkan prediksi dari model.Nilai untuk
predicted_label
ditentukan tergantung pada nilaidataset_type
sebagai berikut:-
Jika
dataset_type
yatext/csv
,predicted_label
dapat ditentukan sebagai salah satu dari berikut ini:-
Nama kolom yang valid. Jika
predicted_label_dataset_uri
ditentukan, tetapi tidakpredicted_label
disediakan, nama label prediksi default adalah “predicted_label”. -
Indeks yang berada dalam rentang kolom dataset. Jika
predicted_label_dataset_uri
ditentukan, maka indeks digunakan untuk menemukan kolom label yang diprediksi dalam kumpulan data label yang diprediksi.
-
-
Jika dataset_type adalah
application/x-parquet
,predicted_label
harus nama kolom yang valid. -
Jika dataset_type adalah
application/jsonlines
,predicted_label
harus berupa JMESPathekspresi valid yang ditulis untuk mengekstrak label yang diprediksi dari kumpulan data. Dengan konvensi, jika headers
ditentukan, maka harus berisi nama label yang diprediksi. -
Jika
dataset_type
yaapplication/json
,predicted_label
harus berupa JMESPathekspresi yang ditulis untuk mengekstrak label yang diprediksi untuk setiap catatan dalam kumpulan data. JMESPathEkspresi harus menghasilkan daftar label yang diprediksi di mana label prediksi saya adalah untuk catatan ke-i.
-
-
fitur - (Opsional) Diperlukan untuk kasus non-time-series penggunaan jika
dataset_type
adaapplication/jsonlines
atauapplication/json
. Ekspresi JMESPath string ditulis untuk menemukan fitur dalam dataset input. Untukapplication/jsonlines
, JMESPath ekspresi akan diterapkan ke setiap baris untuk mengekstrak fitur untuk catatan itu. Untukapplication/json
, JMESPath ekspresi akan diterapkan ke seluruh dataset input. JMESPathEkspresi harus mengekstrak daftar daftar, atau array 2D/matriks fitur di mana baris ke-i berisi fitur yang berkorelasi dengan catatan ke-i. Untukdataset_type
daritext/csv
atauapplication/x-parquet
, semua kolom kecuali label kebenaran dasar dan kolom label yang diprediksi secara otomatis ditetapkan sebagai fitur. -
predicted_label_dataset_uri — (Opsional) Hanya berlaku jika dataset_type adalah.
text/csv
S3 URI untuk kumpulan data yang berisi label prediksi yang digunakan untuk menghitung metrik bias pasca-pelatihan. Pekerjaan pemrosesan SageMaker Clarify akan memuat prediksi dari yang disediakan URI alih-alih mendapatkan prediksi dari model. Dalam hal ini,predicted_label
diperlukan untuk menemukan kolom label yang diprediksi dalam kumpulan data label yang diprediksi. Jika kumpulan data label yang diprediksi atau kumpulan data utama dibagi menjadi beberapa file, kolom pengidentifikasi harus ditentukan olehjoinsource_name_or_index
untuk bergabung dengan dua kumpulan data. -
predicted_label_headers — (Opsional) Hanya berlaku bila ditentukan.
predicted_label_dataset_uri
Array string yang berisi nama kolom dari dataset label yang diprediksi. Selain header label yang diprediksi, jugapredicted_label_headers
dapat berisi header kolom pengidentifikasi untuk bergabung dengan kumpulan data label yang diprediksi dan kumpulan data utama. Untuk informasi selengkapnya, lihat deskripsi berikut untuk parameterjoinsource_name_or_index
. -
joinsource_name_or_index — (Opsional) Nama atau indeks berbasis nol kolom dalam kumpulan data tabular yang akan digunakan sebagai kolom pengenal saat melakukan penggabungan bagian dalam. Kolom ini hanya digunakan sebagai pengenal. Ini tidak digunakan untuk perhitungan lain seperti analisis bias atau analisis atribusi fitur. Nilai untuk
joinsource_name_or_index
diperlukan dalam kasus-kasus berikut:-
Ada beberapa kumpulan data input, dan siapa pun dibagi menjadi beberapa file.
-
Pemrosesan terdistribusi diaktifkan dengan mengatur pekerjaan pemrosesan SageMaker Clarify InstanceCountke nilai yang lebih besar dari
1
.
-
-
excluded_columns — (Opsional) Sebuah array nama atau indeks kolom berbasis nol yang akan dikecualikan dari dikirim ke model sebagai masukan untuk prediksi. Label kebenaran dasar dan label yang diprediksi secara otomatis sudah dikecualikan. Fitur ini tidak didukung untuk deret waktu.
-
probability_threshold — (Opsional) Nomor floating point di atasnya, label atau objek dipilih. Nilai default-nya adalah
0.5
. Pekerjaan pemrosesan SageMaker Clarify digunakanprobability_threshold
dalam kasus-kasus berikut:-
Dalam analisis bias pasca-pelatihan,
probability_threshold
ubah prediksi model numerik (nilai probabilitas atau skor) menjadi label biner, jika modelnya adalah pengklasifikasi biner. Skor yang lebih besar dari ambang dikonversi menjadi1
. Sedangkan, skor kurang dari atau sama dengan ambang dikonversi menjadi0
. -
Dalam masalah penjelasan visi komputer, jika model_type
OBJECT_DETECTION
, probability_threshold
menyaring objek yang terdeteksi dengan skor kepercayaan lebih rendah dari nilai ambang batas.
-
-
label_values_or_threshold — (Opsional) Diperlukan untuk analisis bias. Array nilai label atau nomor ambang batas, yang menunjukkan hasil positif untuk kebenaran dasar dan label prediksi untuk metrik bias. Untuk informasi lebih lanjut, lihat nilai label positif diAmazon SageMaker Klarifikasi Persyaratan untuk Bias dan Keadilan. Jika labelnya numerik, ambang batas diterapkan sebagai batas bawah untuk memilih hasil positif.
label_values_or_threshold
Untuk mengatur berbagai jenis masalah, lihat contoh berikut:-
Untuk masalah klasifikasi biner, label memiliki dua nilai yang mungkin,
0
dan1
. Jika nilai1
label menguntungkan untuk kelompok demografis yang diamati dalam sampel, makalabel_values_or_threshold
harus diatur ke[1]
. -
Untuk masalah klasifikasi multiclass, label memiliki tiga nilai yang mungkin,
bird
,cat
dan.dog
Jika dua yang terakhir mendefinisikan kelompok demografis yang disukai bias, makalabel_values_or_threshold
harus diatur ke.["cat","dog"]
-
Untuk masalah regresi, nilai label kontinu, mulai dari
0
hingga.1
Jika nilai yang lebih besar dari0.5
seharusnya menunjuk sampel sebagai memiliki hasil positif, makalabel_values_or_threshold
harus diatur ke0.5
.
-
-
facet — (Opsional) Diperlukan untuk analisis bias. Array objek faset, yang terdiri dari atribut sensitif yang mengukur bias. Anda dapat menggunakan aspek untuk memahami karakteristik bias dari kumpulan data dan model Anda bahkan jika model Anda dilatih tanpa menggunakan atribut sensitif. Untuk informasi lebih lanjut, lihat Facet diAmazon SageMaker Klarifikasi Persyaratan untuk Bias dan Keadilan. Setiap objek facet mencakup bidang-bidang berikut:
-
name_or_index — (Opsional) Nama atau indeks berbasis nol dari kolom atribut sensitif dalam kumpulan data tabular. Jika
facet_dataset_uri
ditentukan, maka indeks mengacu pada dataset faset alih-alih dataset utama. -
value_or_threshold — (Opsional) Diperlukan jika
facet
numerik danlabel_values_or_threshold
diterapkan sebagai batas bawah untuk memilih grup sensitif). Array nilai faset atau angka ambang batas, yang menunjukkan kelompok demografis sensitif yang disukai bias. Jika tipe data facet kategoris dan tidakvalue_or_threshold
disediakan, metrik bias dihitung sebagai satu grup untuk setiap nilai unik (bukan semua nilai).value_or_threshold
Untuk mengatur tipefacet
data yang berbeda, lihat contoh berikut:-
Untuk tipe data facet biner, fitur ini memiliki dua nilai yang mungkin,
0
dan1
. Jika Anda ingin menghitung metrik bias untuk setiap nilai, makavalue_or_threshold
dapat dihilangkan atau disetel ke array kosong. -
Untuk tipe data facet kategoris, fitur ini memiliki tiga nilai yang mungkin
bird
,,cat
dan.dog
Jika dua yang pertama mendefinisikan kelompok demografis yang disukai bias, makavalue_or_threshold
harus diatur ke.["bird", "cat"]
Dalam contoh ini, sampel dataset dibagi menjadi dua kelompok demografis. Aspek dalam kelompok yang diuntungkan memiliki nilaibird
ataucat
, sedangkan segi dalam kelompok yang kurang beruntung memiliki nilai.dog
-
Untuk tipe data facet numerik, nilai fitur kontinu, mulai dari
0
hingga.1
Sebagai contoh, jika nilai yang lebih besar dari0.5
seharusnya menunjuk sampel sebagai disukai, makavalue_or_threshold
harus diatur ke.0.5
Dalam contoh ini, sampel dataset dibagi menjadi dua kelompok demografis. Aspek dalam kelompok yang diuntungkan memiliki nilai lebih besar dari0.5
, sedangkan segi dalam kelompok yang kurang beruntung memiliki nilai kurang dari atau sama dengan.0.5
-
-
-
group_variable — (Opsional) Nama atau indeks berbasis nol dari kolom yang menunjukkan subkelompok yang akan digunakan untuk metrik bias atau. Disparitas Demografis Bersyarat () CDD Disparitas Demografis Bersyarat dalam Label yang Diprediksi () CDDPL
-
facet_dataset_uri — (Opsional) Hanya berlaku jika dataset_type adalah.
text/csv
S3 URI untuk kumpulan data yang berisi atribut sensitif untuk analisis bias. Anda dapat menggunakan aspek untuk memahami karakteristik bias dari kumpulan data dan model Anda bahkan jika model Anda dilatih tanpa menggunakan atribut sensitif.catatan
Jika kumpulan data faset atau kumpulan data utama dibagi menjadi beberapa file, kolom pengidentifikasi harus ditentukan oleh
joinsource_name_or_index
untuk bergabung dengan dua kumpulan data. Anda harus menggunakan parameterfacet
untuk mengidentifikasi setiap aspek dalam dataset faset. -
facet_headers - (Opsional) Hanya berlaku bila ditentukan.
facet_dataset_uri
Array string yang berisi nama kolom untuk dataset faset, dan secara opsional, header kolom pengidentifikasi untuk bergabung dengan dataset faset dan dataset utama, lihat.joinsource_name_or_index
-
time_series_data_config - (Opsional) Menentukan konfigurasi yang akan digunakan untuk pengolahan data dari deret waktu.
item_id — Sebuah string atau indeks integer berbasis nol. Bidang ini digunakan untuk menemukan id item di dataset input bersama.
timestamp — Sebuah string atau indeks integer berbasis nol. Bidang ini digunakan untuk menemukan stempel waktu dalam kumpulan data input bersama.
dataset_format — Nilai yang mungkin adalah
columns
,, atau.item_records
timestamp_records
Bidang ini digunakan untuk menggambarkan format kumpulan JSON data, yang merupakan satu-satunya format yang didukung untuk penjelasan deret waktu.target_time_series — Sebuah JMESPath string atau indeks integer berbasis nol. Bidang ini digunakan untuk menemukan deret waktu target dalam kumpulan data input bersama. Jika parameter ini adalah string, maka semua parameter lain kecuali
dataset_format
harus string atau daftar string. Jika parameter ini adalah bilangan bulat, maka semua parameter lain kecualidataset_format
harus bilangan bulat atau daftar bilangan bulat.related_time_series — (Opsional) Sebuah array ekspresi. JMESPath Bidang ini digunakan untuk menemukan semua deret waktu terkait dalam kumpulan data input bersama, jika ada.
static_covariates — (Opsional) Sebuah array ekspresi. JMESPath Bidang ini digunakan untuk menemukan semua bidang kovariat statis dalam kumpulan data input bersama, jika ada.
Sebagai contoh, lihat Contoh konfigurasi kumpulan data deret waktu.
-
Metode — Objek yang berisi satu atau lebih metode analisis dan parameternya. Jika ada metode yang dihilangkan, itu tidak digunakan untuk analisis atau dilaporkan.
-
pre_training_bias — Sertakan metode ini jika Anda ingin menghitung metrik bias pra-pelatihan. Penjelasan rinci tentang metrik dapat ditemukan diMetrik Bias Pra-pelatihan. Objek memiliki parameter berikut:
-
method — Array yang berisi salah satu metrik bias pra-pelatihan dari daftar berikut yang ingin Anda hitung. Setel
methods
all
untuk menghitung semua metrik bias pra-pelatihan. Sebagai contoh, array["CI", "DPL"]
akan menghitung Ketidakseimbangan Kelas dan Perbedaan dalam Proporsi Label.-
CI
untuk Ketidakseimbangan Kelas (CI) -
DPL
untuk Perbedaan Proporsi Label (DPL) -
KL
untuk Divergensi Kullback-Leibler (KL) -
JS
untuk Divergensi Jensen-Shannon (JS) -
LP
untuk L p -norma (LP) -
TVD
untuk Jarak Variasi Total (TVD) -
KS
untuk Kolmogorov-Smirnov (KS) -
CDDL
untuk Disparitas Demografis Bersyarat () CDD
-
-
-
post_training_bias — Sertakan metode ini jika Anda ingin menghitung metrik bias pasca-pelatihan. Penjelasan rinci tentang metrik dapat ditemukan diData Pasca-pelatihan dan Metrik Bias Model.
post_training_bias
Objek memiliki parameter berikut.-
method — Array yang berisi salah satu metrik bias pasca-pelatihan dari daftar berikut yang ingin Anda hitung. Setel
methods
all
untuk menghitung semua metrik bias pasca-pelatihan. Sebagai contoh, array["DPPL", "DI"]
menghitung Perbedaan Proporsi Positif dalam Label yang Diprediksi dan Dampak Berbeda. Metode yang tersedia adalah sebagai berikut.-
DPPL
untuk Perbedaan Proporsi Positif pada Label yang Diprediksi (DPPL) -
DI
untuk Dampak Berbeda (DI) -
DCR
untuk Perbedaan Penolakan Bersyarat () DCR -
SD
untuk Perbedaan spesifisitas (SD) -
RD
untuk Ingat Perbedaan (RD) -
DAR
untuk Perbedaan Tingkat Penerimaan (DAR) -
DRR
untuk Perbedaan Tingkat Penolakan (DRR) -
AD
untuk Perbedaan Akurasi (AD) -
TE
untuk Kesetaraan Perawatan (TE) -
CDDPL
untuk Disparitas Demografis Bersyarat dalam Label yang Diprediksi () CDDPL -
FT
untuk Fliptest Kontrafaktual (FT) -
GE
untuk Entropi umum (GE)
-
-
-
shap - Sertakan metode ini jika Anda ingin menghitung nilaiSHAP. Pekerjaan pemrosesan SageMaker Clarify mendukung SHAP algoritma Kernel.
shap
Objek memiliki parameter berikut.-
baseline — (Opsional) Dataset SHAP dasar, juga dikenal sebagai dataset latar belakang. Persyaratan tambahan untuk kumpulan data dasar dalam kumpulan data tabular atau masalah penglihatan komputer adalah sebagai berikut. Untuk informasi lebih lanjut tentang SHAP Baseline, lihat SHAPBaseline untuk Keterjelasan
-
Untuk kumpulan data tabular,
baseline
dapat berupa data dasar di tempat atau URI S3 dari file dasar. Jika tidakbaseline
disediakan, pekerjaan pemrosesan SageMaker Clarify menghitung baseline dengan mengelompokkan kumpulan data input. Berikut ini diperlukan dari baseline:-
Formatnya harus sama dengan format kumpulan data yang ditentukan oleh
dataset_type
. -
Garis dasar hanya dapat berisi fitur yang dapat diterima model sebagai input.
-
Dataset dasar dapat memiliki satu atau lebih instance. Jumlah instance dasar secara langsung memengaruhi ukuran kumpulan data sintetis dan runtime pekerjaan.
-
Jika
text_config
ditentukan, maka nilai dasar kolom teks adalah string yang digunakan untuk menggantikan unit teks yang ditentukan oleh.granularity
Misalnya, satu placeholder umum adalah “[MASK]”, yang digunakan untuk mewakili kata atau potongan teks yang hilang atau tidak dikenal.
Contoh berikut menunjukkan cara mengatur data dasar di tempat untuk parameter yang berbeda:
dataset_type
-
Jika
dataset_type
salah satutext/csv
atauapplication/x-parquet
, model menerima empat fitur numerik, dan baseline memiliki dua contoh. Dalam contoh ini, jika satu catatan memiliki semua nilai fitur nol dan catatan lainnya memiliki semua satu nilai fitur, maka baseline harus diatur ke[[0,0,0,0],[1,1,1,1]]
, tanpa header apa pun. -
Jika
dataset_type
yaapplication/jsonlines
, danfeatures
merupakan kunci untuk daftar empat nilai fitur numerik. Selain itu, dalam contoh ini, jika baseline memiliki satu catatan dari semua nilai nol, makabaseline
seharusnya.[{"features":[0,0,0,0]}]
-
Jika
dataset_type
yaapplication/json
,baseline
dataset harus memiliki struktur dan format yang sama dengan dataset input.
-
-
Untuk masalah penglihatan komputer,
baseline
bisa menjadi S3 URI gambar yang digunakan untuk menutupi fitur (segmen) dari gambar input. Pekerjaan pemrosesan SageMaker Clarify memuat gambar topeng dan mengubah ukurannya ke resolusi yang sama dengan gambar input. Jika baseline tidak disediakan, tugas pemrosesan SageMaker Clarify menghasilkan gambar topeng white noisepada resolusi yang sama dengan gambar input.
-
-
features_to_explain — (Opsional) Sebuah array string atau indeks berbasis nol dari kolom fitur untuk menghitung nilai untuk. SHAP Jika tidak
features_to_explain
disediakan, SHAP nilai dihitung untuk semua kolom fitur. Kolom fitur ini tidak dapat menyertakan kolom label atau kolom label yang diprediksi.features_to_explain
Parameter ini hanya didukung untuk kumpulan data tabular dengan kolom numerik dan kategoris. -
num_clusters — (Opsional) Jumlah cluster yang kumpulan data dibagi menjadi untuk menghitung dataset dasar. Setiap cluster digunakan untuk menghitung satu instance dasar. Jika tidak
baseline
ditentukan, pekerjaan pemrosesan SageMaker Clarify mencoba untuk menghitung kumpulan data dasar dengan membagi kumpulan data tabular menjadi jumlah cluster yang optimal antara dan.1
12
Jumlah instance dasar secara langsung mempengaruhi runtime analisis. SHAP -
num_samples — (Opsional) Jumlah sampel yang akan digunakan dalam algoritma KernelSHAP. Jika tidak
num_samples
disediakan, pekerjaan pemrosesan SageMaker Clarify memilih nomor untuk Anda. Jumlah sampel secara langsung mempengaruhi ukuran dataset sintetis dan runtime pekerjaan. -
seed — (Opsional) Bilangan bulat yang digunakan untuk menginisialisasi generator bilangan acak semu di SHAP penjelasan untuk menghasilkan SHAP nilai yang konsisten untuk pekerjaan yang sama. Jika seed tidak ditentukan, maka setiap kali pekerjaan yang sama berjalan, model dapat menampilkan SHAP nilai yang sedikit berbeda.
-
use_logit — (Opsional) Nilai Boolean yang menunjukkan bahwa Anda ingin fungsi logit diterapkan pada prediksi model. Default ke
false
. Jikause_logit
yatrue
, maka SHAP nilainya dihitung menggunakan koefisien regresi logistik, yang dapat diartikan sebagai rasio log-odds. -
save_local_shap_values — (Opsional) Nilai Boolean yang menunjukkan bahwa Anda ingin SHAP nilai lokal dari setiap catatan dalam kumpulan data dimasukkan dalam hasil analisis. Default ke
false
.Jika kumpulan data utama dibagi menjadi beberapa file atau pemrosesan terdistribusi diaktifkan, tentukan juga kolom pengidentifikasi menggunakan parameter.
joinsource_name_or_index
Kolom pengidentifikasi dan SHAP nilai lokal disimpan dalam hasil analisis. Dengan cara ini, Anda dapat memetakan setiap catatan ke SHAP nilai lokalnya. -
agg_method — (Opsional) Metode yang digunakan untuk menggabungkan SHAP nilai lokal (SHAPnilai untuk setiap instance) dari semua instance ke SHAP nilai global (nilai untuk seluruh datasetSHAP). Default ke
mean_abs
. Metode berikut dapat digunakan untuk mengumpulkan SHAP nilai.-
mean_abs — Rata-rata SHAP nilai lokal absolut dari semua instance.
-
mean_sq — Rata-rata SHAP nilai lokal kuadrat dari semua instance.
-
median — Median SHAP nilai lokal dari semua contoh.
-
-
text_config - Diperlukan untuk penjelasan pemrosesan bahasa alami. Sertakan konfigurasi ini jika Anda ingin memperlakukan kolom teks sebagai teks dan penjelasan harus disediakan untuk masing-masing unit teks. Untuk contoh konfigurasi analisis untuk penjelasan pemrosesan bahasa alami, lihat Konfigurasi analisis untuk penjelasan pemrosesan bahasa alami
-
granularitas — Satuan granularitas untuk analisis kolom teks. Nilai yang valid adalah
token
,sentence
, atauparagraph
. Setiap unit teks dianggap sebagai fitur, dan SHAP nilai lokal dihitung untuk setiap unit. -
bahasa — Bahasa kolom teks. Nilai yang valid adalah
chinese
danish
,dutch
,english
french
,german
,greek
,italian
,japanese
,lithuanian
,multi-language
,norwegian bokmål
,polish
,portuguese
,romanian
,russian
,spanish
,afrikaans
albanian
,arabic
,armenian
,basque
,bengali
,bulgarian
,catalan
,croatian
,czech
,estonian
,finnish
,gujarati
,hebrew
,hindi
hungarian
,icelandic
,indonesian
,irish
,kannada
,kyrgyz
,latvian
,ligurian
,luxembourgish
macedonian
,malayalam
,marathi
nepali
,persian
,sanskrit
serbian
,setswana
,sinhala
slovak
,slovenian
swedish
,tagalog
,tamil
tatar
,telugu
,thai
turkish
,ukrainian
,urdu
vietnamese
,,yoruba
Masukkanmulti-language
untuk campuran beberapa bahasa. -
max_top_tokens — (Opsional) Jumlah maksimum token teratas, berdasarkan nilai global. SHAP Default ke
50
. Token dapat muncul beberapa kali dalam kumpulan data. Pekerjaan pemrosesan SageMaker Clarify mengumpulkan SHAP nilai setiap token, dan kemudian memilih token teratas berdasarkan nilai SHAP globalnya. SHAPNilai global dari token teratas yang dipilih disertakan dalamglobal_top_shap_text
bagian file analysis.json. -
SHAPNilai agregasi lokal.
-
-
image_config - Diperlukan untuk penjelasan visi komputer. Sertakan konfigurasi ini jika Anda memiliki kumpulan data input yang terdiri dari gambar dan Anda ingin menganalisisnya untuk dijelaskan dalam masalah penglihatan komputer.
-
model_type — Jenis model. Nilai yang valid meliputi:
-
IMAGE_CLASSIFICATION
untuk model klasifikasi gambar. -
OBJECT_DETECTION
untuk model deteksi objek.
-
-
max_objects — Berlaku hanya jika model_type adalah
OBJECT_DETECTION
. Jumlah maksimum objek, diurutkan berdasarkan skor kepercayaan, terdeteksi oleh model visi komputer. Setiap objek yang diberi peringkat lebih rendah dari max_objects teratas berdasarkan skor kepercayaan disaring. Default ke3
. -
context - Berlaku hanya jika model_type adalah.
OBJECT_DETECTION
Ini menunjukkan apakah area di sekitar kotak pembatas objek yang terdeteksi ditutupi oleh gambar dasar atau tidak. Nilai yang valid adalah0
untuk menutupi semuanya, atau1
untuk menutupi apa pun. Default ke 1. -
iou_threshold — Berlaku hanya jika
model_type
metrik persimpangan minimum di atas union (IOU) untuk mengevaluasi prediksi terhadap deteksi asli.OBJECT_DETECTION
IOUMetrik tinggi sesuai dengan tumpang tindih besar antara kotak deteksi kebenaran yang diprediksi dan ground. Default ke0.5
. -
num_segment — (Opsional) Sebuah integer yang menentukan perkiraan jumlah segmen yang akan diberi label dalam gambar input. Setiap segmen gambar dianggap sebagai fitur, dan SHAP nilai lokal dihitung untuk setiap segmen. Default ke
20
. -
segment_compactness — (Opsional) Bilangan bulat yang menentukan bentuk dan ukuran segmen gambar yang dihasilkan oleh metode scikit-image slic.
Default ke 5
.
-
-
-
pdp — Sertakan metode ini untuk menghitung plot ketergantungan paral ()PDPs. Untuk contoh konfigurasi analisis yang akan dihasilkanPDPs, lihat Hitung plot ketergantungan paral () PDPs
-
fitur - Wajib jika
shap
metode tidak diminta. Array nama fitur atau indeks untuk menghitung dan plot plotPDP. -
top_k_features - (Opsional) Menentukan jumlah fitur teratas yang digunakan untuk menghasilkan plot. PDP Jika tidak
features
disediakan, tetapishap
metode diminta, maka pekerjaan pemrosesan SageMaker Clarify memilih fitur teratas berdasarkan SHAP atribusi mereka. Default ke10
. -
grid_resolution — Jumlah bucket untuk membagi rentang nilai numerik menjadi. Ini menentukan granularitas grid untuk plot. PDP
-
-
asymmetric_shapley_value — Sertakan metode ini jika Anda ingin menghitung metrik penjelasan untuk model peramalan deret waktu. Pekerjaan pemrosesan SageMaker Clarify mendukung algoritma nilai Shapley asimetris. Nilai Shapley asimetris adalah varian dari nilai Shapley yang menjatuhkan aksioma simetri. Untuk informasi lebih lanjut, lihat Nilai Shapley asimetris: menggabungkan pengetahuan kausal
ke dalam penjelasan model-agnostik. Gunakan nilai-nilai ini untuk menentukan bagaimana fitur berkontribusi pada hasil peramalan. Nilai Shapley asimetris memperhitungkan dependensi temporal dari data deret waktu yang diambil oleh model peramalan sebagai input. Algoritma mencakup parameter berikut:
arah - Jenis yang tersedia adalah
chronological
,anti_chronological
, danbidirectional
. Struktur temporal dapat dinavigasi dalam urutan kronologis atau anti-kronologis atau keduanya. Penjelasan kronologis dibangun dengan menambahkan informasi secara berulang sejak langkah pertama dan seterusnya. Penjelasan anti-kronologis menambahkan informasi mulai dari langkah terakhir dan bergerak mundur. Urutan terakhir mungkin lebih tepat dengan adanya bias kebaruan, seperti untuk memperkirakan harga saham.granularitas — Penjelasan granularitas yang akan digunakan. Opsi granularitas yang tersedia ditampilkan sebagai berikut:
timewise —
timewise
penjelasan tidak mahal dan memberikan informasi tentang langkah-langkah waktu tertentu saja, seperti mencari tahu seberapa banyak informasi dari hari ke-n di masa lalu berkontribusi pada peramalan hari ke-m di masa depan. Atribusi yang dihasilkan tidak menjelaskan kovariat statis secara individual dan tidak membedakan antara target dan deret waktu terkait.fine_grained —
fine_grained
penjelasan secara komputasi lebih intensif tetapi memberikan rincian lengkap dari semua atribusi variabel input. Metode ini menghitung perkiraan penjelasan untuk mengurangi runtime. Untuk informasi selengkapnya, lihat parameter berikutnum_samples
.catatan
fine_grained
penjelasan hanya mendukungchronological
pesanan.
num_samples — (Opsional) Argumen ini diperlukan untuk
fine_grained
penjelasan. Semakin tinggi angkanya, semakin tepat perkiraannya. Angka ini harus diskalakan dengan dimensi fitur input. Aturan praktisnya adalah mengatur variabel ini ke (1 + maks (jumlah deret waktu terkait, jumlah kovariat statis)) ^2 jika hasilnya tidak terlalu besar.baseline — (Opsional) Konfigurasi dasar untuk mengganti out-of-coalition nilai untuk kumpulan data yang sesuai (juga dikenal sebagai data latar belakang). Cuplikan berikut menunjukkan contoh konfigurasi dasar:
{ "related_time_series": "zero", "static_covariates": {
<item_id_1>
: [0, 2],<item_id_2>
: [-1, 1] }, "target_time_series": "zero" }Untuk data temporal seperti deret waktu target atau deret waktu terkait, jenis nilai dasar dapat berupa salah satu dari nilai berikut:
zero
— Semua out-of-coalition nilai diganti dengan 0.0.mean
— Semua out-of-coalition nilai diganti dengan rata-rata deret waktu.
Untuk kovariat statis, entri dasar hanya boleh diberikan ketika permintaan model mengambil nilai kovariat statis, dalam hal ini bidang ini diperlukan. Garis dasar harus disediakan untuk setiap item sebagai daftar. Misalnya, jika Anda memiliki kumpulan data dengan dua kovariat statis, konfigurasi dasar Anda mungkin sebagai berikut:
"static_covariates": {
<item_id_1>
: [1, 1],<item_id_2>
: [0, 1] }Dalam contoh sebelumnya,
<item_id_1>
and<item_id_2>
adalah id item dari kumpulan data.
-
report — (Opsional) Gunakan objek ini untuk menyesuaikan laporan analisis. Parameter ini tidak didukung untuk pekerjaan penjelasan deret waktu. Ada tiga salinan laporan yang sama sebagai bagian dari hasil analisis: laporan, laporan, HTML dan PDF laporan Notebook Jupyter. Objek memiliki parameter berikut:
-
nama — Nama file dari file laporan. Misalnya, jika
name
yaMyReport
, maka file laporan adalahMyReport.ipynb
,MyReport.html
, danMyReport.pdf
. Default kereport
. -
title - (Opsional) String judul untuk laporan. Default ke
SageMaker Analysis Report
.
-
-
-
prediktor — Diperlukan jika analisis membutuhkan prediksi dari model. Misalnya, ketika
shap
,asymmetric_shapley_value
, ataupost_training_bias
metode dimintapdp
, tetapi label yang diprediksi tidak disediakan sebagai bagian dari kumpulan data input. Berikut ini adalah parameter yang akan digunakan bersama denganpredictor
:-
model_name — Nama SageMaker model Anda yang dibuat oleh. CreateModelAPI Jika Anda menentukan
model_name
alih-alih endpoint_name, pekerjaan pemrosesan SageMaker Clarify membuat titik akhir singkat dengan nama model, yang dikenal sebagai titik akhir bayangan, dan mendapatkan prediksi dari titik akhir. Pekerjaan menghapus titik akhir bayangan setelah perhitungan selesai. Jika modelnya multi-model, makatarget_model
parameter harus ditentukan. Untuk informasi selengkapnya tentang titik akhir multi-model, lihat. Titik akhir multi-model -
endpoint_name_prefix — (Opsional) Sebuah awalan nama kustom untuk titik akhir bayangan. Berlaku jika Anda memberikan
model_name
alih-alihendpoint_name
. Misalnya, berikanendpoint_name_prefix
jika Anda ingin membatasi akses ke titik akhir dengan nama titik akhir. Awalan harus sesuai dengan EndpointNamepola, dan panjang maksimumnya adalah23
. Default kesm-clarify
. -
initial_instance_count - Menentukan jumlah contoh untuk titik akhir bayangan. Diperlukan jika Anda memberikan model_name alih-alih endpoint_name. Nilai untuk
initial_instance_count
bisa berbeda dari pekerjaan, tetapi kami merekomendasikan rasio 1:1. InstanceCount -
instance_type - Menentukan jenis contoh untuk titik akhir bayangan. Diperlukan jika Anda memberikan
model_name
alih-alihendpoint_name
. Sebagai contoh,instance_type
dapat diatur ke “ml.m5.large”. Dalam beberapa kasus, nilai yang ditentukan untukinstance_type
dapat membantu mengurangi waktu inferensi model. Misalnya, untuk berjalan secara efisien, model pemrosesan bahasa alami dan model visi komputer biasanya memerlukan tipe instance unit pemrosesan grafis (GPU). -
endpoint_name — Nama SageMaker endpoint Anda yang dibuat oleh. CreateEndpointAPI Jika disediakan, lebih
endpoint_name
diutamakan daripada parameter.model_name
Menggunakan titik akhir yang ada mengurangi waktu bootstrap titik akhir bayangan, tetapi juga dapat menyebabkan peningkatan beban yang signifikan untuk titik akhir tersebut. Selain itu, beberapa metode analisis (sepertishap
danpdp
) menghasilkan dataset sintetis yang dikirim ke titik akhir. Hal ini dapat menyebabkan metrik titik akhir atau data yang diambil terkontaminasi oleh data sintetis, yang mungkin tidak secara akurat mencerminkan penggunaan dunia nyata. Untuk alasan ini, umumnya tidak disarankan untuk menggunakan titik akhir produksi yang ada untuk analisis SageMaker Clarify. -
target_model — Nilai string yang diteruskan ke TargetModel parameter. SageMaker InvokeEndpointAPI Diperlukan jika model Anda (ditentukan oleh parameter model_name) atau titik akhir (ditentukan oleh parameter endpoint_name) adalah multi-model. Untuk informasi selengkapnya tentang titik akhir multi-model, lihat. Titik akhir multi-model
-
custom_attributes — (Opsional) String yang memungkinkan Anda memberikan informasi tambahan tentang permintaan inferensi yang dikirimkan ke titik akhir. Nilai string dilewatkan ke
CustomAttributes
parameter SageMaker InvokeEndpointAPI. -
content_type — content_type — Format input model yang akan digunakan untuk mendapatkan prediksi dari titik akhir. Jika disediakan, itu diteruskan ke
ContentType
parameter SageMaker InvokeEndpointAPI.-
Untuk penjelasan visi komputer, nilai yang valid adalah
image/jpeg
,image/png
atau.application/x-npy
Jika tidakcontent_type
disediakan, nilai defaultnya adalahimage/jpeg
. Untuk penjelasan peramalan deret waktu, nilai yang valid adalah.
application/json
-
Untuk jenis penjelasan lainnya, nilai yang valid adalah
text/csv
,application/jsonlines,
dan.application/json
Nilai untukcontent_type
diperlukan jikadataset_type
adaapplication/x-parquet
. Jika tidakcontent_type
default ke nilai parameter.dataset_type
-
-
accept_type — Format keluaran model yang akan digunakan untuk mendapatkan prediksi dari titik akhir. Nilai untuk
accept_type
dilewatkan keAccept
parameter SageMaker InvokeEndpointAPI.-
Untuk penjelasan visi komputer, jika
model_type
adalah "OBJECT_DETECTION" makaaccept_type
defaultnya ke.application/json
Untuk penjelasan peramalan deret waktu, nilai yang valid adalah.
application/json
-
Untuk jenis penjelasan lainnya, nilai yang valid adalah
text/csv
,application/jsonlines
, dan.application/json
Jika nilai untuk tidakaccept_type
disediakan,accept_type
default ke nilai parameter.content_type
-
-
content_template — String template yang digunakan untuk membangun input model dari catatan dataset. Parameter hanya
content_template
digunakan dan diperlukan jika nilaicontent_type
parameternya salah satuapplication/jsonlines
atauapplication/json
.Ketika
content_type
parameternyaapplication/jsonlines
, template seharusnya hanya memiliki satu placeholder$features
, yang digantikan oleh daftar fitur saat runtime. Misalnya, jika template adalah"{\"myfeatures\":$features}"
, dan jika catatan memiliki tiga nilai fitur numerik:1
,2
dan3
, maka catatan akan dikirim ke model sebagai JSON Line{"myfeatures":[1,2,3]}
.Ketika
content_type
adaapplication/json
, template dapat memiliki placeholder$record
atau.records
Jika placeholder adalahrecord
, satu record diganti dengan record yang memiliki template yangrecord_template
diterapkan padanya. Dalam hal ini, hanya satu catatan yang akan dikirim ke model sekaligus. Jika placeholder adalah$records
, catatan diganti dengan daftar catatan, masing-masing dengan template yang disediakan oleh.record_template
-
record_template - String template yang akan digunakan untuk membangun setiap catatan input model dari instance dataset. Ini hanya digunakan dan diperlukan kapan
content_type
sajaapplication/json
. String template mungkin berisi salah satu dari berikut ini:-
$features
Parameter placeholder yang digantikan oleh array nilai fitur. Placeholder opsional tambahan dapat menggantikan nama header kolom fitur di.$feature_names
Placeholder opsional ini akan diganti dengan array nama fitur. -
Tepat satu placeholder
$features_kvp
yang digantikan oleh pasangan kunci-nilai, nama fitur dan nilai fitur. -
Fitur dalam
headers
konfigurasi. Sebagai contoh, namaA
fitur, yang dinotasikan oleh sintaks placeholder"${A}"
akan diganti dengan nilai fitur untuk.A
Nilai untuk
record_template
digunakan dengancontent_template
untuk membangun input model. Contoh konfigurasi yang menunjukkan cara membuat input model menggunakan konten dan merekam template berikut.Dalam contoh kode berikut, header dan fitur didefinisikan sebagai berikut.
-
`headers`:["A", "B"]
-
`features`:[[0,1], [3,4]]
Contoh masukan model adalah sebagai berikut.
{ "instances": [[0, 1], [3, 4]], "feature_names": ["A", "B"] }
Contoh
content_template
dan nilairecord_template
parameter untuk membangun contoh masukan model sebelumnya berikut.-
content_template: "{\"instances\": $records, \"feature_names\": $feature_names}"
-
record_template: "$features"
Dalam contoh kode berikut, header dan fitur didefinisikan sebagai berikut.
[ { "A": 0, "B": 1 }, { "A": 3, "B": 4 }, ]
Contoh
content_template
dan nilairecord_template
parameter untuk membangun contoh masukan model sebelumnya berikut.-
content_template: "$records"
-
record_template: "$features_kvp"
Contoh kode alternatif untuk membangun contoh masukan model sebelumnya berikut.
-
content_template: "$records"
-
record_template: "{\"A\": \"${A}\", \"B\": \"${B}\"}"
Dalam contoh kode berikut, header dan fitur didefinisikan sebagai berikut.
{ "A": 0, "B": 1 }
Contoh parameter content_template dan record_template nilai untuk membangun di atas: contoh masukan model sebelumnya berikut.
-
content_template: "$record"
-
record_template: "$features_kvp"
Untuk contoh lainnya, lihat Permintaan titik akhir untuk data deret waktu.
-
-
label — (Opsional) Indeks bilangan bulat berbasis nol atau string JMESPath ekspresi yang digunakan untuk mengekstrak label yang diprediksi dari keluaran model untuk analisis bias. Jika modelnya multiclass dan
label
parameter mengekstrak semua label yang diprediksi dari output model, maka berikut ini berlaku. Fitur ini tidak didukung untuk deret waktu.-
probability
Parameter diperlukan untuk mendapatkan probabilitas (atau skor) yang sesuai dari output model. -
Label prediksi skor tertinggi dipilih.
Nilai untuk
label
tergantung pada nilai parameter accept_type sebagai berikut.-
Jika
accept_type
yatext/csv
, makalabel
adalah indeks dari setiap label yang diprediksi dalam output model. -
Jika
accept_type
adalahapplication/jsonlines
atauapplication/json
, makalabel
adalah JMESPath ekspresi yang diterapkan pada output model untuk mendapatkan label yang diprediksi.
-
-
label_headers — (Opsional) Sebuah array nilai yang label dapat mengambil dalam dataset. Jika analisis bias diminta, maka
probability
parameter juga diperlukan untuk mendapatkan nilai probabilitas (skor) yang sesuai dari output model, dan label prediksi dari skor tertinggi dipilih. Jika analisis penjelasan diminta, header label digunakan untuk mempercantik laporan analisis. Nilai untuklabel_headers
diperlukan untuk penjelasan visi komputer. Misalnya, untuk masalah klasifikasi multiclass, jika label memiliki tiga nilai yang mungkin,,, danbird
cat
dog
, makalabel_headers
harus disetel ke.["bird","cat","dog"]
-
probabilitas — (Opsional) Indeks bilangan bulat berbasis nol atau string JMESPath ekspresi yang digunakan untuk mengekstrak probabilitas (skor) untuk analisis penjelasan (tetapi tidak untuk penjelasan deret waktu), atau untuk memilih label yang diprediksi untuk analisis bias. Nilai
probability
tergantung pada nilaiaccept_type
parameter sebagai berikut.-
Jika ya
text/csv
,accept_type
probability
adalah indeks probabilitas (skor) dalam output model. Jika tidakprobability
disediakan, seluruh output model diambil sebagai probabilitas (skor). -
Jika
accept_type
adalah JSON data (salah satuapplication/jsonlines
atauapplication/json
),probability
harus berupa JMESPath ekspresi yang digunakan untuk mengekstrak probabilitas (skor) dari output model.
-
-
time_series_predictor_config - (Opsional) Digunakan hanya untuk penjelasan deret waktu. Digunakan untuk menginstruksikan prosesor SageMaker Clarify cara mengurai data dengan benar dari data yang diteruskan sebagai URI S3 in.
dataset_uri
forecast — JMESPath Ekspresi yang digunakan untuk mengekstrak hasil perkiraan.
-
Contoh file konfigurasi analisis
Bagian berikut berisi contoh file konfigurasi analisis untuk data dalam CSV format, format JSON Garis, dan untuk pemrosesan bahasa alami (NLP), visi komputer (CV), dan penjelasan deret waktu (TS).
Contoh berikut menunjukkan cara mengkonfigurasi bias dan analisis penjelasan untuk dataset tabel dalam format. CSV Dalam contoh ini, dataset yang masuk memiliki empat kolom fitur, dan satu kolom label biner,. Target
Isi dataset adalah sebagai berikut. Nilai label 1
menunjukkan hasil positif. Dataset disediakan untuk pekerjaan SageMaker Clarify dengan input dataset
pemrosesan.
"Target","Age","Gender","Income","Occupation" 0,25,0,2850,2 1,36,0,6585,0 1,22,1,1759,1 0,48,0,3446,1 ...
Bagian berikut menunjukkan cara menghitung metrik bias pra-pelatihan dan pasca-pelatihan, SHAP nilai, dan plot ketergantungan sebagian (PDPs) yang menunjukkan pentingnya fitur untuk kumpulan data dalam format. CSV
Hitung semua metrik bias pra-pelatihan
Contoh konfigurasi ini menunjukkan cara mengukur apakah kumpulan data sampel sebelumnya bias terhadap sampel dengan Gender
nilai. 0
Konfigurasi analisis berikut menginstruksikan pekerjaan pemrosesan SageMaker Clarify untuk menghitung semua metrik bias pra-pelatihan untuk kumpulan data.
{ "dataset_type": "text/csv", "label": "Target", "label_values_or_threshold": [1], "facet": [ { "name_or_index": "Gender", "value_or_threshold": [0] } ], "methods": { "pre_training_bias": { "methods": "all" } } }
Hitung semua metrik bias pasca-pelatihan
Anda dapat menghitung metrik bias pra-pelatihan sebelum pelatihan. Namun, Anda harus memiliki model terlatih untuk menghitung metrik bias pasca-pelatihan. Contoh output berikut adalah dari model klasifikasi biner yang mengeluarkan data dalam CSV format. Dalam contoh output ini, setiap baris berisi dua kolom. Kolom pertama berisi label yang diprediksi, dan kolom kedua berisi nilai probabilitas untuk label tersebut.
0,0.028986845165491 1,0.825382471084594 ...
Contoh konfigurasi berikut menginstruksikan pekerjaan pemrosesan SageMaker Clarify untuk menghitung semua metrik bias yang mungkin menggunakan kumpulan data dan prediksi dari keluaran model. Dalam contoh, model diterapkan ke titik SageMaker akhiryour_endpoint
.
catatan
Dalam contoh kode berikut, parameter content_type
dan tidak accept_type
diatur. Oleh karena itu, mereka secara otomatis menggunakan nilai parameter dataset_type, yaitu. text/csv
{ "dataset_type": "
text/csv
", "label": "Target
", "label_values_or_threshold":[1]
, "facet": [ { "name_or_index": "Gender
", "value_or_threshold":[0]
} ], "methods": { "pre_training_bias": { "methods": "all
" }, "post_training_bias": { "methods": "all
" } }, "predictor": { "endpoint_name": "your_endpoint
", "label":0
} }
Hitung nilainya SHAP
Contoh konfigurasi analisis berikut menginstruksikan pekerjaan untuk menghitung SHAP nilai yang menunjuk Target
kolom sebagai label dan semua kolom lainnya sebagai fitur.
{ "dataset_type": "
text/csv
", "label": "Target
", "methods": { "shap": { "num_clusters":1
} }, "predictor": { "endpoint_name": "your_endpoint
", "probability":1
} }
Dalam contoh ini, SHAP baseline
parameter dihilangkan dan nilai num_clusters
parameternya. 1
Ini menginstruksikan prosesor SageMaker Clarify untuk menghitung satu sampel SHAP dasar. Dalam contoh ini, probabilitas diatur ke1
. Ini menginstruksikan pekerjaan pemrosesan SageMaker Clarify untuk mengekstrak skor probabilitas dari kolom kedua dari output model (menggunakan pengindeksan berbasis nol).
Hitung plot ketergantungan paral () PDPs
Contoh berikut menunjukkan bagaimana melihat pentingnya Income
fitur pada laporan analisis menggunakanPDPs. Parameter laporan menginstruksikan pekerjaan pemrosesan SageMaker Clarify untuk menghasilkan laporan. Setelah pekerjaan selesai, laporan yang dihasilkan disimpan sebagai report.pdf ke analysis_result
lokasi. grid_resolution
Parameter membagi rentang nilai fitur ke dalam 10
ember. Bersama-sama, parameter yang ditentukan dalam contoh berikut menginstruksikan pekerjaan pemrosesan SageMaker Clarify untuk menghasilkan laporan yang berisi PDP grafik Income
dengan 10
segmen pada sumbu x. Sumbu y akan menunjukkan dampak marjinal Income
pada prediksi.
{ "dataset_type": "text/csv", "label": "Target", "methods": { "pdp": { "features": ["
Income
"], "grid_resolution":10
}, "report": { "name": "report
" } }, "predictor": { "endpoint_name": "your_endpoint
", "probability":1
}, }
Hitung metrik bias dan kepentingan fitur
Anda dapat menggabungkan semua metode dari contoh konfigurasi sebelumnya ke dalam satu file konfigurasi analisis dan menghitung semuanya dengan satu pekerjaan. Contoh berikut menunjukkan konfigurasi analisis dengan semua langkah digabungkan.
Dalam contoh ini, probability
parameter diatur 1
untuk menunjukkan bahwa probabilitas terkandung dalam kolom kedua (menggunakan pengindeksan berbasis nol). Namun, karena analisis bias membutuhkan label yang diprediksi, probability_threshold
parameter diatur 0.5
untuk mengubah skor probabilitas menjadi label biner. Dalam contoh ini, top_k_features
parameter pdp
metode plot ketergantungan paral diatur ke2
. Ini SageMaker menginstruksikan pekerjaan pemrosesan Clarify untuk menghitung plot ketergantungan paral (PDPs) untuk 2
fitur teratas dengan nilai global terbesar. SHAP
{ "dataset_type": "text/csv", "label": "
Target
", "probability_threshold":0.5
, "label_values_or_threshold": [1
], "facet": [ { "name_or_index": "Gender
", "value_or_threshold": [0
] } ], "methods": { "pre_training_bias": { "methods": "all
" }, "post_training_bias": { "methods": "all
" }, "shap": { "num_clusters":1
}, "pdp": { "top_k_features":2
, "grid_resolution":10
}, "report": { "name": "report
" } }, "predictor": { "endpoint_name": "your_endpoint
", "probability":1
} }
Alih-alih menerapkan model ke titik akhir, Anda dapat memberikan nama SageMaker model Anda ke tugas pemrosesan SageMaker Clarify menggunakan parameter. model_name
Contoh berikut menunjukkan bagaimana menentukan model bernamayour_model
. Pekerjaan pemrosesan SageMaker Clarify akan membuat titik akhir bayangan menggunakan konfigurasi.
{ ... "predictor": { "model_name": "
your_model
", "initial_instance_count":1
, "instance_type": "ml.m5.large
", "probability":1
} }
Contoh berikut menunjukkan cara mengkonfigurasi analisis bias dan analisis eksplainabilitas untuk kumpulan data tabel dalam format Garis. JSON Dalam contoh ini, kumpulan data yang masuk memiliki data yang sama dengan bagian sebelumnya tetapi mereka berada dalam format padat SageMaker JSON Garis. Setiap baris adalah JSON objek yang valid. Kunci “Fitur” menunjuk ke array nilai fitur, dan kunci “Label” menunjuk ke label kebenaran dasar. Dataset disediakan untuk pekerjaan SageMaker Clarify dengan input pemrosesan “dataset”. Untuk informasi selengkapnya tentang JSON Garis, lihatJSONLINESformat permintaan.
{"Features":[25,0,2850,2],"Label":0} {"Features":[36,0,6585,0],"Label":1} {"Features":[22,1,1759,1],"Label":1} {"Features":[48,0,3446,1],"Label":0} ...
Bagian berikut menunjukkan cara menghitung metrik bias pra-pelatihan dan pasca-pelatihan, SHAP nilai, dan plot ketergantungan sebagian (PDPs) yang menunjukkan pentingnya fitur untuk kumpulan data dalam format Garis. JSON
Hitung metrik bias pra-pelatihan
Tentukan label, fitur, format, dan metode untuk mengukur metrik bias pra-pelatihan untuk Gender
nilai. 0
Dalam contoh berikut, headers
parameter memberikan nama fitur terlebih dahulu. Nama label diberikan terakhir. Menurut konvensi, header terakhir adalah header label.
features
Parameter diatur ke JMESPath ekspresi “Fitur” sehingga pekerjaan pemrosesan SageMaker Clarify dapat mengekstrak array fitur dari setiap catatan. label
Parameter diatur ke JMESPath ekspresi “Label” sehingga pekerjaan pemrosesan SageMaker Clarify dapat mengekstrak label kebenaran dasar dari setiap rekaman. Gunakan nama facet untuk menentukan atribut sensitif, sebagai berikut.
{ "dataset_type": "
application/jsonlines
", "headers": ["Age","Gender","Income","Occupation","Target"
], "label": "Label
", "features": "Features
", "label_values_or_threshold": [1
], "facet": [ { "name_or_index": "Gender
", "value_or_threshold": [0
] } ], "methods": { "pre_training_bias": { "methods": "all
" } } }
Hitung semua metrik bias
Anda harus memiliki model terlatih untuk menghitung metrik bias pasca-pelatihan. Contoh berikut adalah dari model klasifikasi biner yang mengeluarkan data JSON Lines dalam format contoh. Setiap baris output model adalah JSON objek yang valid. predicted_label
Poin kunci untuk label yang diprediksi, dan probability
poin-poin kunci untuk nilai probabilitas.
{"predicted_label":0,"probability":0.028986845165491} {"predicted_label":1,"probability":0.825382471084594} ...
Anda dapat menerapkan model ke SageMaker titik akhir bernama. your_endpoint
Contoh konfigurasi analisis berikut menginstruksikan pekerjaan pemrosesan SageMaker Clarify untuk menghitung semua metrik bias yang mungkin untuk kumpulan data dan model. Dalam contoh ini, parameter content_type
dan tidak accept_type
diatur. Oleh karena itu, mereka secara otomatis diatur untuk menggunakan nilai parameter dataset_type, yaitu. application/jsonlines
Pekerjaan pemrosesan SageMaker Clarify menggunakan content_template
parameter untuk menyusun input model, dengan mengganti $features
placeholder dengan array fitur.
{ "dataset_type": "
application/jsonlines
", "headers": ["Age","Gender","Income","Occupation","Target"
], "label": "Label
", "features": "Features
", "label_values_or_threshold": [1
], "facet": [ { "name_or_index": "Gender
", "value_or_threshold": [0
] } ], "methods": { "pre_training_bias": { "methods": "all
" }, "post_training_bias": { "methods": "all
" } }, "predictor": { "endpoint_name": "your_endpoint
", "content_template": "{\"Features\":$features
}", "label": "predicted_label
" } }
Hitung nilainya SHAP
Karena SHAP analisis tidak memerlukan label kebenaran dasar, label
parameternya dihilangkan. Dalam contoh ini, headers
parameter juga dihilangkan. Oleh karena itu, pekerjaan pemrosesan SageMaker Clarify harus menghasilkan placeholder menggunakan nama generik seperti column_0
atau column_1
untuk header fitur, dan label0
untuk header label. Anda dapat menentukan nilai untuk headers
dan label
untuk a untuk meningkatkan keterbacaan hasil analisis. Karena parameter probabilitas diatur ke JMESPath ekspresiprobability
, nilai probabilitas akan diekstraksi dari output model. Berikut ini adalah contoh untuk menghitung SHAP nilai.
{ "dataset_type": "
application/jsonlines
", "features": "Features
", "methods": { "shap": { "num_clusters
": 1 } }, "predictor": { "endpoint_name": "your_endpoint
", "content_template": "{\"Features\":$features}
", "probability": "probability
" } }
Hitung plot ketergantungan paral () PDPs
Contoh berikut menunjukkan bagaimana melihat pentingnya “Penghasilan” padaPDP. Dalam contoh ini, header fitur tidak disediakan. Oleh karena itu, features
parameter pdp
metode harus menggunakan indeks berbasis nol untuk merujuk ke lokasi kolom fitur. grid_resolution
Parameter membagi rentang nilai fitur ke dalam 10
ember. Bersama-sama, parameter dalam contoh menginstruksikan pekerjaan pemrosesan SageMaker Clarify untuk menghasilkan laporan yang berisi PDP grafik Income
dengan 10
segmen pada sumbu x. Sumbu y akan menunjukkan dampak marjinal Income
pada prediksi.
{ "dataset_type": "
application/jsonlines
", "features": "Features
", "methods": { "pdp": { "features": [2
], "grid_resolution":10
}, "report": { "name": "report
" } }, "predictor": { "endpoint_name": "your_endpoint
", "content_template": "{\"Features\":$features}
", "probability": "probability
" } }
Hitung metrik bias dan kepentingan fitur
Anda dapat menggabungkan semua metode sebelumnya ke dalam satu file konfigurasi analisis dan menghitung semuanya dengan satu pekerjaan. Contoh berikut menunjukkan konfigurasi analisis dengan semua langkah digabungkan. Dalam contoh ini, probability
parameter diatur. Tetapi karena analisis bias membutuhkan label yang diprediksi, probability_threshold
parameter diatur 0.5
untuk mengubah skor probabilitas menjadi label biner. Dalam contoh ini, top_k_features
parameter pdp
metode diatur ke2
. Ini menginstruksikan pekerjaan pemrosesan SageMaker Clarify PDPs untuk menghitung 2
fitur teratas dengan nilai global SHAP terbesar.
{ "dataset_type": "
application/jsonlines
", "headers": ["Age","Gender","Income","Occupation","Target"
], "label": "Label
", "features": "Features
", "probability_threshold":0.5
, "label_values_or_threshold": [1
], "facet": [ { "name_or_index": "Gender
", "value_or_threshold": [0
] } ], "methods": { "pre_training_bias": { "methods": "all
" }, "post_training_bias": { "methods": "all
" }, "shap": { "num_clusters":1
}, "pdp": { "top_k_features":2
, "grid_resolution":10
}, "report": { "name": "report
" } }, "predictor": { "endpoint_name": "your_endpoint
", "content_template": "{\"Features\":$features}
", "probability": "probability
" } }
Contoh berikut menunjukkan cara mengkonfigurasi bias dan analisis penjelasan untuk dataset tabel dalam format. JSON Dalam contoh ini, dataset yang masuk memiliki data yang sama dengan bagian sebelumnya tetapi mereka dalam format SageMaker JSON padat. Untuk informasi selengkapnya tentang JSON Garis, lihatJSONLINESformat permintaan.
Seluruh permintaan input valid JSON di mana struktur luar adalah daftar dan setiap elemen adalah data untuk catatan. Dalam setiap catatan, Features
poin kunci ke array nilai fitur, dan Label
poin-poin kunci ke label kebenaran dasar. Dataset disediakan untuk pekerjaan SageMaker Clarify dengan input dataset
pemrosesan.
[ {"Features":[25,0,2850,2],"Label":0}, {"Features":[36,0,6585,0],"Label":1}, {"Features":[22,1,1759,1],"Label":1}, {"Features":[48,0,3446,1],"Label":0}, ... ]
Bagian berikut menunjukkan cara menghitung metrik bias pra-pelatihan dan pasca-pelatihan, SHAP nilai, dan plot ketergantungan sebagian (PDPs) yang menunjukkan pentingnya fitur untuk kumpulan data dalam format Garis. JSON
Hitung metrik bias pra-pelatihan
Tentukan label, fitur, format, dan metode untuk mengukur metrik bias pra-pelatihan untuk Gender
nilai. 0
Dalam contoh berikut, headers
parameter memberikan nama fitur terlebih dahulu. Nama label diberikan terakhir. Untuk JSON dataset, header terakhir adalah header label.
features
Parameter diatur ke JMESPath ekspresi yang mengekstrak array atau matriks 2D. Setiap baris dalam matriks ini harus berisi daftar Features
untuk setiap catatan. label
Parameter diatur ke JMESPath ekspresi yang mengekstrak daftar label kebenaran dasar. Setiap elemen dalam daftar ini harus berisi label untuk catatan.
Gunakan nama facet untuk menentukan atribut sensitif, sebagai berikut.
{ "dataset_type": "application/json", "headers": ["Age","Gender","Income","Occupation","Target"], "label": "[*].Label", "features": "[*].Features", "label_values_or_threshold": [1], "facet": [ { "name_or_index": "Gender", "value_or_threshold": [0] } ], "methods": { "pre_training_bias": { "methods": "all" } } }
Hitung semua metrik bias
Anda harus memiliki model terlatih untuk menghitung metrik bias pasca-pelatihan. Contoh kode berikut adalah dari model klasifikasi biner yang mengeluarkan JSON data dalam format contoh. Dalam contoh, setiap elemen di bawah predictions
adalah output prediksi untuk catatan. Kode contoh berisi kuncipredicted_label
, yang menunjuk ke label yang diprediksi, dan probability
poin-poin kunci ke nilai probabilitas.
{ "predictions": [ {"predicted_label":0,"probability":0.028986845165491}, {"predicted_label":1,"probability":0.825382471084594}, ... ] }
Anda dapat menerapkan model ke SageMaker titik akhir bernama. your_endpoint
Dalam contoh berikut, parameter content_type
dan tidak accept_type
diatur. Oleh karena itu, content_type
dan accept_type
secara otomatis diatur untuk menggunakan nilai parameterdataset_type
, yaituapplication/json
. Pekerjaan pemrosesan SageMaker Clarify kemudian menggunakan content_template
parameter untuk menyusun input model.
Dalam contoh berikut, input model disusun dengan mengganti $records
placeholder dengan array catatan. Kemudian, record_template
parameter menyusun JSON struktur setiap record dan menggantikan $features
placeholder dengan array fitur masing-masing record.
Contoh konfigurasi analisis berikut menginstruksikan pekerjaan pemrosesan SageMaker Clarify untuk menghitung semua metrik bias yang mungkin untuk kumpulan data dan model.
{ "dataset_type": "application/json", "headers": ["Age","Gender","Income","Occupation","Target"], "label": "[*].Label", "features": "[*].Features", "label_values_or_threshold": [1], "facet": [ { "name_or_index": "Gender", "value_or_threshold": [0] } ], "methods": { "pre_training_bias": { "methods": "all" }, "post_training_bias": { "methods": "all" } }, "predictor": { "endpoint_name": "your_endpoint", "content_template": "$records", "record_template": "{\"Features\":$features}", "label": "predictions[*].predicted_label" } }
Hitung nilainya SHAP
Anda tidak perlu menentukan label untuk SHAP analisis. Dalam contoh berikut, headers
parameter tidak ditentukan. Oleh karena itu, pekerjaan pemrosesan SageMaker Clarify akan menghasilkan placeholder menggunakan nama generik seperti column_0
atau column_1
untuk header fitur, dan label0
untuk header label. Anda dapat menentukan nilai untuk headers
dan label
untuk a untuk meningkatkan keterbacaan hasil analisis.
Dalam contoh konfigurasi berikut, parameter probabilitas diatur ke JMESPath ekspresi yang mengekstrak probabilitas dari setiap prediksi untuk setiap catatan. Berikut ini adalah contoh untuk menghitung SHAP nilai.
{ "dataset_type": "application/json", "features": "[*].Features", "methods": { "shap": { "num_clusters": 1 } }, "predictor": { "endpoint_name": "your_endpoint", "content_template": "$records", "record_template": "{\"Features\":$features}", "probability": "predictions[*].probability" } }
Hitung plot ketergantungan paral () PDPs
Contoh berikut menunjukkan kepada Anda cara melihat kepentingan fitur diPDPs. Dalam contoh, header fitur tidak disediakan. Oleh karena itu, features
parameter pdp
metode harus menggunakan indeks berbasis nol untuk merujuk ke lokasi kolom fitur. grid_resolution
Parameter membagi rentang nilai fitur ke dalam 10
ember.
Bersama-sama, parameter dalam contoh berikut menginstruksikan pekerjaan pemrosesan SageMaker Clarify untuk menghasilkan laporan yang berisi PDP grafik Income
dengan 10
segmen pada sumbu x. Sumbu y menunjukkan dampak marjinal Income
pada prediksi.
Contoh konfigurasi berikut menunjukkan bagaimana melihat pentingnya Income
onPDPs.
{ "dataset_type": "application/json", "features": "[*].Features", "methods": { "pdp": { "features": [2], "grid_resolution": 10 }, "report": { "name": "report" } }, "predictor": { "endpoint_name": "your_endpoint", "content_template": "$records", "record_template": "{\"Features\":$features}", "probability": "predictions[*].probability" } }
Hitung metrik bias dan kepentingan fitur
Anda dapat menggabungkan semua metode konfigurasi sebelumnya ke dalam satu file konfigurasi analisis dan menghitung semuanya dengan satu pekerjaan. Contoh berikut menunjukkan konfigurasi analisis dengan semua langkah digabungkan.
Dalam contoh ini, probability
parameter diatur. Karena analisis bias membutuhkan label yang diprediksi, probability_threshold
parameter diatur ke0.5
, yang digunakan untuk mengubah skor probabilitas menjadi label biner. Dalam contoh ini, top_k_features
parameter pdp
metode diatur ke2
. Ini menginstruksikan pekerjaan pemrosesan SageMaker Clarify PDPs untuk menghitung 2
fitur teratas dengan nilai global SHAP terbesar.
{ "dataset_type": "application/json", "headers": ["Age","Gender","Income","Occupation","Target"], "label": "[*].Label", "features": "[*].Features", "probability_threshold": 0.5, "label_values_or_threshold": [1], "facet": [ { "name_or_index": "Gender", "value_or_threshold": [0] } ], "methods": { "pre_training_bias": { "methods": "all" }, "post_training_bias": { "methods": "all" }, "shap": { "num_clusters": 1 }, "pdp": { "top_k_features": 2, "grid_resolution": 10 }, "report": { "name": "report" } }, "predictor": { "endpoint_name": "your_endpoint", "content_template": "$records", "record_template": "{\"Features\":$features}", "probability": "predictions[*].probability" } }
Contoh berikut menunjukkan file konfigurasi analisis untuk pentingnya fitur komputasi untuk pemrosesan bahasa alami (NLP). Dalam contoh ini, kumpulan data yang masuk adalah kumpulan data tabular dalam CSV format, dengan satu kolom label biner dan dua kolom fitur, sebagai berikut. Dataset disediakan untuk pekerjaan SageMaker Clarify dengan parameter input dataset
pemrosesan.
0,2,"They taste gross" 1,3,"Flavor needs work" 1,5,"Taste is awful" 0,1,"The worst" ...
Dalam contoh ini, model klasifikasi biner dilatih pada dataset sebelumnya. Model menerima CSV data, dan menghasilkan skor tunggal antara 0
dan1
, sebagai berikut.
0.491656005382537 0.569582343101501 ...
Model ini digunakan untuk membuat SageMaker model bernama “your_model”. Konfigurasi analisis berikut menunjukkan cara menjalankan analisis penjelasan berdasarkan token menggunakan model dan dataset. text_config
Parameter mengaktifkan analisis NLP penjelasan. granularity
Parameter menunjukkan bahwa analisis harus mengurai token.
Dalam bahasa Inggris, setiap token adalah sebuah kata. Contoh berikut juga menunjukkan cara menyediakan instance SHAP “baseline” di tempat menggunakan rata-rata “Rating” 4. Token topeng khusus “[MASK]” digunakan untuk mengganti token (kata) di “Komentar”. Contoh ini juga menggunakan tipe instance GPU endpoint untuk mempercepat inferensi.
{ "dataset_type": "
text/csv
", "headers": ["Target","Rating","Comments"
] "label": "Target
", "methods": { "shap": { "text_config": { "granularity": "token
", "language": "english
" } "baseline": [[4,"[MASK]"
]], } }, "predictor": { "model_name": "your_nlp_model
", "initial_instance_count":1
, "instance_type": "ml.g4dn.xlarge
" } }
Contoh berikut menunjukkan analisis konfigurasi fitur komputasi file yang penting untuk visi komputer. Dalam contoh ini, dataset input terdiri dari JPEG gambar. Dataset disediakan untuk pekerjaan SageMaker Clarify dengan parameter input dataset
pemrosesan. Contoh menunjukkan cara mengkonfigurasi analisis penjelasan menggunakan model klasifikasi SageMaker gambar. Dalam contoh, model bernamayour_cv_ic_model
, telah dilatih untuk mengklasifikasikan hewan pada JPEG gambar input.
{ "dataset_type": "
application/x-image
", "methods": { "shap": { "image_config": { "model_type": "IMAGE_CLASSIFICATION
", "num_segments":20
, "segment_compactness":10
} }, "report": { "name": "report
" } }, "predictor": { "model_name": "your_cv_ic_model
", "initial_instance_count":1
, "instance_type": "ml.p2.xlarge
", "label_headers": ["bird","cat","dog"
] } }
Untuk informasi lebih lanjut tentang klasifikasi gambar, lihatKlasifikasi Gambar - MXNet.
Dalam contoh ini, model deteksi SageMaker objek, your_cv_od_model
dilatih pada JPEG gambar yang sama untuk mengidentifikasi hewan pada mereka. Contoh berikut menunjukkan cara mengkonfigurasi analisis penjelasan untuk model deteksi objek.
{ "dataset_type": "
application/x-image
", "probability_threshold":0.5
, "methods": { "shap
": { "image_config": { "model_type": "OBJECT_DETECTION
", "max_objects":3
, "context":1.0
, "iou_threshold":0.5
, "num_segments":20
, "segment_compactness":10
} }, "report": { "name": "report
" } }, "predictor": { "model_name": "your_cv_od_model
", "initial_instance_count":1
, "instance_type": "ml.p2.xlarge
", "label_headers": ["bird","cat","dog"
] } }
Contoh berikut menunjukkan file konfigurasi analisis untuk pentingnya fitur komputasi untuk deret waktu (TS). Dalam contoh ini, kumpulan data yang masuk adalah kumpulan data deret waktu dalam JSON format dengan serangkaian fitur kovariat dinamis dan statis. Dataset disediakan untuk pekerjaan SageMaker Clarify oleh parameter input pemrosesan dataset. dataset_uri
[ { "item_id": "item1", "timestamp": "2019-09-11", "target_value": 47650.3, "dynamic_feature_1": 0.4576, "dynamic_feature_2": 0.2164, "dynamic_feature_3": 0.1906, "static_feature_1": 3, "static_feature_2": 4 }, { "item_id": "item1", "timestamp": "2019-09-12", "target_value": 47380.3, "dynamic_feature_1": 0.4839, "dynamic_feature_2": 0.2274, "dynamic_feature_3": 0.1889, "static_feature_1": 3, "static_feature_2": 4 }, { "item_id": "item2", "timestamp": "2020-04-23", "target_value": 35601.4, "dynamic_feature_1": 0.5264, "dynamic_feature_2": 0.3838, "dynamic_feature_3": 0.4604, "static_feature_1": 1, "static_feature_2": 2 }, ]
Bagian berikut menjelaskan cara menghitung atribusi fitur untuk model peramalan dengan algoritme nilai Shapley asimetris untuk kumpulan data. JSON
Hitung penjelasan untuk model peramalan deret waktu
Contoh konfigurasi analisis berikut menampilkan opsi yang digunakan oleh pekerjaan untuk menghitung penjelasan untuk model peramalan deret waktu.
{ 'dataset_type': 'application/json', 'dataset_uri': 'DATASET_URI', 'methods': { 'asymmetric_shapley_value': { 'baseline': { "related_time_series": "zero", "static_covariates": { "item1": [0, 0], "item2": [0, 0] }, "target_time_series": "zero" }, 'direction': 'chronological', 'granularity': 'fine_grained', 'num_samples': 10 }, 'report': {'name': 'report', 'title': 'Analysis Report'} }, 'predictor': { 'accept_type': 'application/json', 'content_template': '{"instances": $records}', 'endpoint_name': 'ENDPOINT_NAME', 'content_type': 'application/json', 'record_template': '{ "start": $start_time, "target": $target_time_series, "dynamic_feat": $related_time_series, "cat": $static_covariates }', 'time_series_predictor_config': {'forecast': 'predictions[*].mean[:2]'} }, 'time_series_data_config': { 'dataset_format': 'timestamp_records', 'item_id': '[].item_id', 'related_time_series': ['[].dynamic_feature_1', '[].dynamic_feature_2', '[].dynamic_feature_3'], 'static_covariates': ['[].static_feature_1', '[].static_feature_2'], 'target_time_series': '[].target_value', 'timestamp': '[].timestamp' } }
Konfigurasi penjelasan deret waktu
Contoh sebelumnya digunakan asymmetric_shapley_value
methods
untuk mendefinisikan argumen penjelasan deret waktu seperti baseline, arah, granularitas, dan jumlah sampel. Nilai dasar ditetapkan untuk ketiga jenis data: deret waktu terkait, kovariat statis, dan deret waktu target. Bidang ini menginstruksikan prosesor SageMaker Clarify untuk menghitung atribusi fitur untuk satu item pada satu waktu.
Konfigurasi prediktor
Anda dapat sepenuhnya mengontrol struktur payload yang dikirimkan prosesor SageMaker Clarify menggunakan JMESPath sintaks. Dalam contoh sebelumnya, predictor
konfigurasi menginstruksikan Clarify untuk menggabungkan catatan ke dalam'{"instances": $records}'
, di mana setiap record didefinisikan dengan argumen yang diberikan dalam contoh. record_template
Perhatikan bahwa$start_time
,, $target_time_series
$related_time_series
, dan $static_covariates
merupakan token internal yang digunakan untuk memetakan nilai kumpulan data ke nilai permintaan titik akhir.
Demikian pula, atribut forecast
di time_series_predictor_config
digunakan untuk mengekstrak perkiraan model dari respons titik akhir. Misalnya, respons batch titik akhir Anda mungkin sebagai berikut:
{ "predictions": [ {"mean": [13.4, 3.6, 1.0]}, {"mean": [23.0, 4.7, 3.0]}, {"mean": [3.4, 5.6, 2.0]} ] }
Misalkan Anda menentukan konfigurasi prediktor deret waktu berikut:
'time_series_predictor_config': {'forecast': 'predictions[*].mean[:2]'}
Nilai perkiraan diuraikan sebagai berikut:
[ [13.4, 3.6], [23.0, 4.7], [3.4, 5.6] ]
Konfigurasi data
Gunakan time_series_data_config
atribut untuk menginstruksikan prosesor SageMaker Clarify untuk mengurai data dengan benar dari data yang diteruskan sebagai URI S3 in. dataset_uri