×
1 Выберите сертификаты EITC/EITCA
2 Учитесь и сдавайте онлайн-экзамены
3 Пройдите сертификацию своих навыков в области ИТ

Подтвердите свои ИТ-навыки и компетенции в рамках Европейской системы сертификации ИТ из любой точки мира в режиме онлайн.

Академия EITCA

Стандарт аттестации цифровых навыков Европейского института сертификации ИТ, направленный на поддержку развития цифрового общества.

ВОЙДИТЕ В ВАШ АККАУНТ

ОТКРЫТЬ СЧЁТ ЗАБЫЛИ ПАРОЛЬ?

ЗАБЫЛИ ПАРОЛЬ?

БСГ, подожди, я помню!

ОТКРЫТЬ СЧЁТ

Уже есть учетная запись?
ЕВРОПЕЙСКАЯ АКАДЕМИЯ СЕРТИФИКАЦИИ ИНФОРМАЦИОННЫХ ТЕХНОЛОГИЙ - ПРОВЕРКА ВАШИХ ЦИФРОВЫХ НАВЫКОВ
  • регистрация
  • ВХОД
  • ИНФОРМАЦИЯ

Академия EITCA

Академия EITCA

Европейский институт сертификации информационных технологий - EITCI ASBL

Поставщик сертификации

Институт EITCI ASBL

Брюссель, Европейский Союз

Руководящая структура Европейской ИТ-сертификации (EITC) в поддержку ИТ-профессионализма и цифрового общества

  • СЕРТИФИКАТЫ
    • АКАДЕМИИ EITCA
      • КАТАЛОГ АКАДЕМИЙ EITCA<
      • EITCA/CG КОМПЬЮТЕРНАЯ ГРАФИКА
      • EITCA/IS ИНФОРМАЦИОННАЯ БЕЗОПАСНОСТЬ
      • EITCA/BI БИЗНЕС-ИНФОРМАЦИЯ
      • КЛЮЧЕВЫЕ КОМПЕТЕНЦИИ EITCA/KC
      • EITCA/EG E-GOVERNMENT
      • ВЕБ-РАЗРАБОТКА EITCA/WD
      • ИСКУССТВЕННЫЙ ИНТЕЛЛЕКТ EITCA/AI
    • EITC СЕРТИФИКАТЫ
      • КАТАЛОГ СЕРТИФИКАТОВ EITC<
      • СЕРТИФИКАТЫ КОМПЬЮТЕРНОЙ ГРАФИКИ
      • СЕРТИФИКАТЫ ВЕБ-ДИЗАЙНА
      • СЕРТИФИКАТЫ 3D ДИЗАЙНА
      • ОФИС СЕРТИФИКАТЫ
      • БИТКОИН БЛОКЧЕЙН СЕРТИФИКАТ
      • СЕРТИФИКАТ WORDPRESS
      • СЕРТИФИКАТ ОБЛАЧНОЙ ПЛАТФОРМЫНОВЫЕ
    • EITC СЕРТИФИКАТЫ
      • СЕРТИФИКАТЫ ИНТЕРНЕТА
      • КРИПТОГРАФИЯ СЕРТИФИКАТЫ
      • БИЗНЕС СЕРТИФИКАТЫ
      • СЕРТИФИКАТЫ ТЕЛЕВИДЕНИЯ
      • СЕРТИФИКАТЫ ПРОГРАММИРОВАНИЯ
      • ЦИФРОВОЙ ПОРТРЕТ СЕРТИФИКАТ
      • СЕРТИФИКАТЫ РАЗРАБОТКИ ВЕБ-РАЗРАБОТКИ
      • СЕРТИФИКАТЫ ГЛУБОКОГО ОБУЧЕНИЯНОВЫЕ
    • СЕРТИФИКАТЫ ДЛЯ
      • ПУБЛИЧНОЕ УПРАВЛЕНИЕ ЕС
      • УЧИТЕЛЯ И УЧИТЕЛЯ
      • ИТ-БЕЗОПАСНОСТЬ ПРОФЕССИОНАЛОВ
      • ГРАФИЧЕСКИЕ ДИЗАЙНЕРЫ И ХУДОЖНИКИ
      • БИЗНЕСМЕНЫ И МЕНЕДЖЕРЫ
      • БЛОКЧЕЙН РАЗРАБОТЧИКИ
      • ВЕБ-РАЗРАБОТЧИКИ
      • ЭКСПЕРТЫ ОБЛАЧНОГО ИИНОВЫЕ
  • НОВИНКИ
  • СУБСИДИЯ
  • КАК ЭТО РАБОТАЕТ
  •   IT ID
  • О КОМПАНИИ
  • Контакт
  • МОЙ ЗАКАЗ
    Ваш текущий заказ пуст.
