Hash-alapú keresések

Hasonló dokumentumok
Babeş Bolyai Tudományegyetem, Kolozsvár Matematika és Informatika Kar Magyar Matematika és Informatika Intézet

Közösség detektálás gráfokban

Szomszédság alapú ajánló rendszerek

Klaszterezés, 2. rész

Babeş Bolyai Tudományegyetem, Matematika és Informatika Kar. szinte minden tudományterületen találkozhatunk. A sok fontos alkalmazás közül itt

Gyakorló feladatok adatbányászati technikák tantárgyhoz

Szalai Péter. April 17, Szalai Péter April 17, / 36

Sajátértékek és sajátvektorok. mf1n1a06- mf1n2a06 Csabai István

Szövegbányászat Információ Visszakeresés és egyéb alkalmazások

Adatbányászati szemelvények MapReduce környezetben

Vektorterek. =a gyakorlatokon megoldásra ajánlott

7. Régió alapú szegmentálás

Gépi tanulás a gyakorlatban. Kiértékelés és Klaszterezés

Adatszerkezetek 2. Dr. Iványi Péter

VIK A2 Matematika - BOSCH, Hatvan, 3. Gyakorlati anyag. Mátrix rangja

Nem teljesen kitöltött páros összehasonlítás mátrixok sajátérték optimalizálása Newton-módszerrel p. 1/29. Ábele-Nagy Kristóf BCE, ELTE

Szociális hálózatok Gráf alapú módszerek. Adatbányászat. Klaszterezés Szociális hálózatok. Szegedi Tudományegyetem. Adatbányászat

KÓDOLÁSTECHNIKA PZH december 18.

Kódelméleti és kriptográai alkalmazások

Miért fontos számunkra az előző gyakorlaton tárgyalt lineáris algebrai ismeretek

Adaptív dinamikus szegmentálás idősorok indexeléséhez

1. Generátorrendszer. Házi feladat (fizikából tudjuk) Ha v és w nem párhuzamos síkvektorok, akkor generátorrendszert alkotnak a sík vektorainak

Hibajavító kódolás (előadásvázlat, november 14.) Maróti Miklós

Feladatok a Gazdasági matematika II. tárgy gyakorlataihoz

Hibadetektáló és javító kódolások

17. előadás: Vektorok a térben

Skalárszorzat, norma, szög, távolság. Dr. Takách Géza NyME FMK Informatikai Intézet takach/ 2005.

Marton József BME-TMIT. Adatbázisok VITMAB november 11.

Diszkrét matematika 2.C szakirány

Összeállította: dr. Leitold Adrien egyetemi docens

Dodé Réka (ELTE BTK Nyelvtudomány Doktori IskolaAlkalmazott Alknyelvdok 2017 nyelvészet program) február 3. 1 / 17

Gépi tanulás a gyakorlatban. Bevezetés

Gépi tanulás. Féligellenőrzött tanulás. Pataki Béla (Bolgár Bence)

GROVER-algoritmus. Sinkovicz Péter. ELTE, MSc II dec.15.

Principal Component Analysis

Gyakorló feladatok I.

Felvételi vizsga mintatételsor Informatika írásbeli vizsga

Lin.Alg.Zh.1 feladatok

Infobionika ROBOTIKA. X. Előadás. Robot manipulátorok II. Direkt és inverz kinematika. Készült a HEFOP P /1.0 projekt keretében

Keresés képi jellemzők alapján. Dr. Balázs Péter SZTE, Képfeldolgozás és Számítógépes Grafika Tanszék

Support Vector Machines

1. feladatsor Komplex számok

Számítógépes képelemzés 7. előadás. Dr. Balázs Péter SZTE, Képfeldolgozás és Számítógépes Grafika Tanszék

Eredmények kiértékelése

Numerikus módszerek 1.

Informatikus informatikus Térinformatikus Informatikus É 1/6

Alkalmazott algebra - skalárszorzat

Matematika A2 vizsga mgeoldása június 4.

Diszkrét matematika 2.C szakirány

Numerikus módszerek 1.

Alapfogalmak a Diszkrét matematika II. tárgyból

