Team Quest: Een geavanceerde oplossing ontwikkelen in slechts 9 uur
Beginnen is het belangrijkste deel van elke zoektocht en verreweg het meest moedig. - Plato
Op 28 juli 2022 hadden we een eendaagse teamuitdaging om een proof of concept (POC) te verkennen en te ontwikkelen. Elk team van datawetenschappers en stagiairs kon één specifieke geavanceerde technologie kiezen om gedurende negen uur mee te werken (bijv. GPT3, web scraping op schaal, computervisie, IoT, machine learning, verklaarbare AI, enz.)
Wat was de missie? Het ontwikkelen van een POC in geavanceerde technologie waar Agilytic en onze klanten van zouden kunnen profiteren.
"Het plannen van de eerste Agilytic Quest kwam voort uit een enthousiaste wens van collega's om een nieuwe uitdaging aan te gaan. Dat was het uitgangspunt. Daarnaast is onze projectversneller, het Agilytic Lab, een groeiend initiatief. Het was dus een uitstekende gelegenheid om de kick-start van het Lab te combineren met het aangaan van nieuwe uitdagingen en het verkennen van geavanceerde technologieën," aldus Alex Schouleur, organisator van de Quest.
Dus waarom in slechts 9 uur?
"We wilden de afweging maken. Het idee is om mensen genoeg tijd te geven om een POC te ontwikkelen, maar tegelijkertijd wilden we een intensieve sprint creëren. Dat is een essentieel onderdeel om het uitdagend te maken," zei Alex.
De ochtend begon met een kick-off en brainstorm om een onderwerp te kiezen aan de hand van een van de geavanceerde oplossingen. Aan het einde van de uitdaging moest elk team zijn oplossing presenteren. Agilyticers werden aangemoedigd om zelf een aantal concepten te verkennen om hun impact te maximaliseren. Dit is wat elk team samen heeft ontwikkeld en ervaren!
Team 1 - Geautomatiseerde codecorrectie en suggesties met Alex Schouleur en Guillaume Carton
Wat hebben jullie als team ontwikkeld en waarom besloten jullie hieraan te werken?
Alex: We besloten om twee use cases te ontwikkelen van GPT3, een natuurlijk taalverwerkingsalgoritme ontwikkeld door het bedrijf OpenAI, een onderzoekslaboratorium voor kunstmatige intelligentie. Ze bouwden GPT3 op uit webdata, alles op Wikipedia, websites, Reddit, sociale media, etc., aggregeerden alles in één enorme dataset en trainden hier algoritmes op. Eerst hebben we een tool gebouwd die programmeurs kan helpen om hun code te documenteren. Deze taak kan een aanzienlijke pijn, vervelend, saai, en documentatie is vaak niet volledig of kwalitatief genoeg. Met GPT3 hebben we een aantal tests gedaan en de resultaten waren indrukwekkend. Met een druk op de knop konden we uitstekende codedocumentatie genereren. Het tweede geval was voor automatische bugfixing. We konden Python-code in onze tool kopiëren en met één klik op de knop gaf de tool de code terug zonder bugs. Daarna hebben we GPT3 in een breder verband verkend - en we ontdekten veel potentieel.
Welk element van de Quest vond je het leukst?
Alex: Het was cool om iedereen in teams te zien werken, samen iets te bouwen en kennis en expertise te delen. Het was leuk om de ideeën van de andere teams te horen. Al onze projecten waren divers en erg interessant. We wilden het niet te competitief laten voelen, want het doel was om iets geweldigs te bouwen voor Agilytic. Hierdoor werd het meer een teambuildingoefening dan een pure competitie.
Guillaume: Het stelde me in staat om aan een nieuwe technologie te werken waar ik nog nooit eerder aan had gewerkt. Technologieën evolueren tegenwoordig zo snel dat het interessant en belangrijk is om je af en toe te kunnen focussen op geavanceerde technologieën. En dit moment kunnen delen met andere collega's maakte het nog leuker.
Wat was de grootste uitdaging of blokkade die je tegenkwam?
Alex: De grootste uitdaging was om het bedrijfsdoel voor ogen te houden. GPT3 is indrukwekkend, leuk om te gebruiken en heeft een wow-effect, maar dit is allemaal niets als we het niet gebruiken voor de juiste doeleinden en bedrijfsdoelstellingen. Dus, de vertaling van goede technologie naar echte projecten. Dat was het meest uitdagende deel.
Wat heb je geleerd dat je nog niet wist?
Alex: Ik wist niet hoe krachtig GPT3 was. Ik had een beetje verwacht dat het oké of gemiddeld zou zijn, misschien niet de beste kwaliteit, maar het is best makkelijk om de reacties te verwarren met die van een mens.
Guillaume: Hoewel ik slechts vaag van GPT3 had gehoord, kon ik dankzij de Quest veel meer te weten komen over het onderwerp en zien wat de mogelijke toepassingen van deze technologie zouden kunnen zijn.
Was er een grappig of verrassend moment dat jullie als team deelden?
Alex: Ja! Je kunt elke vraag stellen aan GPT3. We hebben ons geamuseerd met antwoorden op technische vragen die we gewoonlijk stellen aan mensen die zich aanmelden bij Agilytic, en GPT3 was de beste!
Wat zijn enkele use-cases voor deze oplossing als deze in productie wordt genomen?
Alex: Er zijn veel verschillende toepassingen. Veel bedrijven gebruiken het al als hun primaire algoritme. Duolingo gebruikt het bijvoorbeeld en andere bedrijven gebruiken het voor spelling- en grammaticacorrectietools, chatbots en alles wat te maken heeft met documentclassificatie, samenvatten en zelfs het genereren van codes.
Guillaume: Het leuke is dat we de eerste use case al intern kunnen gebruiken om de tijd die aan documentatie wordt besteed te verminderen en tegelijkertijd de kwaliteit van de gegenereerde documentatie te waarborgen.
Team 2 - Gegevens over atletische prestaties analyseren met Adrien Debray, Javier Tarrio en Nico Grassetto
Wat hebben jullie als team ontwikkeld en waarom besloten jullie hieraan te werken?
Javier: We wilden het potentieel onderzoeken van het gebruik van openbaar beschikbare informatie van Strava op de prestaties van professionele atleten. We kozen ervoor om ons te richten op de onlangs gehouden Tour de France. Dit onderwerp kwam als geroepen omdat de wedstrijd vier dagen eerder was geëindigd en een van ons een passie had voor wielrennen.
Nico: We wilden zien hoe ver we konden gaan met openbaar beschikbare gegevens en ons best doen om een analyse of voorspelling te ontwikkelen.
Adrien: Als wielerfan en Strava-gebruiker wist ik dat er een aantal openbaar beschikbare gegevens over wielrenners en andere sporters op het platform stonden. Ik was benieuwd of deze gegevens ons een dieper inzicht konden geven in het profiel van de renners, welke tactieken succesvol zouden kunnen zijn en vele andere aspecten.
Welk element van de Quest vond je het leukst?
Javier: Ik hield van de openheid van de onderwerpkeuzes, waardoor we aan het eind van de dag drie totaal verschillende ideeën te zien kregen.
Nico: Ik vond het idee dat we dit konden gebruiken voor klanten en de openheid van Quest over mogelijke onderwerpen leuk.
Wat was de grootste uitdaging of blokkade die je tegenkwam?
Javier: We hebben het gemak van het schrapen van gegevens uit de bron overschat. We hebben verschillende mogelijkheden geprobeerd om de klus te klaren, maar uiteindelijk kostte het veel van onze meest beperkte bron: tijd. Organisatorisch hadden we het proces voor het delen van code beter kunnen aanpakken.
Nico: We hebben de uitdaging van het verkrijgen van gegevens over de Tour de France (of gewoon gegevens) overschat.
Wat heb je geleerd dat je nog niet wist?
Javier: De hoeveelheid professionele wielrenners die hun prestatiegegevens publiekelijk delen. Dit is maar één aspect van de enorme hoeveelheid gegevens die het internet der dingen (in dit geval een wearable) produceert, en gegevens zijn informatie, en informatie is macht.
Nico: Het belang van een goede planning voordat je aan een project begint en het belang van Github op zulke momenten. In het begin besloten we om onze respectievelijke codes in notitieblokken te schrijven, maar uiteindelijk bleek dit een grote tijdsblokkade te zijn.
Was er een grappig of verrassend moment dat jullie als team deelden?
Adrien: Ik herinner me dat Javier een to-do lijst schreef van alles wat we nog moesten doen in een zeer beperkte tijd. We realiseerden ons dat het moeilijk zou worden om binnen een dag tot een definitieve oplossing te komen. Maar we waren het in ieder geval allemaal eens over het laatste element van de to-do's: "18:30: Een biertje drinken".
Wat zijn enkele use-cases voor deze oplossing als deze in productie wordt genomen?
Javier: Voor individuele sporters: segmenten van hun activiteit identificeren waarin ze zich moeten verbeteren door te vergelijken met andere sporters die hen in die segmenten overtreffen; voor sportteams: scouten naar veelbelovende jonge sporters; voor gokhuizen/apps: helpen bij het berekenen van de uitbetaling van een weddenschap; voor gokkers: helpen bij het identificeren van goede weddenschappen.
Team 3 - Analyse documentlay-out met Guillaume Lamine en Arnaud Briol
Wat hebben jullie als team ontwikkeld en waarom besloten jullie hieraan te werken?
Arnaud: We besloten om te werken aan documentlay-outanalyse. Het is een mix van Natural Language Processing en Computer Vision. Het is een onderwerp waar we allebei aan hebben gewerkt in onze vorige projecten. Omdat het voortdurend in ontwikkeling is, wilden we enkele van de nieuwste ontwikkelingen evalueren. Het doel was om te bepalen of het de moeite waard was om meer te investeren in deze nieuwe modellen en of ze nuttig zouden kunnen zijn in sommige projecten.
Welk element van de Quest vond je het leukst?
Arnaud: Nieuwe technologieën uitproberen die net zijn uitgebracht. Dat is spannend!
Wat was de grootste uitdaging of blokkade die je tegenkwam?
Arnaud: Het trainen van dit soort modellen is een uitdaging omdat ze veel data en GPU's vereisen. Bovendien verloren we tijd met het configureren van een omgeving om deze modellen uit te voeren.
Wat heb je geleerd dat je nog niet wist?
Arnaud: Ik ontdekte voor het eerst een aantal van deze document lay-out analysemodellen die open-source en soms vooraf getraind zijn. Ik leerde ook over een interessante open-source tool genaamd LabelImg, aanbevolen door een collega. Hiermee kun je afbeeldingen labelen om een dataset te maken.
Was er een grappig of verrassend moment dat jullie als team deelden?
Arnaud: Tijdens de eerste drie uur van de Quest hadden we een paar grappige teamvergaderingen om te beslissen of we van onderwerp zouden veranderen of dat we deze mastodont echt in één dag zouden aanpakken.
Wat zijn enkele use-cases voor deze oplossing als deze in productie wordt genomen?
Arnaud: Het zou kunnen helpen bij alle projecten met gescande documenten om automatisch informatie te extraheren, zoals prijzen, namen, handtekeningen, logo's, tabellen met gegevens en zelfs vergelijkingen!
Wat is de volgende stap? Naar het lab!
Deze POC-oplossingen die zijn ontwikkeld tijdens de Quest-dag zullen de start vormen van ons Agilytic Lab, een broedplaats om kennis te delen en te internaliseren in het team, zodat we kunnen groeien door collectieve ervaring en individuele oefening.
Het Lab fungeert als een projectversneller om projecten te faciliteren en uit te voeren, en biedt een stabiele gecentraliseerde hub voor kennis, waardoor het mogelijk wordt om nieuwe ideeën te verkennen en het aanbod van waardevolle diensten te vergroten.