Memanfaatkan Prediksi Kalimat Berikutnya. Tidak Perlu Penyempurnaan.

Dalam postingan ini kami menetapkan ukuran kesamaan topik di antara artikel berita yang dikumpulkan dari feed RSS New York Times. Tujuan utamanya adalah untuk membiasakan diri dengan implementasi BERT (PyTorch) dan model yang telah dilatih sebelumnya.

Apa itu BERT?

BERT adalah singkatan dari representasi Bidirection Encoder R dari Ttransformer. Hal ini berasal dari makalah yang diterbitkan oleh Google AI Language pada tahun 2018[1]. Hal ini didasarkan pada gagasan bahwa menyempurnakan model bahasa yang telah dilatih sebelumnya dapat membantu model mencapai hasil yang lebih baik dalam tugas-tugas hilir [2] [3].

Kami telah melihat transformator[4] digunakan untuk melatih model bahasa (searah) di makalah OpenAI[3]. BERT menggunakan desain tugas cerdas (model bahasa bertopeng) untuk mengaktifkan pelatihan model dua arah, dan juga menambahkan tugas prediksi kalimat berikutnya untuk meningkatkan pemahaman tingkat kalimat. Hasilnya, BERT memperoleh hasil baru yang canggih pada sebelas tugas pemrosesan bahasa alami.

Ini adalah seri hebat tentang BERT. Jika Anda sudah familiar dengan model bahasa, Anda bisa mulai dengan Bagian 2 (jika tidak, Anda mungkin ingin melihat Bagian 1):



Kami juga telah membahas OpenAI sebelumnya di postingan ini:



Deskripsi Masalah

The New York Times RSS feed memberi kami daftar artikel berita, dan judul, deskripsi, tanggal penerbitan, tautan, dan kategorinya. Dengan adanya sebuah artikel, kami ingin secara otomatis mencari artikel lain yang membahas topik yang sama tanpa bergantung pada informasi kategori (sehingga kami dapat menerapkan algoritme ke berbagai sumber di masa mendatang).

Sebuah contoh:

Judul:Apa yang Terkena dan Tidak Terkena Dampak Penutupan Pemerintah

Deskripsi:Petugas Administrasi Keamanan Transportasi memeriksa penumpang di Bandara Internasional Pittsburgh minggu lalu. Jumlah pegawai badan tersebut yang menyatakan sakit meningkat di seluruh negeri sejak penutupan dimulai.

Prediksi Kalimat Berikutnya

Pertama, kita perlu melihat bagaimana BERT menyusun masukannya (pada tahap prapelatihan). Urutan masukan terdiri dari dua “kalimat” (dijelaskan di bawah), masing-masing diakhiri dengan token [SEP]. Dan token [CLS] ditambahkan ke kepala, yang status tersembunyinya digunakan untuk membuat prediksi kalimat berikutnya.

Untuk menghasilkan setiap urutan masukan pelatihan, kami mengambil sampel dua bentang teks dari korpus, yang kami sebut sebagai “kalimat” meskipun biasanya lebih panjang daripada satu kalimat (namun bisa juga lebih pendek). [1]

Model BERT yang telah dilatih sebelumnya, menurut makalah [1], mencapai akurasi 97%~98% pada tugas ini dengan kumpulan data yang seimbang.

Solusi yang Diusulkan

Kalimat pertama kita isi dengan judul artikel, dan kalimat kedua dengan deskripsi. Idealnya, pasangan judul-deskripsi yang berasal dari artikel yang sama harus memiliki skor kalimat berikutnya yang tinggi dari model yang telah dilatih sebelumnya (yaitu deskripsi dianggap sangat mungkin terjadi pada kalimat berikutnya dari judul). Jika tidak, kita perlu menyempurnakan model yang telah dilatih sebelumnya (melatih model lebih lanjut dengan data baru).

Secara intuitif, jika dua artikel berita meliput topik yang sama, judul dari satu artikel dan deskripsi dari gabungan artikel lainnya juga akan memiliki skor kalimat berikutnya yang tinggi, karena keduanya memiliki kesamaan sentimental.

Ini adalah urutan masukan yang dikonversi dari contoh sebelumnya:

[CLS] what is and isn ’ t affected by the government shut ##down [SEP] transportation security administration officers checking passengers at pittsburgh international airport last week . the agency ’ s employees have called out sick in increased numbers across the country since the shut ##down began .[SEP]

Dan inilah urutan masukan di atas dengan kalimat kedua diganti dengan uraian dari artikel lain:

[CLS] what is and isn ’ t affected by the government shut ##down [SEP] gr ##udge ##s can be good . they are one habit that humans have evolved to keep ourselves from the pain of breakup ##s and also from eating mo ##zza ##rella sticks for every meal . [SEP]

Hasil