Az fmri alapjai Statisztikai analízis II. Dr. Kincses Tamás Szegedi Tudományegyetem Neurológiai Klinika

A TANTÁRGY ADATLAPJA

Shor kvantum-algoritmusa diszkrét logaritmusra

1. Házi feladat. Határidő: I. Legyen f : R R, f(x) = x 2, valamint. d : R + 0 R+ 0

Programozás alapjai II. (7. ea) C++ Speciális adatszerkezetek. Tömbök. Kiegészítő anyag: speciális adatszerkezetek

Speciális adatszerkezetek. Programozás alapjai II. (8. ea) C++ Tömbök. Tömbök/2. N dimenziós tömb. Nagyméretű ritka tömbök

Nagy Gábor compalg.inf.elte.hu/ nagy

Diszkrét matematika 2.

8. Pontmegfeleltetések

Lineáris regressziós modellek 1

Norma Determináns, inverz Kondíciószám Direkt és inverz hibák Lin. egyenletrendszerek A Gauss-módszer. Lineáris algebra numerikus módszerei

A Jövő Internet elméleti alapjai. Vaszil György Debreceni Egyetem, Informatikai Kar

Algoritmuselmélet 6. előadás

Regresszió. Csorba János. Nagyméretű adathalmazok kezelése március 31.

Amortizációs költségelemzés

Az állítást nem bizonyítjuk, de a létezést a Paley-féle konstrukció mutatja: legyen H a

A Fermat-Torricelli pont

Vektorok, mátrixok, lineáris egyenletrendszerek

Társadalmi és gazdasági hálózatok modellezése

LINEÁRIS ALGEBRA. matematika alapszak. Euklideszi terek. SZTE Bolyai Intézet, őszi félév. Euklideszi terek LINEÁRIS ALGEBRA 1 / 40

Hajder Levente 2017/2018. II. félév

Mátrixhatvány-vektor szorzatok hatékony számítása

MATLAB. 3. gyakorlat. Mátrixműveletek, címzések

Diszkrét démonok A Borsuk-probléma

Gépi tanulás Gregorics Tibor Mesterséges intelligencia

Diverzifikáció Markowitz-modell MAD modell CAPM modell 2017/ Szegedi Tudományegyetem Informatikai Intézet

A LEGKÖZELEBBI SZOMSZÉD ANALÍZISHEZ SZÜKSÉGES TERÜLETI ADATBÁZISOK KIALAKÍTÁSÁNAK MÓDSZERTANI KÉRDÉSEI

KOPI. Fordítási plágiumok keresése MTA SZTAKI DSD. Pataki Máté MSZNY Department of Distributed Systems

Összeállította: dr. Leitold Adrien egyetemi docens

} számtani sorozat első tagja és differenciája is 4. Adja meg a sorozat 26. tagját! A = { } 1 pont. B = { } 1 pont. x =

FEGYVERNEKI SÁNDOR, Valószínűség-sZÁMÍTÁs És MATEMATIKAI

Matematika A3 Valószínűségszámítás, 6. gyakorlat 2013/14. tavaszi félév

Diszkrét matematika 2.C szakirány

,,BABEŞ-BOLYAI TUDOMÁNYEGYETEM LINEÁRIS ALGEBRA

IBM SPSS Modeler 18.2 Újdonságok

Markov-láncok stacionárius eloszlása

Sztochasztikus folyamatok alapfogalmak

Lin.Alg.Zh.1 feladatok

Számítógépes döntéstámogatás. Genetikus algoritmusok

Szinguláris érték felbontás Singular Value Decomposition










Átírás:

1/16 az információ-visszakeresésben Babeş Bolyai Tudományegyetem Magyar Matematika és Informatika Intézet A Magyar Tudomány Napja Erdélyben Kolozsvár, 2012

2/16 Tartalom Információ-visszakeresés

Információ-visszakeresés információ-visszakeresés (information retrieval) = információ visszatérítése egy adathalmazból, amely releváns az adott információs igény/kérés szempontjából alapötlet: Vannevar Bush: As We May Think (1945) It consists of a desk, and while it can presumably be operated from a distance, it is primarily the piece of furniture at which he works. On the top are slanting translucent screens, on which material can be projected for convenient reading. There is a keyboard, and sets of buttons and levers. Otherwise it looks like an ordinary desk. http://www.theatlantic.com/magazine/archive/1945/ 07/as-we-may-think/303881/ 3/16

