Probabilidade do TensorFlow

TensorFlow Probability é uma biblioteca para raciocínio probabilístico e análise estatística no TensorFlow. Como parte do ecossistema TensorFlow, o TensorFlow Probability fornece integração de métodos probabilísticos com redes profundas, inferência baseada em gradiente usando diferenciação automática e escalabilidade para grandes conjuntos de dados e modelos com aceleração de hardware (GPUs) e computação distribuída.

Para começar a usar o TensorFlow Probability, consulte o guia de instalação e os tutoriais do notebook Python .

Componentes

Nossas ferramentas probabilísticas de aprendizado de máquina são estruturadas da seguinte forma:

Camada 0: TensorFlow

As operações numéricas — em particular, a classe LinearOperator — permitem implementações sem matriz que podem explorar uma estrutura específica (diagonal, classificação baixa, etc.) para computação eficiente. Ele é construído e mantido pela equipe do TensorFlow Probability e faz parte do tf.linalg no núcleo do TensorFlow.

Camada 1: Blocos de Construção Estatísticos

Camada 2: Construção de Modelo

  • Distribuições Conjuntas (por exemplo, tfp.distributions.JointDistributionSequential ): Distribuições conjuntas sobre uma ou mais distribuições possivelmente interdependentes. Para uma introdução à modelagem com JointDistribution s da TFP, confira este colab
  • Camadas probabilísticas ( tfp.layers ): Camadas de rede neural com incerteza sobre as funções que representam, estendendo as camadas do TensorFlow.

Camada 3: Inferência Probabilística

  • Cadeia de Markov Monte Carlo ( tfp.mcmc ): Algoritmos para aproximação de integrais via amostragem. Inclui Hamiltonian Monte Carlo , passeio aleatório Metropolis-Hastings e a capacidade de construir kernels de transição personalizados.
  • Inferência Variacional ( tfp.vi ): Algoritmos para aproximação de integrais por meio de otimização.
  • Otimizadores ( tfp.optimizer ): métodos de otimização estocástica, estendendo os otimizadores TensorFlow. Inclui Dinâmica de Langevin do Gradiente Estocástico .
  • Monte Carlo ( tfp.monte_carlo ): Ferramentas para calcular as expectativas de Monte Carlo.

O TensorFlow Probability está em desenvolvimento ativo e as interfaces podem mudar.

Exemplos

Além dos tutoriais do notebook Python listados na navegação, existem alguns scripts de exemplo disponíveis:

Relatar problemas

Relate bugs ou solicitações de recursos usando o rastreador de problemas de probabilidade do TensorFlow .