통계데이터분석 - 일반선형모델 - 이항 로지스틱회귀분석 🔑 binomial logistic regression analysis | 이분형 범주 | 로그오즈(log odds)

  Рет қаралды 5,579

곽기영

곽기영

Күн бұрын

[R을 이용한 통계데이터분석]
이항 로지스틱회귀분석(binomial logistic regression analysis)은 결과변수(종속변수)가 이분형 범주를 가질 때 예측변수(독립변수)로부터 결과변수의 범주를 예측합니다. 이항 로지스틱회귀분석은 특정 사건이 발생(예를 들면, 기업부도)할 확률을 직접 추정합니다. 결과변수의 예측값은 항상 0과 1 사이의 확률값을 갖게 되며, 이 값이 일정 기준값(예를 들면, 0.5)보다 크면 사건이 발생하고 기준값보다 작으면 사건이 발생하지 않는 것으로 예측합니다. 다음과 같은 함수에 대한 설명이 포함되어 있습니다: glm(), summary(), coef(), exp(), predict(), step(), deviance(), df.residual(), pchisq().
📢 R과 RStudio 설치는 'R 프로그래밍 / R 기초 - 설치' 강좌를 참고하세요( • R 프로그래밍 / R 기초 - 설치 🔑 ... ).
📚 『곽기영』 채널의 동영상 강의는 다음 도서를 바탕으로 하고 있습니다. 책의 목차를 포함한 책자에 대한 소개는 도서명 옆의 링크를 참고해주세요. 💕
『R 기초와 활용』 (product.kyobob...)
『R을 이용한 통계데이터분석』 (product.kyobob...)
『R을 이용한 머신러닝과 텍스트마이닝』 (product.kyobob...)
『R을 이용한 웹스크레이핑과 데이터분석』 (product.kyobob...)
『SPSS를 이용한 통계데이터분석』 (product.kyobob...)
『소셜네트워크분석』 (product.kyobob...)
#R프로그래밍 #데이터분석 #통계 #머신러닝 #데이터애널리틱스 #데이터사이언스

