Подключение Google cloud в Kaggle notebook

Использование TPU является необходимостью для получения моделей высокого качества. TPU можно использовать в том числе и на Kaggle, где дается определенное количество бесплатных часов работы (на момент написания статьи - 20 часов). Однако, что работать с TPU нужно, чтобы данные хранились в облаке Google. В принципе все датасеты kaggle хранятся там же. Однако нужно порой не только хранить статические данные, но и записывать туда результаты вычислений (например, checkpoints). Так что без собственной регистрации на Google cloud не обойтись. Поэтому регистрируемся и создаем первый проект.

2022-01-13_17-26-26

Далее в проекте создаем bucket:

2022-01-13_17-05-23

Я использовал такое имя:

2022-01-13_17-06-38

Для работы с гугл-аккаунтом в кагле вам нужно включать соответствующий код в блокнот:

from kaggle_secrets import UserSecretsClient

user_secrets = UserSecretsClient()

user_credential = user_secrets.get_gcloud_credential()

user_secrets.set_tensorflow_credential(user_credential)

user_secrets.set_gcloud_credentials()

Далее для получения адреса:

# Create a folder on Google Cloud Storage to store the checkpoints.

import pytz

from datetime import datetime

JST = pytz.timezone('Europe/Rome')

utc_dt = datetime.now()

FOLDER_NAME = utc_dt.astimezone(JST).strftime("%Y%m%d-%H%M")

BUCKET_NAME = user_secrets.get_secret('gcs_bucket_name')

GCS_OUTPUT_PATH = f"gs://{BUCKET_NAME}/{FOLDER_NAME}"

print(GCS_OUTPUT_PATH)

 

 Тут gcs_bucket_name - это имя вашей корзины, задается в настройках блокнота:

2022-01-13_17-08-01

У меня создалось так:

2022-01-13_17-10-34

Смотрим на облаке:

2022-01-13_17-12-01

Ну и содержимое после обучения:

2022-01-13_17-38-34

Все работает