통합 검색어 입력폼

인간 중심의 기계 학습을 위한 7가지 조언

조회수 2018. 3. 7. 17:44 수정
번역beta Translated by kaka i
번역중 Now in translation
글자크기 설정 파란원을 좌우로 움직이시면 글자크기가 변경 됩니다.

이 글자크기로 변경됩니다.

(예시) 다양한 분야의 재밌고 유익한 콘텐츠를 카카오 플랫폼 곳곳에서 발견하고, 공감하고, 공유해보세요.

말하자면 기계 학습은 문제를 찾기 위한 무기입니다.

※ 구글의 Josh Lovejoy와 Jess Holbrook이 작성한 「Human-Centered Machine Learning」을 저자의 허락을 받고 요약 번역한 글입니다. 링크에서 전문을 보실 수 있습니다.


Josh Lovejoy는 구글 리서치 및 기계 정보 그룹(Research and Machine Intelligence Group)의 UX 디자이너입니다. 인터랙션 디자인, 기계 학습, 무의식적 편견 인식 분야를 넘나들며 기계 학습 공평성을 위한 전략과 디자인을 이끕니다. Jess Holbrook은 같은 그룹의 UX 매니저이자 연구원입니다. 인공지능과 기계 학습 기반의 다양한 제품이 인간 중심으로 접근하도록 팀과 함께 노력합니다. Akiko Okazaki가 아름다운 일러스트 작업을 해주었습니다.


기계 학습은 수동적인 프로그래밍이 아닌 컴퓨터가 스스로 데이터들의 패턴과 관계를 찾아내도록 만드는 과학입니다. 넷플릭스의 추천 시스템부터 자율주행 자동차에 이르기까지 개인에게 최적화된 경험을 역동적으로 만들어내는 강력한 도구입니다. 기계 학습 기반으로 많은 게 만들어지는 과정에서 UX 종사자들은 사용자가 이 기술을 어떻게 경험하고 상호작용할지 많은 부분을 배우고 고민해야 합니다. 


구글의 UX 커뮤니티에서는 ‘인간 중심의 기계 학습(Human-Centered Machine Learning, HCML)’을 기조로 기계 학습 기술이 필요한 문제의 해결 과정에서 사용자의 필요에 중심을 두도록 노력했습니다. 회사 전체의 UX 종사자들과 협력해 기계 학습과 AI가 어떻게 전반적인 UX에 반영될 수 있을지 고민합니다. 기계 학습을 이제 알기 시작했다면 복잡함과 폭넓은 기회에 놀랄지도 모릅니다. 하지만 스스로를 새롭게 창조할 필요는 없습니다.


기계 학습을 기반으로 서비스를 설계하고, 이 영역을 탐색하는 디자이너들을 돕기 위해 구글의 UX 팀과 AI 팀에서 시행착오를 거치며 아래의 7가지 항목을 만들었습니다. 이는 사용자를 고려하면서 기계 학습이 만들어내는 고유한 기회 영역들을 탐색하는 데 도움이 될 것입니다.



1. 기계 학습은 해결할 문제를 스스로 파악하지 못한다


현재 기계 학습과 인공지능을 둘러싸고 기대와 홍보가 과도합니다. 수많은 회사와 팀이 기계 학습으로 접근하는 문제가 의미 있는지 고민하지 않은 채 기술만 활용한 솔루션 전략으로 뛰어듭니다. 가능성을 탐색하며 새로운 영감을 받기도 하지만 사용자의 필요를 고려하지 못하면 매우 작거나 전혀 존재하지 않는 문제를 해결하는, 그저 강력하기만 한 시스템을 구축할 뿐입니다.

첫 번째 요점은 사용자의 필요가 정확히 무엇인지 알기 위해 늘 해왔던 노력이 여전히 필요하다는 점입니다. 기계 학습만 가지고는 해결해야 할 문제가 무엇인지 파악할 수 없습니다. 


표현되지 않은 욕구나 문제를 파악하기 위해 인류학적 접근(Ethnography), 맥락에 따른 질문법(Contextual Inquiry), 인터뷰, 설문조사, 고객 피드백 읽기, 로그 분석 등의 방법을 여전히 사용해야 합니다. UX를 하는 우리들은 기술의 패러다임이 무엇이든 문제를 찾기 위한 무기를 이미 갖추었습니다.



