brunch

You can make anything
by writing

C.S.Lewis

by 기획자 연주리 Jan 25. 2021

[구글의 AI서비스기획] 데이터 수집과 평가

구글 PAIR 가이드 2장

공부하기에 앞서,
AI서비스 가이드를 쓴 구글 People+AI 조직이란?

구글의 People + AI Research (줄여서 PAIR) 조직은 AI 프로덕트 (서비스, 기술)를 생산적이고, 즐겁고, 평등하게 만들기 위한 인간 중심의 연구를 하고 있습니다. PAIR는 UX 전문가들이 AI에 인간 중심적 접근을 할 수 있도록 가이드라인을 만들었습니다. 구체적인 내용은 "People + AI 가이드북"으로 제공하고 있습니다.


서비스, UX 기획자들을 위한 AI서비스기획 가이드 정도로 이해할 수 있겠죠? 가이드라인은 웹사이트에서도 읽을 수 있고, 공부하기 편하기 PDF 파일로도 업로드되어 있습니다.


구글 People + AI 가이드북을 편하게 공부할 수 있도록 한국어로 요약 & 번역하여 공유합니다. 이번 글에서는 두 번째 장 "데이터 수집과 평가"를 살펴보겠습니다. 그럼 같이 공부해볼까요? :)




[구글 People+AI 2장] 데이터 수집과 평가하기
Data Collection + Evaluation


이번 장에서 다룰 내용

- 우리의 AI가 사용자 니즈를 만족시키기에 학습 데이터의 피처와 범위가 충분한가?
- 이미 있는 학습 데이터를 사용하는 것이 나을까, 아니면 직접 만들까?
- 어떻게 하면 평가자들이 오류나 편견을 데이터에 반영하지 않게 할 수 있을까?


AI가 바꾼 것


예측(prediction)을 하기 위해, 머신 러닝 모델이 데이터의 패턴과 상관관계를 알 수 있게 학습시켜야 합니다. 이러한 데이터는 "학습 데이터 (training data)"라고 불리며, 이미지, 비디오, 소리 등으로 구성됩니다. 시스템을 학습시키기 위해 현존하는 데이터를 사용해도 되고, 새로이 수집해도 됩니다. 예를 들어, 강아지 품종을 인식하려면 보호소에 있는 강아지 사진 데이터를 활용할 것입니다.


당신이 가져오거나 수집하는 학습 데이터, 그 데이터가 어떻게 레이블 되어 있는지가 시스템의 결과를 직접적으로 결정합니다. 당신의 서비스(product)를 만들기에 AI가 적절하다고 판단했으면, 다음 사항을 고려하세요:


1. 사용자 니즈를 데이터 니즈로 치환하기. 당신의 모델을 학습시키기 위해 필요한 데이터의 종류를 결정하세요. 예측력 (Predictive Power), 타당성, 사생활, 보안을 고려해야 합니다.


2. 데이터를 책임감 있게 가져오세요. 이미 레이블 된 데이터를 사용하든 직접 데이터를 수집하든, 데이터와 데이터 수집 방법을 평가하는 것은 당신의 프로젝트에 그 데이터가 적절하다는 것을 보장하는 데 중요한 역할을 합니다.


3. 운영자(rater), 레이블링을 위한 디자인. 지도 학습의 경우, 유용한 결과를 얻기 위해선 정확한 데이터 레이블이 필요합니다. 운영 정책과 UI 플로우에 대한 사려 깊은 설계는 질 높은 레이블을 생산해 더 나은 결과를 만드는 데 도움이 됩니다.


4. 모델 조율하기. 모델이 돌아가면 머신 러닝 결과를 해석해서 그것이 서비스의 목표와 사용자 니즈에 부합하는지 분석하세요. 그렇지 않다면 고쳐야 합니다: 당신의 데이터가 지닌 잠재적인 이슈를 알아내세요.



1. 사용자 니즈를 데이터 니즈로 치환하기.


AI 모델 학습용 데이터는 예제 데이터(example), 피처(feature), 레이블을 가지고 있습니다.


Google PAIR chp 2


