駕駛場景下的語音交互

3 評論 9395 瀏覽 76 收藏 21 分鐘

駕駛場景下,采用的具體的交互方式是什么呢?使用手,亦或是語音?您覺的哪一種更方便呢?

Why is voice user interface?

先拋出一個問題,試著回憶一下,你在開車時是如何操作導航的?

答案大類上無非兩種:

  1. 與手機交互;
  2. 與車載導航交互。

那么,具體的交互方式呢?使用手,亦或是語音?您覺的哪一種更方便呢?

孰優孰劣暫不下定論,我們試著分析一下語音交互出現的原因。

筆者曾聽一位百度云的副總裁說:

『人機交互方式由傳統的鼠標,鍵盤轉移到了今天的 Touch 交互。而下一個交互方式的重大變革便是語音交互』。

Assume『人終究是懶的吧』,暫把這條設為定理一。

基于該法則可以推出定理二:能讓人懶的方法可以獲得喜歡。

那么,怎么能讓人懶?

  1. 降低人的學習成本;
  2. 提高人的操作效率。

此時再看 VUI (Voice user interface),語音交互具有學習成本極低的特點,只要能清楚的用語言表達目的即可。但是 VUI 并不能完全保證提高人的操作效率。

因此,筆者認為:VUI 最高效的應用場景是『用戶明確知道任務目標,且語音交互的速度要快于接觸式交互』。

以上,我們再回到駕駛場景中。

人有五感——形、聲、聞、味、觸。從安全駕駛的角度考慮,視線需要長時間觀察路況,不宜頻繁打野。信息輸入層面上,耳『聽』更具有優勢。

大腦處理信息后,需要進行信息輸出。由于雙手『觸』受限于方向盤,再從安全的角度考慮,口『說』的優勢又體現出來了。

綜上,筆者理解的駕駛場景下的語音交互的適用功能為:司機對任務目標很明確,如:播放某某歌曲,且該任務通過語音操作的效率高于接觸式操作。

How to do VUI design?

General Interaction Flow:語音獲取 -> 語音處理 -> 信息呈現。

類似于 GUI 設計,設計師需要考慮信息的收集、處理、呈現,只是多了語音這個信息載體。

設計流程如下:

  1. Requirements:明確商業上的需求和用戶的需求,進而確定產品的需求;
  2. Flow:從需求出發,梳理出交互流程;
  3. Prompts:針對每一個流程,設計語音提示;
  4. Grammar:針對語音提示,設計語法收集語音反饋;
  5. User testing:完成設計后,通過用戶測試手機反饋;
  6. Tuning:針對反饋,進一步完善產品。

Requirements

產品需求定義是決定一個好產品的核心,只有把有限的資源集中在『剛需』功能上,用戶最后才會買單。后續一切的設計,開發才有意義。

Requirements design:It is always a balance between business interest and user interest.

筆者認為:盈利導向性產品中,需求設計總是在商業利益和用戶利益之間發現一個平衡點。如果涉及到公司政治因素,商業利益也包括領導的利益和團隊的利益。

你需要知道公司每個部門的想法是什么,領導的想法是什么?

這是保證項目順利實施的核心。其次,產品必須要用戶獲利,否則這個項目本身不具有任何意義,除非你想做官僚式產品。

設計師需要考慮商業、公司、人事、用戶等各個方面的問題,理性平衡各方面因素,從而達到一個暫時的最優解。

由于軟能力層面不可一概而論,本文后續只從用戶體驗的角度設計功能。

Flow

當功能確定之后,需要詳細梳理功能的流程。流程應該反應功能的優先級,同時,確保用戶的每一步操作都有相應的反饋。

筆者覺的在這一步,團隊成員之間可以多多交流,多討論流程有哪些可以優化的地方。盡可能的完善流程,以避免后續改動造成的額外成本。

