Microsoft 的 18 個「使用者與 AI 產品互動的設計原則」
論文出處:Guidelines for Human-AI Interaction
人工智慧技術的進展為使用者介面的設計提供了新的機會,但也帶來了新的挑戰。有些傳統的準則不一定完全適用在設計 AI 的產品,比如說產品的一致性是產品設計中已被廣泛接受的基本準則,但 AI 的產品會不斷透過分析與使用者的互動而進化,在設計 AI 產品時所在意的一致性和傳統的準則會有所不同。因此,新的人機互動的準則在各大 UX 會議或是科技媒體不斷被討論。例如先前討論過的 Google 以人為中心的設計機器學習產品設計原則,或是可解釋的 AI 的 LIME 分析架構,以及 Airbnb 已經實際應用在產品中的案例分享,都是大家在這個新的領域不斷摸索與試驗的成果。
這篇微軟即將於今年五月發表的論文即整理了近 20 年的研究論文,學術文章,或是業界發表的最新進展等等,並邀請了 49 位參與者,測試了 10 個產業類別中具有 AI 元素的產品功能,反覆與 UX 和 HCI 的專家討論後,整理出了這 18 個「人類與 AI 產品互動的設計原則」
對 49 位實驗參與者的測試結果如下圖二所示。這也是我認為本論文最有趣的一張圖表,統計測試者對於這些產品是否有符合這 18 個設計準則,(a) 是使用這認為有符合設計準則,(b) 是測試者認為該產品違反了設計準則,(c) 為不適用,(d) 為包含測試者認為違反,不違反,以及中性的意見。透過統計結果,可以看到 4 個面向:
- 使用者最有感的設計準則:圖二 (d) 為統計所有測試者的回答後,排除掉測試者覺得不適用的,因此統計次數最高的為使用者最有感,最容易發現的準則,準則 1, 12, 17 是前三名使用者最有感覺的設計準則
- 已被廣泛導入至 AI 產品功能的設計準則:圖二 (a) 中統計數字最高的即為目前相對已被廣泛導入至產品功能的準則,準則 1 ,4 ,12 為此範疇的前三名
- 尚未被廣泛導入至 AI 產品功能的設計準則:圖二 (b) 中的前三名 2, 11, 17,為相對尚未被廣泛導入至產品功能的準則
- 使用者較無感的設計準則:圖二 (c)為使用者回答「不適用」的設計準則,意即即使產品功能有符合,使用者也沒有發現。前三名 3, 5, 6 為使用者最為無感的設計準則。
以下即為作者整理的 18 個設計準則,我也盡量在這些準則中加入一些範例,雖然作者已經有提供微軟的產品來作為範例,但大部分的微軟產品我不是那麼熟悉。我找了一下我在使用的產品中可以作為例子的,卻發現大部分都是 Google 的產品。Google 產品中的 AI 功能隨處可見,其他公司的產品反而不是那麼明顯。
在使用者與產品開始互動之前
1/ 清楚告知系統可以做什麼,幫助使用者了解 AI 的能力可以做些什麼事 (Make clear what the system can do)
圖三以 Google Assistent 為例,AI 在一開始就清楚告訴使用者有哪些事情是他可以處理得比較好的,在最一開始的時候就讓使用者有合理的期待。
2/ 清楚告知系統可以做得多好,幫助使用者了解 AI 有多大可能性會犯錯 (Make clear how well the system can do what it can do)
下圖是 Google Assistant 的範例,用較為保守的口氣提供推薦的內容,避免使用者有過度的期待覺得 AI 推薦的內容會很精準。
在進行互動的時候
3/ 在正確的時間點並根據情境提供服務,知道在何時主動與使用者互動,並且根據使用者當時在做的事情,或是當時的環境,提供相對應的服務 (Time services based on context)
例如 Google Maps 根據使用者的現在位置,與要前往的目的地間的相對距離,分析目前的交通狀況,給與使用者提示與建議。
4/ 提供與當時情境相關的資訊,顯示與使用者當時在做的事情,或是所處在的環境相關的資訊 (Show contextually relevant information)
例如下圖 LINE Today 的範例,當使用者到達捷運站時,推送相關的資訊,比如說公車轉乘資訊等。
5/ 符合期待的社交用語,當和使用者對話的時候,確定用語是因時制宜並且符合期待的 (Match relevant social norms)
圖七為三個向使用者解釋為什麼會推薦這樣的內容的範例。左圖為 Netflix 的影片推薦,向使用者解釋因為他看過某部動畫,所以也推薦其他類似的動畫。中間為 Amazon 的網站,並非商品推薦,比較像是提醒使用者查詢過的書籍尚未結帳,但也清楚告知使用者為什麼在這個區塊會出現這樣的內容。右圖為 Airbnb 的在地體驗 (Experience) 推薦,清楚地告訴使用者,因為你訂了某個地方的房間,所以推薦給你在那附近的在地體驗。
6/ 減少會造成社交偏見的用語與內容,確定 AI 在和使用者互動時,其用詞不會造成不必要的刻板印象或偏見 (Mitigate social biases)
例如當搜尋科技公司的 CEO 時,出現女性的結果。為減少會造成社會偏見 (科技公司 CEO 多為白人男性) 的案例。
當可能有錯誤發生時
7/ 讓使用者隨時可主動與 AI 互動,當使用者需要時,隨時可以喚醒或是主動與 AI 系統互動 (Support efficient invocation)
最直接的例子應是 Google Assistant 與 Amazon 的 Alexa 了,只要呼叫特殊的指令,就可以立即與 AI 系統互動
8/ 讓使用者可以輕易的選擇消除,或是離開 AI 提供的服務 (Support efficient dismissal)
以 Google Maps,他會推薦到達目的地的最佳路徑,但使用者可以自由選擇是否採用,或是消除,離開推薦的最佳路徑。甚至在導航中,不照著 Google Maps 建議的路徑行使,或是直接選擇離開,他也會重新計算推薦新的路徑。
9/ 當 AI 發生錯誤時,使用者可以輕易地編輯,修正,或是復原他 (Support efficient correction):
再次用 Google Maps 作為例子,Your Timeline 可自動追蹤與定位使用者去過的地方,但使用者也可隨時編輯與修改這些地點,如下圖所示。透過這樣的用戶反饋,Google 可更精準的掌握用戶的地點,以及更優化他定位的技術。
10/ 當 AI 對於理解用戶的意圖不是那麼確定,或是對於提供的內容有所懷疑時,可以限縮提供的功能,並提供使用者多個選擇讓他做決定。 (Scope services when in doubt)
圖十二左為 Google Maps 的例子,AI 不是那麼確定哪一條路徑是最佳選擇,因此提供使用者多個選擇,以及做決定所需要的輔助資訊。圖十二右為 Google 搜索的範例,當使用者僅輸入一個字詞時,AI 不是那麼確定最好的 auto-complete 的答案是什麼,因此列出多個選擇,並用易懂的圖示來解釋該結果的意涵,比如說過去曾搜索的字詞,過去曾造訪的網站等等。
11/ 清楚說明為什麼 AI 這麼做,提供使用者可以看到這些資訊的方法 (Make clear why the system did what it did)
圖十三提供了三個範例:最左邊為 Instagram 的好友推薦,好友推薦是社交網站常見的推薦系統,他也清楚地告知為什麼系統會推薦你加他們好友,可能是「因為你的其他好友也有 follow 這個帳號」,或是「因為你有 follow 某個帳號 (所以你應該也會喜歡)」,或是「這個帳號有在你的通訊錄中」,或是「系統就是覺得你們應該要認識」等等。中間為 Google Maps 的景點推薦,用分數的方式告訴你為什麼 AI 覺得你會喜歡這個地方,比如說他覺得你會喜歡有名的咖啡廳,這個地方有 86% 符合你會喜歡的類型。右圖則為 Google Trips 的範例,解釋根據歷史資料顯示,AI 認為目前 Musée d’Orsay 美術館是遊客的當日高峰時段。
隨著互動不斷持續進行
12/ 有辦法記得最近的互動,並讓使用者可以根據那最近的互動繼續往下行動 (Remember recent interactions)
以我們常做的搜尋為例:很多情況搜尋並不是一次性的,而是一個長期的過程,例如規劃一趟旅程或是學習新的事物。Google 在討論搜尋產品的未來藍圖時,有提到將會追朔使用者以前的搜尋紀錄和拜訪過的頁面,並在相關搜尋意圖出現時將這些資料整理給使用者。
13/ 學習使用者的使用行為並提供個人化的服務 (Learn from user behavior)
仍舊以 Google 搜尋為例,因為對使用者夠瞭解,所以 AI 得以學習使用者的喜好,在輸入任何搜尋字之前,就提供一些可能會感興趣的內容。
14/ 當 AI 依據使用者最新的行為做改變時,小心改變的幅度過大而干擾使用者 (Update and adapy cautiously)
15/ 讓使用者可以在互動過程中不斷提供反饋,告訴 AI 他想要的內容是什麼 (Encourage granular feedback)
例如下圖 Google Lens 的範例,在顯示完結果後,用戶可根據該次結果提供反饋。
16/ 當使用者採取行動後,立即告訴他們這些行為會如何對 AI 產生影響 (Convey the consequences of user actions)
例如先前介紹過的 Airbnb 的範例,用小卡的方式提供房東建議,並清楚告訴房東採取行動後,會造成怎樣的結果,比如說提供優惠後預期可增加 44% 訂房率。完整的介紹可參考:
17/ 允許使用者修改 AI 系統設定 (Provide global controls)
18/ 當 AI 系統有任何更新或修改時,通知使用者 (Notify users about changes)
[2019–03–15更新] 非常謝謝交通大學研究 HCI 的專家,Stanley Chang 教授的提點,修改了文中數個理解有誤之處,以及不恰當的範例,也讓我對其中幾個準則有更為深入的理解,萬分感謝!