Parameter Pelatihan - Amazon Machine Learning

Kami tidak lagi memperbarui layanan Amazon Machine Learning atau menerima pengguna baru untuk itu. Dokumentasi ini tersedia untuk pengguna yang sudah ada, tetapi kami tidak lagi memperbaruinya. Untuk informasi selengkapnya, lihatApa itu Amazon Machine Learning.

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

Parameter Pelatihan

Biasanya, algoritma pembelajaran mesin menerima parameter yang dapat digunakan untuk mengontrol sifat tertentu dari proses pelatihan dan model ML-nya. Dalam Amazon Machine Learning, ini disebutparameter pelatihan. Anda dapat mengatur parameter ini menggunakan konsol Amazon, API, atau antarmuka baris perintah (CLI). Jika Anda tidak menetapkan parameter apa pun, Amazon IL akan menggunakan nilai default yang diketahui berfungsi dengan baik untuk berbagai macam tugas machine learning.

Anda dapat menentukan nilai untuk parameter pelatihan berikut:

  • Ukuran model maksimum

  • Jumlah maksimum lintasan melalui data pelatihan

  • Jenis Shuffle

  • Jenis regularisasi

  • Jumlah regularisasi

Di konsol Amazon ML-nya, parameter pelatihan ditetapkan secara default. Pengaturan default memadai untuk sebagian besar masalah ML-nya, tetapi Anda dapat memilih nilai lain untuk menyempurnakan kinerja. Beberapa parameter pelatihan lainnya, seperti tingkat pembelajaran, dikonfigurasi untuk Anda berdasarkan data Anda.

Bagian berikut menyediakan informasi lebih lanjut tentang parameter pelatihan.

Ukuran Model Maksimum

Ukuran model maksimum adalah ukuran total, dalam satuan byte, dari pola yang dibuat Amazon ML-nya selama pelatihan model ML-nya.

Secara default, Amazon IL membuat model 100 MB. Anda dapat menginstruksikan Amazon IL untuk membuat model yang lebih kecil atau lebih besar dengan menentukan ukuran yang berbeda. Untuk berbagai ukuran yang tersedia, lihatJenis Model ML/Model

Jika Amazon IL tidak dapat menemukan pola yang cukup untuk mengisi ukuran model, itu akan menciptakan model yang lebih kecil. Misalnya, jika Anda menentukan ukuran model maksimum 100 MB, tetapi Amazon IL menemukan pola yang total hanya 50 MB, model yang dihasilkan akan menjadi 50 MB. Jika Amazon IL menemukan lebih banyak pola daripada yang sesuai dengan ukuran yang ditentukan, Amazon MLM akan memberlakukan cut-off maksimum dengan memangkas pola yang paling tidak memengaruhi kualitas model yang dipelajari.

Memilih ukuran model memungkinkan Anda untuk mengontrol trade-off antara kualitas prediktif model dan biaya penggunaan. Model yang lebih kecil dapat menyebabkan Amazon ML-menghapus banyak pola agar sesuai dengan batas ukuran maksimum, yang memengaruhi kualitas prediksi. Model yang lebih besar, di sisi lain, biaya lebih untuk query untuk prediksi real-time.

catatan

Jika Anda menggunakan model ML untuk menghasilkan prediksi real-time, Anda akan dikenakan biaya reservasi kapasitas kecil yang ditentukan oleh ukuran model. Untuk informasi selengkapnya, lihat Harga Amazon MLS.

Set data input yang lebih besar tidak selalu menghasilkan model yang lebih besar karena model menyimpan pola, bukan input data; jika polanya sedikit dan sederhana, model yang dihasilkan akan kecil. Masukan data yang memiliki sejumlah besar atribut mentah (kolom input) atau fitur turunan (output transformasi data Amazon XML) kemungkinan akan memiliki lebih banyak pola yang ditemukan dan disimpan selama proses pelatihan. Memilih ukuran model yang benar untuk data dan masalah Anda paling baik didekati dengan beberapa eksperimen. Log pelatihan model Amazon XML (yang dapat Anda unduh dari konsol atau melalui API) berisi pesan tentang berapa banyak pemangkasan model (jika ada) terjadi selama proses pelatihan, memungkinkan Anda memperkirakan potensi kualitas hit-to-prediction.