其次,VUI designer 和 GUI designer 應該在這個階段就開始多合作。鑒于車載的中控屏幕、Kombi 顯示屏和 HUD(Head-up display),一個良好的 GUI 界面對于提升 VUI 的用戶體驗是至關重要的。

在提示信息,顯示信息以及錯誤提示時,圖形界面都可以很好的輔助用戶進行語音操作。二者相輔相成,缺一不可。

Prompts

在對話設計中,需要設計師對于該門語言有著深刻的理解,包括但不僅限于:停頓、語調、用詞、強調等。

每一門語言都有著其獨特的 Prosody,這需要課外進行大量的積累。筆者自覺知識有限,這里僅從信息呈現的角度談談如何設計對話。

以下內容參考 Amazon Alexa Voice Design Guide

  1. 清晰的告知用戶該做什么?
  2. 保持簡潔;
  3. 避免過多選項;
  4. 提供幫助選項;
  5. 只詢問必要問題;
  6. 有選擇的讓用戶確認;
  7. 一次只處理一條信息;
  8. 讓用戶知道所處上下文;
  9. 一次不要呈現過多的信息;
  10. 信息可聽度;
  11. 避免使用專業術語;
  12. 錯誤時再次提示給用戶指導;
  13. 錯誤時提供幫助入口;
  14. 錯誤時不要責怪用戶;
  15. 提前預測錯誤。

具體案例大家可以查看 Amazon 原文。

筆者這里主要強調 10.信息可聽度12.錯誤時再次提示給用戶引導

(1)信息可聽度

VUI designer 寫的文字最后會通過 TTS (text to speech) 的技術讀出來,因此,看上去沒有問題的書面用語有時在讀出來時會變得不那么自然。所以,建議設計師把對話大聲多朗讀幾遍,這會非常有助于你感知真實的用戶場景。

And of course, your ears will tell you how it works.

(2)錯誤時再次提示給用戶引導

在 Voice:user interface design一書中,作者提到了兩種錯誤提示的方式:一種是完整提示,另一種是快速提示。

區別如下:

完整提示

  1. System:請輸入密碼?
  2. User:假如用戶輸錯了或不知道密碼,此步驟失敗。
  3. System:密碼錯誤,請再次輸入?如果您忘記密碼,請登陸 APP 個人界面重新設置密碼。

快速提示

  1. System:請輸入密碼;
  2. User:假如用戶輸錯了或不知道密碼,此步驟失敗;
  3. System:密碼錯誤,請再次輸入;
  4. User:加入用戶操作再次失?。?/li>
  5. System:密碼錯誤,請再次輸入。如果您忘記密碼,請登陸 APP 個人界面重新設置密碼,結束操作請說『結束』。

筆者認為:完整提示更傾向于 Memory load 比較大的操作,用戶很容易忘記的內容。很大概率上,用戶需要完整的提示在指導其進行操作。

反之,快速提示則更適用于 Memory load 比較小的操作,用戶誤操的可能比較大,因此首次錯誤提示應該更加簡潔,以高效為首要目的。可針對具體應用場景進行選擇。

Grammar

語法層面設計到一些復雜的技術,筆者根據技術識別流程簡單介紹下。

Recognition flow

  1. 判斷結束點;
  2. 提取有效信息;
  3. 識別;
  4. 自然語言理解;
  5. 對話管理。

(1)判斷結束點

End point

從發出聲音到結束聲音,截取聲音片段。

(2)提取有效信息

Feature extraction

通過處理技術,將聲波識別成為一個個發音單元。

(3)識別

Recognition

根據 Dictionary 中的發音單元和單詞的匹配,將發音單元識別成特定的文字。

(4)自然語言理解

Natural language

通過算法對文字就行處理,理解其想表達的含義。

(5)對話管理

Dialog management

針對此輪對話的含義,從而進一步設計下一輪對話,其中最核心的部分是在識別模型這一塊。

Recognition model