학습 데이터 안에 있는 피처의 범위, 레이블의 질, 예제 데이터의 대표성이 AI 시스템의 수준에 영향을 주는 요소입니다.


위의 표는 특정 주자의 달리기 경험이 얼마나 즐거웠는지 예측하는 머신 러닝 모델을 학습하기 위한 달리기 데이터입니다. 예제 데이터, 피처, 그리고 레이블이 모델의 질에 이렇게 영향을 미칩니다:


| 예제 데이터 Examples


만약 선수급 주자로부터만 예제 데이터를 받는다면, 폭넓은 사용자를 예측하기에 효과적인 모델을 만들기 어렵습니다. 하지만, 선수급 주자들을 위한 예측 모델을 만든다면 유용하겠죠.


| 피처 Features


만약 고도 상승 (위 표에서 Elevation) 피처가 데이터에서 누락되었다면, 머신러닝 모델은 3마일 오르막길을 달린 것과 3마일 내리막길을 달린 것을 동일하게 다룰 것입니다. 사람이 직접 느낀 달리기 경험은 매우 다르겠지만요.


| 레이블 Labels


레이블은 주자들의 주관적인 경험을 알려줍니다. 레이블은 재미있는 달리기 만들어낼 확률이 높은 피처를 시스템이 알아내는 데 도움을 줍니다.


어떤 예제 데이터, 피처, 그리고 레이블이 당신의 머신러닝 모델을 학습시키기에 필요한지 결정할 때, 아래 예시와 같이 개념적인 수준으로 데이터 니즈를 분석하세요.


이 예시는 "나는 바쁜 스케줄에 뛰는 일정을 끼워 넣고 싶어"라는 사용자 니즈를 해결하고자 하는 서비스를 위한 데이터 니즈 분석입니다.



| 사용자 니즈를 데이터 니즈와 연결하세요


- 사용자 : 주자 (뛰는 사람)

- 사용자 니즈 : 더 자주 뛰는 것

- 사용자 행동 : 앱을 사용하면서 혹은 사용하고 완주함

- 머신러닝 시스템 결과 : 어떤 길을 추천하고 언제 추천할지

- 머신러닝 시스템 학습 : 뛰라는 알림을 받아들임, 완주, 지속성을 개선해나가는 행동의 패턴

- 필요한 데이터 : 앱의 러닝 데이터, 인구통계학 정보, 생리적인 데이터, 지리적인 데이터

- 데이터에서 필요한 주요 피처 : 주자의 인구통계학 정보, 몇 시에 뛰었는지, 완주 비율, 속도, 뛴 거리, 오른 정도, 심박수

- 데이터에서 필요한 주요 레이블 : 앱에서 뛰라는 푸시를 줬을 때 수락 혹은 거절, 거절한 이유에 대한 사용자의 피드백, 그리고 추천된 러닝을 즐긴 정도


어떤 종류의 데이터가 필요한지 아이디어를 얻으면 주요 고려 사항들을 훑기 위해 구글의 AI 원칙책임감 있는 AI 실행을 기초 자료로 활용해보세요.



| 사생활과 보안을 잘 관리하세요

Photo by Arget on Unsplash


어떤 서비스든 사생활과 보안을 지키는 것은 필수입니다. 위의 러닝 관련 예시도 생리적인 데이터와 인구 통계학적 데이터가 민감한 것으로 여겨질 수 있습니다.


AI와 머신러닝의 특수한 성질로 인해 수많은 질문이 발생합니다. 아래 두 가지가 그러한 질문입니다.


1) 데이터 사용에 대한 사용자 동의와 관련된 제한 사항은?

데이터를 수집할 때 모범 규준은 시스템이 사용할 데이터와 어떻게 사용할 것인지를 사용자가 최대한 많이 결정할 수 있도록 하는 것입니다. 사용자가 이탈하거나 계정을 지울 수 있는 기능을 제공할 수 있습니다. 당신의 시스템이 이러한 사항을 수용할 수 있도록 하세요.


2) 사용자 데이터를 실수로 공개했을 때의 리스크는? 결과는 어떠할까?

