AI 서비스 기획 04 - 설명가능성과 신뢰 (Explainability + Trust)

AI 서비스 기획 04 - 설명가능성과 신뢰 (Explainability + Trust)

안녕하세요, Daisy 입니다 ☺️

구글의 AI 서비스 R&D 조직 PAIR에서 제작한 “People + AI Guidebook”의 6단계의 가이드라인 중 Chapter 4에 대해 다뤄보도록 하겠습니다.

  1. User Needs + Defining Success (사용자 니즈와 성공의 정의)
  2. Data Collection + Evaluation (데이터 수집과 평가)
  3. Mental Models
  4. Explainability + Trust (설명 가능성과 신뢰)
  5. Feedback + Control (피드백과 제어)
  6. Error + Graceful Failure (오류와 정상적인 실패)

Chapter 4. Explainability + Trust (설명가능성과 신뢰)

Intro

예측, 권장사항 (추천)에 대해 설명하는 것은 신뢰 형성에 있어 중요합니다. Chapter 4에서는 다음을 다룹니다.

Q. 사용자는 AI 시스템을 얼마나 신뢰해야할까?
Q. 언제, 적절한 시점에 사용자에게 설명을 제공해야 할까?
Q. AI의 예측 결과에 대해 설명할 수 없다면 어떻게 해야 할까?
Q. AI의 예측과 관련된 신뢰도를 어떻게 보여줘야 할까?

AI는 확률과 불확실성을 기반으로 하기 때문에 올바른 수준의 설명은 사용자가 시스템 작동 방식을 이해하는 데 중요합니다. 사용자가 시스템의 기능과 한계에 대한 명확한 Mental model을 갖게 되면 목표 달성을 위해 시스템을 신뢰하는 방법과 적절한 시점에 대해 이해할 수 있습니다. 요컨대, 설명 가능성과 신뢰는 본질적으로 연결되어 있습니다.

Chapter 4에서는 AI가 어떤 역할을 수행하고 어떤 데이터를 활용해 의사결정을 하는지, 모델 결과에 대한 신뢰도 수준에 대해 설명하는 방법과 적절한 시점에 대해 설명합니다.

  1. 사용자 신뢰 대상 명확화 : 신뢰는 이익에 대한 기대를 바탕으로 위험을 감수할 용의가 있는 것을 의미

  2. 사용자가 신뢰 수준을 설정하도록 지원 : AI는 통계와 확률을 기반으로 하기 때문에 사용자가 시스템을 완전히 신뢰하도록 해서는 안 되며, 설명을 통해 예측을 신뢰할 시점과 자신의 판단을 적용할 시점을 알 수 있도록 해야 함

  3. Product 경험 전반에 걸친 신뢰도 구축 계획 : 올바른 수준의 신뢰를 구축하기 위한 충분한 시간이 필요하며, AI가 시간이 지남에 따라 변화하고 적응할 수 있는 것과 같이 사용자와 Product의 관계도 마찬가지로 볼 수 있음

  4. 사용자의 이해를 위한 최적화 : 경우에 따라 복잡한 알고리즘의 결과에 대한 명시적이고 포괄적인 설명이 필요 없을 수 있으며, AI 개발자 조차도 그것이 어떻게 작동하는지 정확히 알지 못 할 수 있고, 다른 경우 예측 이면의 추론을 알 수 있지만 사용자가 이해할 수 있는 용어로 설명하기 어려울 수 있음

  5. 사용자 결정에 미치는 영향력 관리 : AI 시스템은 종종 사용자가 조치를 취해야 하는 결과를 생성함. 시스템이 신뢰 수준을 계산하고 표시하기 위한 적절한 시점 및 방법은 사용자의 의사 결정을 알리고 신뢰를 조정하는 데 중요함

1. 사용자 신뢰 대상 명확화

신뢰는 이익에 대한 기대를 바탕으로 위험을 감수할 용의가 있는 것을 의미하며, 다음 요소는 사용자 신뢰에 기여합니다.

능력 (Abilitay)은 작업을 완료하기 위한 Product의 역량으로, 이것이 사용자의 니즈를 충족하고 UX를 개선했나요? 쉽게 인식할 수 있는 의미 있는 가치를 제공하는 Product를 위해 노력해야 합니다.

신뢰 (Trust)는 Product가 기능을 얼마나 일관되게 제공하는지 나타내는 것으로, 품질 기준이 사용자가 설정한 기대치에 충족하나요? 사용자에게 투명하게 설명하고 설정한 기준을 충족할 수 있는 경우에만 실행해야 합니다.

자비 (Benevolence)는 신뢰할 수 있는 당사자가 사용자에게 좋은 일을 해주기를 원한다는 믿음입니다. 사용자는 Product와의 관계에서 무엇을 얻고 우리는 그것으로부터 무엇을 얻을까요? 이것에 대해 정직하고 솔직해야 합니다.

예를 들어, 식물을 식별하는 앱에서 등산 중에 찍은 사진을 통해 앱이 안전한 식물과 안전하지 않은 식물을 얼마나 잘 인식할 수 있는지, 계절과 조명 조건에 따라 얼마나 일관되게 작동하는지를 통해 사용자는 앱에 대한 신뢰 수준을 설정합니다.

사용자 신뢰를 얻는 과정은 충분한 시간이 필요하고 사용자의 기대 수준을 적절하게 조정해 Product가 무엇을 할 수 있는지에 대한 이해가 필요합니다. 이 챕터에서는 사용자가 AI 기반 Product에 대한 신뢰 수준 설정의 적절한 시기와 방법에 대한 가이드라인을 안내합니다.


2. 사용자가 신뢰 수준을 설정하도록 지원

