18
Gaussian Mixture Modell alapú Fisher vektor számolás GPGPU-n Adatbányászat és Webes Keresés Kutatócsoport MTA SZTAKI Daróczy Bálint és András Benczúr, Bodzsár Erik, Petrás István, Siklósi Dávid, Nikházy László, Pethes Róbert

Gaussian Mixture Modell alapú Fisher vektor számolás …...Gaussian Mixture Modell alapú Fisher vektor számolás GPGPU-n Adatbányászat és Webes Keresés Kutatócsoport MTA

  • Upload
    others

  • View
    12

  • Download
    0

Embed Size (px)

Citation preview

  • Gaussian Mixture Modell alapú Fisher vektor számolás GPGPU-n

    Adatbányászat és Webes Keresés KutatócsoportMTA SZTAKI

    Daróczy Bálint és András Benczúr, Bodzsár Erik, Petrás István, Siklósi Dávid, Nikházy László, Pethes Róbert

  • A csoport elsősorban egyedi, nagy méretű, különösen összetett rendszerek (nagy intranetek, nagy forgalmú tartalomszolgáltatók, publikus Web, tudományos adatbázisok) számára kínál webes keresési, ill. adatbányászati megoldásokat. https://dms.sztaki.hu

    Kereső motorok

    „Big Data” üzleti intelligencia

    Gépi tanulás

    Ajánló rendszerek

    Gráf vizualizáció

    Azonosság feloldás

    Bioinformatika

    Web spam szűrés

    Laborvezető: Benczúr András

  • GPGPU: General-purpose computing on graphics processing units Miért jó számunkra:

    ● sok egyszerű, egyben lassú számoló egység (>100) → gyakorlatban fp32....● kicsi cserébe nagyon gyors memória (>100GB/sec)

    vs. CPU:● kevés (

  • Képi annotáció feladata egy ismeretlen képről eldönteni, hogy melyek a rá jellemző fogalmak.

    Pl. nappal, ég, hajó, tó (tenger?) stb.

    Adott:

    - maga a kép - a képhez szorosan kapcsolódó szöveges információk pl. Flickr, honlap, kép neve, exif stb.

  • Low-level feature-ök

    Szegmens alapú~10..100

    Grid alapú ~5..30 ezer

    ROI alapú~600..2000

  • Pl. Scale-Invariant Feature Transform – SIFT [1]

    Kép orientációk (n=8 → 8x8) m=2, 2x2-es sub-block orientáció hisztogram

  • Pl. Scale-Invariant Feature Transform – SIFT [1]

    Kép orientációk (n=8 → 8x8) m=2, 2x2-es sub-block orientáció hisztogram

    Általában 4x4 block és 45 fokos felbontás 4x4x8 = 128 dimenzió

    Általában 4x4 block és 45 fokos felbontás 4x4x8 = 128 dimenzió

  • Gaussian Mixture ModelEM algoritmus

    - nem hierarchikus ellentétben a gyakori megoldásokkal [2,3,6]- nagy dimenziós térben könnyen alulcsordul - nem megfelelő előkészítés esetén kiürülnek a klaszterek

  • Numerikus hibák:• Egy naiv megvalósítás gyakran alulcsordul a sűrűség meghatározásakor• Feloldható logaritmusok és úgynevezett „bucket”-ek használatával

    GPU implementáció [6]σ kd2

    http://datamining.sztaki.hu/?q=en/GPU-GMM

    http://datamining.sztaki.hu/?q=en/GPU-GMM

  • Legyen λ egy Gaussian Mixture Modell (k eloszlás):

    The idea is to describe the low-level features with the gradient of the log-likelihood of their conditional probability [2,3]:

    ahol

    Fisher vektor modellek

    F X =∇ log P X∣=∂ LX∣

    =[ p1,. . , pk ,1,. . ,k ,1,. . ,k ]

  • Probléma:• Igazán hatékony GMM: legalább 256 eloszlás• Túl sok számítás:

    • független számítások száma nagy• GPU• Kis adatmennyiség sok párhuzamos számítás (egyetlen kép alacsony szintű leírói: ~30MB)

    • egyetlen gradiensnél a Fisher vektor dimenziója N-1+2*D*N, ahol N az eloszlások száma, D az alacsony szintű leíró dimenziója:

    SIFT: 127+2*128*256 = 65,663 dimenzió

    Ötletek Fisher vektor közelítésére[2,3]:• diagonális kovariancia mátrix • csak a legjobban illeszkedő eloszlásokat vesszük figyelembe, ebben az esetben a dimenzió K+2*K*D

    Fisher vektor modellek

    http://datamining.sztaki.hu/?q=en/GPU-GMM

    http://datamining.sztaki.hu/?q=en/GPU-GMM

  • Három példa:→ ritka, gyors: approxFV csak a top x illeszkedő eloszlást vesszük figyelembe, cserébe túl ritka fp32 mellett [2,3]→ Módosított Fisher információ mátrix a ritkaság feloldására: az eloszlások előfordulásával arányosan normálunk, nem a képen található elemek számával[2,3], „ha előfordult mennyire biztosan fordult elő „ locFV

    → Használjuk mindegyik eloszlást: sűrű Fisher vektor dFV (CUDA) ~44..70x gyorsulás GTX285 vs. Intel E5620 egy szálon

    A GMM modell tapasztalatati alapján tudjuk számolni a feltételes valószínűségeket

    • D*N független számítás • Majd egy összegzés: már csak N elem

    Fisher vektor modellek

    http://datamining.sztaki.hu/?q=en/GPU-GMM

    http://datamining.sztaki.hu/?q=en/GPU-GMM

  • SVM[4], Fisher vektorokon értelmezett „természetes magfüggvény”[2]:

    ahol

    Multiple-Kernel probléma[4,5]:

    Maximalizáljuk

    ahol és

    Unified representation[7,8]:Kombináljuk a különböző modalitásokból származó információkat még a

    klasszifikáció előtt (pl.: szín, textúra, szöveges környezet, link adatok stb.): - adott egy B referencia képhalmaz - minden elemre értelmezzünk R reprezentációt

    Gépi tanulás

    K Fisher X , X =F X F Information−1 F X=F Information

    −1/2 F X F Information−1 /2 F X =F normX ,F normX ,

    F Information =E [∇ logP X∣∇ log P X∣T ]

    Lc ,c=∑i=1

    n

    ci−12∑i=1

    n

    ∑j=1

    n

    cicj yci ycj∑n=1

    N

    cnK n x j , x i

    LR X , B =[∑r=1

    R

    r dist r X r , Br1 , .. ,∑r=1

    R

    rdist r X r , Brb]

    ∑i=1

    n

    i yi=0 ∀i≥0

  • Számítási problémák:

    • Képenként |B|*|R| reprezentáció adaptív hasonlóság számítás: túl sok számítás, túl nagy memória igénnyel

    Pl. szöveges hasonlóság

    • SVM modell kiértékelése: függ a tanulás után megmaradt support vektorok számától, sok esetben több ezer (memória) • Bi-klaszterezés[8]: dokumentumok együttes csoportosítása többféle szöveges és /vagy képi hasonlóságok alapján • Osztályonként különböző optimális arányok:

    • Súlyok meghatározása• Minden válaszhoz külön unified vektor?

    Gépi tanulás

    K k tag X , I t =dist Jensen−Shannon X tags , I t tags=12DP∣M 1

    2DQ∣M

  • Váltás:

    • GPU vs. CPU : memória , PCIe sávszélesség, virtuális memória• Nvida vs. AMD/Ati: OpenCL-re váltás a korábban használt GPU-khoz képest nem tűnik veszteségnek• CPU vs. OpenCL: POSIX thread vs. OpenCL • Cloud: új api-k? • Mobil applikációk: kamerával felvett képinformációk előfeldolgozása vs. nyers adat átküldése

    Megoldandó problémák:• Alacsony szintű képfeldolgozás: alacsony memória igény, bizonyítottan működik pl. szegmentálás• Koherencia miatt OpenCL• Gépi tanulás gyorsítása (ritka adat?), vagy legalább a modell kiértékelése • Mozgóképekre 40-50x-es gyorsulás lenne legalább szükséges • Egyéb adatbányászati problémák: bi-klaszterezés [8], bioinformatika

    Összefoglalás

  • Eredmények1: Yahoo MIRFLickr dataset: ImageCLEF 2011 Photo Annotation Task

    MAP EER AUC

    Egységes súly: dFV + Jensen-Shannon

    IMG+TXT 0.4512 0.233511 0.8378

    1. TUBFI - Technische Universität Berlin + Frauenhofer

    IMG+TXT 0.443449 0.233690 0.835753

    2. LIRIS - Universite de Lyon, CNRS, Ecole Centrale de Lyon

    IMG+TXT 0.436968 0.232860 0.836570

    3. BPACAD - SZTAKI IMG+TXT 0.436294 0.241691 0.8277474. ISIS - University of Amsterdam IMG+TXT 0.432758 0.245721 0.8214625. MLKD - Department of Informatics,

    Aristotle University of ThessalonikiIMG+TXT 0.401642 0.253232 0.817084

    6. CEALIST - Laboratoire d' Intégration des Systèmes et des Technologies

    IMG+TXT 0.383528 0.250714 0.819797

    7. CAEN – University of Caen IMG 0.382403 0.262823 0.8054208. MRIM - Laboratoire d'Informatique

    de GrenobleIMG+TXT 0.377179 0.260416 0.809472

    9. IDMT – Fraunhofer IMG+TXT 0.370975 0.303458 0.751788...

  • Eredmények2: Pascal VOC 2011 Classification

    Előre adott boxok használata nélkül

    Előre megadott mintaboxok használata mellett

    1. NUS - National University of Singapore - 0,7856

    2. NLPR - National Laboratory of Pattern Recognition, Institute of Automation Chinese

    Academy of Sciences

    0,6108 0,7823

    3. ISIS - University of Amsterdam, University of Trento

    - 0,7335

    4. MSR - Microsoft Research Asia & University of Science and Technology of China

    - 0,7049

    5. LIRIS - LIRIS, Ecole Centrale de Lyon, CNRS, UMR5205, France

    0,6094 0,6681

    6. DMWS, MTA SZTAKI 0,6139 -

    7. SJT - Shanghai Jiao Tong Univeristy 0,5485 0,604

    8. JDL - Institute of Computing Technology, Chinese Academy of Sciences

    0,5478 -

    9. KUL - University of Leuven 0,4512 -

  • Referenciák

    1. D. Lowe: “Object recognition from local scale-invariant features”, in: International Conference on Computer Vision, volume 2, pp. 1150–1157.2. F. Perronnin, C. Dance: “Fisher kernels on visual vocabularies for image categorization”, in: IEEE Conference on Computer Vision and Pattern Recognition, 2007. CVPR’07, pp. 1–8.3. F. Perronnin, J. Sanchez, T. Mensink, “Improving the fisher kernel for large-scale image classification”, in: 11th ECCV,2010.4. C. Cortes, V. Vapnik: “Support-vector networks”, Machine Learning 20 (1995) 273–297.5. M. Kloft, U. Brefeld, S. Sonnenburg, A. Zien: “lp-norm multiple kernel learning”, Journal of Machine Learning Research 12 (2011) 953–997.6. E. Bodzsá́r, B. Daróczy, I. Petrás, A. A. Benczúr: “GMM based fisher vector calculation on GPGPU” (2011). http://datamining.sztaki.hu/?q=en/GPU-GMM. 7. B. Daróczy, R. Pethes, A. Benczúr: „SZTAKI @ ImageCLEF 2011”, In Working Notes for ImageCLEF Workshop at CLEF Amsterdam, Nederland, 20118. Dávid Siklósi, Bálint Daróczy, András A. Benczúr: “Content-Based Trust and Bias Classification via Biclustering”, WWW'12 Lyon, France, Proceedings of the 2nd Joint WICOW/AIRWeb Workshop on Web Quality , Pages 41-47 ACM, New York, NY, USA ©2012 ISBN: 978-1-4503-1237-0

    Köszönöm a figyelmet!

    Slide 1Slide 2Slide 3Slide 4Slide 5Slide 6Slide 7Slide 8Slide 9Slide 10Slide 11Slide 12Slide 13Slide 14Slide 15Slide 16Slide 17Slide 18