ฉันกำลังทำงานผ่านกระดาษCho 2014ซึ่งนำเสนอสถาปัตยกรรมตัวเข้ารหัส - ถอดรหัสสำหรับการสร้างแบบจำลอง seq2seq
ในกระดาษพวกเขาดูเหมือนจะใช้ความน่าจะเป็นของผลลัพธ์ที่ได้รับอินพุต (หรือเป็นลบบันทึกการเกิดโอกาส) เป็นฟังก์ชั่นการสูญเสียสำหรับอินพุตของความยาวMและเอาท์พุทyของความยาวN :
อย่างไรก็ตามฉันคิดว่าฉันพบปัญหาหลายประการกับการใช้ฟังก์ชันนี้เป็นฟังก์ชันการสูญเสีย:
- ดูเหมือนว่าจะถือว่าครูบังคับให้ใช้ในระหว่างการฝึกอบรม (เช่นแทนที่จะใช้ตัวถอดรหัสสำหรับตำแหน่งในการป้อนข้อมูลในการทำซ้ำครั้งถัดไปจะใช้โทเค็นที่รู้จัก
- มันจะไม่ลงโทษลำดับยาว ๆ เนื่องจากความน่าจะเป็นคือจากถึงNของเอาต์พุตหากตัวถอดรหัสสร้างลำดับที่ยาวกว่าทุกอย่างหลังจากNแรกจะไม่รวมการสูญเสีย
- หากโมเดลทำนายโทเค็น End-of-String ก่อนหน้านี้ฟังก์ชั่นการสูญเสียยังต้องการขั้นตอน - ซึ่งหมายความว่าเรากำลังสร้างเอาต์พุตตาม "นานา" ที่ไม่ได้รับการฝึกฝนของโมเดล ดูเหมือนว่าเลอะเทอะ
ข้อกังวลเหล่านี้ถูกต้องหรือไม่? ถ้าเป็นเช่นนั้นมีความคืบหน้าใด ๆ ในฟังก์ชั่นการสูญเสียขั้นสูงมากขึ้น?