2. 기계 학습이 유일한 방법인지 따질 것


해결해야 할 문제가 무엇인지 파악했다면 기계 학습이 유일한 해결방법인지 판단해야 합니다. 서비스를 만들 때 어떤 경험이 기계 학습을 필요로 하는지, 향상하는 것은 무엇인지, 별로 유익하지 않거나 안 좋아지는 것은 무엇인지 파악해야 합니다. 사실 기계 학습 없이도 개인에게 최적화된 경험을 충분히 만들 수 있습니다.

‘attachment’ 혹은 ‘attached’와 같은 단어를 사용하고 첨부가 없을 경우 리마인드를 제공하는 지메일

기계 학습으로만 가능할 것이라는 생각에 빠지지 마세요. 아래의 몇 가지 질문으로 실제 케이스를 생각하며 기계 학습의 가치를 이해해보세요. 그 과정에서 사람들이 어떤 멘탈 모델을 떠올리고 어떤 기대를 품을지 정의하면 어떤 데이터가 필요한지 파악할 수 있습니다.

  • ‘전문가’가 어떻게 이 작업을 수행할지 설명해보세요.
  • ‘전문가’가 다음에 어떻게 해야 향상되었다고 느낄지 알려주세요. 오차 행렬(Confusion Matrix) 사분면을 통해 설명해보세요.
  • 만약 사람이 이 작업을 한다면, 사용자는 그가 무엇을 하길 원할까요?


이 질문에 답해보면서 사람들이 기계 학습 서비스에 자연스럽게 가지는 기대를 이끌어내고 활발한 토론과 사용자 조사를 위한 좋은 자극제가 될 수 있습니다. 질문에 답한 다음 서비스의 기능을 추가적으로 스케치 및 스토리 보딩해보면서 아래의 간단한 2X2표에 배치합니다.

아이디어들을 배치해 어떤 아이디어가 사용자에게 큰 영향을 주는지, 기계 학습 솔루션으로 크게 향상될 수 있는지 투표해보기

아이디어를 구분해보면서 기계 학습이 꼭 필요한 것인지 아닌지도 판단합니다. 중요한 것은 이 과정에서 엔지니어링팀과 함께 기술의 현실성도 고민해야 한다는 점입니다. 엔지니어링팀과의 협업을 시작할 가장 좋은 타이밍이기도 합니다. 사용자에게 큰 변화를 가져오면서 기계 학습으로만 해결 가능한 것, 즉 표의 오른쪽 상단이 가장 먼저 집중해야 할 아이디어입니다. 



3. 실제 예시로 진짜처럼 만들어보기


프로토타이핑은 기계 학습 시스템의 가장 큰 과제입니다. 서비스의 가치가 개별 사용자의 데이터를 바탕으로 정교화된 경험을 주는 것이라면 프로토타입을 빠르게 만들기 어렵습니다. 시스템을 완성하고 테스트를 한다면 이후 변경하기에는 너무 늦을 수도 있습니다. 테스트에는 두 가지 방법이 있습니다.


첫 번째는 사용자로부터 직접 얻은 데이터를 프로토타입에 사용하는 것입니다. 초반 사용자 조사를 진행할 때 참가자에게 사진이나 연락처 목록, 받았던 음악이나 영화 추천 같은 개인 데이터를 가져오라고 부탁합니다. 가져온 데이터로 사용자에게 맞춰 시뮬레이션할 수 있습니다. 취향에 맞지 않은 영화를 추천했을 때 사용자가 어떻게 반응하는지 본다거나, 왜 시스템이 이렇게 추천을 제공하는지 궁금한 사용자의 생각을 물어볼 수도 있습니다.


두 번째는 아직 완성되지 않은 기계 학습 서비스를 테스트하기에 효과적인 오즈의 마법사 방법(Wizard of Oz)입니다. 오즈의 마법사 방법은 아직 완성되지 않은 특정 시스템의 인터페이스를 설계하고자 할 때 시스템의 목적과 기능의 시나리오를 준비하고 프로토타이핑을 적용해 사용자를 위한 발전적인 결과를 도출하는 방법으로, 한때 인기 있었으나 지난 20년간 다양한 사용자 조사 방법론이 부흥하면서 다소 멀어져 있었습니다.


