Nemrég találkoztam olyan grafikonok beágyazásával, mint a DeepWalk és a LINE. Azonban még mindig nincs világos elképzelésem arról, hogy mit kell érteni a grafikon beágyazásánál, és mikor kell használni (alkalmazásokat)? Minden javaslatot szívesen látunk!

Megjegyzések

  • A grafikon beágyazása a grafikonok beágyazása! Tehát egy grafikonra van szükség, és visszaadja a grafikon, az élek vagy a csúcsok beágyazásait. A beágyazások lehetővé teszik a hasonlóság keresését és általában megkönnyítik a gépi tanulást azáltal, hogy reprezentációkat nyújtanak.
  • @Emre mit jelent a beágyazás alatt? 🙂
  • Ahogy a beágyazás jelentése is megfogalmazódik, a dolgok valamire való rögzítése. A gráf beágyazása olyan, mint a csúcsok rögzítése egy felületre és az élek megrajzolása, mondjuk egy hálózat képviseletében. Tehát olyan példa, hogy egy síkbeli grafikon beágyazható egy $ 2D $ felületre él keresztezése nélkül. Az élekhez súlyok és megfelelő élhosszak rendelhetők, pl. segít megérteni / megbecsülni, ahogy @Emre megemlítette a hasonlóság keresést stb.
  • @KiriteeGak Köszönöm 🙂 Melyek a valós alkalmazásaik? Azt mondják, hogy felhasználhatók ajánlásra és minden? de hogyan?
  • A Youtube videóajánlása modellként jeleníthető meg, ahol az éppen megtekintett videó az a csomópont, amelyen tartózkodik, és a következő videók, amelyek az Ön ajánlásában szerepelnek, azok, amelyek leginkább hasonlítanak Önre a hasonló felhasználók által legközelebb figyelt dolgokról, és még sok más tényezőről, ami természetesen óriási hálózatot jelent. Ez a cikk egyszerűen olvasható az alkalmazás megértésében.

Válasz

A grafikon beágyazása megtanulja a hálózatról a vektortérre történő leképezést, megőrizve a releváns hálózati tulajdonságokat.

A vektorterek jobban megfelelnek az adattudománynak, mint a grafikonoknak. A grafikonok éleket és csomópontokat tartalmaznak, ezek a hálózati kapcsolatok csak a matematika, a statisztika és a gépi tanulás egy meghatározott részhalmazát használhatják. A vektorterek gazdagabb eszköztárral rendelkeznek ezekről a területekről. Ezenkívül a vektorműveletek gyakran egyszerűbbek és gyorsabbak, mint az egyenértékű gráfműveletek.

Az egyik példa a legközelebbi szomszédok keresése. “Komlót” hajthat végre egy csomópontról egy másik csomópontra a grafikonon. Számos valós grafikonban pár komló után kevés értelmes információ található (pl. Baráti barátok barátai ajánlásai). A vektorterekben azonban távolságmérőkkel kvantitatív eredményeket kaphat (például euklideszi távolság vagy koszinuszi hasonlóság). Ha kvantitatív távolságmérőkkel rendelkezik egy értelmes vektortérben, akkor a legközelebbi szomszédok megkeresése egyszerű.

Grafikon beágyazási technikák, alkalmazások és teljesítmény: Felmérés “egy áttekintő cikk, amely részletesebben áttekinthető.

Válasz

Mik azok a gráfbeágyazások? A “gráf beágyazásai” napjainkban kiemelt terület a gépi tanulásban. Alapvetően azt jelenti, hogy megtaláljuk a gráfok “látens vektorábrázolását”, amely megragadja a gráf topológiáját (nagyon alapvető értelemben). Gazdaggá tehetjük ezt a “vektorábrázolást”, figyelembe véve a csúcs-csúcs viszonyokat, az él-információkat stb. A gráfban nagyjából két szint van beágyazva (természetesen bármikor meghatározhatunk több szintet az egész grafikon logikai felosztásával különféle méretű algráfok):

  • Csúcs beágyazásai – Itt láthatja a az adott gráf minden csúcsa. Ezután összehasonlíthatja a különböző csúcsokat úgy, hogy ezeket a vektorokat kirajzolja a térbe, és érdekes módon “hasonló” csúcsokat rajzolnak egymáshoz közelebb, mint azok, amelyek nem hasonlítanak egymásra vagy kevésbé kapcsolódnak egymáshoz. Ez ugyanaz a munka, amelyet Perozzi a “DeepWalk” -ban végez.
  • Grafikon beágyazások – Itt megtalálja az egész gráf látens vektorábrázolását. Például van egy kémiai vegyületcsoport, amelynél meg szeretné vizsgálni, hogy mely vegyületek hasonlítanak egymásra, hány típusú vegyület van a csoportban (klaszterek) stb. Használhatja ezeket a vektorokat, és ábrázolhatja őket az űrben, és megtalálja az összes fenti információt. Ez az a munka, amelyet Yanardag a “Deep Graph Kernels” -ban végez.

Alkalmazások – Ha alaposan megnézzük, a beágyazások “látens” ábrázolások, ami azt jelenti, hogy egy grafikonnak van-e | V | * | V | szomszédsági mátrix ahol | V | = 1M, nehéz használni vagy feldolgozni 1M * 1M számokat egy algoritmusban. Tehát a “d” dimenzió látens beágyazása, ahol d < < | V | a szomszédsági mátrixot | V | * d és viszonylag könnyebben használható. Egy másik alkalmazás lehet: Vegyünk egy egyszerű forgatókönyvet, ahol termékeket szeretnénk ajánlani azoknak az embereknek, akik hasonló érdeklődéssel rendelkeznek egy közösségi hálózaton.A csúcsbeágyazások megszerzésével (itt ez az egyes személyek vektorábrázolását jelenti) megtalálhatjuk a hasonlóakat azáltal, hogy ezeket a vektorokat ábrázoljuk, és ez megkönnyíti az ajánlást. Ez néhány alkalmazás, és vannak mások. Hivatkozhat egy szép felmérési cikkre – Grafikon beágyazási technikák, egy felmérés .

Honnan jött ez az egész? Nagyon sok mű született ezen a területen, és szinte mindegyik a természetes nyelv feldolgozásának területén végzett úttörő kutatásból származik – Mikolov “Word2Vec”. Ha el akarja kezdeni a grafikon beágyazásának kutatását, akkor azt javaslom, hogy először ismerje meg a Word2Vec működését. Szép magyarázatokat talál – Word2Vec paraméterek tanulása magyarázva és Stanford előadás . Akkor ugorhat a felsorolt papírokhoz. Ezek a művek a következő kategóriákba sorolhatók:

Megjegyzések

  • Wowww !! Ez teljesen tökéletes válasz. Nagyon köszönöm 🙂 Nagyon jól sikerült 🙂
  • Szia Mausam Jain. Kérem, tudassa velem, ha gráf beágyazásokkal tudom azonosítani a hálózat fontos csomópontjait?
  • Szia, Volka. A kérdés megválaszolásához tudnom kell, hogy milyen típusú grafikonon dolgozik ; ez a twitter, a facebook, a reddit vagy valami más?
  • Köszönöm válaszát. Valójában egy olyan társadalmi hálózaton dolgozom, ahol szeretném meghatározni a legtöbb társasági embert 🙂
  • Itt ‘ ennek a válasznak a bonyolultabb változata. felédatascience.com/…

Válasz

Vélemény, hozzászólás?

Az email címet nem tesszük közzé. A kötelező mezőket * karakterrel jelöltük