4/16 az adatok nem strukturáltak; nem adatbázis-lekérdezést hajtunk végre általában nem egyetlen találatot térítünk vissza, hanem az első k legközelebbit, vagy akár az összes illeszkedőt a találatokat rangsoroljuk az adatok legtöbbször szövegek és képek probléma: be kell járni az egész adatbázist és össze kell hasonĺıtani a kéréssel Példa: Vektortér modell A szövegeket tárolhatjuk bag-of-words-ként, azaz szavak bag-jeként (multihalmazként) vagy ekvivalens módon vektorokként. A tér dimenzióit a (valamilyen speciális módon kiválasztott) indexelő szavak adják. Két dokumentum hasonlóságát kiszámíthatjuk a vektorok közötti szög koszinuszaként: s(d i, d j ) = d id j d i d j

5/16 1 001100 1, 3, 6, 3 2 9 5 110010 4, 7, 8, 6 8 4 7 010100 2, 5, 9, alapötlet: a pontokat tegyük egy hash táblába úgy, hogy közeli pontok azonos vagy egymáshoz közeli kulcsú rekeszbe kerüljenek kulcs = bináris szekvencia a Hamming-távolságot egyszerű kiszámítani legyen u, v {0, 1} n ; ekkor n d H (u, v) = (u XOR v) i=1

