Federated learning: panduan tentang definisi dan cara kerjanya

Federated learning dapat mentransformasi cara kita membangun model AI. Alih-alih mengumpulkan sejumlah besar data sensitif ke satu lokasi pusat, federated learning membawa proses pelatihan langsung ke data. Pendekatan terdesentralisasi ini tidak hanya dapat menawarkan perlindungan privasi yang kuat, tetapi juga membantu membuka kemungkinan baru untuk kolaborasi dan peningkatan model di berbagai industri.

Apa itu federated learning?

Federated learning (FL) adalah pendekatan machine learning yang memungkinkan pelatihan model AI bersama menggunakan data dari berbagai perangkat atau server edge terdesentralisasi. Proses ini terjadi tanpa perlu menukar sampel data lokal. Anggap saja hal ini sebagai proses pembelajaran kolaboratif di mana setiap peserta berkontribusi untuk mencapai tujuan bersama tanpa mengungkapkan informasi pribadi mereka.

Hal ini sangat berbeda dengan machine learning tradisional, yang biasanya memerlukan penggabungan semua data ke dalam repositori pusat untuk pelatihan model. Meskipun pendekatan terpusat telah mendorong kemajuan AI yang signifikan, pendekatan ini dapat menimbulkan kekhawatiran tentang privasi data, keamanan, dan kepatuhan terhadap peraturan seperti GDPR. Federated learning menawarkan alternatif yang menjaga privasi dengan menyimpan data sensitif secara lokal di perangkat pengguna atau dalam lingkungan aman organisasi.

Federated learning versus machine learning

Seperti yang disebutkan di atas, perbedaan utama antara federated learning dan machine learning tradisional yang terpusat terletak pada lokasi data selama proses pelatihan.

  • Machine learning tradisional (terpusat): Data dikumpulkan dari berbagai sumber dan disatukan di satu tempat, seperti server cloud atau pusat data. Model machine learning kemudian dilatih secara langsung pada set data gabungan ini. Metode ini dapat menawarkan keuntungan seperti akses data yang mudah dan pengembangan yang lebih sederhana, tetapi juga dapat menimbulkan risiko privasi yang signifikan dan potensi kerentanan jika repositori data pusat disusupi.
  • Federated learning (terdesentralisasi): Alih-alih memindahkan data, model machine learning dikirim ke data, dan peserta (klien) melatih model pada data lokal mereka. Hanya update model—seperti bobot atau gradien yang dipelajari—yang kemudian dikirim kembali ke server pusat untuk diagregasikan. Proses ini memungkinkan model global untuk belajar dari set data yang beragam tanpa pernah mengakses informasi mentah dan sensitif dari satu peserta pun.

Meskipun machine learning terpusat sudah mapan dan sering kali lebih mudah diimplementasikan, federated learning semakin populer karena secara inheren dapat mengatasi masalah privasi data, mengurangi persyaratan bandwidth, dan memungkinkan pelatihan model pada data yang mungkin tidak dapat diakses karena peraturan atau perjanjian kerahasiaan. 

Berbagai jenis federated learning

Federated learning dapat disesuaikan dengan berbagai kebutuhan. Perbedaan utama sering kali berasal dari cara data didistribusikan atau cara peserta berkolaborasi. Berikut perincian jenis-jenisnya yang umum:

Jenis federated learning

Tumpang tindih data

Perbedaan utama

Contoh aplikasi

Horizontal federated learning

Ruang fitur yang sama, instance data yang berbeda.

Peserta berbagi skema data yang sama tetapi memiliki set sampel yang berbeda. Pelatihan didistribusikan di seluruh sampel ini.

Prediksi keyboard seluler, personalisasi perangkat cerdas, deteksi spam kolaboratif.

Vertical federated learning

Instance data yang sama, fitur yang berbeda.

Peserta berbagi sampel yang sama (misalnya, pengguna, pelanggan), tetapi memiliki fitur yang berbeda untuk sampel tersebut.

Deteksi penipuan bersama (menggabungkan data keuangan dan e-commerce), penilaian kredit, rekomendasi yang dipersonalisasi menggunakan sumber data pelengkap.

Federated transfer learning

Fitur dan sampel yang berbeda.

