2
SVM ที่มีขนาดกลุ่มไม่เท่ากันในข้อมูลการฝึกอบรม
ฉันกำลังพยายามสร้าง SVM จากข้อมูลการฝึกอบรมซึ่งมีกลุ่มหนึ่งแสดงมากกว่ากลุ่มอื่น อย่างไรก็ตามกลุ่มจะถูกนำเสนออย่างเท่าเทียมกันในข้อมูลการทดสอบในที่สุด ดังนั้นฉันต้องการใช้class.weightsพารามิเตอร์ของe1071ส่วนต่อประสาน R libsvmเพื่อความสมดุลระหว่างอิทธิพลของทั้งสองกลุ่มในข้อมูลการฝึกอบรม เนื่องจากฉันไม่แน่ใจว่าจะระบุน้ำหนักเหล่านี้ได้อย่างไรฉันจึงทำการทดสอบเล็กน้อย: สร้างข้อมูลที่มีค่าว่างบางส่วน (คุณสมบัติแบบสุ่มอัตราส่วน 2: 1 ระหว่างป้ายกำกับกลุ่ม) พอดี svm ด้วยclass.weightsชุดพารามิเตอร์ ทำนายชุดข้อมูลว่างใหม่จำนวนหนึ่งและดูสัดส่วนของคลาส ทำซ้ำกระบวนการทั้งหมดหลายครั้งสำหรับชุดการฝึกอบรมแบบ null ที่แตกต่างกัน นี่คือรหัส R ที่ฉันใช้: nullSVM <- function(n.var, n.obs) { # Simulate null training data vars = matrix(rnorm(n.var*n.obs), nrow=n.obs) labels = rep(c('a', 'a', 'b'), length.out=n.obs) data = data.frame(group=labels, vars) # Fit SVM …
12
r
machine-learning
svm