[AIUX] Ch4 解釋性和信任

AlfredCamera
AlfredCamera Team Blog
15 min readJul 24, 2021
這系列文章為 AlfredCamera 工程和設計團隊閱讀 Google People + AI 內容綱要和討論筆記,期望透過平常設計 AI 產品的設計師和工程師的補充,讓文件中的知識更容易被各種背景的人員吸收應用。由於在討論中也發現 AI 產品設計的中文資料較少,因此整理分享期望能幫助到其他團隊。原文摘要在文中以白底區塊為主,團隊的討論會以灰底區塊呈現,方便大家閱讀。如果有任何建議歡迎留言討論,或來信 hello@alfred.camera 😊
Design based on People + AI visual style

由於 AI 充滿了不確定性,適度的解釋有助於他們理解系統怎麼運作。用戶對 AI 模型建立起正確的心智模型(可參考 Ch 3 心智模型),便知道怎麼運用 AI 產品達到自己的目標。在這個章節會更著重在如何、何時和用戶說明產品運作方式、使用什麼數據進行運算、對輸出結果的信心度。

一、什麼影響了用戶的信任程度

這裡定義的信任是「對於預期的獲益,願意承擔風險的意願程度」。以下三點會影響信任度:

  1. 能力(Ability):產品是否有能力滿足用戶需求
  2. 可靠性(Reliability):產品質量是否符合標準而穩定
  3. 善意(Benevolence):產品是否有盡力為用戶著想的意願

獲得用戶信任是漫漫長路,透過用戶不斷調整自己的期望和了解產品實際能做的事而累積。以下來看如何有效進行這個過程。

二、讓使用者適度的信任演算法

一般來說我們不會希望使用者全然的相信你的 AI 系統,而是根據情況調整對於 AI 的信任程度。有許多研究關於「演算法驗惡(algorithm aversion)」的研究顯示人們可能對於演算法會有過度的懷疑,另一方面研究人員也發現部份的人會過度信任演算法,以至於對演算法的能力有過度的期待。在理想情況下,使用者應該對 AI 系統有適度的理解並清楚 AI 能和不能做到的事情。

舉例來說,直接表明系統的判斷不一定準確可能會降低使用者用系統的信賴度,但長期來說我們也降低了使用者因為過度信賴、對系統的能力感到失望而流失的可能。

說明資料的來源和用途

AI做的每一個預測都是基於過往蒐集的資料,所以當你向使用者說明系統運作的方式時,資料相關的資訊也必須要囊括在說明中。然而和資料扯上關係的事情通常也會伴隨個資法律、公平性、道德面的問題,在說明的同時也必須留意相關的風險。

有時使用者會因為在一些意想不到的地方見到他們的個人資訊而感到意外,像是當他們發現系統蒐集了原先不預期會被紀錄的個人資訊或是使用者不知道能被系統取得的資料,這兩種情況都會對使用者對於系統的信任造成損傷。為了避免這種情形的發生,我們需要向使用者提供相關的說明。

同時讓使用者知道 AI 使用那些資料來進行分析也是一樣重要的,這能夠幫助與使用者判斷何時他們有系統所沒有的關鍵資訊,在某些情況下可以避免使用者被錯誤的分析誤導。

例如說你今天裝了一款 AI 智慧導航 app 而且接受了所有使用者條款,條款中授權這款應用程式存取你的行事曆活動。稍後你從這款 app 收到一則如果你不在五分鐘以內出發可能會趕不上預約的通知,假如你不記得或是沒有意識到當初有授權給導航 app,你可能會因此感到驚訝。

你如何評斷於一款 app 的可靠度取決於你預期它能作到什麼事,而你的期望會取決於開法者怎敘述這款 app 的功能及背後的原理。在不做任何說明的情況下使用者可能會對 app 的怎麼取得資料存疑,又或者只因為 app 成功幫助你趕上行程幾次就以為它能取用行事曆所有的資料,這兩種情況都不會是我們期望的,避免這種問題的其中一種方法是當你用使用者資料做分析時,把資料的來源來分析的結果一同顯示出來,並提供取消 app 取用資料授權的選項。事實上在某些國家會強至要求軟體根據不同的使用情境提供個別的說明和資料授權選項。