目前主要有兩大識別模型:Rule based grammarStatistical language model (SLM)。

兩種語法的目的都是為了充分理解用戶說的內容,從而指導用戶進行下一輪對話,區別在于其實現的技術手段。

Rule based grammar 即為人工定義,利用 voiceXML language 手動定義語法的 slots 和 filler。slots 即需要識別的內容,filler 用于幫助定位 slots。

//Example 1
.GETDESTINATION (?PREFILLER CITY ?POSTFILLER)
PREFILLER [ (I want to go to) (I am going to) (I need a flight to) (?I’m going to) ]
CITY [ (new york) (the big apple) (san francisco) ]
POSTFILLER

//Example 2
.GETCITIES (?PREFILLER
[(from CITY: orig to CITY: dest)
(to CITY: dest from CITY: orig)
] {<origin-city $orig> <destination-city $dest>}
?POSTFILLER
)

SLM 則是通過機器學習的算法,基于數據訓練出來的自動識別語法。在大數據的背景下,可以實現自然語言理解的功能。其優點是可以允許用戶按照自己的想法說出內容,不受限于 Rule based grammar 的有限識別范圍。

可以理解為基于人工智能(AI)的語音識別技術。國內比較領先的兩大技術提供商 科大訊飛 和 DuerOS. 其手機端的識別能力,筆者在第一次體驗時深深感受到了人工智能震撼。

理解技術背景有助于設計師更好的與工程師進行合作,輔助工程師設計出更人性化的語音識別技術。

User testing

測試這一環節和 GUI 基本一致,可以內部先按功能流程測試,記錄下不完善的地方。然后根據用例,小規模組織實際用戶進行測試,記錄下反饋。并在測試完成后進行 Group research 收集用戶更多主觀上的感受。

等產品上線后,有了大規模的產品數據后,采用 hotspot analysis,針對使用率高和退出率高的區域進行監聽,然后分析其原因。

不同的地方是我們可以在 VUI 的早期測試環節使用 Wizard Demo——即通過環境設置讓用戶覺的語音是機器識別并進行反饋的。實際上是通過測試員在幕后模擬機器發出的。

Wizard Demo 開發時間短、成本低,同時又能很好的扮演實際產品的測試功能??梢赃\用在 Prototype 技術成本較高的項目中。

Tuning

潤色。

好的產品都是不斷迭代而來的,一口氣不可能吃成個胖子。針對 User testing 中發現的問題:repeatedly iterate until the end。

Let’s check a sample application

Albert Einstein made the comment, “Example isn’t another way to teach, it is the only way to teach.”

So, 筆者本章用一個案例來說明上個章節的設計方法。

Requirements

車載系統的三大核心功能層面為導航,娛樂和通信。導航本身作為車輛出行的輔助性工具,其重要性猶勝。針對導航功能,其三大核心功能為:搜索、路線、和 LBS(Location based services)。

考慮到車輛的通勤屬性,即上下班的使用場景會更為頻繁。在此我選擇『路線』功能作為 VUI 設計的范例。

功能定義:用戶可以通過語音設置通勤地址(家和公司),支持語音喚起,導航至指定目的地。

Flow

Main flow v1

  • Step 1 語音喚起:可以使用方向盤 TTS Button 或語音喚起詞技術,對語音識別系統進行喚起。比如:『奧迪奧迪』。
  • Step 2 設置家/公司地址:喚起成功后,此時應該有固定聲音提示 earcon,如『叮』。告知系統已觸發,請說出內容,可以結合 GUI 共同提示。用戶發出設置地址指令,設置環境可能出現錯誤。
  • Step 3 語音輸入地址:指令發出后,系統識別,然后告知用戶語音輸入目的地地址。此時需要考慮 prompt 設計,是讓用戶一次性說出全部地址,還是逐級引導用戶輸入地址。
  • Step 4 確認地址:可能存在識別錯誤,需要用戶確認是否是該地址。
  • Step 5 導航至家/公司:成功設置后,語音提示用戶是否要導航至該目的地,若超出 timeout,則用戶需要再次喚起并發出導航指定。
  • Step 6 確認開啟導航:系統告知用戶大體路況信息,詢問用戶是否需要開啟導航。
  • Step 7 結束:開始導航,流程結束。