사용자는 모든 상황에서 AI 시스템을 암묵적으로 신뢰해서는 안 되며 신뢰 수준을 올바르게 설정해야 합니다. 사람들이 소프트웨어 시스템을 의심하는 “알고리즘 거부감 (aversion)”에 대한 많은 연구 사례가 있습니다. 연구자들은 사람들이 AI 시스템이 할 수 없는 일을 가능한 것처럼 지나치게 신뢰하는 사례를 발견했습니다. 하지만 시스템이 할 수 있는 것과 할 수 없는 것을 이해할 수 있어야 사용자의 적절한 수준의 신뢰를 얻을 수 있는 이상적인 결과로 이어질 수 있을 것입니다. 예를 들어 예측이 틀릴 수 있음을 나타내면 사용자가 특정 예측을 덜 신뢰하게 될 수 있습니다. 이는 장기적으로 사용자가 시스템을 과도하게 신뢰하고 실망할 가능성이 적기 때문에, 오히려 Product를 더 많이 이용하고 의존하게 할 수 있습니다.


  • 2-1. 명확한 데이터 소스

모든 AI의 예측은 데이터를 기반으로 이뤄지므로 데이터 소스가 설명의 일부가 되어야 합니다. 그러나 AI에 사용되는 데이터 소스에 대한 수집 및 커뮤니케이션에는 Chapter 2에서 다뤘듯 법적, 공정성 및 윤리적 고려 사항이 있을 수 있음을 기억해보면, 사용자는 새로운 컨텍스트에서 자신의 정보를 볼 때 자신의 정보에 놀랄 수 있습니다. 예를 들면 누군가 자신의 데이터가 비공개가 아닌 상태로 사용되는 것을 인지하게 되거나 시스템에서 액세스할 수 있는지 몰랐던 경우 종종 발생하며, 이 두 가지 모두 신뢰를 약화할 수 있습니다. 이를 방지하려면 데이터의 출처와 AI 시스템에서 데이터를 사용하는 방법을 사용자에게 명확히 설명해야 합니다.

마찬가지로 모델이 사용하는 데이터를 사용자에게 알려주는 것이 시스템에 없는 중요한 정보가 있을 때 이를 사용자가 알 수 있도록 도울 수 있다는 것입니다. 이 정보는 사용자가 특정 상황에서 시스템을 과도하게 신뢰하지 않도록 도와줍니다. 예를 들어 AI 기반 내비게이션 앱을 설치 후, 내비게이션 앱이 캘린더 앱의 데이터에 액세스할 수 있는 기능을 포함하는 모든 이용 약관을 동의했다고 가정해 보겠습니다. 이후 내비게이션 앱은 약속 시간에 맞춰 5분 안에 집을 떠나라고 알려줍니다. 이 때, 사용자가 내비게이션 앱이 약속 정보에 액세스하도록 허용했다는 사실을 읽지 않았거나 혹은 깨닫지 않았거나, 기억하지 못했다면 매우 놀라는 순간이 될 수 있습니다.

이처럼 앱의 기능에 대한 신뢰는 앱의 작동 방식과 경고의 표현 방식에 따라 달라집니다. 예를 들어 앱의 데이터 소스가 의심스러울 수 있고, 또는 모든 일정 정보에 대한 완전한 액세스 권한이 있다고 지나치게 신뢰할 수 있는데 이러한 결과들은 모두 올바른 수준의 신뢰가 아닙니다. 이를 방지하는 방법은 연결된 데이터 소스를 알림의 일부로 설명하고 향후 이러한 종류의 데이터 공유를 거부할 수 있는 옵션을 제공하는 것입니다. 일부 국가의 규정에는 이러한 구체적이고 상황에 맞는 설명과 데이터 제어가 필요할 수 있습니다. (실제로 SNS의 알고리즘 소셜 마케팅의 초반, 사용자의 검색 데이터 등을 기반으로 사용자의 관심사에 맞는 맞춤형 광고를 보여주었을 때 SNS가 사용자의 사생활을 감시하는 것이 아니냐는 괴담이 돌았었죠.)

  • 데이터가 부족하여 사용자 스스로 판단해야 할 수 있는 상황을 알림

    https://pair.withgoogle.com/assets/ET1_aim-for.png

  • 데이터가 부족하여 AI 권장 사항의 품질에 영향을 준다는 것을 인정하는 것을 회피하지 말 것

    https://pair.withgoogle.com/assets/ET1_avoid.png

AI 시스템은 데이터 사용에 대한 다음 측면을 설명해야 함
범위 (Scope) : 개별 사용자에 대해 수집되는 데이터의 개요와 측면이 어떤 목적으로 사용되는지?
도달 (Reach) : 단일 사용자 또는 장치에 맞게 개인화됐는지, 모든 사용자에 대한 집계 데이터를 사용하는지?
제거 (Removal) : 사용 중인 일부 데이터를 제거 혹은 재설정할 수 있는지?


  • 2-2. 사용자의 동작에 대한 설명 제공

사람들은 자신의 행동에 대한 결과를 바로 확인할 수 있을 때 더 빨리 배웁니다. 왜냐하면 이는 원인과 결과를 식별하기가 더 쉽기 때문입니다. 즉, 설명을 제공하는 최적의 시점은 사용자의 동작에 대한 응답 시점임을 의미합니다. 사용자가 조치를 취하고 AI 시스템이 응답하지 않거나 예상치 못한 방식으로 응답하는 경우 설명은 사용자의 신뢰를 구축하거나 회복하는 데 큰 도움이 될 수 있습니다. 반면 시스템이 잘 작동할 때 사용자의 동작에 응답하는 것은 시스템의 신뢰성을 유지하기 위해 사용자가 무엇을 할 수 있는지를 알리는 절호의 기회입니다.