範例:盡量讓用戶知道不授權造成的影響,何時系統失效需要他們自行做判斷

結合操作與說明

當每個行動都可以得到直接的回饋時,我們更容易學習其中的因果關係,這代表說明最好是伴隨在使用者的操作之後。如果使用者從 AI 系統得錯誤訊息或是預期之外的結果,在錯誤訊息中附上說明、解釋 AI 系統的限制能有效的恢復使用者的信任。反過來說當系統正常運作時,我們也可以在操作中加入說明,讓使用者知道在平常使用我們的產品時有哪些方法可以幫助 AI 系統表現的更好。

比方說使用者點了一款餐廳推薦 app 的「推薦」按鈕,但得到的結果都是他不常去的義大利餐廳,他可能就會因此認為這款 app 沒辦法很好的做出個人化的推薦。但如果我們在顯示推薦結果的同時附上說明:「App 只會從一個街區以內的餐廳挑出最合適的選項」,使用者這時就會意識到因為他人在紐約的小義大利區,app 推薦的都是義大利餐廳是理所當然的。

在某些很難直接加入說明的情況下,我們可以採用 multi-modal 的設計來插入說明。像是語音助手同時擁有圖形界面和語音操作兩個選項,我們就可以把詳細的說明留在圖形界面,在語音操作時提醒使用者說明的存在,讓他們再有空的時候再去查看。

根據風險調整說明

你可以視情況利用說明來鼓勵使用者更相信系統的判斷或是降低對系統的信賴程度,因此我們必須根據使用者得到 AI 錯誤的判斷時產生的風險來調整相關的提醒和說明。

像是導航款體沒有必要告訴你每天通勤路線的預估到達時間是怎樣算出來的,但當你在趕飛機時,你就會需要有詳細資訊來自己判斷哪一條路線最有可能準時到達、app 給出的哪些資訊可能是不準確的,這時候在推薦路線的結果中就可以附上「交通狀況的資訊每小時只會更新一次」之類的訊息來提醒使用者。

範例:在重要的任務上,盡量向用戶解釋 AI 產生此結果的原因

三、透過產品體驗讓用戶調整期待

建立用戶信任是緩慢且嚴謹的過程,藉由透過體驗產品時提供的說明,可以幫助用戶對產品的能力設定更務實的期望:

  • 即時說明(Explain in-the-moment):適當的情況下,為 AI 的結果提供理由
  • 提供額外說明(Provide additional explainations in the product):借力於產品中各流程,例如 onboarding 向用戶解釋 AI
  • 超越產品(Go beyond the product experience):產品內的說明可能不夠,可以提供更多外部的資源,例如透過廣告對用戶做教育

從一開始就建立信任

當用戶開始考慮使用一個新產品,會很好奇怎麼與產品互動,以及產品能做到什麼。最重要的是他是否可以信任這個產品,尤其他過去並沒有太多類似產品的使用經驗。與用戶建立信任感可以:

  • 儘早清楚溝通產品的能力和限制:專注在益處而非科技。用戶可能有自己對 AI 的見解,會太過相信/太少相信 AI 的能力。
  • 強調熟悉的部分:用戶經常在尋找與過往經驗相似的特徵,這可幫助建立起最初的信任。
  • 透過第三方資源情境化推薦:當你協助用戶使用一個新產品或功能,導向已經取得信任的第三方資源可能會獲益。例如透過 Google 登入新產品。

提早增加信任感

用戶開始使用產品後,會產生很多顧慮。他們會想知道怎麼操作產品,特別是隱私和安全性。他們也可能想了解怎麼互動,系統會怎麼處理他們輸入以及給予什麼輸出。為了幫助建立 AI 產品的信任感,可以嘗試:

  • 溝通用戶數據的隱私權限和安全設定:特別是哪些數據被分享。
  • 讓用戶輕易地試用:提供類似沙盒(sandbox)的體驗讓用戶可以自行探索和測試產品的功能。
  • 當用戶開始使用時,讓他們投入並給他們控制權:讓用戶可以自行設定偏好、系統不如預期時可以調整、讓他們有機會提供反饋。

