De beruchte data science-workflow met onderling verbonden cirkels van data-acquisitie, ruzie, analyse en rapportage onderschat de multi-connectiviteit en niet-lineariteit van deze componenten. Hetzelfde geldt voor machine learning en deep learning-workflows. Ik begrijp dat oversimplificatie nodig is in presentaties en samenvattingen. Het kan echter onrealistische afbeeldingen schetsen, de fijne kneepjes van ML-ontwikkeling verbergen en de realiteit van de puinhoop verbergen. Dit brengt me bij de instrumenten van het vak of beter bekend als de infrastructuur van kunstmatige intelligentie, het voertuig waaronder alle bibliotheken, experimenten, ontwerpen en creatieve geesten elkaar ontmoeten. Deze bescheiden infrastructuren worden vaak over het hoofd gezien en ondergewaardeerd, maar hun flagrante belang kan niet worden overschat. Ik zal een paar van deze tools uitleggen die samen kunnen worden gebruikt om uw workflow te verbeteren, de verantwoordelijkheid voor gegevensverkenning te verbeteren en de tijd en middelen te verminderen om van proof-of-concept (POC) naar implementatie te gaan.
Vereenvoudigde ML/DL-pijplijn
Open-source software
Voordat je op het podium staat met een coltrui en een casual spijkerbroek om je data-intensieve baanbrekende product te onthullen, is de eerste stap het kiezen van software om de complexe terreinen van machine learning aan te pakken. Gelukkig voor jou zijn er uitstekende open-softwareplatforms zoals Apache Spark, Jupyter, TensorFlow, PostgreSQL en nog veel meer om je op weg te helpen. De recente toevoeging aan mijn lijst is Allegro Trains waar ik een groot voorstander van ben. Als werkende datawetenschapper heb ik vijf criteria voordat ik ervoor kies om open source software te gebruiken. Dit zijn:
- Beschikbaarheid en gebruiksgemak voor POC.
- Reproduceerbaarheid en samenwerking.
- Compatibiliteit tussen platforms.
- Resourceoptimalisatie.
- Productiviteitsboost in verhouding tot het leertempo.
Laten we, in de geest van deze criteria, Jupyter en treinen verkennen.
Jupyter en Allegro-treinen
Jupyter-notebook is de de facto toegangspoort tot interactief computergebruik voor aspirant-gegevenswetenschappers en -ingenieurs. Het biedt snelle feedback in de vorm van fouten of visuele weergaven en stelt gebruikers in staat hun rudimentaire ideeën uit te testen. Het is ongetwijfeld het perfecte hulpmiddel voor POC, naast taalagnostisch en het aanbieden van tekst via Markdown-cellen. Jupyter Lab voegt modulariteit toe aan de notebooks, zodat u niet bij elke notebook meerdere tabbladen opent. Er is ook JupyterHub waarmee meerdere gebruikers notebooks kunnen delen. Dit zijn allemaal geweldige platforms om wat praktische ervaring op te doen.
Het probleem ontstaat wanneer u complexe projecten aanpakt waar een groot aantal iteraties en experimenten, cruciale code- en resource-optimalisaties, versiebeheer en samenwerking, en gegevensintegratie en -implementatie nodig zijn. Dit zijn de knelpunten bij het op de markt brengen van datagedreven producten. Als gevolg hiervan worden AI-architecturen die deze functies naast de vijf bovenstaande criteria bevatten, een noodzaak om R&D te versnellen naar marktfasen met een snellere ROI.
Machine learning-projectmanagement door Trains
Waarom Allegro Trains?
Kijk eens naar de dummy vier projecten in figuur 1 en stel je voor dat als je deze projecten op Jupyter zou draaien, de moeilijkheidsgraad om het doel van elke notebook te behouden al snel een taak op zich wordt. U kunt dit probleem oplossen door een git-repository in te stellen om aan uw versiebeheerbehoeften te voldoen en uw voortgang te beheren. U kunt ook een geheugenprofiler installeren om uw resourcetoewijzing aan elke taak te beheren. Hoe zit het met het automatiseren van uw ML-modellen? U kunt de groeiende lijst van AutoML verkennen. Als u zich begint te realiseren dat de complexiteit van uw ML-project met elke stap naar voltooiing toeneemt, dan bent u niet de enige. Dit is een veelvoorkomend probleem en de oplossing moet worden aangepakt met een enkelvoudige projecthub. Dit is precies waarom Allegro Trains is ontwikkeld.
Allegro Trains maakt een einde aan deze veelvoorkomende infrastructuurproblemen. In plaats van je problemen op te lossen met talloze modules, is het tijd om ML volwassener te maken met een allesomvattende oplossing. Trains biedt een eenvoudige MLOps- en AI-infrastructuuroplossing om machine-/deep learning-projecten van R&D tot implementatie te versnellen. Het stelt dataprofessionals in staat om creatieve inzichten te implementeren zonder zich zorgen te hoeven maken over rommelige notebooks, onderbrekingen om versiebeheerproblemen op te lossen, modelvergelijkingen, automatisch loggen, prestatietracking en zelfs CPU/GPU/IO-brontoewijzingen. Kortom, het voldoet aan mijn vijf criteria voor het gebruik van open-source software. Het heeft ook AutoML om experimenten te versnellen en de mogelijkheid om resource-intensieve of slecht presterende taken van de webinterface te beëindigen.
Ik wil u bij deze laatste opmerking achterlaten. De mogelijkheid om open platforms samen te gebruiken om uw opwindende ideeën en R&D op de markt te brengen, is een kwestie van eenvoudige installaties geworden. Jupyter is er voor uw verkenningsbehoeften en ClearML volgt uw voortgang, van POC tot optimalisatie en samenwerking tussen teams en implementatie met Trains Server.
Henok Yemam
Data Scientist, FINRA