예를 들어 사용자가 AI 기반 레스토랑 예약 앱의 ‘나를 위한 추천’ 섹션을 탭한다고 가정해 보겠습니다. 사용자는 거의 방문하지 않는 이탈리아 레스토랑에 대한 추천만 볼 수 있기 때문에 이 앱이 적절히 개인화 추천을 할 수 있다는 것에 실망하여 신뢰가 하락할 수 있습니다. 그러나 이 시점에서 앱의 추천 시스템이 ‘사용자 위치를 기반’으로 한 블록 영역 내의 레스토랑만 추천한다는 설명이 포함되어 있고 사용자가 실제로 뉴욕 시의 리틀 이탈리아 중심부에 서 있으면 신뢰가 유지될 가능성이 높아질 것입니다. 또한, 사용자는 자신의 행동 (이 경우 특정 위치에서 레스토랑 추천을 요청함)이 시스템에 어떤 영향을 미치는지 확인할 수도 있습니다.

사람은 상대방의 장단점을 드러내는 상호 작용을 통해 상대에 대한 신뢰를 형성하는 것처럼 사용자와 AI 시스템의 관계도 같은 방식으로 발전할 수 있습니다. 설명이 사용자의 동작과 직접적으로 연결짓기 어려운 경우 Muti-modal 설계를 사용하여 설명을 제공할 수 있습니다. 예를 들면 시각적 인터페이스와 음성 인터페이스가 모두 있는 어시스턴트 앱을 사용하는 경우, 음성 출력에는 설명을 생략하고 시각 인터페이스에는 포함시켜 유저가 시간이 있을 때에 설명을 확인할 수 있도록 할 수 있습니다.


  • 2-3. 상황에 따른 이해관계 고려

상황과 결과에 대한 설명을 통해 사용자가 신뢰할 수 있도록 장려할 수 있습니다. 사용자가 False positive, False negative 또는 일정 비율 이상 벗어난 예측을 신뢰하는 위험을 고려하는 것이 중요합니다.

예를 들어 AI 기반 내비게이션 앱의 경우 일일 출퇴근 시간에 도착 시간을 계산하는 방법은 설명할 필요가 없을 수 있습니다. 그러나 비행기를 타려고 하는 경우 (통근보다 결과에 대한 위험이 크고 빈도가 더 낮음) 권장 경로의 시간을 교차하여 확인해야 할 수 있고 이는 제한 사항에 대한 설명을 제공할 수 있습니다. 예를 들면 사용자가 현지 공항을 목적지로 입력한 경우 교통 데이터는 매시간마다 새로 고쳐진다고 알려주는 것입니다.


  • 고위험 시나리오에서 예측이 이루어진 이유에 대한 세부 정보를 사용자에게 제공
    → 사용자는 부상 후 운동을 하고 있어 앱의 추천에 대한 확신이 필요한 상황

    https://pair.withgoogle.com/assets/ET3_aim-for.png

  • 고위험 시나리오에서 “Why”라고 말하지 않고 “What”이라고 말하지 말 것

    https://pair.withgoogle.com/assets/ET3_avoid.png

어떤 종류의 상호 작용, 결과 및 해당 설명이 AI 시스템에 대한 신뢰를 감소, 유지 또는 부풀릴지 브레인스토밍하고,
이는 “신뢰 없음 ~ 과도한 신뢰”와 같은 신뢰 스펙트럼을 따라 정의해야 함
→ 앱은 한 번에 3마일 이상을 달리지 않은 사용자에게 마라톤 훈련 시리즈에 대해 추천함
→ 사용자는 트레이너에게 앱의 추천사항을 전달했고 트레이너는 해당 사항을 동의함
→ 사용자는 앱의 추천을 따르지만 완료하기가 너무 어려움


3. Product 경험 전반에 걸친 신뢰도 구축 계획

사용자와 올바른 수준의 신뢰를 구축하는 과정은 신중하게 이뤄지며, 사용자가 Product와 상호작용하기 전부터 시작됩니다. Product 경험 전반과 외부에 대한 설명을 제공함으로써 사용자가 Product의 능력 및 한계에 대한 기대수준을 설정하는 데 도움이 되는 다양한 기회가 될 것입니다.

  1. 순간에 대한 설명 : 추론, 권장 사항, 제안 등에 대한 근거 제공
  2. Product에 추가 설명 제공 : 온보딩과 같은 다른 Product 내 순간을 활용하여 AI 시스템 설명
  3. Product 경험 넘어서기 : Product 내 정보로는 부족할 수 있지만 인지도를 높이기 위한 마케팅 캠페인, Mental model 개발을 위한 교육 자료 및 리터러시 캠페인 등 다양한 추가 리소스로 지원할 수 있음

예를 들어 식물을 분류하기 위해 훈련된 모델의 전반적인 기본 속성 (예 : 알려진 강점 및 한계점, 최적화하도록 설계된 대상)을 설명하여 식물을 식별하는 앱에 사용자를 온보딩한다고 할 때, 만약 모델이 북미 원산의 식물을 나타내는 예제의 75%와 남미에서 오는 예제의 25%로 구성된 Dataset을 사용하여 학습된 경우 서로 다른 위치에 있는 사용자가 신뢰 관계를 조정하는 데 도움이 될 수 있습니다.

또한, 재현율 (Recall)이 정밀도 (Precision)보다 우선 순위가 높은 경우는 사용자에게 어떤 무해한 식물이 ‘잠재적으로 안전하지 않음’으로 표시하는 것처럼 보수적인 권장사항이 될 수 있음을 설명할 수 있습니다. 마지막으로 사용자가 Plant Pal 앱에 식물 사진을 제공하여 식물을 식별하려고 할 때는 모델이 특정 식물의 정의 특성을 강조하여 유형 및 안전성에 따라 Label을 지정하도록 했음을 설명할 수 있을 것입니다.

