MulaiMulai sekarang secara gratis

Stopwords dan hashing

Langkah berikutnya adalah menghapus stopwords lalu menerapkan hashing trick, dan mengonversi hasilnya menjadi TF-IDF.

Pengingat singkat tentang konsep-konsep ini:

  • Hashing trick menyediakan cara yang cepat dan efisien dalam penggunaan ruang untuk memetakan himpunan item yang sangat besar (bahkan tak terbatas)—dalam hal ini, semua kata yang ada dalam pesan SMS—ke sejumlah nilai yang lebih kecil dan terbatas.
  • Matriks TF-IDF mencerminkan seberapa penting sebuah kata bagi setiap dokumen. Ini mempertimbangkan frekuensi kata di dalam setiap dokumen sekaligus frekuensi kata tersebut di seluruh dokumen dalam koleksi.

Data SMS yang sudah ditokenisasi disimpan dalam sms pada kolom bernama words. Anda telah merapikan penanganan spasi dalam data sehingga teks yang ditokenisasi menjadi lebih rapi.

Latihan ini adalah bagian dari kursus

Machine Learning dengan PySpark

Lihat Kursus

Petunjuk latihan

  • Impor kelas StopWordsRemover, HashingTF, dan IDF.
  • Buat objek StopWordsRemover (kolom masukan words, kolom keluaran terms). Terapkan ke sms.
  • Buat objek HashingTF (masukan berasal dari langkah sebelumnya, kolom keluaran hash). Terapkan ke wrangled.
  • Buat objek IDF (masukan berasal dari langkah sebelumnya, kolom keluaran features). Terapkan ke wrangled.

Latihan interaktif praktis

Cobalah latihan ini dengan menyelesaikan kode contoh berikut.

from pyspark.ml.____ import ____, ____, ____

# Remove stopwords
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)
Edit dan Jalankan Kode