Menggunakan model MALSTM (jaringan Siam + LSTM dengan jarak manhattan) untuk mendeteksi kesamaan semantik antara pasangan pertanyaan. Dataset pelatihan yang digunakan adalah subset dari dataset pasangan pertanyaan Quora asli (~ 363K pair yang digunakan).
Ini adalah implementasi Keras berdasarkan Paper Asli (PDF) dan artikel Medium yang sangat baik.
Kaggle's test.csv terlalu besar, jadi saya hanya mengekstraksi 20 pertanyaan teratas dan membuat file yang disebut test-20.csv dan digunakan dalam predict.py .
Anda harus meletakkan semua file data ke ./data Directory.
$ python3 train.py
Ini menggunakan file test-20.csv yang disebutkan di atas.
$ python3 predict.py
Saya telah mencoba dengan berbagai parameter seperti jumlah status tersembunyi sel LSTM, fungsi aktivasi sel LSTM dan jumlah zaman berulang. Saya telah menggunakan NVIDIA TESLA P40 GPU X 2 untuk pelatihan dan 10% data digunakan sebagai set validasi (ukuran batch = 1024*2). Akibatnya, saya telah mencapai akurasi sekitar 82,29% setelah 50 zaman sekitar 10 menit kemudian.
Epoch 50/50
363861/363861 [==============================] - 12s 33us/step - loss: 0.1172 - acc: 0.8486 - val_loss: 0.1315 - val_acc: 0.8229
Training time finished.
50 epochs in 601.24