Bagikan melalui


Mendesain data pelatihan untuk beban kerja AI di Azure

Saat Anda merancang data untuk fungsionalitas AI dalam aplikasi, pertimbangkan persyaratan non-fungsional, seperti pengoperasian, biaya, dan keamanan, dan persyaratan fungsional yang terkait dengan penyerapan, persiapan, dan validasi data.

Desain data dan desain aplikasi tidak dapat dipisahkan. Desain aplikasi mengharuskan Anda memahami kasus penggunaan, pola kueri, dan persyaratan kesegaran. Untuk mengatasi persyaratan bisnis yang mendorong kebutuhan untuk menggunakan AI, aplikasi mungkin memerlukan output dari model diskriminatif, model generatif, atau kombinasi jenis model.

Untuk menghasilkan hasil yang bermakna, model AI perlu dilatih. Pelatihan model melibatkan pengajaran model untuk mengklasifikasikan atau memprediksi situasi baru atau tidak jelas. Data pelatihan harus disesuaikan dengan masalah dan konteks beban kerja tertentu.

Pelatihan yang diawasi melibatkan penyediaan model dengan sampel berlabel. Jenis pelatihan ini berguna ketika hasil yang diinginkan jelas. Sebaliknya, pembelajaran yang tidak diawasi memungkinkan model mengidentifikasi pola dan hubungan dalam data tanpa panduan tentang output yang diharapkan. Selama pelatihan, jenis algoritma dan parameternya disesuaikan untuk mengontrol bagaimana model belajar. Pendekatan bervariasi tergantung pada jenis model, yang dapat mencakup jaringan saraf, pohon keputusan, dan lainnya.

Misalnya, model deteksi gambar biasanya dilatih pada tugas seperti deteksi objek, pengenalan wajah, atau pemahaman adegan. Mereka belajar dari gambar yang diannotasi untuk mengidentifikasi objek atau fitur tertentu. Contoh umum lainnya termasuk algoritma deteksi penipuan dan model prediksi titik harga. Model-model ini belajar dari data keuangan historis untuk membuat keputusan berdasarkan informasi.

Artikel ini berfokus terutama pada kasus penggunaan sebelumnya, di mana model dilatih sebelum dapat memberikan input yang bermakna ke aplikasi. Artikel ini mencakup panduan tentang pengumpulan, pemrosesan, penyimpanan, pengujian, dan pemeliharaan data. Desain data untuk ilmu data eksplorasi atau kecerdasan bisnis melalui AI tidak tercakup. Tujuannya adalah untuk mendukung kebutuhan pelatihan melalui strategi yang selaras dengan persyaratan beban kerja dengan memberikan rekomendasi tentang alur data pelatihan beban kerja AI.

Untuk informasi tentang desain data untuk model AI yang memerlukan konteks selama inferensi, lihat Desain data grounding.

Penting

Harapkan desain data menjadi proses berulang yang didasarkan pada eksperimen statistik. Untuk mencapai tingkat kualitas yang dapat diterima, sesuaikan data pelatihan, pemrosesannya, pengembangan fitur model, dan hiperparameter model (jika memungkinkan). Perulangan eksperimen ini biasanya terjadi baik selama pelatihan model awal maupun selama upaya penyempurnaan yang sedang berlangsung untuk mengatasi data dan penyimpangan model selama masa pakai fitur dalam beban kerja.

Rekomendasi

Berikut adalah ringkasan rekomendasi yang disediakan dalam artikel ini.

Rekomendasi Deskripsi
Pilih sumber data berdasarkan persyaratan beban kerja. Faktor sumber daya yang tersedia dan apakah sumber data dapat membantu Anda mencapai kualitas data yang dapat diterima untuk pelatihan model. Mencakup contoh positif dan negatif. Gabungkan berbagai jenis data untuk mencapai kelengkapan yang memadai untuk analisis dan pemodelan. Pertimbangkan teknik seperti Synthetic Minority Oversampling Technique (SMOTE) untuk kelangkaan atau ketidakseimbangan data.

