Pra-pemrosesan data

Recurrent Neural Networks (RNN) untuk Pemodelan Bahasa dengan Keras

David Cecchini

Data Scientist

Klasifikasi teks

Aplikasi klasifikasi teks:

  • Klasifikasi berita otomatis
  • Klasifikasi dokumen untuk bisnis
  • Segmentasi antrean untuk dukungan pelanggan
  • Dan banyak lagi!
Recurrent Neural Networks (RNN) untuk Pemodelan Bahasa dengan Keras

Perubahan dari klasifikasi biner

Perubahan dari biner ke multi-kelas:

  • Bentuk variabel keluaran y
  • Jumlah unit pada layer keluaran
  • Fungsi aktivasi pada layer keluaran
  • Fungsi loss
Recurrent Neural Networks (RNN) untuk Pemodelan Bahasa dengan Keras

Perubahan dari klasifikasi biner

Bentuk variabel keluaran y:

  • One-hot encoding untuk kelas
# Example: num_classes = 3
y[0] = [0, 1, 0]
y.shape = (N, num_classes)

Jumlah unit pada layer keluaran:

# Output layer
model.add(Dense(num_classes))
Recurrent Neural Networks (RNN) untuk Pemodelan Bahasa dengan Keras

Perubahan dari klasifikasi biner

Perbedaan antara angka pada garis dan di ruang, menampilkan penerapan one-hot encoding

Recurrent Neural Networks (RNN) untuk Pemodelan Bahasa dengan Keras

Perubahan dari klasifikasi biner

Fungsi aktivasi pada layer keluaran:

  • softmax memberi probabilitas tiap kelas
# Output layer
model.add(Dense(num_classes, activation="softmax"))

Fungsi loss:

  • Alih-alih biner, gunakan categorical cross-entropy
# Compile the model
model.compile(loss='categorical_crossentropy')
Recurrent Neural Networks (RNN) untuk Pemodelan Bahasa dengan Keras

Menyiapkan kategori teks untuk keras

y = ["sports", "economy", "data_science", "sports", "finance"]
# Transform to pandas series object
y_series = pd.Series(y, dtype="category")

# Print the category codes print(y_series.cat.codes)
0    3
1    1
2    0
3    3
4    2
Recurrent Neural Networks (RNN) untuk Pemodelan Bahasa dengan Keras

Pra-pemrosesan y

from tensorflow.keras.utils import to_categorical

y = np.array([0, 1, 2]) # Ubah ke kategorikal y_prep = to_categorical(y) print(y_prep)
[[1. 0. 0.]
 [0. 1. 0.]
 [0. 0. 1.]]
Recurrent Neural Networks (RNN) untuk Pemodelan Bahasa dengan Keras

Ayo berlatih!

Recurrent Neural Networks (RNN) untuk Pemodelan Bahasa dengan Keras

Preparing Video For Download...