Menggunakan pengetahuan dari tugas/domain sumber untuk meningkatkan performa pada tugas/domain target yang terkait tetapi berbeda. Hal ini sering kali melibatkan model terlatih yang diadaptasi atau disesuaikan oleh peserta pada data lokal mereka dalam setelan federasi.

Mengadaptasi model medis umum ke data pasien rumah sakit tertentu, atau menerapkan model yang dilatih pada set data besar ke aplikasi industri khusus.


Jenis federated learning

Tumpang tindih data

Perbedaan utama

Contoh aplikasi

Horizontal federated learning

Ruang fitur yang sama, instance data yang berbeda.

Peserta berbagi skema data yang sama tetapi memiliki set sampel yang berbeda. Pelatihan didistribusikan di seluruh sampel ini.

Prediksi keyboard seluler, personalisasi perangkat cerdas, deteksi spam kolaboratif.

Vertical federated learning

Instance data yang sama, fitur yang berbeda.

Peserta berbagi sampel yang sama (misalnya, pengguna, pelanggan), tetapi memiliki fitur yang berbeda untuk sampel tersebut.

Deteksi penipuan bersama (menggabungkan data keuangan dan e-commerce), penilaian kredit, rekomendasi yang dipersonalisasi menggunakan sumber data pelengkap.

Federated transfer learning

Fitur dan sampel yang berbeda.

Menggunakan pengetahuan dari tugas/domain sumber untuk meningkatkan performa pada tugas/domain target yang terkait tetapi berbeda. Hal ini sering kali melibatkan model terlatih yang diadaptasi atau disesuaikan oleh peserta pada data lokal mereka dalam setelan federasi.

Mengadaptasi model medis umum ke data pasien rumah sakit tertentu, atau menerapkan model yang dilatih pada set data besar ke aplikasi industri khusus.


Bagaimana cara kerja federated learning?

Federated learning bekerja melalui proses berulang yang melibatkan koordinator pusat (biasanya server) dan beberapa klien yang berpartisipasi (perangkat atau organisasi). Alur kerja umum dapat dipecah menjadi langkah-langkah utama berikut:

1. Distribusi model awal

Proses ini dimulai dengan server pusat yang menginisialisasi model machine learning global. Model ini berfungsi sebagai titik awal untuk pelatihan kolaboratif. Server kemudian mendistribusikan model global ini ke subset perangkat klien yang berpartisipasi.

2. Pelatihan model lokal

Setiap perangkat klien yang dipilih menerima model global. Dengan menggunakan data lokalnya sendiri, klien melatih model, mengupdate parameternya berdasarkan pola dan informasi yang ada dalam set data lokal tersebut. Yang terpenting, data mentah tetap berada di perangkat klien selama langkah ini, dan tidak pernah dikirim ke server.

3. Agregasi update model

Setelah pelatihan lokal, setiap klien mengirimkan parameter model yang diupdate (misalnya, gradien atau bobot) kembali ke server pusat. Update ini merepresentasikan apa yang dipelajari model dari data lokal, tetapi tidak mengekspos data itu sendiri.

4. Update model global

Server pusat menerima update model dari beberapa klien. Kemudian, server pusat mengagregasi update ini, sering kali dengan merata-ratakannya (metode umum yang digunakan adalah federated averaging, atau FedAvg), untuk membuat versi baru yang lebih baik dari model global. Model gabungan ini mendapatkan manfaat dari pembelajaran kolektif di semua klien yang berpartisipasi. 

5. Penyempurnaan iteratif

Server kemudian mendistribusikan model global yang baru diupdate ini kembali ke serangkaian klien baru (atau klien yang sama) untuk putaran pelatihan lokal berikutnya. Siklus ini berulang beberapa kali, yang secara progresif menyempurnakan model global dengan setiap iterasi hingga mencapai tingkat akurasi atau konvergensi yang diinginkan.

Komponen utama sistem federated learning

Sistem federated learning yang umum terdiri dari beberapa elemen yang saling terhubung:

Klien (pemilik data)

Ini adalah perangkat atau organisasi individual yang menyimpan data dan melakukan pelatihan model lokal. Klien dapat berupa ponsel dan perangkat IoT hingga rumah sakit atau lembaga keuangan. Klien bertanggung jawab menjalankan model secara lokal dan membuat update parameter.

