Memperkenalkan Fortuna: Perpustakaan untuk kuantifikasi ketidakpastian PlatoBlockchain Data Intelligence. Pencarian Vertikal. Ai.

Memperkenalkan Fortuna: Perpustakaan untuk kuantifikasi ketidakpastian

Estimasi ketidakpastian prediktif yang tepat merupakan hal mendasar dalam aplikasi yang melibatkan keputusan penting. Ketidakpastian dapat digunakan untuk menilai keandalan prediksi model, memicu intervensi manusia, atau memutuskan apakah suatu model dapat diterapkan dengan aman di alam liar.

Kami memperkenalkan Fortuna, pustaka sumber terbuka untuk kuantifikasi ketidakpastian. Fortuna menyediakan metode kalibrasi, seperti prediksi konformal, yang dapat diterapkan ke jaringan saraf terlatih mana pun untuk mendapatkan perkiraan ketidakpastian yang dikalibrasi. Perpustakaan selanjutnya mendukung sejumlah metode inferensi Bayesian yang dapat diterapkan ke jaringan saraf dalam yang ditulis Lenan. Perpustakaan memudahkan untuk menjalankan tolok ukur dan akan memungkinkan praktisi untuk membangun solusi AI yang kuat dan andal dengan memanfaatkan teknik kuantifikasi ketidakpastian tingkat lanjut.

Masalah terlalu percaya diri dalam pembelajaran yang mendalam

Jika Anda pernah melihat probabilitas kelas yang dikembalikan oleh pengklasifikasi jaringan saraf dalam yang terlatih, Anda mungkin telah mengamati bahwa probabilitas satu kelas jauh lebih besar daripada yang lain. Sesuatu seperti ini, misalnya:

p = [0.0001, 0.0002, โ€ฆ, 0.9991, 0.0003, โ€ฆ, 0.0001]

Jika ini yang terjadi pada sebagian besar prediksi, model Anda mungkin terlalu percaya diri. Untuk mengevaluasi validitas probabilitas yang dikembalikan oleh pengklasifikasi, kami dapat membandingkannya dengan akurasi aktual yang dicapai melalui kumpulan data yang tidak lengkap. Memang, wajar untuk mengasumsikan bahwa proporsi titik data yang diklasifikasikan dengan benar kira-kira harus sesuai dengan estimasi probabilitas kelas yang diprediksi. Konsep ini dikenal dengan kalibrasi [Guo C. dkk., 2017].

Sayangnya, banyak jaringan saraf dalam terlatih yang salah kalibrasi, artinya estimasi probabilitas kelas yang diprediksi jauh lebih tinggi daripada proporsi titik data input yang diklasifikasikan dengan benar. Dengan kata lain, pengklasifikasi terlalu percaya diri.

Menjadi terlalu percaya diri mungkin bermasalah dalam praktiknya. Seorang dokter mungkin tidak memesan tes tambahan yang relevan, sebagai akibat dari diagnosis sehat yang terlalu percaya diri yang dihasilkan oleh AI. Mobil self-driving mungkin memutuskan untuk tidak mengerem karena dengan yakin menilai bahwa objek di depan bukanlah orang. Seorang gubernur dapat memutuskan untuk mengevakuasi kota karena kemungkinan bencana alam yang diperkirakan oleh AI terlalu tinggi. Dalam aplikasi ini dan banyak aplikasi lainnya, perkiraan ketidakpastian terkalibrasi sangat penting untuk menilai keandalan prediksi model, kembali ke pembuat keputusan manusia, atau memutuskan apakah model dapat diterapkan dengan aman.

Fortuna: Perpustakaan untuk kuantifikasi ketidakpastian

Ada banyak teknik yang diterbitkan baik untuk memperkirakan atau mengkalibrasi ketidakpastian prediksi, misalnya, inferensi Bayesian [Wilson AG, 2020], skala suhu [Guo C. dkk., 2017], dan prediksi konformal [Angelopoulos AN et al., 2022] metode. Namun, alat dan pustaka yang ada untuk kuantifikasi ketidakpastian memiliki cakupan yang sempit dan tidak menawarkan teknik yang luas di satu tempat. Hal ini menghasilkan biaya tambahan yang signifikan, menghambat pengadopsian ketidakpastian ke dalam sistem produksi.

Untuk mengisi celah ini, kami meluncurkan Fortuna, perpustakaan untuk kuantifikasi ketidakpastian yang menyatukan metode terkemuka di seluruh literatur dan menyediakannya bagi pengguna dengan antarmuka standar dan intuitif.

Sebagai contoh, misalkan Anda memiliki pemuat data pelatihan, kalibrasi, dan pengujian tensorflow.Tensor formatnya, yaitu train_data_loader, calib_data_loader dan test_data_loader. Selain itu, Anda memiliki model pembelajaran mendalam yang tertulis Lenan, yaitu model. Kemudian Anda dapat menggunakan Fortuna untuk:

  1. pas dengan distribusi posterior;
  2. mengkalibrasi keluaran model;
  3. membuat prediksi terkalibrasi;
  4. estimasi estimasi ketidakpastian;
  5. menghitung metrik evaluasi.