Penyerapan dan analisis data
Lakukan analisis data pada data yang dikumpulkan lebih awal. Lakukan proses analisis, seperti Exploratory Data Analysis (EDA), offline. Pertimbangkan biaya dan implikasi keamanan. Untuk himpunan data kecil tanpa batasan sumber daya, Anda dapat mempertimbangkan untuk melakukan analisis di sumbernya.

Penyimpanan pengumpulan data
Pertahankan segmentasi data, jika persyaratan bisnis dan teknis memanggilnya. Jika Anda menggunakan sumber data yang memiliki persyaratan keamanan yang berbeda, buat alur terpisah untuk setiap model. Buat kontrol akses untuk membatasi interaksi dengan subset data tertentu.

Segmentasi data
Prapemroscesan data untuk membuatnya bermakna terhadap tujuan pelatihan. Perbaiki kualitas data yang diserap dengan memfilter kebisingan, cakupan data, mengatasi duplikat, dan menstandarkan berbagai format.

Praproscesing data
Hindari pelatihan tentang data kedaluarsa. Pantau penyimpangan data dan penyimpangan konsep sebagai bagian dari perulangan operasional dalam dan luar Anda untuk menjaga akurasi dan keandalan model dari waktu ke waktu. Memperbarui data pelatihan secara teratur dengan pengamatan baru. Tentukan kondisi yang memicu pelatihan ulang model dan tentukan frekuensi pembaruan.

Pemeliharaan data

Tipe-tipe data

Untuk membangun daya prediktif dalam model, Anda perlu mengumpulkan data, memprosesnya, dan mengumpankannya ke model. Proses ini biasanya dikonsep sebagai alur yang dipecah menjadi tahapan. Setiap tahap alur mungkin berurusan dengan himpunan data yang sama, tetapi mungkin melayani tujuan yang berbeda. Biasanya, Anda menangani data jenis ini:

  • Data sumber adalah data pengamatan titik waktu. Ini juga bisa menjadi data yang dapat diberi label untuk berfungsi sebagai input potensial ke alur data.

    Data ini biasanya diperoleh dari produksi atau dari sumber eksternal. Sumber data ini dapat berada di akun penyimpanan, database, API, atau sumber lainnya. Data dapat dalam berbagai format data, seperti database OLTP, dokumen yang tidak terstruktur, atau file log. Data ini berfungsi sebagai input potensial ke alur data.

  • Data pelatihan adalah subkumpulan data sumber yang digunakan untuk menyediakan sampel ke model. Sampel adalah data deskriptif yang telah dihitung sebelumnya yang membantu model mempelajari pola dan hubungan. Tanpa data ini, model tidak dapat menghasilkan output yang relevan.

  • Data evaluasi adalah subset data sumber yang digunakan untuk memantau dan memvalidasi performa model pembelajaran mesin selama pelatihan. Ini berbeda dari data pelatihan dan pengujian dan digunakan untuk mengevaluasi performa model secara berkala selama fase pelatihan dan memandu penyetelan hiperparameter. Untuk informasi selengkapnya, lihat Evaluasi model.

  • Data pengujian digunakan untuk memvalidasi kekuatan prediktif model terlatih. Data ini diambil sampelnya dari data sumber yang tidak digunakan untuk pelatihan. Ini berisi pengamatan dari produksi sehingga proses pengujian konklusif. Dari perspektif desain data, Anda perlu menyimpan data ini. Untuk informasi tentang model pengujian, lihat area Desain pengujian .

Dalam beberapa kasus, informasi yang disediakan oleh pengguna selama interaksi dengan aplikasi akhirnya dapat menjadi data sumber. Secara umum, kami menyarankan agar input pengguna yang digunakan dengan cara ini berkualitas tinggi. Jika tidak, kebutuhan untuk terus menangani masalah kualitas di hilir dapat menjadi bermasalah. Panduan tentang menangani data pengguna tidak tercakup dalam artikel ini.

Penyerapan dan analisis data

Data pelatihan dikumpulkan dalam jendela yang telah ditentukan yang memiliki representasi yang memadai untuk melatih jenis model yang Anda pilih. Misalnya, ketika Anda melatih model klasifikasi biner, data pelatihan harus menyertakan representasi dari apa yang terjadi (contoh positif) dan apa yang bukan kasusnya (contoh negatif). Agar data pelatihan bermakna, lakukan EDA lebih awal selama desain fitur.

