checkpointing

Checkpointing er teknikken at gemme en models vægte og optimerertilstand på bestemte tidspunkter under træning, så træningen kan genoptages fra det punkt.

Kort fortalt

Checkpointing betyder, at man jævnligt gemmer en kopi af modellen under træning, så man ikke mister alt arbejde, hvis træningen afbrydes.

Kategori
teknik
Niveau
øvet
Udtale
tʃɛkpɔɪntɪŋ

Betydninger

1
  1. 1

    Praksis med at gemme en models tilstand (vægte, optimerertilstand, evt. metadata) under træning for at kunne genoptage eller evaluere senere.

    • Vi anvender checkpointing hver 10. epoke for at undgå at miste træningsfremskridt ved strømafbrydelse.
    • Checkpointing muliggør at rulle tilbage til en tidligere model, hvis træningen divergerer.

Hvornår bruges det

Checkpointing bruges især ved langvarig træning af store modeller for at undgå tab af fremskridt ved nedbrud eller fejl. Det muliggør også at gemme bedste model undervejs baseret på valideringsscore.

Kodeeksempel

from tensorflow.keras.callbacks import ModelCheckpoint

checkpoint = ModelCheckpoint(
    'model_{epoch:02d}.h5',
    save_best_only=True,
    monitor='val_loss',
    mode='min'
)
model.fit(X, y, validation_data=(X_val, y_val), callbacks=[checkpoint], epochs=50)

Eksempel på checkpointing med Keras: Gemmer kun den bedste model ift. valideringstab.

Oprindelse

Fra engelsk 'checkpoint' (kontrolpunkt) og suffikset '-ing', oprindeligt fra computerspil og systemer, hvor et checkpoint gemmer spillets tilstand.

Afledte ord

1

Kilder

1
  • TensorFlow: ModelCheckpoint callback