계급 부족이란 무엇이며 어떻게 처리합니까?


87

사용하여 로지스틱 회귀 피팅 lme4가 로 끝을

Error in mer_finalize(ans) : Downdated X'X is not positive definite. 

이 오류의 가능한 원인은 명백히 순위 부족입니다. 계급 부족이란 무엇이며 어떻게 해결해야합니까?


2
변수가 상수가 아닌지 확인하십시오 (예 : 분산 없음). 그 점수가 괜찮다면 복잡한 값 변수가 있는지 무한 변수가 있는지 확인하십시오.
tristan

3
일반적으로 문제가되는 변수가 다른 변수의 조합으로 표현 될 수 있다는 점에서 하나 이상의 변수가 선형 독립성이 아님을 의미합니다. R 패키지 caret에는 findLinearCombos문제가있는 변수를 알려주 는 함수 가 있습니다.
richiemorrisroe

2
나는 richiemorrisroe에 동의합니다. 그것이 X'X가 양의 한정이 아니라고 말하기 때문에 그들은 디자인 행렬 X'X가 단수이므로 전체 순위가 없다는 것을 암시한다고 생각합니다. 따라서 공변량 중 적어도 하나는 다른 공변량의 정확한 선형 조합으로 작성 될 수 있습니다.
Michael Chernick

답변:


123

이 맥락에서 순위 부족은 원하는 모델을 추정하기에 데이터에 정보가 충분하지 않다고 말합니다. 그것은 많은 기원에서 유래합니다. 여기에서는 명시 적으로 로지스틱 회귀 분석이 아닌 상당히 일반적인 상황에서의 모델링에 대해 이야기하지만 모든 것이 여전히 특정 상황에 적용됩니다.

부족한 데이터는 너무 적은 데이터로 인해 발생할 수 있습니다. 일반적으로 n 개 미만의 데이터 포인트로 n 개의 매개 변수를 고유하게 추정 할 수 없습니다. 프로세스에 노이즈가있는 것처럼 결과가 좋지 않은 것처럼 n 포인트 만 필요한 것은 아닙니다. 알고리즘이 최소한의 오류 의미로 모든 데이터를 나타내는 솔루션을 선택할 수 있도록 더 많은 데이터가 필요합니다. 이것이 우리가 최소 제곱 도구를 사용하는 이유입니다. 얼마나 많은 데이터가 필요합니까? 나는 항상 과거의 삶에서 그 질문을 받았으며 그 대답은 당신이 가진 것보다 많거나 얻을 수있는 것보다 많았습니다. :)

때로는 필요한 것보다 많은 데이터가있을 수 있지만 일부 (너무 많은) 점은 복제입니다. 잡음을 줄이는 데 도움이된다는 점에서 복제는 우수하지만 숫자 순위를 높이는 데 도움이되지는 않습니다. 따라서 두 개의 데이터 포인트 만 있다고 가정하십시오. 점을 통해 고유 한 이차 모형을 추정 할 수 없습니다. 각 점에 대해 백만 번의 반복 실험을 수행해도 여전히 효과적으로 한 쌍의 점만있는 것을 통해 직선 이상의 것을 맞출 수는 없습니다. 기본적으로 복제는 정보 내용을 추가하지 않습니다. 정보가있는 위치에서 노이즈를 줄이는 것만으로 충분합니다.

때로는 잘못된 장소에 정보가 있습니다. 예를 들어, 모든 것이 2 차원의 직선에있는 점이면 2 차원 2 차 모형을 적합 할 수 없습니다. 즉, 평면에서 x = y 선을 따라 흩어져있는 점이 있고 표면 z (x, y)에 대한 모형을 적합한다고 가정합니다. 복제 점이 아닌 수십억 개의 점이 있더라도 상수 모델 이상을 지능적으로 추정하기에 충분한 정보가 있습니다. 놀랍게도, 이것은 샘플 데이터에서 본 일반적인 문제입니다. 사용자는 왜 좋은 모델을 만들 수 없는지 궁금합니다. 문제는 그들이 샘플링 한 바로 그 데이터에 내장되어 있습니다.

때로는 단순히 모델의 선택입니다. 이것은 "충분한 데이터"로 볼 수 있지만 다른 쪽에서는 볼 수 있습니다. 복잡한 모델을 추정하려고하지만 데이터가 충분하지 않습니다.

위의 모든 경우에 대한 답은 현재 부족한 프로세스에 대한 정보를 제공 할 장소에서 지능적으로 샘플링 된 더 많은 데이터를 얻는 것입니다. 실험 설계는 시작하기에 좋은 장소입니다.

그러나 좋은 데이터조차도 때로는 수치 적으로 부적절합니다. (좋은 데이터가 나쁜 이유는 무엇입니까?) 여기서 문제는 모델과 관련이있을 수 있습니다. 그것은 단지 단위를 잘못 선택했을뿐입니다. 문제를 해결하기 위해 수행 된 컴퓨터 프로그래밍에서 비롯 될 수 있습니다. (어! 어디서부터 시작해야합니까?)

