หากเราติดตั้ง glmer อีกครั้งเราอาจได้รับคำเตือนที่บอกเราว่าแบบจำลองกำลังค้นหาช่วงเวลาที่ยากลำบากในการบรรจบกัน ... เช่น
>Warning message:
In checkConv(attr(opt, "derivs"), opt$par, ctrl = control$checkConv, :
Model failed to converge with max|grad| = 0.00389462 (tol = 0.001)
อีกวิธีในการตรวจสอบการสนทนาที่กล่าวถึงในหัวข้อนี้โดย @Ben Bolker คือ:
relgrad <- with(model@optinfo$derivs,solve(Hessian,gradient))
max(abs(relgrad))
#[1] 1.152891e-05
ถ้าmax(abs(relgrad))
เป็นเช่น<0.001
นั้นสิ่งที่อาจจะตกลง ... ดังนั้นในกรณีนี้เรามีผลลัพธ์ที่ขัดแย้งกัน? เราควรเลือกระหว่างวิธีการและรู้สึกปลอดภัยกับแบบจำลองของเราอย่างไร
ในทางกลับกันเมื่อเราได้รับค่าสุดโต่งเช่น:
>Warning message:
In checkConv(attr(opt, "derivs"), opt$par, ctrl = control$checkConv, :
Model failed to converge with max|grad| = 35.5352 (tol = 0.001)
relgrad <- with(model@optinfo$derivs,solve(Hessian,gradient))
max(abs(relgrad))
#[1] 0.002776518
นี่หมายความว่าเราต้องเพิกเฉยต่อผลลัพธ์ / การประมาณค่า / ค่า p ของแบบจำลองหรือไม่? 0.0027 ใหญ่เกินไปที่จะดำเนินการต่อหรือไม่
เมื่อเครื่องมือเพิ่มประสิทธิภาพที่แตกต่างกันให้ผลลัพธ์ที่แตกต่างกันและการตั้งศูนย์ตัวแปร / เอาพารามิเตอร์ (การปอกโมเดลลงไปต่ำสุด) ไม่ช่วย แต่ VIFs ต่ำรุ่นที่ไม่กระจายตัวเกินไปและผลลัพธ์ของโมเดลทำให้รู้สึกสมเหตุสมผล สิ่งที่ต้องทำ
คำแนะนำเกี่ยวกับวิธีการตีความปัญหาการบรรจบกันวิธีที่รุนแรงที่สุดที่พวกเขาต้องการคือการทำให้เราเป็นกังวลและวิธีที่เป็นไปได้ที่จะลองจัดการพวกเขานอกเหนือจากที่กล่าวถึงจะมีประโยชน์มาก
ใช้:
R version 3.1.0 (2014-04-10)
และlme4_1.1-6
lme4
(เวอร์ชั่น 1.1-7) มีพฤติกรรมการเตือนที่แตกต่างกันซึ่งผู้เขียนเชื่อว่ามีแนวโน้มน้อยกว่าที่จะให้คำเตือน "เตือนภัยที่ผิดพลาด" คุณอาจลองอัปเดตlme4
เป็นรุ่นใหม่ล่าสุดติดตั้งโมเดลอีกครั้งและดูว่าคุณยังได้รับคำเตือนที่คล้ายกันอย่างน้อยในกรณีแรก