Server pusat (agregator)

Server pusat bertindak sebagai orkestrator proses federated learning. Server ini menginisialisasi dan mendistribusikan model global, mengumpulkan update model dari klien, menggabungkan update ini untuk menyempurnakan model global, lalu mendistribusikan kembali model yang telah diupdate. Gemini tidak mengakses data mentah klien secara langsung.

Protokol komunikasi

Ini menentukan cara klien dan server bertukar informasi, terutama parameter dan update model. Protokol komunikasi yang efisien dan aman sangat penting, terutama mengingat potensi jumlah klien yang sangat besar dan kondisi jaringan yang bervariasi. 

Algoritma agregasi model

Ini adalah metode yang digunakan oleh server pusat untuk menggabungkan update model yang diterima dari berbagai klien. Algoritma seperti federated averaging biasanya digunakan untuk merata-ratakan bobot atau gradien, sehingga menghasilkan satu model global yang lebih baik.

Manfaat federated learning

Federated learning dapat menawarkan beberapa keunggulan menarik, terutama dalam skenario di mana privasi data, keamanan, dan data terdistribusi menjadi pertimbangan utama.

Privasi dan keamanan data yang ditingkatkan

Ini adalah manfaat yang paling signifikan. Dengan menjaga data tetap terlokalisasi di perangkat klien, federated learning dapat secara drastis mengurangi risiko paparan informasi sensitif selama transmisi atau penyimpanan. Hal ini secara inheren meningkatkan privasi pengguna dan membantu organisasi mematuhi peraturan perlindungan data yang ketat.

Akses ke beragam data

Federated learning memungkinkan model untuk belajar dari berbagai sumber data dunia nyata yang mungkin terisolasi atau tidak dapat diakses. Keragaman ini dapat menghasilkan model yang lebih tangguh, dapat digeneralisasi, dan akurat, karena dilatih pada spektrum perilaku, kondisi, atau lingkungan pengguna yang lebih luas dibandingkan dengan model yang dilatih pada satu set data terpusat. 

Pengurangan biaya komunikasi

Mentransmisikan update model (yang biasanya lebih kecil daripada set data mentah) sering kali lebih efisien bandwidth dan lebih murah daripada mentransfer data mentah dalam jumlah besar ke server pusat, terutama dalam skenario yang melibatkan banyak perangkat edge atau lokasi yang tersebar secara geografis. 

Peningkatan model kolaboratif

Federated learning memungkinkan organisasi atau individu berkolaborasi dalam membangun dan meningkatkan model AI tanpa perlu berbagi data sensitif atau hak milik. Hal ini membantu mendorong ekosistem pengembangan AI yang lebih inklusif dan memungkinkan penggabungan kecerdasan dari berbagai sumber. 

Kepatuhan terhadap peraturan yang disederhanakan

Desain inheren federated learning menjaga data tetap lokal, yang dapat membantu secara signifikan dalam memenuhi peraturan privasi data yang kompleks seperti GDPR, CCPA, dan HIPAA. Dengan meminimalkan pergerakan dan sentralisasi data, organisasi dapat lebih memastikan persyaratan residensi data terpenuhi dan mengurangi beban kepatuhan yang terkait dengan penanganan informasi kesehatan atau pribadi yang sensitif.

Menjunjung tinggi kedaulatan data

Pendekatan ini menghormati kepemilikan dan kontrol data. Organisasi atau individu yang berpartisipasi mempertahankan otoritas penuh atas aset data mereka. Bahkan saat berkontribusi pada model kolektif, data mentah tetap aman dalam lingkungan aslinya, sehingga mendukung tata kelola data dan menjaga kepercayaan antara kolaborator.

Tantangan dan pertimbangan dalam federated learning

