Ini adalah posting bersama yang ditulis bersama oleh Leidos dan AWS. Leidos adalah pemimpin solusi sains dan teknologi FORTUNE 500 yang bekerja untuk mengatasi beberapa tantangan terberat dunia dalam pasar pertahanan, intelijen, keamanan dalam negeri, sipil, dan perawatan kesehatan.
Leidos telah bermitra dengan AWS untuk mengembangkan pendekatan terhadap pemodelan machine learning (ML) yang menjaga privasi dan rahasia tempat Anda membangun pipeline terenkripsi yang diaktifkan cloud.
Enkripsi homomorfik adalah pendekatan baru untuk enkripsi yang memungkinkan komputasi dan fungsi analitik dijalankan pada data terenkripsi, tanpa terlebih dahulu harus mendekripsinya, untuk menjaga privasi jika Anda memiliki kebijakan yang menyatakan bahwa data tidak boleh didekripsi. Enkripsi homomorfik penuh (FHE) adalah gagasan terkuat dari jenis pendekatan ini, dan memungkinkan Anda untuk membuka kunci nilai data Anda di mana nol-kepercayaan adalah kuncinya. Persyaratan intinya adalah bahwa data harus dapat direpresentasikan dengan angka melalui teknik pengkodean, yang dapat diterapkan pada kumpulan data berbasis numerik, tekstual, dan gambar. Data yang menggunakan FHE berukuran lebih besar, sehingga pengujian harus dilakukan untuk aplikasi yang memerlukan inferensi untuk dilakukan secara near-real time atau dengan batasan ukuran. Penting juga untuk mengungkapkan semua perhitungan sebagai persamaan linier.
Dalam postingan ini, kami menunjukkan cara mengaktifkan prediksi ML yang menjaga privasi untuk lingkungan yang paling diatur dengan ketat. Prediksi (inferensi) menggunakan data terenkripsi dan hasilnya hanya didekripsi oleh konsumen akhir (sisi klien).
Untuk mendemonstrasikan ini, kami menunjukkan contoh penyesuaian an Amazon SageMaker Scikit-learn, open source, wadah pembelajaran mendalam untuk mengaktifkan titik akhir yang diterapkan untuk menerima permintaan inferensi terenkripsi sisi klien. Meskipun contoh ini menunjukkan cara melakukan ini untuk operasi inferensi, Anda dapat memperluas solusi ke pelatihan dan langkah ML lainnya.
Titik akhir diterapkan dengan beberapa klik atau baris kode menggunakan SageMaker, yang menyederhanakan proses bagi pengembang dan pakar ML untuk membuat dan melatih ML dan model pembelajaran mendalam di cloud. Model yang dibuat menggunakan SageMaker kemudian dapat diterapkan sebagai titik akhir waktu-nyata, yang sangat penting untuk beban kerja inferensi di mana Anda memiliki persyaratan waktu nyata, kondisi stabil, dan latensi rendah. Aplikasi dan layanan dapat memanggil endpoint yang diterapkan secara langsung atau melalui penerapan tanpa server Gerbang API Amazon Arsitektur. Untuk mempelajari selengkapnya tentang praktik terbaik arsitektur titik akhir waktu nyata, lihat Membuat REST API berbasis mesin dengan templat pemetaan Amazon API Gateway dan Amazon SageMaker. Gambar berikut menunjukkan kedua versi dari pola ini.
Dalam kedua pola ini, enkripsi saat transit memberikan kerahasiaan saat data mengalir melalui layanan untuk melakukan operasi inferensi. Saat diterima oleh titik akhir SageMaker, data umumnya didekripsi untuk melakukan operasi inferensi pada waktu proses, dan tidak dapat diakses oleh kode dan proses eksternal apa pun. Untuk mencapai tingkat perlindungan tambahan, FHE memungkinkan operasi inferensi menghasilkan hasil terenkripsi yang hasilnya dapat didekripsi oleh aplikasi atau klien tepercaya.
Lebih lanjut tentang enkripsi homomorfik penuh
FHE memungkinkan sistem untuk melakukan komputasi pada data terenkripsi. Komputasi yang dihasilkan, ketika didekripsi, secara terkendali dekat dengan yang dihasilkan tanpa proses enkripsi. FHE dapat menghasilkan ketidaktepatan matematis kecil, mirip dengan kesalahan floating point, karena kebisingan yang dimasukkan ke dalam perhitungan. Itu dikontrol dengan memilih parameter enkripsi FHE yang sesuai, yang merupakan parameter khusus masalah yang disetel. Untuk informasi lebih lanjut, lihat videonya Bagaimana Anda menjelaskan enkripsi homomorfik?
Diagram berikut memberikan contoh penerapan sistem FHE.
Dalam sistem ini, Anda atau klien tepercaya Anda dapat melakukan hal berikut:
- Enkripsi data menggunakan skema FHE kunci publik. Ada beberapa skema berbeda yang dapat diterima; dalam contoh ini, kami menggunakan skema CKKS. Untuk mempelajari lebih lanjut tentang proses enkripsi kunci publik FHE yang kami pilih, lihat CKKS menjelaskan.
- Kirim data terenkripsi sisi klien ke penyedia atau server untuk diproses.
- Melakukan inferensi model pada data terenkripsi; dengan FHE, tidak diperlukan dekripsi.
- Hasil terenkripsi dikembalikan ke penelepon dan kemudian didekripsi untuk mengungkapkan hasil Anda menggunakan kunci pribadi yang hanya tersedia untuk Anda atau pengguna tepercaya Anda dalam klien.
Kami telah menggunakan arsitektur sebelumnya untuk menyiapkan contoh menggunakan titik akhir SageMaker, Pyfhel sebagai pembungkus API FHE yang menyederhanakan integrasi dengan aplikasi ML, dan SEAL sebagai perangkat enkripsi FHE yang mendasari kami.
Ikhtisar solusi
Kami telah membuat contoh pipa FHE yang dapat diskalakan di AWS menggunakan SKLearn regresi logistik wadah pembelajaran mendalam dengan Dataset Iris. Kami melakukan eksplorasi data dan rekayasa fitur menggunakan notebook SageMaker, lalu melakukan pelatihan model menggunakan a Pekerjaan pelatihan SageMaker. Model yang dihasilkan adalah dikerahkan ke titik akhir real-time SageMaker untuk digunakan oleh layanan klien, seperti yang ditampilkan dalam diagram berikut.
Dalam arsitektur ini, hanya aplikasi klien yang melihat data yang tidak terenkripsi. Data yang diproses melalui model untuk inferensi tetap dienkripsi sepanjang siklus hidupnya, bahkan saat runtime di dalam prosesor yang terisolasi Enklave AWS Nitro. Di bagian berikut, kita membahas kode untuk membuat pipeline ini.
Prasyarat
Untuk mengikuti, kami anggap Anda telah meluncurkan a Buku catatan SageMaker dengan Identitas AWS dan Manajemen Akses (IAM) peran dengan AmazonSageMakerAkses Penuh kebijakan yang dikelola.
Latih modelnya
Diagram berikut mengilustrasikan alur kerja pelatihan model.
Kode berikut menunjukkan cara pertama kami menyiapkan data untuk pelatihan menggunakan notebook SageMaker dengan menarik set data pelatihan kami, melakukan operasi pembersihan yang diperlukan, lalu mengunggah data ke Layanan Penyimpanan Sederhana Amazon (Amazon S3) ember. Pada tahap ini, Anda mungkin juga perlu melakukan rekayasa fitur tambahan pada kumpulan data Anda atau mengintegrasikannya dengan penyimpanan fitur luring yang berbeda.
Dalam contoh ini, kami menggunakan mode skrip pada kerangka kerja yang didukung secara native di dalam SageMaker (scikit-belajar), tempat kami membuat instance estimator SageMaker SKLearn default kami dengan skrip pelatihan khusus untuk menangani data terenkripsi selama inferensi. Untuk melihat informasi selengkapnya tentang kerangka kerja dan mode skrip yang didukung secara native, lihat Gunakan Kerangka Kerja Pembelajaran Mesin, Python, dan R dengan Amazon SageMaker.
Terakhir, kami melatih model kami pada kumpulan data dan menerapkan model terlatih kami ke jenis instans pilihan kami.
Pada titik ini, kami telah melatih model FHE SKLearn kustom dan menerapkannya ke titik akhir inferensi real-time SageMaker yang siap menerima data terenkripsi.
Enkripsi dan kirim data klien
Diagram berikut mengilustrasikan alur kerja enkripsi dan pengiriman data klien ke model.
Dalam kebanyakan kasus, payload panggilan ke titik akhir inferensi berisi data terenkripsi daripada menyimpannya di Amazon S3 terlebih dahulu. Kami melakukan ini dalam contoh ini karena kami telah mengelompokkan sejumlah besar catatan ke panggilan inferensi secara bersamaan. Dalam praktiknya, ukuran batch ini akan lebih kecil atau transformasi batch akan digunakan sebagai gantinya. Menggunakan Amazon S3 sebagai perantara tidak diperlukan untuk FHE.
Sekarang titik akhir inferensi telah disiapkan, kita dapat mulai mengirim data. Kami biasanya menggunakan kumpulan data pengujian dan pelatihan yang berbeda, tetapi untuk contoh ini kami menggunakan kumpulan data pelatihan yang sama.
Pertama, kami memuat dataset Iris di sisi klien. Selanjutnya, kami menyiapkan konteks FHE menggunakan Pyfhel. Kami memilih Pyfhel untuk proses ini karena mudah dipasang dan digunakan, menyertakan skema FHE populer, dan bergantung pada implementasi enkripsi sumber terbuka tepercaya yang mendasarinya SEAL. Dalam contoh ini, kami mengirim data terenkripsi, bersama dengan informasi kunci publik untuk skema FHE ini, ke server, yang memungkinkan titik akhir untuk mengenkripsi hasil untuk mengirim sisinya dengan parameter FHE yang diperlukan, tetapi tidak memberikannya kemampuan untuk mendekripsi data yang masuk. Kunci pribadi tetap hanya dengan klien, yang memiliki kemampuan untuk mendekripsi hasil.
Setelah kami mengenkripsi data kami, kami menyusun kamus data lengkapโtermasuk kunci yang relevan dan data terenkripsiโuntuk disimpan di Amazon S3. Selanjutnya, model membuat prediksi atas data terenkripsi dari klien, seperti yang ditunjukkan pada kode berikut. Perhatikan bahwa kami tidak mengirimkan kunci pribadi, sehingga host model tidak dapat mendekripsi data. Dalam contoh ini, kami meneruskan data sebagai objek S3; alternatifnya, data tersebut dapat dikirim langsung ke titik akhir Sagemaker. Sebagai titik akhir real-time, payload berisi parameter data di badan permintaan, yang disebutkan dalam Dokumentasi SageMaker.
Tangkapan layar berikut menunjukkan prediksi sentral di dalamnya fhe_train.py
(lampiran menunjukkan seluruh skrip pelatihan).
Kami menghitung hasil regresi logistik terenkripsi kami. Kode ini menghitung produk skalar terenkripsi untuk setiap kelas yang memungkinkan dan mengembalikan hasilnya ke klien. Hasilnya adalah prediksi logit untuk setiap kelas di semua contoh.
Klien mengembalikan hasil yang didekripsi
Diagram berikut mengilustrasikan alur kerja klien yang mengambil hasil terenkripsi mereka dan mendekripsinya (dengan kunci privat yang hanya dapat mereka akses) untuk mengungkap hasil inferensi.
Dalam contoh ini, hasil disimpan di Amazon S3, tetapi umumnya ini akan dikembalikan melalui muatan titik akhir waktu nyata. Menggunakan Amazon S3 sebagai perantara tidak diperlukan untuk FHE.
Hasil inferensi akan secara terkendali mendekati hasil seolah-olah mereka telah menghitungnya sendiri, tanpa menggunakan FHE.
Membersihkan
Kami mengakhiri proses ini dengan menghapus titik akhir yang kami buat, untuk memastikan tidak ada komputasi yang tidak terpakai setelah proses ini.
Hasil dan pertimbangan
Salah satu kelemahan umum menggunakan FHE di atas model adalah menambahkan overhead komputasi, yangโdalam praktiknyaโmembuat model yang dihasilkan terlalu lambat untuk kasus penggunaan interaktif. Namun, dalam kasus di mana datanya sangat sensitif, mungkin ada baiknya menerima trade-off latensi ini. Namun, untuk regresi logistik sederhana kami, kami dapat memproses 140 sampel data masukan dalam waktu 60 detik dan melihat kinerja linier. Bagan berikut mencakup total waktu end-to-end, termasuk waktu yang dilakukan oleh klien untuk mengenkripsi input dan mendekripsi hasilnya. Itu juga menggunakan Amazon S3, yang menambahkan latensi dan tidak diperlukan untuk kasus ini.
Kami melihat penskalaan linier saat kami menambah jumlah contoh dari 1 menjadi 150. Hal ini diharapkan karena setiap contoh dienkripsi secara independen satu sama lain, jadi kami mengharapkan peningkatan linier dalam komputasi, dengan biaya penyiapan tetap.
Ini juga berarti bahwa Anda dapat menskalakan armada inferensi secara horizontal untuk throughput permintaan yang lebih besar di belakang titik akhir SageMaker Anda. Anda dapat gunakan Rekomendasi Inferensi Amazon SageMaker untuk mengoptimalkan biaya armada Anda tergantung pada kebutuhan bisnis Anda.
Kesimpulan
Dan begitulah: ML enkripsi homomorfik penuh untuk model regresi logistik SKLearn yang dapat Anda atur dengan beberapa baris kode. Dengan beberapa penyesuaian, Anda dapat menerapkan proses enkripsi yang sama ini untuk berbagai jenis model dan kerangka kerja, terlepas dari data pelatihan.
Jika Anda ingin mempelajari lebih lanjut tentang membangun solusi ML yang menggunakan enkripsi homomorfik, hubungi tim atau mitra akun AWS Anda, Leidos, untuk mempelajari lebih lanjut. Anda juga dapat merujuk ke sumber daya berikut untuk contoh lainnya:
Konten dan opini dalam postingan ini berisi dari penulis pihak ketiga dan AWS tidak bertanggung jawab atas konten atau keakuratan postingan ini.
Lampiran
Skrip pelatihan selengkapnya adalah sebagai berikut:
Tentang Penulis
Liv d'Aliberti adalah seorang peneliti dalam Akselerator AI/ML Leidos di bawah Kantor Teknologi. Penelitian mereka berfokus pada pembelajaran mesin yang menjaga privasi.
Manbir Gulati adalah seorang peneliti dalam Akselerator AI/ML Leidos di bawah Kantor Teknologi. Penelitiannya berfokus pada persimpangan keamanan siber dan ancaman AI yang muncul.
Joe Kovba adalah Pemimpin Praktik Pusat Keunggulan Cloud dalam Akselerator Modernisasi Digital Leidos di bawah Kantor Teknologi. Di waktu luangnya, dia menikmati menjadi wasit pertandingan sepak bola dan bermain softball.
Ben Snive adalah Arsitek Solusi Spesialis Sektor Publik. Dia bekerja dengan pelanggan pemerintah, nirlaba, dan pendidikan pada data besar dan proyek analitik, membantu mereka membangun solusi menggunakan AWS. Di waktu luangnya, dia menambahkan sensor IoT di seluruh rumahnya dan menjalankan analitik pada sensor tersebut.
Sami Hoda adalah Arsitek Solusi Senior di divisi Konsultasi Mitra yang mencakup Sektor Publik Seluruh Dunia. Sami sangat menyukai proyek di mana pemikiran desain, inovasi, dan kecerdasan emosional yang setara dapat digunakan untuk memecahkan masalah dan memengaruhi orang yang membutuhkan.
- Konten Bertenaga SEO & Distribusi PR. Dapatkan Amplifikasi Hari Ini.
- Platoblockchain. Intelijen Metaverse Web3. Pengetahuan Diperkuat. Akses Di Sini.
- Sumber: https://aws.amazon.com/blogs/machine-learning/enable-fully-homomorphic-encryption-with-amazon-sagemaker-endpoints-for-secure-real-time-inferencing/
- :adalah
- ][P
- $NAIK
- 1
- 10
- 100
- 11
- 7
- a
- kemampuan
- Sanggup
- Tentang Kami
- akselerator
- Setuju
- diterima
- mengakses
- Akun
- ketepatan
- Mencapai
- di seluruh
- Tambahan
- alamat
- Menambahkan
- Setelah
- AI
- AI / ML
- Semua
- memungkinkan
- Meskipun
- Amazon
- Gerbang API Amazon
- Amazon SageMaker
- Analytical
- analisis
- dan
- api
- Aplikasi
- aplikasi
- terapan
- pendekatan
- sesuai
- arsitektur
- arsitektur
- ADALAH
- AS
- At
- penulis
- tersedia
- AWS
- BE
- karena
- di belakang
- TERBAIK
- Praktik Terbaik
- prasangka
- Besar
- Big data
- tubuh
- membangun
- Bangunan
- dibangun di
- bisnis
- by
- panggilan
- pemanggil
- CAN
- kasus
- pusat
- Pusat Keunggulan
- pusat
- tantangan
- Grafik
- memeriksa
- pilihan
- memilih
- kelas
- Pembersihan
- CLF
- klien
- Penyelesaian
- awan
- kode
- Umum
- lengkap
- komputasi
- perhitungan
- menghitung
- komputasi
- kerahasiaan
- membangun
- konsultasi
- konsumen
- Wadah
- mengandung
- Konten
- konteks
- dikendalikan
- Core
- Biaya
- sepasang
- penutup
- dibuat
- kritis
- adat
- pelanggan
- kustomisasi
- Keamanan cyber
- data
- kumpulan data
- Dekripsi
- mendalam
- belajar mendalam
- Default
- Pertahanan
- mendemonstrasikan
- Tergantung
- menyebarkan
- dikerahkan
- Mendesain
- desain pemikiran
- mengembangkan
- pengembang
- DICT
- berbeda
- digital
- langsung
- direktori
- Divisi
- Tidak
- Dont
- kekurangannya
- selama
- setiap
- Pendidikan
- muncul
- aktif
- memungkinkan
- terenkripsi
- enkripsi
- ujung ke ujung
- Titik akhir
- Teknik
- Seluruh
- masuk
- lingkungan
- persamaan
- kesalahan
- Bahkan
- contoh
- contoh
- Keunggulan
- mengharapkan
- diharapkan
- ahli
- Menjelaskan
- eksplorasi
- memperpanjang
- luar
- ekstrak
- Fitur
- beberapa
- Angka
- Pertama
- cocok
- tetap
- ARMADA KAPAL
- mengambang
- Mengalir
- berfokus
- mengikuti
- berikut
- berikut
- sepak bola
- Untuk
- Nasib
- Kerangka
- kerangka
- Gratis
- dari
- penuh
- sepenuhnya
- fungsi
- Games
- pintu gerbang
- umumnya
- menghasilkan
- mendapatkan
- Memberikan
- Pemerintah
- lebih besar
- menangani
- Memiliki
- memiliki
- kesehatan
- membantu
- sangat
- tanah air
- Keamanan Homeland
- tuan rumah
- Rumah
- Seterpercayaapakah Olymp Trade? Kesimpulan
- How To
- Namun
- HTML
- http
- HTTPS
- identitas
- Dampak
- melaksanakan
- implementasi
- mengimpor
- penting
- in
- tidak dapat diakses
- termasuk
- Termasuk
- masuk
- Meningkatkan
- independen
- secara mandiri
- informasi
- Innovation
- memasukkan
- install
- contoh
- sebagai gantinya
- mengintegrasikan
- integrasi
- Intelijen
- interaktif
- perantara
- persimpangan
- idiot
- terpencil
- IT
- NYA
- bersama
- kunci
- kunci-kunci
- besar
- lebih besar
- Latensi
- diluncurkan
- memimpin
- pemimpin
- BELAJAR
- pengetahuan
- adalah ide yang bagus
- siklus hidup
- 'like'
- keterbatasan
- baris
- memuat
- lokal
- Rendah
- mesin
- Mesin belajar
- membuat
- MEMBUAT
- berhasil
- pemetaan
- pasar
- matematis
- cara
- tersebut
- Microsoft
- mungkin
- ML
- mode
- model
- model
- lebih
- paling
- perlu
- Perlu
- kebutuhan
- New
- berikutnya
- Nitro
- Kebisingan
- nirlaba
- biasanya
- buku catatan
- Gagasan
- jumlah
- nomor
- mati rasa
- obyek
- of
- Office
- Pengunjung
- on
- Buka
- operasi
- Operasi
- Pendapat
- Optimize
- urutan
- OS
- Lainnya
- keluaran
- panda
- parameter
- parameter
- pasangan
- bermitra
- rekan
- bagian
- Lewat
- bergairah
- path
- pola
- Konsultan Ahli
- Melakukan
- prestasi
- melakukan
- pipa saluran
- plato
- Kecerdasan Data Plato
- Data Plato
- bermain
- Titik
- kebijaksanaan
- Populer
- mungkin
- Pos
- berpotensi
- praktek
- praktek
- meramalkan
- diprediksi
- ramalan
- Prediksi
- Predictor
- Mempersiapkan
- pribadi
- swasta
- Key pribadi
- masalah
- proses
- Diproses
- proses
- pengolahan
- Prosesor
- Diproduksi
- Produk
- memprojeksikan
- perlindungan
- pemberi
- menyediakan
- publik
- Key publik
- kunci publik
- menarik
- menempatkan
- Ular sanca
- agak
- mencapai
- siap
- nyata
- real-time
- diterima
- arsip
- beregulasi
- relevan
- sisa
- diwakili
- permintaan
- permintaan
- wajib
- kebutuhan
- Persyaratan
- penelitian
- peneliti
- Sumber
- tanggapan
- tanggung jawab
- ISTIRAHAT
- mengakibatkan
- dihasilkan
- Hasil
- kembali
- Pengembalian
- mengungkapkan
- Peran
- BARIS
- Run
- pembuat bijak
- Inferensi SageMaker
- sama
- Save
- terukur
- Skala
- skala
- skema
- skema
- Ilmu
- Sains dan Teknologi
- detik
- bagian
- sektor
- aman
- keamanan
- melihat
- terpilih
- memilih
- mengirim
- senior
- peka
- sensor
- Tanpa Server
- Layanan
- set
- penyiapan
- harus
- Menunjukkan
- ditunjukkan
- Pertunjukkan
- sisi
- mirip
- Sederhana
- menyederhanakan
- Ukuran
- lambat
- kecil
- lebih kecil
- So
- larutan
- Solusi
- MEMECAHKAN
- beberapa
- spesialis
- Tahap
- awal
- Negara
- Negara
- mantap
- Tangga
- penyimpanan
- menyimpan
- tersimpan
- toko
- menyimpan
- Didukung
- sistem
- sistem
- target
- tim
- Teknologi
- template
- uji
- pengujian
- bahwa
- Grafik
- mereka
- Mereka
- diri
- Ini
- Pikir
- pihak ketiga
- ancaman
- Melalui
- di seluruh
- keluaran
- waktu
- untuk
- bersama
- terlalu
- toolkit
- puncak
- Total
- Pelatihan VE
- terlatih
- Pelatihan
- Mengubah
- transit
- mengirimkan
- Terpercaya
- jenis
- bawah
- pokok
- membuka kunci
- terpakai
- Mengunggah
- menggunakan
- Pengguna
- nilai
- Video
- yang
- akan
- dengan
- dalam
- tanpa
- Kerja
- kerja
- bekerja
- dunia
- industri udang di seluruh dunia.
- bermanfaat
- akan
- Kamu
- Anda
- Youtube
- zephyrnet.dll