Předzpracování textu

Tento článek popisuje komponentu v návrháři služby Azure Machine Learning.

Pomocí komponenty Preprocess Text můžete vyčistit a zjednodušit text. Podporuje tyto běžné operace zpracování textu:

  • Odebrání dorazů
  • Použití regulárních výrazů k vyhledání a nahrazení konkrétních cílových řetězců
  • Lemmatizace, která převádí více souvisejících slov na jeden kanonický tvar
  • Normalizace velkých a velkých písmen
  • Odebrání určitých tříd znaků, jako jsou čísla, speciální znaky a posloupnosti opakovaných znaků, jako je "aaaa".
  • Identifikace a odebrání e-mailů a adres URL

Komponenta Preprocess Text v současné době podporuje pouze angličtinu.

Konfigurace předběžného zpracování textu

  1. Přidejte komponentu Preprocess Text do kanálu ve službě Azure Machine Learning. Tuto komponentu najdete v Analýza textu.

  2. Připojte datovou sadu, která obsahuje alespoň jeden sloupec obsahující text.

  3. V rozevíracím seznamu Jazyk vyberte jazyk.

  4. Textový sloupec, který chcete vyčistit: Vyberte sloupec, který chcete předzpracovat.

  5. Odebrat zarážky: Tuto možnost vyberte, pokud chcete u textového sloupce použít předdefinovaný seznam stopwordů.

    Seznamy stopwordů jsou závislé na jazyce a dají se přizpůsobit.

  6. Lemmatizace: Tuto možnost vyberte, pokud chcete, aby se slova reprezentovala v kanonické podobě. Tato možnost je užitečná pro snížení počtu jedinečných výskytů jinak podobných textových tokenů.

    Proces lemmatizace je vysoce závislý na jazyce.

  7. Rozpoznat věty: Tuto možnost vyberte, pokud chcete, aby komponenta při provádění analýzy vkláněla značku hranice věty.

    Tato komponenta používá řadu tří znaků ||| roury k reprezentaci ukončovače vět.

  8. Pomocí regulárních výrazů můžete provádět volitelné operace hledání a nahrazení. Regulární výraz se nejprve zpracuje před všemi ostatními integrovanými možnostmi.

    • Vlastní regulární výraz: Definujte hledaný text.
    • Vlastní řetězec pro nahrazení: Definujte jednu hodnotu nahrazení.
  9. Normalizovat malá písmena: Tuto možnost vyberte, pokud chcete převést velká písmena ASCII na jejich tvary malých písmen.

    Pokud znaky nejsou normalizované, stejné slovo s velkými a malými písmeny se považuje za dvě různá slova.

  10. Ze zpracovaného výstupního textu můžete také odebrat následující typy znaků nebo sekvencí znaků:

    • Odebrat čísla: Tuto možnost vyberte, pokud chcete odebrat všechny číselné znaky pro zadaný jazyk. Identifikační čísla jsou závislá na doméně a na jazyce. Pokud jsou číselné znaky nedílnou součástí známého slova, nemusí být číslo odebráno. Další informace najdete v technických poznámkách.

    • Odebrat speciální znaky: Pomocí této možnosti odeberte všechny speciální znaky, které nejsou alfanumerické.

    • Odebrat duplicitní znaky: Tuto možnost vyberte, pokud chcete odebrat nadbytečné znaky ve všech sekvencích, které se opakují více než dvakrát. Například sekvence jako "aaaaa" by se zmenšovala na "aa".

    • Odebrat e-mailové adresy: Tuto možnost vyberte, pokud chcete odebrat libovolnou posloupnost formátu <string>@<string>.

    • Odebrat adresy URL: Tuto možnost vyberte, pokud chcete odebrat všechny sekvence, které obsahují následující předpony adres URL: http, https, , ftpwww

  11. Rozbalit kontrakce sloves: Tato možnost platí pouze pro jazyky, které používají slovesné kontrakce; v současné době pouze v angličtině.

    Když například vyberete tuto možnost, můžete nahradit frázi "nezůstal by tam" slovem "nezůstal by tam".

  12. Normalizovat zpětná lomítka na lomítka: Tuto možnost vyberte, pokud chcete namapovat všechny instance objektu \\ na /.

  13. Rozdělení tokenů na speciální znaky: Tuto možnost vyberte, pokud chcete přerušit slova u znaků, jako &jsou , -a tak dále. Tato možnost může také omezit speciální znaky, pokud se opakuje více než dvakrát.

    Řetězec by se například MS---WORD rozdělil do tří tokenů, MS, -a WORD.

  14. Odešlete kanál.

Technické poznámky

Komponenta preprocess-text v aplikaci Studio (classic) a návrhář používají různé jazykové modely. Návrhář používá model CNN s více úlohami vytrénovaný z spaCy. Různé modely poskytují různé tokenizátory a taggery na část řeči, což vede k různým výsledkům.

Tady je několik příkladů:

Konfigurace Výsledek výstupu
Se všemi možnostmi vybranými
Vysvětlení:
V případech, jako je "3test" v wc-3test 4test, návrhář odebere celé slovo "3test", protože v tomto kontextu část řeči tagger určuje tento token "3test" jako číslo a podle části řeči ho komponenta odebere.
Se všemi vybranými možnostmi
Pouze Removing number s vybraným
vysvětlením:
Pro případy jako "3test", "4-EC", dávka tokenizátoru návrháře tyto případy nerozdělí a zachází s nimi jako s celými tokeny. Takže se neodstraní čísla v těchto slovech.
Pouze s vybranou možností Odebrání čísla

K výstupu přizpůsobených výsledků můžete použít také regulární výraz:

Konfigurace Výsledek výstupu
Se všemi vybranými možnostmi
Vlastní regulární výraz: (\s+)*(-|\d+)(\s+)*
Vlastní náhradní řetězec: \1 \2 \3
Se všemi vybranými možnostmi a regulárním výrazem
Pouze Removing number s vybraným
vlastním regulárním výrazem: (\s+)*(-|\d+)(\s+)*
Vlastní řetězec nahrazení: \1 \2 \3
S odebráním vybraných čísel a regulárním výrazem

Další kroky

Projděte si sadu komponent dostupných pro Azure Machine Learning.