Budapesti Műszaki és Gazdaságtudományi Egyetem Méréstechnika és Információs Rendszerek Tanszék R és MapReduce „Big Data” elemzési módszerek Kocsis Imre.

Slides:



Advertisements
Hasonló előadás
PPKE ITK 2009/10 tanév 8. félév (tavaszi) Távközlő rendszerek forgalmi elemzése Tájékoztatás
Advertisements

Programozási tételek, és „négyzetes” rendezések
Kvantitatív Módszerek
Funkcionális programozás F#-ban
LRendezés minimális elem kiválasztással Alkalmazott Informatikai Tanszék MŰSZAKI INFORMATIKA dr.Dudás László 19./0. lAz algoritmus működése lRávezető feladat.
MI 2003/ A következőkben más megközelítés: nem közvetlenül az eloszlásokból indulunk ki, hanem a diszkriminancia függvényeket keressük. Legegyszerűbb:
Vizuális adatanalízis
Digitális képanalízis
HADOOP Korszerű Adatbázisok Elérés, Belépés Elérés: eszakigrid109.inf.elte.hu Belépés: felhasználó/jelszó: neptun-kód Manager oldalak:
Virtuális Obszervatórium Korszerű adatbázisok 2014.
Lineáris és nemlineáris regressziók, logisztikus regresszió
MI 2003/ Alakfelismerés - még egy megközelítés: még kevesebbet tudunk. Csak a mintánk adott, de címkék nélkül. Csoportosítás (klaszterezés, clustering).
Fejlett programozási technikák II.
Becsléselméleti ismétlés
Statisztika II. VI. Dr. Szalka Éva, Ph.D..
Lineáris korreláció és lineáris regresszió. A probléma felvetése y = 1,138x + 80,778r = 0,8962.
Kliensoldali Programozás
Szombathely Dinamikus WEB programozás: PHP és JSP.
Hadoop Gyakorlat 2 Korszerű adatbázisok Parancsok Listázás – hadoop fs –ls Kiírja egy fájl tartalmát – hadoop fs –cat Betöltés – hadoop fs –put.
A JAVA TECHNOLÓGIA LÉNYEGE Többlépcsős fordítás A JAVA TECHNOLÓGIA LÉNYEGE Platformfüggetlenség.
Regresszióanalízis 10. gyakorlat.
Dr. Szalka Éva, Ph.D.1 Statisztika II. VI.. Dr. Szalka Éva, Ph.D.2 Regresszióanalízis.
PHP I. Alapok. Mi a PHP? PHP Hypertext Preprocessor Szkriptnyelv –Egyszerű, gyors fejlesztés –Nincs fordítás (csak értelmező) Alkalmazási lehetőségek:
Az Alakfelismerés és gépi tanulás ELEMEI
Hálózati Bombermen Belicza András Konzulens: Rajacsics Tamás BME-AAIT.
Biostatisztika, MS Excel
Budapesti Műszaki Egyetem Méréstechnika és Információs Rendszerek Tanszék 1 Szolgáltatásbiztos számítástechnika = hibatűrés, információbiztonság Pataricza.
Budapesti Műszaki és Gazdaságtudományi Egyetem Méréstechnika és Információs Rendszerek Tanszék ‚Big Data’ elemzési módszerek
Budapesti Műszaki és Gazdaságtudományi Egyetem Méréstechnika és Információs Rendszerek Tanszék Bin-summarise-smooth: ‚bigvis’ „Big Data” elemzési módszerek.
Budapesti Műszaki és Gazdaságtudományi Egyetem Méréstechnika és Információs Rendszerek Tanszék R „Big Data” elemzési módszerek Kocsis Imre
2012. tavaszi félév Vitéz Gergely. A diasor ismerete nem helyettesíti a tankönyvet, és a példatárat. A diasor ismerete szükséges, de nem elégséges feltétele.
Az F# programozási nyelv
Meglévő ASP.NET 2.0 alkalmazás kiegészítése AJAX-szal
Mozgás/hangérzékelés mobitelefonokon MobSensor Ekler Péter Budapesti Műszaki és Gazdaságtudományi Egyetem Automatizálási és Alkalmazott Informatikai Tanszék.
1 Mössbauer-spektrumok illesztése: vonalalak A kibocsátott  -sugárzás energiaspektruma Lorentz-görbe alakú: I : sugárzás intenzitása  : frekvencia 
MIKROELEKTRONIKA, VIEEA306
Többváltozós adatelemzés
Programmozás Feladatok Telek Miklós BME Híradástechnikai Tanszék
Két kvantitatív változó kapcsolatának vizsgálata
Komoróczy Tamás 1 Java programozási nyelv A nyelv alapjai.
Hibaterjedés-analízis
Budapesti Műszaki és Gazdaságtudományi Egyetem Méréstechnika és Információs Rendszerek Tanszék Szondázás alapú diagnosztika 1. Autonóm és hibatűrő információs.
Budapesti Műszaki és Gazdaságtudományi Egyetem Méréstechnika és Információs Rendszerek Tanszék Szondázás alapú diagnosztika 2. Autonóm és hibatűrő információs.
HTML ÉS PHP (Nagyon) rövid áttekintés. ADATBÁZISRENDSZEREK MŰKÖDÉSI SÉMÁJA Felh. interakció DB Connector MySQL ? A gyakorlaton:
Illés Zoltán ELTE Informatikai Kar
Budapesti Műszaki és Gazdaságtudományi Egyetem Méréstechnika és Információs Rendszerek Tanszék Megerősítő elemzés „Big Data” elemzési módszerek Salánki.
Miskolci Egyetem Gazdaságtudományi Kar Üzleti Információgazdálkodási és Módszertani Intézet Regresszió-számítás március 30. Dr. Varga Beatrix egyetemi.
Budapesti Műszaki és Gazdaságtudományi Egyetem Méréstechnika és Információs Rendszerek Tanszék Korlátkielégítési problémák Autonóm és hibatűrő információs.
1 Budapesti Műszaki és Gazdaságtudományi Egyetem Méréstechnika és Információs Rendszerek Tanszék P2P protokollok és autonóm számítástechnika: szemelvények.
Gombos GergőKorszerű Adatbázis 2012/13 tavasz 2 Kik használják?
Computing n-Gram Statistics in MapReduce Klaus Berberich, Srikanta Bedathur EDBT/ICDT 2013 Joint Conference.
Budapesti Műszaki és Gazdaságtudományi Egyetem Méréstechnika és Információs Rendszerek Tanszék Stream Processing „Big Data” elemzési módszerek Kocsis Imre.
1 Budapesti Műszaki és Gazdaságtudományi Egyetem Méréstechnika és Információs Rendszerek Tanszék Elosztott tagsági kép és hatékony multicast Autonóm és.
Budapesti Műszaki és Gazdaságtudományi Egyetem Méréstechnika és Információs Rendszerek Tanszék R „Big Data” elemzési módszerek Kocsis Imre
Budapesti Műszaki és Gazdaságtudományi Egyetem Méréstechnika és Információs Rendszerek Tanszék MapReduce alapok „Big Data” elemzési módszerek Kocsis Imre,
Budapesti Műszaki és Gazdaságtudományi Egyetem Elektronikus Eszközök Tanszéke MIKROELEKTRONIKA, VIEEA /2012 I. félév Követelmények.
Budapesti Műszaki és Gazdaságtudományi Egyetem Elektronikus Eszközök Tanszéke MIKROELEKTRONIKA, VIEEA /2013 I. félév Követelmények.
Bevezetés a méréskiértékelésbe (BMETE80ME19) 2014/
Hadoop Gyakorlat 1 Korszerű adatbázisok.
TÁMOP /1-2F Informatikai gyakorlatok 11. évfolyam Alapvető programozási tételek megvalósítása Czigléczky Gábor 2009.
Internet-alapú információcsere és adatvalidáció bibliográfiai adatbázisok között Internet-based information exchange and content validation between bibliographic.
2004 május 27. GÉPÉSZET Komplex rendszerek szimulációja LabVIEW-ban Lipovszki György Budapesti Műszaki Egyetem Mechatronika, Optika és Gépészeti.
Humán agyi MRI módszerek
Lineáris egyenletrendszerek megoldása
„Big Data” elemzési módszerek
III. előadás.
„Big Data” elemzési módszerek
Adatbányászati szemelvények MapReduce környezetben
Informatikai gyakorlatok 11. évfolyam
Valószínűségi változók együttes eloszlása
Előadás másolata:

