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 Funkciókivonat-összetevővel angol nyelvű szövegfolyamot egész szám típusú funkciókká alakíthat át. Ezután átadhatja ezt a kivonatolt funkciókészletet egy gépi tanulási algoritmusnak egy szövegelemzési modell betanítása érdekében.

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

Mi az a funkciókivonatolás?

A funkciókivonat-készítés úgy működik, hogy az egyedi jogkivonatokat egész számokká alakítja. A bemenetként megadott pontos 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 hangulatpontszámot. 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. 1
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 adathalmazhoz tartozó bigramok listája például a következőhöz hasonló:

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

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

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

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. A szöveges adatok minden sorához az összetevő egy oszlopkészletet ad ki, minden kivonatolt funkcióhoz egy oszlopot.

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 1 1 0
5 0 0 0
  • Ha az oszlop értéke 0, a sor nem tartalmazta a kivonatolt funkciót.
  • Ha az érték 1, a sor tartalmazta a funkciót.

A funkciókivonatolás lehetővé teszi, hogy a változó hosszúságú szöveges dokumentumokat azonos hosszúságú numerikus jellemzővektorokként jelölje a dimenzió csökkentése érdekében. Ha a szöveges oszlopot 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ékkel rendelkezik.

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 is használhatnak, a funkció súlyozása is sokkal gyorsabb.

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

  1. Adja hozzá a funkciókivonat-összetevőt a folyamathoz a tervezőben.

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

    Tipp

    Mivel a funkciókivonatolás nem hajt végre lexikális műveleteket, például a sortörést vagy a csonkolást, 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éloszlopok elemet 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. Egy 10 bites kivonat oszlopainak száma például egy oszlop esetén 1024-ről 2048-ra csökken.

  4. A Kivonatoló bitméret használatával megadhatja a kivonattábla létrehozásakor használandó bitek számát.

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

  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 az n szavak sorozata, amelyet egyedi egységként kezelnek.

    Ha például 3-at 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 oszlopra lett konvertálva. Minden oszlop egy-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:

1. oszlopnév 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 adathalmaz 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íthetnek a funkciókivonat-összetevő lehető legjobb kihasználásában:

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

  • Adjon hozzá egy Oszlopkiválasztás összetevőt a Funkciókivonat-összetevő után, hogy eltávolítsa a szöveges oszlopokat a kimeneti adatkészletből. A kivonatolási funkciók létrehozása után nincs szükség a szöveges oszlopokra.

  • Az eredmények egyszerűsítése és a pontosság javítása érdekében fontolja meg az alábbi szövegelőfeldolgozási beállítások használatát:

    • Szótöré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árba ásás

A bármely megoldásban 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

Tekintse meg az Azure Machine Learning számára elérhető összetevőket