Buat Bias Drift Baseline - Amazon SageMaker

Terjemahan disediakan oleh mesin penerjemah. Jika konten terjemahan yang diberikan bertentangan dengan versi bahasa Inggris aslinya, utamakan versi bahasa Inggris.

Buat Bias Drift Baseline

Setelah Anda mengonfigurasi aplikasi untuk menangkap data inferensi transformasi real-time atau batch, tugas pertama untuk memantau penyimpangan bias adalah membuat baseline. Ini melibatkan konfigurasi input data, grup mana yang sensitif, bagaimana prediksi ditangkap, dan model serta metrik bias pasca-pelatihannya. Maka Anda perlu memulai pekerjaan baselining.

Monitor bias model dapat mendeteksi penyimpangan bias model ML secara teratur. Mirip dengan jenis pemantauan lainnya, prosedur standar untuk membuat monitor bias model adalah baselining pertama dan kemudian menetapkan jadwal pemantauan.

model_bias_monitor = ModelBiasMonitor( role=role, sagemaker_session=sagemaker_session, max_runtime_in_seconds=1800, )

DataConfigmenyimpan informasi tentang dataset yang akan dianalisis (misalnya, file dataset), formatnya (yaitu, CSV atau JSON Garis), header (jika ada) dan label.

model_bias_baselining_job_result_uri = f"{baseline_results_uri}/model_bias" model_bias_data_config = DataConfig( s3_data_input_path=validation_dataset, s3_output_path=model_bias_baselining_job_result_uri, label=label_header, headers=all_headers, dataset_type=dataset_type, )

BiasConfigadalah konfigurasi grup sensitif dalam kumpulan data. Biasanya, bias diukur dengan menghitung metrik dan membandingkannya di seluruh kelompok. Kelompok yang diminati disebut facet. Untuk bias pasca-pelatihan, Anda juga harus mempertimbangkan label positif.

model_bias_config = BiasConfig( label_values_or_threshold=[1], facet_name="Account Length", facet_values_or_threshold=[100], )

ModelPredictedLabelConfigmenentukan cara mengekstrak label yang diprediksi dari output model. Dalam contoh ini, cutoff 0.8 telah dipilih untuk mengantisipasi bahwa pelanggan akan sering berbalik. Untuk output yang lebih rumit, ada beberapa opsi lagi, seperti “label” adalah indeks, nama, atau JMESPath untuk menemukan label yang diprediksi di payload respons titik akhir.

model_predicted_label_config = ModelPredictedLabelConfig( probability_threshold=0.8, )

ModelConfigadalah konfigurasi yang terkait dengan model yang akan digunakan untuk inferensi. Untuk menghitung metrik bias pasca-pelatihan, perhitungan perlu mendapatkan kesimpulan untuk nama model yang diberikan. Untuk mencapai ini, pekerjaan pemrosesan menggunakan model untuk membuat titik akhir sementara (juga dikenal sebagai titik akhir bayangan). Pekerjaan pemrosesan menghapus titik akhir bayangan setelah perhitungan selesai. Konfigurasi ini juga digunakan oleh monitor penjelasan.

model_config = ModelConfig( model_name=model_name, instance_count=endpoint_instance_count, instance_type=endpoint_instance_type, content_type=dataset_type, accept_type=dataset_type, )

Sekarang Anda dapat memulai pekerjaan baselining.

model_bias_monitor.suggest_baseline( model_config=model_config, data_config=model_bias_data_config, bias_config=model_bias_config, model_predicted_label_config=model_predicted_label_config, ) print(f"ModelBiasMonitor baselining job: {model_bias_monitor.latest_baselining_job_name}")

Monitor terjadwal secara otomatis mengambil nama pekerjaan dasar dan menunggunya sebelum pemantauan dimulai.