การใช้โมเดล MALSTM (Siamese Networks + LSTM กับระยะทางแมนฮัตตัน) เพื่อตรวจจับความคล้ายคลึงกันทางความหมายระหว่างคู่คำถาม ชุดข้อมูลการฝึกอบรมที่ใช้เป็นชุดย่อยของชุดข้อมูลคู่คำถาม quora ดั้งเดิม (ใช้คู่ 363K)
มันคือการใช้งาน Keras ตามบทความต้นฉบับ (PDF) และบทความขนาดกลางที่ยอดเยี่ยม
test.csv ของ Kaggle CSV มีขนาดใหญ่เกินไปดังนั้นฉันจึงแยกคำถาม 20 ข้อเท่านั้นและสร้างไฟล์ที่เรียกว่า test-20.csv และใช้ใน predict.py
คุณควรนำไฟล์ข้อมูลทั้งหมดไปที่ ./data data ไดเรกทอรี
$ python3 train.py
มันใช้ไฟล์ test-20.csv ที่กล่าวถึงข้างต้น
$ python3 predict.py
ฉันได้ลองใช้พารามิเตอร์ต่าง ๆ เช่นจำนวนสถานะที่ซ่อนอยู่ของเซลล์ LSTM, ฟังก์ชั่นการเปิดใช้งานของเซลล์ LSTM และจำนวนยุคซ้ำ ฉันใช้ Nvidia Tesla P40 GPU x 2 สำหรับการฝึกอบรมและใช้ข้อมูล 10% เป็นชุดการตรวจสอบ (ขนาดแบทช์ = 1024*2) เป็นผลให้ฉันมีความแม่นยำประมาณ 82.29% หลังจาก 50 ยุคประมาณ 10 นาทีต่อมา
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