[입시통계] 회귀 분석으로 기존 정원 대비 모의지원 합격자 수 예측하기
게시글 주소: https://orbi.kr/00032294492
지난 글 1: 지원자의 점수대와 선호도를 바탕으로 최종등록여부를 판별하는 모델 구축
지난 글 2: 지원자 점수대를 유형별로 나누어 최종등록여부를 분류하는 모델 구축
지난 글 3: SB 분석기 분석 레포트 1,2,3
1. 서론
안녕하세요 설빙입니다 :D
9월 모의고사는 잘 치루셨나요?
좋은 성적을 받으셨다면 수능날까지도 이 페이스를 꾸준히 유지하셔서 유종의 미를 거두 시길 바라고,
만족하지 못하는 성적을 받았어도 조금만 늦게 찾아올 행복할 때를 고대하면서
견디다 보면 이전의 고생이 큰 성적 상승으로 돌아와 한 해를 뜻 깊게 끝마칠 수 있으실 겁니다.
환절기 감기 조심하시고 늘 좋은 하루가 되길 바랍니다.
2. 모의지원 합격자 수 배정의 딜레마
만일 이전에 모의지원 사이트에 들어가 성적 레포트들을 쭉 둘러보았다면,
어느 학과는 정원이 50명인데도 불구하고 최초합격 인원을 30명밖에 산정하지 않고,
어느 학과는 본래 정원보다 예상 최초합격 인원을 더 많이 산출하는 의아한 사실을 쉽게 발견할 수 있을 것이다.
이러한 이유는 간단하다.
지원자의 성적을 받아 성적순으로 나열하기만 하면 되는 입학처와는 달리,
모의지원 사이트는 해당 사이트에 점수를 입력한 지원자 외에도
사이트를 이용하지 않는 미이용 지원자의 경우의 수도 생각해야 하기 때문이다.
여기서 한가지 딜레마가 발생하는데,
만일 미이용 지원자의 영향을 너무 크게 잡으면 실제보다 컷을 더 높게 예측할 수 있고,
미이용 지원자들의 영향을 너무 적게 잡으면 실제보다 컷을 더 낮게 산정하여
모의지원 이용자들에게 큰 혼동과 불편함을 줄 수 있다.
그래서 모의지원 사이트는 보통 기존 데이터들을 바탕으로
이전 모의지원 사이트 이용 지원자수 대비실제 지원자수의 차이를 비교하여
최초합격 인원 수를 산정하는데,
이에 수치적 정확성을 첨가하고 각 학과의 모의지원 이용자 수 대비 실제 지원자 수의 차이인 정밀도에 따른 최적의 합격자 수를 산정하기 위해 회귀분석 기법을 사용해 모델의 정밀도에 따른최적의 예상 모의지원 인원을 계산해 보았다.
3. 알고리즘 분석 과정
임의로 가정한 가상의 성균관대, 연세대, 고려대의 2018년-2020년 입시 데이터를 기반으로 작업한다.
대학마다 다른 반영비, 성적 분포 등등은 표준화 과정을 통해 미리 전처리한다.
모의지원 합격자 수 산정의 정밀도는 최초합격 커트라인과 추가합격 커트라인을 분석해
실제 정원 대비 모의지원 실지원 최종합격 지원자수의 차이를 실제 정원으로 나누어 계산하였다.
계산의 결과, 정밀도가 높을수록 0에 수렴하고, 정밀도가 낮을 수록 값이 무한히 증가하는 추세를 보였기 때문에 통계적 분석의 편의성을 위해 0으로 수렴하는 숫자는 1/2으로 수렴하고, 값이 무한대로 발산할수록 1의 값에 가까워지는 Sigmoid 함수를 활용하여 정밀도를 표준화한다.
(그림 1. Sigmoid 함수의 개형. 마이너스 무한대로 발산하면 0으로 수렴하고, 0일떄는 0.5, 무한대로 발산하면 1로 수렴하는 경향성을 보인다.
다음은 가상의 데이터를 기반으로 한 모의지원의 정밀도가 가장 높은 학과를 정렬한 데이터다.
정밀도가 4.0이라는 것은 그 해 가상의 모의지원이 최초합격 합격자 수와 추가합격 합격자 수를 모두 정확하게 맞추었다는 뜻이다.
(그림 2. 모의지원 정밀도 Top 5)
다음은 가상의 데이터를 기반으로 한 모의지원의 정밀도가 가장 낮은 과를 정렬한 데이터다.
정밀도가 2에 가까울수록 실제 지원자 수와 모의지원 이용 실지원 합격자 수의 괴리가 크다는 의미이다.
(그림 3. 모의지원 정밀도 Worst 5)
다음은 대학, 연도에 따라 모델의 정밀도가 높은 순서로 정렬한 데이터다.
2020년도 연세대 예측 정밀도가 제일 높고, 그 다음으로 성대 2019, 연대 2019, 고대 2020의 순서로 따른다.
(그림 4. 학교, 년도에 따른 모의지원 정밀도 Top 5)
4. 회귀 분석 레포트
가상 모의지원 시나리오의 추가합격 데이터를 분석하여, 전체 표본 대비 정밀도가 중앙값 이상인 값과 이하인 값을 분류하고 이를 기반으로 선형 회귀를 진행해 보았다.
왼쪽의 그래프는 모의지원 예상 정밀도에 따른 실제 지원자와 모의지원 예측 합격자 수를 비교하여 나타냈고, 오른쪽의 그래프는 왼쪽의 선형 식을 기반으로 모델을 학습시켜 정밀도를 예측하게 한 다음, 검증 데이터로 분류해 둔 데이터와 비교해 모델 학습의 정확성과 정밀도에 따른 오차의 정도를 추측하였다.
위 데이터를 바탕으로 가상 모의지원 시나리오의 최초합격과 추가합격 데이터를 분석하여 정밀도가 3분위 수 이상인 데이터를 분류하고, 이를 기반으로 최종 데이터에 적용시켜 선형 회귀를 진행한 결과물이다.
이전의 그래프와 비교하여 표본의 수가 많아지고 정밀도에 따른 심도있는 분류를 진행하였기 때문에 시각적으로도 일정한 경향성을 파악할 수 있게 되었고, 정밀도의 오차율도 이전과 비교해 보다 더 0의 값에 가까이 수렴하는 성향을 보인다.
선형회귀 분석을 끝마춘 학습모델을 실제 데이터셋에 대입하여 예측한 예상 모의지원 정원을 전체 정원과 기존 모의지원 정원과 비교하여 데이터프레임과 그래프로 나누어 보았다.
분석의 결과 기존의 모의지원 정원보다 전체 정원의 결과에 더 근접한 예측 모델 케이스들이 많았지만, 여전히 전체 정원과 비교해 괴리가 있었을 뿐만 아니라 기존 모의지원 학습 결과가 예측 모델 결과보다 정밀도 면에서 더 나은 면모를 보이는 케이스도 있기 때문에 추가적인 리서치와 더불어 더 나은 분류 방법을 고안해 내고, 추가적인 심층적 공부의 필요성을 느꼈다.
5. 데이터의 사용처
모의지원 사이트 – 기존 유저 데이터를 기반으로 보다 더 정밀한 모델을 학습 시켜 올바른 실지원 합격자 수를 예측해 실제 지원자 수와의 괴리를 줄여 이용자가 겪는 불편함을 줄인다
모의지원 사이트 이용자 – 모의지원 사이트가 예측한 합격자 수와 모델이 예측한 합격자 수의 괴리가 큰 학과들을 분석해 모의지원 사이트가 예측하지 못한 추가 합격의 가능성을 확인한다.
6. 마무리
해당 분석기는 적어도 1년에서 길게는 2년의 텀을 두어 몇번의 수정과 번복을 한 다음에 최종적으로 시중에 배포할 예정입니다.
알맞은 데이터를 크롤링해서 적용하기만 하면 전처리 단계가 끝이 납니다.
제 깃허브 블로그에도 비슷한 주제의 글들을 올리고 있습니다. 심심할때 한번씩 와주세요 :D
블로그 주소 : https://joyhyun99.github.io/
0 XDK (+100)
-
100
형 근데 요즘은 시그모이드 잘 안 쓰지 않나요
점수 표준화할때만 사용하고 분류작업에는 사용 안했음
시그모이드함수 오랜만이당
설빙님 이런거 하고 계셨군요 ㄷㄷ
글 읽어주셔서 감사합니다! 아직 기대쌤 강의 퀄리티에 비해서는 한참 미치지 못하지만 기초부터 차근차근 열심히 노력해보도록 하겠습니다 ㅎㅎ
설빙추