mendeteksi outlier (dan mungkin secara opsional menghapus?)
Selimut yang menerapkan rel pelindung vs. model atau rel pelindung khusus masalah?
Saya menggunakan kembali epik ini untuk merujuk ke proyek Data Check API (sebelumnya dikenal sebagai "Guard Rails API").
@angela97lin , @kmax12 dan saya baru saja bertemu untuk membahas apa yang harus dilakukan dengan proyek ini. Kami memutuskan:
@ angela97lin Saya baru saja selesai membaca dokumen desain baru . Barang bagus! Ini terlihat luar biasa.
Saya meninggalkan beberapa komentar dan saran, tetapi dari sudut pandang saya, ini siap untuk diimplementasikan! Menyenangkan
Saya pikir begitu Anda memiliki kesempatan untuk meninjau komentar saya, langkah selanjutnya adalah membuat masalah untuk setiap tugas dalam rencana implementasi dan melampirkannya ke epik ini. Mari kita juga membersihkan masalah yang ada saat ini di epik ini. Sekilas saya pikir kita bisa memindahkannya ke lemari es atau menutupnya.
@ angela97lin dan saya baru saja meninjau dokumen desain baru sekali lagi dan menyelesaikan beberapa detail desain. Sama seperti sebelumnya: langkah selanjutnya adalah membuat masalah dan melampirkannya ke epik ini. Sangat keren!
Dari #509:
Kami tidak ingin orang menggunakan "mean"/"median" sebagai impute_strategy untuk tipe string. Mungkinkah lebih baik menambahkan semacam pemeriksaan data ke akun untuk ini?
Dari #504: pindahkan _check_multiclass ke pemeriksaan data :)
@ angela97lin dan saya baru saja meninjau desainnya lagi dan membuat beberapa penyesuaian terakhir. Kami memperbarui rencana implementasi (saat ini mencakup total 4 minggu) dan mengajukan masalah yang dilampirkan pada epik ini.
Proyek ini siap untuk diimplementasikan!
@ angela97lin akan memulai proyek ini pada hari Senin. Tanggal penyelesaian target kami adalah Senin, 25 Mei, tepat pada waktunya untuk rilis Mei 2020!
Kami juga membersihkan masalah lama pada epik ini. Beberapa di-boot ke kotak es sebagai fitur masa depan, dan yang lainnya (bug yang akan diperbaiki dengan pemeriksaan data) ditandai sebagai diblokir pada epik ini.
@ angela97lin dan saya baru saja membahas: kami tidak menyertakan dalam desain cara apa pun untuk mendapatkan hasil pemeriksaan data kepada pengguna yang menggunakan pencarian automl secara langsung (dengan python).
Kami membahas dua opsi untuk itu:
1) Minta AutoSearchBase.search
mengembalikan sesuatu seperti {'status': 'complete'}
, kemudian jika pemeriksaan data gagal, kami dapat menyertakan {'status': 'error', 'data_checks': [..]}
2) Minta AutoSearchBase.search
menyimpan hasil secara internal dan mengekspos pengambil latest_data_check_results
(tidak dimaksudkan sebagai nama akhir) untuk mendapatkannya. Kemudian ajukan pengecualian untuk memberi sinyal jelas bahwa ada masalah.
Kami lebih menyukai opsi kedua, jadi kami akan melakukannya. Rasanya lebih sesuai dengan pola desain kami yang ada dari a) pengecualian atas kode kesalahan dan b) memiliki objek AutoSearchBase
menjadi wadah untuk status daripada objek penggunaan satu kali.
Berikut beberapa kode yang kami tiru saat panggilan, dimaksudkan untuk masuk AutoSearchBase.search
tepat sebelum loop while
yang menjalankan pencarian sebenarnya:
data_check_results = checks.validate(X, y)
# option 1
if len(data_check_results) > 0:
logger.error('Data checks found problems')
return {'status': 'error', 'data_check_results': data_check_results}
# option 2
if len(data_check_results) > 0:
logger.error('Data checks found problems')
self._latest_data_check_results = data_check_results
raise SearchException('One or more data checks failed. Look at latest_data_check_results')
<strong i="20">@property</strong>
def latest_data_check_results(self):
return self._latest_data_check_results
@ angela97lin : rencana kami saat ini adalah melakukan rilis Mei seminggu dari hari ini. Apakah Anda pikir kami akan dapat menggabungkan #709 dan #370 tepat waktu untuk itu? Jika tidak, menurut Anda berapa lama waktu yang dibutuhkan? Kita dapat dengan mudah memasukkan #710 ke rilis berikutnya.
@angela97lin menggabungkan sebagian besar dari ini dalam rilis Mei! Satu-satunya masalah yang tersisa adalah #710. Jadi, menutup epik ini