Élménybeszámoló a legmodernebb adatelemzési megoldásokról
2019. 09. 17.
2019.08.20-23 között került sor az idei StanCon workshopra és konferenciára, ezúttal Cambridge-ben. Az eNET is képviseltette magát az eseményen (2 nap workshop oktatással + 2 nap konferencia előadásokkal), mivel ez egy kiváló lehetőség volt arra, hogy kézzel fogható tapasztalatot szerezzünk a legmodernebb adatelemzési megoldásokról, illetve bővítsük és tovább fejlesszük statisztikai-módszertani kompetenciáinkat. A konferencián történő részvételen felül a konferenciát kísérő poszter szekcióban kiállítottunk egy elemzést is a naperőművek villamosenergia termelésének előrejelzéséről.
Ahogy minden szolgáltatásunk esetén, úgy adatbányászati-adatelemzési megoldásaink kapcsán is arra törekszünk, hogy ügyfeleink problémáira a legmegfelelőbb válaszokat találjuk meg: ehhez pedig – legalábbis az adatbányászat terén – kiterjedt és folyamatosan naprakész technológiai és módszertani eszköztárra van szükség.
A következőkben ejtünk néhány szót a konferencia központi témájául szolgáló Stan nevű szoftverről, illetve a kapcsolódó bayes-i statisztikai modellezési paradigmáról, illetve röviden összefoglaljuk, hogy mely témakörök kaptak nagyobb hangsúlyt az idei konferencián.
Mit kell tudni a Stanról?
A Stan egy bayes-i statisztikai modellezést lehetővé tevő szoftver, amit még 2011-ben a New York-i Columbia Egyetemen kezdett fejleszteni néhány statisztikus és szoftverfejlesztő. A szoftver nyílt forráskódú, ingyenesen hozzáférhető. A Stan alapvetően C++-ban íródott, de számos ismert programnyelvben elérhető hozzá interface (pl. R, Python, Matlab, Julia).
A bayes-i statisztikai modellezés elterjedésével párhuzamosan a Stan-t is egyre több tudományterületen, üzleti és mérnöki problémák modellezéséhez használják. Életciklusát tekintve egy érett szoftvernek számít, amit az is bizonyít, hogy az egyik legjelentősebb, open-source projekteket támogató non-profit szervezet, a NumFOCUS szponzorálja.
Bayes – módszer
Érdemes röviden felvázolni a bayes-i modellezési paradigma jellemzőit. Az egyik legfontosabb eltérés a hagyományos megközelítéstől az, hogy a modell paraméterei is valószínűségi változók, a becsülni kívánt mennyiségek pedig így eloszlások vagy eloszlásokból levezethető mennyiségek (pl. momentumok). Ez egyébként azt is jelenti, hogy a frekventista megközelítéssel szemben itt a paraméter értékekben rejlő bizonytalanság explicit módon van modellezve.
A Bayes-tétel segítségével felírható a kérdéses paraméterek feltételes eloszlása, ami a gyakorlatban közelíthető két tényező, a likelihood és a paraméterek prior eloszlásának szorzataként. A prior eloszlások megjelenése a modellezésben azt eredményezi, hogy az ismeretlenekre már az adatok megismerése előtt feltevés adható (eloszlás formájában), ami megfelelően megválasztott priorok esetén egyúttal egyfajta természetes korlátozást, regularizálást is eredményez.
Egyszerű esetekben a két tényező szorzata jól viselkedő poszterior eloszlást eredményez, amiből akár direkt mintavételezés is megvalósítható. Gyakoribb azonban az az eset, amikor a poszterior eloszlás nem írható fel zárt alakban, és nem vagyunk képesek közvetlenül mintavételezni a kérdéses eloszlásból. Ezekben az esetekben egyéb, nem direkt mintavételezési algoritmusok használatára vagyunk utalva, mint például az MCMC algoritmusok. A Stan előnye, hogy olyan modern MCMC algoritmust használ (HMC – Hamiltonian Monte Carlo), amely pontos és hatékony mintavételezést tesz lehetővé.
MCMC (Markov-chain Monte-Carlo): numerikus algoritmusok, amik Monte-Carlo integrálást végeznek olyan Markov lánc segítségével, amelynek stacionárius eloszlása éppen a paraméterek poszterior eloszlásával egyezik meg.
StanCon
A konferencia rengeteg érdekes esettanulmányt, gyakorlati alkalmazást vonultatott fel, a workshop pedig releváns elméleti és gyakorlati tudást adott a modern statisztikai következtetéselmélettel és bayes-i modellezéssel kapcsolatban.
Konferencia
A konferencián az előadásokat háromféle kategóriára lehetett osztani. Voltak egyrészt az esettanulmányok, amelyek általában egy konkrét alkalmazást mutattak be: sok volt ezek közül a gyógyszeripari, gyógyszerészeti tudományi alkalmazás, és számos esettanulmányban differenciálegyenletekkel felírható, komplex rendszerek paraméterbecslését végezték el bayes-i alapon, Stan-ben.
Külön kategóriát képeztek a statisztikai következtetéselméleti előadások, amelyek általában elméleti megalapozás és szimulációs vizsgálat segítségével mutattak be egy-egy statisztikai, modellezési problémát: például i) hatékony bayes-i keresztvalidációs eljárás keresztmetszeti és idősoros adatok esetén vagy ii) mintavételezési technikák többmóduszú poszterior eloszlások esetén.
Végül néhány előadás a Stan, mint szoftver aktuális fejlesztési irányairól, kihívásairól szólt, amelyek inkább fejlesztői megközelítésből mutatták be az adott problémát, és kicsit az open source szoftverfejlesztési projektek izgalmas világába is bepillantást engedtek.
Workshop
A konferenciát megelőző workshop esetén a jelentkezők három tematikából választhattak, és az oktatások a három tematika mentén két napig párhuzamosan folytak. Két tematika a bayes-i statisztika és statisztikai következtetéselmélet iránt érdeklődőknek szólt (kezdő, illetve haladó szinten), a harmadik pedig inkább a fejlesztői háttérrel rendelkező résztvevők igényeihez lett igazítva, mivel rövid statisztikai alapozás mellett a Stan szoftver felépítéséről és lehetséges továbbfejlesztéséről tudhattak meg többet az érdeklődők.
A haladó statisztikai kurzusokon számos fontos elméleti koncepcióról és modellezési „best practice”-ről tanulhattak a résztvevők. Kiemelt figyelmet kaptak a hierarchikus modellek, amelyek sokak szerint minden statisztikai elemzés alapértelmezett, kiinduló („default”) modellstruktúrájának kellene, hogy számítsanak.
A bayes-i szakirodalomban minden olyan modellt hierarchikus modellnek neveznek, amelyben legalább egy ismeretlen egy másik ismeretlentől függ.
A hierarchikus modellek kapcsán szóba került az is, hogy sok esetben a látszólag hatalmas volumenű adathalmaz (big data) valójában nem is annyira nagy: a rendelkezésre álló adathalmazban lévő megfigyelések ugyanis legtöbbször klaszterekbe rendeződnek, az egyes klaszterekben pedig már nem feltétlenül található egyenletesen sok (informatív) megfigyelés. A hierarchikus modellek és a bayes-i paradigma előnye, hogy akár szélsőségesen aszimmetrikus adatmennyiséggel/információval bíró klaszterek esetében is megfelelően jó becslést tud adni a releváns ismeretlenekre.
A kurzusokon az ajánlott robusztus bayes-i modellezési workflow mentén haladva néhány mintaprobléma elemzése is megtörtént. Az oktatók sokszor hangsúlyozták, hogy a kapott eredmények értelmezését megelőzően a Stan modell diagnosztikai vizsgálatára is ki kell terjednie az elemzésnek. A Stan által használt MCMC algoritmusnak ugyanis nagy előnye, hogy egyrészt egy jól specifikált modell esetén jól működik (pontos és hatékony mintavételezésre képes a poszterior eloszlásból), másrészt viszont egy rosszul specifikált vagy egyéb módon problémás modell esetén látványosan omlik össze, amit számos különböző diagnosztika segítségével jelez (amik indikátorai lehetnek a probléma gyökerének is).
Konklúzió – avagy mikor és miért érdemes a Stan-t használni?
A bayes-i modellezési paradigma jelentőségében kezd egy szintre kerülni a hagyományos megközelítéssel. Azokban az esetekben ugyanis, amikor a bizonytalanság pontos számszerűsítése a prioritás, egyszerűen jobb válaszokat kaphatunk a kérdéseinkre, mi több, eleve jobb kérdéseket tudunk feltenni, mint a hagyományos, frekventista megközelítésben.
A Stan a bayes-i modellezési eszköztár egy fontos eleme, használata i) azokban az esetekben célszerű, amikor a modell komplexitás egy egyszerű hierarchikus modell komplexitását eléri; ii) azokban az esetekben pedig kifejezetten ajánlott, amikor a pontosság a döntő faktor a szoftverek/algoritmusok közötti választás során. A Stan egy önálló szoftver saját szintaktikával és sajátos logikával. Megtanulása több időt vehet igénybe, mint egy bármilyen machine learning könyvtár néhány függvényének/parancsának megismerése, de a kapcsolódó, részben korábban is említett előnyök (hatékony algoritmus, hasznos diagnosztikák, jó dokumentáltság, széles és aktív felhasználói bázis, open-source szoftver) hamar kompenzálják a felhasználót a kezdeti nehézségekért. A festői Cambridge-ben rendezett konferenciáról már nem is beszélve!
eNET Internetkutató és Tanácsadó Kft.