이 섹션에서는 Product 경험의 특정 단계에서 신뢰를 구축하기 위한 가이드라인을 제공합니다.


  • 3-1. 초반의 신뢰 구축

사용자는 새로운 기술에 의존하는 Product 사용하려고 할 때 우려될 수 있습니다. 이 경우 시스템이 무엇을 할 수 있고 할 수 없는지와 어떻게 작동하는지, 시스템과 어떻게 상호 작용해야 하는지 의문이 생길 수 있고, 과거에 다른 Product에 대해 좋지 않은 경험을 한 적이 있다면 이 Product 또한 신뢰할 수 있는지 의문이 들 수 있습니다.

Product 사용을 시작하기 전에 사용자와 신뢰를 구축하기 위한 몇 가지 모범 사례는 다음과 같습니다.

  1. Product의 기능과 한계를 명확하게 전달 : 기대 수준 설정을 위해 이를 조기에 수행하며, 기술이 아닌 이점에 집중해야 함. 사용자는 AI에 대한 오해, 과도한 신뢰, 혹은 신뢰하지 않을 수 있음
  2. 익숙한 경험의 강조 : 사용자는 익숙한 외관과 가독성을 찾기 때문에 초기 신뢰도 향상에 기여할 수 있음
  3. 서드파티 소스를 사용해 상황에 맞도록 권장사항 조정 : 새로운 기능이나 Product에 온보딩할 때 Product에 대한 초기 신뢰도를 높이기 위해 이미 신뢰하는 서드파티 소스가 도움이 될 수 있음

예를 들어 사용자가 앱에서 경로 추천 화면을 처음 여는 경우 해당 지역의 공원 및 레크리에이션 웹 사이트에 나열된 로컬 경로의 목록을 검색하여 서드파티 소스를 활용할 수 있습니다. 또한 앱과 상호작용할 때 실행 완료 표시 및 경로 평가를 통해 보다 개인화된 경로 권장 사항이 제시한다고 사용자에게 설명할 수 있습니다.

Third Party : 사전적 정의는 제3자를 뜻하며, 원천기술을 가진 회사 (First party)와 반대되는 의미로, First party 기술을 통해 새 기술을 만들거나 제 3자로서 중간다리 역할을 하는 것을 의미함. 프로그래밍에서는 플러그인, 라이브러리, 프레임워크를 의미하기도 함.


  • 3-2. 조기 신뢰 형성

Product를 처음 사용하는 사용자를 온보딩할 때 문제가 생길 수 있으며, 그들은 편집할 수 있는 설정, 특히 개인 정보 보호 및 보안을 제어하는 설정을 이해하고 싶어할 수 있습니다. 또한 시스템과 상호 작용하는 방법과 시스템이 입력 및 피드백에 반응할 것으로 예상할 수 있는 방법을 이해하기를 원할 것입니다. 사용자를 AI 기반 Product에 익숙해지도록 하면서 신뢰를 구축하려면 다음을 수행하는 것이 좋습니다.

  1. 사용자 데이터에 대한 개인 정보 및 보안 설정 전달 : 공유되는 데이터와 공유되지 않는 데이터를 명시적으로 공유
  2. 손쉬운 사용 : “샌드박스 경험”이 있는 온보딩 사용자는 초기에 적은 노력으로 Product를 탐색하고 테스트할 수 있음
  3. 사용자 참여의 유도 및 제어 권한 부여 : 기본 설정 지정과 시스템이 예상대로 작동하지 않을 때 수정 및 피드백 기능을 제공하여, 시스템이 학습할 것이라는 기대 수준을 설정하면 신뢰를 형성하는 데 도움이 될 수 있음

예를 들어 Run 앱을 시작하는 사용자는 표시된 경로가 어떤 근거로 제시되었는지 궁금할 수 있습니다. 따라서, 앱에서 계정 설정 시 지리적 위치를 묻는 이유는 이 데이터가 GPS나 다른 앱의 데이터가 아닌 가까운 경로를 선택하는 데 사용되는 데이터임을 명확하게 전달해야 합니다. 또한 지리적 위치 설정 기능을 Product에 도입한 후에는 사용자가 위치를 변경하고 싶을 때 해당 설정을 찾을 수 있는지 확인해야 합니다. 이렇게 하면 다른 루트를 시도하고 싶을 때 사용자는 설정을 변경할 수 있습니다.

샌드박스(Sandbox) 경험 : 사용자가 위험이나 결과 없이 기능을 탐색하고 실험할 수 있는 Product, 소프트웨어의 테스트 환경, 시뮬레이션 버전 등을 의미하며, 사용자가 일반적으로 광범위한 설정이나 구성 없이 최소한의 노력으로 Product를 시험해 볼 수 있는 안전하고 통제된 공간. 샌드박스 경험의 목적은 사용자가 Product에 익숙해지고 완전히 사용하기 전에 Product 사용에 대한 확신을 얻을 수 있는 환경을 제공하는 것


  • 3-3. 신뢰 유지

사용자가 온보딩되고 초기 기본 설정을 지정하고 상호 작용하면서 Product에 대해 학습을 시작한 후에는 사용자와 Product의 관계가 성숙해짐에 따라 발생할 수 있는 일반적인 문제들을 해결해야 할 것입니다. 이제 사용자는 자신의 설정을 수정하는 방법이나 새로운 니즈와 상황에 시스템이 어떻게 반응할지 궁금할 것입니다. 사용자가 Product를 계속 사용하며 신뢰를 유지되도록 하기 위해서는 다음을 수행할 수 있습니다.

  1. 사용자 가이드라인에 따라 자동화를 점진적으로 증가 : 사용자가 제어를 통한 전환에 익숙해지도록 하면서 이 과정을 안내하는 피드백을 제공하는지 확인해야 함. 핵심은 세부적인 단계를 통해 목표를 정확히 달성하고 가치를 부여하는지 확인하는 것이며, 신뢰가 높거나 오류 위험이 낮을 때 더 많이 자동화해야 함

  2. 권한 및 설정에 대한 명확하고 지속적인 전달 : 사용자에게 조기에 권한을 요청하고 과거에 설정한 기본 설정을 검토하고 싶은 경우와 컨텍스트를 전환하여 다른 니즈를 가질 때 설정에 대해 상기시키는 것을 고려해야 함. 그 이유는 사용자가 Product가 무엇을 공유하고 있는지와 그 이유를 잊어버릴 가능성이 있기 때문에 명확하고 지속적으로 그 이유와 이점에 대해 설명해야 함