먼저 단위와 스케일링에 대해 이야기하겠습니다. 한 변수가 다른 변수보다 수십 배 큰 문제를 해결하려고한다고 가정 해보십시오. 예를 들어, 키와 신발 크기에 문제가 있다고 가정 해보십시오. 높이를 나노 미터로 측정하겠습니다. 제 높이는 약 1,78 억 (1.78e9) 나노 미터입니다. 물론 신발 크기를 킬로 파섹 단위로 측정하도록 선택하겠습니다. 따라서 9.14e-21 킬로 파섹입니다. 회귀 모델링을 수행 할 때 선형 회귀는 선형 선형 대수에 관한 것이며, 여기에는 선형 변수 조합이 포함됩니다. 여기서 문제는이 숫자가 엄청나게 많은 차수 (그리고 같은 단위도 아님)에 의해 다르다는 것입니다. 컴퓨터 프로그램이 컴퓨터가 너무 많은 차수의 차수를 더하거나 빼려고 할 때 (배정 밀도의 경우) 수학이 실패합니다 번호,

트릭은 일반적으로 공통 단위를 사용하는 것이지만 일부 문제에서는 변수가 너무 큰 차수로 변할 때 문제가됩니다. 더 중요한 것은 숫자의 크기를 비슷하게 조정하는 것입니다.

다음으로 큰 숫자와 그 숫자의 작은 변형에 문제가있을 수 있습니다. 따라서 입력이 모두 [1,2] 간격에있는 데이터를 사용하여 중간 정도의 다항식 모델을 작성한다고 가정 해보십시오. 1 또는 2 정도의 제곱, 큐빙 등의 숫자는 배정도 산술 작업시 아무런 문제가 없습니다. 또는 모든 숫자에 1e12를 추가하십시오. 이론적으로 수학은 이것을 허용합니다. 우리가하는 모든 것은 x 축에 구축 한 다항식 모델을 이동시키는 것입니다. 모양은 동일하지만 1e12에서 오른쪽으로 변환됩니다. 실제로 선형 대수학은 계급 부족 문제로 인해 비참하게 실패합니다. 데이터를 번역하는 것 외에는 아무것도하지 않았지만 갑자기 특이 행렬이 나타납니다.

일반적으로 작성된 의견은 "데이터를 중앙에 배치하고 확장"하는 제안입니다. 실제로 이것은 평균이 거의 0에 가깝고 표준 편차가 대략 1이되도록 데이터를 이동 및 스케일링한다고합니다. 이는 대부분의 다항식 모델의 컨디셔닝을 크게 개선하여 순위 부족 문제를 줄입니다.

계급 부족의 다른 이유가 있습니다. 경우에 따라 모델에 직접 내장되어 있습니다. 예를 들어 함수의 파생을 제공한다고 가정하면 함수 자체를 고유하게 유추 할 수 있습니까? 물론, 적분에는 일정한 적분이 포함되므로 일반적으로 어떤 시점에서 함수의 가치에 대한 지식으로 유추되는 알 수없는 매개 변수입니다. 실제로 이것은 때때로 시스템의 특이성이 연구중인 시스템의 기본 특성에서 파생되는 추정 문제에서도 발생합니다.

나는 선형 시스템에서 계급 부족에 대한 많은 이유 중 몇 가지를 분명히 배제했으며, 나는 너무 오랫동안 애무했다. 바라건대 내가 다루는 내용을 간단한 용어로 설명하고 문제를 완화 할 수있는 방법이 있었으면 좋겠다.


42

행렬의 순위를 정의하려면 선형 대수에 대한 훌륭한 교과서를 참조하거나 Wikipedia 페이지를 참조하십시오 .

행렬 경우 전체 랭크 것으로 알려져 , 그 열이 서로 선형 조합이 아니다. 이 경우, 행렬 는 양의 유한 한 값이므로 역 이 있음을 의미합니다 .n×pXnpp×pXTX(XTX)1

가 전체 순위가 아닌 경우 열 중 하나는 다른 열의 선형 조합이라는 의미에서 다른 열에 의해 완전히 설명됩니다. 간단한 예는 열이 중복 된 경우입니다. 만약 0-1 변수를 가지며, 컬럼은 0 또는 만 1.이 경우 이루어져 경우도 발생할 수 있으며, 행렬의 계수 보다 작은 및 어떤 역이 없다.XXnXTX

로지스틱 회귀를 포함한 많은 회귀 문제의 해결 방법에는 계산 중간 이 포함되므로 모형의 모수를 추정하는 것은 불가능합니다. 호기심, 당신은 확인하실 수 있습니다 여기에 이 용어는 다중 선형 회귀 식에 참여하는 방법.(XTX)1

