Ontwerp voor bewaking

Voltooid

Als onderdeel van een MLOps-architectuur (Machine Learning Operations), moet u nadenken over het bewaken van uw machine learning-oplossing.

Bewaking is nuttig in elke MLOps-omgeving. U wilt het model, de gegevens en de infrastructuur bewaken om metrische gegevens te verzamelen die u helpen bij het bepalen van de benodigde volgende stappen.

Het model bewaken

Meestal wilt u de prestaties van uw model bewaken. Tijdens de ontwikkeling gebruikt u MLflow om uw machine learning-modellen te trainen en bij te houden. Afhankelijk van het model dat u traint, zijn er verschillende metrische gegevens die u kunt gebruiken om te evalueren of het model naar verwachting presteert.

Als u een model in productie wilt bewaken, kunt u het getrainde model gebruiken om voorspellingen te genereren op een kleine subset van nieuwe binnenkomende gegevens. Door de metrische prestatiegegevens voor die testgegevens te genereren, kunt u controleren of het model nog steeds het doel bereikt.

Daarnaast kunt u ook controleren op eventuele verantwoordelijke problemen met kunstmatige intelligentie (AI). Bijvoorbeeld of het model eerlijke voorspellingen doet.

Voordat u een model kunt bewaken, is het belangrijk om te bepalen welke prestatiegegevens u wilt bewaken en wat de benchmark voor elke metriek moet zijn. Wanneer moet u worden gewaarschuwd dat het model niet meer nauwkeurig is?

De gegevens bewaken

Doorgaans traint u een machine learning-model met behulp van een historische gegevensset die representatief is voor de nieuwe gegevens die uw model ontvangt wanneer het wordt geïmplementeerd. Na verloop van tijd kunnen er echter trends zijn die het profiel van de gegevens wijzigen, waardoor uw model minder nauwkeurig is.

Stel dat een model is getraind om de verwachte kilometerstand van een auto te voorspellen op basis van het aantal cilinders, motorgrootte, gewicht en andere kenmerken. Naarmate de technologieën voor autoproductie en motor in de loop van de tijd vooruitgaan, kan de typische brandstofefficiëntie van voertuigen aanzienlijk worden verbeterd; om de voorspellingen van het model te maken die zijn getraind op oudere gegevens, minder nauwkeurig.

Diagram of different hyperparameter values resulting in different models by performing hyperparameter tuning.

Deze wijziging in gegevensprofielen tussen de huidige en de trainingsgegevens wordt gegevensdrift genoemd. Dit kan een belangrijk probleem zijn voor voorspellende modellen die in productie worden gebruikt. Het is daarom belangrijk om gegevensdrift in de loop van de tijd te kunnen bewaken en modellen opnieuw te trainen om de voorspellende nauwkeurigheid te behouden.

De infrastructuur bewaken

Naast het bewaken van het model en de gegevens, moet u ook de infrastructuur bewaken om de kosten te minimaliseren en de prestaties te optimaliseren.

Tijdens de levenscyclus van machine learning gebruikt u rekenkracht om modellen te trainen en te implementeren. Met machine learning-projecten in de cloud kan compute een van uw grootste kosten zijn. U wilt daarom controleren of u efficiënt uw rekenkracht gebruikt.

U kunt bijvoorbeeld het rekengebruik van uw berekening bewaken tijdens de training en tijdens de implementatie. Door het rekengebruik te controleren, weet u of u de ingerichte rekenkracht omlaag kunt schalen of moet uitschalen om capaciteitsbeperkingen te voorkomen.