분석은 끝없이 더 좋아질 수 있습니다. 그래서 분석 프로젝트에서는 언제 멈출지를 정하는 것도 관리입니다.
풀고 시작
문제 1. 한 분석팀이 같은 모델을 여러 번 돌리면 결과가 매번 거의 같게 나오지만, 그 결과가 실제 값과는 늘 한쪽으로 크게 어긋나 있습니다. 이 모델의 상태를 가장 잘 설명한 것은 무엇입니까?
여러 번 해도 결과가 일정하니 정밀도는 높고, 그 결과가 참값에서 한쪽으로 어긋나 있으니 정확도는 낮습니다. 과녁으로 치면 화살이 한곳에 몰려 박혔는데 그곳이 한가운데가 아닌 모습입니다.
분석 프로젝트는 무엇이 다른가
일반적인 정보 시스템 구축 프로젝트는 무엇을 만들지가 처음부터 비교적 분명합니다. 화면 몇 개, 기능 몇 개를 언제까지 만든다고 약속할 수 있죠. 분석 프로젝트는 다릅니다. 결과를 미리 알 수 없습니다. 데이터를 열어 봐야 쓸 만한 패턴이 있는지 알 수 있고, 모델을 돌려 봐야 원하는 정확도가 나오는지 압니다. 그래서 분석 프로젝트는 계획대로 가기보다 반복하며 좁혀 갑니다. 2강에서 본 CRISP-DM이 단계 사이를 오가도록 그려진 것도 이 때문입니다.
이 불확실성 때문에 분석 프로젝트에는 두 가지 관리가 함께 필요합니다. 하나는 모든 프로젝트에 필요한 일정과 예산과 사람의 관리이고, 다른 하나는 분석이라는 일 자체의 특성에서 오는 관리입니다. 뒤의 것부터 보겠습니다.
분석 과제를 재는 다섯 가지 눈
분석 과제는 몇 가지 특성으로 무게를 잽니다. 과제를 시작하기 전에 이 특성들을 따져 두면 어디서 어려움이 올지 미리 알 수 있습니다.
데이터 크기. 다룰 데이터가 얼마나 큰가입니다. 크기가 커지면 저장과 처리 방식을 바꿔야 할 수 있습니다.
데이터 복잡도. 데이터가 얼마나 여러 형태로, 여러 곳에 흩어져 있는가입니다. 정형 데이터 한 테이블이면 단순하지만, 로그와 텍스트와 이미지가 여러 시스템에 흩어져 있으면 모으고 맞추는 데만 큰 노력이 듭니다.
속도. 결과가 얼마나 빨리 나와야 하는가입니다. 한 달에 한 번 보는 보고서와, 거래 한 건마다 1초 안에 판정해야 하는 시스템은 설계부터 다릅니다.
분석 복잡도. 쓰는 기법이 얼마나 복잡한가입니다. 여기에는 늘 따라다니는 거래가 있습니다. 복잡한 모델일수록 정확할 수 있지만 왜 그런 결과가 나왔는지 설명하기는 어려워집니다. 현업이 결과를 믿고 써야 하는 과제라면 조금 덜 정확해도 설명할 수 있는 모델이 나을 때가 있습니다. 1강의 장애물 이야기와 같은 대목입니다.
정확도와 정밀도. 결과가 얼마나 믿을 만한가를 두 방향에서 봅니다. 정확도(accuracy)는 결과가 참값에 얼마나 가까운가, 정밀도(precision)는 같은 일을 되풀이했을 때 결과가 얼마나 일정한가입니다. 과녁에 비유하면 정확도는 한가운데에 가까운 정도, 정밀도는 화살들이 서로 얼마나 모여 박혔는가입니다. 둘은 따로 움직여서, 풀고 시작의 모델처럼 정밀하지만 부정확할 수도 있습니다.
조심할 점이 하나 있습니다. 3과목 14강에서 분류 모형을 평가할 때 나오는 "정밀도"는 이것과 다른 뜻입니다. 거기서는 양성이라고 예측한 것 가운데 실제로 양성인 비율을 가리킵니다. 같은 낱말이 두 자리에서 다른 뜻으로 쓰이니 문맥으로 가려 읽어야 합니다.
프로젝트 관리의 열 가지 영역
분석 프로젝트도 결국 프로젝트이므로 일반적인 프로젝트 관리의 틀을 따릅니다. 국제 표준 ISO 21500은 프로젝트 관리를 열 개의 주제 영역으로 나누는데, 우리나라에서도 같은 내용이 KS 표준으로 채택되어 있습니다.
영역
분석 프로젝트에서 특히 볼 것
통합
여러 과제와 영역을 하나의 흐름으로 조정합니다
이해관계자
현업, 개발, 경영진이 무엇을 기대하는지 맞춥니다
범위
결과물이 보고서인지 시스템인지에 따라 범위가 크게 달라집니다
자원
분석가, 데이터 엔지니어처럼 필요한 사람과 장비를 확보합니다
시간
데이터 준비가 예상보다 오래 걸리기 쉬워 여유를 둡니다
원가
외부 데이터 구매나 클라우드 사용료처럼 숨은 비용을 셉니다
리스크
원하는 결과가 안 나올 가능성을 미리 대비합니다
품질
결과의 품질을 확인하고 그 과정이 제대로 돌았는지 보증합니다
조달
외부 데이터, 오픈소스, 외주를 어떻게 들일지 정합니다
의사소통
분석 결과를 전문가가 아닌 사람도 이해하도록 전합니다
이 가운데 분석 프로젝트에서 유난히 무거운 것이 범위와 시간입니다. 범위는 결과물의 모양에 따라 요동칩니다. "고객 이탈 요인을 알려 주세요"라는 요청이 분석 보고서 한 편으로 끝날 수도, 매일 이탈 위험 고객을 뽑아 주는 운영 시스템으로 커질 수도 있죠. 시간은 데이터 준비가 잡아먹습니다. 흩어진 데이터를 모으고 결측값을 다루고 형식을 맞추는 일이 모델을 만드는 일보다 훨씬 오래 걸리는 경우가 흔합니다.
언제 멈출지를 정합니다
분석은 더 좋게 만들 여지가 끝없이 남습니다. 변수를 하나 더 넣고, 기법을 하나 더 시험하면 정확도가 조금 더 오를 수 있죠. 그래서 분석 프로젝트에서는 정해진 기간 안에 할 수 있는 만큼만 하고 넘어가는 방식이 자주 쓰입니다. 일정한 시간을 상자처럼 정해 두고 그 안에서 결과를 내는 이 방식을 타임 박싱(time boxing)이라고 부릅니다. 완벽한 모델을 끝없이 다듬는 것보다, 쓸 만한 결과를 제때 내고 다음 바퀴에서 개선하는 편이 조직에는 더 이롭습니다. 여러 과제의 바퀴를 어떤 순서로 굴릴지는 다음 강의 마스터 플랜이 정합니다.
인출 문제
문제 1. 분석 프로젝트가 일반적인 정보 시스템 구축 프로젝트와 가장 크게 다른 점은 무엇입니까?
분석 프로젝트는 결과가 불확실해 데이터와 모델을 오가며 반복적으로 좁혀 갑니다. 그래도 일정과 예산 관리는 여전히 필요하고, 만들 것이 처음부터 분명한 것은 오히려 일반 구축 프로젝트의 성격입니다.
문제 2. 분석 과제의 특성 가운데 "복잡한 모델일수록 정확할 수 있지만 결과를 설명하기 어려워진다"는 거래가 따라다니는 것은 무엇입니까?
쓰는 기법이 복잡할수록 성능은 오를 수 있지만 왜 그런 결과가 나왔는지 설명하기 어려워지는 것이 분석 복잡도의 거래입니다. 데이터 복잡도는 데이터가 얼마나 여러 형태로 흩어져 있는가를 가리킵니다.
문제 3. 분석 프로젝트에서 흔히 가장 많은 시간을 잡아먹는 일은 무엇입니까?
여러 곳의 데이터를 모으고 결측값을 다루고 형식을 맞추는 데이터 준비가 모델을 만드는 일보다 오래 걸리는 경우가 흔합니다. 그래서 시간 영역을 관리할 때 이 부분에 여유를 둡니다.
문제 4. 타임 박싱(time boxing)의 뜻으로 가장 알맞은 것은?
타임 박싱은 시간을 상자처럼 정해 두고 그 안에서 쓸 만한 결과를 내는 방식입니다. 끝없이 다듬기보다 제때 결과를 내고 다음 바퀴에서 개선하는 편이 조직에 이롭다는 판단에서 나왔습니다.
더 풀기
출제기준의 세부항목을 따라 이 강의 범위에서 새로 낸 문제입니다. 모의고사도 여기에서 뽑습니다.
묶음 1
문제 1. 정확도(accuracy)의 뜻으로 가장 알맞은 것은?
정확도는 결과가 실제 값, 곧 참값에 가까운 정도입니다. 되풀이했을 때 결과가 일정한 정도는 정밀도이고, 빠르기는 속도, 형태의 다양함은 데이터 복잡도입니다.
문제 2. 정밀도(precision)를 과녁에 비유할 때 가장 알맞은 것은?
정밀도는 되풀이한 결과가 서로 얼마나 모여 있는가이므로, 화살들이 한곳에 몰려 박힌 정도에 비유됩니다. 한가운데에 가까운 정도는 정확도입니다.
문제 3. 한 모델의 결과가 매번 크게 흩어지지만, 그 흩어진 결과들의 평균은 참값에 가깝습니다. 이 모델의 상태로 가장 알맞은 것은?
평균이 참값에 가까우니 정확도는 높은 편이고, 결과가 매번 크게 흩어지니 정밀도는 낮습니다. 과녁으로 치면 화살이 한가운데 주변에 넓게 흩어진 모습입니다.
문제 4. 이 강에서 말하는 정밀도와 3과목 분류 평가의 정밀도가 어떻게 다른지 옳게 설명한 것은?
같은 낱말이 두 자리에서 다른 뜻으로 쓰입니다. 여기서는 결과의 일정함을, 분류 평가에서는 양성 예측의 적중 비율을 가리키므로 문맥으로 가려 읽어야 합니다.
문제 5. 분석 과제의 특성 가운데 "로그, 텍스트, 이미지가 여러 시스템에 흩어져 있어 모으고 맞추는 데 큰 노력이 든다"는 것은 무엇입니까?
데이터가 여러 형태로 여러 곳에 흩어져 있어 모으고 맞추기 어려운 것이 데이터 복잡도입니다. 데이터의 양 자체가 커서 생기는 어려움은 데이터 크기입니다.
문제 6. 분석 과제의 특성 가운데 "거래 한 건마다 1초 안에 판정해야 한다"는 요구와 가장 관련 깊은 것은 무엇입니까?
결과가 얼마나 빨리 나와야 하는가가 속도의 특성입니다. 한 달에 한 번 보는 보고서와 즉시 판정해야 하는 시스템은 속도의 요구가 달라 설계부터 달라집니다.
문제 7. 현업이 결과를 믿고 써야 하는 과제에서 "조금 덜 정확해도 설명할 수 있는 모델"이 나을 수 있는 이유로 가장 알맞은 것은?
결과가 왜 나왔는지 알 수 있어야 현업이 믿고 씁니다. 정확도가 무의미하다는 뜻이 아니라, 쓰이지 않는 정밀한 모델보다 쓰이는 설명 가능한 모델이 나을 수 있다는 뜻입니다.
문제 8. 분석 과제의 특성을 과제 시작 전에 따져 두는 이유로 가장 알맞은 것은?
데이터 크기, 복잡도, 속도, 분석 복잡도, 정확도와 정밀도를 미리 재 두면 어느 부분이 어려울지 알고 대비할 수 있습니다. 과제마다 특성이 달라 같은 방식으로 관리할 수 없다는 점도 드러납니다.
문제 9. 프로젝트 관리를 열 개의 주제 영역으로 나눈 국제 표준은 무엇입니까?
ISO 21500은 프로젝트 관리 지침을 담은 국제 표준으로, 관리 대상을 열 개의 주제 영역으로 나눕니다. ISO 9001은 품질 경영, ISO 27001은 정보 보안 표준이고, CRISP-DM은 분석 방법론입니다.
문제 10. ISO 21500의 주제 영역 가운데 "현업, 개발, 경영진이 무엇을 기대하는지 맞추는" 영역은 무엇입니까?
프로젝트에 관계된 여러 사람의 기대와 요구를 파악하고 맞추는 것이 이해관계자 영역입니다. 분석 프로젝트는 현업과 개발과 경영진의 기대가 서로 다르기 쉬워 이 영역이 중요합니다.
묶음 2
문제 1. ISO 21500의 주제 영역 가운데 "결과물이 보고서인지 운영 시스템인지에 따라 크게 달라진다"는 특징이 있는 영역은 무엇입니까?
범위는 프로젝트가 무엇까지 만들지를 정하는 영역이고, 분석 프로젝트에서는 결과물의 모양에 따라 크게 요동칩니다. 이탈 요인을 알려 달라는 요청이 보고서로 끝날 수도, 운영 시스템으로 커질 수도 있습니다.
문제 2. ISO 21500의 주제 영역 가운데 외부 데이터 구매, 오픈소스 활용, 외주를 어떻게 들일지 정하는 영역은 무엇입니까?
프로젝트에 필요한 것을 바깥에서 들여오는 방법을 정하는 것이 조달 영역입니다. 분석 프로젝트에서는 외부 데이터나 오픈소스, 외주가 대표적인 조달 대상입니다.
문제 3. ISO 21500의 주제 영역 가운데 "원하는 결과가 나오지 않을 가능성"을 미리 대비하는 영역은 무엇입니까?
결과가 불확실한 분석 프로젝트에서 실패할 가능성을 미리 따지고 대비하는 것이 리스크 영역입니다. 분석 프로젝트는 결과를 미리 알 수 없어 이 영역이 특히 중요합니다.
문제 4. ISO 21500의 주제 영역 가운데 분석 결과를 전문가가 아닌 사람도 이해하도록 전하는 영역은 무엇입니까?
결과를 이해관계자에게 알맞게 전하는 것이 의사소통 영역입니다. 1과목 5강에서 본 소프트 스킬의 전달력이 프로젝트 관리에서는 이 영역으로 나타납니다.
문제 5. ISO 21500의 주제 영역 가운데 여러 과제와 영역을 하나의 흐름으로 조정하는 영역은 무엇입니까?
통합은 흩어진 여러 영역과 과제를 하나의 흐름으로 묶어 조정하는 영역입니다. 한 영역만 잘해서는 프로젝트가 굴러가지 않으므로 이를 전체적으로 맞추는 역할입니다.
문제 6. 분석 프로젝트의 원가를 관리할 때 놓치기 쉬운 숨은 비용으로 가장 알맞은 것은?
외부에서 사는 데이터나 쓰는 만큼 나가는 클라우드 사용료는 처음 계획에서 빠뜨리기 쉬운 비용입니다. 원가 영역에서 이런 숨은 비용을 미리 세어 둬야 합니다.
문제 7. 품질 영역에서 "품질을 확인하는 것"과 "그 과정이 제대로 돌았는지 보증하는 것"을 함께 보는 이유로 가장 알맞은 것은?
결과를 점검하는 일과 그 결과를 낳은 과정이 제대로 돌았는지 보증하는 일은 서로 보완합니다. 과정이 믿을 만해야 한 번의 좋은 결과가 우연이 아니라 되풀이되는 품질이 됩니다.
문제 8. 분석 프로젝트에서 시간 영역을 관리할 때 데이터 준비에 여유를 두는 이유로 가장 알맞은 것은?
데이터 준비는 예상하지 못한 결측값이나 형식 차이 때문에 늘어지기 쉽습니다. 그래서 일정을 짤 때 이 부분에 여유를 두는 것이 현실적입니다.
문제 9. 분석이 끝없이 개선될 수 있다는 성질이 프로젝트 관리에 주는 시사점으로 가장 알맞은 것은?
분석은 더 좋아질 여지가 계속 남으므로 어디서 멈출지를 정하지 않으면 끝나지 않습니다. 타임 박싱처럼 기간을 정해 결과를 내고 다음 바퀴에서 개선하는 것이 관리의 요령입니다.
문제 10. ISO 21500에 관한 설명으로 옳은 것은?
ISO 21500은 프로젝트 관리의 지침을 담은 국제 표준이고, 우리나라에서도 KS 표준으로 채택되어 있습니다. 분석 프로젝트도 프로젝트이므로 이 틀을 따를 수 있습니다.
묶음 3
문제 1. 분석 프로젝트에 두 가지 관리가 함께 필요하다고 할 때, 그 두 가지로 가장 알맞은 것은?
분석 프로젝트도 일정과 예산, 사람을 관리해야 하고, 여기에 결과가 불확실하고 반복적인 분석의 특성에서 오는 관리가 더해집니다. 둘 중 하나만으로는 프로젝트가 굴러가지 않습니다.
문제 2. 한 분석 과제가 "매일 수억 건의 로그를 처리해야 한다"는 부담을 안고 있습니다. 분석 과제의 특성 가운데 가장 두드러진 것은 무엇입니까?
다룰 데이터의 양 자체가 막대하니 데이터 크기가 가장 두드러집니다. 크기가 커지면 저장과 처리 방식을 바꿔야 할 수 있습니다.
문제 3. 다음 가운데 분석 과제를 재는 특성으로 보기 어려운 것은?
분석 과제는 데이터 크기, 데이터 복잡도, 속도, 분석 복잡도, 정확도와 정밀도로 무게를 잽니다. 분석가의 나이는 과제의 특성이 아닙니다.
문제 4. 정확도와 정밀도가 "따로 움직인다"는 말의 뜻으로 가장 알맞은 것은?
정확도는 참값과의 거리, 정밀도는 결과의 일정함이라 서로 독립적으로 움직입니다. 그래서 정밀하지만 부정확한 경우와 정확하지만 들쭉날쭉한 경우가 모두 있을 수 있습니다.
문제 5. "고객 이탈 요인을 알려 주세요"라는 요청을 받았을 때 범위 관리 차원에서 가장 먼저 해야 할 일은 무엇입니까?
같은 요청이라도 결과물의 모양에 따라 범위가 크게 달라지므로, 무엇을 만들지부터 이해관계자와 합의해야 합니다. 범위를 정하지 않고 시작하면 일정과 원가가 뒤따라 흔들립니다.
문제 6. 일반적인 정보 시스템 구축 프로젝트의 성격으로 가장 알맞은 것은?
일반 구축 프로젝트는 만들 화면과 기능이 처음부터 비교적 분명해 약속하기 쉽습니다. 결과를 미리 알 수 없고 반복하며 좁혀 가는 것은 분석 프로젝트의 성격입니다.
문제 7. 한 팀이 새 모델의 정확도를 0.1퍼센트 더 올리려고 석 달째 결과 보고를 미루고 있습니다. 가장 알맞은 조언은 무엇입니까?
끝없이 다듬으며 결과를 미루기보다 정해 둔 기간 안의 쓸 만한 결과를 먼저 내고, 다음 바퀴에서 개선하는 것이 타임 박싱의 요령입니다. 조직은 제때 나온 결과에서 더 많은 것을 얻습니다.
문제 8. ISO 21500의 주제 영역 가운데 분석가와 데이터 엔지니어 같은 필요한 사람과 장비를 확보하는 영역은 무엇입니까?
프로젝트에 필요한 사람과 장비를 확보하고 배치하는 것이 자원 영역입니다. 외부에서 사들이는 것을 정하는 조달과 구분됩니다.
문제 9. 분석 프로젝트 관리에 관한 진술로 옳지 않은 것은?
분석은 오히려 끝없이 개선할 여지가 있어 언제 멈출지를 정하는 것이 관리의 일입니다. 나머지 셋은 이 강에서 다룬 내용을 그대로 담고 있습니다.
문제 10. 분석 복잡도와 해석 가능성의 거래를 가장 잘 보여 주는 예는 무엇입니까?
단순한 모델은 판단 근거가 분명해 설명하기 쉽고, 복잡한 신경망은 성능이 좋을 수 있지만 내부 판단을 풀어 설명하기 어렵습니다. 이것이 분석 복잡도가 가져오는 전형적인 거래입니다.