EITCIINSTITUTE
CERTIFIED

Как модели Keras заменяют оценщики TensorFlow?

by Мирек Хермут / Среда, 11 июня 2025 / Опубликовано в Искусственный интеллект, EITC/AI/GCML Машинное обучение Google Cloud, Первые шаги в машинном обучении, Простые и простые оценки

Переход от TensorFlow Estimators к моделям Keras представляет собой значительную эволюцию в рабочем процессе и парадигме создания, обучения и развертывания моделей машинного обучения, особенно в экосистемах TensorFlow и Google Cloud. Это изменение не просто сдвиг в предпочтениях API, но отражает более широкие тенденции в доступности, гибкости и интеграции современных методов глубокого обучения.

Предыстория: Оценщики TensorFlow

TensorFlow Estimators были введены для стандартизации процесса обучения, оценки и развертывания моделей машинного обучения. Estimator API предоставил высокоуровневую абстракцию для распределенного обучения, простое развертывание на различных платформах (включая Google Cloud AI Platform) и встроенную поддержку для различных задач машинного обучения, таких как классификация, регрессия и даже пользовательское моделирование.

Рабочий процесс оценщика обычно включает в себя:

– Определение функции ввода для чтения данных.
– Написание `model_fn` для инкапсуляции логики модели, потерь и оптимизаторов.
– Создание объекта `Estimator`.
– Вызов таких методов, как `.train()`, `.evaluate()` и `.predict()`.

Оценщики обеспечивали четкое разделение между вводом данных, построением модели и выполнением, что было особенно ценно для масштабируемого обучения и обслуживания. Они также обрабатывали большую часть шаблонного кода, необходимого для распределенного обучения и управления контрольными точками.

Однако API Estimator имел несколько ограничений:

– Для новичков, особенно тех, кто только знакомится с глубоким обучением, он был менее интуитивно понятен.
– Настройка моделей (особенно для динамических архитектур) была обременительной.
– Интеграция с новыми функциями (например, пользовательскими слоями или потерями), представленными в сообществе глубокого обучения, была медленнее и сложнее.

Расцвет моделей Keras

Keras изначально разрабатывался как независимая, удобная для пользователя библиотека нейронных сетей. Он подчеркивал простоту и быстрое прототипирование с помощью краткого и последовательного API. Когда TensorFlow принял Keras в качестве своего официального API высокого уровня с выпуском TensorFlow 2.x, это стало признанием ценности, которую Keras привнес в сообщество.

Основные преимущества моделей Keras

1. Простота и читабельность: Модели Keras, как правило, проще понимать и писать, что снижает когнитивную нагрузку на практиков и исследователей.
2. Гибкость: Функциональные и подклассифицирующие API Keras позволяют создавать сложные и динамические модели, например, те, которые требуются для моделирования последовательностей, механизмов внимания или генеративных моделей.
3. Интеграция с современной экосистемой глубокого обучения: Модели Keras могут легко включать пользовательские слои, метрики, потери и обратные вызовы, что упрощает внедрение последних достижений исследований.
4. Комплексные рабочие процессы: В Keras предварительная обработка данных, создание модели, обучение, оценка и развертывание тесно интегрированы.
5. Собственная поддержка в TensorFlow 2.x: При использовании активного выполнения по умолчанию отладка и проверка модели становятся более простыми.

Keras как API высокого уровня по умолчанию в TensorFlow

Начиная с TensorFlow 2.x, Keras (`tf.keras`) является предпочтительным и рекомендуемым высокоуровневым API для определения и обучения моделей. Этот сдвиг отражен в документации, поддержке сообщества и продолжающейся разработке функций. Хотя Estimators по-прежнему поддерживаются для обратной совместимости и определенных вариантов использования, новые функции и улучшения сосредоточены на API Keras.