오즈의 마법사를 활용해 가장 테스트하기 쉬운 챗 인터페이스. 팀원이 직접 AI처럼 대답할 수 있도록 다른 쪽에서 준비한다.

참가자들은 시스템이 자동적으로 대답한다고 여기지만 실제로는 사람이 뒤에서 직접 조작합니다. 기계 학습 시스템의 응답을 모방해 사람이 직접 응답하며 시뮬레이션할 수 있죠. 참가자들은 진지하게 인공지능처럼 인식하고 시스템에 대한 멘탈 모델을 자연스럽게 만들고 행동을 적응시킵니다. 이 과정을 관찰하며 이어지는 상호작용을 보는 것은 매우 가치 있습니다.



4. 긍정 오류와 부정 오류의 대가 따져보기


기계 학습은 오류를 만들어낼 수 있습니다. 이러한 오류들이 어떻게 나오는지, 사용자 경험에는 어떻게 영향을 미칠지 이해해야 합니다. 2번 항목에서 언급했던 오차 행렬은 기계 학습의 예측이 맞거나 틀렸을 때를 설명하는 핵심 개념입니다.

오차 행렬의 4가지 상태와 사용자에게 가지는 의미

하지만 각각의 오류들이 사용자에게 미치는 영향은 동일하지 않습니다. 사람인지 트롤인지 구분한다고 할 때 우연히 사람을 트롤로 분류하는 것은 시스템의 입장에서는 오류 중 하나지만 사용자는 더 불쾌감을 가집니다. 사용자를 모욕할 의도는 없지만 트롤을 사람으로 분류하는 것보다 더 큰 문제라는 사실을 시스템은 모릅니다.


기계 학습 용어에서 말하는 시스템의 정밀도(precision)와 재현율(recall) 사이에 어떻게 절충점을 찾느냐가 여기에서 중요합니다. 재현율에 최적화해 틀린 예측을 좀 더 하더라도 가능한 맞는 예측을 모두 포함할지, 정밀도에 최적화해 틀린 예측을 최소화하면서 그 대가로 맞는 예측도 함께 줄어들게 할지 결정해야 합니다. 그 예로 구글 포토에서 ‘놀이터’를 검색하면 아래 같은 결과가 나옵니다.

결과를 보면 놀이터가 아니지만 아이들이 노는 사진이 포함된 걸 볼 수 있습니다. 여기에서는 재현율을 정밀도보다 우선하기 때문입니다. 정확성은 낮아지더라도 가능한 모든 놀이터 사진을 가져오는 것이 놀이터만 있는 사진만 가져오면서 혹시 모를 사용자가 찾는 결과를 배제하는 것보다 훨씬 더 중요하기 때문입니다.



5. 함께 학습하고 적응하는 과정을 계획할 것


가장 가치 있는 기계 학습 시스템은 사용자의 멘탈 모델과 함께 진화합니다. 인터랙션을 바탕으로 시스템은 추후 사용자에게 다시 무엇을 제시할지 조정합니다. 지속적인 피드백 순환은 예측 모델은 변화시키며 향후 인터랙션에도 영향을 미칩니다. 사용자와 모델 양쪽 모두에 유익한 피드백을 사용자가 응답할 수 있도록 유도해야 합니다.

사용자의 다음 단어를 예측하며 진화하는 선순환의 예시 G보드. 사용자가 추천 단어를 많이 선택할수록 더 좋은 추천을 받는다.

기존 데이터를 기반으로 훈련된 모델은 예측할 수 없었던 새로운 데이터에 맞춰 다시 진화합니다. 따라서 장기적이고 광범위한 전체 서비스 사이클을 고려해 사용자 리서치를 계획하고 피드백 전략을 세워야 합니다. 모델의 성능을 평가하기 위해 정확성과 오류를 정량적으로 분석하면서 충분한 시간을 가지고 예측의 성공, 실패에 따라 사용자들의 멘탈 모델이 어떻게 변하는지 함께 토론하며 이해해야 합니다.


추가적으로 모델을 진화시키기 위해 전체 서비스 라이프 사이클에 걸쳐 사용자로부터 피드백을 어떻게 받을 것인지 고려해야 합니다. 사용자가 쉽게 피드백을 줄 수 있고, 이의 유용함을 충분히 인식하는 인터랙션 패턴을 설계하는 것이 뛰어난 기계 학습 시스템으로 나아가는 출발점입니다.