根據以上分析,完善一下流程圖:

main flow v2

Promp

Grammar

筆者認為:在技術條件允許的情況下,優先使用SLM進行語音識別,最大可能提升用戶操作上的自由度。因此在地址識別上,用戶即可以說目的地名稱,如:奧迪中國樓;也可以說目的地地址,如:酒仙橋路4號。

但這并不意味著設計師就可以不構思語法部分了,嘗試用 rule based grammar 來預判用戶操作,對于理解整個交互流程和優化 prmpts 的用戶體驗都是大有裨益的,即使是用作日后測試 SLM 的樣本也是極好的。

筆者寫兩個基本的案列:

//設置地址POI
.ADDPOI (?PREFILLER 名稱 ?POSTFILLER)
PREFILLER [ (設置) (我要設置) (我想設置) (添加) (我要添加) (我想添加)]
名稱 [ (家) (公司) ]
POSTFILLER [ (位置) (地址) ]

//輸入地址
.GETDESTINATION (?PREFILLER 地址)
PREFILLER [ (地址是) (我想去) (目的地是) (位置是)]
地址 [ (地址名稱) (地址詳情) ]

User

Tuning

結合 user testing 的結果,結合 GUI 的輔助,第一版完整的流程如下。

(1)路線場景下喚起系統:Eercon “叮”

GUI prompt

  1. 用戶語音指令輸入:設置公司的地址;
  2. 系統反饋:您好,您『公司』的地址是。

GUI prompt

  1. 用戶語音指令輸入:奧迪中國樓;
  2. 系統識別錯誤:抱歉,您的公司地址是。

GUI prompt

  1. 用戶再次語音指令輸入:奧迪中國樓;
  2. 系統識別正確:您公司的地址是奧迪中國樓,位于798酒仙橋路2號,是否確認。

GUI prompt

  1. 用戶確認公司地址:是。
  2. 用戶語音指令輸入:導航去公司。
  3. 系統識別,開啟導航:公司距當前位置3公里,預計行駛時間20分鐘,是否開啟導航。

GUI prompt

識別錯誤2次以上,是顯示幫助信息:您可以說『幫助』查閱使用手冊,『結束』終止操作。

GUI prompt

To be continued

想要設計一個優秀的語音交互功能,以上筆者所述只是最基本的入門知識,每一個模塊都還有大量的知識需要學習。

尤其考慮品牌建設,類似于 GUI,你的 VUI 的設計理念和設計特色是什么?如何讓用戶『一耳就聽出』這是你設計的?

地圖導航中名人語音包就是一個好的嘗試。因此,針對目標用戶群體,產品聲音的 persona definition 是必不可少的。

若最終想提供用戶一種和真人對話場景感,這個說話的人是誰就需要好好琢磨了。年齡、性別、職業、口音、語速、用詞…

當用戶有一天分不清真人語音和機器語音的那天,除了人工智能帶來的細思極恐外,陪聊產業的紅紅火火,恍恍惚惚似乎也是冥冥注定的吧。

Reference

Voice: user interface design

Alexa skills kit

 

作者:天晨Joey

原文鏈接:https://www.jianshu.com/p/204441b82709

本文由 @天晨Joey 授權發布于人人都是產品經理,未經作者許可,禁止轉載

題圖來自 Pexels,基于 CC0 協議

更多精彩內容,請關注人人都是產品經理微信公眾號或下載App
評論
評論請登錄
  1. 流程圖里time<2是什么意思

    回復
  2. 一些vui文章觀點的集合。

    來自安徽 回復