Dalam artikel ini saya ingin berbicara tentang kesulitan utama otomatisasi pembelajaran mesin, sifat dan kelebihannya, dan juga mempertimbangkan pendekatan yang lebih fleksibel yang memungkinkan Anda untuk menjauh dari beberapa kekurangan.
Otomatisasi, menurut definisi, Mikell P. Groover adalah teknologi di mana suatu proses atau prosedur dilakukan dengan keterlibatan manusia yang minimal. Otomasi telah lama dapat mencapai peningkatan produktivitas, yang seringkali mengarah pada biaya yang lebih rendah per unit produk. Metode otomasi, serta area aplikasinya, berkembang pesat dan selama berabad-abad terakhir telah berevolusi dari mekanisme sederhana menjadi robot industri. Otomatisasi mulai memengaruhi tidak hanya pekerjaan fisik, tetapi juga intelektual, sampai ke area yang relatif baru, termasuk pembelajaran mesin - pembelajaran mesin otomatis (ml otomatis, aml). Pada saat yang sama, otomatisasi pembelajaran mesin telah menemukan aplikasinya di sejumlah produk komersial (misalnya, Google AutoML, SAP AutoML, dan lainnya).


PenolakanArtikel ini tidak berpura-pura dogmatis di bidangnya dan merupakan visi penulis.
Pembelajaran Mesin Otomatis
Tugas-tugas di bidang pemrosesan data dan pembelajaran mesin dikaitkan dengan banyak faktor yang muncul karena kompleksitas sistem dan menyulitkan solusinya. Ini termasuk ( menurut Charles Sutton ):- Kehadiran ketidakpastian dan ketidakpastian, yang mengarah pada kurangnya pengetahuan apriori data dan ketergantungan yang diinginkan. Dengan demikian, elemen penelitian selalu hadir.
- "Kematian karena seribu luka." Dalam praktiknya, ketika membangun saluran pipa untuk pemrosesan dan analisis data dan pemodelan selanjutnya, Anda harus membuat banyak keputusan besar dan kecil. Misalnya, apakah perlu untuk menormalkan data, jika demikian, metode apa, dan parameter apa yang harus dimiliki metode ini? Dll
- Kehadiran loop umpan balik yang dihasilkan dari ketidakpastian. Semakin lama perendaman dalam tugas dan data berlangsung, semakin banyak Anda dapat mempelajarinya. Ini mengarah pada kebutuhan untuk mengambil langkah mundur dan membuat perubahan pada mekanisme pemrosesan dan analisis yang ada.
- Selain itu, hasil model yang diperoleh oleh algoritma pembelajaran mesin hanya merupakan perkiraan realitas, mis. jelas tidak akurat.
Dengan demikian, proses memperoleh pipeline penuh dari pemrosesan dan analisis data dapat dianggap sebagai sistem yang kompleks (yaitu, sistem yang kompleks).Sistem yang kompleksPeter Sloot, « » « », . , () , , () , () .. , , .
Di satu sisi, kehadiran faktor-faktor ini menyulitkan solusi mesin dan masalah pembelajaran yang dalam dan otomasi mereka. Di sisi lain, kemampuan komputasi yang terus tumbuh dan semakin mudah diakses memungkinkan kami untuk melampirkan lebih banyak sumber daya ke tugas.
Menurut standar CRISP-DM yang umum, siklus hidup suatu proyek terkait dengan analisis data secara iteratif terdiri dari enam tahap utama: memahami tugas bisnis (pemahaman bisnis), memahami dan mempelajari data (pemahaman data), memproses data (persiapan data), pemodelan ( pemodelan), penilaian kualitas (evaluasi) dan aplikasi praktis (penyebaran, aplikasi). Dalam praktiknya, tidak semua langkah ini dapat diotomatisasi secara efektif hari ini.Sebagian besar karya atau perpustakaan yang ada (H2O, auto-sklearn, autokeras) fokus pada pemodelan otomatisasi dan sebagian pada penilaian kualitas. Namun, perluasan pendekatan terhadap otomatisasi pemrosesan data memungkinkan mencakup lebih banyak tahapan (yang, misalnya, diterapkan dalam layanan Google AutoML).Perumusan masalah
Tugas pembelajaran mesin dengan guru dapat diselesaikan dengan berbagai metode, yang sebagian besar dikurangi untuk meminimalkan fungsi kerugian atau maksimalkan fungsi kemungkinan , untuk mendapatkan estimasi parameter berdasarkan pada dataset sampel - pelatihan yang tersedia :atau θ^m=argminθm(J(yt;θm))dimana θm- parameter model yang terlatih (misalnya, koefisien jika terjadi regresi).Agar tidak membatasi otomatisasi hanya pada pemodelan, dimungkinkan untuk memperluas cakupan metode ke tahap lain dari jalur pipa. Misalnya, untuk mengotomatisasi pengambilan keputusan tentang metode pemrosesan data apa yang diterapkan, tentang memilih model atau kombinasinya, serta memilih dekat dengan hiperparameter optimal.Kami menggambarkan apa yang dijelaskan dengan contoh sederhana, dalam kerangka yang ada pilihan antara dua metode pemrosesan data ( scaler standar dan scaler kuantil ) dan dua model ( hutan acak dan jaringan saraf ), termasuk pemilihan beberapa hiperparameter. Struktur pemilihan dapat direpresentasikan sebagai pohon:
Setiap pilihan yang dibuat adalah parameter sistem, sedangkan pohon itu sendiri menjadi ruang parameter yang mungkin. Pandangan seperti itu pada masalah memungkinkan kita untuk naik lebih tinggi ke tingkat abstraksi dan merumuskan tugas untuk mendapatkan pipa akhir, termasuk metode pemrosesan data, model dan parameternya, sebagai proses meminimalkan atau memaksimalkan fungsi:ω^=argmaxω(L(yt,ycv;ω))atau ω^=argminω(J(yt,ycv;ω))dimana ω- parameter non-pembelajaran, ycv- pemilihan kontrol tertunda (data ditetapkan untuk validasi silang).Keuntungan utama dari otomatisasi pembelajaran tersebut meliputi:- Pemilihan sejumlah besar parameter sistem dengan adanya satu titik input dalam kerangka proses optimasi tunggal.
- Otomatisasi rutin yang menyelamatkan peneliti atau pengembang dari "ribuan pemotongan."
- "Demokratisasi" pembelajaran mesin melalui otomasinya, yang memungkinkan banyak non-spesialis untuk menerapkan banyak metode.
Namun, otomatisasi bukan tanpa kekurangan:- Dengan peningkatan jumlah parameter, ruang mereka juga tumbuh, yang cepat atau lambat mengarah ke ledakan kombinatorial, yang membutuhkan pengembangan algoritma dan peningkatan jumlah sumber daya komputasi.
- Metode yang sepenuhnya otomatis tidak selalu memberikan solusi yang fleksibel berdasarkan prinsip "kotak hitam", yang mengurangi kendali atas hasilnya.
- Ruang parameter ω adalah nonlinier dan memiliki struktur kompleks, yang mempersulit proses optimasi.
Dari otomatisasi ke semi-otomatisasi
Mencoba untuk mempertahankan sebanyak mungkin keuntungan dan pada saat yang sama menjauh dari sejumlah kekurangan, khususnya, karena keinginan untuk mendapatkan kendali tambahan atas solusi, kami sampai pada pendekatan yang disebut semi-otomatis ml. Ini adalah fenomena yang relatif baru di lapangan, yang secara tidak langsung dapat dibuktikan dengan analisis cepat Google Trends:
Mencapai kompromi seperti itu dapat secara kondisional dibandingkan dengan berbagai metode pemindahan gigi dalam transmisi mobil (yaitu, metode pemindahan, tetapi bukan struktur internal mereka):Dalam perjalanan bekerja pada proyek-proyek internal, kami menciptakan alat yang memungkinkan kami untuk memecahkan masalah pembelajaran mesin semi-otomatis berdasarkan sistem konfigurasi fungsional-deklaratif hibrida. Pendekatan konfigurasi ini tidak hanya menggunakan tipe data standar, tetapi juga fungsi dari perpustakaan modern umum untuk pembelajaran mesin dan dalam. Alat ini memungkinkan Anda untuk mengotomatisasi pembuatan metode pemrosesan data sederhana, desain dasar fitur (fitur engineering), pemilihan model dan hiperparameternya, dan juga melakukan perhitungan pada cluster Spark atau GPU. Daftar ini meresmikan contoh yang diberikan sebelumnya dalam artikel. Contoh ini menggunakan model-model sederhana dari sk-learn dan hyperopt (yang bahkan berhasil memberikan kontribusi yang tidak signifikan pada kode sumber terbuka) untuk distribusi parameter dan optimisasi.'preprocessing': {
'scaler': hp.choice('scaler', [
{
'func': RobustScaler,
'params': {
'quantile_range': (10, 90)
}},
{
'func': StandardScaler,
'params': {
'with_mean': True
}}
]),
},
'model': hp.choice('model', [
{
'func': RandomForestClassifier,
'params': {
'max_depth': hp.choice('r_max_depth', [2, 5, 10]),
'n_estimators': hp.choice('r_n_estimators', [5, 10, 50])
}
},
{
'func': MLPClassifier,
'params': {
'hidden_layer_sizes': hp.choice('hidden_layer_sizes', [1, 10, 100]),
'learning_rate_init': hp.choice('learning_rate_init', [0.1, 0.01])
}
},
])
Sistem semi-otomatis semacam itu, termasuk mekanisme konfigurasi, memungkinkan untuk membuat skenario standar yang telah disiapkan dalam kasus-kasus di mana, misalnya, sekumpulan model tertentu lebih cocok untuk menyelesaikan masalah. Ini, khususnya, dapat mencakup penilaian kredit, namun, langkah tersebut membutuhkan penelitian tambahan pada berbagai tugas serupa. Juga, ketika bekerja pada mekanisme pencarian, dimungkinkan untuk secara otomatis menjaga keseimbangan dalam dilema bias tradeoff varians dengan secara simultan memperhitungkan nilai-nilai fungsi yang dioptimalkan baik dalam sampel pelatihan dan validasi silang.Kesimpulan
Kurangnya otomatisasi dalam praktiknya sangat jarang, karena bahkan menghitung nilai-nilai satu hiperparameter dalam satu siklus sudah merupakan langkah menuju otomatisasi. Pada saat yang sama, otomatisasi penuh dari seluruh proses konstruksi pipa juga praktis tidak dapat dicapai hari ini. Dengan demikian, dalam pengembangan sebagian besar proyek modern, pendekatan otomasi diterapkan secara sadar atau tidak sadar.Penggunaan pembelajaran mesin semi-otomatis memungkinkan penggunaan sumber daya peneliti atau pengembang yang lebih efisien karena otomatisasi rutin, tanpa menghilangkan bagian signifikan dari fleksibilitas dalam pekerjaan. Seperti yang kita lihat, solusi yang diusulkan membutuhkan partisipasi seseorang, membatasi ruang parameter sistem yang mungkin. Selain itu, pengenalan skenario standar yang diperoleh berdasarkan sistem konfigurasi memungkinkan penggunaan tidak hanya pendekatan otomatisasi parsial, tetapi juga skenario penuh yang tidak memerlukan keterlibatan manusia.