Kode berikut melakukan semua ini untuk Anda.

from fortuna.data import DataLoader
from fortuna.prob_model.classification import ProbClassifier
from fortuna.metric.classification import expected_calibration_error

# convert data loaders
train_data_loader = DataLoader.from_tensorflow_data_loader(train_data_loader)
calib_data_loader = DataLoader.from_tensorflow_data_loader(calib_data_loader)
test_data_loader = DataLoader.from_tensorflow_data_loader(test_data_loader)

# define and train a probabilistic model
prob_model = ProbClassifier(model=model)
train_status = prob_model.train(train_data_loader=train_data_loader, calib_data_loader=calib_data_loader)

# make predictions and estimate uncertainty
test_inputs_loader = test_data_loader.to_inputs_loader()
test_means = prob_model.predictive.mean(inputs_loader=test_inputs_loader)
test_modes = prob_model.predictive.mode(inputs_loader=test_inputs_loader, means=test_means)

# compute the expected calibration error and plot a reliability diagram
test_targets = test_data_loader.to_array_targets()
ece = expected_calibration_error(preds=test_modes, probs=test_means, targets=test_targets)

Kode di atas menggunakan beberapa pilihan default, termasuk SWAG [Maddox WJ et al., 2019] sebagai metode inferensi posterior, skala suhu [Guo C. dkk., 2017] untuk mengkalibrasi keluaran model, dan distribusi standar Gaussian sebelumnya, serta konfigurasi proses pemasangan dan kalibrasi posterior. Anda dapat dengan mudah mengonfigurasi semua komponen ini, dan sangat dianjurkan untuk melakukannya jika Anda mencari konfigurasi tertentu atau jika Anda ingin membandingkan beberapa komponen.

Mode penggunaan

Fortuna menawarkan tiga mode penggunaan: 1/ Mulai dari model Flax, 2 / Mulai dari keluaran model, dan 3/ Berawal dari ketidakpastian perkiraan. Pipa mereka digambarkan dalam gambar berikut, masing-masing dimulai dari salah satu panel hijau. Cuplikan kode di atas adalah contoh penggunaan Fortuna mulai dari model Flax, yang memungkinkan pelatihan model menggunakan prosedur inferensi Bayesian. Sebagai alternatif, Anda dapat memulai dengan keluaran model atau langsung dari estimasi ketidakpastian Anda sendiri. Kedua mode terakhir ini kerangka independen dan membantu Anda mendapatkan estimasi ketidakpastian terkalibrasi mulai dari a model terlatih.

1/ Mulai dari estimasi ketidakpastian

Mulai dari perkiraan ketidakpastian memiliki persyaratan kompatibilitas minimal, dan ini adalah tingkat interaksi tercepat dengan perpustakaan. Mode penggunaan ini menawarkan metode prediksi konformal untuk klasifikasi dan regresi. Ini mengambil estimasi ketidakpastian numpy.ndarray memformat dan menampilkan kumpulan prediksi ketat yang mempertahankan tingkat probabilitas yang diberikan pengguna. Dalam tugas regresi satu dimensi, himpunan konformal dapat dianggap sebagai versi kepercayaan yang dikalibrasi atau interval yang kredibel.

Perhatikan bahwa jika estimasi ketidakpastian yang Anda berikan dalam input tidak akurat, kumpulan konformal mungkin besar dan tidak dapat digunakan. Untuk alasan ini, jika aplikasi Anda mengizinkannya, mohon pertimbangkan Mulai dari keluaran model dan Mulai dari model Flax mode penggunaan dirinci di bawah ini.

2/ Mulai dari keluaran model

Mode ini mengasumsikan Anda telah melatih model dalam beberapa kerangka kerja dan tiba di Fortuna dengan keluaran model numpy.ndarray format untuk setiap titik data masukan. Mode penggunaan ini memungkinkan Anda mengkalibrasi keluaran model, memperkirakan ketidakpastian, menghitung metrik, dan mendapatkan kumpulan konformal.

Dibandingkan dengan Berawal dari ketidakpastian perkiraan modus penggunaan, Mulai dari keluaran model memberikan kontrol yang lebih baik, karena dapat memastikan perkiraan ketidakpastian telah dikalibrasi dengan tepat. Namun, jika model telah dilatih dengan metode klasik, kuantifikasi ketidakpastian model (alias epistemik) yang dihasilkan mungkin buruk. Untuk mengurangi masalah ini, harap pertimbangkan Mulai dari model Flax modus penggunaan.

3/ Mulai dari model Flax

