Karena semakin banyak organisasi beralih ke pembelajaran mesin (ML) untuk mendorong wawasan yang lebih dalam, dua hambatan utama yang mereka hadapi adalah pelabelan dan manajemen siklus hidup. Pelabelan adalah identifikasi data dan menambahkan label untuk memberikan konteks sehingga model ML dapat belajar darinya. Label mungkin menunjukkan frasa dalam file audio, mobil dalam foto, atau organ dalam MRI. Pelabelan data diperlukan untuk memungkinkan model ML bekerja melawan data. Manajemen siklus hidup berkaitan dengan proses menyiapkan eksperimen ML dan mendokumentasikan kumpulan data, pustaka, versi, dan model yang digunakan untuk mendapatkan hasil. Sebuah tim mungkin menjalankan ratusan eksperimen sebelum menetapkan satu pendekatan. Kembali dan menciptakan kembali pendekatan itu bisa jadi sulit tanpa catatan elemen-elemen eksperimen itu.
Banyak contoh dan tutorial ML dimulai dengan kumpulan data yang menyertakan nilai target. Namun, data dunia nyata tidak selalu memiliki nilai target seperti itu. Misalnya, dalam analisis sentimen, seseorang biasanya dapat membuat penilaian apakah ulasan itu positif, negatif, atau campuran. Tetapi ulasan terdiri dari kumpulan teks tanpa nilai penilaian yang melekat padanya. Untuk membuat pembelajaran yang diawasi model untuk memecahkan masalah ini, dataset berlabel berkualitas tinggi sangat penting. Kebenaran Dasar Amazon SageMaker adalah layanan pelabelan data terkelola sepenuhnya yang memudahkan pembuatan set data pelatihan yang sangat akurat untuk ML.
Untuk organisasi yang menggunakan Databricks sebagai platform data dan analitik mereka di AWS untuk melakukan tugas ekstrak, transformasi, dan pemuatan (ETL), tujuan akhirnya sering kali adalah melatih model pembelajaran yang diawasi. Dalam posting ini, kami menunjukkan bagaimana Databricks terintegrasi dengan Ground Truth dan Amazon SageMaker untuk pelabelan data dan distribusi model.
Ikhtisar solusi
Ground Truth adalah layanan pelabelan data terkelola sepenuhnya yang memudahkan pembuatan set data pelatihan yang sangat akurat untuk ML. Melalui konsol Ground Truth, kita dapat membuat alur kerja pelabelan data kustom atau bawaan dalam hitungan menit. Alur kerja ini mendukung berbagai kasus penggunaan, termasuk awan titik 3D, video, gambar, dan teks. Selain itu, Ground Truth menawarkan pelabelan data otomatis, yang menggunakan model ML untuk melabeli data kami.
Kami melatih model kami pada kumpulan data Amazon Customer Review yang tersedia untuk umum. Pada tingkat tinggi, langkah-langkahnya adalah sebagai berikut:
- Ekstrak kumpulan data mentah untuk diberi label dan pindahkan ke Layanan Penyimpanan Sederhana Amazon (Amazon S3).
- Lakukan pelabelan dengan membuat tugas pelabelan di SageMaker.
- Bangun dan latih model pembelajar linier Scikit-learn sederhana untuk mengklasifikasikan sentimen teks ulasan pada platform Databricks menggunakan sampel buku catatan.
- penggunaan aliran ml komponen untuk membuat dan melakukan MLOps dan menyimpan artefak model.
- Terapkan model sebagai titik akhir SageMaker menggunakan Pustaka MLflow SageMaker untuk inferensi waktu nyata.
Diagram berikut mengilustrasikan pelabelan dan perjalanan ML menggunakan Ground Truth dan MLflow.
Buat pekerjaan pelabelan di SageMaker
Dari kumpulan data Amazon Customer Review, kami mengekstrak bagian teks saja, karena kami sedang membangun model analisis sentimen. Setelah diekstraksi, kami memasukkan teks ke dalam ember S3 dan kemudian membuat pekerjaan pelabelan Ground Truth melalui konsol SageMaker.
pada Buat pekerjaan pelabelan halaman, isi semua bidang yang diperlukan. Sebagai bagian dari langkah di halaman ini, Ground Truth memungkinkan Anda membuat file manifes pekerjaan. Ground Truth menggunakan file manifes input untuk mengidentifikasi jumlah file atau objek dalam pekerjaan pelabelan sehingga jumlah tugas yang tepat dibuat dan dikirim ke pemberi label manusia (atau mesin). File secara otomatis disimpan di ember S3. Langkah selanjutnya adalah menentukan kategori tugas dan pemilihan tugas. Dalam kasus penggunaan ini, kami memilih Teks sebagai kategori tugas, dan Klasifikasi Teks dengan satu label untuk pemilihan tugas, yang berarti teks ulasan akan memiliki sentimen tunggal: positif, negatif, atau netral.
Terakhir, kami menulis instruksi sederhana namun ringkas untuk pemberi label tentang cara memberi label pada data teks. Instruksi ditampilkan pada alat pelabelan dan Anda dapat meninjau tampilan annotator secara opsional saat ini. Akhirnya, kami mengirimkan pekerjaan dan memantau kemajuan di konsol.
Saat pekerjaan pelabelan sedang berlangsung, kita juga dapat melihat data berlabel di Keluaran tab. Kami dapat memantau setiap teks dan label ulasan, dan jika pekerjaan itu dilakukan oleh manusia atau mesin. Kami dapat memilih 100% pekerjaan pelabelan yang harus dilakukan oleh manusia atau memilih anotasi mesin, yang mempercepat pekerjaan dan mengurangi biaya tenaga kerja.
Saat tugas selesai, ringkasan tugas pelabelan berisi tautan ke manifes keluaran dan set data berlabel. Kami juga dapat pergi ke Amazon S3 dan mengunduh keduanya dari folder ember S3 kami.
Pada langkah selanjutnya, kami menggunakan notebook Databricks, aliran ml, dan kumpulan data yang diberi label oleh Ground Truth untuk membangun Scikit-belajar Model.
Unduh kumpulan data berlabel dari Amazon S3
Kami mulai dengan mengunduh kumpulan data berlabel dari Amazon S3. Manifes disimpan dalam format JSON dan kami memuatnya ke dalam Spark DataFrame di Databricks. Untuk melatih model analisis sentimen, kita hanya memerlukan teks ulasan dan sentimen yang dianotasi oleh tugas pelabelan Ground Truth. Kami menggunakan select() untuk mengekstrak kedua fitur tersebut. Kemudian kita mengonversi dataset dari PySpark DataFrame menjadi Pandas DataFrame, karena algoritma Scikit-learn membutuhkan format Pandas DataFrame.
Selanjutnya, kami menggunakan Scikit-belajar CountVectorizer
untuk mengubah teks ulasan menjadi vektor bigram dengan mengatur ngram_range
nilai maksimal ke 2. CountVectorizer
mengubah teks menjadi matriks jumlah token. Kemudian kita menggunakan TfidfTransformer
untuk mengubah vektor bigram menjadi format frekuensi dokumen terbalik frekuensi (TF-IDF).
Kami membandingkan skor akurasi untuk pelatihan yang dilakukan dengan vektor bigram vs bigram dengan TF-IDF. TF-IDF adalah ukuran statistik yang mengevaluasi seberapa relevan sebuah kata dengan dokumen dalam kumpulan dokumen. Karena teks ulasan cenderung relatif pendek, kita dapat mengamati bagaimana TF-IDF mempengaruhi kinerja model prediktif.
Siapkan eksperimen MLflow
MLflow dikembangkan oleh Databricks dan sekarang menjadi proyek sumber terbuka. MLflow mengelola siklus hidup ML, sehingga Anda dapat melacak, membuat ulang, dan memublikasikan eksperimen dengan mudah.
Untuk menyiapkan eksperimen MLflow, kami menggunakan mlflow.sklearn.autolog()
untuk mengaktifkan pencatatan otomatis hyperparameter, metrik, dan artefak model kapan pun estimator.fit()
, estimator.fit_predict()
, dan estimator.fit_transform()
disebut. Atau, Anda dapat melakukannya secara manual dengan menelepon mlflow.log_param()
dan mlflow.log_metric()
.
Kami menyesuaikan dataset yang diubah ke pengklasifikasi linier dengan pembelajaran Stochastic Gradient Descent (SGD). Dengan SGD, gradien kerugian diperkirakan satu sampel pada satu waktu dan model diperbarui sepanjang jalan dengan jadwal kekuatan yang menurun.
Kedua kumpulan data yang kami siapkan sebelumnya diteruskan ke train_and_show_scores()
fungsi untuk pelatihan. Setelah pelatihan, kita perlu mendaftarkan model dan menyimpan artefaknya. Kita gunakan mlflow.sklearn.log_model()
untuk melakukannya.
Sebelum menerapkan, kami melihat hasil eksperimen dan memilih dua eksperimen (satu untuk bigram dan yang lainnya untuk bigram dengan TF-IDF) untuk dibandingkan. Dalam kasus penggunaan kami, model kedua yang dilatih dengan bigram TF-IDF berkinerja sedikit lebih baik, jadi kami memilih model itu untuk diterapkan. Setelah model terdaftar, kami menerapkan model, mengubah tahap model menjadi produksi. Kita dapat melakukannya di UI MLflow, atau dalam kode menggunakan transition_model_version_stage()
.
Terapkan dan uji model sebagai titik akhir SageMaker
Sebelum kita men-deploy model terlatih, kita perlu membuat container Docker untuk meng-host model di SageMaker. Kami melakukan ini dengan menjalankan perintah MLflow sederhana yang membangun dan mendorong wadah ke Registry Kontainer Elastis Amazon (Amazon ECR) di akun AWS kami.
Kami sekarang dapat menemukan URI gambar di konsol Amazon ECR. Kami meneruskan gambar URI sebagai image_url
parameter, dan gunakan DEPLOYMENT_MODE_CREATE
untuk parameter mode jika ini adalah penerapan baru. Jika memperbarui titik akhir yang ada dengan versi baru, gunakan DEPLOYMENT_MODE_REPLACE
.
Untuk menguji titik akhir SageMaker, kami membuat fungsi yang mengambil nama titik akhir dan data masukan sebagai parameternya.
Kesimpulan
Dalam posting ini, kami menunjukkan kepada Anda bagaimana menggunakan Ground Truth untuk melabeli dataset mentah, dan menggunakan data berlabel untuk melatih pengklasifikasi linier sederhana menggunakan Scikit-learn. Dalam contoh ini, kami menggunakan MLflow untuk melacak hyperparameter dan metrik, mendaftarkan model tingkat produksi, dan menerapkan model terlatih ke SageMaker sebagai titik akhir. Seiring dengan Databricks untuk memproses data, Anda dapat mengotomatiskan seluruh kasus penggunaan ini, sehingga saat data baru diperkenalkan, data tersebut dapat diberi label dan diproses ke dalam model. Dengan mengotomatiskan saluran dan model ini, tim ilmu data dapat fokus pada kasus penggunaan baru dan mengungkap lebih banyak wawasan daripada menghabiskan waktu mereka untuk mengelola pembaruan data setiap hari.
Untuk memulai, lihat Gunakan Kebenaran Dasar Amazon SageMaker untuk Memberi Label Data dan mendaftar untuk a Uji coba gratis 14 hari Databricks di AWS. Untuk mempelajari lebih lanjut tentang bagaimana Databricks terintegrasi dengan SageMaker, serta layanan AWS lainnya seperti Lem AWS dan Pergeseran Merah Amazon, Kunjungi Databricks di AWS.
Selain itu, periksa sumber daya berikut yang digunakan dalam posting ini:
Gunakan yang berikut ini buku catatan untuk memulai.
Tentang Penulis
Rumi Olsen adalah Arsitek Solusi dalam Program Mitra AWS. Dia berspesialisasi dalam solusi pembelajaran mesin dan tanpa server dalam perannya saat ini, dan memiliki latar belakang dalam teknologi pemrosesan bahasa alami. Dia menghabiskan sebagian besar waktu luangnya dengan putrinya menjelajahi alam Pacific Northwest.
Igor Alekseev adalah Partner Solution Architect di AWS dalam bidang Data dan Analytics. Igor bekerja dengan mitra strategis membantu mereka membangun arsitektur kompleks yang dioptimalkan AWS. Sebelum bergabung dengan AWS, sebagai Arsitek Data/Solusi, ia mengimplementasikan banyak proyek di Big Data, termasuk beberapa data lake di ekosistem Hadoop. Sebagai Data Engineer, ia terlibat dalam penerapan AI/ML untuk deteksi penipuan dan otomatisasi kantor. Proyek Igor berada di berbagai industri termasuk komunikasi, keuangan, keselamatan publik, manufaktur, dan perawatan kesehatan. Sebelumnya, Igor bekerja sebagai full stack engineer/tech lead.
Naseer Ahmed adalah Arsitek Solusi Mitra Senior di Databricks yang mendukung bisnis AWS-nya. Naseer mengkhususkan diri dalam Data Warehousing, Business Intelligence, Pengembangan aplikasi, Kontainer, Tanpa Server, Arsitektur Pembelajaran Mesin di AWS. Dia terpilih sebagai SME tahun 2021 di Databricks dan merupakan penggemar berat kripto.
- Coinsmart. Pertukaran Bitcoin dan Crypto Terbaik Eropa.
- Platoblockchain. Intelijen Metaverse Web3. Pengetahuan Diperkuat. AKSES GRATIS.
- CryptoHawk. Radar Altcoin. Uji Coba Gratis.
- Sumber: https://aws.amazon.com/blogs/machine-learning/build-an-mlops-sentiment-analysis-pipeline-using-amazon-sagemaker-ground-truth-and-databricks-mlflow/
- "
- 100
- 2021
- 3d
- Tentang Kami
- Akun
- tepat
- tambahan
- algoritma
- Semua
- Amazon
- analisis
- analisis
- aplikasi
- Pengembangan aplikasi
- Menerapkan
- pendekatan
- audio
- mobil
- Otomatisasi
- tersedia
- AWS
- latar belakang
- dasar
- Big data
- membangun
- Bangunan
- membangun
- built-in
- bisnis
- intelijen bisnis
- mobil
- kasus
- Kategori
- Pilih
- klasifikasi
- kode
- koleksi
- komunikasi
- kompleks
- konsul
- Wadah
- mengandung
- Biaya
- dibuat
- membuat
- kripto
- terbaru
- adat
- data
- ilmu data
- lebih dalam
- menyebarkan
- penggelaran
- penyebaran
- Deteksi
- dikembangkan
- Pengembangan
- sulit
- distribusi
- Buruh pelabuhan
- dokumen
- Tidak
- mendorong
- mudah
- ekosistem
- aktif
- Titik akhir
- insinyur
- penting
- diperkirakan
- contoh
- eksperimen
- Fitur
- Fields
- Akhirnya
- keuangan
- cocok
- Fokus
- berikut
- format
- penipuan
- Gratis
- penuh
- fungsi
- menghasilkan
- tujuan
- akan
- kesehatan
- High
- sangat
- Seterpercayaapakah Olymp Trade? Kesimpulan
- How To
- HTTPS
- manusia
- Manusia
- Ratusan
- Identifikasi
- mengenali
- gambar
- diimplementasikan
- Termasuk
- industri
- memasukkan
- wawasan
- Intelijen
- terlibat
- IT
- Pekerjaan
- Jobs
- kunci
- pelabelan
- Label
- tenaga kerja
- bahasa
- memimpin
- BELAJAR
- pengetahuan
- Tingkat
- Perpustakaan
- link
- memuat
- mesin
- Mesin belajar
- terbuat
- MEMBUAT
- berhasil
- pengelolaan
- pelaksana
- manual
- pabrik
- Matriks
- mengukur
- Metrik
- campur aduk
- ML
- model
- model
- Memantau
- lebih
- paling
- pindah
- Alam
- Alam
- buku catatan
- jumlah
- Penawaran
- urutan
- organisasi
- Lainnya
- Pasifik
- pasangan
- rekan
- prestasi
- orang
- Platform
- Titik
- positif
- Masalah
- proses
- Produksi
- program
- memprojeksikan
- memberikan
- publik
- menerbitkan
- Mentah
- real-time
- arsip
- daftar
- terdaftar
- relevan
- wajib
- Sumber
- Hasil
- ulasan
- Review
- Run
- berjalan
- Safety/keselamatan
- Ilmu
- sentimen
- Tanpa Server
- layanan
- Layanan
- set
- pengaturan
- Pendek
- Sederhana
- So
- larutan
- Solusi
- MEMECAHKAN
- spesialisasi
- Pengeluaran
- tumpukan
- Tahap
- awal
- mulai
- statistik
- penyimpanan
- Strategis
- mendukung
- pendukung
- target
- tugas
- tim
- Teknologi
- uji
- Melalui
- waktu
- token
- alat
- jalur
- Pelatihan
- Mengubah
- percobaan
- tutorial
- ui
- terakhir
- menemukan
- Pembaruan
- menggunakan
- biasanya
- nilai
- variasi
- Video
- View
- apakah
- tanpa
- Kerja
- bekerja
- bekerja
- tahun