31 mei 2021
Bij Cmotions kennen we verschillende expertisegroepen die zich bezighouden met een specifiek thema in de wereld van data. Data Science & Data Engineering is daar één van. Met deze groep collega’s hebben we een Python-package ontwikkeld: Tortoise. Tortoise stelt beginnende data scientists in staat om in kortere tijd beter presterende modellen te bouwen. Zo voegen analytics teams efficiënt(er) waarde toe door gebruik te maken van een gestandaardiseerde oplossing voor modelbouw.
Tortoise helpt beginnende data scientists bij het bouwen van een binair classificatiemodel op basis van gestructureerde (tabular) data. Dit zijn modellen die twee uitkomsten voorspellen, bijvoorbeeld ja of nee:
Om antwoord te geven op deze vaak complexe vraagstukken kan je gebruik maken van voorspelmodellen. Het bouwen van zo’n model kent een aantal vaste stappen die je altijd moet nemen. Ongeacht welke vraag je precies wilt beantwoorden. Denk bijvoorbeeld aan het prepareren van de dataset en het trainen van het model. Hoewel die stappen zelf vaststaan, zijn er talloze manieren om deze uit te voeren.
Wij zien in de praktijk dat collega’s van verschillende analyticsafdelingen – en soms zelfs binnen een team – afzonderlijk van elkaar een groot deel van deze stappen telkens weer opnieuw uitwerken. Dit gebeurt vaak met verschillende tools waar specifiek die ene collega zich het meest comfortabel bij voelt. Gebrek aan consistentie leidt echter op de lange(re) termijn tot minder overzicht en een wildgroei aan code en tools. Met als gevolg dat het onmogelijk wordt om op efficiënte wijze de maximale waarde uit de data te halen. Dit zorgt voor:
Binaire classificatievraagstukken komen veel voor in de praktijk. Daarom is er ook veel onderzoek naar gedaan hoe deze op te lossen zijn. Er worden ook op grote schaal competities georganiseerd waarbij het doel is om dit soort complexe vragen op te lossen. De kracht hiervan is dat iedereen vrij is om mee te doen en daarmee zijn of haar kennis in kan zetten om tot het best presterende model te komen.
Een inzicht dat hieruit volgt, is dat er veel bekend is over wat wel en niet werkt. Er ontstaan ook best practices voor bepaalde fases van het bouwen van een model. Hierdoor kan je grotendeels een gestandaardiseerde aanpak gebruiken. Dat levert onder andere deze voordelen op:
Zoals eerder genoemd zijn er eindeloos veel manieren waarop een data scientist een model kan bouwen. De toenemende mate van gebruik van open source tooling (zoals Python) binnen organisaties draagt daar nog verder aan bij. Wanneer binnen een team, afdeling of organisatie op een consistente manier wordt gewerkt volgens een standaardmethode om rechttoe rechtaan binaire classificatiemodellen te bouwen, voorkom je dat data scientists los van elkaar telkens opnieuw het wiel (moeten) uitvinden.
Het verkennen en opschonen van de data die dient als input voor het te bouwen model zal nog steeds relatief veel tijd blijven kosten. Zodra de dataset klaar is, kan veel tijd bespaard worden op het trainen van het model. Deze stap van modelbouw wordt grotendeels gestandaardiseerd. Dit vermindert de tijd die hiervoor nodig is en daarmee wordt de time to market verkort.
Het zou niet zo moeten zijn dat wanneer een collega op vakantie gaat of het team verlaat bepaalde processen of ontwikkelingen stil komen te staan. Wanneer op belangrijke onderdelen samen wordt gewerkt in dezelfde tools en volgens dezelfde aanpak wordt het gemakkelijker om continuïteit te garanderen. Ook is er minder reden tot paniek wanneer bestaande processen plots niet meer werken en net die ene collega die er alles vanaf weet afwezig is.
Daarnaast zit overdraagbaarheid in de samenwerking met bijvoorbeeld IT en/of de data engineers. Wanneer je serieus met modellen aan de slag gaat, wil je deze zo snel mogelijk in productie nemen zodat ze continu waarde opleveren. De infrastructuur die daarvoor nodig is, wordt vaak beheerd door IT of de data engineers. Het is dan ook van belang dat deze samenwerking soepel verloopt. Het gebruik maken van een standaard werkwijze helpt daarbij.
Let wel, we zeggen niet dat je voor alle werkzaamheden dezelfde tools en processen moet gebruiken. Het ontdekken van nieuwe tools en handigheden is juist een belangrijk onderdeel van data science en persoonlijke ontwikkeling. Maar voor sommige processen kan meer uniformiteit en de bijbehorende voordelen zwaarder wegen, omdat het uiteindelijk sneller toegevoegde waarde levert voor de organisatie.
Tortoise is in de eerste plaats ontwikkeld, omdat we het uitdagend vonden om gezamenlijk een stukje software te maken in Python. We vinden het natuurlijk fantastisch als anderen het ook gaan gebruiken. Dat laten we helemaal aan jou. We hebben wel alvast de voordelen van standaardisatie voor terugkerende werkzaamheden op een rijtje gezet. Namelijk beter presterende modellen in minder tijd.
Voor een kijkje in de technische achtergrond van Tortoise hebben wij een uitgebreid artikel geschreven op The Analytics Lab. Enthousiast geworden over Tortoise? Op Gitlab staat een tutorial voor je klaar om er ook mee aan de slag te gaan.
Lees ook: training Cmotions Academy: Experience Python
Wil je meer weten over dit onderwerp? Neem dan contact op met Siri de Ruiter via onderstaande contactgegevens.
5 juli 2023
Wil jij jouw collega’s op ludieke wijze laten kennismaken met datagedreven werken? Geef ze op voor... lees meer
17 april 2023
In elk bedrijf is het een uitdaging om ervoor te zorgen dat we alleen de documenten... lees meer
10 maart 2023
Scan voor datagedrevenheid – hoe volwassen zijn we en waar moeten we mee aan de slag?... lees meer