Mulai dari model Flax memiliki persyaratan kompatibilitas yang lebih tinggi daripada Berawal dari ketidakpastian perkiraan dan Mulai dari keluaran model mode penggunaan, karena memerlukan model pembelajaran mendalam yang ditulis Lenan. Namun, ini memungkinkan Anda mengganti pelatihan model standar dengan prosedur inferensi Bayesian yang dapat diskalakan, yang dapat meningkatkan kuantifikasi ketidakpastian prediktif secara signifikan.

Metode Bayesian bekerja dengan merepresentasikan ketidakpastian atas solusi mana yang benar, mengingat informasi yang terbatas, melalui ketidakpastian parameter model. Jenis ketidakpastian ini disebut ketidakpastian "epistemis". Karena jaringan saraf dapat mewakili banyak solusi berbeda, sesuai dengan pengaturan parameternya yang berbeda, metode Bayesian dapat sangat berdampak dalam pembelajaran mendalam. Kami menyediakan banyak prosedur inferensi Bayesian yang dapat diskalakan, yang sering kali dapat digunakan untuk memberikan estimasi ketidakpastian, serta akurasi dan kalibrasi yang lebih baik, tanpa biaya tambahan waktu pelatihan.

Kesimpulan

Kami mengumumkan ketersediaan umum Fortuna, perpustakaan untuk kuantifikasi ketidakpastian dalam pembelajaran mendalam. Fortuna menyatukan metode terkemuka di seluruh literatur, misalnya, metode konformal, skala suhu, dan inferensi Bayesian, dan membuatnya tersedia bagi pengguna dengan antarmuka standar dan intuitif. Untuk memulai Fortuna, Anda dapat berkonsultasi dengan sumber daya berikut:

Cobalah Fortuna, dan beri tahu kami pendapat Anda! Anda didorong untuk berkontribusi ke perpustakaan atau meninggalkan saran dan kontribusi Andaโ€”cukup buat isu atau buka a tarik permintaan. Di pihak kami, kami akan terus meningkatkan Fortuna, meningkatkan cakupan metode kuantifikasi ketidakpastian dan menambahkan contoh lebih lanjut yang menunjukkan kegunaannya dalam beberapa skenario.


Tentang penulis

Memperkenalkan Fortuna: Perpustakaan untuk kuantifikasi ketidakpastian PlatoBlockchain Data Intelligence. Pencarian Vertikal. Ai.

 

Gianluca Detommaso adalah Ilmuwan Terapan di AWS. Dia saat ini bekerja pada kuantifikasi ketidakpastian dalam pembelajaran mendalam. Di waktu luangnya, Gianluca suka berolahraga, makan makanan enak, dan mempelajari keterampilan baru.

Memperkenalkan Fortuna: Perpustakaan untuk kuantifikasi ketidakpastian PlatoBlockchain Data Intelligence. Pencarian Vertikal. Ai.Alberto Gasparin adalah Ilmuwan Terapan di Amazon Community Shopping sejak Juli 2021. Minatnya meliputi pemrosesan bahasa alami, pengambilan informasi, dan kuantifikasi ketidakpastian. Dia adalah penggemar makanan dan anggur.

Memperkenalkan Fortuna: Perpustakaan untuk kuantifikasi ketidakpastian PlatoBlockchain Data Intelligence. Pencarian Vertikal. Ai.Michele Donini adalah Ilmuwan Terapan Senior di AWS. Dia memimpin tim ilmuwan yang bekerja pada AI yang Bertanggung Jawab dan minat penelitiannya adalah Keadilan Algoritmik dan Pembelajaran Mesin yang Dapat Dijelaskan.

Memperkenalkan Fortuna: Perpustakaan untuk kuantifikasi ketidakpastian PlatoBlockchain Data Intelligence. Pencarian Vertikal. Ai.Matias Seeger adalah Ilmuwan Terapan Utama di AWS.

Memperkenalkan Fortuna: Perpustakaan untuk kuantifikasi ketidakpastian PlatoBlockchain Data Intelligence. Pencarian Vertikal. Ai.Cedric Archambeau adalah Ilmuwan Terapan Utama di AWS dan Anggota Lab Eropa untuk Pembelajaran dan Sistem Cerdas.

Memperkenalkan Fortuna: Perpustakaan untuk kuantifikasi ketidakpastian PlatoBlockchain Data Intelligence. Pencarian Vertikal. Ai.Andrew Gordon Wilson adalah Associate Professor di Courant Institute of Mathematical Sciences dan Center for Data Science di New York University, dan Amazon Visiting Academic di AWS. Dia secara khusus terlibat dalam membangun metode untuk pembelajaran mendalam Bayesian dan probabilistik, proses Gaussian yang dapat diskalakan, optimisasi Bayesian, dan pembelajaran mesin yang terinspirasi fisika.

Stempel Waktu:

Lebih dari Pembelajaran Mesin AWS