Пример: простая классификация с оценщиком против Keras

Использование оценщика:

python
import tensorflow as tf

def model_fn(features, labels, mode):
    net = tf.layers.dense(features['x'], 10, activation=tf.nn.relu)
    logits = tf.layers.dense(net, 3, activation=None)
    predicted_classes = tf.argmax(logits, 1)

    if mode == tf.estimator.ModeKeys.PREDICT:
        predictions = {
            'class_ids': predicted_classes[:, tf.newaxis],
            'probabilities': tf.nn.softmax(logits),
            'logits': logits,
        }
        return tf.estimator.EstimatorSpec(mode, predictions=predictions)

    loss = tf.losses.sparse_softmax_cross_entropy(labels=labels, logits=logits)

    if mode == tf.estimator.ModeKeys.TRAIN:
        optimizer = tf.train.AdamOptimizer()
        train_op = optimizer.minimize(loss, global_step=tf.train.get_global_step())
        return tf.estimator.EstimatorSpec(mode, loss=loss, train_op=train_op)

    eval_metric_ops = {
        'accuracy': tf.metrics.accuracy(labels=labels, predictions=predicted_classes)
    }
    return tf.estimator.EstimatorSpec(
        mode, loss=loss, eval_metric_ops=eval_metric_ops)

estimator = tf.estimator.Estimator(model_fn=model_fn)
# Data input functions omitted for brevity.

Использование Keras:

python
import tensorflow as tf
from tensorflow import keras

model = keras.Sequential([
    keras.layers.Dense(10, activation='relu', input_shape=(input_dim,)),
    keras.layers.Dense(3, activation='softmax')
])

model.compile(optimizer='adam',
              loss='sparse_categorical_crossentropy',
              metrics=['accuracy'])

model.fit(x_train, y_train, epochs=5, batch_size=32)

Как видно выше, код Keras более лаконичен и доступен, поддерживает быструю итерацию и экспериментирование.

Как Keras заменяет оценщиков в рабочих процессах машинного обучения Google Cloud

1. Обучение и развертывание

На Google Cloud AI Platform (теперь Vertex AI) пользователи исторически использовали Estimators для распределенного обучения и обслуживания. С принятием Keras в качестве стандарта платформа полностью поддерживает модели Keras как для обучения, так и для развертывания:

– Распределенное обучение: Модели Keras можно обучать на нескольких GPU или TPU с помощью API `tf.distribute`. Это полностью совместимо с распределенной инфраструктурой Google Cloud.
– Экспорт и обслуживание модели: Модели Keras можно сохранять в формате TensorFlow SavedModel, который является стандартом для обслуживания моделей в Google Cloud.
– Настройка гиперпараметра: Модели Keras интегрируются со службами настройки гиперпараметров Google Cloud, что позволяет пользователям эффективно оптимизировать свои модели.

2. Конвейеры ввода данных

Keras легко интегрируется с конвейерами `tf.data`, облегчая масштабируемую и эффективную загрузку данных, предварительную обработку и дополнение. Это позволяет специалистам обрабатывать большие наборы данных и сложные этапы предварительной обработки с минимальным кодом.

3. Архитектуры пользовательских моделей

В то время как создание пользовательских слоев, потерь и обучающих циклов в API Estimator может быть обременительным, Keras предоставляет интуитивно понятные механизмы для подклассификации моделей и слоев, позволяя исследовательским и производственным группам с большей легкостью реализовывать самые современные архитектуры.

4. Мониторинг и обратные вызовы

Keras поддерживает широкий спектр обратных вызовов — инструментов, которые позволяют контролировать обучение, регулировать скорость обучения, сохранять контрольные точки, выполнять раннюю остановку и интегрироваться с TensorBoard.

5. Интеграция сообщества и экосистемы

Многие популярные наборы данных, предварительно обученные модели и исследовательские вклады теперь распространяются как совместимый с Keras код. Это упрощает пользователям Google Cloud использование передовых исследований в своих рабочих процессах.

Переход с Estimators на Keras: соображения

Организации или отдельные лица с существующими кодовыми базами, построенными вокруг Estimators, могут перейти на Keras с различной степенью усилий, в зависимости от сложности модели и пользовательского кода. TensorFlow предоставляет руководства по миграции и инструменты для облегчения этого процесса.