Jumlah Maksimum Pass atas Data

Untuk hasil terbaik, Amazon IL mungkin perlu melakukan beberapa pass atas data Anda untuk menemukan pola. Secara default, Amazon IL membuat 10 pass, tetapi Anda dapat mengubah default dengan menetapkan angka hingga 100. Amazon IL melacak kualitas pola (konvergensi model) saat berjalan, dan secara otomatis menghentikan pelatihan ketika tidak ada lagi titik data atau pola untuk ditemukan. Misalnya, jika Anda menetapkan jumlah pass ke 20, tetapi Amazon IL menemukan bahwa tidak ada pola baru yang dapat ditemukan pada akhir 15 pass, maka itu akan menghentikan pelatihan pada 15 pass.

Secara umum, set data dengan hanya beberapa pengamatan biasanya memerlukan lebih banyak melewati data untuk mendapatkan kualitas model yang lebih tinggi. Kumpulan data yang lebih besar sering mengandung banyak titik data serupa, yang menghilangkan kebutuhan akan sejumlah besar lintasan. Dampak memilih lebih banyak data melewati data Anda adalah dua kali lipat: pelatihan model membutuhkan waktu lebih lama, dan harganya lebih mahal.

Tipe Shuffle untuk Data Pelatihan

Di Amazon IL, Anda harus mengacak data pelatihan Anda. Shuffling mencampur urutan data Anda sehingga algoritma SGD tidak menemukan satu jenis data untuk terlalu banyak pengamatan berturut-turut. Misalnya, jika Anda melatih model L untuk memprediksi jenis produk, dan data latihan Anda mencakup jenis produk film, mainan, dan video game, jika Anda menyortir data berdasarkan kolom jenis produk sebelum mengunggahnya, algoritma akan melihat data berdasarkan abjad berdasarkan jenis produk. Algoritma ini melihat semua data Anda untuk film terlebih dahulu, dan model ML-mu mulai mempelajari pola film. Kemudian, ketika model Anda menemukan data tentang mainan, setiap pembaruan yang dibuat algoritma akan sesuai dengan model dengan jenis produk mainan, bahkan jika pembaruan tersebut menurunkan pola yang sesuai dengan film. Ini tiba-tiba beralih dari film ke jenis mainan dapat menghasilkan model yang tidak belajar bagaimana untuk memprediksi jenis produk secara akurat.

Anda harus mengacak data pelatihan Anda bahkan jika Anda memilih opsi split acak ketika Anda membagi sumber data input menjadi bagian pelatihan dan evaluasi. Strategi split acak memilih subset acak dari data untuk setiap sumber data, tetapi tidak mengubah urutan baris dalam sumber data. Untuk informasi selengkapnya tentang membagi data Anda, lihatMemisahkan Data Anda.

Saat Anda membuat model ML-nya menggunakan konsol, Amazon ML-nya akan menyeret data dengan teknik shuffling pseudo-random. Terlepas dari jumlah pass yang diminta, Amazon ML-mengacak data hanya satu kali sebelum melatih model ML-nya. Jika Anda mengacak data sebelum menyediakannya ke Amazon ML. dan tidak ingin Amazon ML-shuffle lagi data Anda, Anda dapat menyetelJenis Shufflekepadanone. Misalnya, jika Anda secara acak mengacak rekaman di file.csv sebelum mengunggahnya ke Amazon S3, menggunakanrand()berfungsi dalam kueri MySQL SQL Anda saat membuat sumber data Anda dari Amazon RDS, atau menggunakanrandom()berfungsi dalam kueri SQL Amazon Redshift Anda saat membuat sumber data Anda dari Amazon Redshift, menyetelJenis Shufflekepadanonetidak akan memengaruhi keakuratan prediktif model ML-mu. Shuffling data Anda hanya sekali mengurangi run-time dan biaya untuk membuat model ML-nya.

