Ich habe gelernt, dass wir mit vif()der carPackage- Methode den Grad der Multikollinearität von Eingaben in einem Modell berechnen können. Von wikipedia , wenn der vifWert größer als 5dann können wir davon ausgehen , dass die Eingabe von multicollinearity Problem leidet. Ich habe zum Beispiel ein lineares Regressionsmodell mit der lm()Methode entwickelt und vif()gibt Folgendes aus. Wie wir sehen können, die Eingänge ub, lbund tbwerden von multicollinearity leiden.
vif(lrmodel)
tb ub lb ma ua mb sa sb
7.929757 50.406318 30.826721 1.178124 1.891218 1.364020 2.113797 2.357946
Um das Multikollinearitätsproblem zu vermeiden und damit mein Modell robuster zu machen, habe ich die folgenden Interaktionen zwischen ubund vorgenommen lb, und nun lautet die vif-Tabelle des neuen Modells wie folgt:
tb ub:lb ma mb sa sb ua
1.763331 1.407963 1.178124 1.327287 2.113797 1.860894 1.891218
In R^2beiden Fällen gibt es keinen großen Unterschied in den Werten und auch keinen großen Unterschied in den Fehlern von Ein-Auslass-CV-Tests.
Meine Fragen sind:
Ist es in Ordnung, das Multikollinearitätsproblem zu vermeiden, indem die oben gezeigte Interaktion verwendet wird?
Gibt es eine schönere Möglichkeit, das Multikollinearitätsproblem im Vergleich zu den obigen Ergebnissen der vif-Methode darzustellen?
Bitte machen Sie mir Ihre Vorschläge.
Vielen Dank.