दरअसल, मुझे लगा कि मैं समझ गया था कि आंशिक निर्भरता की साजिश के साथ कोई क्या दिखा सकता है, लेकिन एक बहुत ही सरल काल्पनिक उदाहरण का उपयोग करते हुए, मैं बल्कि हैरान रह गया। कोड की निम्न हिस्सा में मैं तीन स्वतंत्र चर (उत्पन्न एक , ख , ग ) और एक आश्रित चर ( y ) के साथ ग के साथ एक करीबी रैखिक संबंध दिखा y है, जबकि एक और ख के साथ uncorrelated हैं y । मैं आर पैकेज का उपयोग करके एक बढ़ाया प्रतिगमन पेड़ के साथ एक प्रतिगमन विश्लेषण करता हूं gbm
:
a <- runif(100, 1, 100)
b <- runif(100, 1, 100)
c <- 1:100 + rnorm(100, mean = 0, sd = 5)
y <- 1:100 + rnorm(100, mean = 0, sd = 5)
par(mfrow = c(2,2))
plot(y ~ a); plot(y ~ b); plot(y ~ c)
Data <- data.frame(matrix(c(y, a, b, c), ncol = 4))
names(Data) <- c("y", "a", "b", "c")
library(gbm)
gbm.gaus <- gbm(y ~ a + b + c, data = Data, distribution = "gaussian")
par(mfrow = c(2,2))
plot(gbm.gaus, i.var = 1)
plot(gbm.gaus, i.var = 2)
plot(gbm.gaus, i.var = 3)
नहीं आश्चर्यजनक रूप से, चर के लिए एक और ख आंशिक निर्भरता भूखंडों की औसत के आसपास क्षैतिज लाइनों उपज एक । क्या पहेली मुझे चर के लिए साजिश है ग । मैं श्रेणियों के लिए क्षैतिज लाइनों मिल ग <40 और ग > 60 और y- अक्ष का मतलब के करीब मान के लिए प्रतिबंधित है y । चूंकि a और b पूरी तरह से y से असंबंधित हैं (और इस प्रकार मॉडल में चर महत्व 0 है), मुझे उम्मीद थी कि cअपने मूल्यों की एक बहुत ही सीमित सीमा के लिए उस सिग्मॉइड आकृति के बजाय इसकी पूरी सीमा के साथ आंशिक निर्भरता दिखाएगा। मैंने फ्रीडमैन (2001) "लालची फ़ंक्शन सन्निकटन: एक ढाल बूस्टिंग मशीन" और हस्ती एट अल में जानकारी खोजने की कोशिश की। (२०११) "एलिमेंट ऑफ़ स्टैटिस्टिकल लर्निंग", लेकिन इसमें सभी समीकरणों और सूत्रों को समझने के लिए मेरे गणितीय कौशल बहुत कम हैं। इस प्रकार मेरा प्रश्न: वेरिएबल c के लिए आंशिक निर्भरता प्लॉट का आकार क्या निर्धारित करता है ? (कृपया एक गैर-गणितज्ञ के लिए समझदार शब्दों में समझाएं!)
17 अप्रैल 2014 को जोड़ा गया:
प्रतिक्रिया की प्रतीक्षा करते समय, मैंने R- पैकेज के विश्लेषण के लिए उसी उदाहरण डेटा का उपयोग किया randomForest
। रैंडम फ़ॉरस्टेस्ट की आंशिक निर्भरता भूखंडों से बहुत कुछ मिलता जुलता है जो मुझे gbm भूखंडों से उम्मीद थी: व्याख्यात्मक चरों की आंशिक निर्भरता a और b यादृच्छिक रूप से और लगभग 50 भिन्न होती है, जबकि व्याख्यात्मक चर c अपनी पूरी सीमा (और लगभग) पर आंशिक निर्भरता दिखाता है y की पूरी श्रृंखला )। क्या में आंशिक निर्भरता भूखंडों के इन अलग अलग आकार के लिए कारण हो सकते हैं gbm
और randomForest
?
यहाँ भूखंडों की तुलना करने वाला संशोधित कोड:
a <- runif(100, 1, 100)
b <- runif(100, 1, 100)
c <- 1:100 + rnorm(100, mean = 0, sd = 5)
y <- 1:100 + rnorm(100, mean = 0, sd = 5)
par(mfrow = c(2,2))
plot(y ~ a); plot(y ~ b); plot(y ~ c)
Data <- data.frame(matrix(c(y, a, b, c), ncol = 4))
names(Data) <- c("y", "a", "b", "c")
library(gbm)
gbm.gaus <- gbm(y ~ a + b + c, data = Data, distribution = "gaussian")
library(randomForest)
rf.model <- randomForest(y ~ a + b + c, data = Data)
x11(height = 8, width = 5)
par(mfrow = c(3,2))
par(oma = c(1,1,4,1))
plot(gbm.gaus, i.var = 1)
partialPlot(rf.model, Data[,2:4], x.var = "a")
plot(gbm.gaus, i.var = 2)
partialPlot(rf.model, Data[,2:4], x.var = "b")
plot(gbm.gaus, i.var = 3)
partialPlot(rf.model, Data[,2:4], x.var = "c")
title(main = "Boosted regression tree", outer = TRUE, adj = 0.15)
title(main = "Random forest", outer = TRUE, adj = 0.85)