예를 들면, 사용자가 런닝 앱에서 “쉬움” 경로의 데일리 목표에서 시간을 20분으로 설정하고 몇 달간 해당 목표를 달성한 경우, 앱은 권장 경로의 난이도에 대한 업그레이드를 제안할 수 있습니다.


  • 3-4. 신뢰의 회복과 하락의 방지

Product 경험 과정에서 사용자는 다양한 오류에 직면할 수 있습니다. AI는 확률과 불확실성을 기반으로 하기 때문에 잘못될 수 있으며, 이러한 시점은 오류가 발생했음을 알리는 시스템의 능력 및 오류가 발생한 후에도 안전하게 계속할 수 있는 능력에 대해 사용자는 우려를 느낄 수 있습니다. 이처럼 오류의 특성과 Product의 복구 능력은 사용자의 신뢰에 영향을 미치기 때문에, Product를 사용하는 동안 오류가 발생할 때 사용자와의 신뢰를 유지하기 위해 다음을 수행할 수 있습니다.

  1. 적절한 대응으로의 소통 : 문제가 발생하거나 예상대로 진행되지 않았을 때를 대비한 복구 계획이 있음을 사용자에게 미리 알려야 함. 이러한 경우 사용자가 시스템이 어떻게 동작하는지에 대해 미리 알 수 있으면 보다 쉽게 정보에 근거한 의사결정을 할 수 있음. 예를 들어 사용자가 온라인 항공편 예약 서비스를 통해 항공편을 구매했는데 나중에 예약 파트너의 동일한 항공편에 대한 구매가가 사용자의 구매가보다 낮아진 경우, 예약 서비스는 사용자에게 최저가와 지불한 금액의 차이에 해당하는 지급 자격이 있음을 설명할 수 있음

  2. 결과의 심각한 정도에 따른 방법 제공 : 기존 오류에 대처하고 다시 발생하지 않도록 해야 함
    • 현 시점에서의 오류해결 : 사용자에게 문제 해결 방법에 대한 계획을 제공함. 예를 들어 앱 서비스가 사용자가 지난 주에 휴가 중이었기 때문에, 지금 위치해 있지 않은 장소에서 경로를 추천한 경우 해당 도시에서 실행 중인 권장사항이 현재 권장사항 목록에서 제거되었음을 사용자에게 알릴 수 있음
    • 오류 재발 방지 : 사용자가 예상했던 예측을 시스템에 알려줄 기회를 제공하거나 위험이 높은 결과를 초래할 경우 자동에서 수동 제어로 완전히 전환해야 함

4. 사용자의 이해를 위한 최적화

위에서 설명한 것처럼 사용자에게 설명을 통해 신뢰를 구축하는 것은 매우 중요합니다. 하지만, AI 시스템에 대한 설명을 제공하는 것 자체가 어려울 수 있습니다. AI는 본질적으로 확률적이고 매우 복잡하며 여러 신호를 기반으로 결정을 내리기 때문에 설명 유형을 제한할 수 있습니다. 특정 AI 예측의 근거가 불분명하거나 복잡하여 기술 지식이 부족한 사용자가 쉽게 이해할 수 있는 간단한 문장으로 요약하는 것은 어렵습니다. 대부분 최선의 접근법은 모든 것을 설명하는 것이 아니라 사용자의 신뢰와 의사결정에 영향을 미치는 측면만을 설명하는 것이지만, 이 또한 어려울 수 있으며 이는 고려해야 할 기술들이 많이 존재하기 때문입니다.


  • 4-1. 무엇이 중요한지 설명할 것

부분적인 설명은 시스템 작동 방식의 핵심 요소를 명확히 하거나 특정 예측에 사용되는 일부 데이터 소스를 공개합니다. 부분적인 설명은 알려지지 않거나 매우 복잡하거나, 유용하지 않은 시스템 기능의 일부를 의도적으로 생략합니다. 또한 단계적 공개와 부분 설명을 함께 사용하여 사용자에게 더 자세한 정보를 제공할 수 있습니다. 아래에서 AI 기반 식물 분류 앱의 부분 설명에 대한 일부 예시를 볼 수 있습니다.


  • 4-2. 시스템 설명과 특정 결과에 대한 설명

일반적인 시스템 설명은 전체 시스템이 어떻게 작동하는지에 대해서 설명하며, 이는 사용된 데이터의 유형, 최적화 대상, 학습 방법을 설명할 수 있습니다. 반면, 특정 결과에 대한 설명은 예를 들어 어떤 식물 사진이 독참나무로 판단한 이유처럼 결과에 대한 근거를 설명해야 합니다. 이를 동작과 바로 연결하여 설명한다면 사용자 동작 환경에서 발생될 수 있는 혼란을 해결하는 데 도움이 됩니다.


  • 4-3. 데이터 소스

