TensorFlow Probability - это библиотека для вероятностных рассуждений и статистического анализа в TensorFlow. Как часть экосистемы TensorFlow, TensorFlow Probability обеспечивает интеграцию вероятностных методов с глубокими сетями, градиентный вывод с использованием автоматического дифференцирования и масштабируемость для больших наборов данных и моделей с аппаратным ускорением (GPU) и распределенными вычислениями.
Чтобы начать работу с TensorFlow вероятностью, увидеть руководство по установке и просмотр ноутбуков учебников Python .
Компоненты
Наши инструменты вероятностного машинного обучения структурированы следующим образом:
Слой 0: TensorFlow
Численные операции -в частности, LinearOperator
класс позволяет нематричные реализации , которые могут использовать конкретную структуру ( по диагонали, низкий ранг и т.д.) для эффективного вычисления. Он построен и поддерживается командой вероятности TensorFlow и является частью tf.linalg
в основном TensorFlow.
Уровень 1: статистические строительные блоки
- Распределения (
tfp.distributions
): Большая коллекция вероятностных распределений и связанной с ними статистику с партией и радиовещательной семантикой. - Bijectors (
tfp.bijectors
): Реверсивный и компонуемое преобразование случайных величин. Bijectors обеспечивает богатый класс преобразованных распределений, из классических примеров , как логарифмический нормальное распределение до сложных глубоких моделей обучения , таких как прикрытые авторегрессии потоков .
Уровень 2: Построение модели
- Совместное Распределения (например,
tfp.distributions.JointDistributionSequential
): Совместные распределения по одному или более возможно, взаимозависимым распределениям. Для введения в моделирование с TFP - хJointDistribution
s, проверить этот colab - Вероятностные слои (
tfp.layers
): Нейронные сети слои с неопределенностью в отношении функций , которые они представляют, простирающееся TensorFlow слоев.
Уровень 3: вероятностный вывод
- Цепь Маркова Монте - Карло (
tfp.mcmc
): Алгоритмы для аппроксимации интегралов с помощью отбора проб. Включает гамильтонова Монте - Карло , случайные блуждания Метрополиса-Гастингса, а также возможность создания пользовательских ядер перехода. - Вариационное Умозаключение (
tfp.vi
): Алгоритмы для аппроксимации интегралов по оптимизации. - Оптимизаторы (
tfp.optimizer
): стохастические методы оптимизации, простирающиеся TensorFlow оптимизаторы. Включает в себя стохастический Градиент Ланжевена Dynamics . - Монте - Карло (
tfp.monte_carlo
): Инструменты для вычисления ожиданий Монте - Карло.
TensorFlow Probability находится в стадии активной разработки, и интерфейсы могут измениться.
Примеры
Кроме ноутбуков учебники Python , перечисленных в навигации, существуют некоторые примеры сценариев доступны:
- Вариационный автоассоциатор -представление обучения со скрытым кодом и вариационным выводом.
- Вектор-квантованных автоассоциатор -Discrete представление обучения с векторным квантованием.
- Байесовский Neural Networks -Neural сети с неопределенностью относительно их веса.
- Байесовская логистическая регрессия -Bayesian умозаключение для бинарной классификации.
Сообщить о проблемах
Сообщайте ошибки или запросы с использованием TensorFlow вероятности отслеживания проблем .