Meskipun memiliki keunggulan, federated learning juga memiliki beberapa potensi tantangan unik yang perlu dipertimbangkan dengan cermat:

  • Heterogenitas data dan perangkat: Klien dalam jaringan federated learning dapat sangat bervariasi dalam hal distribusi data (data non-IID) dan kemampuan komputasi (hardware perangkat, konektivitas jaringan). Keragaman ini dapat memengaruhi konvergensi model dan performa keseluruhan.
  • Overhead komunikasi: Meskipun berkurang dibandingkan dengan transfer data terpusat, federated learning masih memerlukan komunikasi yang sering antara klien dan server. Mengelola komunikasi ini secara efisien, terutama dengan banyaknya klien atau jaringan yang tidak andal, masih menjadi tantangan teknis. 
  • Kerentanan keamanan dan privasi: Meskipun dirancang untuk privasi, federated learning tidak kebal terhadap semua ancaman keamanan. Update model itu sendiri berpotensi membocorkan informasi tentang data lokal melalui teknik canggih seperti serangan inferensi atau peracunan data. Langkah-langkah keamanan yang kuat, seperti privasi diferensial dan agregasi aman, sering kali digunakan untuk memitigasi risiko ini, meskipun dapat menimbulkan kompromi dengan akurasi atau biaya komputasi.
  • Penyimpangan model: Seiring waktu, distribusi data pada perangkat klien individual dapat berubah, sehingga menyebabkan "penyimpangan model" yang membuat model lokal menyimpang dari model global. Untuk mengatasi hal ini, diperlukan mekanisme adaptasi berkelanjutan atau pendekatan federated learning yang dipersonalisasi. 

Aplikasi federated learning

Federated learning memungkinkan pengguna membangun aplikasi canggih yang menjaga privasi di berbagai domain. Beberapa kasus penggunaan potensial untuk federated learning meliputi:

Mengembangkan aplikasi seluler yang mengutamakan privasi

Pengguna dapat memanfaatkan federated learning untuk membangun aplikasi seluler yang belajar dari data pengguna tanpa mengorbankan privasi. Hal ini penting untuk fitur seperti teks prediktif di keyboard (misalnya, Gboard), saran kata berikutnya, rekomendasi yang dipersonalisasi, dan pengenalan suara di perangkat. Dengan melatih model secara langsung di perangkat pengguna, developer dapat meningkatkan fungsionalitas aplikasi dan pengalaman pengguna dengan beradaptasi terhadap pola interaksi individu, sekaligus memastikan data pribadi yang sensitif tetap lokal dan terlindungi, sesuai dengan peraturan seperti GDPR dan HIPAA. 

Membangun solusi AI lintas organisasi

Federated learning memberdayakan pengguna untuk membuat sistem AI kolaboratif bagi perusahaan yang datanya terisolasi di berbagai organisasi. Hal ini sangat berharga dalam sektor seperti perawatan kesehatan dan keuangan, yang pembagian datanya dibatasi karena peraturan privasi atau masalah kepemilikan. Pengguna dapat membangun platform yang memungkinkan banyak institusi (misalnya, rumah sakit untuk riset medis, bank untuk deteksi penipuan) melatih model bersama pada data gabungan mereka tanpa mengekspos informasi mentah. Hal ini membantu mendorong kolaborasi, meningkatkan akurasi model melalui set data yang beragam, dan membantu memenuhi persyaratan kepatuhan yang ketat.

Mengaktifkan perangkat edge cerdas di IoT dan Industrial IoT (IIoT)

Bagi mereka yang bekerja dengan perangkat Internet of Things (IoT) dan Industrial IoT (IIoT), federated learning menawarkan cara yang efektif untuk menyematkan kecerdasan di edge. Hal ini memungkinkan pembuatan aplikasi seperti pemeliharaan prediktif untuk peralatan industri, deteksi anomali dalam jaringan sensor, atau pengoptimalan penggunaan resource di kota cerdas. Model dapat dilatih pada data yang dihasilkan oleh sensor dan mesin terdistribusi langsung di perangkat edge. Pendekatan ini mengurangi overhead komunikasi, memungkinkan insight real-time, dan menjaga data operasional sensitif dalam batas pabrik atau perangkat yang aman, yang penting untuk menjaga informasi hak milik.

Membuat platform analisis data yang aman dan patuh

Pengguna dapat menggunakan federated learning untuk membantu membangun platform analisis data yang tangguh bagi perusahaan yang perlu mendapatkan insight dari set data terdistribusi dan sensitif. Hal ini membantu memastikan bahwa model analitik dapat dilatih dan dieksekusi tanpa memusatkan data, sehingga sangat membantu kepatuhan terhadap peraturan seperti GDPR, CCPA, dan HIPAA. Hal ini memungkinkan organisasi memperoleh business intelligence yang berharga, mengidentifikasi tren, atau membangun model prediktif di berbagai departemen atau entitas mereka sambil mempertahankan protokol keamanan dan tata kelola data yang ketat.