회귀 (Regression) 와 같은 간단한 모델은 어떤 데이터 소스가 시스템 결과에 가장 큰 영향을 미쳤는지 표시할 수 있으며, 간단한 문장이나 그림을 통해 설명할 수 있습니다. 데이터 소스를 설명하는 또 다른 방법은 반사실적(Counterfactual) 설명으로, AI가 왜 특정 결정 혹은 예측하지 않았는지를 설명하는 것입니다.

  1. 특정 출력에 대한 예시
    • “이 식물은 X, Y, Z 특성을 가지고 있기 때문에 독참나무일 가능성이 높음”
    • “이 나무 필드 가이드는 북미의 단풍나무와 참나무 사진을 많이 제출했기 때문에 만들어졌음”
    • “이 잎사귀는 5점이 없기 때문에 단풍나무가 아님”
  2. 일반 시스템에 대한 예시 : “이 앱은 색상, 잎 모양 및 기타 요소를 사용하여 식물을 식별함”

Counterfactual Explanations (반사실적 설명) : 반사실적 설명은 “x를 하지 않았다면 y는 발생하지 않았을 것”라는 방식으로 인과적 상황을 설명합니다. “만약 내가 해외여행을 가지 않았다면, 돈을 많이 쓰지 않았을 것이다.”와 같이 예를 들 수 있습니다. y = ’돈을 많이 쓴 것’이며, x = ‘해외여행을 간 것’입니다. 반사실적 생각을 하려면 관찰된 사실 y와 모순되는 상황을 상상해야 하므로 반사실적 (Counterfactual)이라는 단어가 사용됩니다. 또 다른 예로 A는 대출을 신청했지만 AI 모델 기반의 은행 서비스에 의해 대출이 거절됐고, A는 ‘왜 신청이 거절 됐을까?’라고 생각합니다. 여기에서 "왜"라는 질문이 반사실적 설명으로 표현될 수 있는 것이죠.


  • 4-4. 모델 신뢰도 표시 (Model confidence displays)

모델 신뢰도 표시는 AI가 특정 결정을 내린 이유 또는 방법을 설명하는 대신 AI의 예측이 얼마나 확실한지, 그리고 고려한 대안을 설명합니다. 대부분의 모델은 N-best classifications 및 Confidence scores를 출력할 수 있으므로 모델 신뢰도 표시는 쉽게 사용할 수 있는 설명입니다.

  1. 특정 출력
    • N-best classifications (가능성이 가장 높은 식물) : 독참나무, 단풍잎, 블랙베리 잎
    • Confidence scores : 독참나무의 확률 80%
  2. 일반 시스템 : 앱은 신뢰도 수준에 대한 수치에 대해 평균 80% 신뢰도로 이미지를 분류함. 신뢰도 표시는 사용자가 AI 출력에 얼마나 신뢰를 해야 하는지 측정하는 데 도움이 되지만, 신뢰도는 다양한 방식으로 표시될 수 있으며 Confidence scores와 같은 통계 정보는 사용자가 이해하기 어려울 수 있음. 따라서, 다양한 사용자 그룹이 신뢰도와 확률의 의미에 어느 정도 익숙할 수 있으므로 Product 개발 프로세스 초기에 다양한 유형의 테스트가 가장 좋음


  • 4-5. 예시에 근거한 설명

예시에 근거한 설명은 AI 예측의 이유를 설명하기 어려운 경우에 유용합니다. 이 접근 방식은 사용자에게 내려진 결정과 관련된 모델 학습의 예시를 제공합니다. 예시는 사용자가 AI 결과를 이해하거나 AI의 행동에 대한 이유를 직관적으로 이해하는 데 도움이 될 수 있습니다. 이러한 설명은 예시를 분석하고 분류를 얼마나 신뢰할지 결정하기 위해 인간 지능에 의존하게 됩니다.

  1. 특정 출력 : 사용자가 “포이즌 오크” 분류를 신뢰할지 여부를 결정하는 데 도움을 주기 위해 시스템은 가장 유사한 포이즌 오크 이미지와 다른 나뭇잎의 가장 유사한 이미지 표시
  2. 일반 시스템 : AI는 오류가 발생할 수 있는 이미지와 잘 수행되는 경향이 있는 이미지에 대한 예시 제시


  • 4-6. 상호작용을 통한 설명

AI를 설명하거나 사용자가 Mental model을 구축하도록 돕는 또 다른 방법은 사용자가 "만약 (What if)?"을 묻는 방식으로 즉석에서 AI를 테스트하도록 하는 것입니다. 예를 들어 알고리즘이 작동하는 방식을 테스트할 때, AI 음성 비서에게 불가능한 질문을 함으로써 시스템의 한계를 찾는 과정처럼 말입니다.

  1. 특정 출력 : 사용자는 덤불의 잎 색깔에 너무 많은 가중치를 주어 시스템의 분류가 잘못되었다고 의심해, 조명을 변경하여 덤불 잎에 보다 균일한 밝기를 제공하는 테스트를 통해 분류가 변경되는지 확인
  2. 일반 시스템 : 이러한 유형의 설명은 일반적으로 전체 앱에 사용할 수 없으며, 특정 출력이 필요함

중요한 것은 설명을 작성하는 것은 어려운 일이기 때문에 여러 차례의 사용자 테스트가 필요할 수 있다는 것입니다.


  • 4-7. 설명이 필요 없거나 포괄적으로 설명이 특수한 경우

경우에 따라 사용자 인터페이스에 설명을 포함해도 아무런 이점이 없을 수 있습니다. AI가 작동하는 방식이 일반적인 Mental model에 적합하고 기능 및 안정성에 대한 사용자 기대수준과 일치한다면 상호 작용할 때 설명할 필요가 없을 수 있습니다. 

