10 open source machine learning-værktøjer du bør kende
Machine learning, kunstig intelligens og neurale netværk er lige nu brandvarme plusord i it-branchen. Der skal helst machine learning i alt, hvis man ikke vil fremstå som gammeldags. Der er heldigvis mere kød på området end blot varm luft, og store datamængder og masser af regnekraft har gjort teknologien anvendelig i praksis.
Men hvor skal man starte, og hvilken teknologi skal man vælge?
En af grundene til, at det lige nu går stærkt på området, er, at værktøjerne er open source. Store teknologivirksomheder som Google og Microsoft har desuden frigivet store dele af deres værktøjskasser som open source.
Derfor findes der i dag et væld af værktøjer til machine learning. Version2 har i samarbejde med Datalogisk Institut ved Københavns Universitet udvalgt 10, som man bør kende til inden for den del af machine learning, der udvikler sig lige nu.
Caffe
Caffe er et framework til deep learning, der er udviklet af forskere fra UC Berkeley. Det er oprindeligt udviklet med fokus på computer vision til analyse af billeder eller genkendelse af håndskrift. Programmeringssprogene er fortrinsvis Python og C++.
Caffe er blevet ekstra interessant, fordi Yahoo har frigivet CaffeOnSpark, som gør det muligt at bruge Caffe til big data-analyser på Spark og Hadoop.
CNTK
Computational Network Toolkit eller blot CNTK fra Microsoft eret framework, der understøtter en række forskellige typer maskinlæring især inden for neurale netværk. Microsoft udviklede oprindeligt CNTK til talegenkendelse. Det er således CNTK, der ligger til grund for talegenkendelsen i Skype og Cortana.
En af de styrker, Microsoft selv fremhæver, er muligheden for at skalere træning af neurale netværk ud over et stort antal grafikprocessorer.
Deeplearning4j
Mens mange machine learning-værktøjer har været baseret på C++ eller Python, så er Deeplearning4j baseret på programmering i Java og Scala. Det er desuden beregnet til big data-analyser med understøttelse af Hadoop og Spark.
Fokus for projektet, som er skabt af BI-firmaet Skymind, er forretningsorienteret brug af neurale network til eksempelvis fraud detection og e-handel.
OpenNN
OpenNN er beregnet til at lave forecasts ved hjælp af neurale netværk. Det bygger på C++ og er udviklet af Artelnics, men frigivet som open source. Udviklerne advarer selv om, at det er beregnet til erfarne brugere, der kender deres C++.
Scikit-learn
Scikit-learn er endnu et Python-baseret framework. Scikit-learn fokuserer blandt andet på data-mining, men kan også anvendes til en række andre machine learning-områder.
Shark
Shark er udviklet på DIKU og er baseret på C++. Shark understøtter en række forskellige machine learning-teknikker og netop samlingen af flere typer biblioteker er Sharks styrke.
Tensorflow
Googles TensorFlow skiller sig ud fra flokken ved at være et værktøj til at opbygge neurale netværk, der fokuserer på den måde, data flyder gennem algoritmerne. Det betyder blandt andet, at det er forholdsvis let at knytte forskellige dele til forskellig hardware.
Theano
Theano var ét af første nyere værktøjer til machine learning, og det blev blandt andet udviklet til at gøre det let at skrive kode, der kunne distribuere et neuralt netværk ud over en klynge af processorer. Man arbejder mere abstrakt med selve algoritmerne, og kan derfor være godt, hvis man er mere til matematik end kode.
Torch
Torch er oprindeligt udviklet til forskning, men bruges også af eksempelvis Facebook, der har frigivet en række deep learning-biblioteker til Torch som open source. Torch understøtter blandt andet Nvidias CUDA, men man programmerer i Lua, som så oversættes til C.
Weka
Weka var et af de første værktøjer, der tog machine learning-teknikker og integrerede dem i et værktøj, der kunne bruges af folk, der var mere vant til dataanalyse end programmering. Det er især velegnet til typiske data mining-opgaver.
Har vi overset dit favoritværktøj? Er der nogle af dem på listen, der er lettere at komme i gang med end andre? Hvilke erfaringer har du med at bruge machine learning?

...men det er dyrt at lave god journalistik. Derfor beder vi dig overveje at tegne abonnement på Version2.
Digitaliseringen buldrer derudaf, og it-folkene tegner fremtidens Danmark. Derfor er det vigtigere end nogensinde med et kvalificeret bud på, hvordan it bedst kan være med til at udvikle det danske samfund og erhvervsliv.
Og der har aldrig været mere akut brug for en kritisk vagthund, der råber op, når der tages forkerte it-beslutninger.
Den rolle har Version2 indtaget siden 2006 - og det bliver vi ved med.