維持信任

當用戶開始使用產品了,你會希望開始加強用戶和產品間的關係。用戶會想知道如何更改設定、系統會如何回應新的需求。當用戶持續使用時,可作以下事情維持信任:

  • 在用戶的引導下漸漸增加自動化:讓用戶熟悉讓 AI 控制產品,並確保用戶可以提供反饋,讓這個過程符合預期。關鍵是一小步慢慢來,確定用戶掌握情況後增加速度。當信任感高的時候可以更多自動化。
  • 持續清楚地溝通權限和設定:儘早要求權限授權。用戶使用中會想要看到過去自己做的設置,並根據使用情境調整。他們也有可能忘記為何分享這個權限,所以記得解釋原因和對用戶的益處。

重新獲得或防止失去信任

使用產品時,用戶可能會遇到很多錯誤情況。由於 AI 有許多的可能性和不確定性,偶爾會有預期外的錯誤發生。在關鍵的節點上,用戶關心的事是否能立即知道錯誤發生,並繼續安全地使用。因此產品怎麼應對錯誤情況影響用戶信任非常大,你可以:

  • 溝通適當的系統反應:事先讓用戶知道,即使錯誤情況發生也有備案。更進階的甚至可以提供資訊讓用戶進行決定。例如讓用戶知道當他預定航班後,如果在其他服務看到更低的價格,用戶可以取回差額。
  • 根據嚴重性,讓用戶選擇繼續進行操作:產品應提供解決問題,並避免問題一在發生的方法。可嘗試:
  1. 當下修正問題:例如當用戶慣用的跑步路線被刪除,可以讓用戶知道。
  2. 防止問題重複發生:讓用戶有機會教育系統他們的期待,甚至在高風險的情況下從自動操控改成用戶操控。

四、優化可理解性

如同先前提到的,說明是建立適度的使用者信任的關鍵,但解釋 AI 背後的原理本身就是一件挑戰,AI 系統的複雜度和不確定也限制了適合的說明方式。AI 背後的原理通常沒辦法用一兩句話簡單的解釋,多數的情況下不做完整的解釋、只針對與用者切身相關的部份做說明才是最佳解,雖然限縮了說明的廣度解釋起來還是有一定的難度,不過我們就有不少的技巧可以嘗試。

只解釋重要的部份

部份解釋(partial explanations)的方式來向使用者說明系統運作的方式通常只帶過整個系統中最重要的區塊、最能影響系統的輸入資料,刻意的略過太過複雜或是即使理解了對使用者也沒有益處的部份。部份解釋的方式也能搭配漸進式說明(progressive disclosure),讓比較有好奇心的使用者自己一步步探索更深入的資訊。

介紹系統架構或是輸出結果

利用系統概述(general system explanations)的策略來做說明時,我們主要向使用者敘述系統整體的行為、使用哪些資料當作輸入、會得到怎樣的輸出、根據哪些目標去訓練。

具體解釋輸出(specific output explanations)會需要我們針對每一個使用者的每個操作結果做出說明,像是為什麼 AI 會覺得某一張植物的照片是毒漆樹。因為我們是直接對輸入資料和輸出結果的關係做出解釋,這類的解釋對於消除使用者的的困惑特別有幫助。

從輸入資料的角度解釋系統行為

訓練/輸入資料即使對於回歸模型(regressions)這種常見又簡單的機器學習模型都有很大的影響,分析資料對 AI 系統影響的研究目前還在發展階段,但我們還是可以利用一些比較簡單的方式讓使用者理解兩者之間大概的關係,又或者我們可以直接用反例來說明 AI 系統為什麼不會輸出特定的結論。有以下兩種類型:

  • 對特定輸入的結果做解釋(Specific output)

