Prawdopodobieństwo TensorFlow

TensorFlow Probability to biblioteka do wnioskowania probabilistycznego i analizy statystycznej w TensorFlow. Jako część ekosystemu TensorFlow, TensorFlow Probability zapewnia integrację metod probabilistycznych z głębokimi sieciami, wnioskowanie oparte na gradientach przy użyciu automatycznego różnicowania oraz skalowalność do dużych zbiorów danych i modeli z akceleracją sprzętową (GPU) i obliczeniami rozproszonymi.

Aby rozpocząć korzystanie z TensorFlow Probability, zapoznaj się z przewodnikiem instalacji i przejrzyj samouczki dotyczące notesu w języku Python .

składniki

Struktura naszych probabilistycznych narzędzi do uczenia maszynowego jest następująca:

Warstwa 0: TensorFlow

Operacje numeryczne — w szczególności klasa LinearOperator — umożliwiają implementacje bezmacierzowe, które mogą wykorzystywać określoną strukturę (przekątną, niskiej rangi itp.) do wydajnych obliczeń. Jest zbudowany i utrzymywany przez zespół TensorFlow Probability i jest częścią tf.linalg w rdzeniu TensorFlow.

Warstwa 1: Statystyczne elementy konstrukcyjne

Warstwa 2: Budowa modelu

  • Wspólne dystrybucje (np. tfp.distributions.JointDistributionSequential ): wspólne dystrybucje w ramach jednej lub większej liczby potencjalnie współzależnych dystrybucji. Aby zapoznać się z wprowadzeniem do modelowania za pomocą JointDistribution TFP, sprawdź tę współpracę
  • Warstwy probabilistyczne ( tfp.layers ): Warstwy sieci neuronowej z niepewnością co do funkcji, które reprezentują, rozszerzające warstwy TensorFlow.

Warstwa 3: Wnioskowanie probabilistyczne

  • Łańcuch Markowa Monte Carlo ( tfp.mcmc ): Algorytmy aproksymacji całek poprzez próbkowanie. Obejmuje Hamiltonian Monte Carlo , Metropolis-Hastings o losowym przechodzeniu i możliwość budowania niestandardowych jąder przejściowych.
  • Wnioskowanie wariacyjne ( tfp.vi ): Algorytmy aproksymacji całek poprzez optymalizację.
  • Optymalizatory ( tfp.optimizer ): Metody optymalizacji stochastycznej, rozszerzające Optymalizatory TensorFlow. Obejmuje stochastyczną dynamikę gradientu Langevina .
  • Monte Carlo ( tfp.monte_carlo ): Narzędzia do obliczania oczekiwań Monte Carlo.

TensorFlow Prawdopodobieństwo jest w fazie aktywnego rozwoju i interfejsy mogą ulec zmianie.

Przykłady

Oprócz samouczków dotyczących notatnika Pythona wymienionych w nawigacji dostępnych jest kilka przykładowych skryptów:

Zgłoś problemy

Zgłaszaj błędy lub prośby o funkcje, korzystając z narzędzia do śledzenia problemów TensorFlow Probability .