ดูเหมือนว่ามาตรฐานในแพคเกจเครือข่ายนิวรัลจำนวนมากเพื่อจับคู่ฟังก์ชั่นวัตถุประสงค์ที่จะย่อเล็กสุดด้วยฟังก์ชั่นการเปิดใช้งานในชั้นเอาท์พุท
ยกตัวอย่างเช่นสำหรับชั้นเอาท์พุทเชิงเส้นที่ใช้สำหรับการถดถอยมันเป็นมาตรฐาน (และมักจะเป็นทางเลือกเท่านั้น) ที่จะมีฟังก์ชั่นวัตถุประสงค์ข้อผิดพลาดกำลังสอง การจับคู่ปกติอีกอย่างหนึ่งคือการส่งออกและการสูญเสียบันทึก (หรือข้ามเอนโทรปี) และอีกอย่างคือ softmax และการสูญเสียบันทึกหลาย
ใช้สัญลักษณ์ สำหรับค่าการเปิดใช้งานล่วงหน้า (ผลรวมของการเปิดใช้งานน้ำหนักครั้งจากเลเยอร์ก่อนหน้า) สำหรับการเปิดใช้งาน สำหรับความจริงภาคพื้นดินที่ใช้สำหรับการฝึกอบรม สำหรับดัชนีของเซลล์ประสาทขาออก
การเปิดใช้งานเชิงเส้น เกิดข้อผิดพลาดกำลังสอง
การเปิดใช้งาน Sigmoid ไปกับวัตถุประสงค์ logloss / cross-entropy
การเปิดใช้งาน Softmax ไปกับวัตถุประสงค์ของการบันทึกหลายคลาส
นี่คือสิ่งที่ฉันรู้และฉันคาดหวังว่าจะมีหลายอย่างที่ฉันยังไม่เคยได้ยิน
ดูเหมือนว่าการสูญเสียบันทึกจะทำงานและมีเสถียรภาพเชิงตัวเลขเมื่อเอาต์พุตและเป้าหมายอยู่ในช่วง [0,1] ดังนั้นจึงไม่สมเหตุสมผลที่จะลองเลเยอร์เอาต์พุตเชิงเส้นด้วยฟังก์ชันวัตถุประสงค์ logloss เว้นแต่จะมีฟังก์ชั่น logloss ทั่วไปที่สามารถจัดการกับค่าของ ที่อยู่นอกช่วง?
อย่างไรก็ตามมันไม่ได้เลวร้ายนักที่จะลองใช้ sigmoid output โดยมีวัตถุประสงค์ข้อผิดพลาดกำลังสอง มันควรจะมีเสถียรภาพและบรรจบกันอย่างน้อย
ฉันเข้าใจว่าการออกแบบบางอย่างที่อยู่เบื้องหลังการจับคู่เหล่านี้คือมันทำให้สูตรสำหรับ - ที่ไหน คือค่าของฟังก์ชั่นวัตถุประสงค์ - ง่ายสำหรับการขยายพันธุ์ด้านหลัง แต่มันก็ยังคงเป็นไปได้ที่จะหาอนุพันธ์นั้นโดยใช้คู่อื่น ๆ นอกจากนี้ยังมีฟังก์ชั่นการเปิดใช้งานอื่น ๆ อีกมากมายที่ไม่ได้เห็นกันทั่วไปในเลเยอร์เอาท์พุท แต่เป็นไปได้เช่นtanh
และที่ไม่ชัดเจนว่าฟังก์ชั่นวัตถุประสงค์สามารถใช้งานได้
มีสถานการณ์ใดบ้างในการออกแบบสถาปัตยกรรมของโครงข่ายประสาทที่คุณต้องการหรือควรใช้การจับคู่ "ไม่ได้มาตรฐาน" ของการเปิดใช้งานเอาต์พุตและฟังก์ชันวัตถุประสงค์