Пікірлер: 15
@jjj3392
@jjj3392 3 жыл бұрын
와 정말 감사합니다. 많은 도움이 되었어요!
@수긔
@수긔 7 ай бұрын
안녕하세요, 교수님. 강의 중 질문이 있습니다. 1. 선형회귀분석에서 결과변수가 연속형 변수이면서 정규분포를 따라야한다는 점이, 선형회귀분석의 가정 중 오차항이 정규성을 가져야 한다는 점과 관련이 있을까요? 2. 일반선형모델의 식이 이해가 어렵습니다. 선형회귀모델에서는 각 회귀계수와 예측변수를 곱한 값이 결과변수의 조건부평균이 된다는 점이 납득이 가는데, 일반선형모델에서는 그 똑같은 식이 조건부 평균의 함수와 같다는 점이 이해가 안갑니다. 혹시 조건부평균을 구한 뒤에 그것을 해당되는 링크함수에 넣어서 계산을 다시 해야하는 건가요, 혹은 일반선형모델의 식에서는 선형회귀모델에서와 다른 방식으로 회귀계수와 예측변수가 정해지는 건가요?
@kykwahk
@kykwahk 7 ай бұрын
1. 네~ 관련이 있습니다. 종속변수가 독립변수값에 대해 정규분포를 하면 잔차(오차)는 평균 0의 정규분포를 따릅니다. 그래서 보통 선형회귀분석을 하기 전에 잔차가 정규분포를 따르는지 진단을 합니다. 2. 조건부 평균이란 쉽게 말해 종속변수 y의 평균을 말하는데요, 그 y가 연속형 변수가 아닐 경우(또한 정규분포를 따르지 않을 경우) 독립변수 x의 선형결합으로 나타낼 수 없기에 링크함수로 사용하여 변환합니다. 예를 들어, y가 이항분포를 따르면 그 평균은 확률값이 되는데요, 이 경우 확률값을 그대로 사용하면 x의 어떠한 선형결합으로도 0과 1 사이 값으로 제한되는 결과변수를 나타낼 수 없습니다. 그럴 때 결과변수의 평균에 링크함수를 적용하게 됩니다. 여기의 예로 본다면 결과변수의 평균인 확률값(p)에 로짓함수(f(p)=ln(p/(1-p))를 적용하여 변환합니다. 다시 말해 결과변수 평균 p의 함수가 링크함수 f(p)입니다.
@jiminkang3451
@jiminkang3451 3 жыл бұрын
안녕하세요 교수님 R을 이용한 통계데이터분석 책으로 강의와 함께 공부중입니다. p.226부터 함수이름이 책에 잘못써진것 같습니다 강의내용과 다른함수가 써있고 실제로 적용이 안됩니다. 확인해주시면 감사하겠습니다
@kykwahk
@kykwahk 3 жыл бұрын
네~ 그게요... 기존에 C50 패키지에 포함되어 있던 데이터셋이 이제 더 이상 존재하기 않기 때문에 그렇습니다. 다행히 modeldata 패키지에 동일한 데이터셋이 mlc_churn이라는 이름으로 포함되어 있습니다. 이 데이터셋을 이용하면 됩니다. 다만 훈련 데이터와 테스트 데이터를 분할하는 다음과 같은 약간의 전처리가 필요합니다(이후의 과정은 책과 동일합니다). 여기 동영상 강의에서는 이러한 변경 내용을 반영하였습니다. install.packages("modeldata") library(modeldata) data(mlc_churn) str(mlc_churn) churn
@jiminkang3451
@jiminkang3451 3 жыл бұрын
@@kykwahk 설명 정말 감사드립니다!
@불닭볶음면짜파게티
@불닭볶음면짜파게티 3 жыл бұрын
@21:35 family = "binomial(link = logit) 이 구체적으로 어떤 의미인가요?
@kykwahk
@kykwahk 3 жыл бұрын
로지스틱회귀모델은 일반선형모델(generalized linear model)의 범주에 속합니다. 일반선형모델은 예측변수(독립변수)의 선형결합으로 결과변수(종속변수)를 나타낼 수 없을 때 사용할 수 있는 모델입니다. 예를 들어, 여기에서 다루고 있는 이항 로지스틱회귀분석은 두 가지 범주(0/1, 성공/실패, 불량/우량 등)를 갖는 범주형 변수가 결과변수일 때 사용할 수 있습니다. 이 경우 예측하게 되는 결과변수값은 0과 1 사이의 확률값인데요(모델에 의해서 결과변수의 평균을 예측하게 되는데요, 0과 1 값들의 평균은 0과 1사이의 확률값입니다), 예측변수의 어떠한 선형결합으로도 0과 1 사이의 값을 만들어낼 수 없습니다. 왜냐하면 어떠한 선형결합이라도 예측변수값의 증가는 항상 결과변수값을 증가시키거나 감소시키며 그 결과는 0과 1 사이의 값으로 제한되지는 않기 때문입니다. 이때 확률 p를 ln⁡(p/(1-p))와 같이 로그 변환하면 그러한 제약이 사라지기 때문에 예측변수의 선형결합으로 결과변수를 나타낼 수 있습니다. 이러한 로그 변환을 로지스틱변환(logistic transformation)이라고 하며, 이 산식 혹은 변환된 값을 로짓(logit)이라고 합니다. 'binomial(link = logit)'에서 'binomial'은 결과변수의 확률분포를 의미합니다. 여기에서 결과변수는 두 개 범주 가운데 하나의 값을 갖는 이항분포이기 때문에 이항분포를 의미하는 'binomial'을 지정한 것입니다. 이항분포를 따르는 결과변수의 경우에는 앞서 설명한 대로 예측변수의 선형결합으로 나타낼 수 없기 때문에 변환 과정이 필요한데, 그 변환에 필요한 함수를 링크(link)함수라 하고, 여기에서는 'link=logit'을 지정한 것입니다. 즉 결과변수인 확률 p를 ln⁡(p/(1-p))로 변환해서 모델링을 하라는 의미입니다. 따라서 모델링 결과로 나온 값에 지수함수를 취하면 원래의 확률로 환원할 수 있습니다(이번 강좌에서 이러한 내용을 예를 통해 보실 수 있습니다). 이항분포의 기본 링크함수는 logit이기 때문에 사실 'binomial()'과 같이 분포 이름만 지정할 수도 있습니다. 그런데 예측변수의 선형결합으로 나타낼 수 없는 결과변수는 이 밖에도 더 있습니다. 예를 들면, 결과변수가 세 개 이상의 범주를 갖는 경우도 있고, 결과변수가 개수(횟수)인 경우도 있습니다. 이 경우에도 결과변수의 분포와 그에 대응되는 변환함수를 지정해야 합니다. 전자의 경우는 다항분포를 따르기 때문에 'multinomial()'을 지정하고 후자의 경우는 포아송분포를 따르기 때문에 'poisson()'을 지정합니다. 이 두 가지 경우는 이어지는 강좌(다항 로지스틱회귀분석, 포아송회귀분석)에서 다루고 있으니 참고하시기 바랍니다. @ 2:09 이 부분부터 다시 들어보시길 권해드려요. @@ 일반선형모델에 대해서는 '통계데이터분석 - 일반선형모델 - 개요' 강좌를 참고하세요(kzbin.info/www/bejne/qJuydnaBm9Oeiac). 일반선형모델은 예측변수의 선형결합으로 나타낼 수 없는 다양한 유형의 결과변수를 링크함수를 통해 모델링할 수 있도록 해줍니다.
@불닭볶음면짜파게티
@불닭볶음면짜파게티 3 жыл бұрын
@@kykwahk 자세한 답변 감사드립니다. 참고하여 공부하겠습니다.
@김혁-i9s
@김혁-i9s 3 жыл бұрын
안녕하세요, 교수님, mean(churn.test$churn == churn.logit.pred.resp) 전 별도로 판정결과를 churn.logit.pred.resp로 저장해서 정확도 평균을 구하는 식을 실행하면 "level sets of factors are different"라는 오류 메시지가 나오는데요. 그전 혼돈행렬까지는 다 정확하게 일치하는 결과치를 보여주는데요. 영상 정말 많은 도움이 됩니다. 감사합니다.
Всё пошло не по плану 😮
00:36
Miracle
Рет қаралды 5 МЛН
Сюрприз для Златы на день рождения
00:10
Victoria Portfolio
Рет қаралды 2,8 МЛН
이야기로 설명하는 로지스틱 회귀 분석
29:03
Sangho Lee
Рет қаралды 5 М.