데이터 과학2022 개정 · 성취기준 기반 웹교과서 교과서 대조표

Ⅳ. 데이터 과학 프로젝트 · 4차시

끝까지 분석하고 의미를 해석하기

프로젝트는 대개 중간에 막힌다. 막힘을 다루는 절차를 점검 목록으로 정리해 익힌다. 분석이 끝난 뒤에는 결과를 어떤 문장으로 써야 하는지 함께 다룬다.

12데과04-04 권장 2차시 문제 해결 절차최소 재현 예시데이터 점검결과 해석인과관계

여기까지 왔다면 데이터가 예상과 다르거나 코드가 멈춘 경험을 이미 했을 것이다.

막힘은 프로젝트의 예외 상황이 아니다. 분석 과정의 일부다. 실제 분석에서 막히지 않는 경우는 드물다.

중요한 것은 막혔을 때 무엇을 하는지다. 막힘을 다루는 방법은 태도의 문제이기도 하지만, 대부분 절차의 문제다.

막힘을 다루는 절차

막혔을 때 가장 흔한 대응은 코드를 여러 곳 동시에 바꿔 보는 것이다. 이 방법은 원인을 찾지 못한 채 상태만 복잡하게 만든다.

대신 문제를 좁히는 순서로 접근한다. 범위를 반씩 줄여 가며 원인이 있는 곳을 찾는다.

최소 재현 예시(minimal reproducible example)
같은 문제가 그대로 나타나는 가장 작은 데이터와 코드. 행을 3~5개로 줄이고 관계없는 부분을 지워 만든다.
막힘 유형별 점검 목록. 위에서 아래로 순서대로 확인한다.
막힘 유형보이는 증상먼저 확인할 것다음 행동
데이터가 없다필요한 열이 기록에 없다다른 값으로 대신할 수 있는지대리 지표로 바꾸거나 직접 측정한다
코드가 멈춘다오류 메시지가 나온다메시지의 마지막 줄과 줄 번호입력을 3~5행으로 줄여 재현한다
결과가 이상하다값의 크기나 부호가 상식과 다르다단위와 결측 처리 방식단계마다 중간값을 출력해 확인한다
계산이 끝나지 않는다실행이 멈춘 채 기다리게 된다데이터 규모와 반복 횟수일부만 잘라 끝까지 한 번 돌린다
해석이 안 된다수는 나왔지만 뜻을 말할 수 없다처음의 질문이 무엇이었는지주제 문장을 다시 읽고 질문을 좁힌다

표에서 확인하듯 막힘의 상당수는 데이터 쪽에서 시작한다.

그래서 원인을 찾을 때는 데이터 점검을 먼저 한다. 점검은 세 가지만 보면 충분하다. 빠진 값, 값의 범위, 있을 수 없는 값이다.

분석 결과의 의미를 해석하기

분석이 끝나면 수가 남는다. 수 자체는 결론이 아니다.

"기울기는 26.45다"는 계산 결과이고, "기온이 오를 때 냉방 전력이 함께 늘었다"는 해석이다.

해석 문장에는 네 가지가 들어가야 한다. 대상과 기간, 관계와 크기, 조건과 범위, 한계다.

해석 문장 작성 틀. 작성 예는 04-03의 예시 데이터 결과를 사용했다.
요소확인 질문작성 예
대상과 기간무엇을 언제 측정한 값인가6월부터 9월까지 우리 학교 일별 기록에서
관계와 크기무엇이 얼마나 달라졌는가기온이 1°C 오를 때 사용량이 약 26kWh 늘었다
조건과 범위어느 범위에서 확인된 것인가22°C에서 33°C 사이 기록에서만 확인되었다
한계무엇을 말할 수 없는가냉방이 원인인지는 이 데이터로 정할 수 없다
인과관계(causality)
한쪽이 다른 쪽의 원인이 되는 관계. 두 값이 함께 움직인다는 사실만으로는 인과관계를 말할 수 없다.
민감도 확인(sensitivity check)
조건을 조금 바꿔도 결론이 유지되는지 확인하는 작업. 이상치를 빼거나 기간을 나눠 같은 분석을 다시 한다.
막힘을 좁혀 가는 다섯 단계 순서도 위에서 아래로 증상 기록, 범위 좁히기, 최소 재현, 하나만 바꾸기, 기록의 다섯 단계가 이어진다. 범위 좁히기 단계에서는 데이터, 전처리, 분석, 해석 네 갈래로 나누어 어디서 막혔는지 확인한다. 하나만 바꾸기에서 해결되지 않으면 최소 재현 단계로 돌아간다. 20분이 지나도 풀리지 않으면 모둠에 공유하는 갈래로 넘어간다. 1 증상 기록 무엇을 했을 때 무엇이 나왔는지 그대로 적는다 2 범위 좁히기 데이터 전처리 분석 해석 네 갈래 가운데 어디서 막혔는지 하나로 좁힌다 3 최소 재현 같은 문제가 나오는 가장 작은 코드와 데이터만 남긴다 4 하나만 바꾸기 두 곳을 함께 바꾸면 무엇이 효과를 냈는지 알 수 없다 안 되면 다시 20분이 지나도 안 풀리면 기록한 증상과 함께 모둠에 공유한다 5 기록 무엇이 원인이었고 무엇으로 고쳤는지 남긴다. 다음에 같은 막힘을 만나면 이 기록부터 본다. 막혔을 때 필요한 것은 더 오래 들여다보는 일이 아니라 범위를 좁히는 순서다.
막힘을 좁혀 가는 다섯 단계 순서도

확인 문제

4문항 · 고르면 바로 채점된다

분석 코드가 오류로 멈췄을 때 가장 먼저 할 일로 적절한 것은?

오류 메시지의 마지막 줄은 문제의 위치를 알려 준다. 여러 곳을 동시에 고치면 무엇이 원인이었는지 알 수 없다. 데이터 재수집이나 방법 변경은 원인을 확인한 뒤에 판단할 일이다.

예시 점검 코드에서 기온 999.0°C가 나타난 이유로 가장 타당한 해석은?

999.0은 지구상에서 나올 수 없는 기온이므로 결측을 나타내는 표시값으로 보는 것이 타당하다. 이런 값을 그대로 계산에 넣으면 평균이 크게 틀어진다.

두 값이 함께 커지는 것을 확인하면 한쪽이 다른 쪽의 원인이라고 해석할 수 있다.

함께 움직인다는 사실은 관계의 존재만 보여 준다. 방학이나 행사처럼 두 값에 함께 영향을 주는 다른 요인이 있을 수 있다.

결과 보고에서 분석의 한계를 밝히면 결론의 신뢰도가 떨어지므로 적지 않는 편이 낫다.

한계는 결론이 성립하는 조건을 밝히는 정보다. 한계를 적으면 어디까지 믿을 수 있는지 드러나므로 신뢰도가 높아진다.

내 교과서에서 찾기

YBM Ⅳ. 데이터 과학 프로젝트 › 02. 데이터 과학 프로젝트의 실제 02-1 물가 지수로 경제 성장 예측하기 · 02-2 지역별 대기 오염 배출량 탐색하기 · 02-3 생활권 계획하기
씨마스 Ⅳ. 데이터 과학 프로젝트 › 2. 데이터 과학 프로젝트 실제 2-2 긴급 지원이 필요한 국가 군집 분석 (210쪽)
천재 Ⅳ. 데이터 과학 프로젝트 › 00. 데이터 과학 프로젝트 시작하기 Ⅳ. 데이터 과학 프로젝트 › 04. 데이터 과학 프로젝트 수행하기