인공지능 디자인하기 5단계 중 1단계 (사용자 니즈 정의/가설)
PAIR의 구글의 AI 디자인 가이드북을 5개의 챕터로 조금 다듬어 번역/공유해보고자 한다.
1. 사용자 니즈 *
2. 데이터
3. 멘탈모델
4. 신뢰와 피드백
5. 오류
원문을 보고 싶으신 경우 아래 링크에서 확인 가능하다.
https://pair.withgoogle.com/guidebook/
인공지능 기획/디자인 과정은 PC/모바일 디자인 프로세스와 다르지만 또 유사한 점들도 존재한다.
예를 들어 인공지능이라는 새로운 기술을 적용하기 때문에 고민해야 하는 지점은 다를 수 밖에 없겠지만, 사용자에게 올바른 가치를 전달한 다는 측면에서는 동일한 고민을 할 수 밖에 없을 것이다.
인공지능 프로세스 중에 첫번째 프로세스인 사용자 니즈에 대한 정의부터 살펴보도록 하겠다.
User Needs
최고의 인공지능 알고리즘이라도 사용자에게 충분한 가치를 제공하지 않으면 실패할 것이다.
인공지능은 기존의 고유한 가치에 추가적으로 고유의 가치를 더하는 형태로 고민이 되는 것이 중요하며, 이를 위해 사용자의 요구사항을 정의하는 것이 필요하다. (사용자의 요구사항을 정의는 IDEO의 디자인 키트 참조)
사용자의 요구사항이 정의되었다면 다음과 같은 질문을 해보자.
- 우리는 어떻게 __________ 를 해결할 수 있나요?
- 인공지능만의 해결책으로 문제(pain point)를 해결할 수 있나요?
그리고 현재 서비스/제품에서 인공지능을 이미 사용하려고 하거나 사용하고 있다면,
사용자 조사를 통해 인공지능에 대한 가설을 테스트할 수 있다. (오즈의 마법사 테스트 참조)
이 경우 어떤 지점에서 인공지능이 더 나은 경험을 제공할 수 있는지 확인해볼 수 있다.
AI가 적합한 사례
맞춤형 제안 (사람마다 다른 콘텐츠의 추천)
미래 사건의 예측 (11월 뉴욕까지의 여행 항공편 가격)
사용자 경험을 높이는 개인화 (가정용 온도조절기가 학습을 통해 개인화)
자연어의 이해 (챗봇이나 음성 스피커의 활용)
이상 징후의 감지 (신용카드 사기, 혹은 이상금융거래와 같은 상황의 탐지)
AI가 적합하지 않은 사례
유동적인 변화가 필요하지 않은 경우 (홈, 취소 버튼 등은 같은 위치에 있어야 빠르게 선택가능)
제한된 정보를 제공하는 경우 (신용카드 입력양식과 같이 표준화된 정보)
에러가 최소화되어야 하는 경우 (오류가 있으면 안되는 경우, AI는 오류가 존재할 수 밖에 없음)
설명이 가능해야 하는 경우 (시스템의 모든 것을 정확하게 이해해야 할 때)
인공지능 기술보다 시장출시 시기가 더 중요한 경우 (무엇보다 시장에 빠르게 진입이 필요할 때)
사람들이 원치 않는 경우 (자동화나 증강된 인공지능을 원치 않을 때)
인공지능 기획/디자인을 위한 요구사항 정의를 위해 한 번 더 정리해보자.
우리는 AI가 _____{사용자들의 요구사항(Needs)}_____ 을 해결하는 것을 도울 수 있다(혹은 없다).
왜냐하면 __________________________________ 이기 때문이다.
인공지능을 사용하는 것이 필요하다고 판단되는 경우, 인공지능이 자동화에 더 적합한지, 증강에 더 적합한지 확인해보고 결정해야 한다.
자동화(Automation)를 해야할 때
사람들이 원하지 않는 작업을 대신 해줄 수 있거나, 인공지능에 작업을 위임해줄 수 있는 경우 사용한다.
예를 들어, 사진 라이브러리를 정렬하고 사진을 주제별로 그룹화 하는 것을 인공지능은 분류를 알아서 빠르고 쉽게 해줄 수 있다. (구글 포토 인물분류, 페이스북 자동태그 등)
자동화가 제대로 적용되었을 때 이점은 아래와 같다.
효율성 향상 (스프레드 시트에서 수천 개의 행을 검색해야 하는 경우)
사람의 안전성 증가 (센서를 통해 가스누출을 감지할 수 있는 경우)
지루한 작업의 감소 (맞춤법 검사를 위해 문서를 편집해야 하는 경우)
자동화를 통한 효율성 증대
증강(Augumentation)을 해야할 때
인공지능이 기존의 제품/서비스 기능을, 혹은 사람의 능력을 더욱 강화할 수 있는 경우 사용한다.
예를들어, 음악과 미술과 같은 창의적인 작업에서 인공지능을 활용하여 더 의미있는 작업을 할 수 있는 경우, 장애가 있는 사람의 불편함을 더욱 개선해주는 등 다양하게 활용될 수 있다. (Magenta Studio, AI Duet)
증강이 제대로 적용되었을 때 이점은 아래와 같다.
사용자의 즐거움 증대 (예술과 같은 분야에서의 창의성 향상)
자동화 보다 높은 수준의 사용자 제어 (사회적인 의무를 수행하기 위해 통제력과 책임유지가 필요한 경우)
더 큰 사용자 책임 & 성취 (비행, 의사, 은행 업무와 같이 책임감이 높은 업무의 경우)
사람의 능력 향상 (기존 사람의 능력을 더욱 강화시키는 경우)
자동화를 통한 새로운 경험이 가능
모든 인공지능 모델은 목적함수(Objective Function), 손실함수(Loss Function)라고도 하는 보상함수에 대한 정의가 필요하다. 이는 AI모델이 '맞다','틀리다'라고 하는 예측이나 최적화 하려는 작업을 결정하는데 중요한 역할을 한다.
보상 함수를 설계할 때는 UX기획, 그리고 개발 관점에서의 고려가 필요하다고 한다. 이 과정에서 다양한 아이디어들이 나타날 수 있으며 보상 함수를 최적화할 수 있다.
오탐지 관련 예측
True Positive(TP) = 모델이 True를 True로 예측하는 경우
True Negative(TN) = 모델이 False를 False로 예측하는 경우
False Positive(FP) = 모델이 False를 True로 잘못 예측하는 경우
False Negative(FN) = 모델이 True를 False로 잘못 예측하는 경우
이미지 출처: Google AI GuideBook
조금 더 쉽게 풀면 실측값과 예측값으로 나누어 Accuracy와 Precision, Recall을 계산할 수 있는데, 이는 아래 예를 보면 조금 더 쉽게 이해할 수 있을 것이다.
여기서 TP, 즉 True인데 True로 예측한 경우는 3번.
TN, 즉 False인데 False로 예측한 경우 또한 3번.
FN, 즉 True인데 False로 잘못 예측한 경우는 1번.
FP, False인데 True로 잘못 예측한 경우는 3번 있었다.
여기서 Accuracy는 (TP+TN) / (TP+TN+FN+FP) = 6/10 = 0.6 정도의 정확도를 보여주고 있으며,
Precision은 TP / (TP+FP) = 3/6 = 0.5의 정밀도를 보여주고 있다.
마지막으로 Recall은 TP / (TP+FN) = 3/4 = 0.75의 재현율을 보이고 있다.
Accuracy는 너무나 명확하게 전체 예측 중에 정확하게 맞춘 비율이라고 할 수 있고,
Precision은 우선 예측값이 모두 True로 예측되는 것 중에 정말 True인 비중만을 이야기 하므로, 정말 정밀하게 True만 뽑아내는 경우를 이야기하며,
Recall은 실측값이 True이지만 예측값에 False 섞여있는 비중이므로, 틀리더라도 우선 True를 명확히 추출해내는 경우에 좀 더 유용하겠다.
따라서 Precision은 스팸을 걸러내는 것과 같이 정말 True인 것들만을 찾아내는데 더 유용할 것이고,
Recall은 암환자를 찾아내는 것 처럼 False가 포함되더라도 True를 모두 예측할 수 있는, 절대 암환자를 걸러내지 못하는 경우가 발생하지 못하게끔 하는데 더 유용할 것이다.
이는 아래 그림을 보면 보다 명확히 이해할 수 있다.
이미지 출처: Google AI GuideBook
이렇게 보상함수를 디자인 함에 있어, 지금 고려하는 인공지능 기술이 Precision이 더 중요한지, Recall이 더 중요한지를 알아보는 것은 추후 인공지능 서비스의 컨셉을 정의하고 데이터의 우선순위, 중요도를 설정하는데 중요한 기준이 될 것이다.
긍정오류(False Positive) 와 부정오류(False Negative)
만약 AI기능이 더 적은 긍정오류(False Positive)에서 최상의 결과를 낼 수 있다면, 정밀도(Precision)을 최적화 하는 것을 고려해야 한다.
하지만 AI기능이 더 적은 부정오류(False Negative)에서 최상의 결과를 낼 수 있다면, 재현율(Recall)을 최적화 하는 것을 고려해야 한다.
보상함수를 디자인함에 있어 아래와 같은 템플릿과 질문들을 활용해보자.
우리의 AI모델은 _______{정밀도/재현율}_______을 최적화 할 것이다.
왜냐하면 __________{사용자의 이익}___________때문이다.
우리는 이러한 방식을 선택함으로써 생기는 트레이드오프(tradeoff}는 우리의 모델이 사용자에게
____________{사용자의 임팩트}__________를 줄 것이다.
용어정의
Accuracy: 정확도
Precision: 정밀도
Recall: 재현율
앞서 프로세스에서는 AI가 사용자 니즈에 적합한지 파악하고, 자동화와 증강 중 어느 지점에 더 맞는 기술인지에 대한 결정, 마지막으로 Precision과 Recall중 어느 쪽에 더 신경을 써야 하는지 기준을 정의하는 것까지 진행할 수 있었다.
그 외 고려한 AI서비스가 사용자 니즈에 부합했는지 그 결과를 측정하는 것 또한 중요한데, 이는 아래 질문을 통해서 기본적인 가설을 세우는 것 까지가 사용자 니즈에 대한 마무리이지 않을까 싶다.
만약 _____{팀의 구체적인 AI기술}_____이 _____{구체적인 성공 기준}_____을 가지고 있다면, _____{의미있는 임계치}_____를 _____{올리거나/내리거나}_____할 수 있다.
우리는 _____{구체적인 행동을}_____취할 것이다.
Reference
https://pair.withgoogle.com/chapter/user-needs/
https://www.designkit.org/methods#filter
https://experiments.withgoogle.com/collection/ai
https://pair.withgoogle.com/worksheet/user-needs.pdf
일상에서 활용되고 있는 AI의 다양한 사례들이 궁금하다면.
https://brunch.co.kr/magazine/dailyai
email: pentaxzs@daum.net
twitter: @pentaxzs
brunch: https://brunch.co.kr/@monglec