การเลือกพารามิเตอร์ SVM


9

มีวิธีอื่นที่ดีกว่าในการเลือก C และ Gamma ที่ให้ประสิทธิภาพการฝึกที่ดีขึ้นหรือไม่

คำตอบ:


5

การค้นหากริดช้าเนื่องจากใช้เวลามากในการตรวจสอบการตั้งค่าพารามิเตอร์ไฮเปอร์ซึ่งไม่ได้อยู่ใกล้ที่เหมาะสมที่สุด ทางออกที่ดีกว่าคืออัลกอริธึมของNelder-Mead simplexซึ่งไม่ต้องการการคำนวณข้อมูลการไล่ระดับสีและเป็นวิธีที่ง่ายต่อการติดตั้ง (ควรมีข้อมูลเพียงพอในหน้า Wikipedia) อาจมีบางรหัสจาวาในกล่องเครื่องมือ Wekaแต่ฉันทำงานใน MATLAB และไม่ได้ดู Weka ในรายละเอียดที่ยอดเยี่ยม

SMO เป็นอัลกอริทึมสำหรับค้นหาพารามิเตอร์โมเดลแทนที่จะเป็นพารามิเตอร์ไฮเปอร์


คุณให้การใช้งาน matlab ของคุณได้หรือไม่?
Zach

1
มีอยู่ที่นี่theoval.cmp.uea.ac.uk/matlab/#optimแต่ถ้าคุณมีกล่องเครื่องมือเพิ่มประสิทธิภาพแล้ว fminsearch ยังเป็นการใช้งานของวิธี Nelder-Mead IIRC
Dikran Marsupial

5

วิธี Nelder-Mead simplex สามารถเกี่ยวข้องกับการประเมินฟังก์ชั่นได้มากเท่ากับการค้นหากริดแบบง่าย ๆ โดยปกติแล้วพื้นผิวข้อผิดพลาดจะราบรื่นพอใกล้กับค่าพารามิเตอร์ที่ดีที่สุดที่การค้นหากริดแบบหยาบตามด้วยค่าปลีกย่อยในพื้นที่ขนาดเล็กควรเพียงพอ

หากคุณสนใจในการเพิ่มประสิทธิภาพ C และแกมม่าที่มีการไล่ระดับสีมีวิธีการต่าง ๆ เช่นการปรับขอบเขตขอบรัศมีหรือปรับอัตราความผิดพลาดให้เหมาะสมในชุดการตรวจสอบความถูกต้อง การคำนวณการไล่ระดับสีของฟังก์ชั่นวัตถุประสงค์เกี่ยวข้องกับบางอย่างเช่นรถไฟ SVM หนึ่งคัน แต่การไล่ระดับสีอย่างง่ายอาจเกี่ยวข้องกับการทำซ้ำเพียงไม่กี่โหล (ดูที่http://olivier.chapelle.cc/ams/สำหรับบทความและการนำ Matlab มาใช้)


จากประสบการณ์ของฉันเนลเดอร์มี้ดมักจะเร็วกว่าการค้นหากริดและการไล่ระดับสีจะเร็วขึ้นเพียงเล็กน้อยในขณะที่ใช้เวลาในการคำนวณน้อยกว่าค่าใช้จ่ายในการคำนวณการไล่ระดับสีก็สูง ดังนั้นหากคุณมีการนำไปใช้งานที่ให้การไล่ระดับสีแบบค่อยเป็นค่อยไปให้ใช้มัน แต่ Nelder-Mead อาจจะไม่ไกลนัก แน่นอนทันทีที่คุณมีพารามิเตอร์ไฮเปอร์มากกว่าสองตัวเพื่อปรับแต่งการค้นหากริดในทันทีจะกลายเป็นวิธีที่ช้าที่สุด มันจะน่าสนใจที่จะเห็นการศึกษาเปรียบเทียบประสิทธิภาพของแต่ละวิธี
Dikran Marsupial

คุณพูดถูกว่าหากจำนวนพารามิเตอร์มากกว่าสองเท่าการค้นหากริดจะไม่สามารถทำได้ แต่สิ่งนี้เหมือนกันกับ Nelder-Mead เนื่องจากขนาดของ simplex นั้นถูกกำหนดโดยมิติข้อมูล
Innuo

เฉพาะในระดับเดียวกับการไล่ระดับสีแบบลาดชันการเพิ่มมิติพิเศษให้กับปัญหานั้นเพิ่มจุดพิเศษเพียงจุดเดียวให้กับเริมเช่นเดียวกับการไล่ระดับสีแบบลาดชันซึ่งมีการสเกลเชิงเส้นตรงในจำนวนพารามิเตอร์ไฮเปอร์ ฉันเคยใช้กับปัญหากับพารามิเตอร์ไฮเปอร์ 40+ และมันช้ากว่าการไล่ระดับสีเพียงเล็กน้อย (คุณมักจะได้รับการปรับให้เหมาะสมมากขึ้นในการเลือกรุ่นด้วยวิธีใดวิธีหนึ่งแม้ว่าจะมีพารามิเตอร์ไฮเปอร์หลายตัว)
Dikran Marsupial

0

นี่คือรายการในบล็อกของ Alex Smolaที่เกี่ยวข้องกับคำถามของคุณ

นี่คือคำพูด:

[... ] เลือกพูด 1,000 คู่ (x, x ') โดยการสุ่มจากชุดข้อมูลของคุณคำนวณระยะทางของคู่ดังกล่าวทั้งหมดและใช้ค่ามัธยฐาน, 0.1 และ 0.9 quantile ทีนี้เลือกλเป็นค่าผกผันของสามตัวเลขเหล่านี้ ด้วย crossvalidation เล็กน้อยคุณจะเข้าใจว่าหนึ่งในสามนั้นดีที่สุด ในกรณีส่วนใหญ่คุณไม่จำเป็นต้องค้นหาเพิ่มเติม

โดยการใช้ไซต์ของเรา หมายความว่าคุณได้อ่านและทำความเข้าใจนโยบายคุกกี้และนโยบายความเป็นส่วนตัวของเราแล้ว
Licensed under cc by-sa 3.0 with attribution required.