TensorFlow-Wahrscheinlichkeit

TensorFlow Probability ist eine Bibliothek für probabilistisches Denken und statistische Analyse in TensorFlow. Als Teil des TensorFlow-Ökosystems bietet TensorFlow Probability die Integration probabilistischer Methoden mit tiefen Netzwerken, gradientenbasierte Inferenz durch automatische Differenzierung und Skalierbarkeit auf große Datensätze und Modelle mit Hardwarebeschleunigung (GPUs) und verteilter Berechnung.

Um mit TensorFlow Wahrscheinlichkeit finden Sie in der Anleitung installieren und sehen Sie die Python - Notebook - Tutorials .

Komponenten

Unsere probabilistischen Machine-Learning-Tools sind wie folgt aufgebaut:

Ebene 0: TensorFlow

Numerische Operationen -insbesondere die LinearOperator klassen ermöglicht matrixfreien Implementierungen , die eine bestimmte Struktur (diagonal niedriger Rang, usw.) für die effiziente Berechnung ausnutzen kann. Es wird gebaut und durch die TensorFlow Wahrscheinlichkeits Team gepflegt und ein Teil ist tf.linalg in Kern TensorFlow.

Ebene 1: Statistische Bausteine

  • Distributions ( tfp.distributions ): Eine große Sammlung von Wahrscheinlichkeitsverteilungen und damit verbundener Statistiken mit Chargen- und Rundfunk Semantik.
  • Bijectors ( tfp.bijectors ): Reversible und zusammensetzbare Transformationen von Zufallsvariablen. Bijectors bietet eine reiche Klasse von transformierten Verteilungen, von den klassischen Beispielen wie die Lognormalverteilung bis hin zu anspruchsvollen tiefen Lernmodellen wie maskiert autoregressive fließt .

Ebene 2: Modellbau

  • Gemeinsame Distributions (zB tfp.distributions.JointDistributionSequential ): Joint Verteilungen über einen oder mehrere gegebenenfalls voneinander abhängige-Verteilungen. Eine Einführung mit TFP des zur Modellierung JointDistribution s Besuche diese colab
  • Probabilistic Schichten ( tfp.layers ): Neuronale Netzwerkschichten mit Unsicherheit über die Funktionen , die sie darstellen, erstrecken TensorFlow Schichten.

Ebene 3: Probabilistische Inferenz

  • Markov Chain Monte Carlo ( tfp.mcmc ): Algorithms for Integrale über Abtasten annähert. Inklusive Hamilton - Monte Carlo , Random-Walk - Metropolis-Hastings, und die Fähigkeit zu bauen benutzerdefinierten Übergang Kernel.
  • Variational Inference ( tfp.vi ): Algorithmen für Integrale durch Optimierung annähert.
  • Optimierer ( tfp.optimizer ): Stochastic Optimierungsverfahren, Erweiterung TensorFlow Optimierers. Enthält Stochastic Gradient Langevin Dynamik .
  • Monte Carlo ( tfp.monte_carlo ): Werkzeuge zur Berechnung von Monte Carlo Erwartungen.

TensorFlow Probability befindet sich in aktiver Entwicklung und Schnittstellen können sich ändern.

Beispiele

Zusätzlich zu den Python Notebook - Tutorials in der Navigations aufgeführt, gibt es einige Beispiel - Skripte zur Verfügung:

Probleme melden

Melden Sie Fehler oder Wünsche mit der TensorFlow Wahrscheinlichkeit issue tracker .