API-интерфейсы TensorFlow Core предоставляют набор всеобъемлющих, компонуемых и расширяемых низкоуровневых API-интерфейсов для высокопроизводительных (распределенных и ускоренных) вычислений, в первую очередь предназначенных для построения моделей машинного обучения (ML), а также создания инструментов и сред рабочих процессов ML в рамках Платформа TensorFlow. Эти API обеспечивают основу для создания легко настраиваемых моделей с детальным контролем и новыми платформами с нуля.
Основные API-интерфейсы можно использовать в качестве альтернативы высокоуровневым API-интерфейсам машинного обучения, таким как Keras. Эти высокоуровневые API лучше всего подходят для общих нужд машинного обучения. Они предлагают множество модулей, которые абстрагируются от сложностей машинного обучения, а также предлагают функциональные возможности для настройки посредством создания подклассов. Если вы ищете обзор TensorFlow с использованием Keras, см. разделы Quickstarts и Keras в туториалах .
Кто должен использовать основные API
Низкоуровневые API-интерфейсы TensorFlow Core разработаны с учетом следующих требований разработчиков машинного обучения:
- Исследователи, создающие сложные модели с высоким уровнем конфигурируемости
- Разработчики, заинтересованные в использовании TensorFlow в качестве высокопроизводительной платформы для научных вычислений.
- Авторы фреймворка создают инструменты на основе платформы TensorFlow.
- Пользователи API высокого уровня, заинтересованные в:
- Добавление дополнительных функций в свои рабочие процессы машинного обучения, таких как пользовательские слои, потери, модели и оптимизаторы.
- Узнать больше о внутренней работе их моделей
Основные API-приложения
API-интерфейсы TensorFlow Core предоставляют доступ к функциям низкого уровня в рамках экосистемы TensorFlow. Этот API обеспечивает большую гибкость и контроль для создания моделей, приложений и инструментов машинного обучения по сравнению с высокоуровневыми API, такими как Keras.
Создавайте модели и рабочие процессы
Основные API чаще всего используются для создания настраиваемых и оптимизированных моделей машинного обучения и рабочих процессов. Вот несколько способов, которыми API-интерфейсы TensorFlow Core могут улучшить ваши модели машинного обучения и разработку рабочих процессов:
- Создание нетрадиционных моделей или слоев, которые не полностью соответствуют структурам, поддерживаемым высокоуровневыми API.
- Создание пользовательских слоев, потерь, моделей и оптимизаторов в Keras
- Внедрение новых методов оптимизации для ускорения сходимости во время обучения
- Создание пользовательских метрик для оценки производительности
- Разработка легко настраиваемых циклов обучения с поддержкой таких функций, как пакетная обработка, перекрестная проверка и стратегии распределения.
Создавайте фреймворки и инструменты
API-интерфейсы TensorFlow Core также могут служить строительными блоками для новых высокоуровневых фреймворков. Вот несколько примеров инструментов и фреймворков, созданных с помощью низкоуровневых API:
- Keras : глубокое обучение для людей
- TensorFlow Model Optimization Toolkit : набор инструментов для оптимизации моделей машинного обучения для развертывания и выполнения.
- TensorFlow Graphics : библиотека для широкого доступа к полезным графическим функциям.
Сборка для научных вычислений
API-интерфейсы TensorFlow Core также можно применять за пределами области машинного обучения. Вот несколько универсальных вариантов использования TensorFlow для научных вычислений:
- Физическое моделирование для задач механики твердого тела и гидродинамики
- Приложения для рендеринга графики, такие как трассировка лучей
- Решение задач условной оптимизации
Основные компоненты API
Вот некоторые из основных компонентов, которые составляют низкоуровневые API-интерфейсы TensorFlow Core. Обратите внимание, что это не исчерпывающий список:
- Структуры данных:
tf.Tensor
,tf.Variable
,tf.TensorArray
- Примитивные API:
tf.shape
, slicing ,tf.concat
,tf.bitwise
- Числовые:
tf.math
,tf.linalg
,tf.random
- Функциональные компоненты:
tf.function
,tf.GradientTape
- Распространение: DTensor
- Экспорт:
tf.saved_model
Следующие шаги
Документация Build with Core содержит руководства по основным концепциям машинного обучения с нуля. Руководства в этом разделе помогут вам освоиться в написании низкоуровневого кода с помощью Core API, который вы затем сможете применить к более сложным собственным сценариям использования.
Чтобы начать использовать Core API и узнать больше о них, ознакомьтесь с кратким руководством по TensorFlow Core .