Setelah Anda memanggil fit, Anda harus memilih model yang ingin Anda gunakan sebelum menelepon predict
. Dengan cara itu, tidak seperti objek lain yang memiliki metode fit. fit
lebih seperti search
dalam kasus ini.
Cara saya melihatnya, ada tiga keputusan yang harus diambil
Untuk 1 dan 2 berikut adalah opsi yang saya buat
import evalml
clf = evalml.AutoClassifierSearch()
auto = evalml.AutoClassifierSearch()
automl = evalml.AutoClassifierSearch()
seacher = evalml.AutoClassifierSearch()
clf = evalml.AutoClassifier()
auto = evalml.AutoClassifier()
automl = evalml.AutoClassifier()
seacher = evalml.AutoClassifier()
Untuk 2 dan 3 berikut adalah opsi yang saya buat
clf.search()
auto.search()
automl.search()
seacher.search()
clf.run()
auto.run()
automl.run()
seacher.run()
Saya pikir saya suka
import evalml
automl = evalml.AutoClassifierSearch()
automl.search()
Alasan saya adalah
evalml.AutoClassifierSearch
bersifat deskriptif. Ini adalah pencarian, bukan pengklasifikasi itu sendirirun()
sangat umum.clf
dengan alat seperti sklearn.Alternatif yang saya suka adalah
import evalml
search = evalml.AutoClassifierSearch()
search.run()
Ini menggunakan nama variabel yang lebih deskriptif, jadi menggunakan run()
tidak masalah. Kelebihannya adalah ia tidak memperkenalkan istilah automl
pada contoh kita. Kekhawatiran saya adalah bahwa pengguna dapat memberi nama pencarian apa pun yang mereka inginkan dan kemudian my_custom_variable_name.run()
tidak terlalu deskriptif.
Ada pikiran? Adakah pendekatan penamaan variabel yang saya lewatkan? Bahkan Anda tidak berpikir mereka lebih baik, mungkin juga membuangnya untuk kita pertimbangkan.
Saya suka AutoClassifierSearch()
untuk alasan yang sama yang Anda nyatakan di atas tetapi tidak terlalu suka memanggil variabel automl
karena tampaknya luas dan search
sebagai kata kerja. Apa pendapatmu tentang autosearch.run()
? Seseorang mengusulkan searcher
dalam pertemuan kami dan itu berhasil juga, tetapi itu tidak berjalan dengan baik.
Saya sangat menyukai AutoClassifierSearch()
dan menggunakan search()
karena saya setuju bahwa run()
bisa menjadi terlalu umum jika pengguna mendefinisikan nama variabel mereka sendiri.
Untuk nama variabel yang direkomendasikan yang menampung kelas yang diinisialisasi, saya penggemar automl
, searcher
atau autosearch
/ autosearcher
lebih dari search
, bahkan jika kita menggunakan run()
. (Apakah pencarian google singkat dan automl
atau aml
muncul untuk beberapa perpustakaan lain di luar sana, untuk apa nilainya).
@jeremyliweishih saya tidak yakin saya mengerti maksud Anda tentang search()
. saya pikir tujuannya adalah untuk memilih kata kerja deskriptif untuk metode itu. dapatkah Anda menjelaskan apa yang Anda katakan?
Semoga saya tidak salah paham tapi saya pikir @jeremyliweishih mengatakan search
sebagai nama variabel yang direkomendasikan agak aneh karena itu kata kerja ... setidaknya, itu juga perasaan yang saya dapatkan :D
@kmax12 Maksud saya komentar tentang nama variabel yang direkomendasikan: search = AutoClassifierSearch()
. Untuk memperjelas, saya pikir AutoClassifierSearch()
untuk nama kelas akan bagus dan autosearch
dapat berfungsi untuk nama variabel. autosearch = AutoClassifierSearch()
. Mungkin nama variabel tiga huruf lainnya bisa berfungsi juga (aml, asc, ats).
@jeremyliweishih saya mengerti apa yang Anda katakan sekarang. saya setuju.
Berdasarkan hal di atas, saya pikir kita semua suka mengganti nama menjadi AutoClassifierSearch
dan AutoRegressorSearch
.
Dalam hal nama variabel kami juga turun
autosearch = AutoClassifierSearch()
automl = AutoClassifierSearch()
aml = AutoClassifierSearch()
Saya pribadi suka automl karena deskriptif. aml
serupa jika Anda tahu singkatannya, tapi menurut saya tidak seintuitif itu. inilah yang saya lihat menggunakan H20 di dokumen mereka (apakah ada perpustakaan lain?) Saya biasanya bukan penggemar pemendekan nama variabel tanpa alasan yang sangat bagus. Satu-satunya keuntungan yang saya lihat untuk aml
adalah 3 karakter, bukan 6.
autosearch
masuk akal bagi saya karena pada dasarnya itu adalah nama kelas. namun, ini lebih panjang dari automl
dan saya tidak yakin itu menambah kejelasan. Jika kita menggunakan rute autosearch
, saya pikir metodenya harus run
, karena autosearcher = AutoClassifierSearch(); autosearcher.search()
sepertinya berlebihan dalam pencarian haha.
Jadi saya melihat dua opsi berdasarkan obrolan di atas
automl = AutoClassifierSearch()
automl.search()
atau
autosearch = AutoClassifierSearch()
autosearch.run()
Pikirkan keduanya akan berhasil tetapi saya suka .search()
lebih dari .run()
!
Saya suka semua ide yang Anda keluarkan. Saya penggemar khusus:
automl = AutoClassificationSearch()
automl = AutoRegressionSearch()
automl.search()
Bukan untuk memperumit diskusi yang sudah panjang dengan lebih banyak opsi, tetapi: haruskah kita mengatakan AutoRegressorSearch
atau AutoRegressionSearch
? Saya parsial untuk yang terakhir. Saya tidak mendengar istilah "regressor" sebanyak yang saya dengar "model regresi", dan juga untuk klasifikasi
Ya, saya setuju. Regressor juga bisa merujuk ke fitur input, variabel, dll, jadi regresi lebih baik.
Selain itu, jika AutoClassification dan AutoRegression lebih analog dengan "auto machine learning", karena machine learning, klasifikasi, dan regresi adalah semua proses.
kecuali ada oposisi terakhir, kita akan pergi bersama
automl = AutoClassificationSearch()
automl = AutoRegressionSearch()
automl.search()
Komentar yang paling membantu
Ya, saya setuju. Regressor juga bisa merujuk ke fitur input, variabel, dll, jadi regresi lebih baik.
Selain itu, jika AutoClassification dan AutoRegression lebih analog dengan "auto machine learning", karena machine learning, klasifikasi, dan regresi adalah semua proses.
kecuali ada oposisi terakhir, kita akan pergi bersama