Pengantar Amazon SageMaker

Herley Shaori
5 min readNov 7, 2022

--

Praktisi pemelajaran mesin (ML) menggunakan banyak tools selama perjalanan proyek perangkat lunak seperti perpustakaan sumber terbuka (open source library), kerangka kerja deep learning neural networks, dan banyak lagi. Selain itu, praktisi pemelajaran mesin sering harus menulis kode program mereka sendiri untuk otomatisasi dan orkestrasi. Mengelola kode program sendiri ini dan infrastruktur yang mendasari model pemelajaran mesin memakan waktu lama serta rawan kesalahan. Masalah tersebut adalah masalah yang ditangani oleh Amazon SageMaker (https://aws.amazon.com/sagemaker/). Amazon SageMaker adalah layanan terkelola sepenuhnya (fully managed service) yang membantu Anda membangun dan menerapkan model pemelajaran mesin dengan cepat. Baik Anda baru memulai pemelajaran mesin atau praktisi berpengalaman, AWS SageMaker akan meningkatkan kelincahan alur kerja, serta kinerja model pemelajaran mesin Anda. Tujuan yang hendak dicapai adalah Anda akan dapat fokus 100% pada masalah pemelajaran mesin yang dihadapi bukan malah menghabiskan waktu untuk menginstal, mengelola, mengurus skala aplikasi (baik vertical scaling maupun horizontal scaling) dan infrastruktur pemelajaran mesin.

Saya akan membahas kemampuan utama SageMaker, bagaimana mereka membantu memecahkan masalah yang dihadapi oleh praktisi pemelajaran mesin, dan cara menyiapkan SageMaker. Pokok bahasan pada artikel ini adalah:

1. Menjelajahi kemampuan Amazon SageMaker.

2. Menyiapkan Amazon SageMaker di komputer lokal Anda. Lokal berarti laptop Anda. Non-lokal berarti server.

3. Menyiapkan Amazon SageMaker Studio.

4. Menerapkan solusi dan model sekali klik (one click model) dengan Amazon SageMaker JumpStart.

Kebutuhan Teknis

Anda diharapkan telah memenuhi kebutuhan teknis berikut:

1. Akun AWS yang aktif.

2. AWS CLI.

3. Python versi 3.x.x, dimana x.x adalah sembarang versi.

Menjelajahi kemampuan Amazon SageMaker

Amazon SageMaker diluncurkan di AWS re:Invent 2017 (http://aws-reinvent-audio.s3-website.us-east-2.amazonaws.com/2017/2017.html). Sejak saat itu, berbagai fitur baru telah ditambahkan: Anda dapat melihat daftar lengkap (dan terus bertambah) di https://aws.amazon.com/about-aws/whats-new/machine-learning. Pada bagian ini, Anda akan mempelajari tentang kemampuan utama Amazon SageMaker dan tujuannya.

Kemampuan utama Amazon SageMaker

Kemampuan utama Amazon SageMaker adalah mempersiapkan, membangun, melatih, mengoptimalkan, dan menerapkan model pada infrastruktur yang terkelola sepenuhnya pada skala apa pun. Hal ini memungkinkan Anda fokus mempelajari dan memecahkan masalah machine learning yang dihadapi, daripada menghabiskan waktu dan sumber daya untuk membangun dan mengelola infrastruktur.

Saya membagi kemampuan utama Amazon SageMaker menjadi empat bagian yaitu:

1. Kemudahan dalam mempersiapkan data.

2. Kemudahan dalam implementasi perangkat lunak.

3. Kemudahan dalam melatih model pemelajaran mesin.

4. Kemudahan dalam deploy model pemelajaran mesin.

Kemudahan dalam Mempersiapkan Data

1. Amazon SageMaker Ground Truth. Anotasi data pada berbagai skala. Alur kerja untuk kasus penggunaan populer sudah ada di dalamnya, misalnya seperti deteksi citra, ekstraksi entitas, dll, dan Anda dapat mengimplementasikannya sendiri. Pekerjaan anotasi dapat Anda distribusikan kepada pekerja yang termasuk dalam tenaga kerja swasta, pihak ketiga, atau publik.

2. Amazon SageMaker Processing. Jalankan batch job untuk pemrosesan data (dan tugas lain seperti evaluasi model) menggunakan kode Anda sendiri yang ditulis dengan scikit-learn atau Spark.

3. Amazon SageMaker Data Wrangler. Layanan ini menggunakan antarmuka grafis, menerapkan ratusan transformasi data bawaan (atau milik Anda sendiri) ke kumpulan data tabular, dan mengekspornya dalam satu klik ke Jupyter Notebook. Contoh transformasi data bawaan adalah seleksi kolom, seleksi baris, aggregat data, sebagaimana perintah SQL dasar.

4. Amazon SageMaker Feature Store. Simpan fitur rekayasa Anda secara offline di Amazon S3 untuk membangun kumpulan data, atau online untuk menggunakannya pada waktu prediksi. Istilah offline dan online mengacu pada proses pelatihan dan inferensi pemelajaran mesin.

5. Amazon SageMaker Clarify. Merupakan layanan yang menggunakan berbagai metrik statistik, analisis potensi bias yang ada dalam dataset dan model Anda. Amazon SageMaker clarify juga dapat menjelaskan bagaimana performa model Anda dalam memprediksi.

Kemudahan dalam Implementasi Perangkat Lunak

1. Menggunakan notebook. Anda dapat menggunakan pustaka notebook populer seperti Jupyter Notebook.

2. Menggunakan Amazon SageMaker Studio. Terintegrasi ujung ke ujung, lingkungan pengembangan untuk proyek pembelajaran mesin, menyediakan antarmuka grafis intuitif untuk banyak kemampuan SageMaker. Amazon SageMaker Studio sekarang merupakan cara yang lebih disukai untuk menjalankan notebook, dan kami menyarankan Anda untuk menggunakannya daripada pilihan pertama.

Kemudahan dalam Melatih Model Pemelajaran Mesin

Ketika datang untuk bereksperimen dengan algoritme, Anda dapat menggunakan pilihan berikut:

1. Kumpulan 17 algoritma bawaan untuk pemelajaran mesin dan deep learning, sudah diterapkan dan dioptimalkan untuk berjalan secara efisien di AWS. Tidak ada kode program pemelajaran mesin yang perlu ditulis!

2. Kumpulan kerangka kerja sumber terbuka bawaan ( TensorFlow , PyTorch , Apache MXNet , scikit-learn , dan lainnya). Anda dapat menulis kode program Anda sendiri jika menggunakan pilihan ini.

3. Tulis kode program Anda sendiri dalam kontainer Anda sendiri. Anda dapat menggunakan bahasa pemograman Python, Java, C, C++, dll.

4. Algoritma dan model pra-latih (pretrained model) dari AWS Maketplace untuk pemelajaran mesin.

5. Solusi pemelajaran mesin dan model terkini juga dapat Anda gunakan dalam satu klik pada Amazon Jumpstart.

6. Amazon SageMaker Autopilot menggunakan AutoMachine untuk membuat, melatih, dan mengoptimalkan model secara otomatis tanpa perlu menulis satu baris kode pemelajaran mesin.

Pelatihan Pemelajaran Mesin

Seperti disebutkan sebelumnya, Amazon SageMaker menangani penyediaan dan pengelolaan infrastruktur pelatihan pemelajaran mesin Anda. Anda tidak menghabiskan waktu untuk mengelola server sehingga Anda akan dapat fokus pada pembelajaran mesin sebagai gantinya. Selain itu, Amazon SageMaker membawa kemampuan canggih seperti berikut:

1. Penyimpanan terkelola menggunakan Amazon S3, Amazon EFS, atau Amazon FSx for Lustre bergantung pada persyaratan kinerja Anda.

2. Pelatihan pemelajaran mesin menggunakan EC2 spot instance, menggunakan instans Spot Amazon EC2 untuk pelatihan guna mengurangi biaya hingga 80%.

3. Pelatihan terdistribusi secara otomatis yang mendistribusikan tugas pelatihan skala besar pada sekelompok instans terkelola, menggunakan teknik lanjut seperti data parallelism dan model parallelism.

4. Pipeline yang mengalirkan dataset besar dari Amazon S3 ke instans pelatihan sehingga Anda tidak perlu menyalin data secara manual.

5. Penyetelan model otomatis menjalankan hyperparameter optimization untuk menghadirkan model dengan akurasi tinggi yang lebih cepat.

6. Amazon SageMaker Experiments dengan mudah melacak, mengatur, dan membandingkan semua pekerjaan SageMaker Anda.

7. Amazon SageMaker Debugger menangkap status model internal selama pelatihan, memeriksanya untuk mengamati bagaimana model belajar, mendeteksi kondisi yang tidak diinginkan yang menurunkan nilai akurasi, dan membuat profil kinerja pelatihan model pemelajaran mesin Anda.

Model Deployment

Sama seperti pelatihan model pemelajaran mesin, Amazon SageMaker menangani semua infrastruktur untuk deployment model pemelajaran mesin Anda. Amazon SageMaker juga menghadirkan fitur tambahan sebagai berikut:

1. Real-time endpoints. Fitur ini mengizinkan Anda untuk membuat API HTTPS yang dapat dipanggil untuk melakukan inferensi model. Anda dapat melakukan autoscale pada pilihan ini.

2. Batch transform menggunakan model pemelajaran mesin untuk memprediksi data uji dalam batch mode.

3. Amazon Elastic Inference menambahkan akselerasi GPU untuk menemukan rasio biaya/kinerja terbaik untuk infrastruktur inferensi model pemelajaran mesin Anda.

4. Amazon SageMaker Model Monitor menangkap data yang dikirim ke endpoints dan membandingkannya dengan acuan baseline untuk mengidentifikasi dan memberikan peringatan terkait masalah kualitas data (fitur yang hilang, data drift, dan banyak lagi).

5. Amazon SageMaker Neo mengompilasi model untuk arsitektur perangkat keras tertentu, termasuk embedded system dan menerapkan versi yang dioptimalkan menggunakan lightweight runtime. Menurut saya, layanan ini mirip dengan Tensorflow Lite.

6. Amazon SageMaker Pipelines memungkinkan Anda membangun end-to-end automated pipelines untuk menjalankan fase persiapan data, pelatihan model pemelajaran mesin hingga proses deployment.

Sign up to discover human stories that deepen your understanding of the world.

Free

Distraction-free reading. No ads.

Organize your knowledge with lists and highlights.

Tell your story. Find your audience.

Membership

Read member-only stories

Support writers you read most

Earn money for your writing

Listen to audio narrations

Read offline with the Medium app

--

--

Herley Shaori
Herley Shaori

Written by Herley Shaori

I love to write about AWS and other related computer science topics.

No responses yet

Write a response