「這顆植物最有可能是毒漆樹因為它有 XYZ 特徵」

「我們產生了這份林場指南給你因為你最近在北美上傳了很多楓樹和橡樹的照片」

「這片葉子不是楓葉因為他沒有五個葉尖」

  • 對整個系統的輸入做解釋(General system)

「這款 app 用顏色、葉子的形狀和一些其他的特徵來辨識植物的種類」

顯示 AI 對結果有多少把握

直接輸出 AI 模型的信心度(model confidence)能告訴使用者它對於分析的結果多有把握、甚至是可能性第二、第三高的結果。現行的 AI 模型大多可以輸出前 N 個最有可能的結果(n-best classifications)和信心度(confidence scores),所以利用這類的手段作為解釋方法在多數的情況下都是可行的。

  • 對特定輸入的結果做解釋

N 個最有可能的結果— 「前 N 個最有可能的結果 — 照片中的植物最有可能是:毒漆樹、楓樹、黑莓」

信心度 — 「照片中的植物最有可能是: 毒漆樹(80%)」

  • 對整個系統的輸入做解釋

「系統對於影像分類的結果平均有 80% 的信心水準」

顯示信心度可以幫助使用者評估應該多信任AI的分析,但我們呈現信心度的方式不限於一種,來自不同背景的使用者對信心度這種統計資料也會有不同程度的理解,所以在產品開發的前期嘗試不同的呈現方式會是很重要的一步。

依靠範例來說明

當我們沒辦法直接說明或是不完全了解 AI 背後的決策流程時,直接用實際的資料和分析結果來做說明會是一個簡單又有效的方法,使用者能很直覺的從例子中了解 AI 會出錯大概的原因、其他也可能會出錯的情況,不過使用者會怎解讀這些範例、怎調整對於系統的信任度就沒有一定的保證。

  • 對特定輸入的結果做解釋

為了幫助使用者決定要不要信任「毒漆樹」這個分類結果,系統同時附上幾張和輸入的照片最像的毒漆樹和其他種類植物的照片。

  • 對整個系統的輸入做解釋

給使用者幾個系統容易分析錯的和分析成功的照片當作參考。

從互動中學習

另一種解釋 AI 系統的方式是不多做解釋讓使用者自己嘗試輸入不同的資料、即時得到回饋,讓使用者在探索系統的過程中建立關於 AI 系統的心智模型。人們常常會測試找出系統背後的規律和限制,比如問語音助理一些很難的問題。藉由提供管道讓使用者用比較彈性的方式和AI互動,我們可以同時達到增加對系統的了解和建立信任感兩個目的。

  • 對特定輸入的結果做解釋

用戶懷疑系統給葉子的顏色太多權重,導致樹叢的葉子分類錯誤。因此用戶調整了光源,讓葉子的亮度更均勻,看看是否會使分類正確。

  • 對整個系統的做解釋

這類的解釋方式不適合使用在這種解釋方式,會需要在特定的任務上有具體的輸出讓用戶互動。

不需要解釋或是需要全面說明的情況

在 AI 的行為符合使用者的預期且只會在極少的狀況下出錯時,在操作的流程中加入說明不會帶來特別大的好處。如我們沒有必要向使用者解釋攝影軟體的自動亮度背後的原理是什麼、在哪種情況下拍照會得到哪種結果。除此之外我們也得避免會透漏專有技術或是機密資料的解釋。

相反的,我們可能會被要求完全公開系統背後的運作細節,以便第三方檢視系統的正確性及公平性。

四、控制 AI 對使用者決策的影響

幫助人類做出更好的決定是 AI 最有潛力的用途之一,良好的人機合作關係可以讓我們達到比只靠人力或機器更好的表現,像是通勤者可以利用它對當地交通的了解讓導航系統找到最佳的路徑、醫生可以結合醫療診斷系統的分析和病患過去的病例。為了讓這種合作關係可以順利發揮作用,人們需要知道什麼時候可以採用 AI 的判斷。

決定是否應該顯示信心度

