Ez a bejegyzés strukturált kérdések gyűjteménye arra vonatkozóan, hogy miért működik a TF-IDF mint szövegvektorizálási módszer, kezdve azzal az elsődleges kérdéssel, hogy miért van rá szükség.

Miért van szükségünk szöveg-vektorizálásra?

  • Először is, a számítógépek csak a számokat értik. A számítógépnek a legalacsonyabb szinten (bytecode) érkező bemenetek bináris számok sorozata, ami azt jelenti, hogy a vokális nyelvekből származó szövegek értelmezéséhez szükségünk van ezekre a számok matematikai ábrázolására.
  • Másodszor, a szöveg vektoros ábrázolása lehetővé teszi, hogy kihasználjuk a lineáris algebra erejét különböző műveletekhez (pont/keresztszorzatok, síkok, merőlegesek, normálok stb.). Ez segít a feltáró adatelemzésben (EDA), a geometriai intuícióban, a problémák megjelenítésében (1-D, 2-D és 3-D), valamint a lineáris algebrai módszerek magasabb dimenziókra (›3-D) történő extrapolálásában.

Mi a szabály a szöveg vektorokká alakítására?

Ha három szó angolul (w1, w2, w3), akkor vektoros ábrázolással rendelkezne (v1, v2, v3). Ezután a szabály leegyszerűsítve a következő:

"Ha a (w1, w2) "szemantikailag" jobban rokon szavak az angolban, mint a (w1, w3), akkor a (v1, v2) vektorok közötti távolságnak kisebbnek kell lennie, mint a (v1, v3) közötti távolságnak."

Például a szavak (, nagyszerű) szorosan összefüggenek jelentésükkel, mint (, rossz), így a (V(jó), V(nagy)) közötti „euklideszi” távolság kisebb lesz, mint az euklideszi távolság a (V(jó), V(rossz)) között.

Miért kell a hasonló szavaknak geometriailag közelebb lenniük?

A gépi tanulási modellek betanítása során a modell megpróbál megtanulni és egyenleteket (vagy feltételeket) definiálni a különböző csoportok osztályozására. Ha a hasonló pontok geometriailag közel vannak egymáshoz, akkor könnyebben osztályozható a különböző csoportok között. A következő kép a különböző adatcímkék közötti döntési határok megjelenítését segíti pozitív, negatív és nemi alapú/gender-semleges szavak példáival.

TF-IDF

A TF-IDF a hírhedt módszerek közé tartozik (többek között) a dokumentumokban lévő szavak szövegvektorizálására.

Dokumentum: szavak, szövegek vagy mondatok csoportja, amelyek egyetlen adatpontot képviselnek
Korpusz: Dokumentumok gyűjteménye

A TF a Term Frequency rövidítése, amely a szó előfordulásának valószínűségét jelenti a dokumentumban.

A fenti definícióhoz hasonlóan definiálhatjuk a dokumentum gyakoriságát, amely

a szó megtalálásának valószínűségét jelenti a korpusz dokumentumai között.

Az IDF a Inverse Document Frequency rövidítése. Ez a dokumentumgyakoriság inverzét jelenti, kivéve egy változást – a dokumentum gyakoriságának inverzének logaritmikustranszformációját.

Az IDF felméri a szó fontosságát a korpuszban (vagy az adatkészletben). Más szóval, a korpusz különböző dokumentumaiban ritkán előforduló szavak nagyobb jelentőséget kapnak.

Vegye figyelembe, hogy az egyenlet logaritmikus transzformációt használ a dokumentum gyakoriságának inverzére. Ebből adódik a következő kérdés.

Miért használunk logaritmikus skálát az IDF kiszámításához?

Ezt kétféleképpen próbálhatjuk meg indokolni, elméleti és gyakorlati úton.

Egyelméletimagyarázat, a szavak előfordulásának gyakorisága egy nyelvben (például az angolban) a „Zipf-törvényt” követi, a következőképpen fogalmazva: „Tekintettel néhány „korpusz” a „természetes nyelvű” megnyilatkozások közül bármely szó gyakorisága „fordított arányban” a „gyakoriságtáblázatban” elfoglalt rangjával.

