### 13.3 Part-of-speech Tagging Revisited

Pada bab sebelumnya, kamu telah mempelajari konsep dasar _recurrent_ neural
_network_. Selain digunakan untuk klasifikasi (i.e., _hidden state_ terakhir digunakan
sebagai _input_ klasifikasi), RNN juga dapat digunakan untuk memprediksi
sekuens seperti persoalan _part-of-speech tagging_ (POS _tagging_ ) [82,
83, 84]. Kami harap kamu masih ingat materi bab 8 yang membahas apa itu
persoalan POS _tagging_.
Diberikan sebuah sekuens katax = {x 1 ,···,xT}, kita ingin mencari
sekuens _output_ y={y 1 ,···,yT}( _sequence prediction_ ); dimanayiadalah kelas
kata untukxi. Perhatikan, panjang _input_ dan _output_ adalah sama. Ingat
kembali bahwa pada persoalan POS _tagging_, kita ingin memprediksi suatu
kelas kata yang cocokyidari kumpulan kemungkinan kelas kataC ketika
diberikan sebuah _history_ seperti diilustrasikan oleh persamaan 13.5, dimana
_time_ lambangkan kandidat POStagke-i. Pada kasus ini, biasanya yang dicari
tahu setiap langkah ( _unfolding_ ) adalah probabilitas untuk memilih suatu
kelas katat∈Csebagai kelas kata yang cocok untuk di- _assign_ sebagaiyi.
Ilustrasi diberikan oleh Gambar. 13.14.

```
y 1 ,···,yT= arg max
t 1 ,···,tT;ti∈C
```
```
P(t 1 ,···,tT|x 1 ,···,xT) (13.5)
```
Apabila kita melihat secara sederhana ( _markov assumption_ ), hal ini tidak
lain dan tidak bukan adalah melakukan klasifikasi untuk setiap _instance_ pada
sekuens _input_ (persamaan 13.6). Pada setiap time step, kita ingin menghasilkan _output_ yang
bersesuaian.

```
yi= arg max
ti∈C
```
```
P(ti|xi) (13.6)
```
Akan tetapi, seperti yang sudah dibahas sebelum sebelumnya, _markov assumption_ memiliki
kelemahan. Kelemahan utama adalah tidak menggunakan


192 13 Arsitektur Neural Network

```
Gambar 13.14: POS _tagging_ menggunakan Recurrent Neural Network.
```
keseluruhan _history_. Persoalan ini cocok untuk diselesaikan oleh RNN karena
kemampuannya untuk mengingat seluruh sekuens (berbeda dengan _hidden_
markov model(HMM) yang menggunakan _markov assumption_ ). Secara teoritis
(dan juga praktis–sejauh yang penulis ketahui.) Pada banyak persoalan,
RNN menghasilkan performa yang lebih baik dibanding HMM. Tetapi hal ini
bergantung juga pada variasi arsitektur. Dengan ini, persoalan POS _tagging_
( _full history_ ) diilustrasikan oleh persamaan 13.7.

```
yi= arg max
ti∈C
```
```
P(ti|x 1 ,···,xT) (13.7)
```
Gambar 13.15:Sequence predictionmenggunakan Recurrent Neural Network.

Pada bab sebelumnya, kamu diberikan contoh persoalan RNN untuk satu
_output_ ; i.e., diberikan sekuens _input_, _output_ -nya hanyalah satu kelas yang
mengkategorikan seluruh sekuens _input_. Untuk persoalan POS _tagging_, kita
harus sedikit memodifikasi RNN untuk menghasilkan _output_ bagi setiap elemen
sekuens _input_. Hal ini dilakukan dengan cara melewatkan setiap _hidden_
_layer_ pada RNN pada suatu jaringan (anggap sebuah MLP+ _softmax_ ).


```
13.3 Part-of-speech Tagging Revisited 193
```
Gambar 13.16:Sequence predictionmenggunakan RNN (disederhakan) [1].
Persegi berwarna merah umumnya melambangkan _multi-layer perceptron_.

Kita lakukan prediksi kelas kata untuk setiap elemen sekuens _input_, kemudian
menghitung _loss_ untuk masing-masing elemen. Seluruh _loss_ dijumlahkan
untuk menghitung _backpropagation_ pada RNN. Ilustrasi dapat dilihat pada
Gambar. 13.15. Tidak hanya untuk persoalan POS _tagging_, arsitektur ini dapat
juga digunakan pada persoalan _sequence prediction_ lainnya sepertinamed
entity recognition.^10 Gambar. 13.15 mungkin agak sulit untuk dilihat, kami
beri bentuk lebih sederhananya (konseptual) pada Gambar. 13.16. Pada setiap
langkah, kita menentukan POStagyang sesuai dan menghitung _loss_ yang kemudian
digabungkan. _Backpropagation_ dilakukan dengan mempertimbangkan
keseluruhan (jumlah) _loss_ masing-masing prediksi.

Gambar 13.17:Sequence prediction menggunakan Recurrent Neural Network
(disederhakan), dimana prediksi saat waktu ke-tdipengaruhi oleh hasil
prediksi pada waktut−1.

Berdasarkan arsitektur yang sudah dijelaskan sebelumnya, prediksi POS
tagke-ibersifat independen dari POStaglainnya. Padahal, POStaglain-

(^10) https://en.wikipedia.org/wiki/Named-entity_recognition


194 13 Arsitektur Neural Network

nya memiliki pengaruh saat memutuskan POStagke-i(ingat kembali materi
bab 8); sebagai persamaan 13.8.

```
yi= arg max
ti∈C
```
```
P(ti|y 1 ,···,yi− 1 ,x 1 ,···,xi) (13.8)
```
Salah satu st _rate_ gi untuk menangani hal tersebut adalah dengan melewatkan
POStagpada sebuah RNN juga, seperti para persamaan 13.9 [1] (ilustrasi
pada Gambar. 13.17). Untuk mencari keseluruhan sekuens terbaik, kita
dapat menggunakan teknik _beam search_ (detil penggunaan dijelaskan pada
subbab berikutnya). RNNxpada persamaan 13.9 juga lebih intuitif apabila
diganti menggunakan _bidirectional RNN_ (dijelaskan pada subbab berikutnya).

```
P(ti|y 1 ,···,yi− 1 ,x 1 ,···,xi) =
_softmax_ (MLP([RNNx(x 1 ,···,xi); RNNtag(t 1 ,···,ti− 1 )]))
```
#### (13.9)