penting

Saat Anda membuat model ML-nya menggunakan API Amazon ML-nya, Amazon ML-nya tidak akan mengacak data secara default. Jika Anda menggunakan API alih-alih konsol untuk membuat model ML-mu, kami sangat menyarankan agar Anda mengocokkan data Anda dengan menyetelsgd.shuffleTypeparameter untukauto.

Jenis dan Jumlah Regularisasi

Kinerja prediktif model ML-kompleks (mereka yang memiliki banyak atribut input) menderita ketika data berisi terlalu banyak pola. Sebagai jumlah pola meningkat, begitu juga kemungkinan bahwa model belajar artefak data yang tidak disengaja, bukan pola data yang benar. Dalam kasus seperti itu, model sangat baik pada data pelatihan, tetapi tidak dapat menggeneralisasi data baru. Fenomena ini dikenal sebagaioverfittingdata pelatihan.

Regularisasi membantu mencegah model linier dari contoh data pelatihan yang terlalu pas dengan menghukum nilai berat ekstrem. L1 regularisasi mengurangi jumlah fitur yang digunakan dalam model dengan mendorong berat fitur yang jika tidak akan memiliki bobot yang sangat kecil menjadi nol. L1 regularisasi menghasilkan model jarang dan mengurangi jumlah kebisingan dalam model. L2 regularisasi menghasilkan nilai bobot keseluruhan yang lebih kecil, yang menstabilkan bobot ketika ada korelasi tinggi antara fitur. Anda dapat mengontrol jumlah L1 atau L2 regularisasi dengan menggunakanRegularization amountparameter. Menentukan sangat besarRegularization amountdapat menyebabkan semua fitur memiliki berat nol.

Memilih dan menyetel nilai regularisasi optimal adalah subjek aktif dalam penelitian pembelajaran mesin. Anda mungkin akan mendapatkan keuntungan dari memilih regularisasi L2 dalam jumlah moderat, yang merupakan default di konsol Amazon ML-nya. Pengguna tingkat lanjut dapat memilih antara tiga jenis regularisasi (none, L1, atau L2) dan jumlah. Untuk informasi lebih lanjut tentang regularisasi, kunjungiRegularisasi (matematika).

Parameter Pelatihan: Jenis dan Nilai Default

Tabel berikut mencantumkan parameter pelatihan Amazon ML, bersama dengan nilai default dan rentang yang diijinkan untuk masing-masing.

Parameter Pelatihan

Jenis

Nilai Default

Deskripsi

MaxMLModelSizeinBytes

Bulat

100.000.000 byte (100 MiB)

Rentang yang diizinkan: 100,000 (100 KiB) untuk 2,147,483,648 (2 GiB)

Tergantung pada data input, ukuran model dapat mempengaruhi kinerja.

SGD.maxPasses

Bulat

10

Rentang yang diizinkan: 1-100

SGD.shuffletype

String

mobil

Nilai yang diizinkan:autoataunone

SGD.l1RegularizationAmount

Double

0 (Secara default, L1 tidak digunakan)

Rentang yang diijinkan: 0 ke MAX_DOUBL

Nilai L1 antara 1E-4 dan 1E-8 telah ditemukan untuk menghasilkan hasil yang baik. Nilai yang lebih besar cenderung menghasilkan model yang tidak terlalu berguna.

Anda tidak dapat mengatur L1 dan L2. Anda harus memilih satu atau yang lainnya.

SGD.l2RegularizationAmount

Double

1E-6 (Secara default, L2 digunakan dengan jumlah regularisasi ini)

Rentang yang diijinkan: 0 ke MAX_DOUBL

Nilai L2 antara 1E-2 dan 1E-6 telah ditemukan untuk menghasilkan hasil yang baik. Nilai yang lebih besar cenderung menghasilkan model yang tidak terlalu berguna.

Anda tidak dapat mengatur L1 dan L2. Anda harus memilih satu atau yang lainnya.