예를 들어 휴대폰 카메라가 자동으로 조명에 맞춰 조정되는 경우, 카메라를 사용할 때 언제 어떻게 기능이 작동하는지 설명하면 주 기능에 대한 사용성이 산만해질 수 있습니다. 또한, 독점 기술이나 개인 데이터를 드러내는 설명을 하지 않는 것도 좋을 수 있습니다. 다만, 이러한 이유로 설명을 포기하기 전에 부분적인 설명을 사용하는 것을 고려하고 사용자 신뢰에 미치는 영향을 평가해야 합니다.

상호 작용에 대한 설명이 신뢰의 감소, 유지 또는 증가시킬 수 있는지 생각하고 설명이 필요한 상황과 종류를 결정해야 함.
이 때, 가장 좋은 설명은 부분적인 설명으로 알 수 없거나 설명하기 복잡하거나 유용하지 않은 기능 등을 의도적으로 생략함
특정 출력 : AI가 특정 시간에 특정 출력을 제공한 이유 설명
일반 시스템 : 일반적인 용어로 AI 시스템 작동 방식 설명


5. 사용자의 의사결정에 미치는 영향력 관리

AI의 흥미로운 점은 사람들이 더 나은 결정을 내리도록 도울 수 있다는 것입니다. AI와 인간의 파트너십을 통해 어느 한 쪽이 스스로 내릴 수 있는 결정보다 더 나은 결정을 내릴 수 있습니다. 예를 들어, 통근자는 집으로 가는 최적의 경로를 선택하기 위해 교통 예측으로 정보를 보강할 수 있습니다. 의사는 의료 진단 모델을 사용하여 환자에 대한 역사적 지식을 보완할 수 있습니다. 이러한 협업들이 효과적으로 작용하기 위해 시스템의 예측을 신뢰할 수 있는지, 언제 신뢰할 수 있는지를 알아야 합니다.

위의 섹션 2에서 설명한 것처럼 모델 신뢰도는 시스템이 결과의 정확성에 대해 얼마나 확실한지를 나타냅니다. 모델 신뢰도를 표시하면 때때로 사용자가 신뢰 수준을 설정하고 더 나은 결정을 내리는 데 도움이 될 수 있지만 항상 실행 가능한 것은 아닙니다. 이 섹션에서는 모델의 예측 이면에 있는 신뢰 수준을 표시하는 적절한 시점와 방법에 대해 설명합니다.


  • 5-1. 신뢰도 표시 여부 결정

모델의 신뢰도를 직관적으로 만드는 것은 쉽지 않습니다. 사람들이 실제로 의사 결정에 사용할 수 있도록 신뢰도를 표시하고 그 의미를 설명하는 방법에 대한 연구가 여전히 활발히 진행되고 있습니다. 사용자가 신뢰도 표시를 적절하게 해석할 수 있는 충분한 지식을 가지고 있다고 하더라도 그것이 시스템의 유용성과 이해도를 어떻게 향상시킬 것인지 고려해야 하며, 이는 신뢰도의 표시가 주의를 산만하게 하거나 잘못 해석할 위험이 존재하기 때문입니다.

모델에 대한 신뢰도를 표시하는 것이 사용자와 Product, 기능에 도움이 되는지 테스트하는 데 많은 시간을 할애해야 합니다.
다음과 같은 경우 모델에 대한 신뢰도를 표시하지 않는 것을 고려할 수 있습니다.

신뢰도가 영향력이 없을 때 : 사용자의 의사 결정에 영향을 미치지 않는 경우 표시하지 않는 것이 좋음. 영향이 명확하지 않은 경우, 세분화된 신뢰도를 표시하는 것이 오히려 혼란스러울 수 있음. 예를 들어, 시스템이 85.8% 확신할 때와 87% 확신할 때 어떻게 해야 할까?

신뢰도의 표시가 불신의 원인이 될 때 : 지식 수준이 낮은 사용자에게 신뢰도가 오해의 소지가 되는 경우 표시 방법 또는 표시 여부를 재고해야 함. 예를 들어, 오해의 소지가 있을 정도로 높은 신뢰도는 사용자가 결과를 맹목적으로 받아들이게 할 수 있음


  • 5-2. 모델 신뢰도를 가장 잘 보여주는 방법

만약 모델 신뢰도를 표시함으로써 사용자의 의사 결정이 개선된다는 결과가 확인된다면 다음 단계는 적절한 시각화를 하는 것입니다. 모델 신뢰도를 표시하는 가장 좋은 방법을 찾으려면 이 정보가 어떤 사용자의 동작을 알려야 하는지 생각해 보세요. 시각화 유형에는 다음이 존재합니다.


  • 1) 범주형 : 신뢰도 값을 높음/중간/낮음 등으로 분류하고 숫자 값이 아닌 범주로 표시

    1. 범주의 의미와 얼마나 많은 범주가 있어야 하는지 신중하게 생각하는 것이 중요함
    2. 각 신뢰 범주에서 사용자가 취해야 하는 조치를 명확하게 나타내야 함
    3. 범주형 모델 신뢰도 시각화 https://pair.withgoogle.com/assets/ET5_aim-for.png


  • 2) N-best 대안 : 명시적인 신뢰 지표를 제공하는 대신 시스템은 N-best 대안 결과를 표시할 수 있음

    1. 예시 : “이 사진은 뉴욕, 도쿄 또는 로스앤젤레스의 사진일 수 있음”
    2. 이 접근 방식은 신뢰도가 낮은 상황에서 특히 유용할 수 있음. 여러 옵션을 표시하면 사용자가 자신의 판단에 의존하며, 시스템이 서로 다른 옵션을 연결하는 방법에 대한 Mental model 구축에 도움이 됨
    3. 표시할 대안의 수를 결정하려면 사용자 테스트 및 반복이 필요함
    4. N-best의 모델 신뢰도 시각화 https://pair.withgoogle.com/assets/ET6_aim-for.png


  • 3) 숫자 : 일반적인 형태는 간단한 백분율로, 숫자 신뢰도 지표는 사용자가 확률에 대한 기준선을 잘 이해하고 있다고 가정하기 때문에 위험할 수 있음

    1. 사용자가 백분율의 의미를 이해할 수 있도록 충분한 컨텍스트를 제공해야 함. 초보 사용자는 특정 상황에서 80%와 같은 값이 낮은지 높은지 또는 이것이 그들에게 무엇을 의미하는지 모를 수 있음.
    2. 대부분의 AI 모델은 100% 신뢰도로 예측하지 않기 때문에 숫자 모델 신뢰도를 표시하면 사용자가 확실하는 결과와 혼동할 수 있음. 예를 들어, 사용자가 한 곡을 여러 번 재생한 경우 시스템은 해당 곡을 100% 매치가 아닌 97% 매치로 표시할 수 있음.
    3. 수치 모델 신뢰도 시각화 https://pair.withgoogle.com/assets/ET7_aim-for.png


  • 4) 데이터 시각화 : 이는 확실성에 대한 그래픽 기반 표시로, 예를 들어 재무 예측에는 시스템의 신뢰 수준에 기초한 대체 결과의 범위를 나타내는 오류 막대 또는 음영 영역이 포함될 수 있음.  그러나 일부 일반적인 데이터 시각화는 특정 도메인의 전문 사용자가 가장 잘 이해한다는 점을 명심해야 함.
    • 모델 신뢰도의 데이터 시각화