그것은 절대 순위 부족 때문이었습니다. 그러나 @woodchips에 의해 자세히 설명 된 것처럼 행렬 가 "거의"전체 순위가 아닌 경우 문제가 발생하는 경우가 있습니다. 이 문제는 일반적으로 다중 공선 성 이라고합니다 . 이 문제는 매우 일반적입니다, 당신은 더 많은 관련 게시물에 대처하는 방법을 찾을 수 있습니다 여기에있다 .X


23

user974의 답변은 모델링 관점에서 환상적이며 gui11aume의 답변은 수학 관점에서 환상적입니다. 혼합 모델링 관점, 특히 GLMM ( Generalized Mixed Modeling) 관점 에서 엄격하게 이전 답변을 구체화하고 싶습니다 . 보시다시피 환상적인 패키지 에있는 R 함수 를 참조했습니다 . 또한 로지스틱 회귀 모델에 적합하다고 말합니다.mer_finalizelme4

이러한 유형의 수치 알고리즘 으로 인해 많은 문제가 발생합니다. 고정 효과의 모델 매트릭스의 매트릭스 구조의 문제는 user974가 암시 한 것처럼 확실히 고려할 가치가 있습니다. 그러나이 평가하는 것은 매우 쉽습니다, 단순히 계산 model.matrix당신의 formula=data=모델에 인수를하고 사용하여 결정을 det기능. 그러나 랜덤 효과는 해석, 수치 추정 루틴 및 고정 효과 (일반적으로 "일반"회귀 모델에서 회귀 계수라고 생각하는) 에 대한 추론을 크게 복잡하게합니다 .

가장 단순한 경우에 임의의 절편 모델 만 적합하다고 가정합니다. 그런 다음 기본적으로 수천 개의 측정되지 않은 이질성 소스가 클러스터 내에서 반복적으로 측정되는 것으로 간주됩니다. "절대"절편을 추정하지만 군집 별 절편에 평균 분포가 0 인 것으로 가정하여 이질성을 설명합니다. 절편은 수렴이 달성 될 때까지 (로그 가능성 또는 근사치가 최대화 될 때까지) 반복적으로 추정되고 모델 효과를 업데이트하는 데 사용됩니다. 혼합 모형은 구상하기가 매우 쉽지만 수학적으로 가능성은 매우 복잡하며 특이점, 국소 최소 점 및 경계점 (홀수 비율 = 0 또는 무한대)의 문제가 발생하기 쉽습니다. 혼합 모형에는 표준 GLM과 같은 이차 가능성이 없습니다.

불행히도 Venerables와 Ripley는 귀하와 같은 수렴 오류 진단에 많은 투자를하지 않았습니다. 그러한 메시지로 이어지는 수많은 가능한 오류를 추측하는 것은 실제로 불가능합니다. 그런 다음 아래에서 사용하는 진단 유형을 고려하십시오.

  1. 군집 당 몇 개의 관측치가 있습니까?
  2. GEE를 사용하여 한계 모델 적합의 결과는 무엇입니까?
  3. 클러스터의 ICC는 무엇입니까? 클러스터 내 이질성이 클러스터 이질성에 가깝습니까?
  4. 1 단계 추정량을 맞추고 추정 된 랜덤 효과를 봅니다. 그들은 대략 정상입니까?
  5. 베이지안 혼합 모형을 피팅하고 고정 효과에 대한 사후 분포를 살펴 봅니다. 그것들은 대략 정규 분포를 갖는 것으로 보입니까?
  6. 더 매끄럽게 사용하여 결과에 대한 관심 노출 또는 회귀를 보여주는 군집의 패널 그림을보십시오. 추세가 일관되고 명확합니까, 아니면 그러한 추세를 설명 할 수있는 많은 방법이 있습니까? (예 : 노출되지 않은 피험자 중 "위험"이란 무엇입니까?
  7. "이상적인"치료 효과를 추정하기에 충분한 사람당 관찰 횟수 (예 : n = 5 또는 n = 10) 만있는 대상체로 샘플을 제한 할 수 있습니까?

또는 몇 가지 다른 모델링 접근법을 고려할 수 있습니다.

  1. 고정 된 효과 (예 : 그룹 표시기 또는 다항식 시간 효과)를 사용하여 군집 수준 /자가 회귀 이질성을 모델링 할 수있는 군집 또는 시점이 충분하지 않습니까?
  2. 한계 모델이 적합합니다 (GEE를 사용하여 표준 오류 추정의 효율성을 향상 시키지만 여전히 고정 효과 만 사용함)
  3. 랜덤 효과에 대한 사전 정보가있는 베이지안 모델이 추정을 개선 할 수 있습니까?

2
+1 : 원래 질문의 "혼합 된"부분을 해결해 주셔서 감사합니다. 이 게시물은 이미 좋은 답변을 보완합니다.
whuber
당사 사이트를 사용함과 동시에 당사의 쿠키 정책개인정보 보호정책을 읽고 이해하였음을 인정하는 것으로 간주합니다.
Licensed under cc by-sa 3.0 with attribution required.