사용자의 피드백을 얻기 위한 구글 앱의 특정 카드가 유익한지 여부를 묻는 질문 인터랙션
구글 검색어 자동완성이 왜 적합하지 않았는지 묻는 피드백 팝업

6. 정확한 분류로 알고리즘 훈련시키기


UX 종사자로서 우리는 와이어프레임이나 목업, 프로토타입, 가이드와 같은 전형적인 산출물에 익숙합니다. 하지만 기계 학습을 통해 더 넓어진 UX 세계에서는 ‘분류(labels)’를 UX 범위에 포함해야 합니다.


분류는 기계 학습의 필수 작업입니다. 고양이를 인식할 모델을 훈련하기 위해 충분히 분류된 사진들이 모이면 이를 바탕으로 새로운 사진에 고양이가 있는지 여부를 모델이 예측합니다.

하지만 실제로는 기사가 재밌다거나 답변이 의미 있는지 같은 주관적인 측면을 예측하는 것이 기계 학습 모델의 주요 목적입니다. 따라서 모델을 훈련하는 데 오랜 시간이 들고 모든 데이터를 구분하기에는 비용이 크게 들어갑니다.


이때 논리적인 가설을 만들고 다양한 사람과 토론해야 합니다. 주로 가설은 ‘_____한 상황에 있는 _____한 사용자는 ____이 아닌 ____를 선호할 것이라 가정한다’ 같은 형태입니다. 이 가설을 가지고 프로토타입을 빠르게 만들어 피드백을 빠르게 수집하고 반복적으로 가설을 검증해야 합니다.


또한 해당 분야의 예측 모델을 제대로 훈련할 전문가를 찾으세요. 주로 콘텐츠 전문가(Contents Specialist)라고 불리는 사람들을 통해 어떤 가설들이 더 제대로 된 것인지 구분할 것입니다. 더불어 실제 사용자 데이터에서 나온 예시들을 활용해 만든 가설의 유효성을 검토해야 합니다. 콘텐츠 전문가는 AI의 예측 결과들의 예시를 직접 만들며 이는 추후 데이터 수집을 위한 계획과 모델을 훈련시키기 위한 강력한 분류 체계 프레임웍이 됩니다.



7. UX의 확장: 창조적인 프로세스로서의 기계 학습


기계 학습에 접근하는 방법은 매우 다양합니다. 하지만 UX를 하는 사람들이 너무 빨리 규정해버리면 엔지니어링이 가지는 창의성을 감소시킬 수 있습니다. 그들의 직관을 사용하도록 장려하고 사용자 테스트를 통해 이를 실험할 수 있도록 해야 합니다.


기계 학습은 우리가 익숙한 일반적인 개발 프로세스보다 훨씬 창조적이고 표현적입니다. 알고리즘에서 엔지니어들의 상상력을 많이 필요로 합니다. UX는 그 과정에서 사용자 중심으로 의사 결정하도록 도움을 주는 것입니다.

올바른 경험을 만들기 위해 엔지니어링, 프로덕트 등 다양한 팀과 함께 일하세요.

엔지니어에게 스토리텔링, 비디오, 프로토타입, 사용자 리서치 결과, 각종 작업물 등을 보여주면서 얼마나 대단한 경험이 만들어질지 영감을 주세요. 또한 사용자 리서치의 목표나 발견을 공유하고 토론해서 과정의 이해도를 높여 서비스와 사용자 경험을 더욱 깊게 이해하세요. 엔지니어가 이 과정에 빨리 적응할수록 서비스에 더욱 효과적이고 견고한 기계 학습 시스템을 만들 수 있습니다.



마치면서


위의 7가지는 구글에서 강조하는 핵심 항목들로 여러분들이 하고자 하는 기계 학습 기반의 제품을 만들 때도 유용하게 쓰였으면 합니다. 기계 학습이 서비스와 사용자 경험에 힘을 불어넣을수록 우리는 더욱 인간 중심의 관점을 지닌 채 사람들에게 줄 수 있는 고유한 가치가 무엇인지 찾고 모든 경험을 멋지게 만들기 위해 책임을 다해야 합니다.


원문: 신유민의 브런치


이 콘텐츠에 대해 어떻게 생각하시나요?