Klassifizierung mit einem dominanten Prädiktor

9

Ich habe ein Klassifizierungsproblem ( Klasse) mit etwa 100 reellen Prädiktoren, von denen einer viel mehr Erklärungskraft zu haben scheint als jeder andere. Ich möchte näher auf die Auswirkungen der anderen Variablen eingehen. Standardtechniken des maschinellen Lernens (zufällige Wälder, SVMs usw.) scheinen jedoch von dem einen starken Prädiktor überflutet zu werden und geben mir nicht viele interessante Informationen über die anderen.k

Wenn dies ein Regressionsproblem wäre, würde ich mich einfach gegen den starken Prädiktor zurückbilden und dann die Residuen als Eingaben für andere Algorithmen verwenden. Ich sehe jedoch nicht wirklich, wie dieser Ansatz in einen Klassifizierungskontext übersetzt werden kann.

Mein Instinkt ist, dass dieses Problem einigermaßen häufig sein muss: Gibt es eine Standardtechnik, um damit umzugehen?

Martin O'Leary
quelle

Antworten:

2

Bei Problemen mit zwei Klassen können Sie das GBM- Paket in R verwenden , mit dem Klassifizierungsbäume iterativ an die Residuen der Verlustfunktion angepasst werden. Leider werden Mehrklassenprobleme noch nicht unterstützt.

Dies scheint ein Problem zu sein, das sich gut zum Boosten eignet, aber ich kenne keine Boosting-Pakete, die Probleme der k-Klasse unterstützen. Ich denke, das Problem besteht darin, eine geeignete Verlustfunktion für die mehreren Klassen zu schreiben. Die glmnetPakete haben eine multinomiale Verlustfunktion. Vielleicht können Sie den Quellcode nach einigen Zeigern durchsuchen.

Sie könnten versuchen, Ihren eigenen Boosting-Algorithmus zu schreiben, oder Sie könnten Ihr Problem in k binäre Klassifizierungsprobleme umwandeln (eine Klasse gegenüber allen anderen Klassen), jedem Problem ein GBM-Modell anpassen und die Klassenwahrscheinlichkeiten aus jedem Modell mitteln.

Zach
quelle
2
Zach Ich bin mir nicht sicher, wo es in der Entwicklungsstabilität liegt, aber GBM auf R Forge verfügt über eine multinomiale Logistik als Verlustfunktion, die eine Klassifizierung in mehrere Kategorien ermöglicht.
B_Miner
Vielen Dank! Ich bin damit einverstanden, dass Boosting wahrscheinlich ein guter Weg ist, um dies zu erreichen, und ich werde die von Ihnen vorgeschlagenen Dinge untersuchen. Ich bin immer noch daran interessiert zu wissen, ob es einen guten Weg gibt, dies durch Transformation des Problems anzugehen.
Martin O'Leary
@Zach Bitte lassen Sie mich wissen, wie das funktioniert.
B_Miner