– Пользовательская логика модели: Пользовательская логика `model_fn` в Estimators часто транслируется в пользовательские классы моделей Keras.
– Стратегии распределенного обучения: Распределенное обучение с помощью Keras использует API `tf.distribute`, который является более гибким и мощным по сравнению со стратегиями распределения Estimator.
– Обслуживание и экспорт: Модели Keras, сохраненные в формате SavedModel, могут обслуживаться с помощью TensorFlow Serving или развертываться на Vertex AI без дополнительных модификаций.

Пример: развертывание модели Keras в Google Cloud Vertex AI

1. Определить и обучить модель

python
    import tensorflow as tf
    from tensorflow import keras

    model = keras.Sequential([
        keras.layers.Dense(64, activation='relu', input_shape=(32,)),
        keras.layers.Dense(10, activation='softmax')
    ])
    model.compile(optimizer='adam',
                  loss='categorical_crossentropy',
                  metrics=['accuracy'])
    model.fit(x_train, y_train, epochs=10, batch_size=32)
    

2. Экспорт модели

python
    model.save('saved_model/')
    

3. Загрузить в облачное хранилище Google

    gsutil cp -r saved_model gs://my-bucket/path/to/model/
    

4. Развертывание на Vertex AI
Используя Google Cloud Console или CLI `gcloud`, модель можно развернуть для служб прогнозирования.

Этот рабочий процесс подчеркивает рациональный характер использования Keras в современных конвейерах машинного обучения.

Устранение ограничений и обеспечение обратной совместимости

Хотя Keras охватывает широкий спектр потребностей машинного обучения, некоторые устаревшие рабочие процессы или особые требования (например, некоторые низкоуровневые функции распределенного обучения) могут по-прежнему требовать использования Estimators. Однако текущая разработка в TensorFlow и экосистеме Google Cloud Machine Learning ориентирована на дальнейшее расширение возможностей Keras, обеспечение паритета функций и поддержку миграции.

Дидактическая ценность и образовательное воздействие

Этот сдвиг в сторону Keras имеет глубокие последствия для преподавания и изучения машинного обучения:

– Снижение барьера для входа: Ясный и лаконичный синтаксис Keras позволяет студентам и новичкам сосредоточиться на основных концепциях, а не на шаблонном коде.
– Быстрое прототипирование и экспериментирование: Возможность быстро изменять архитектуру и параметры обучения поддерживает экспериментальное обучение.
– Соответствие отраслевым стандартам: Keras широко используется как в академических исследованиях, так и в промышленных приложениях, поэтому его изучение готовит пользователей к решению реальных задач.
– Бесшовное продвижение: Обучающиеся могут начать с простых последовательных моделей и постепенно переходить к более сложным пользовательским подклассам, не меняя фреймворки.

Экосистема и будущие направления

Более широкая экосистема TensorFlow (включая TensorFlow Hub, TensorFlow Lite, TensorFlow Extended и TensorFlow Serving) приняла Keras в качестве основного интерфейса моделей, гарантируя, что модели, созданные с помощью Keras, будут переносимы на различные платформы — облачные, мобильные, веб- и периферийные устройства.

Инструменты для исследований, учебные пособия и образовательный контент теперь в основном сосредоточены на Keras, что еще больше укрепляет его статус как инструмента по умолчанию для новых проектов.

Примеры, иллюстрирующие основные возможности Keras

Пользовательские циклы обучения

Keras поддерживает как высокоуровневый метод `.fit()`, так и пользовательские циклы обучения с использованием `tf.GradientTape`:

python
class MyModel(tf.keras.Model):
    def __init__(self):
        super(MyModel, self).__init__()
        self.dense1 = tf.keras.layers.Dense(64, activation='relu')
        self.dense2 = tf.keras.layers.Dense(10, activation='softmax')
    def call(self, inputs):
        x = self.dense1(inputs)
        return self.dense2(x)

model = MyModel()
optimizer = tf.keras.optimizers.Adam()
loss_fn = tf.keras.losses.CategoricalCrossentropy()

for epoch in range(epochs):
    for x_batch, y_batch in train_dataset:
        with tf.GradientTape() as tape:
            logits = model(x_batch)
            loss = loss_fn(y_batch, logits)
        gradients = tape.gradient(loss, model.trainable_weights)
        optimizer.apply_gradients(zip(gradients, model.trainable_weights))