EDA membantu menganalisis data sumber untuk mengidentifikasi karakteristik, hubungan, pola, dan masalah kualitas. Anda dapat melakukan EDA langsung di penyimpanan data sumber atau mereplikasi data ke penyimpanan terpusat, seperti data lake atau gudang data. Hasil dari proses ini adalah menginformasikan pengumpulan dan pemrosesan data untuk pelatihan model yang efektif.

Catatan

Meskipun EDA adalah proses pra-produksi, EDA menggunakan data yang bersumber dari produksi. Terapkan tingkat kontrol yang sama untuk proses ini seperti yang Anda lakukan untuk produksi.

Berikut adalah beberapa pertimbangan untuk mengumpulkan data sebagai persiapan untuk pelatihan model.

Sumber data

Data dapat dikumpulkan dari sumber-sumber ini:

  • Data kepemilikan dibuat atau dimiliki oleh organisasi. Ini tidak ditujukan untuk konsumsi publik. Ini melayani tujuan internal.

  • Sumber publik dapat diakses oleh siapa saja. Sumber-sumber ini termasuk situs web, makalah penelitian, dan database yang dibagikan secara publik. Ini mungkin khusus untuk area niche. Misalnya, konten dari Wikipedia dan PubMed dianggap dapat diakses publik.

Pilihan sumber data Anda bergantung pada persyaratan beban kerja, sumber daya yang tersedia, dan kualitas data yang dapat diterima untuk melatih model. Himpunan data yang tidak seimbang dapat menyebabkan model bias, jadi Anda perlu merancang pengumpulan data untuk mendapatkan sampel data perwakilan yang memadai. Anda mungkin perlu melakukan oversample data minoritas atau data mayoritas undersample. Jika data langka atau tidak seimbang, pertimbangkan teknik seperti pembuatan data SMOTE dan Sintetis.

Penyimpanan pengumpulan data

Ada dua opsi utama untuk mengumpulkan data sumber:

  • Mengkueri data di sumber data
  • Menyalin data ke penyimpanan data yang dilokalkan lalu mengkueri penyimpanan tersebut

Pilihannya tergantung pada persyaratan beban kerja dan volume data. Jika Anda memiliki jumlah data yang relatif kecil, sistem sumber mungkin menangani kueri mentah Anda secara langsung. Namun, praktik umumnya adalah mengkueri dan menganalisis dari penyimpanan yang dilokalkan.

Tradeoff. Meskipun penyimpanan data yang dilokalkan mungkin memfasilitasi analisis dan proses pelatihan, Anda juga perlu menyeimbangkan biaya, keamanan, dan persyaratan model.

Menduplikasi data menimbulkan biaya penyimpanan dan komputasi. Mempertahankan salinan terpisah memerlukan sumber daya tambahan. Salinan lokal mungkin berisi informasi sensitif. Jika ya, Anda perlu melindungi data dengan menggunakan langkah-langkah keamanan reguler.

Jika Anda menggunakan data produksi untuk data pelatihan, data tersebut harus tunduk pada semua batasan klasifikasi data asli dari data tersebut.

Data dapat diberikan ke proses pelatihan (mode pendorongan) atau proses itu sendiri dapat mengkueri sumber data (mode penarikan). Pilihannya tergantung pada kepemilikan, efisiensi, dan batasan sumber daya.

Ketika data didorong ke beban kerja, pemilik sumber data bertanggung jawab untuk memberikan data baru. Pemilik beban kerja menyediakan lokasi yang sesuai di penyimpanan data lokal mereka untuk menyimpan data. Pendekatan ini berlaku untuk data kepemilikan yang dimiliki oleh organisasi, bukan untuk sumber publik.

Ada dua pendekatan yang dapat Anda gunakan untuk menarik data. Dalam satu pendekatan, beban kerja kueri terhadap penyimpanan data, mengambil data yang diperlukan, dan menempatkannya di penyimpanan yang dilokalkan. Cara lain adalah dengan melakukan kueri real-time dalam memori. Keputusan tergantung pada volume data dan sumber daya komputasi yang tersedia. Untuk himpunan data yang lebih kecil, pengambilan dalam memori mungkin cukup untuk pelatihan model.