要讓信心度直覺好理解不是件簡單的事,尋找信心度最好的表達方式的研究到今天依然進行中。就算假設用戶都能正確的解讀信心度的意義,我們依然需要思考:提供信心度真的能幫助使用者嗎?或是反而會造成反效果讓使用者分心甚至是做錯決定?

決定怎樣顯示信心度

如果經過一番測試之後你認為顯示信心度可以幫助用戶決策,那下一步就是決定合適的顯示方式。為了找出最佳的顯示方式我們得先思考我們希望怎利用信心度來引導使用者

分類顯示(Categorical)

不直接顯示信心度的數值,而是把信心度分成幾個類別像是:低、中、高。使用這個方式我們會需要注意幾點:

  • 你的團隊會需要決定每個類別的分隔點在哪,你們會需要好好的思考每個類別應該代表什麼意義、該加入多少個類別。
  • 每個信心度類別都應該讓使用者清楚的知道怎處理這個類別的結果。

N 個最有可能的結果(N-best alternatives)

不提供明確的信心度,但提供使用者 N 個最佳的分析結果。像是,「這張照片拍攝地點可能是 紐約、東京或洛杉磯」。

  • 這個方法在系統信心度不高時很有用,一次提供使用者多個可能的選項可以促使他們思考不同選項間的差異、不完全仰賴系統的分析,而且讓使用者在這個過程中也能建立對於系統的心智模型。
  • 決定要用多大的N會需要不只一次的使用者測試。

顯示信心度的數值(Numeric)

顯示信心度的數值常見的作法是用百分比來表示分析結果的正確機率,用這個方法的前提是你必須確定使用者對於機率有基礎的了解。

  • 確定你有提供足夠的資訊讓使用者了解你顯示的數值代表什麼意思、多高的數值算好。
  • 因為 AI 通常不會有 100% 的把握,所以當 AI 對明顯正確的事情顯示小於100% 的信心度可能會讓使用者懷疑背後的原因。像是就算你已經聽過同一首歌七次了,但系統還是會顯示你只有 97% 的可能性會喜歡這首歌。

資料視覺化(Data visualizations)

在特定領域如金融業會使用圖表視覺化資料,在圖表上我們也能用一些技巧來顯示信心度(或是不確定性),像是在直方圖加上誤差線、在曲線圖上用陰影區域代表可能的誤差範圍。不過這種顯示方式通常只適用於特定領域的專業使用者。

總結

如果你在AI產品中提供系統敘述,那你怎麼說明AI背後的運作原理會深刻的影響使用者的體驗和影響力,我們在這章節提到的三大要點有:

讓使用者適度的相信演算法

我們的目標應該是讓使用者在適當的情況下信任AI,但在其他的情況下除了參考 AI 的建議外也自己做過一次判斷。而我們能改變使用者信任度的方法有:

  • 說明資料的來源和用途
  • 結合操作與說明
  • 根據風險調整說明

讓說明好懂

多數的 AI 背後的運算太過複雜即使是開發者也不完全理解,我們沒辦法給使用者關於系統原理一個明確的說明,或是我們雖然可以大略說明系統的判斷準則但這些說明卻很難被一般使用者理解,面對這種問題我們可以使用只做局部說明。

➂ 控制AI對使用者決策的影響

當一個使用者根據 AI 系統的分析做決策時,我們怎顯示系統的信心度會決定這份資訊怎影響使用者最後的決定。我們有不只一種方法可以呈現信心度,但每種方法都有它的優缺點和需要注意的地方。

本文編者名單主筆:Ron
編輯:Weiyun Hsu
討論:AIUX 讀書會成員 Cheyu, Frank, Jacky, Ron, 宜婷, Weiyun

--

--

AlfredCamera
AlfredCamera Team Blog

AlfredCamera 從使用者出發,專注在推出解決大眾生活問題的普及化 AI 應用。全球已累積超越四千萬用戶下載,北美最受歡迎的居家安全監控軟體,並分別在 2016 年與 2019 年獲得 Google Play 年度最創新 App 與年度最佳生活幫手 App 的殊榮。