Våfflor (maskininlärning)

Våfflor
Utvecklare Michael S. Gashler
Operativ system Cross-platform
Tillgänglig i C++
Typ Maskininlärning
Licens GNU Lesser General Public License
Hemsida http://gashler.com/mike/waffles/

Waffles är en samling kommandoradsverktyg för att utföra maskininlärningsoperationer utvecklade vid Brigham Young University . Dessa verktyg är skrivna i C++ och är tillgängliga under GNU Lesser General Public License .

Beskrivning

Waffles maskininlärningsverktygssats innehåller kommandoradsverktyg för att utföra olika operationer relaterade till maskininlärning , datautvinning och prediktiv modellering . Våfflors primära fokus är att tillhandahålla verktyg som är enkla att använda i skriptexperiment eller processer. Till exempel är de övervakade inlärningsalgoritmerna som ingår i Waffles alla designade för att stödja flerdimensionella etiketter, klassificering och regression , automatiskt tillskriva saknade värden och automatiskt tillämpa nödvändiga filter för att transformera data till en typ som algoritmen kan stödja, så att godtyckliga inlärningsalgoritmer kan användas med godtyckliga datamängder. Många andra verktyg för maskininlärning tillhandahåller liknande funktionalitet, men kräver att användaren uttryckligen konfigurerar datafilter och transformationer för att göra det kompatibelt med en viss inlärningsalgoritm. Algoritmerna i Waffles har också möjligheten att automatiskt justera sina egna parametrar (med kostnaden för ytterligare beräkningsoverhead).

Eftersom Waffles är designat för skriptförmåga undviker det medvetet att presentera sina verktyg i en grafisk miljö. Den innehåller dock ett grafiskt "guide"-verktyg som guidar användaren att generera ett kommando som kommer att utföra en önskad uppgift. Den här guiden utför faktiskt inte operationen utan kräver att användaren klistrar in kommandot som den genererar i en kommandoterminal eller ett skript. Tanken bakom denna design är att förhindra att användaren blir "låst in" till ett grafiskt gränssnitt.

Alla Waffles-verktygen är implementerade som tunna omslag runt funktionalitet i ett C++-klassbibliotek. Detta gör det möjligt att konvertera skriptade processer till inbyggda applikationer med minimal ansträngning.

Waffles släpptes först som ett projekt med öppen källkod 2005. Sedan dess har det utvecklats vid Brigham Young University , med en ny version som har släppts ungefär var 6–9:e månad. Våfflor är inte en akronym – verktygslådan fick sitt namn efter maten av historiska skäl.

Fördelar

Några av fördelarna med Waffles i motsats till andra populära maskininlärningsverktyg med öppen källkod inkluderar:

  • Waffles tar automatiskt hand om många frågor relaterade till dataformat för att förenkla sina verktyg.
  • Eftersom det är implementerat i C++ är många av dess algoritmer särskilt snabba. Också avsaknaden av beroende av någon virtuell maskin gör det lättare att distribuera i samband med andra applikationer.
  • Funktionaliteten som ingår i Waffles är mycket bred, inklusive algoritmer för dimensionsreduktion , kollaborativ filtrering , visualisering, klustring, övervakad inlärning, optimering, linjär algebra, datatransformation, bild- och signalbehandling, policyinlärning och glesa matrisoperationer.

Nackdelar

  • Även om Waffles ger betydande bredd, saknar det djupet hos många verktygssatser som fokuserar på ett visst område av maskininlärning. Weka (maskininlärning) tillhandahåller till exempel många fler klassificeringsalgoritmer än vad Waffles tillhandahåller.
  • Waffles har bara ett begränsat grafiskt gränssnitt.

Se även