1) 모델의 신뢰도를 보여주는 것이 신뢰를 높이고 사람들이 더 쉽게 결정을 내릴 수 있도록 하는지 여부를 평가하기 위해 대상자의 다양성을 반영하는 사람들과 함께 사용자 조사를 수행할 수 있음.
Q. “이 정도 규모에서 이 추천을 얼마나 신뢰하는지?”
Q. “이 앱이 어떻게 이 추천을 제공했는지에 대해 궁금한 사항이 있는지?”
Q. “이 추천에 대한 신뢰를 높이는 것이 있다면 무엇인지?”
Q. “해당 설명에 얼마나 만족하는지?”

2) AI 기반 Product나 기능에 대한 모델 신뢰도 표시가 필요하다고 확신하면 이를 표시하는 올바른 방법을 결정하기 위해 테스트하고 반복해야 함.


6. Conclution

지금까지 네 번째 가이드라인, Explainability + Trust를 정리해보았습니다. AI 시스템의 내부 작동에 대한 설명의 제공 여부와 그 방법은 시스템에 대한 사용자 경험과 의사 결정에서의 유용성에 큰 영향을 미칠 수 있습니다. 이 장에서 다루는 고려 사항을 요약하면 다음과 같습니다.

  1. 사용자 신뢰 대상 명확화 : 신뢰는 이익에 대한 기대를 바탕으로 위험을 감수할 용의가 있는 것을 의미함

  2. 사용자가 신뢰 수준을 설정하도록 지원 : 시스템의 목표는 사용자가 어떤 상황에서는 시스템을 신뢰하지만 필요할 때 다시 확인하는 것으로, 신뢰에 영향을 미치는 요인은 다음과 같음
    • 명확한 데이터 소스 : AI의 예측에 사용되는 데이터를 사용자에게 알려주면, 상황에 따른 당혹스러움을 느끼는 경우나 개인 정보 보호에 대한 의심을 방지하고 사용자의 판단을 적용해야 할 때를 알 수 있음
    • 사용자의 동작에 대한 설명 제공 : 사용자의 동작과 시스템 출력 간의 명확한 인과 관계를 설명과 함께 표시하면 시간이 지남에 따라 사용자가 올바른 수준의 신뢰를 구축하는 데 도움이 됨
    • 상황에 따른 이해관계 고려 : 자세한 설명을 제공하고 신뢰도가 낮거나 높은 이해관계가 있는 상황에서 사용자가 결과를 확인하도록 유도하고 신뢰도가 높은 예측의 근거를 밝혀 사용자 신뢰를 강화할 수 있음

  3. Product 경험 전반에 걸친 신뢰도 구축 계획 : 사용자와 적절한 수준의 신뢰를 구축하는 과정은 충분한 시간과 신중함이 필요하며 사용자와 Product의 상호 작용 전, 그리고 전체에서 발생함. 각 단계에서 신뢰도를 조정하기 위해 Product 내부 및 주변에서 사용할 수 있는 다양한 접근 방식 (교육, 온보딩)이 있음

  4. 사용자의 이해를 위한 최적화 : 경우에 따라 명시적이고 포괄적인 설명을 제공할 방법이 없을 수 있음. 출력 이면의 계산은 해당 시스템의 개발자에게도 불가사의할 수 있으며, 다른 경우에는 예측 뒤에 있는 추론을 표면화하는 것이 가능할 수 있지만 사용자가 이해할 수 있는 용어로 설명하기가 쉽지 않을 수 있기 때문에, 이 경우 부분적인 설명을 사용하는 것이 좋음

  5. 사용자 결정에 미치는 영향력 관리 : 사용자가 모델 출력을 기반으로 결정을 내려야 하는 경우 모델 신뢰도를 표시하는 시기와 방법이 사용자가 취하는 조치에 중요한 역할을 할 수 있음. 모델 신뢰도를 전달하는 방법에는 여러 가지가 있으며 각각 고유한 장단점과 고려 사항이 존재함



다음은 Chapter 5 “Feedback + Control (피드백과 제어)”를 정리해보겠습니다.

Next series Feedback + Control




소통은 제가 공부하고 공유하는 원동력이 됩니다.
해당 글이 도움이 되셨다면 소중한 격려와 응원 부탁드립니다 ☺️

© 2023 Daisy. All rights reserved.