Sdílet prostřednictvím


Předzpracování textu

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

K vyčištění a zjednodušení textu použijte komponentu Preprocess Text . Podporuje tyto běžné operace zpracování textu:

  • Odebrání stop-words
  • 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ý formulář
  • Normalizace velkých a malých písmen
  • Odebrání určitých tříd znaků, jako jsou čísla, speciální znaky a posloupnosti opakovaných znaků, například "aaaa".
  • Identifikace a odebrání e-mailů a adres URL

Součást 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 části Analýza textu.

  2. Připojte datovou sadu, která obsahuje aspoň 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 slova stop: Tuto možnost vyberte, pokud chcete u textového sloupce použít předdefinovaný seznam stopword.

    Seznamy stopword jsou závislé na jazyce a přizpůsobitelné.

  6. Lemmatizace: Tuto možnost vyberte, pokud chcete, aby slova byla reprezentována v jejich 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 vložil značku hranice věty.

    Tato komponenta používá řadu tří znaků svislé znaky ||| , které představují ukončovací znak věty.

  8. Pomocí regulárních výrazů proveďte 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 nahrazení: Definujte jednu hodnotu nahrazení.
  9. Normalizovat malá písmena na malá písmena: Tuto možnost vyberte, pokud chcete převést velká písmena ASCII na jejich malé formuláře.

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

  10. Z zpracovaného výstupního textu můžete také odebrat následující typy znaků nebo sekvence 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 závislé 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 odeberete všechny jiné než alfanumerické speciální znaky.

    • 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 snížila 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 jakoukoli sekvenci, která obsahuje následující předpony adres URL: http, https, ftpwww

  11. Rozbalit slovesné kontrakty: Tato možnost se vztahuje pouze na jazyky, které používají slovesné kontrakty; v současné době pouze v angličtině.

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

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

  13. Rozdělte tokeny na speciální znaky: Tuto možnost vyberte, pokud chcete rozdělit slova na znaky, například &, -a tak dále. Tato možnost může také snížit speciální znaky, když se opakuje více než dvakrát.

    Například řetězec MS---WORD by byl rozdělen do tří tokenů, MS-, a WORD.

  14. Odešlete kanál.

Technické poznámky

Komponenta preprocess-text v sadě Studio (classic) a návrhář používá různé jazykové modely. Návrhář používá model CNN s více úlohami trénovaný z spaCy. Různé modely poskytují různé tokenizátory a part-of-speech tagger, což vede k různým výsledkům.

Tady je několik příkladů:

Konfigurace Výsledek výstupu
U všech vybraných
možností Vysvětlení:
V případech, jako je "3test" v "WC-3 3test 4test", návrhář odebere celé slovo "3test", protože v tomto kontextu část-of-speech tagger určuje tento token "3test" jako číslice a podle části řeči ji komponenta odebere.
S vybranými všemi možnostmi
Removing number Pouze 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 považuje je za celé tokeny. Proto se čísla v těchto slovech neodeberou.
Pouze s vybranou možností Odebrat číslo

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

Konfigurace Výsledek výstupu
Při výběru všech možností
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
Removing number Pouze s vybraným
vlastním regulárním výrazem: (\s+)*(-|\d+)(\s+)*
Vlastní náhradní řetězec:\1 \2 \3
Odebráním čísel vybraných a regulárních výrazů

Další kroky

Podívejte se na sadu komponent dostupných pro Azure Machine Learning.