Terlepas dari apakah Anda menggunakan mode pendorongan atau penarikan, hindari model pelatihan pada data kedaluarsa. Frekuensi pembaruan data harus selaras dengan persyaratan beban kerja.

Segmentasi data

Persyaratan khusus beban kerja mungkin mengharuskan segmentasi data. Berikut adalah beberapa kasus penggunaan potensial:

  • Persyaratan keamanan sering mendorong keputusan segmentasi. Misalnya, batasan peraturan dapat mencegah ekspor data di seluruh wilayah geopolitik. Jika desain aplikasi Anda memungkinkan penggunaan model terpisah, desain data menggabungkan alur data terpisah untuk setiap model.

    Namun, jika satu model digunakan, sumber data tersegmentasi mengumpan ke dalam model tersebut. Anda perlu melatih model pada data dari kedua geografi, yang berpotensi menambah kompleksitas.

    Apakah aplikasi menggunakan satu model atau beberapa model, pertahankan langkah-langkah keamanan pada setiap segmen data sehingga dilindungi dengan tingkat ketelisian yang sama dengan data di asal.

  • Tingkat kesegaran data dapat menjadi faktor untuk memisahkan data. Data dari sumber yang berbeda mungkin disegarkan pada interval waktu yang bervariasi. Jika data berubah, pelatihan ulang menjadi diperlukan. Segmentasi memungkinkan kontrol terperinci terhadap siklus hidup data. Pertimbangkan untuk menggunakan tabel atau alur terpisah untuk segmen data yang berbeda.

Terlepas dari kasus penggunaan, ketika data disegmentasi, kontrol akses adalah kunci. Profesional data, seperti insinyur data dan ilmuwan data, menjelajahi data sumber yang tersedia untuk memahami pola dan hubungan. Wawasan mereka berkontribusi pada model pelatihan yang memprediksi hasil. Buat kontrol akses untuk memastikan bahwa hanya pengguna yang berwenang yang dapat berinteraksi dengan subset data tertentu. Terapkan hak istimewa paling sedikit pada data yang dianggap relevan. Berkolaborasi dengan pemilik data untuk menyiapkan izin yang sesuai.

Praproses data

Dalam skenario dunia nyata, data sumber tidak hanya disimpan untuk skenario AI. Ada proses perantara yang menyiapkan data untuk pelatihan. Selama tahap ini, data dilucuti dari kebisingan, sehingga berguna untuk dikonsumsi. Saat berhadapan dengan data sumber, ilmuwan data terlibat dalam proses eksplorasi, eksperimen, dan pengambilan keputusan. Tujuan utama mereka adalah untuk mengidentifikasi dan mengekstrak bagian data sumber yang memegang kekuatan prediktif.

