ใช่คุณสามารถใช้เทคนิคการเรียนรู้ลึกเพื่อประมวลผลข้อมูลที่ไม่ใช่รูปภาพ อย่างไรก็ตามคลาสอื่น ๆ ยังคงมีการแข่งขันสูงกับเครือข่ายประสาทเทียมนอกเหนือจากการประมวลผลสัญญาณและงานที่เกี่ยวข้อง
หากต้องการใช้วิธีการเรียนรู้แบบลึกเกี่ยวกับข้อมูลที่ไม่ใช่สัญญาณ / ไม่ใช่ลำดับคุณจะต้องใช้เครือข่ายหลายเลเยอร์การส่งต่ออย่างง่าย ไม่จำเป็นต้องมีเลเยอร์ convolutional หรือ pooling layer สถาปัตยกรรมที่ดีที่สุดนอกเหนือจากนั้นจะต้องสำรวจด้วยการตรวจสอบข้ามและอาจใช้เวลานานในการค้นพบเนื่องจาก NN ที่ลึกต้องใช้การคำนวณจำนวนมากในการฝึกอบรม
จากประสบการณ์ของฉันที่พยายามใช้โครงข่ายประสาทที่มีความลึก (- ปกติโดยทั่วไป ~ 5 ชั้น) ในการแข่งขัน Kaggle:
การออกกลางคันยังคงมีประสิทธิภาพสูงสำหรับการทำให้เป็นปกติและการปรับปรุงความแม่นยำ
การทำให้เป็นมาตรฐานการป้อนข้อมูล - โดยปกติหมายถึง 0, มาตรฐาน deviaton 1 เป็นสิ่งสำคัญ
ฟังก์ชันการเปิดใช้งานเลเยอร์ที่ซ่อนอยู่สามารถสร้างความแตกต่างได้ แม้ว่า ReLU จะลดปัญหาบางอย่างเกี่ยวกับการไล่ระดับสีที่หายไป แต่จากประสบการณ์ของฉันมันมีความทนทานน้อยกว่าด้วยข้อมูลที่ไม่ใช่สัญญาณและคุณจะต้องการรูปแบบอื่น หากคุณมีเพียงไม่กี่ชั้น sigmoid หรือ tanh ก็ยังใช้ได้ มิฉะนั้นดูเป็น ReLU, PReLU, ELU และตัวแปรอื่น ๆ ของ ReLU ที่พยายามแก้ไขปัญหากับเซลล์ประสาท "ตาย"
ใช้ประโยชน์จากเครื่องมือเพิ่มประสิทธิภาพที่ออกแบบมาเพื่อการเรียนรู้อย่างลึกซึ้งเช่น Adam, Adagrad หรือ RMSProp
ใช้วิธีการกำหนดน้ำหนักเริ่มต้นที่ทำงานกับการเรียนรู้อย่างลึกซึ้งเช่น Glorot
พิจารณาใช้เลเยอร์การทำให้เป็นมาตรฐานแบทช์ ไม่ใช่สิ่งที่ฉันมีประสบการณ์มาก แต่ฉันเห็นคนอื่นทำได้ดีด้วยวิธีนี้
แม้จะมีทั้งหมดนี้ XGBoost สามารถเอาชนะ NN ลึก ๆ เป็นประจำและง่ายดายด้วยการปรับแต่งและความพยายามในการฝึกอบรมน้อยที่สุดในการเปรียบเทียบ (ขึ้นอยู่กับปัญหาและข้อมูลที่คุณมี) หากความแม่นยำเป็นทุกสิ่งสำหรับคุณ แต่ก็เป็นไปได้ - แม้ว่าจะไม่รับประกันว่าชุดของ NN ที่ลึกและรุ่นอื่น ๆ เช่น XGBoost จะทำงานได้ดีกว่าแบบเดี่ยว ๆ