Saya pertama kali mencoba menggunakan model terlatih tanpa penyesuaian apa pun, dan hasilnya sudah bagus. Kumpulan data tersebut terdiri dari 2.719 artikel dari RSS feed New York Times, dengan artikel yang tidak memiliki atau memiliki deskripsi sangat singkat yang dihapus.

Untuk pasangan yang benar (judul dan deskripsi berasal dari artikel yang sama), hanya 2,5% yang memberikan skor kalimat berikutnya lebih rendah dari 50% oleh model yang telah dilatih sebelumnya (BERT-base- tanpa casing). 97,3%di antaranya memiliki skor di atas 90%. Berikut contoh yang diprediksi negatif:

Judul:Sementara: Untuk Pisau, Belati, Pedang, Parang atau Pembunuh Zombi, Tanyakan Saja Pada Wanita Ini

Deskripsi:Whitehead's Cutlery di Butte, Mont., berusia 128 tahun dan dengan senang hati akan mengasah gunting yang dijual beberapa generasi lalu.

Lebih sulit untuk mengevaluasi pasangan lain, karena kami tidak memiliki data berlabel mengenai kesamaan antar artikel. Kami hanya dapat memeriksa beberapa pasangan secara kualitatif.

Sebagai contoh, saya menggunakan judul dari artikel penutupan pemerintah yang ditampilkan sebelumnya dan menghasilkan 2.719 urutan masukan dengan deskripsi dari keseluruhan korpus. Berikut lima pertandingan teratas (skor kalimat berikutnya tertinggi):

Top 5 Descriptions Matching this Title: What Is and Isn’t Affected by the Government Shutdown
1. Transportation Security Administration agents are among the most visible federal employees affected by the government shutdown.
2. Transportation Security Administration agents at Chicago Midway International Airport on Dec. 22, the first day of the government shutdown.
3. Damage from Hurricane Michael lingers throughout Marianna, Fla. The government shutdown has made things worse for many residents.
4. Scientists aboard a National Oceanic and Atmospheric Administration ship in San Juan, P.R. The administration has furloughed many workers because of the government shutdown.
5. Major federal agencies affected by the shutdown include the Departments of Agriculture, Commerce, Homeland Security, Housing and Urban Development, the Interior, Justice, State, Transportation, and the Treasury and the Environmental Protection Agency.

Menariknya, deskripsi sebenarnya dari artikel tersebut tidak masuk dalam 5 besar atau 10 besar. Namun tetap saja, deskripsi yang diprediksi tampaknya cukup bagus.

Kesimpulan dan Pekerjaan Selanjutnya

Dalam postingan ini kami telah menunjukkan bahwa tugas prediksi kalimat berikutnya pada tahap pra-pelatihan BERT berhasil menangkap informasi semantik dalam kalimat, dan dapat digunakan untuk menentukan kesamaan dua artikel.

Faktanya, salah satu tugas hilir BERT yang dievaluasi adalah Quora Question Pairs [5], yang meminta model untuk menentukan apakah dua pertanyaan menanyakan hal yang sama. Jika kita dapat memberi label pada beberapa data secara manual, hasilnya mungkin akan lebih baik lagi.

Cara lain yang lebih efisien (dalam hal perhitungan yang diperlukan) untuk mengukur kesamaan dokumen atau kalimat adalah dengan melakukan sentence embeddings. Berbeda dengan RNN dan variannya (misalnya LSTM dan GRU), mengekstraksi penyematan kalimat dari model transformator tidaklah mudah (lihat diskusi ini).

Kode sumber

Kode ini didasarkan pada implementasi BERT PyTorch oleh Hugging Face:



Parameter model yang telah dilatih sebelumnya berasal dari implementasi Tensorflow resmi dari Google:



Notebook Jupyter yang digunakan untuk posting ini:



Buku catatan tersebut menggunakan beberapa fungsi prapemrosesan dari contoh skrip untuk penyesuaian klasifikasi kalimat.

Referensi

  1. Devlin, J., Chang, M.-W., Lee, K., & Toutanova, K. (2018). BERT: Pra-pelatihan Transformator Dua Arah Mendalam untuk Pemahaman Bahasa.
  2. Howard, J., & Ruder, S. (2018). Penyempurnaan Model Bahasa Universal untuk Klasifikasi Teks.
  3. Radford, A., & Salimans, T. (2018). Meningkatkan Pemahaman Bahasa dengan Pra-Pelatihan Generatif.
  4. "A. Vaswani, N. Shazeer, N. Parmar, J. Uszkoreit, L. Jones, A. N. Gomez, Ł. Kaiser, dan I. Polosukhin. (2017). Yang Anda perlukan hanyalah perhatian.”
  5. “Z. Chen, H.Zhang, X.Zhang, dan L.Zhao. 2018. Pasangan pertanyaan Quora.»

Pembaruan 23/03/2019

Berikut adalah proyek luar biasa yang menggunakan BERT untuk menghasilkan penyematan kalimat dan menyajikan model dalam skala:



Pos terkait



(Postingan ini juga dipublikasikan di blog pribadi saya.)