6/16 ALG 1 LSH 1: Generáljunk r darab egységnyi hosszúságú (egyenletes eloszlású) d-dimenziós vektort: {r 1, r 2,..., r r } 2: Az r darab hash függvényünk legyen { 1, r h i (u) = i u 0 0, r iu < 0, i = 1, 2,..., r 3: Egy x ponthoz rendelt bináris hash szekvencia (h 1 (x), h 2 (x),..., h r (x))

Miért működik az LSH? r u Biz. v u, v vektorok R d -ben r véletlen vektor R d -ben, r = 1 Ha a hash függvény { 1, r h r (u) = u 0 0, r u < 0 P(h r (u) h r (v)) = P(r u 0, r v < 0) +P(r u < 0, r bv 0) θ(u, v) θ(u, v) = + 2π 2π θ(u, v) = π akkor P(h r (u) = h r (v)) = 1 θ(u, v) π 7/16

8/16 y i { 1, 1} r, i = 1,..., N kódszavakat keresünk a pontokhoz úgy, hogy egymáshoz hasonló pontok esetén ezen kódszavak távolsága kicsi legyen: min {y i } i=1,...,n N W ij y i y j 2 i,j=1 ú.h. y i { 1, 1} r, N y i = 0, i=1 1 N N i=1 y i y i = I 2. feltétel: a bitek kiegyensúlyozottak legyenek 3. feltétel: a bitek ne korreláljanak egymással a feladatot relaxáljuk: min tr(y LY ) {y i } i=1,...,n ú.h. Y 1 = 0, Y Y = I

9/16 a feladat megoldása: L = D W első r darab (legkisebb sajátértékű) sajátvektora, Y = ( v 2 v 3... v r+1 ) az i-edik kódszó ekkor : y i = ( v 2i v 3i... v (r+1)i ) az eredeti cikkben az általánosítást úgy oldották meg, hogy feltételezték a Gauss-kernel használatát, a többdimenziós egyenletes eloszlást, és felhasználták a Laplace Beltrami operátorok sajátfüggvényeire vonatkozó eredményeket (approximáció)

10/16 normalizált minimális vágás gráfokban: i A,j A W ij i A,j A i A,j V W + W ij ij i A,j V W ij átalakítható az alábbi numerikus optimalizálási feladatra (relaxáció): max z z D 1/2 W D 1/2 z z z ú.h. z D 1/2 1 = 0 kimutatható, hogy a spektrális klaszterezés egy hipersíkkal vágja el az adatokat (W = Φ Φ) max w ú.h. w ΦD 1/2 N w φ(x i ) = 0, w = 1 i=1

ez feĺırható a következőképpen: max w ú.h. w ΦD 1 Φ w w w N w φ(x i ) = 0 i=1 ennek megoldása a ΦD 1 Φ második legnagyobb sajátértékű sajátvektora (u 2 ) D 1/2 Φ ΦD 1/2 2. legnagyobb sajátértékű sajátvektora v 2 ; a kapcsolat a kettő között: u 2 = ΦD 1/2 v 2 e 1 2 ezáltal egy induktív klaszterezőt nyerünk w normálissal: w = u 2 = ΦD 1/2 v 2 e 1 2 ekkor egy új pont klasztercímkéjét a következő módon határozzuk meg: f 2 (x) = φ(x) w = φ(x) u 2 = φ(x) ΦD 1/2 v 2 e 1 2 megmutatható, hogy sgn ( Φ w ) ( ) = sgn Φ ΦD 1/2 v 2 e 1 2 ( ) = sgn v 2 e 2 e 1 2 = sgn(v 2 ) ( = sgn D 1/2 Φ ΦD 1/2 v 2 e 1 2 ) 11/16

12/16 a gond az általánosítás új pontokra alapötlet: használjuk fel az hipersíkkal való szétválasztást a spektrális klaszterezéstől cseréljük ki a Laplace-mátrixot a normalizált Laplace-mátrixra a spektrális ben: D 1/2 LD 1/2 felhasználva az általánosítási eredményeket a spektrális klaszterezéstől kapjuk, hogy f (x) = ( f 2 (x) f 3 (x)... f r+1 (x) ) probléma: φ(x) Φ kiszámításához N kernel számolásra van szükség megoldás: használjuk a pontokat az input térben kernel = skalárszorzat ekkor kiszámítjuk az első r sajátvektort, g k := u k vagy g k := X D 1/2 v k, k = 2,..., r + 1 új pont esetén a ponthoz rendelt kódszót a x g k, k = 2,..., r + 1 skalárszorzatokkal számítjuk ki

13/16 tesztelés a Reuters-21578 1 és 20Newsgroups 2 szövegkorpuszokon szövegek feldolgozása: stopszavak kiszűrése (199 db.) 3 az első 5000 leggyakoribb szó használata dimenziókként bag-of-words reprezentáció + tf-idf súlyozás dokumentumvektorok normalizálása nem használtuk a címkéket a teszthalmaz minden dokumentumához megkerestük az első 50 legközelebbit a tanuló adatokból ezek megtalálásának sikerességét mértük precision és recall segítségével (pl. 32 bit esetén {0, 1, 2, 4,..., 32} Hamming-távolságokra számítottunk recallt és precisiont) 1 http://disi.unitn.it/moschitti/corpora.htm 2 http://qwone.com/~jason/20newsgroups/20news-bydate.tar.gz 3 WordNet::Similarity 2.05, http://wn-similarity.sourceforge.net/

14/16 Area under r p curve 0.3 0.25 0.2 0.15 0.1 0.05 Reuters 21578 Spectral Linear spectral Area under r p curve 0.25 0.2 0.15 0.1 0.05 20Newsgroups Spectral Linear spectral 0 8 16 32 64 128 256 Codeword length 0 8 16 32 64 128 256 Codeword length Figure: A recall-precision görbe alatti terület a hash szekvencia hosszának függvényében. Precision (Hamming distance < 2) 1 0.8 0.6 0.4 Reuters 21578 0.2 Spectral Linear spectral 0 8 16 32 64 128 256 Codeword length Precision (Hamming distance < 2) 1 0.8 0.6 0.4 20Newsgroups 0.2 Spectral Linear spectral 0 8 16 32 64 128 256 Codeword length Figure: Precison eredmények Hamming-távolság < 2 esetén.

15/16 [Weiss, Torralba, Fergus 2008] Yair Weiss, Antonio B. Torralba, and Robert Fergus. Spectral. In NIPS, pages 1753 1760. MIT Press, 2008. [Rahimi, Recht 2004] Ali Rahimi and Ben Recht. Clustering with normalized cuts is clustering with a hyperplane. In Statistical Learning in Computer Vision, 2004.

16/16 Köszönöm a figyelmet!