Az angol nyelvnek ezzel a tulajdonságával a szavak gyakoriságának valószínűségi eloszlása ​​követi a „hatalomtörvény” eloszlást. Manapság sok gépi tanulási algoritmus jobban teljesít a változók Gauss-eloszlásával. Az adatok Power Law eloszlásból Gauss eloszlására történő átalakításához használhatunk Box-Cox transzformációt a logaritmikus természet. Valószínűleg ez magyarázza, hogy a kutatási „cikkben” miért javasoltak logaritmikus transzformációt az IDF számára.

Másodszor, a gyakorlatiasabb intuíció az IDF tartományának csökkentése, így viszonylag összehasonlíthatóvá téve azt a TF-hez, így ha ezt a két számot megszorozzuk a TF-IDF-ben, az eredmény értéke hasonló hozzájárulásokkal jön létre mindkét.

Miért kell a TF és az IDF tartományának viszonylag összehasonlíthatónak lennie?

Vegye figyelembe a„the” és „hardworking” szavakat angolul. Tudjuk, hogy ez utóbbinak több jelentése van, és fontosnak kell tekinteni. A korpuszban lévő 'the' szó IDF-je (logtranszformáció nélkül) 1 lehet. Hogyan?

Nos, gondoljon egy korpuszra, amely 1000dokumentumot tartalmaz. Ha a 'a' szó mind az 1000dokumentumban előfordul, akkor az IDF definíciója szerint (logtranszformáció nélkül) 1000/1000 = 1.

Nos, mivel a „szorgalmas” egy ritkán előforduló szó, ennek IDF-je (logtranszformáció nélkül) 1000 lehet. Hogyan?

Tekintsük ugyanazt a korpuszt 1000dokumentummal. Ha a 'szorgalmas' szó csak egydokumentumban fordult elő, akkor az IDF meghatározása szerint (logtranszformáció nélkül) 1000 /1 = 1000.

Az IDF értéktartománya (logtranszformáció nélkül) most [11000] – a ritkán előforduló szavak miatt. Azonban a alap10 logaritmikus transzformációjával (az egyszerűség kedvéért) ez a tartomány [1,3]-ra csökken.

Ha megszorozzuk a TF-et és az IDF-et (a logtranszformáció nélkül), akkor az értékek most gyorsan felrobbannak (az IDF hatalmas tartománya miatt). Csökkenteni kell az IDF hatását ebben a termékben.

A hatalmas tartomány kompenzálására és a hatás tompítására logaritmikus transzformációt használunk az IDF-en, így a TF és az IDF hozzájárulása a TF-IDF számértékéhez összehasonlítható és relatív tartományon belül van.

Mi történik ezután a TF-IDF érték kiszámítása után?

Nos, minden szóhoz van egy TF-IDF érték. A dokumentum vektoros ábrázolásában az egyes szavakhoz tartozó dimenzió értéke a numerikus TF-IDF értéket tartalmazza. Ezt a vektort a modell betanítására, tesztelésére és értékelésére használják.

Mik a TF-IDF hátrányai?

Először is világosan láthatjuk, hogy két különböző szó lehet, a TF-IDF azonos értékeivel. Mert ez a mérőszám csak a szó előfordulásának számát veszi figyelembe a dokumentumban és a korpuszban.

Másodszor, azon a feltételezésen alapul, hogy a hasonló jelentésű szavak hasonló számú alkalommal fordulnak elő a korpuszban. Vagy más szóval azt is mondhatjuk, hogy a szó szemantikai jelentését ez a módszer magyarázza. Például: ízletes és finom két azonos jelentésű szó. Azonban nem tudjuk garantálni, hogy ezeknek a szavaknak a TF-IDF értékei relatívak és hasonlóak.

Nos, ezeket a hátrányokat leküzdjük a 2013-ban javasolt Word2Vec algoritmussal, amely a szövegvektorizálás legkorszerűbb technikájának bizonyul. A technika mentése a következő bejegyzéshez.

Remélem ez segít :)