Logika praproses tergantung pada masalah, jenis data, dan hasil yang diinginkan. Berikut adalah beberapa teknik umum untuk praproses. Daftar ini tidak lengkap. Kriteria aktual untuk beban kerja Anda akan didorong oleh persyaratan bisnis.

  • Kualitas. Pra-pemrosesan dapat membantu Anda memastikan bahwa data pelatihan dilucuti dari kebisingan. Tujuannya adalah untuk memastikan bahwa setiap baris dalam data pelatihan Anda mewakili pengamatan yang jelas atau contoh yang baik yang relevan dengan kasus penggunaan Anda dan untuk menghilangkan pengamatan yang tidak memiliki daya kualitas atau prediktif. Misalnya, jika Anda menyusun ulasan produk, Anda dapat memilih untuk menghilangkan data yang terlalu singkat. Anda perlu menemukan kualitas data apa yang menghasilkan hasil prediktif yang bermakna.

  • Cakupan ulang. Bidang data sumber yang terlalu spesifik dapat membatasi kekuatan prediktif. Misalnya, pertimbangkan bidang alamat. Memperluas cakupan dari alamat lengkap (nomor rumah dan nama jalan) ke tingkat yang lebih tinggi, seperti kota, negara bagian, atau negara/wilayah, mungkin lebih relevan.

  • Deduplikasi. Menghilangkan redundansi dapat memastikan bahwa data pelatihan Anda tetap akurat dan representatif. Dalam kasus tertentu, frekuensi pengamatan yang dibuat tidak relevan. Misalnya, saat Anda memindai log, jika entri log muncul 1.000 kali, itu menunjukkan frekuensinya. Ini tidak selalu menyiratkan bahwa itu adalah kesalahan yang lebih serius daripada log yang terjadi hanya sekali. Jenis redundansi ini dapat menimbulkan kebisingan.

  • Penanganan data sensitif. Hilangkan data pribadi kecuali itu benar-benar penting untuk kekuatan prediktif model dengan cara yang tidak dapat dicapai melalui anonimisasi. Data pelatihan harus efektif tanpa mengorbankan privasi. Jika data memberikan nilai, Anda perlu mengetahui pertimbangan etis penanganan data sensitif. Untuk mengetahui informasi selengkapnya, lihat AI yang Bertanggung Jawab.

  • Transformasi standar. Pakar domain menganggap teknik sebelumnya sebagai bagian inti dari rekayasa fitur. Cakupan luas dan data sumber yang beragam akhirnya perlu digabungkan ke penyimpanan fitur tempat fitur diatur (misalnya, ke dalam tabel fitur) untuk tujuan eksplisit model pelatihan. Setelah Anda memilih data prediktif untuk pelatihan, ubah data ke format standar. Standardisasi juga memastikan kompatibilitas dengan model pelatihan.

    Mengonversi gambar menjadi representasi teks adalah bentuk transformasi. Misalnya, Anda dapat mengonversi dokumen atau gambar yang dipindai menjadi teks yang dapat dibaca mesin.

    Untuk memastikan kompatibilitas dengan model, Anda mungkin perlu menyesuaikan orientasi atau rasio aspek gambar agar sesuai dengan harapan model.

Catatan

Mencampur sejumlah besar data terstruktur dan tidak terstruktur dapat meningkatkan waktu pemrosesan. Tim beban kerja harus mengukur dampak pemrosesan format yang beragam. Ketika jendela antara upaya pelatihan ulang menjadi lebih pendek, jumlah waktu yang dihabiskan untuk praproscesing menjadi lebih penting.

Retensi data

Setelah Anda melatih model, evaluasi apakah akan menghapus data yang digunakan untuk pelatihan dan membangun kembali model untuk jendela pelatihan berikutnya.

Jika data tetap relatif tidak berubah, pelatihan ulang mungkin tidak diperlukan, kecuali terjadi penyimpangan model. Jika akurasi prediksi menurun, Anda perlu melatih kembali model. Anda dapat memilih untuk menyerap data lagi, melakukan praprosces, dan membangun model. Tindakan tersebut adalah yang terbaik jika ada delta yang signifikan dalam data sejak jendela pelatihan terakhir. Jika ada data dalam volume besar dan belum banyak berubah, Anda mungkin tidak perlu melakukan praprosces dan membangun kembali model. Dalam hal ini, pertahankan data, lakukan pembaruan di tempat, dan pelatihan ulang model. Tentukan berapa lama Anda ingin menyimpan data pelatihan.

Secara umum, hapus data dari penyimpanan fitur untuk mengurangi kekacauan dan biaya penyimpanan untuk fitur yang memiliki performa buruk dan yang tidak lagi relevan dengan model saat ini atau di masa mendatang. Jika Anda menyimpan data, harap kelola biaya dan atasi masalah keamanan, yang merupakan kekhawatiran umum duplikasi data.

Pelacakan silsilah data

Silsilah data mengacu pada pelacakan jalur data dari sumbernya ke penggunaannya dalam pelatihan model. Melacak silsilah data sangat penting untuk penjelasan. Meskipun pengguna mungkin tidak memerlukan informasi terperinci tentang asal data, informasi tersebut sangat penting untuk tim tata kelola data internal. Metadata silsilah memastikan transparansi dan akuntabilitas, meskipun tidak secara langsung digunakan oleh model. Ini berguna untuk tujuan penelusuran kesalahan. Ini juga membantu Anda menentukan apakah bias diperkenalkan selama pra-pemrosesan data.

