Megosztás a következőn keresztül:


Szolgáltatáskivonat-összetevő referenciája

Ez a cikk az Azure Machine Learning Designer egyik összetevőjét ismerteti.

A Szolgáltatáskivonat-összetevővel angol nyelvű szövegfolyamot alakíthat át egész számokból álló funkciók készletévé. Ezután átadhatja ezt a kivonatolt funkciót egy gépi tanulási algoritmusnak egy szövegelemzési modell betanítása érdekében.

Az ebben az összetevőben biztosított funkciókivonatolási funkció a nimbusml-keretrendszeren alapul. További információ: NgramHash osztály.

Mi a funkciókivonatolás?

A funkciók kivonatolása úgy működik, hogy egyedi jogkivonatokat konvertál egész számokká. Pontosan a bemenetként megadott sztringeken működik, és nem végez nyelvi elemzést vagy előfeldolgozást.

Vegyük például az alábbihoz hasonló egyszerű mondatokat, majd egy hangulatpontot. Tegyük fel, hogy ezt a szöveget szeretné használni egy modell létrehozásához.

Felhasználói szöveg Hangulat
Imádtam ezt a könyvet 3
Utáltam ezt a könyvet 0
Ez a könyv nagyszerű volt 3
Szeretem a könyveket 2

A funkciókivonat-összetevő belsőleg létrehoz egy n grammból álló szótárat. Az adatkészlethez tartozó bigramok listája például a következőhöz hasonló:

Kifejezés (bigramok) Gyakoriság
Ez a könyv 3
Szerettem 0
Utáltam 0
Szeretem 0

Az n-gramm méretét az N-gramm tulajdonság használatával szabályozhatja. Ha bigramot választ, az unigramok is ki lesznek számítva. A szótár az alábbihoz hasonló egyetlen kifejezéseket is tartalmaz:

Kifejezés (unigram) Gyakoriság
könyv 3
d 3
Könyvek 0
Volt 0

A szótár létrehozása után a funkciókivonat-összetevő kivonatértékekké alakítja a szótárkifejezéseket. Ezután kiszámítja, hogy minden esetben használták-e a funkciót. Minden egyes szöveges adatsor esetében az összetevő egy oszlopkészletet, egy oszlopot ad ki minden egyes kivonatolt funkcióhoz.

A kivonatolás után például a funkcióoszlopok a következőképpen nézhetnek ki:

Minősítés Kivonatolási funkció 1 Kivonatolási funkció 2 Kivonatolási funkció 3
4 0 0 0
5 0 0 0
  • Ha az oszlop értéke 0, a sor nem tartalmazza a kivonatolási funkciót.
  • Ha az érték 1, a sor tartalmazza a funkciót.

A funkciókivonatokkal a változó hosszúságú szöveges dokumentumokat azonos hosszúságú numerikus funkcióvektorokként jelölheti a dimenzió csökkentése érdekében. Ha a szövegoszlopot a betanításhoz próbálta használni, akkor a rendszer kategorikus funkcióoszlopként kezeli, amely számos különböző értéket tartalmaz.

A numerikus kimenetek lehetővé teszik a gyakori gépi tanulási módszerek használatát is, beleértve a besorolást, a fürtözést és az információlekérést. Mivel a keresési műveletek sztring-összehasonlítások helyett egész számkivonatokat használhatnak, a funkció súlyozása is sokkal gyorsabb.

A szolgáltatáskivonat-összetevő konfigurálása

  1. Adja hozzá a szolgáltatáskivonat-összetevőt a folyamathoz a tervezőben.

  2. Csatlakoztassa az elemezni kívánt szöveget tartalmazó adatkészletet.

    Tipp.

    Mivel a funkciók kivonatolása nem végez olyan lexikális műveleteket, mint például a lefutás vagy a csonkolás, néha jobb eredményeket érhet el a szöveg előfeldolgozásával a funkciókivonat alkalmazása előtt.

  3. Állítsa a Céloszlopokat a kivonatolt funkciókká konvertálni kívánt szöveges oszlopokra. Tartsa szem előtt a következőket:

    • Az oszlopoknak a sztring adattípusának kell lenniük.

    • Több szövegoszlop kiválasztása jelentős hatással lehet a funkciódimenzióra. A 10 bites kivonatok oszlopainak száma például egy oszlop esetében 1024-ről 2048-ra csökken két oszlop esetében.

  4. Hashing bitsize használatával adja meg a kivonattábla létrehozásakor használni kívánt bitek számát.

    Az alapértelmezett bitméret 10. Sok probléma esetén ez az érték megfelelő. Az ütközések elkerülése érdekében több helyre lehet szükség az n gramm szókészlet méretétől függően a betanítási szövegben.

  5. N-gramm esetén adjon meg egy számot, amely meghatározza a betanítási szótárhoz hozzáadni kívánt n-gramm maximális hosszát. Az n-gram egy n szósorozat, amelyet egyedi egységként kezelnek.

    Ha például 3 értéket ad meg, az unigramok, a bigramok és a trigramok létrejönnek.

  6. Küldje el a folyamatot.

Results (Eredmények)

A feldolgozás befejezése után az összetevő egy átalakított adatkészletet ad ki, amelyben az eredeti szövegoszlop több oszlopmá lett konvertálva. Minden oszlop egy funkciót jelöl a szövegben. A szótár jelentősségétől függően az eredményként kapott adathalmaz nagy lehet:

Oszlop neve 1 2. oszloptípus
USERTEXT Eredeti adatoszlop
HANGULAT Eredeti adatoszlop
USERTEXT – Kivonatolási funkció 1 Kivonatolt funkció oszlop
USERTEXT – Kivonatolási funkció 2 Kivonatolt funkció oszlop
USERTEXT – Kivonatolási funkció n Kivonatolt funkció oszlop
USERTEXT – Kivonatolási funkció 1024 Kivonatolt funkció oszlop

Az átalakított adatkészlet létrehozása után használhatja azt a Modell betanítása összetevő bemeneteként.

Ajánlott eljárások

Az alábbi ajánlott eljárások segítségével a lehető legtöbbet hozhatja ki a szolgáltatáskivonat-összetevőből:

  • Adjon hozzá egy előfeldolgozási szöveg összetevőt, mielőtt a funkciókivonatolást használva előfeldolgozást használ a bemeneti szöveghez.

  • Adja hozzá az Oszlopok kijelölése összetevőt a Funkciókivonat-összetevő után, hogy eltávolítsa a szöveges oszlopokat a kimeneti adathalmazból. A kivonatolási funkciók létrehozása után nincs szükség a szöveges oszlopokra.

  • Fontolja meg ezeket a szövegelőfeldolgozási beállításokat az eredmények egyszerűsítése és a pontosság javítása érdekében:

    • Szóhatárolás
    • Szóeltávolítás leállítása
    • Kis- és nagybetűk normalizálása
    • Írásjelek és speciális karakterek eltávolítása
    • Szárítás

A megoldásokban alkalmazható előfeldolgozási módszerek optimális készlete a tartománytól, a szókincstől és az üzleti igénytől függ. folyamat az adatokkal annak megtekintéséhez, hogy mely szövegfeldolgozási módszerek a leghatékonyabbak.

Következő lépések

Az Azure Machine Learningben elérhető összetevők megtekintése