Articles

Locality Sensitive Hashing (LSH)–skálázható megoldás több forrásból származó feladatok deduplikálásához

vissza a témához — miért fontos a deduplikáció?

modellünk kiképzéséhez a Kalibrr álláshelyeinek hatalmas korpuszát használjuk, különféle nyilvános álláshirdetések bányászott álláshelyeivel kombinálva. Ha a korpuszunkban több, hasonló munkaköri leírást tartalmazó munkahely van, az káros lesz a modellre. Példa erre az alábbi képen látható.

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. Mivel a mély tanulás, és általában a gépi tanulás, a modelleket arra tanítják, hogy tanuljanak meg egy olyan funkciót, amely a funkciók egy csoportját kategóriákra térképezi fel, vagy optimalizálja a célt, a hasonló, de különböző célokhoz kapcsolódó bemenetek mindenképpen befolyásolják a modell bizalmát és teljesítményét.

A prediktív teljesítmény kérdése mellett egy nagy korpuszú modell képzése, ahol az adatok nagy része másolat, felesleges számítási erőforrásokat fog felhasználni.

Ez azt szemlélteti, hogy az adatok megértése hogyan befolyásolhatja könnyen a modell teljesítményét.

Tf-Idf — egy egyszerű deduplikációs algoritmus

a másolatok detektálása sokféle módon történhet. A dokumentumok ábrázolása olyan egyszerű vektorábrázolásokban, mint a tf-idf, ésszerű módszer lehet a hasonló dokumentumok felfedezésére. Ezt úgy lehet megtenni, hogy összehasonlítjuk a hasonlósági mutatókat, például a koszinusz vagy az euklideszi hasonlóságot a dokumentumvektorok között.

a következő részletben bemutatjuk, hogyan alkalmazhatjuk az algoritmust a közel azonos szövegek azonosítására.

Tf-IDF alkalmazott közel duplikált szöveg felfedezés.

bár ez a módszer kis korpuszokban működik, ezt meglehetősen nehéz méretezni a vektorok ebből eredő dimenziója miatt a dokumentumok átalakítása után. Vegye figyelembe azt is, hogy 319 ms kellett ahhoz, hogy a szkript futtassa a teljes folyamatot. Ez a “dimenzionalitás átka” sok megnyilvánulásának egyike — az átalakulás magas dimenzionalitása mind az elemzés tér -, mind idő-összetettségét befolyásolja.

Lokalitásra érzékeny hash (LSH) — a skálázható technika

erre a problémára megoldást jelent a Lokalitásra érzékeny hash (LSH). Az LSH módszer közel hasonlósági elemzést végezhet hatalmas adatkészleteken. Hash-t használ a dokumentumok vödrökbe történő leképezéséhez, amelynek mérete nagyságrenddel alacsonyabb, mint egy egyenértékű tf-idf transzformáció. Ez a tulajdonság teszi az LSH-t kényelmessé olyan nagyszabású alkalmazásokban, mint például a szövegbányászat.

az LSH a minhash algoritmust használja az ütközés valószínűségének kiszámításához. Kimutatták, hogy az ütközés valószínűsége az LSH-ban a minhash használatával egyenértékű a Jaccard hasonlósági mutatóval. Röviden: A Jaccard hasonlóság kiszámítja két halmaz metszéspontját osztva az egyes halmazok elemeinek egyesülésével. A képlet az alábbiakban látható.

a Jaccard hasonlóság a következő elképzelést számszerűsíti — két, gyakoribb elemekkel rendelkező csoport valószínűleg hasonló.

itt egy részlet az LSH-ról a wikipedia szerint:

a Lokalitásérzékeny kivonatolás (LSH) csökkenti a nagy dimenziós adatok dimenzióját. Az LSH kivonatolja a bemeneti elemeket úgy, hogy a hasonló elemek nagy valószínűséggel azonos “vödrökhöz” térképezzenek (a vödrök száma sokkal kisebb, mint a lehetséges bemeneti elemek univerzuma). Az LSH abban különbözik a hagyományos és kriptográfiai hash függvényektől, hogy maximalizálja a hasonló elemek “ütközésének” valószínűségét. A lokalitás-érzékeny hash-nak sok közös vonása van az adatcsoportosítással és a legközelebbi szomszédkereséssel.

LSH at work

az alábbiakban bemutatjuk az LSH megvalósítását, ezt a modult használva, ugyanarra a fenti példára alkalmazva.

LSH alkalmazott ahhoz, hogy közel duplikált szöveg felfedezés.

Az eredmények azt mutatják, hogy a teljes csővezeték körülbelül 4x gyorsabb, mint a Tf-Idf verzió. Ez a különbség drasztikusabb, ha nagyobb adatkészletet használunk. Most kizártuk a memória teljesítményének elemzését, de a két módszer között átfogóbb referenciaértéket fogunk írni egy külön bejegyzésben.

alkalmaztuk az LSH-t a korpuszunkra, És láttuk, hogy néhány hasonló tartalmú álláshirdetés több mint 200 alkalommal jelenik meg!

végső gondolatok

míg a TF-Idf népszerűbb és ismertebb modell a szöveg hasonlóságának kezelésére; ha ilyen méretű adatkészletekkel foglalkozik, az LSH sokkal kényelmesebb modell. Még a kisebb adatkészletek esetében is, az LSH jelentős javulást kínál a számítási időben.

a korpusz megfelelő deduplikálása csökkenti a zajt a képzési adatokban, megtakarítja a számítási erőforrásokat, és segít megtanulni egy pontosabb modellt a használati esetünkhöz.

úgy gondoljuk, hogy számos olyan probléma van, amelyre az LSH alkalmazható, mint például:

  • Duplicate image cleanup: alkalmazza az LSH-t a képfunkciókra, és csak egy egyedi képet tartson meg minden tárolóból.
  • chatbotok: azonosítsa a hasonló inputok közelében, és kiképezzen egy modellt a Tudásbázis legjobb válaszának azonosítására.
  • Recommendations engine: csoportosítsa a hasonló tulajdonságokkal rendelkező elemeket, és hagyja jóvá az elemeket a felhasználók számára.

nyugodtan vizsgálja meg, és próbálja LSH a saját problémáit! 🙂

hivatkozások az LSH-ra

ezek a cikkek jól illusztrálják az LSH működését, és példákat is mutatnak.

itt van egy tanfolyam a hatalmas adatkészletek bányászatáról, amely az LSH-t tárgyalja.

Kövess minket!

folyamatosan publikálunk cikkeket a gépi tanulásról, a mély tanulásról, az NLP-ről, a valószínűségi programozásról és az analitikai projektekről, amelyeket a Kalibrr Research-nél végzünk. Kövessen minket, hogy értesítést kapjon a következő bejegyzéseinkről! 🙂