ขอคำแนะนำDeep learn (cnn+lstm)

สวัสดีค่ะ หนูเพิ่งศึกษาเกี่ยวกับDeep learn ได้ไม่นานแต่มีเหตุให้ต้องทำโปรเจค Facial Expression Regconition (fer)เบสออนวิดีโอ เลยอยากขอคำแนะนำค่ะ

หนูใช้โมเดล cnn ในการดึง local spatial feature และใช้ lstm ในการเรียนรู้เรื่องลำดับเวลาค่ะ

dataset ที่หนูใช้คือ RAVDESS ด้วยความที่ข้อมูลชุดนี้มาเป็นวิดีโอที่ยังไม่ผ่านการ preprocess หนูเลยเลือกเอามาเตรียมโดยการใช้ mtcnn ในการ detect & alignment face เพราะตั้งใจจะใช้ mtcnn ในการใช้งานจริงเพื่อนกำหนด bounding box บนเว็บแคมค่ะ

การเลือกเฟรมหนูทำsliding window เลือก เฟรมที่ movement มากสุดและสุ่มpadding ถ้าไม่ครบ16เฟรม  

จากนั้นครอปเป็น299*299 จำนวน16เฟรม ช่องสีrgb ตัวนี้จุดประสงค์เพื่อลองเทรนกับ Inception Resnetv2 + LSTM (ฟรีซเลเยอร์การเรียนรู้ของ pretrained cnn) แต่ผลลัพธ์ออกมาไม่น่าพอใจค่ะ accในแต่ละepoch ต่ำมาก lossก็ไม่ค่อยลด เนื่องจากขนาดใหญ่และกินvram หนูเลยตัดสินใจหยุดเทรนที่12/50 epoch เพราะไม่คุ้มค่ากับ 6 ชั่วโมงแน่ๆ

คำถามที่หนูสงสัย :

1. ลักษณะของข้อมูลที่ใช้กับlstm ในงาน fer นี่ควรเป็รอย่างไรคะ ควรเป็นแบบไหน เช่น (หน้านิ่ง -> ยิ้ม) หรือภาพจากวิดีโอจริง ซึ่งอาจไม่เรียง และเนื่องจากravdess เป็นข้อมูลที่นักแสดงมีการพูด เฟรมที่ได้บางเฟรมเลยมีลักษณะอารมณ์ไม่ตรงกับลาเบล กรณีนี้หนูควรจัดการอย่างไรคะ

2. ส่วนมากในงานวิจัยงาน cnn+lstm คนชอบใช้ขนาด ของภาพ 224*224 ซึ่งเป็นขนาดที่ใหญ่พอสมควร บางวิจัยใช้ช่องสีrgbอีก หนูสงสัยว่า การใช้ขนาด 48*48 ช่องสีเกรย์สเกล จำนวน10เฟรม มันเพียงพอกับโมเดลcnn standard+lstmไหมคะในด้านประสิทธิภาพ ถ้าเป็นcnnเดี๋ยวๆหนูคงเลือก input shape (48,48,1) อย่างมั่นใจ แต่พอมีlstm มาอีกหนูค่อนข้างสับสนเลยค่ะ



ปล.บางอย่างหนูถามaiหลายตัวแต่ได้คำตอบค่อนข้างหลากหลายเลยค่ะ ลองทำตามวิธีที่aiแนะนำผลลัพทธ์ไม่ใกล้ที่หนูต้องการเท่าไหร่ รู้สึกแก้แล้วผลลัพธ์ไม่ดีขึ้น ถ้าปัญหาไม่อยู่ที่โมเดล ก็คงเป็นเจ้าdatasetนี่แหละค่ะ ถ้าท่านใดผ่านมาเห็นรบกวนด้วยนะคะ ขอบคุณมากเลยค่ะ
แก้ไขข้อความเมื่อ
แสดงความคิดเห็น
โปรดศึกษาและยอมรับนโยบายข้อมูลส่วนบุคคลก่อนเริ่มใช้งาน อ่านเพิ่มเติมได้ที่นี่