예를 들어, 사용자의 건강 정보는 사생활 정보일 수도 있는데 AI 홈 스피커가 사용자에게 약을 먹으라는 알림을 주면 그 방에 있는 다른 사람들에게 개인적인 의료 데이터를 공개하게 됩니다.



| 과소적합 (Underfitting)과 과대적합 (Overfitting)의 균형을 맞추세요


특정 상황에서 작동할 서비스를 만들려면 그 상황을 반영하는 데이터를 사용하세요. 예를 들어, 자연어 이해 모델은 말하기 위한 모델이므로 사용자의 사용자의 검색 기록을 학습 데이터로 사용하는 것은 적절하지 않습니다. (사람들은 말하는 대로 타자를 치지 않죠.)


만약 학습 데이터가 상황과 맞지 않는다면 학습 데이터가 과대적합 혹은 과소적합할 위험을 높입니다. 과대적합은 머신 러닝 모델이 학습 데이터에 딱 맞게 지어지는 것을 의미하며 여러 요인에 의해 발생합니다. 머신러닝 모델이 과대적합하면 학습 데이터는 훌륭하게 처리하지만 새로운 데이터를 처리할 때에는 수행 능력이 떨어집니다.


AI 모델은 과소적합으로도 부정확한 예측을 할 수 있습니다. 과소적합은 학습 데이터의 피처의 관계의 복잡성을 적절히 인식하지 못해 학습 데이터와 새로운 데이터로 좋은 예측을 하지 못하는 것을 의미합니다.


먼저, 좋은 학습 데이터를 만들기 위해 필요한 예제 데이터, 피처, 레이블을 당신의 팀에서 개념적인 차원으로 논의하세요. 그 후 사용자 니즈에 기반해 가장 중요할 것으로 예상되는 피처에 대해 말해보세요.


결국 AI 모델을 학습할 데이터의 피처를 결정하는 것이 중요합니다.

피처를 구체적으로 정의하지 않은 채 데이터를 수집하면 좋은 서비스를 만들 수 없습니다. 예를 들어, 위 러닝 앱 예시에서 사용자가 뛰면서 오른 고도를 피처에 추가하지 않았다면 사용자에게 적절한 러닝 코스나 시간을 추천할 수 없을 것입니다.

물론, 한 번에 완벽한 모델을 만들기 어렵고 서비스도 계속 개선해야 하기 때문에 새로운 피처를 추가해야 할 수 있습니다. AI가 빅 데이터를 필요로 하는 만큼, 새로운 피처를 반영하기 위해선 데이터 수집을 위해 기존에 들였던 시간과 비용을 더 들여야 할 수 있습니다. 효율적인 업무를 위해 초기에 시간이 많이 걸리더라도 데이터를 제대로 정의하고 그 후 수집하는 것이 좋습니다.


| 공정성에 기여하세요


매 개발 단계마다 사람의 편견이 머신러닝 모델을 마주칠 수 있습니다. 데이터를 실제 세상과 사람들로부터 수집되고 그들의 개인적인 경험과 편견을 반영합니다. 이런 패턴은 머신러닝 모델에 의해 내재적으로 발견되고 증폭될 수 있습니다.


가이드북에서 머신러닝 공정성과 관련하여 몇 가지 조언을 해주지만, 완벽한 자료는 아닙니다. AI의 공정성을 해결하고, 불공정한 편견을 최소화하는 것은 활발한 연구 주제입니다. 최신 머신러닝 공정성 안내와 추천하는 방법을 보려면 구글의 책임감 있는 AI 실행을 보세요.


사용자에게 도움이 되지 않는 머신러닝 시스템의 예시입니다:

대표성의 위해: 시스템이 특정 집단의 부정적인 고정관념을 반영하거나 증폭시킬 경우

기회 부정: 시스템의 예측과 결정이 실제 삶에 영향을 미쳐 개인의 기회, 자원, 전반적인 삶의 질을 떨어트릴 경우

불균형적인 서비스 실패: 서비스가 특정 집단의 사용자에게 제대로 작동하지 않거나 더 자주 왜곡된 결과를 가져올 경우