Достичь такого уровня гибкости с помощью Estimators было непросто.

Интеграция с tf.data

Эффективные конвейеры данных можно построить следующим образом:

python
train_dataset = tf.data.Dataset.from_tensor_slices((x_train, y_train))
train_dataset = train_dataset.shuffle(buffer_size=1024).batch(32)

model.fit(train_dataset, epochs=5)

Такая интеграция поддерживает крупномасштабную обработку и дополнение данных.

Сериализация и переносимость модели

Модели Keras можно экспортировать в формат SavedModel, что позволяет:

– Развертывание с TensorFlow Serving
– Преобразование в TensorFlow Lite для мобильных и встраиваемых устройств
– Совместное использование с TensorFlow Hub или Model Garden

Настройка гиперпараметра

Модели Keras напрямую интегрируются с автоматизированными инструментами настройки гиперпараметров, такими как Keras Tuner и Vertex AI Vizier от Google Cloud.

{{EJS15}}

Ключевые различия: Estimator и Keras на практике

ОсобенностьОценщик TensorFlowМодель Keras (tf.keras)
Стиль APIФункционально через `model_fn`, часто многословноОбъектно-ориентированный, лаконичный
НастройкаОграничено, через пользовательскую логику model_fnВысокий, через функционал и подклассы
Ввод данныхТребуются специальные функции вводаИнтегрировано с `tf.data`
Распределенное обучениеВстроенный, но менее гибкийГибкость через `tf.distribute`
Модель ЭкспортаSavedModel, часто больше шаговSavedModel, сохранение в одну строку
Интеграция с экосистемойНесколько изолированПолная интеграция
Поддержка сообщества и исследованийУменьшаяШироко распространенный
ОтладкаСтатичные графики, менее интуитивныеБыстрое выполнение, более легкая отладка

FAQ: вопросы, связанные с переходом

Можно ли использовать старые модели Estimator с Keras?
Хотя модели Estimator и модели Keras различны, TensorFlow предоставляет утилиты для конвертации или обертывания моделей Estimator для использования в рабочих процессах обслуживания. Однако для новой разработки рекомендуется использовать Keras.

Существуют ли случаи, когда оценщики являются предпочтительными?
В редких случаях, связанных с устаревшими распределенными учебными рабочими процессами или специализированными требованиями, Estimators все еще могут использоваться. Тем не менее, эти сценарии становятся все более редкими по мере расширения возможностей Keras.

Каким образом Keras поддерживает крупномасштабные производственные рабочие нагрузки?
Keras интегрируется с функциями производительности TensorFlow, включая обучение со смешанной точностью, стратегии распределения и оптимизированные входные конвейеры, что делает его пригодным для корпоративного использования.

Поддерживает ли Keras модели, не являющиеся нейронными сетями?
Keras в первую очередь предназначен для нейронных сетей. Для некоторых классических алгоритмов машинного обучения (например, случайных лесов, бустинга) предпочтительны другие библиотеки (например, scikit-learn или TensorFlow Decision Forests).

Дидактическая рекомендация

Как для новичков, так и для профессионалов настоятельно рекомендуется инвестировать время в изучение Keras. Учебники, учебники и MOOC теперь используют Keras в качестве стандарта для обучения глубокому обучению. Понимание API Keras обеспечивает совместимость с лучшими современными практиками в области машинного обучения и развертывания в облаке.

Другие недавние вопросы и ответы, касающиеся EITC/AI/GCML Машинное обучение Google Cloud:

  • Какие распространенные алгоритмы искусственного интеллекта/машинного обучения следует использовать для обработки данных?
  • Как настроить конкретную среду Python с помощью Jupyter Notebook?
  • Как использовать TensorFlow Serving?
  • Что такое Classifier.export_saved_model и как его использовать?
  • Почему регрессия часто используется в качестве предиктора?
  • Актуальны ли множители Лагранжа и методы квадратичного программирования для машинного обучения?
  • Можно ли применять более одной модели в процессе машинного обучения?
  • Может ли машинное обучение адаптировать используемый алгоритм в зависимости от сценария?
  • Каков самый простой путь к базовому обучению и развертыванию дидактической модели ИИ на платформе Google AI с использованием бесплатного уровня/пробной версии с использованием графической пользовательской консоли в пошаговой манере для абсолютного новичка без опыта программирования?
  • Как на практике обучить и развернуть простую модель ИИ в Google Cloud AI Platform с помощью графического интерфейса консоли GCP в пошаговом руководстве?

