파티션 모델링: 최소 크기 분할을 지시하는 것은 무엇입니까?저는 사실상의 통계학자는 아니지만 주로 JMP의 표준 버전(현재 v13)을 사용한 덕분에 수년 동안 생물 통계학 분야에서 많은 경험을 쌓았습니다. 나는 확실히 다른 것을 사용하는 것을 상상할 수 없으며 정기적으로 홍보합니다.
저는 현재 이항 범주 변수(실패 대 통과)에서 결과를 최적화하기 위해 다양한 연속 변수에서 파티션을 점진적으로 정의하고 있습니다. 나는 이 플랫폼에 관해 많은 것을 읽고 보았으며 검증을 포함하고 공변량의 수를 실용적이지만 논리적인 짧은 목록으로 제한해야 할 필요성을 이해합니다.
그러나 최소 크기 분할은 확실하지 않은 매개 변수 중 하나입니다. 내 의도는 결과 변수의 실패를 최소화하거나 완전히 완화하는 파티션을 정의하는 것입니다. 결과 파티션은 선택한 최소 분할 크기/비율에 크게 의존하는 것 같습니다. 내 느낌은 각 분할에 의해 생성되는 LogWorth 값을 주시하면서 가능한 한 큰 크기(50%를 향해 노력)를 선택해야 한다는 것입니다. 너무 작은 분할 크기는 유형 II 오류의 위험이 있는 것과 유사할 수 있다고 생각합니다. 그렇다면 내가 제안한 것 외에 사용할 비율을 어떻게 결정합니까?
또한 분할 모델이 다중 비교에 대한 수정을 고려하지 않는다고 가정하고 있는데, 결과 분할을 저장하고 2x2 비상 분석을 수행할 때 초기 분할에 대한 LogWorth 등가 p-값이 Fisher의 정확 결과와 일치하지 않는 이유는 무엇입니까?
해석학Re: 파티션 모델링: 최소 크기 분할을 규정하는 것은 무엇입니까?친애하는 DS
다시 한 번 가장 유용한 답변에 감사드립니다. 나는 Filemaker에서 프로그래머로서 꽤 성취했음에도 불구하고 JSL을 실제로 탐구한 적이 없다는 것을 인정해야 합니다. R^2와 관련하여 나는 그것을 알고 있었고 이 계수와 관련하여 분할 기록을 확실히 모니터링합니다. 운 좋게도 유효성 검사를 위해 제외된 행을 약간 공개적으로 사용하는 것을 우연히 발견했습니다. 이는 정상 작동 중에 사용되는 것과 가장 직관에 반하는 것처럼 보였습니다.
Re: 파티션 모델링: 최소 크기 분할을 규정하는 것은 무엇입니까?안녕 @34남쪽 ,
XGBoost는 정말 강력하고 매우 안정적입니다. 여러 번 다시 실행하면 동일한 대답을 얻습니다. 부트스트랩 포리스트 또는 부스트된 트리의 경우 항상 그런 것은 아닙니다.
나는 이것을 찾았다 웹사이트 XGBoost를 조정하고 모델을 개선하는 방법에 매우 도움이 됩니다. 그리고 Python을 실행하는 사람들을 위해 작성되었으므로 시작하는 것이 좋습니다.
일부 프로세스를 자동화하고 감독 없이 실행할 수 있도록 적합한 루틴을 스크립팅하는 것을 고려해 보셨습니까? 장기적으로는 더 빠를 수도 있습니다. 저는 JMP에서 다른 트리 기반 플랫폼에 대한 조정 매개변수 공간을 검색할 때 그렇게 합니다. 종종 30k 이상의 계산을 실행합니다. 플랫폼에 따라 8~10시간 정도 걸릴 수 있지만 다른 작업을 하는 동안 그냥 실행되도록 둡니다.
훈련 및 검증을 위해 R^2를 모니터링하여 데이터를 과대적합하지 않도록 해야 합니다. 지금 몇 가지 모델을 실행하려고 하지만 지금까지 Neural Net 및 GenReg 플랫폼을 사용하여 훈련 세트보다 검증 세트에 대해 더 큰 R^2로 돌아오고 있음을 발견했습니다. 이는 큰 경고입니다. 징후. 개인적으로는 제가 가지고 있는 데이터셋과 데이터의 고도로 비정규 분포 때문이라고 생각합니다.
테스트 데이터 세트를 별도로 설정하는 것에 대한 한 가지 좋은 점은 적합을 실행할 때 JMP가 액세스할 수 있는 방법이 없도록 교육 데이터 테이블에서 해당 데이터를 실제로 제거한다는 것입니다. 그 전에는 특정 행을 숨기고 제외했지만 교차 유효성 검사 중에 데이터가 계속 사용되었으므로 테스트 데이터 세트에 대한 실제 플롯과 예측 플롯을 비교할 때 실제보다 더 좋아 보였습니다. 테스트 데이터가 교육에 사용되었습니다.
DS
Re: 파티션 모델링: 최소 크기 분할을 규정하는 것은 무엇입니까?친애하는 DS
자세한 답변 감사합니다. 안타깝게도 Pro 버전($$$)이 없습니다. 중간에 내가 취한 접근 방식은 유효성 검사를 위해 20%를 지정한 다음 45% 최소 크기 분할로 시작하는 것이었습니다. 그것이 실패하면 분할을 달성할 때까지 5%에서 40%로 줄입니다. 그런 다음 1% 상향 증분으로 미세 조정하지만 LogWorth 값이 의미를 나타내는 위치로 제한합니다. 또는 분할에 의해 정의된 결과 하위 집합 중 하나에 실패한 사례의 100%를 배치하기 위해 분할을 원래 집합의 실패 수 또는 조금 더 높게 설정합니다. 나는 테스트 세트에 관한 귀하의 주장을 받아들이고 유효성 검사 및 교육을 위해 충분한 숫자가 남아 있다면 그렇게 하려고 노력할 것입니다. Python을 설치한 후 XGBoost를 시도했지만 작동하도록 학습 곡선이 있습니다.
Re: 파티션 모델링: 최소 크기 분할을 규정하는 것은 무엇입니까?안녕 @34남쪽 ,
JMP Pro가 있거나 JMP Pro에 액세스할 수 있습니까? 파티션 플랫폼이 예측 공식을 생성하는 데 가장 좋은(가장 안정적인) 접근 방식이 아니기 때문에 묻습니다. Boosted Tree 및 Boostrap Forest 플랫폼이 훨씬 좋습니다. 또는 상위 버전에 대한 액세스 권한이 있는 경우 매우 안정적인 XGBoost 플랫폼을 실행할 수도 있습니다.
그러나 최소 크기 분할에 대한 귀하의 질문에. 최소 크기 분할은 트리 "그루터기"의 복잡성을 제어합니다. 분할의 관찰 수가 설정한 값보다 적으면 분할이 생성되지 않습니다. 의사 결정 트리에서 부스팅을 사용할 때 그다지 관련이 없지만 제어하는 데 사용할 수 있습니다. 너무 작은 것(예: 1개의 관찰)도 원하지 않고 너무 큰 것(예: 1000개의 관찰)도 원하지 않습니다. 좋은 일반적인 시작 지점은 간단한 트리 방법의 경우 약 5입니다. 부트스트랩 포리스트 플랫폼과 같은 것을 사용하는 경우 사용 중인 것과 같은 분류 체계에 N/2를 사용하는 것이 좋습니다. 여기서 N은 관찰 수입니다. 이 매개변수를 조정한 다음 테스트 데이터 세트에서 다른 모델과 비교하여 모델을 조정할 수 있습니다.
충분한 데이터가 있는 경우 20~25% 정도의 일부를 분리하고 모델을 교육하거나 검증하는 데 사용되지 않는 테스트 데이터 세트로 유지하는 것이 좋습니다. 나머지 데이터로 학습 및 검증 데이터(예: 80/20)가 포함된 계층화된 검증 열을 생성하여 모델의 복잡성을 최적화하는 동시에 과적합을 방지할 수 있습니다. 여러 모델을 생성한 후 이전 테스트 데이터를 사용하여 실제로 결과를 올바르게 예측하는 데 더 나은 모델을 비교하는 방법으로 사용할 수 있습니다. 이진 결정 모델을 찾고 있으므로 비용에 민감한 학습을 살펴봄으로써 더 최적화할 수도 있습니다.
저는 JMP가 로그 값이나 Fischer의 정확한 테스트를 계산하는 방법에 대한 전문가가 아니므로 JMP의 누군가가 대답할 수 있기를 바랍니다. 분할 수식과 우발 사태 테이블을 수행하십시오.
이것이 도움이 되기를 바랍니다. 또는 적어도 생각할 수 있는 몇 가지 사항을 제공합니다.
행복한 모델링!,
DS