Trace Id is missing
Naar hoofdinhoud gaan

Automatiseer machine learning-werkstromen door AI in Visual Studio op te nemen

Automatiseer machine learning-werkstromen door AI in Visual Studio op te nemen

Zie hoe gegevenswetenschappers en technici van de Microsoft Developer-divisie met behulp van machine learning-bewerkingsmethoden (MLOps) een geslaagd experiment hebben omgezet in een veelgebruikte productfunctie.

De uitdaging: Van prototype naar productie op schaal

Na zes maanden experimenten met AI en machine learning met als doel de productiviteit van ontwikkelaars te verhogen, is het een klein team voor toegepaste gegevenswetenschap van de Microsoft Developer-divisie gelukt om een model te maken waarmee actief kon worden voorspeld welke C#-methoden een ontwikkelaar waarschijnlijk zou aanroepen voor het schrijven van code.

Dit geslaagde machine learning-prototype werd de basis voor Visual Studio IntelliCode, een door AI ondersteunde mogelijkheid voor het voorspellen van codegebruik, maar pas nadat het uitvoerig was getest op kwaliteit, beschikbaarheid en schaalbaarheid om te voldoen aan de vereisten van Visual Studio-gebruikers. Daarom hadden ze het technische team nodig om een machine learning-platform te maken en dat proces te automatiseren. Daarbij moeten beide teams een MLOps-cultuur aanvaarden, waarbij DevOps-principes tijdens de volledige levenscyclus van machine learning worden toegepast.

Samen hebben het toegepaste wetenschapsteam en het technische team een machine learning-pijplijn gemaakt om het proces voor het trainen van modellen te herhalen, en om veel van het werk te automatiseren dat het toegepaste wetenschapsteam in de prototypefase handmatig had uitgevoerd. Deze pijplijn maakte het mogelijk dat IntelliCode zes programmeertalen kon ondersteunen en schalen, en regelmatig nieuwe modellen trainde waarbij gebruik werd gemaakt van codevoorbeelden die afkomstig waren uit een uitgebreide set open source GitHub-opslagplaatsen.

Twee personen die een gesprek voeren en een diagram tekenen op een whiteboard

De uitdaging: Van prototype naar productie op schaal

De uitdaging: Aanpassen aan een cloudmodel

"We zouden natuurlijk elke maand veel computerintensieve modeltraining gaan toepassen op zeer grote gegevenssets – wat de behoefte aan een geautomatiseerde, schaalbare, end-to-end machine learning-pijplijn nóg duidelijker maakte."

Gearard Boland, Principal Software Engineering Manager, team Data en AI

Profiteer van inzichten met MLOps

Toen IntelliCode werd uitgerold, zagen de teams een kans om een nog betere gebruikerservaring te ontwerpen: ze maakten teamvoltooiingsmodellen op basis van de specifieke coderingsgewoonten van elke klant. Voor het personaliseren van deze machine learning-modellen moeten op aanvraag automatisch modellen kunnen worden getraind en gepubliceerd, en dat steeds als een gebruiker van Visual Studio of Visual Studio Code daar een verzoek toe doet. Om deze functies op schaal te kunnen uitvoeren met behulp van de bestaande pijplijn, hebben de teams gebruikgemaakt van Azure-services zoals Azure Machine LearningAzure Data FactoryAzure Batch en Azure Pipelines.

De uitdaging: Aanpassen aan een cloudmodel

"Toen we ondersteuning voor aangepaste modellen toevoegden, werd de schaalbaarheid en betrouwbaarheid van onze trainingspijplijn nog belangrijker"

Gearard Boland, Principal Software Engineering Manager, team Data en AI

Twee verschillende perspectieven combineren

Om de machine learning-pijplijn te kunnen bouwen, moesten de teams gemeenschappelijke standaarden en richtlijnen definiëren, zodat ze een gemeenschappelijke taal spraken, best practices konden delen en beter konden samenwerken. Ze hadden ook meer inzicht in hoe elk van de andere teamleden het project benaderde. Terwijl het team van gegevenswetenschappers experimenteel bezig was, waarbij ze al snel uitkwamen bij het steeds weer maken van modellen, richtte het technische team zich op het waarmaken van verwachtingen die Visual Studio-gebruikers hadden over IntelliCode op het gebied van functies op productieniveau.

Op dit moment wordt de volledige machine learning-pijplijn (training, evaluatie, verpakking en implementatie) automatisch uitgevoerd en worden er meer dan 9000 aanvragen voor het maken van modellen door gebruikers van Visual Studio en Visual Studio Code verwerkt. De teams zijn op zoek naar manieren om hun pijplijn te gebruiken om extra AI-mogelijkheden in te bouwen in andere Microsoft-producten, om zo nog rijkere ervaringen aan klanten te kunnen aanbieden.

" "

Zie hoe de teams MLOps stap voor stap hebben geïmplementeerd.