Prijzen voorspellen met Microsoft Azure Machine Learning Studio: predicitive analysis in de praktijk ?>

Prijzen voorspellen met Microsoft Azure Machine Learning Studio: predicitive analysis in de praktijk

Microsoft Azure Machine Learning Studio is een online tool van Micosoft waarmee je predictive analytics-oplossingen kunt ontwikkelen, testen en implementeren. De uitkomsten van Machine Learning Studio kun je middels webservices gebruiken in elke willekeurige BI tool en uiteraard ook in Excel.

In deze blog bouwen we een eerste experiment in Machine Learning Studio (ML Studio). Het doel is om een prediction model te maken waarbij we de benzineprijzen proberen te voorspellen op basis van de olieprijzen en de valutakoersen.

Inloggen Azure Machine Learning Studio

Ga naar https://studio.azureml.net/home en log in met een Microsoft account. Mocht je deze niet hebben, kun je een dergelijk account hier ook aanmaken.

Importen dataset

We starten met het importen van de dataset.

Als input gebruiken we in deze blog een dataset waarin vanaf januari 2006 tot en met september 2017 de volgende gegevens (per dag) zijn opgenomen:

  • Benzineprijs Euro 95
  • Olieprijs per vat
  • Gemiddelde valutakoers USD/ EUR

Het bestand is hier te downloaden: BenzinePrijzen 2006 – 2017.

De gegevens zijn (voornamelijk) verzameld vanaf de websites van het CBS en geprepareerd om te kunnen worden ingelezen.

Ga in ML Studio naar Datasets en maak een nieuwe dataset aan:

01 dataset

Kies voor de optie From Local File en selecteer het juiste bestand.

02 local

Zodra de dataset is ingeladen verschijnt deze in de totale lijst met datasets

03 ingeladen

Nieuw experiment

Maak in ML Studio nu een nieuw experiment aan.

04 expieriment

Kies voor Blank experiment

05 blank

Zoek onder Saved Datasets – > My Datasets de ingeladen dataset met de benzineprijzen en sleep deze op het canvas.

06 saved data

Clean missing data

In de dataset zijn niet alle gegevens gevuld.  ML Studio heeft hiervoor een handige module die de ontbrekende data kan aanvullen (of eventueel verwijderen). Hiermee wordt voorkomen dat deze rijen de uitkomst negatief beïnvloeden.

Sleep de module Clean missing data op het canvas en verbind deze met de dataset.

07 clean

Feature selection

In de volgende stap gebruiken we de module Filter Based Feature Selection. Deze module helpt de variabelen te vinden die daadwerkelijk een voorspellend karakter hebben ten aanzien van de ‘target’ variabele.

Sleep de Filter Based Feature Selection module op het canvas en verbind deze met de Clean Missing Data module

08 feature

Start onder de Properties de Launch Column Selector.

09 launch column

Selecteer de naam van de kolom die we willen voorspellen. In ons geval heet deze kolom Benzine Euro95.

10 singel benzine

Zorg dat de module Filter Based Feature Selection geselecteerd is, en kies onder in het scherm voor Run -> Run Selected.

11 run

ML Studio gaat deze module nu uitvoeren zodat je de uitkomsten hiervan kunt bekijken.
Nadat ML Studio deze taak heeft uitgevoerd, kun je met de rechtermuisknop op de module klikken en kiezen voor Features en vervolgens voor Visualize.

12 visualise

In dit scherm zie je dat ML Studio de features Valutakoers en Oil ziet als sterk voorspellende variabelen voor de Benzineprijs. Hoe dichter bij de 1, hoe groter de voorspellende waarde.

13 features

Splitsen van de data

We splitsen de data op in een gedeelte waarmee we het model gaan trainen en een gedeelte waarmee we het model gaan evalueren.

Voeg een Split data module toe aan het canvas en stel de fractiom of rows in op 0,8 (80%).

14 split

Trainen van het model

In de volgende stap gaat het model daadwerkelijk getraind worden.

Voeg een Train model module toe aan het canvas. Verbind het rondje aan de rechterkant met de Split data module.
De Train model module heeft naast de data ook nog een algoritme nodig op basis waarvan het model gemaakt moet worden. In deze blog kiezen wij voor het lineair regression model. Voeg ook deze module toe aan het canvas en verbind deze met het rondje aan de linkerkant van de Train model module.

 

15 train

Kies onder de Properties voor de Launch Column Selector.

 

16 colimn train

Selecteer ook hier weer de kolom Benzine Euro95 als kolom die voorspeld moet worden.

17 benzine column

Score en Evaluatie

De laatste twee modules die moeten worden toegevoegd zijn de Score module en de Evaluate module.

Verbind de tweede dataset vanuit de Split Data module met de rechterkant van de Score module. Dit is de 20% evaluatie dataset waarmee het model getest wordt.

18 score

Evalueren van het resultaat

Klik onderin het scherm op Run. ML Studio gaat nu het hele model uitvoeren.

Zodra het proces is afgerond, kun je met de rechtermuisknop klikken op de Evaluate module en kiezen voor Evaluation Results – > Visualize.

19 evaluation

Een vluchtige blik op de resultaten leert dat de Coefficient of Determination (Determinatiecoëfficiënt) maar liefst 0,94 is. Het lijkt erop dat we de benzineprijzen vrij nauwkeurig kunnen bepalen.

 

20 metrics

Afsluiting

Machine Learning staat steeds meer in de belangstelling. De applicaties waarmee je machine learning kunt toepassen schieten als paddenstoelen uit de grond. Azure Machine Learning Studio is een product uit de Microsoft stack. In deze blog heb je gezien hoe makkelijk het is om een prediction model te maken. Uiteraard komt er bij een daadwerkelijke implementatie nog veel complexiteit om de hoek kijken. Je hoeft echter geen programmeur (meer) te zijn om zelf met Machine Learning aan de slag te kunnen gaan.

Klik hier om naar onze site te gaan

Geef een reactie

Het e-mailadres wordt niet gepubliceerd. Vereiste velden zijn gemarkeerd met *