부분 의존도, GBM 다항식

Sep 27 2020

내가 사용하고 GBM의 다항 가족과 함께 그라데이션 증폭 모델을 만들 패키지를. 이러한 유형의 모델을 사용하여 부분 종속성 플롯을 플로팅하고 해석하는 데 문제가 있습니다.

예 :

library(gbm)
data(iris)
GBM.model = gbm(Species ~ Sepal.Length + Sepal.Width + Petal.Length + Petal.Width, data = iris,distribution = "multinomial")
plot.gbm(GBM.model, "Petal.Length")

다음 플롯을 얻습니다.

줄거리를 개선하고 해석하도록 도와 주시겠습니까? 응답 변수의 각 범주에 대해 줄이 있어야한다고 생각하지만 확실하지 않습니다. 다항 gbm 모델에 대한 부분 종속성 플롯을 얻는 다른 방법이 있습니까? 나는 이것에 대한 도움을 주시면 감사하겠습니다

답변

1 usεr11852 Sep 27 2020 at 19:45

현재 (2020 년 9 월) gbm명확한 경고를 여기서 언급 할 가치가 있다고 생각 합니다.Setting 'distribution = "multinomial"' is ill-advised as it is currently broken. It exists only for backwards compatibility. Use at your own risk.

어쨌든 패키지를 통해 부분 종속성 플롯을 얻을 수 있습니다 pdp. 예 : partial(GBM.model, "Petal.Length", n.trees=100, which.class = 2, plot = TRUE, prob = TRUE)). which.class논쟁에 유의하십시오 . 공급하지 않으면 클래스 1 ( setosa) 만받습니다 .

그 정도까지 첨부 한 그래프를 기반으로 gbm.plot. 함수 나타날 동일한 그래프를 세 클래스 관련 부분 종속성 그래프를 플롯 한 것으로 하고 , 다음 클래스의 PDP의 개시와 각 클래스 별 PDP의 단부를 연결하는 데. 그렇기 때문에 (7, -10)에서 (1,0)까지 그리고 (-7, -2)에서 (-3,1)까지의 긴 직선이 있습니다. PDP를 연결합니다. 마지막으로 분류를 위해 PDP를 플로팅 할 때 확률 (즉, 응답) 척도에 PDP를 플로팅하는 것이 일반적으로 더 많은 정보를 제공합니다. y 축의 (-10,10) 척도는 물류 척도의 값에 해당하며 정보를 제공하는 반면 최종 분류에 미치는 영향이 명확하지 않습니다.