Q:
Hoe kan containerisatie een goede keuze zijn voor een projectomgeving voor machine learning?
EEN:Sommige bedrijven evolueren naar containerisatie voor machine learning-projecten, gebaseerd op enkele voordelen die containerconfiguraties bieden op het gebied van platforms en softwareomgevingen.
Machine learning is complex - de algoritmen zelf voeren veel zeer gedetailleerde en gecompliceerde acties op gegevens uit. De waardepropositie is echter in sommige opzichten vrij eenvoudig - de machine learning-algoritmen werken op gegevens die binnenkomen uit opslagomgevingen.
Gratis download: machine learning en waarom het ertoe doet |
Het gebruik van containers houdt in hoe ingenieurs de gegevens in de machine-leeromgeving plaatsen en hoe de algoritmen werken.
Ingenieurs kunnen containervirtualisatie gebruiken om de gegevens te huisvesten of om de code te implementeren die de algoritmen uitvoert. Hoewel containers nuttig kunnen zijn voor gegevens, komt hun belangrijkste voordeel waarschijnlijk in het gebruik van algoritmecode.
Containerarchitecturen bevatten zelfstandige apps en codebases. Elke container krijgt een eigen kloon van het besturingssysteem en krijgt een volledige besturingsomgeving voor de app- of codefunctieset die erin leeft.
Hierdoor kunnen de afzonderlijke apps, microservices of codebases die zich in elke container bevinden, op zeer veelzijdige manieren worden ingezet. Ze kunnen worden ingezet op verschillende platforms en verschillende omgevingen.
Stel nu dat u probeert een machine learning-project op te voeren waarin verschillende algoritmen op verschillende manieren op verschillende gegevens moeten werken. Als je het zat bent om te werken met platformoverschrijdende uitdagingen of afhankelijkheidsproblemen of situaties waarin bare-metal-implementatie moeilijk is, kunnen containers de oplossing zijn.
In wezen bieden de containers een manier om code te hosten. Experts praten over het inzetten van de containers tegen de opgeslagen gegevens om goede resultaten te krijgen.
"(De apps) kunnen worden gemixt en op elkaar worden afgestemd in een willekeurig aantal platforms, met vrijwel geen porten of testen vereist, " schrijft David Linthicum in een TechBeacon-artikel dat de waarde van containers voor machine learning-projecten toelicht, "omdat ze in containers bestaan, ze kunnen in een sterk gedistribueerde omgeving werken en u kunt deze containers dicht bij de gegevens plaatsen die de applicaties analyseren. "
Linthicum gaat verder over het blootstellen van diensten voor machinaal leren als microservices. Hierdoor kunnen externe applicaties - al dan niet op containers gebaseerd - op elk moment gebruikmaken van deze services zonder de code binnen de applicatie te hoeven verplaatsen.
In een zeer eenvoudige zin draait het bij de implementatie van containers allemaal om het verbeteren van de functionaliteit van het machine learning-programma - het wegwerken van silo's en onnodige verbindingen - en nogmaals, afhankelijkheden - die een project kunnen verlammen. Voor een lean, mean machine learning-project, als de afzonderlijke delen van de algoritmen of toepassingen of functionaliteit in containers zijn ondergebracht, is het gemakkelijk om deze op zichzelf staande stukken te micromanagen en dienovereenkomstig complexe machine learning-productprojecten te maken.