Budapesti Műszaki és Gazdaságtudományi Egyetem Méréstechnika és Információs Rendszerek Tanszék R és MapReduce „Big Data” elemzési módszerek Kocsis Imre

MapReduce: a teljes kép Forrás: [1], p 30

MapReduce: a keretrendszer feladatai [1]  „What” és „how” szétválasztása  Job: „kód” o Mapper, reducer, (partitioner, combiner) o Egy kijelölt csomópontnak adjuk ki („JobTracker”)  Ütemezés (scheduling) o „task”-okra szétválasztás; pl bemeneti (k,v) párok blokkja o task-ok csomóponthoz rendelése o Szükség lehet várakozási sorra is! o „stragglers”  spekulatív végrehajtás map és reduce is a leglassabb task-tól függ Kulcselolszlás miatt reduce esetén nem mindenképp megoldás

Kitérő: Zipf eloszlás

MapReduce: a keretrendszer feladatai [1]  Adat és kód kolokáció o „kódot visszük az adathoz” o Taszk indításnál: helyi  „rack”  „távoli”  Szinkronizáció o Map és Reduce között o „shuffle and sort” (nagy, elosztott GROUP BY key)  Hibakezelés!

Partícionálás és Kombinálás  Legegszerűbb part.: hash(kulcs) mod #reducer o f: kulcs  reducer  Kombinálás: lokális aggregálás o „mini-reducer” o Word count? o Hálózati kommunikáció redukálása o Általánosságban nem „csereszabatos” a reducer-rel

