Začněte nyníZačněte zdarma

Interpunkce, čísla a tokeny

Na konci předchozí kapitoly jsi načetl/a dataset SMS zpráv označených buď jako "spam" (label 1), nebo "ham" (label 0). Teď z těchto dat sestavíš klasifikační model.

Nejdřív ale budeš muset SMS zprávy připravit:

  • odstraň interpunkci a čísla
  • tokenizuj zprávy (rozděl je na jednotlivá slova)
  • odstraň stop slova
  • aplikuj hashing trick
  • převeď na TF-IDF reprezentaci.

V tomto cvičení odstraníš interpunkci a čísla a následně zprávy tokenizuješ.

SMS data jsou dostupná jako sms.

Toto cvičení je součástí kurzu

Machine Learning with PySpark

Zobrazit kurz

Pokyny k cvičení

  • Importuj funkci pro nahrazení regulárních výrazů a feature pro tokenizaci.
  • Nahraď všechny znaky interpunkce ve sloupci text mezerou. Totéž proveď pro všechna čísla ve sloupci text.
  • Rozděl sloupec text na tokeny. Výstupní sloupec pojmenuj words.

Interaktivní cvičení na vyzkoušení si v praxi

Vyzkoušejte si toto cvičení dokončením tohoto ukázkového kódu.

# Import the necessary functions
from pyspark.sql.functions import ____
from pyspark.ml.feature import ____

# Remove punctuation (REGEX provided) and numbers
wrangled = sms.withColumn('text', ____(sms.text, '[_():;,.!?\\-]', ____))
wrangled = wrangled.withColumn(____, ____(____, ____, ____))

# Merge multiple spaces
wrangled = wrangled.withColumn('text', regexp_replace(wrangled.text, ' +', ' '))

# Split the text into words
wrangled = ____(inputCol='text', outputCol=____).____(wrangled)

wrangled.show(4, truncate=False)
Upravit a spustit kód