불이익으로 인한 위해: 특정 인구통계학적 특징, 사용자 행동, 관심을 지녔을 때 불리한 연관 관계를 추론했을 경우



| 다양한 집단의 사용자에게 적용되는 데이터를 사용하세요

Photo by Ali Yahya on Unsplash


당신의 학습 데이터는 서비스를 사용할 사람들의 문화적인 배경과 다양성을 반영해야 합니다. "Facets"와 같은 도구를 통해 당신의 데이터를 탐구하고 데이터의 편견을 더 잘 이해해보세요. 모델을 적절히 학습시키기 위해선 서로 다른 집단의 사용자 데이터를 동일한 비율로 수집해야 합니다. 현실 세계의 비율을 반영하는 것이 아니고요. 예를 들어, 음성 인식 소프트웨어가 미국 내 모든 사용자에게 동일하게 작동하기 위해선 학습 데이터의 50%가 영어가 제 2 외국어인 사람들의 것이어야 합니다. 아무리 그들이 소수이더라도 말이죠.


데이터 수집 시 소수 집단의 데이터를 소수로 반영하는 것이 아니라 반을 차지하게 하라는 말이 참 인상 깊습니다. 대부분은 더 많은 사용자에게 어필하기 위해 다수를 위한 서비스를 만듭니다. 효율성과 수익성에 정신이 팔려 소수 집단의 데이터를 반영할 생각조차도 못하는 실정입니다.

따라서 소수는 차별받기 쉽습니다. 차별하지 않는 서비스를 만들기 위해선 소수의 데이터를 다수만큼 많이 수집해야 합니다. 이렇게 데이터를 수집한다면 누구나 사용하기 편하고 유용한 서비스를 만들 수 있을 것입니다.


| 데이터 수집과 평가 과정에서의 편견을 고려하세요


완벽하게 중립적인 데이터 같은 것은 없습니다. 간단한 사진조차도 사용된 장비와 조명에 의해 형성됩니다. 더욱이 데이터 수집과 평가 과정에 인간이 있기 때문에 그 결과물은 인간의 편견을 담기 마련입니다.


예를 들어, 당신이 새로운 건강과 피트니스 목표를 사용자에게 추천하는 시스템을 만든다고 합시다. 넓은 범위의 기초 체력 수준을 지닌 사용자가 안전하게 달성할 수 있는 목표를 세우고자 한다면, 다양한 사용자 부류를 학습 데이터를 포함하는 것이 중요합니다. 젊고 건강한 사람들만이 아니고요.


마무리 글


지금까지 AI서비스기획을 하며 AI 학습 데이터를 수집할 때 굉장히 많은 양의 데이터를 수집해야 되므로 정확성과 양에만 신경 쓰지, 사람의 편견이 들어갔는지까지 고려하지 못하는 것 같습니다.


제가 진행했던 "배우 얼굴 이미지 수집"을 생각해 보겠습니다. 우리나라 사람들이 익숙하지 않은 인종의 배우, 익숙하지 않은 배경 (중국 사극 등)의 캐릭터의 경우, 운영자가 이미지를 잘못 수집하는 경우가 있었습니다. 학습 이미지가 잘못 수집된 인물은 오인식될 확률이 높습니다. 전 세계 배우 이미지를 적절히 수집하기 위해선 다양한 문화에 대한 이해가 필요합니다.


지금까지 데이터를 모을 때 효율성만 고려했다면 앞으로는 데이터가 편향되었는지까지 인지할 수 있길 기대합니다.

 



2장의 1번 항목 "사용자 니즈를 데이터 니즈로 치환하기"가 길어져 한 번 끊고 가겠습니다.


다음 글에선 2장 "Data Collection + Evaluation"의 2. 데이터를 책임감 있게 가져오세요, 3. 운영자(rater), 레이블링을 위한 디자인, 4. 모델 조율하기를 다루겠습니다.


다음에 또 만나요 :)


구글 AI 서비스 기획 1장 리뷰:


브런치는 최신 브라우저에 최적화 되어있습니다. IE chrome safari