인지야공/ADP/10번째 글
ADP 실기 — 17회부터 26회까지, 무엇이 반복되는가
기출을 모아 놓고 나서야 준비할 것이 정해졌다. 회차마다 소재는 바뀌는데 요구하는 행동은 거의 그대로다. 아래는 회차별 요약이고, 마지막에 반복되는 패턴을 정리했다.
24·25·26회는 직접 치르고 나와서 기억나는 대로 적은 것이고, 그 앞은 다른 분들의 후기를 보고 정리했다. 원문 출처를 각 회차에 달아 두었다.
17회
| 내용 | |
|---|---|
| 1. 머신러닝 | Housing 데이터. log1p 정규화, EDA·전처리, 모델링, 하이퍼파라미터 조절. 평가지표 RMAE |
| 2. 시계열·시각화 | Covid19. 일별 확진자·완치자로 가공, 위험지수를 직접 정의하고 설명, 상위 10개국 시각화, 한국 확진자를 선형·비선형 시계열 모델 2개로 예측 |
| 3. 통계분석 | 설문조사. 그룹별 통계치, 탐색적 요인분석을 표로 |
“위험지수를 만들고 그 설명을 적으라”는 게 인상적이다. 정답이 없는 지표를 정의하고
근거를 대는 문제가 이때부터 나왔다. 요인분석은 factor-analyzer 가 환경에 있다.
18회
- 분류분석, 군집분석(SOM)
- 텍스트마이닝 — 문자열 전처리, 워드클라우드
- 시계열 — 정상성 체크 및 예측
- 잔차 분석
SOM(자기조직화지도)이 나온 유일한 회차다. sklearn 에 없어서 개념으로만 정리했다.
19회
| 내용 | |
|---|---|
| 1. 기계학습 | credit 데이터, 고객 이탈 분류. 연속형·범주형 전처리와 시각화 → 7:3 분할, 분류 3개, 혼동행렬 → 셋을 앙상블해서 result.csv 제출 |
| 2. 통계분석 | Traffic EPS, 분기별 20년치. 정규성·이분산성 시각화 → 비정상이면 처리 → SARIMA 파라미터 탐색 → 잔차와 잡음 분석 |
“분류 3개를 앙상블해서 파일로 제출”은 이후 회차에도 형태를 바꿔 계속 나온다.
20회
| 내용 | |
|---|---|
| 1. 시계열 | 1년치 온도 데이터(지연값 1·2, 친구의 예측값, 예측 최소·최대 등 포함). 필요없는 열 처리, 전처리를 증명, train/test 나눌 방법 설명 → 랜덤포레스트와 SVM 각각 예측한계선 설정 방법 설명·파라미터 조정·컬럼별 중요도 시각화 → 두 모델의 장단점, 어느 쪽이 나은지와 그 한계·해결방법 |
| 2. 군집분석 | 가구별 15분 단위 전력 사용량. 가구별 합을 구해 군집화하고 표 완성 → 요일별 평균을 히트맵으로 |
| 3. 회귀분석 | 7:3 분할·검증 후 R², RMSE, 정확도(공식 주어짐) |
지연값이 열로 주어졌다는 게 핵심이다. ARIMA 문제가 아니라 지도학습 문제였다. “모델을 고르고 왜 그것인지, 한계는 무엇이고 어떻게 보완할지”가 배점의 큰 덩어리다.
21회
| 내용 | |
|---|---|
| 1. 머신러닝 | 학생 성적 데이터. EDA → 결측치 예측 방법 2가지와 이유 → 인코딩이 필요한 경우 식별·적용·이유 → 분할 방법 2가지와 이유 → SVM·XGBoost·랜덤포레스트의 공통점과 적합성 → 셋 다 모델링하고 최적 선택·한계·현업 사용 시 주의점 |
| 2. 머신러닝 | 소규모 연속형 데이터. 8:2 분할 후 선형회귀 → 릿지·라쏘로 alpha 를 0~1까지 0.1 단위 전수 탐색, 최적 alpha 로 재학습해 R²·RMSE |
| 3. 시각화 | 다항회귀 3차까지, 차수별 산점도·계수·회귀선 |
| 4. 통계분석 | 이원분산분석과 통계표 작성 |
“~를 2가지 쓰고 이유를 설명”이 네 번 반복된다. 코드보다 서술의 비중이 큰 회차다.
22회
| 내용 | |
|---|---|
| 1. 머신러닝 | Pima Indian Diabetes. 결측·히스토그램·박스플롯·페어플롯·타깃 불균형·상관관계·이상치 처리 방안 → 오버샘플링과 언더샘플링을 설명하고 하나 선택 → 알고리즘 3개 이상 중 정확도 모델 1개와 속도 모델 1개 구현·비교 → 차원 축소로 속도 개선 후 성능·속도 비교 |
| 2. 통계분석 | 금속 함유량. 분산이 1.3을 넘으면 불량 — 제조사별 분산 검정 → 불량률 관리도의 중심선·상한·하한(공식 주어짐)과 시각화 |
| 3. (데이터 없음) | 재료 a·b·c 제약 아래 제품 1·2(12만원·18만원)의 최대 수익 생산량 — 선형계획법 |
| 4. (데이터 없음) | 구매 패턴 aabbaaaabbbbab 의 연관성 검정 — 런 검정 |
3번이 PuLP 가 환경에 깔려 있는 이유다. 4번은 처음에 연관분석(Apriori)인 줄 알았는데
연(run)의 무작위성 검정이다. 데이터 없이 개념만으로 푸는 문제가 두 개나 나왔다.
23회
| 내용 | |
|---|---|
| 1. 머신러닝 | 객실 사용 여부(온도·습도·CO2·빛, 약 290개). 0 이 12%, 1 이 88% 인 불균형 → 탐색·결측 대체 근거 → 데이터 질 향상 방안(설명만) → 불균형을 시각화로 식별하고 판단 근거 → 오버샘플링 기법 비교 후 2개 선정 → 원본 포함 3개 데이터셋 → 정확도 모델·속도 모델 → 오버샘플링이 성능에 미친 영향 서술 |
| 2. 통계 | 진공관 수명 1만 시간 주장, 표본 12개. 부호 검정 — 가설 / 유효 표본 수 / 검정통계량과 채택 |
| 코로나 시계열 5만 관측치 — ACF 로 distance 계산, 계층 군집 덴드로그램 | |
| 학과 × 성적 구간 분할표 — 가설 / 독립일 때 기댓값 / 검정통계량과 채택 |
관측치가 290개뿐인데 88 대 12 라니, 소수 클래스가 35개 정도다. 이 데이터에서 정확도를 지표로 쓰면 안 된다는 걸 답안에 쓰는 것이 이 문제의 핵심이었다고 본다.
24회
24회부터는 직접 치르고 나와 기억나는 대로 적었다. 숫자는 실제와 다를 수 있다.
1. 머신러닝 (50점) — 학생 결석일수 데이터, 독립변수 12개, 395개 관측치
- 시각화 포함 탐색적 분석
- 시각화 포함 전처리
- 추가 가능한 전처리와 그 이유·기대효과
- 적용 가능한 알고리즘 3개를 언급하고 그중 2개를 선택, 이유 설명
- 성능 평가 지표를 무엇으로 할지와 그 이유
- 2개로 실제 코딩·비교·설명(시각화 포함)
- 실제로 사용 가능한 모델인지 / 다양한 환경에 적용할 방안 / 개선 방안
2. 통계분석 (50점)
- 광고비(범주형)·연구개발비(수치형) → 판매액. 관측치 10개. 가변수화해서 다중선형회귀식을 만들고 회귀계수 검정, 이어서 모형 검정
- A라인 평균 5.7·표준편차 0.03, B라인 평균 5.6·표준편차 0.04 → 5% 유의수준에서 평균 차이 검정 (Z(0.05)=1.65 제공). 가설 세우기 / 검정하기
- 베이즈 정리 — 양성으로 예측된 사람이 실제 양성일 확률
- 표본 9개로 단일표본 t 검정 → 평균의 신뢰구간 / 모표준편차를 알 때의 신뢰구간
마지막 문제가 t 분포와 Z 분포를 갈라 쓰는지를 묻는다. 모표준편차를 알면 Z, 모르면 t 다.
25회
머신러닝 (50점)
- 군집분석 (20점) — InvoiceNo·CustomerID·Date·UnitPrice·Quantity 등 대용량 구매 데이터. F(구매빈도)·M(총 구매액) 파생 후 탐색 → 군집분석(필요시 이상값 보정) → 군집 내 응집도와 군집 간 분리도로 적합성 서술 → 군집별 특성에 대한 비즈니스적 판단
- 시계열분석 (30점) — 유입관광객 수 200여 개. 탐색 → 결측 처리 → 계절성 있는 모델 적합 → 평가
통계분석 (50점)
- 계산 문제 (20점) — 왕복 평균 속도(조화평균) / 연평균 증가 배율(기하평균) / 2×2 빈도표에서 조건부확률 / 표본 10개 분산 90의 모분산 신뢰구간
- 혈압약 대응표본 t 검정 (10점) — 가설 / 검정통계량과 채택
- 크루스칼-왈리스 공장 순위 데이터 (10점) — 가설 / 검정통계량과 채택
- NPV (10점) — 1·2·3개년 예산으로 순현재가치가 가장 높은 안 제시
26회
머신러닝 (50점) — 군집분석. CustomerID·StockCode·StockCategory·Quantity·UnitPrice·Country. 범주형과 수치형이 섞여 있고 Quantity 에 결측.
- 결측 확인 및 제거
- 이상치 제거 방법을 설명하고 제거 결과를 통계적으로 제시
- KMeans, DBSCAN 등으로 군집 생성
- 군집 특성 분석
- 군집별 대표 추천 상품 도출
- CustomerID 12413 고객에게 상품 추천
통계분석 (50점)
- 불량률 0.9, 오차 한계 5% 일 때 최소 표본 크기
- A·B·C 지역 지지율 차이 검정 — 가설 / 검정통계량과 판단 (카이제곱)
- 남녀 학생 평균 혈압 차이 (남 16개, 여 9개) — 가설 / 검정통계량 / 신뢰구간이 앞의 결론을 지지하는지 설명
- 은 가격 1~9월 시계열 — 원계열과 3-window 롤링 평균을 한 그래프에, 1월 대비 9월 증가율
- Weight·Height·Waist — 베이지안 회귀로 회귀계수, 몸무게 80·키 170일 때 허리둘레 예측
25회와 26회가 둘 다 구매 데이터 군집이었다. RFM 을 만들 줄 아느냐가 사실상 고정 문제였다.
반복되는 것들
회차를 늘어놓고 보니 소재와 무관하게 되풀이되는 것이 있었다.
머신러닝 문항에서 거의 항상 나오는 것
- 시각화를 포함한 EDA — “시각화 포함”이 문장에 박혀 있다
- 결측·이상치 처리와 그 방법을 고른 이유
- 알고리즘 여러 개를 제시하고 그중 몇 개를 선택, 이유 설명
- 평가 지표를 무엇으로 할지와 그 이유
- 모델의 한계, 개선 방안, 현업 적용 시 주의점
3·4·5 는 코드가 한 줄도 안 들어가는데 배점은 크다. 모델을 하나 더 아는 것보다, 아는 모델 셋을 비교하는 문장을 미리 써 두는 편이 점수에 낫다.
통계 문항의 고정 형식
n-1. 연구가설과 귀무가설을 설정하시오 (5점)
n-2. 검정통계량을 구하고 가설을 채택하시오 (5점)
이 두 줄이 23·24·25·26회에 전부 나온다. 검정 종류만 바뀐다 — 부호 검정, 대응표본 t, 독립표본 t, 카이제곱, 크루스칼-왈리스, 분산 검정.
출제된 검정을 세어 보면
| 검정 | 나온 회차 |
|---|---|
| t 검정 (대응·독립) | 24, 25, 26 |
| 카이제곱 독립성 | 23, 26 |
| 분산분석 / 이원분산분석 | 21 |
| 비모수 (부호, 크루스칼-왈리스, 런) | 22, 23, 25 |
| 신뢰구간 (평균·분산) | 24, 25, 26 |
| 표본 크기 | 26 |
t 검정과 카이제곱, 그리고 신뢰구간이 셋 중 하나는 반드시 나온다고 보고 준비했다.
시계열은 거의 매 회차에 있다 — 17, 18, 19, 20, 23, 25, 26회. 다만 형태가 둘로 갈린다. ARIMA/SARIMA 를 적합하는 문제(19, 25)와, 지연값을 만들어 지도학습으로 푸는 문제(20)다. 둘 다 준비해야 한다.
데이터 없이 개념만으로 푸는 문제가 섞인다 — 22회의 선형계획법과 런 검정, 25회의
조화·기하평균과 NPV, 24회의 베이즈 정리. PuLP 나 scipy.stats.hmean 같은 것들을
“이런 게 있다”로만 알아 둬도 그날은 그게 10점이다.