Sobes.tech
Middle — Senior

Mi az a Linformer és miért sikerül neki lineáris összetettséget elérni?

sobes.tech MI

Válasz az MI-től

A Linformer egy transzformer architektúra, amely a figyelem számítási összetettségét a négyzetes (O(n²)) helyett lineárisra (O(n)) csökkenti a szekvencia hosszában.

A Linformer kulcsötlete, hogy a figyelmi mátrixot alacsony rangú reprezentációval közelíti meg. Ahelyett, hogy minden tokenpár között teljes figyelmet számítana ki, a Linformer a kulcsokat és értékeket tanulható lineáris projekciók segítségével kisebb dimenziójú térbe vetíti.

Ez lehetővé teszi:

  • a kulcsok és értékek dimenziójának csökkentését,
  • a mátrixszorzás során végzett számítások számának csökkentését,
  • a memóriafelhasználás csökkentését.

Így a lineáris összetettség egy fix projekciós méret használatával érhető el, amely nem függ a bemeneti szekvencia hosszától, így a Linformer hatékony hosszú szövegek és nagy szekvenciák esetén.

Körülbelül így lehet elképzelni:

  • A figyelem számítása helyett: Attention(Q, K, V) = softmax(QKᵀ / sqrt(d)) V
  • A Linformer számít: Attention(Q, E K, F V), ahol E és F tanulható projekciós mátrixok, amelyek csökkentik K és V méretét.

Ez leegyszerűsíti a számításokat és csökkenti a komplexitást O(n)-re.