Evalml: Integrasikan Tabel Data Woodwork ke EvalML

Dibuat pada 25 Sep 2020  ·  8Komentar  ·  Sumber: alteryx/evalml

Epic ini melacak semua masalah yang terkait dengan mengintegrasikan Woodwork DataTables ke dalam EvalML.

Catatan di sini: https://alteryx.quip.com/XedaAs9HXc9f/EvalML-Woodwork-Table-Integration
Dokumen desain di sini: https://alteryx.quip.com/Oa4aA6h0Rf2k/Woodwork-DataTable-Integration-Design-Document

Rencana implementasi:

  • Perbarui AutoML: 1 minggu

    • Perbarui AutoMLSearch untuk mendukung WW DataTables. Pertahankan dukungan untuk masukan panda.

    • AutoML masih akan meneruskan pandas DF ke pipeline/komponen

  • Tambahkan dokumentasi tentang jenis apa yang kami harapkan untuk disetel kategorikal, numerik, dan teks agar automl memperlakukan fitur dengan benar, serta memperingatkan pengguna apa yang mungkin terjadi jika pengguna meneruskan pandas DataFrames/array numpy. 2 hari

  • Perbarui saluran pipa dan semua komponen untuk menerima Tabel Data WW: 1 minggu

    • Dapat (dan harus) dilakukan dalam kelompok
  • Perbarui AutoML untuk meneruskan tabel data ke setiap pipeline/komponen alih-alih pandas DF. 1 hari
  • Perbarui komponen dari memilih menggunakan pandas dtypes hingga memilih menggunakan tipe logis DataTable sebagai gantinya. 3 hari
  • Perbarui dokumentasi untuk menggunakan DataTables di semua contoh. 2 hari
  • Perbarui semua metode grafik, metode util yang menerima data, untuk mendukung DataTables. 1 minggu

Total: 3 minggu 3 hari, kemudian 1 minggu lagi untuk membuat grafik/utils.

Tanggal Penting
Rilis Oktober adalah Sel 27 Oktober.

Sasaran
Selesaikan semua sebelum Jum 6 Nov (4 minggu). Kirim dalam rilis November.

Peregangan Tujuan
Semuanya kecuali grafik/utils dilakukan oleh rilis Oktober (27 Oktober).

epic

Semua 8 komentar

@ angela97lin : Saya pikir kita harus menjatuhkan tipe datatable baru yang awalnya tidak akan kita dukung. Kemudian kami dapat menambahkan dukungan untuk itu berdasarkan kasus per kasus. Jadi:

dt = ... # woodwork datatable as input to automl search, for example
numeric_features = dt.select('numeric')
categorical_features = dt.select('categorical')
natural_language_features = dt.select('natural_language')
# then, in order to drop unsupported types, from here on out, don't use
# the other features which may still be held in the original datatable

Contoh penting: kumpulan data penipuan menggunakan lat/long . Saat ini, ia melewati itu sebagai dua pelampung independen. Jangka pendek, kita harus turun saja. Saya kira kita bisa menyandikan ke dua pelampung independen, tapi saya ragu itu akan berkinerja baik. Dalam jangka panjang, kami ingin menggunakan primitif yang kompatibel dengan latlong featuretools untuk membangun fitur untuk jenis itu.

Masuk akal?

@freddyaboulton mengemukakan poin bagus hari ini: karena kami mengirimkan evalml pada conda, kami membutuhkan kayu untuk berada di conda sebelum kami dapat mengharapkan pengguna untuk menginstalnya. Itu membuat kami memiliki opsi berikut untuk melanjutkan:

  1. Cari tahu kapan kayu akan ditambahkan ke conda (dan/atau bantu mempercepatnya). Tahan semua gabungan kayu sampai saat itu. Karena kita perlu itu dilakukan untuk melepaskan kode yang bergantung pada kayu.
  2. Dalam jangka pendek, jadikan woodwork sebagai ketergantungan "opsional", artinya jika impor gagal, kami tidak mendukung tabel woodwork sebagai arg to automl search. Dalam jangka panjang, rasanya kikuk untuk melakukan ini untuk semua metode pipa/komponen fit / predict , terutama jika kita akan menambahkan kayu ke conda, jadi kita harus menghindari ini.
  3. Gabungkan dukungan kayu. Setiap instalasi conda evalml akan memiliki kesalahan impor. Hidup dengan ini sampai kayu ada di conda.
  4. Gabungkan dukungan kayu. Jangan lepaskan ke conda sampai woodwork berada di conda.

Saya penggemar opsi 1, yaitu memasang kayu ke conda, karena saya yakin itulah yang ingin kami lakukan dalam jangka panjang.

Saya melihat sudah ada masalah yang diajukan untuk menambahkan kayu ke conda. Saya akan menindaklanjuti.

@dsherry Terima kasih untuk ini! @gsheni menyebutkan di sini bahwa mereka kemungkinan akan memiliki pembaruan menjelang akhir minggu. Haruskah kita menunda penggabungan untuk rilis Oktober?

@ angela97lin ya, mengingat perilisannya dalam beberapa hari, dan Anda juga akan keluar sebentar, seharusnya tidak terlalu merepotkan untuk menunggu penggabungan sampai setelahnya.

Baru saja mengobrol dengan @angela97lin dan @freddyaboulton tentang peningkatan kayu. Inilah yang kami daftarkan sebagai yang saat ini beredar / dalam penerbangan:

  • Perbarui pemeriksaan data (sedang berlangsung)
  • Perbarui semua komponen untuk menggunakan jenis kayu jika ada (#1290)
  • Perbarui metode pemahaman model
  • Kembalikan woodwork alih-alih panda dari pipeline/component transform / predict , dan di mana pun kami mengembalikan salinan atau ekstensi data yang dimasukkan pengguna.
  • Perbarui daftar dtype lama kami dan semua penggunaan untuk menggunakan jenis kayu

@ angela97lin apakah saya melewatkan sesuatu?

@dsherry Kelihatannya benar!

  • Perbarui dokumentasi untuk menggunakan Woodwork (sedang berlangsung, #1466)
  • Perbarui pemeriksaan data (sedang berlangsung, #1481)
  • Perbarui metode pemahaman model + grafik yang tidak tercakup dalam dokumentasi
  • Kembalikan woodwork alih-alih panda dari pipeline/component transform / predict , dan di mana pun kami mengembalikan salinan atau ekstensi data yang dimasukkan pengguna (#1406)
  • Perbarui daftar dtype lama kami dan semua penggunaan untuk menggunakan jenis kayu #1290

@ angela97lin luar biasa, terima kasih!

@chukarsten @dsherry Semua masalah yang terkait dengan Epik ini telah ditutup! Apakah aman untuk menutup Epic ini dan hanya melacak dan masalah WW yang muncul secara terpisah? :)

Apakah halaman ini membantu?
0 / 5 - 0 peringkat