Просмотреть дополнительные вопросы и ответы в EITC/AI/GCML Google Cloud Machine Learning

Еще вопросы и ответы:

  • поле: Искусственный интеллект
  • программа: EITC/AI/GCML Машинное обучение Google Cloud (пройти программу сертификации)
  • Урок: Первые шаги в машинном обучении (перейти к соответствующему уроку)
  • Тема: Простые и простые оценки (перейти в родственную тему)
Теги: Искусственный интеллект, Облачное развертывание, Конвейер данных, Глубокое обучение, Оценщик, Keras, API машинного обучения, Обслуживание моделей, Модельное обучение, TensorFlow, Вершинный ИИ
Главная » Искусственный интеллект/EITC/AI/GCML Машинное обучение Google Cloud/Первые шаги в машинном обучении/Простые и простые оценки » Как модели Keras заменяют оценщики TensorFlow?

Центр сертификации

МЕНЮ ПОЛЬЗОВАТЕЛЯ

  • Мой аккаунт

СЕРТИФИКАТ КАТЕГОРИИ

  • Сертификация EITC (105)
  • Сертификация EITCA (9)

Что вы ищете?

  • Введение
  • Как это работает?
  • Академии EITCA
  • Субсидия EITCI DSJC
  • Полный каталог EITC
  • Ваш заказ
  • Популярные
  •   IT ID
  • Обзоры EITCA (издание Medium)
  • О Нас
  • Контакты

Академия EITCA является частью Европейской структуры сертификации ИТ.

Европейская структура ИТ-сертификации была создана в 2008 году как европейский и независимый от поставщиков стандарт широкодоступной онлайн-сертификации цифровых навыков и компетенций во многих областях профессиональных цифровых специализаций. Структура EITC регулируется Европейский институт сертификации ИТ (EITCI), некоммерческий орган по сертификации, поддерживающий рост информационного общества и устраняющий разрыв в цифровых навыках в ЕС.

Право на участие в программе EITCA Academy 80% поддержки EITCI DSJC Subsidy

80% оплаты Академии EITCA субсидируется при зачислении

    Офис секретаря Академии EITCA

    Европейский институт сертификации в области ИТ (ASBL)
    Брюссель, Бельгия, Европейский Союз

    Оператор системы сертификации EITC/EITCA
    Управляющий европейский стандарт ИТ-сертификации
    О компании Форму обратной связи или позвоните по телефону +32 25887351

    Следуйте за EITCI на X
    Посетите Академию EITCA на Facebook
    Присоединяйтесь к Академии EITCA в LinkedIn
    Посмотрите видеоролики EITCI и EITCA на YouTube.

    Финансируется Европейским Союзом

    Финансируется Европейский фонд регионального развития (ЕФРР) и Европейский социальный фонд (ESF) в серии проектов с 2007 года, в настоящее время управляется Европейский институт сертификации ИТ (EITCI) с 2008 года

    Политика информационной безопасности | Политика DSRRM и GDPR | Политика защиты данных | Запись действий по обработке | Политика ОТОСБ | Антикоррупционная политика | Современная политика рабства

    Автоматический перевод на ваш язык

    Правила | Персональные данные
    Академия EITCA
    • Академия EITCA в социальных сетях
    Академия EITCA


    © 2008-2025  Европейский институт сертификации ИТ
    Брюссель, Бельгия, Европейский Союз

    ТОП
    Общайтесь со службой поддержки
    Общайтесь со службой поддержки
    Вопросы, сомнения, проблемы? Мы здесь чтобы помочь вам!
    Конец чат
    Подключение ...
    Остались вопросы?
    Остались вопросы?
    :
    :
    :
    Отправьте
    Остались вопросы?
    :
    :
    Начать Чат
    Сеанс чата закончился. Спасибо!
    Пожалуйста, оцените поддержку, которую вы получили.
    Хорошо бассейн