R és funkcionális programozás  Az R-ben ez is van.  Ismerkedjünk meg: o lapply, sapply, tapply, apply, mapply, Reduce, {plyr csomag}, …  ‚foreach’ csomag (doParallel/doMC/doSNOW backend)

foreach

RHADOOP

R és Hadoop?  Miért? o R reuse: nyelv és létező megvalósítások Vizualizáció!!! o R: létező funkcionális programozási támogatás  Megvalósítások? o RHadoop (github: RevolutionAnalytics/RHadoop), RHIPE, segue, HadoopStreaming, rHadoopClient, …  Kulcs: Streaming API o stdin/stdout: „tetszőleges” futtatható állomány befűzhető map vagy reduce taszknak

Wordcount - Java (Persze ez így nem teljesen fair…) Olvasni: [5]

Wordcount - R rmr.options(backend = "local")!

 rmr2 local backend [6]  Kész VM használata [7] o ! (R)Hadoop-ot

k-means [6]

Egy megoldás [8] R: kmeans; példa

k-means rmr2/blob/master/pkg/tests/kmeans.R dist.fun = function(C, P){ apply(C, 1, function(x) colSums((t(P) - x)^2))}

k-means: map kmeans.map = function(., P) { nearest = { if(is.null(C)) sample(1:num.clusters,nrow(P), replace = T) else { D = dist.fun(C, P) nearest = max.col(-D)}} if(!(combine || in.memory.combine)) keyval(nearest, P) else keyval(nearest, cbind(1, P))}

k-means: map  Kulcs: P ponthoz legközelebbi klaszter-centrum o C „normál” R objektum o scoping miatt elérhető a map-ben o P: HDFS-ből  Érték: P  Ha még nincsenek klaszter-centrumok: mintavétel visszahelyezéssel  Vektorizált keyval ismét  in.memory.combine, combine: nem a mapreduce függvényé!

k-means: reduce kmeans.reduce = { if (!(combine||in.memory.combine)) function(., P) t(as.matrix(apply(P, 2, mean))) else function(k, P) keyval( k, t(as.matrix(apply(P, 2, sum))))}

k-means: reduce  Azonos kulcshoz (középpont) tartozó vektorok átlaga  Azaz: o Map: a legközelebbi klaszterbe sorol (középpont) o Reduce: kialakult új középpontok  Szemlétesen: a középpontokat „tologatjuk”  Beragadhat lokális minimumba! (aut. Megállásnál)  Algoritmust lásd (aut. megállással): [8], p 1422

kmeans.mr: törzs (1)

 Iterációk C felüldefiniálásával  Minden menetben mapreduce-szal új középpontok

kmeans-törzs (2)

Regresszió f függvény, bemenet: az attribútumok értéke, kimenet: megfigyelések legjobb közelítése „ökölszabály” Példa: testtömeg/magasság együttes eloszlás valójában egyenesre illeszthető,

Regressziós módszerek  Alapelv: Véletlen változó Közelítés Hiba Jósolt esemény Megfigyelhető változók Átlagos hiba (mean error) Mért érték Becsült érték

Lineáris regresszió  Egyszerű lin. függvény illesztése az adatokra o nem vár alapvető változást a rendszer viselkedésében  Legkisebb négyzetek módszere o keressük azokat az a,b paramétereket, amelyekre  cél: minimális (Sum of Squared Errors) minimalizálása

Levezetés (parc. deriválás) Xi, Yi a mért értékpárok (pl. idő, terhelés)

Lineáris regresszió

Lineáris regresszió: általános alak

„Summation form”

„Summation form”-ban felírható problémák [9]  Locally Weighted Linear Regression  Naive Bayes  Gaussian Discriminative Analysis  k-means  Logistic regression  Neural network  Principal Component Analysis  Independent Component Analysis  Expectation Maximization  Support Vector Machine

„Summation form”  Gradienseket és (stat. modellre nézve) elégséges statisztikákat számító algoritmusok

Hivatkozások  [1] Lin, J., & Dyer, C. (2010). Data-Intensive Text Processing with MapReduce. Synthesis Lectures on Human Language Technologies, 3(1), 1–177. doi: /S00274ED1V01Y201006HLT007  [2] hadoop-with-rhadoops-rmr-packagehttp:// hadoop-with-rhadoops-rmr-package  [3]  [4]  [5]  [6] howto/ howto/  [7] the-cloudera-quickstart-vm/ the-cloudera-quickstart-vm/  [8] Iványi, A. "Informatikai algoritmusok." ELTE Eötvös Kiadó, Budapest (2004).  [9] Chu, C. T., Kim, S. K., Lin, Y. A., Yu, Y., Bradski, G. R., Ng, A. Y., & Olukotun, K. (2006). Map-reduce for machine learning on multicore. In B. Schölkopf, J. Platt, & T. Hofmann (Eds.), Advances in Neural Information Processing Systems 19: Proceedings of the 2006 Conference (pp. 281–288). MIT Press.