Gunakan fitur platform untuk pelacakan silsilah data saat Anda bisa. Misalnya, Azure Pembelajaran Mesin terintegrasi di Microsoft Purview. Integrasi ini memberi Anda akses ke fitur untuk penemuan data, pelacakan silsilah data, dan tata kelola sebagai bagian dari siklus hidup MLOps.

Pemeliharaan data

Semua model dapat menjadi basi dari waktu ke waktu, yang menyebabkan daya prediktif model atau relevansi membusuk. Beberapa perubahan eksternal dapat menyebabkan kerusakan, termasuk pergeseran perilaku pengguna, dinamika pasar, atau faktor lainnya. Model yang dilatih beberapa waktu lalu mungkin kurang relevan karena perubahan keadaan. Untuk membuat prediksi dengan keakuratan yang lebih baik, Anda memerlukan data terbaru.

  • Mengadopsi model yang lebih baru. Untuk memastikan relevansi, Anda memerlukan perulangan operasional yang terus mengevaluasi performa model dan mempertimbangkan model yang lebih baru, yang membuat alur data minimal mengganggu. Anda juga dapat mempersiapkan perubahan yang lebih besar yang melibatkan desain ulang siklus hidup dan alur data.

    Saat memilih model baru, Anda tidak perlu memulai dengan himpunan data baru. Pengamatan yang ada yang digunakan untuk pelatihan mungkin tetap berharga bahkan selama pengalihan model. Meskipun model baru mungkin mengungkapkan skenario yang lebih sempit, proses mendasar tetap serupa. Pendekatan manajemen data seperti penyimpanan fitur dan jala data dapat menyederhanakan adopsi model pembelajaran mesin baru.

  • Operasi berbasis pemicu vs. rutin. Pertimbangkan apakah pelatihan ulang model harus dipicu oleh peristiwa atau kondisi tertentu. Misalnya, ketersediaan data baru yang lebih relevan atau penurunan relevansi di bawah garis besar yang ditetapkan dapat memicu pelatihan ulang. Keuntungan dari pendekatan ini adalah responsivitas dan pembaruan tepat waktu.

    Pemeliharaan juga dapat dijadwalkan pada interval tetap reguler, seperti harian atau mingguan. Untuk operasi anti-kegagalan, pertimbangkan kedua pendekatan.

  • Penghapusan data. Hapus data yang tidak lagi digunakan untuk pelatihan untuk mengoptimalkan penggunaan sumber daya dan meminimalkan risiko penggunaan data yang kedaluwarsa atau tidak relevan untuk pelatihan model.

    Hak untuk dilupakan mengacu pada hak individu untuk menghapus data pribadi mereka dari platform atau database online. Pastikan untuk memiliki kebijakan untuk menghapus data pribadi yang digunakan untuk pelatihan.

  • Retensi data. Dalam beberapa situasi, Anda perlu membangun kembali model yang ada. Misalnya, untuk pemulihan bencana, model harus diregenerasi persis seperti sebelum peristiwa bencana. Sebaiknya Anda memiliki alur data sekunder yang mengikuti persyaratan beban kerja alur utama, seperti mengatasi kerusakan model, pembaruan rutin melalui operasi berbasis pemicu atau rutin, dan tugas pemeliharaan lainnya.

Tradeoff. Pemeliharaan data mahal. Ini melibatkan penyalinan data, membangun alur redundan, dan menjalankan proses rutin. Perlu diingat bahwa pelatihan rutin mungkin tidak meningkatkan kualitas jawaban. Ini hanya memberikan jaminan terhadap keusangan. Mengevaluasi pentingnya perubahan data sebagai sinyal untuk menentukan frekuensi pembaruan.

Pastikan pemeliharaan data dilakukan sebagai bagian dari operasi model. Anda harus membuat proses untuk menangani perubahan melalui otomatisasi sebanyak mungkin dan menggunakan sekumpulan alat yang tepat. Untuk informasi selengkapnya, lihat MLOps dan GenAIOps untuk beban kerja AI di Azure.

Langkah berikutnya