Articles

Locality Sensitive hash (LSH) — skaalautuva ratkaisu deduplicating jobs from multiple sources

Back to the topic-why deduplication matters?

käytämme Kalibrr: n massiivista työpaikkailmoitusta yhdistettynä louhittuihin työpaikkailmoituksiin erilaisista julkisista työpaikkailmoituksista kouluttaaksemme malliamme. Se, että corpuksessamme on useita työpaikkoja, jotka sisältävät samanlaisia toimenkuvia, on haitallista mallille. Esimerkki, josta näkyy alla olevassa kuvassa.

Different jobs with the same descriptions

Duplicate job descriptions associated to varying positions can affect the model’s performance in distinguishing context between different job titles. Koska syväoppiminen, ja yleensä koneoppiminen, malleja koulutetaan oppimaan toiminto, joka kartoittaa joukon ominaisuuksia luokkiin tai optimoida tavoite, joiden panokset ovat samanlaisia, mutta liittyvät eri tavoitteisiin varmasti vaikuttaa luottamusta ja suorituskykyä mallin.

ennustavan suorituskykykysymyksen lisäksi sellaisen mallin kouluttaminen, jossa suurin osa datasta on kaksoiskappaleita, kuluttaa turhia laskennallisia resursseja.

Tämä on esimerkki siitä, miten tietojen ymmärtäminen voi helposti vaikuttaa mallin suorituskykyyn.

Tf-Idf — yksinkertainen deduplaatioalgoritmi

Monistusten havaitseminen voidaan tehdä monin eri tavoin. Dokumenttien esittäminen yksinkertaisissa vektoriesityksissä, kuten tf-idf, voi olla järkevä menetelmä lähes samankaltaisten dokumenttien löytämiseen. Tämä voidaan tehdä vertaamalla samankaltaisuuden mittareita, kuten kosinia tai euklidista samankaltaisuutta dokumenttivektorien välillä.

näytämme seuraavassa pätkässä, miten voimme soveltaa algoritmia lähes identtisten tekstien tunnistamiseen.

Tf-IDF sovellettu lähes päällekkäistä tekstiä discovery.

vaikka tämä menetelmä toimii pienissä korporaatioissa, tätä on melko vaikea skaalata, koska tuloksena on vektorien dimensionaalisuus dokumenttien muuntamisen jälkeen. Huomaa myös, että kesti 319 ms käsikirjoitus ajaa koko putki. Tämä on yksi ”dimensiaalisuuden kirouksen” monista ilmenemismuodoista — transformaation korkea dimensiaalisuus vaikuttaa sekä analyysin tila-että ajalliseen monimutkaisuuteen.

Locality Sensitive Hashing (LSH) — skaalautuva tekniikka

ratkaisu tähän ongelmaan on Locality Sensitive Hashing (LSH). LSH-menetelmällä voidaan tehdä lähes samankaltaisuusanalyysi massiivisille aineistoille. Se käyttää hashing kartoittaa asiakirjoja ämpäreihin dimensionality, joka on suuruusluokkaa pienempi kuin vastaava TF-idf muunnos. Tämä ominaisuus tekee LSH: sta kätevän käyttää laajamittaisissa sovelluksissa, kuten tekstinlouhinnassa.

LSH käyttää minhash-algoritmia törmäystodennäköisyyden laskemiseen. On osoitettu, että törmäystodennäköisyys LSH: ssa minhashin avulla vastaa Jaccardin samankaltaisuuden metriikkaa. Lyhyesti, Jaccard samankaltaisuus laskee leikkauspisteen kaksi joukkoa jaettuna unionin elementtejä kussakin joukko. Kaava, joka on esitetty alla.

jaccardin samankaltaisuus kvantifioi seuraavan ajatuksen — kaksi ryhmää, joilla on yleisempiä kohteita, ovat todennäköisesti samanlaisia.

tässä pätkä LSH: sta Wikipedian mukaan:

paikallis-herkkä tiivistys (LSH) vähentää suuriulotteisen datan dimensionaalisuutta. LSH hashes input kohteita niin, että samanlaisia kohteita kartoittaa sama ”kauhat” suurella todennäköisyydellä (määrä kauhat on paljon pienempi kuin maailmankaikkeuden mahdollisia input kohteita). LSH eroaa tavanomaisista ja kryptografisista hash-funktioista, koska sillä pyritään maksimoimaan ”törmäyksen” todennäköisyys vastaaville kohteille. Paikkasidonnaisella hajauttamisella on paljon yhteistä dataklusterin ja lähimmän naapurin haun kanssa.

LSH työssä

alla on esitetty LSH: n toteutus tämän moduulin avulla, jota sovelletaan samaan yllä olevaan esimerkkiin.

LSH applied lähes päällekkäiseen tekstilöytöön.

tulokset osoittavat, että koko putki on noin 4x nopeampi kuin TF-Idf-versio. Tämä ero on rajumpi, kun käytetään suurempaa aineistoa. Olemme sulkeneet muistin suorituskyvyn analyysin pois nyt, mutta kirjoitamme kattavamman vertailukohdan näiden kahden menetelmän välille erillisessä viestissä.

olemme soveltaneet LSH: ta corpukseemme ja olemme nähneet, että jotkut lähes samansisältöiset työpaikkailmoitukset ilmestyvät yli 200 kertaa!

lopulliset ajatukset

kun taas Tf-Idf on suositumpi ja tutumpi malli tekstin samankaltaisuuden työstämiseen; jos käsitellään tämän mittakaavan aineistoja, LSH on kätevämpi malli. Pienempienkin aineistojen osalta LSH parantaa huomattavasti laskennallista aikaa.

se, että corpus voidaan deduplicoida oikein, vähentää harjoitustiedoissa esiintyvää melua, säästää laskennallisia resursseja ja auttaa oppimaan tarkemman mallin käyttötapaustamme varten.

uskomme, että on olemassa monia ongelmia, joihin LSH: ta voidaan soveltaa, kuten:

  • Duplicate image cleanup: käytä LSH: ta kuvaominaisuuksiin ja säilytä vain ainutlaatuinen kuva jokaisesta lokerosta.
  • chatbotit: tunnista lähellä vastaavia syötteitä ja harjoittele malli, jolla tunnistat parhaan vastauksen tietopohjasta.
  • suositusmoottori: ryhmäkohteet, joilla on lähes samanlaiset ominaisuudet ja jotka tukevat kohteita käyttäjille.

voit vapaasti tutkia ja kokeilla LSH: ta omiin ongelmiisi! 🙂

viittaukset LSH: Hon

nämä artikkelit kuvaavat melko hyvin LSH: n toimintaa ja näyttävät myös esimerkkejä.

tässä on LSH: ta käsittelevä kurssi massiivisten aineistojen louhimisesta.

Follow us!

julkaisemme jatkuvasti artikkeleita koneoppimisesta, Syväoppimisesta, NLP: stä, Probabilistisesta ohjelmoinnista ja Analytiikkaprojekteista, joita teemme Kalibrr Researchissa. Seuraa meitä saada ilmoituksen meidän seuraava virkaa! 🙂