Інтеграція Google Cloud AutoML для автоматичного навчання моделей

Проектуємо та впроваджуємо системи штучного інтелекту: від прототипу до production-ready рішення. Наша команда поєднує експертизу в машинному навчанні, дата-інжинірингу та MLOps, щоб AI працював не в лабораторії, а в реальному бізнесі.
Показано 1 з 1Усі 1566 послуг
Інтеграція Google Cloud AutoML для автоматичного навчання моделей
Простий
від 1 дня до 3 днів
Часті запитання

Напрямки AI-розробки

Етапи розробки AI-рішення

Останні роботи

  • image_website-b2b-advance_0.webp
    Розробка сайту компанії B2B ADVANCE
    1284
  • image_web-applications_feedme_466_0.webp
    Розробка веб-додатків для компанії FEEDME
    1196
  • image_websites_belfingroup_462_0.webp
    Розробка веб-сайту для компанії БЕЛФІНГРУП
    901
  • image_ecommerce_furnoro_435_0.webp
    Розробка інтернет магазину для компанії FURNORO
    1119
  • image_logo-advance_0.webp
    Розробка логотипу компанії B2B Advance
    586
  • image_crm_enviok_479_0.webp
    Розробка веб-додатків для компанії Enviok
    853

Інтеграція Google Cloud AutoML для автоматичного навчання моделей

Google Cloud AutoML - managed-сервіс для навчання кастомних моделей без глибоких знань ML. Оптимальний для команд без ML-фахівців або для завдань, де швидкість важливіша за максимальну точність.

Продукти Google Cloud AutoML

Лінійка AutoML сервісів:

automl_products = {
    'AutoML Tables': 'структурированные данные, classification/regression',
    'AutoML Vision': 'классификация изображений, object detection',
    'AutoML Natural Language': 'классификация текста, entity extraction, sentiment',
    'AutoML Translation': 'кастомные NMT модели для специализированных доменов',
    'Vertex AI AutoML': 'унифицированный интерфейс для всех типов данных'
}

Vertex AI AutoML Tables

Навчання на структурованих даних:

from google.cloud import aiplatform
import pandas as pd

def train_vertex_automl_classification(
    project_id: str,
    dataset_gcs_uri: str,
    target_column: str,
    model_display_name: str,
    training_budget_hours: float = 1.0
) -> dict:
    """
    Vertex AI AutoML Tables: budget_milli_node_hours = часы × 1000.
    Минимум 1 час, рекомендуется 8-24 часа для лучшего качества.
    """
    aiplatform.init(project=project_id, location='us-central1')

    # Создаём датасет
    dataset = aiplatform.TabularDataset.create(
        display_name=f'{model_display_name}_dataset',
        gcs_source=dataset_gcs_uri
    )

    # Запускаем обучение
    job = aiplatform.AutoMLTabularTrainingJob(
        display_name=model_display_name,
        optimization_prediction_type='classification',
        optimization_objective='maximize-au-roc',
        column_transformations=[
            {'auto': {'column_name': col}}
            for col in get_feature_columns(dataset_gcs_uri, target_column)
        ]
    )

    model = job.run(
        dataset=dataset,
        target_column=target_column,
        training_fraction_split=0.8,
        validation_fraction_split=0.1,
        test_fraction_split=0.1,
        budget_milli_node_hours=int(training_budget_hours * 1000),
        model_display_name=model_display_name,
        disable_early_stopping=False
    )

    return {
        'model_resource_name': model.resource_name,
        'model_display_name': model_display_name
    }

Endpoint деплой та інференс

Online prediction endpoint:

def deploy_and_predict(model_resource_name: str,
                        endpoint_display_name: str,
                        instances: list) -> dict:
    """
    Деплой модели на endpoint для online prediction.
    """
    model = aiplatform.Model(model_resource_name)

    endpoint = model.deploy(
        deployed_model_display_name=endpoint_display_name,
        machine_type='n1-standard-4',
        min_replica_count=1,
        max_replica_count=3,
        traffic_percentage=100
    )

    # Инференс
    predictions = endpoint.predict(instances=instances)

    return {
        'predictions': predictions.predictions,
        'deployed_model_id': predictions.deployed_model_id
    }

def batch_prediction(model_resource_name: str,
                      input_gcs_uri: str,
                      output_gcs_dir: str) -> dict:
    """
    Batch prediction: для больших объёмов данных (без endpoint).
    """
    model = aiplatform.Model(model_resource_name)

    batch_job = model.batch_predict(
        job_display_name='batch_prediction_job',
        gcs_source=input_gcs_uri,
        gcs_destination_prefix=output_gcs_dir,
        machine_type='n1-standard-4',
        instances_format='csv',
        predictions_format='jsonl'
    )
    batch_job.wait()
    return {'output_location': output_gcs_dir}

Обмеження Google Cloud AutoML:

  • Обмежена кастомізація: не можна задати свою функцію втрат
  • Вартість: $19.32/годину навчання (Tables), вище ніж self-hosted
  • Немає повного контролю над pipeline
  • Експорт моделі: тільки у TF SavedModel/TFLite форматі

Коли AutoML Tables не підходить: нестандартні ознаки (графові дані, часові ряди > simple patterns), завдання із жорсткими вимогами до затримки, необхідність SHAP або детальних пояснень.

Терміни: Dataset upload + AutoML training + endpoint deploy - 1-2 дні. Batch prediction pipeline, monitoring за дрейфом, retraining trigger - 1-2 тижні.