Meningkatkan pengamanan cyber dengan pemelajaran terdistribusi

Federated learning dapat diterapkan untuk membangun solusi pengamanan cyber yang lebih tangguh dan efektif. Model dapat dilatih di berbagai endpoint (misalnya, komputer, server, perangkat seluler) untuk mendeteksi malware, mengidentifikasi intrusi jaringan, atau menandai aktivitas mencurigakan tanpa mengeksfiltrasi data sensitif dari sistem individual. Pendekatan pelatihan terdesentralisasi ini dapat menghasilkan kemampuan deteksi ancaman yang lebih komprehensif dengan mempelajari berbagai perilaku jaringan dan peristiwa keamanan lokal, sekaligus menghormati privasi pengguna atau sistem individu. 

Framework federated learning

Untuk mempermudah penggunaan federated learning, beberapa framework open source dan komersial telah muncul. Alat ini memberi developer apa yang mereka butuhkan untuk menangani pelatihan di berbagai perangkat, cara berkomunikasi, dan cara menjaga privasi data.

  • TensorFlow Federated (TFF): Dikembangkan oleh Google, TFF adalah framework open source untuk machine learning dan komputasi lainnya pada data terdesentralisasi. TFF terintegrasi dengan lancar dengan TensorFlow dan sangat baik untuk menyimulasikan pelatihan gabungan dan membangun algoritma federated learning baru. 
  • PySyft: Sebagai bagian dari ekosistem OpenMined, PySyft adalah library Python yang berfokus pada AI yang menjaga privasi. PySyft memungkinkan federated learning dan bekerja dengan framework deep learning populer seperti PyTorch dan TensorFlow, yang mendukung teknik seperti privasi diferensial dan komputasi multi-pihak yang aman (SMPC).
  • Flower: Flower adalah framework yang tidak bergantung pada framework dan sangat dapat disesuaikan untuk federated learning. Vertex AI Workbench dapat digunakan dengan library machine learning apa pun, termasuk PyTorch, TensorFlow, dan scikit-learn, sehingga serbaguna bagi tim dengan stack ML yang beragam. 
  • NVIDIA FLARE: Framework ini dirancang untuk pencitraan medis dan genomik, sehingga memungkinkan pengembangan AI kolaboratif dalam layanan kesehatan. Framework ini juga digunakan dalam aplikasi seperti kendaraan otonom.
  • FATE (Federated AI Technology Enabler): Dikembangkan oleh WeBank, FATE adalah platform yang berfokus pada perusahaan yang mendukung pembelajaran gabungan dengan teknik privasi canggih seperti enkripsi homomorfik. FATE menawarkan antarmuka berbasis web untuk mengelola alur kerja. 
  • Substra: Awalnya dikembangkan untuk project riset medis multi-partner, Substra kini dihosting oleh Linux Foundation. Substra sangat kuat di bidang medis, dengan menekankan kepemilikan data, privasi, dan ketertelusuran. 

Masa depan federated learning

Bidang federated learning berkembang pesat. Riset saat ini berfokus pada penanganan tantangan, seperti meningkatkan ketahanan terhadap heterogenitas data dan sistem, mengembangkan teknik pelestarian privasi yang lebih canggih, membuat protokol komunikasi yang lebih efisien, dan memungkinkan pengalaman federated learning yang benar-benar dipersonalisasi. Seiring dengan makin terintegrasinya AI ke dalam domain sensitif, federated learning siap memainkan peran yang lebih penting dalam memungkinkan kecerdasan yang aman, pribadi, dan kolaboratif. Meskipun server pusat saat ini mengatur banyak sistem federated learning, pengembangan di masa mendatang kemungkinan akan mengeksplorasi pendekatan federated learning yang lebih terdesentralisasi atau peer-to-peer, sehingga meningkatkan ketahanan, skalabilitas, dan menghilangkan titik kegagalan tunggal.

Langkah selanjutnya

Mulailah membangun solusi di Google Cloud dengan kredit gratis senilai $300 dan lebih dari 20 produk yang selalu gratis.