Parar palavras e hashing
As próximas etapas serão remover palavras de parada e, em seguida, aplicar o truque de hashing, convertendo os resultados em um TF-IDF.
Um lembrete rápido sobre esses conceitos:
- O truque de hashing oferece uma maneira rápida e eficiente em termos de espaço para mapear um conjunto muito grande (possivelmente infinito) de itens (neste caso, todas as palavras contidas nas mensagens SMS ) em um número menor e finito de valores.
- A matriz TF-IDF reflete a importância de uma palavra em cada documento. Ele leva em conta tanto a frequência da palavra em cada documento quanto a frequência da palavra em todos os documentos da coleção.
Os dados tokenizados de SMS são armazenados em sms
em uma coluna chamada words
. Você limpou o tratamento de espaços nos dados para que o texto tokenizado fique mais limpo.
Este exercício faz parte do curso
Aprendizado de máquina com PySpark
Instruções de exercício
- Importe as classes
StopWordsRemover
,HashingTF
eIDF
. - Crie um objeto
StopWordsRemover
(coluna de entradawords
, coluna de saídaterms
). Inscreva-se emsms
. - Crie um objeto
HashingTF
(resultados de entrada da etapa anterior, coluna de saídahash
). Inscreva-se emwrangled
. - Crie um objeto
IDF
(resultados de entrada da etapa anterior, coluna de saídafeatures
). Inscreva-se emwrangled
.
Exercício interativo prático
Experimente este exercício preenchendo este código de exemplo.
from pyspark.ml.____ import ____, ____, ____
# Remove stop words.
wrangled = ____(inputCol=____, outputCol=____)\
.____(sms)
# Apply the hashing trick
wrangled = ____(____, ____, numFeatures=1024)\
.____(wrangled)
# Convert hashed symbols to TF-IDF
tf_idf = ____(____, ____)\
.____(wrangled).____(wrangled)
tf_idf.select('terms', 'features').show(4, truncate=False)