Vektori kuvio

Vektoriavaruusmalli — tiedonhaussa asiakirjojen kokoelman esitys vektoreilla yhdestä koko kokoelmalle yhteisestä vektoriavaruudesta . 

Vektorimalli on perusta monien tiedonhaun ongelmien ratkaisemiseen, kuten: asiakirjan etsiminen pyynnöstä , asiakirjojen luokittelu, asiakirjojen klusterointi .

Määritelmä

Vektorimallissa dokumenttia pidetään järjestämättömänä termijoukkona. Tiedonhaussa termejä ovat sanat, jotka muodostavat tekstin, sekä tekstielementit, kuten esimerkiksi 2010 , II-5 tai Tien Shan .

Asiakirjassa olevan termin painon voi määrittää monella tapaa - sanan "tärkeys" tietyn tekstin tunnistamisessa. Voit esimerkiksi yksinkertaisesti laskea termin esiintymistiheyden dokumentissa, niin sanotun termin esiintymistiheyden - mitä useammin sana esiintyy asiakirjassa, sitä enemmän sillä on painoarvoa. Jos termiä ei esiinny dokumentissa, sen paino kyseisessä asiakirjassa on nolla.

Kaikki käsiteltävän kokoelman asiakirjoissa esiintyvät ehdot ovat tilattavissa. Jos nyt jollekin dokumentille kirjoitetaan järjestyksessä kaikkien termien painot, mukaan lukien ne, jotka eivät ole tässä dokumentissa, saadaan vektori, joka on tämän dokumentin esitys vektoriavaruudessa. Tämän vektorin ulottuvuus, kuten tilan mitta, on yhtä suuri kuin eri termien määrä koko kokoelmassa, ja se on sama kaikille asiakirjoille.

Enemmän muodollisesti

d j = ( w 1j , w 2j , …, w nj )

missä d j  on j - nnen dokumentin vektoriesitys, w ij on j - :nnen asiakirjan i - nnen termin  paino , n  on eri termien kokonaismäärä kokoelman kaikissa asiakirjoissa.

Kun kaikilla asiakirjoilla on tällainen esitys, voidaan esimerkiksi löytää etäisyys avaruuden pisteiden välillä ja siten ratkaista asiakirjojen samankaltaisuusongelma - mitä lähempänä pisteet ovat, sitä samankaltaisempia vastaavat asiakirjat ovat. Jos asiakirjaa haetaan pyynnöstä, pyyntö esitetään myös saman tilan vektorina - ja on mahdollista laskea asiakirjojen vastaavuus pyyntöön.

Termien painotusmenetelmät

Vektorimallin täydellisen määritelmän saamiseksi on tarpeen määrittää tarkasti, kuinka termin paino asiakirjassa löydetään. Painofunktion asettamiseen on useita vakiotapoja:

Kosinin samankaltaisuus

Kosinin samankaltaisuus  on kahden pre-Hilbert-avaruusvektorin samankaltaisuuden mitta, ja sitä käytetään mittaamaan niiden välisen kulman kosini .

Kun annetaan kaksi piirrevektoria , A ja B , niin kosinin samankaltaisuus cos(θ) voidaan esittää käyttämällä pistetuloa ja normia :

Tiedonhaussa kahden dokumentin kosinin samankaltaisuus vaihtelee välillä 0-1, koska termin taajuus (painot tf-idf ) ei voi olla negatiivinen. Kahden termitaajuusvektorin välinen kulma ei voi olla suurempi kuin 90°.

Yksi syy kosinin samankaltaisuuden suosioon on se, että se on tehokas pisteytysmitta erityisesti harvoille vektoreille, koska vain nollasta poikkeavat mitat on otettava huomioon.

"Pehmeä" kosinimitta

"Pehmeä" kosinimitta [1]  on kahden vektorin samankaltaisuuden "pehmeä" mitta, eli mitta, joka ottaa huomioon piirreparien väliset yhtäläisyydet. Perinteinen kosinin samankaltaisuus pitää vektorimallin piirteitä itsenäisinä tai täysin eristetyinä, kun taas "pehmeä" kosinimitta ottaa huomioon piirteiden samankaltaisuudet vektorimallissa. Tämä antaa meille mahdollisuuden yleistää ajatusta kosinimittasta sekä ajatusta objektien samankaltaisuudesta vektoriavaruudessa ("pehmeä" samankaltaisuus).

Esimerkiksi luonnollisen kielen käsittelyn alalla objektien välinen samankaltaisuus on varsin intuitiivinen. Ominaisuudet, kuten sanat, N-grammit tai syntaktiset N-grammit [2] voivat olla melko samankaltaisia, vaikka muodollisesti niitä pidetään eri piirteinä vektorimallissa. Esimerkiksi sanat "leikki" ja "peli" ovat erilaisia ​​ja esiintyvät siten eri ulottuvuuksissa vektorimallissa, vaikka ne ovat ilmeisesti semanttisesti sukua. N-grammien tai syntaktisten N- grammien tapauksessa voidaan soveltaa Levenshtein-etäisyyttä (lisäksi Levenshtein-etäisyyttä voidaan soveltaa myös sanoihin).

"Pehmeän" kosinimitan laskemiseksi otetaan käyttöön piirteiden välisen samankaltaisuuden matriisi. Se voidaan laskea käyttämällä Levenshtein-etäisyyttä tai muita samankaltaisuusmittauksia, kuten Wordnetin eri samankaltaisuusmittauksia . Sitten kertolasku suoritetaan tämän matriisin avulla.

Kun annetaan kaksi N -ulotteista vektoria a ja b, niin pehmeä kosini-mitta lasketaan seuraavasti:

missä s ij = samankaltaisuus(ominaisuus i , ominaisuus j ) .

Jos ominaisuuksien välillä ei ole samankaltaisuutta ( s ii = 1 , s ij = 0 , kun ij )), tämä yhtälö vastaa tavanomaista kosinin samankaltaisuuskaavaa.

Tämän toimenpiteen monimutkaisuusaste on neliöllinen, mikä tekee siitä varsin soveltuvan todellisen maailman ongelmiin. Monimutkaisuusaste voidaan myös muuntaa lineaariseksi.

Muistiinpanot

  1. Grigori Sidorov, Alexander Gelbukh, Helena Gómez-Adorno ja David Pinto. Pehmeä samankaltaisuus ja pehmeä kosinimitta: vektoriavaruusmallin ominaisuuksien samankaltaisuus Arkistoitu 13. lokakuuta 2014 Wayback Machinessa . Computacion y Sistemas, Voi. 18, ei. 3, s. 491-504, 2014, DOI: 10.13053/CyS-18-3-2043 Arkistoitu 13. lokakuuta 2014 Wayback Machinessa .
  2. Grigori Sidorov, Francisco Velasquez, Efstathios Stamatatos, Alexander Gelbukh ja Liliana Chanona-Hernández. Syntaktiseen riippuvuuteen perustuvat N-grammit luokitusominaisuuksina Arkistoitu 3. heinäkuuta 2017 Wayback Machinessa . LNAI 7630, s. 1-11, 2012, ISBN 978-3-642-37798-3 Arkistoitu 3. heinäkuuta 2017 Wayback Machinessa .

Kirjallisuus

Katso myös