Probabilitas TensorFlow adalah perpustakaan untuk penalaran probabilistik dan analisis statistik di TensorFlow. Sebagai bagian dari ekosistem TensorFlow, TensorFlow Probability menyediakan integrasi metode probabilistik dengan jaringan dalam, inferensi berbasis gradien menggunakan diferensiasi otomatis, dan skalabilitas ke kumpulan data dan model besar dengan akselerasi perangkat keras (GPU) dan komputasi terdistribusi.
Untuk memulai Probabilitas TensorFlow, lihat panduan instalasi dan lihat tutorial notebook Python .
Komponen
Alat pembelajaran mesin probabilistik kami disusun sebagai berikut:
Lapisan 0: TensorFlow
Operasi numerik —khususnya, kelas LinearOperator
—memungkinkan implementasi bebas matriks yang dapat mengeksploitasi struktur tertentu (diagonal, peringkat rendah, dll.) untuk komputasi yang efisien. Ini dibuat dan dikelola oleh tim Probabilitas TensorFlow dan merupakan bagian dari tf.linalg
di TensorFlow inti.
Lapisan 1: Blok Bangunan Statistik
- Distribusi (
tfp.distributions
): Kumpulan besar distribusi probabilitas dan statistik terkait dengan semantik batch dan penyiaran . - Bijectors (
tfp.bijectors
): Transformasi variabel acak yang dapat dibalik dan disusun. Bijector menyediakan beragam distribusi transformasi, mulai dari contoh klasik seperti distribusi log-normal hingga model pembelajaran mendalam yang canggih seperti aliran autoregresif bertopeng .
Lapisan 2: Pembuatan Model
- Distribusi Gabungan (misalnya,
tfp.distributions.JointDistributionSequential
): Distribusi gabungan pada satu atau lebih distribusi yang kemungkinan saling bergantung. Untuk pengenalan pemodelan denganJointDistribution
TFP, lihat colab ini - Lapisan probabilistik (
tfp.layers
): Lapisan jaringan neural dengan ketidakpastian atas fungsi yang diwakilinya, sehingga memperluas lapisan TensorFlow.
Lapisan 3: Inferensi Probabilistik
- Rantai Markov Monte Carlo (
tfp.mcmc
): Algoritma untuk memperkirakan integral melalui pengambilan sampel. Termasuk Hamiltonian Monte Carlo , Metropolis-Hastings yang berjalan secara acak, dan kemampuan untuk membuat kernel transisi khusus. - Inferensi Variasi (
tfp.vi
): Algoritma untuk memperkirakan integral melalui optimasi. - Pengoptimal (
tfp.optimizer
): Metode pengoptimalan stokastik, memperluas Pengoptimal TensorFlow. Termasuk Dinamika Langevin Gradien Stokastik . - Monte Carlo (
tfp.monte_carlo
): Alat untuk menghitung ekspektasi Monte Carlo.
Probabilitas TensorFlow sedang dalam pengembangan aktif dan antarmuka dapat berubah.
Contoh
Selain tutorial notebook Python yang tercantum dalam navigasi, ada beberapa contoh skrip yang tersedia:
- Autoencoder Variasional — Pembelajaran representasi dengan kode laten dan inferensi variasional.
- Autoencoder Kuantisasi Vektor —Pembelajaran representasi diskrit dengan kuantisasi vektor.
- Bayesian Neural Networks —Jaringan saraf dengan ketidakpastian bobotnya.
- Regresi Logistik Bayesian —Inferensi Bayesian untuk klasifikasi biner.
Laporkan masalah
Laporkan bug atau permintaan fitur menggunakan pelacak masalah Probabilitas TensorFlow .