四大視角、萬字長文,歐盟MuMMER專案之商場服務機器人深入解讀

YuanyuanLi發表於2019-12-03

專案介紹

歐盟 MuMMER 專案屬於歐盟地平線 2020 專案,後者是歐盟有史以來規模最大的研究與創新計劃,甚至吸引了一些私人投資。根據官網資訊,其計劃在 7 年內(2014 年至 2020 年)提供近 800 億歐元資金,來推動將出色的想法從實驗室推向市場的過程。

MuMMER 專案的研究人員由歐洲幾所大學聯合 softbank 組成。在這個長達 3 年的專案中,研究人員們利用軟銀的 pepper 機器人為主要平臺,旨在與大型購物中心等公共場所的使用者自然而靈活地互動。該系統包括視聽感測(audio-visual sensing),社交訊號處理(social signal processing),對話互動(conversational interaction),視角捕捉(perspective taking),幾何推理(geometric reasoning)和運動規劃(motion planning)。最終的系統框架是機器人作業系統(ROS),所有開發出的演算法都在該系統中部署。

MuMMER 的主要部署地點是 Ideapark,一個位於芬蘭 Lempäälä的大型購物中心。MuMMER 機器人已被帶到購物中心多次,從而與購物中心的客戶和零售商共同對產品進行設計。在 2018 年 9 月,2019 年 5 月和 2019 年 6 月 MuMMER 機器人曾經被短暫的測試過,並於 2019 年 9 月進行了為期三個月的長期部署。

本文旨在對歐盟 MuMMER 專案的研發情況做一個綜述,由此管中窺豹,參考歐洲的學院派是如何將前沿技術部署到實際產品中的。

技術背景

根據該專案的結題論文,MuMMER 機器人系統開發過程主要涉及到視聽感測(audio-visual sensing),社交訊號處理(social signal processing),對話互動(conversational interaction)和路線導航(Route guidance supervision)四個方面的演算法開發。我們接下來深挖該專案發表的相關論文,會簡要介紹一下各個方面的技術特色。

視聽感測(Audio-visual sensing)

該專案的視聽感測主要是在互動過程中,對使用者進行視覺跟蹤和聽覺定位。

視覺方面,整個演算法基本循著 行人檢測(person detection)[1]——頭部姿勢估計(head pose estimation)[2]——頭部姿勢追蹤(head pose tracking)[5] 的流程,對於檢測到的近距離行人(1.2 米以內),還可以新增凝視檢測模組(gaze sensing module)。在 [6] 中,結合 Dlib』s facial landmarks extraction 演算法 和 Basel Face 3D morphable model (3DMM) 來精確的進行眼部定位、分割,並透過 domain knowledge 來為凝視方向提供先驗資訊,研究者們開發的演算法可以在 16 次測驗中達到平均誤差 7.64 度的精度。並且無需任何校準,可以直接在不同場景下使用。但為平衡演算法的計算速度和魯棒性,MuMMER 機器人系統最終沒有新增凝視檢測,而是選擇直接根據頭部姿勢計算每個人的注意力的視覺焦點。

在這一部分,值得討論主要是頭部姿勢估計的演算法設計。[2] 中提出的演算法用前一環節的 convolutional pose machines (CPM) 演算法預測的關鍵點(keypoints)、置信圖(confidence maps)、特徵圖(feature maps)作為輸入,需要給出預測的頭部姿勢作為輸出。下圖 1 總結了機器人身上的相機拍下影像後視覺系統執行的前兩步演算法——即 CPM 演算法 執行行人檢測,[2] 中的演算法接下來執行頭部姿勢估計。

首先是 CPM 演算法完成行人檢測。由機器人身上配置的相機捕捉 hw 大小的彩色影像,然後將影像送入預訓練 VGG-19 網路,生成一組特徵圖 F。特徵圖輸出幾個分支:頂部分支輸出置信圖 S,底部分支輸出 affinity fields L。然後將這些特徵圖輸入到 6 個階段(stage)中。每個階段包含兩個具有相同網路結構的分支(branch)。在每個分支之後,需要將特徵圖 F,置信度圖 S 和 affinity fields L 串聯起來,即圖 1 中的「+」號運算,作為下一階段的輸入。

四大視角、萬字長文,歐盟MuMMER專案之商場服務機器人深入解讀

圖 1:行人檢測 + 頭部姿勢檢測流程。圖源:Cao, Y.; Cane ́vet, O.; and Odobez, J.-M. 2018. Leveraging convolutional pose machines for fast and accurate head pose estimation

這種疊加多個階段(stage)並且保留最早透過 VGG-19 生成的特徵的思路很像 ResNet 這類殘差網路(residual netzork),在訓練時網路可以有效的利用上下文,從而可以精確地定位人體關節。

在每個階段的每個分支輸出處,對每個分支分別計算 L2 損失函式,如輸出置信圖的頂部分支的損失函式為:

四大視角、萬字長文,歐盟MuMMER專案之商場服務機器人深入解讀

其中 p 為需要預測的身體關鍵點,一共有 P+1 個(P 個身體關鍵點加背景)。b_t^{p}(z) 代表影像 z 上的每個畫素點屬於關鍵點 p 的置信度,b_^{p}(z) 則為 ground truth。整個頂部分支的損失函式則為所有階段的損失函式的加和,總的損失函式則是兩個分支的損失函式的加和。CPM 網路在 Microsoft COCO 資料集上訓練完成,並使用 18 個身體關鍵點(包括鼻子,眼睛,耳朵和肩膀)來提取特徵。作者沒有進行微調,直接使用該網路的輸出作為自己演算法的輸入資料。

接下來,作者訓練了多層感知器(MLP)或卷積神經網路(CNN)來預測以 pitch、roll 和 yaw 角度表示的頭部姿勢。圖 2 左圖給出了這三者是如何定義頭部姿勢的圖示。雖然 CPM 演算法給出 18 個關鍵點預測,但作者僅考慮上半身的 8 個關鍵點:鼻子,脖子,眼睛,耳朵和肩膀,並將其座標以眼睛和鼻子的中點為中心,首先進行歸一化處理。假如 CPM 演算法沒有檢測到某些關鍵點,其預測中就會有缺失值,對這種情況作者使用機率主成分分析(PPCA)進行插值處理。

由於 pitch、roll 和 yaw 角度都是實數值,訓練損失可以直接使用 MSE(mean squared error)。然而,MSE 一般用來衡量預測值和標籤之間的距離,距離越遠,損失越大。而這裡的 pitch、roll 和 yaw 角度是週期性的,假設真實值 0°,則 1°和 359°的預測應具有相同的損失,而 MSE 不能將這種不連續性納入考慮。為了考慮這種角度的誤差,作者還提出了第二種損失函式的設計方法。

為此,需要首先將標籤的角度離散化,然後比較估計的角度和標籤的角度之間的似然度,如圖 2 所示。具體來講,作者首先將 [-π,π] 的範圍均勻地離散化。然後,假如標籤給出的角度為 d,只需要生成兩個具有方差σ的高斯分佈,並且平均值分別為 d 和 d-2π(以紅色和藍色顯示)。這在處理迴歸類問題時是個很好的思路,可以緩解 MSE 等損失函式對異常值(outlier)過於敏感和模型預測波動過大的問題。

四大視角、萬字長文,歐盟MuMMER專案之商場服務機器人深入解讀

圖 2:訓練標籤,及其機率化。圖源:Cao, Y.; Cane ́vet, O.; and Odobez, J.-M. 2018. Leveraging convolutional pose ma- chines for fast and accurate head pose estimation

模型方面,由於 CPM 有多個輸出,作者也設計了不同的神經網路來處理這些資訊。關鍵點的估計僅是一系列座標,作者使用一個結構比較簡單的 MLP 來對其進行處理;對於置信度圖和特徵圖,為提取更多特徵,作者設計了 CNN 來對其中的資訊進行處理。3 個模型的具體結構如圖 3 所示。

四大視角、萬字長文,歐盟MuMMER專案之商場服務機器人深入解讀

圖 3:[2] 提出的頭部姿勢估計模型的結構。(a)將 MLP 使用 CPM 預測的關鍵點座標作為輸入(b)CNN 將關鍵點的置信度圖作為輸入(c)特徵圖作為 CNN 的輸入。圖源:Cao, Y.; Cane ́vet, O.; and Odobez, J.-M. 2018. Leveraging convolutional pose ma- chines for fast and accurate head pose estimation

作者在 Wild (AFLW) 資料集上對這一整套流程進行了測試,以 MAE(mean absolute error)和準確度(accuracy)作為 evaluation metric。準確度衡量預測值和標籤之間的距離小於預先確定的閾值的比例。

MLP 方面 (圖 3a),作者主要比較了使用 3 個關鍵點預測值、5 個關鍵點預測值和資料集標籤訓練的模型的表現,不出所料,使用更多關鍵點預測可以帶來更好的表現,而直接使用關鍵點的 ground truth——也就是 CPM 演算法最理想的情況下——MLP 表現最好。

在使用置信圖訓練 CNN(圖 3b)的結果中也可以看到同樣的趨勢——使用更多的關鍵點置信度圖訓練模型可以帶來更好的效能。但是,使用 8 個關鍵點並不能進一步改善效能,主要是因為肩膀和頭部的姿勢有時並不一致,所以反而會引入誤差。對於使用特徵圖為訓練資料的 CNN(圖 3c),作者提出一個問題:應該使用 VGG-19 輸出的特徵,還是應該使用 CPM 演算法最後幾個階段的卷積層作為訓練資料?結果證明:使用最後階段的特徵圖的結果明顯優於使用 VGG-19 特徵圖的結果。這是也是有道理的,因為階段 6 的功能是專門針對身體部位(尤其是鼻子,耳朵和眼睛)進行訓練的。

橫向來看,使用 CPM 預測的關鍵點座標直接預測頭部姿勢——即圖 3a——的表現最差,如果使用最後階段的特徵圖作為圖 3c 的 CNN 模型的輸入,則圖 3b 和 3c 兩個模型的表現接近。看來,還是應該為網路提供儘可能多的相關資訊/特徵,然後由網路自行從中學習。

筆者比較感興趣的還是使用角度似然度訓練模型的效果,結果顯示在圖 4 中。從表中可以看出,當將 [-π,π] 離散化為 180 bins 並且σ= 0.3 時,可以獲得最佳效能。但是結果與直接回歸角度大致相同。這一點還是讓人有些失望的,特別是考慮到使用似然度還會帶來超引數調優的問題,似乎這種 trade off 並不值得。

四大視角、萬字長文,歐盟MuMMER專案之商場服務機器人深入解讀

圖 4:使用角度似然迴歸的頭部姿勢估計模型表現。圖源:Cao, Y.; Cane ́vet, O.; and Odobez, J.-M. 2018. Leveraging convolutional pose ma- chines for fast and accurate head pose estimation

不僅僅透過視覺資訊,人類也可以透過聲音資訊定位發聲人(Sound source localization,SSL)。給定一段聲音訊號——在本專案中設定為 170ms 長——模型需要預測聲音發出的方向。相對於大部分目前基於神經網路的演算法,MuMMER 機器人的語音模組設計面對的挑戰主要是開放式環境所帶來的噪聲和多個聲源。因此,基於單個聲源的演算法很難直接被應用過來。[20] 中提出了一種基於似然性的演算法輸出資料編碼方式,從而放鬆了對聲源數量的限制。此外,作者研究瞭如何利用 domain knowledge 設計網路,從而更好地在混合聲音中定位聲源,以及基於不同動機的三種不同網路體系結構。

由於聲源的數目不確定,可以是單個,也可以是多個,作者使用 N 表示聲源數、M 表示麥克風數。輸入的聲音訊號用短時傅立葉變換(short time Fourier transforms,STFT)表示:X_i(ω), i = 1, ..., M,其中 i 是麥克風索引,ω是離散域中的頻率。由於作者設計的演算法並未利用上下文資訊或時間關係,時間索引並沒有被囊括進來。

在將聲音訊號輸入神經網路之前,聲音訊號首先要經過預處理,來提取其中的特徵。作者使用了兩個基於廣義互相關的相位變換(generalized cross-correlation with phase transform,GCC-PHAT)方法的預處理方法——GCC-PHAT 係數(GCC-PHAT coefficient)和 GCC-PHAT on mel-scale filter bank。GCC-PHAT 是估計估計麥克風之間的到達時間差(time difference of arrival,TDOA)的最流行方法,而 TDOA 是估計發聲源的重要線索,透過預處理可以更好的把這類線索送給神經網路進行學習。

在編碼輸出值方面,作者的思路和前文介紹的 [2] 很像。作者將多個 SSL 輸出編碼設計為聲音源在各個方向上的可能性,即將輸出編碼向量 {o_i},每個向量與單獨的方位角 θ_i 相關聯,也就是 i = 0, ..., 360 代表 360 個角度:

四大視角、萬字長文,歐盟MuMMER專案之商場服務機器人深入解讀

o_i 衡量某一個角度 i 是第 j 個發聲源的可能性,是以真正的發聲源為中心的類高斯函式的最大值。其中θ^(s)_j 是第 j 個聲源的 ground truth,σ 用於調整高斯曲線的寬度,而 d(·, ·)表示角距離。輸出編碼的例子在圖 5 中有展示。

四大視角、萬字長文,歐盟MuMMER專案之商場服務機器人深入解讀

圖 5: 多個聲源的輸出編碼。圖源:He, W.; Motlicek, P.; and Odobez, J. 2018a. Deep neural networks for multiple speaker detection and localization. In 2018 IEEE International Conference on Robotics and Automation (ICRA), 74– 79.

將網路輸出編碼為高斯混合的好處主要在於輸出可以有任意多個波峰,從而放鬆了對發聲源數量的假設。在測試階段,透過找到高於給定閾值ξ的峰值來解碼輸出,就可以獲得對發聲源的預測:

四大視角、萬字長文,歐盟MuMMER專案之商場服務機器人深入解讀

其中σ_n 代表鄰域距離,也就是說在σ_n 範圍內最大且高於閾值的預測將會被選為發聲源。在實驗中,作者選擇σ_n= 8°。

模型方面,為處理兩種預處理方法產生的不同特徵,作者設計了兩個神經網路,具體結構見圖 6 左。

四大視角、萬字長文,歐盟MuMMER專案之商場服務機器人深入解讀

圖 6: 神經網路結構。圖源:He, W.; Motlicek, P.; and Odobez, J. 2018a. Deep neural networks for multiple speaker detection and localization. In 2018 IEEE Interna- tional Conference on Robotics and Automation (ICRA), 74– 79.

GCC-PHAT 特徵的維度比較小(51x6),因此作者直接使用了 MLP 對其學習,而 GCC-FB 特徵的維度則要高得多(51x40x6),使用 MLP 的開銷過大。因此作者使用了卷積來減小模型引數數量,僅在最後一層使用了全連線層進行預測。但使用 CNN 的一個問題是神經網路是在 3 維輸入特徵上執行 2D 卷積,也就是說 CNN 將輸入資料視為影像,而沒有考慮輸入資料的實際屬性。為此,作者設計了兩階段神經網路(TSNN-GCCFB)來更好的利用輸入的 GCC-FB 特徵,主要思路是:

  • 在每個時頻(time-frequency bin)中,通常只有一個主要的語音源,因此可以在每個時頻內先將此類資訊彙總;

  • 對於具有相同延遲的特徵,如果它們來自於不同的麥克風,那麼它們仍然應該被分開考慮。

TSNN-GCCFB 含有兩個子網路,subnet 1 和 subnet 2,具體結構見圖 6 右。subnet 1 應用於整個延遲軸、所有麥克風和某一個具體頻率,提取特徵中的可能的聲源的資訊。subnet 2 則彙總相鄰的聲源區域中所有頻率的資訊,並輸出每個位置中存在聲音的可能性。subnet 1 是 2 層 MLP,而 subnet 2 是 1 層 MLP,所有層的大小均為 500。

為檢測模型的表現,作者收集了兩組真實資料:一組使用揚聲器作為發聲源,另一組則是人類受試者。機器人身上的麥克風取樣率為 48 kHz,並且其接收到的音訊訊號會受到來自內部風扇噪聲的強烈影響。

模型在來源數量已知或未知兩種情況下都進行了測試。若來源數 N 已知,則選擇模型輸出的 N 個最高峰作為預測的發聲源,並將它們與 ground truth 進行對比,計算平均絕對誤差(MAE)。同樣,作者也彙報了預測的準確度,即預測的誤差小於給定的容許誤差 E_a 的比例。若聲源數量未知,則考慮模型檢測和定位的能力。透過前文提到的對模型預測進行解碼來生成最終預測,並彙報精度與召回率曲線。

圖 7 顯示了已知數量來源的模型表現。在揚聲器資料集上,[20] 提出的三個 NN 模型均實現平均小於 5°的誤差和大於 90%的精度,而最佳基線方法(SRP-PHAT)具有 21.5°的誤差和僅 78%的精度。對於人類受試者資料集,基線方法在單一聲源上的 MAE 更好,不過準確性稍低一點。

四大視角、萬字長文,歐盟MuMMER專案之商場服務機器人深入解讀

圖 7: 已知聲源數量的模型表現。圖源:He, W.; Motlicek, P.; and Odobez, J. 2018a. Deep neural networks for multiple speaker detection and localization. In 2018 IEEE Interna- tional Conference on Robotics and Automation (ICRA), 74– 79.

在同時檢測和定位未知來源方面,文中提出的方法優於基線方法,在兩個資料集上均達到約 90%的精度和召回率(圖 8)。在所提出的三個模型中,TSNN-GCCFB 的確在重疊幀上具有更好的效能,說明使用 subnet 確實對多個聲源的定位有幫助。另一個優勢則是高斯混合編碼帶來的——模型表現受未知聲源數量的影響較小。

四大視角、萬字長文,歐盟MuMMER專案之商場服務機器人深入解讀

圖 8: 未知聲源數量的模型表現(麥克風資料集)。圖源:He, W.; Motlicek, P.; and Odobez, J. 2018a. Deep neural networks for multiple speaker detection and localization. In 2018 IEEE Interna- tional Conference on Robotics and Automation (ICRA), 74– 79.

以 [20] 的研究為基礎,[21] 又提出了直接使用原始的短時傅立葉變換作為輸入,同時處理振幅和相位資訊。為此,神經網路的結構和損失函式的設計也相應的需要改變。

機器人接收到的原始資料是以 48 kHz 取樣的 4 通道音訊訊號,STFT 對每幀(包含 2048 樣本,43 毫秒)進行計算,重疊率為 50%。然後,將 7 個連續幀(170 毫秒)視為一個分析單位,STFT 係數的實部和虛部被分為兩個單獨的通道。使用 100 至 8000 Hz 之間的 337 個頻點(frequency bins)。因此,每個單元的結果輸入特徵的尺寸為 7×337×8(時間幀×頻率點×通道)。

模型的輸出仍然被模擬為高斯混合,不同的是,現在模型不僅要預測聲源位置(DOA),還需要預測噪聲位置 q_i:

四大視角、萬字長文,歐盟MuMMER專案之商場服務機器人深入解讀

圖 9: 所需的多工網路輸出。圖源:He, W.; Motlicek, P.; and Odobez, J.-M. 2018b. Joint localization and classification of multiple sound sources using a multi-task neural network. In Proceedings of Interspeech 2018, 312–316.

具體如圖 9 所示。對網路輸出解碼的思路也與 [20] 一樣。

如前文提到的,相比於 [20],資料的輸入和輸出都發生了改變,神經網路的結構也需要進行相應的改變,見圖 10。

四大視角、萬字長文,歐盟MuMMER專案之商場服務機器人深入解讀

圖 10: 多工神經網路結構。圖源:He, W.; Motlicek, P.; and Odobez, J.-M. 2018b. Joint localization and classification of multiple sound sources using a multi-task neural network. In Proceedings of Interspeech 2018, 312–316.

多工網路是一個完全卷積的神經網路,由殘差網路(ResNet)和兩個特定於任務的分支組成。這兩個特定於任務的分支的結構是完全相同的——它們都以 1×1 卷積層開始,具有 360 個輸出通道(對應於 360 個方位角方向)。兩階段訓練和 [20] 一樣,每個分支的最終輸出是 360 維向量,分別對應於對發聲源和噪聲源的預測。

測試資料的設定和前文一樣,但資料量有所增加。這一新的模型在揚聲器錄音中的準確度超過 95%,在人類錄音中的準確度超過 85%。

[22] 則討論了使用模擬資料、弱監督和對抗訓練神經網路的可能性,並在其此前提出的 STFT 網路 [21] 上進行了測試。結合機器人平臺的半自動和綜合資料收集程式,MuMMMER 專案的聲音演算法模組開發時可以快速收集資料以學習新模型。

社交訊號處理(Social signal processing)

在我國很多購物中心,很多導覽機器人在放置了一段時間後都沒有顧客光顧,最後變成在角落塵封。一個產品的使用體驗不光取決於它使用的技術先程式度,還很大程度上取決於產品的互動設計。在這方面,歐洲和日本的機器人研究者們傾向於從大量的人-人和人-機實驗來理解如何定義一個好的服務機器人產品。比如什麼決定了使用者在如問路等場景下的最終體驗,以及如何將這些發現應用到機器人系統上。

以下簡介一下該專案下的一些人機互動的實驗結果:

在該專案的商場場景裡 [15],研究員設計了不同語言、目的等的實驗場景,來觀察人類在這種機器人導覽的場景下是如何表現的。整個實驗過程都有錄影作為影片資料,受試者在測試結束後還需完成一個簡單的問卷調查,用以瞭解在問路時指路者使用的路標。實驗表明在指路者描述完或一部分路徑時會將目光對準物件,透過注視檢查問路者的理解; 以及使用最多的地標不是大型商店(例如 Prisma),而是門(例如 A 門),「中央公園」(購物中心中心的大廣場)和「舊城區」(Ideapark 的一部分)。此外,由於道路路標不清晰可見,因此指路者不會使用街道名稱來指明路線。[16] 同樣是實驗調查,研究者們進行了兩項人與人之間的互動研究,其中購物中心的問訊處的工作人員作為指導,為在購物中心中執行預定問詢任務的研究人員和學生提供指導。

另外根據使用者的互動過程,也可以間接分析使用者性格,使互動更個性化。[3] 研究了手勢如何影響使用者對機器人的主觀反應以及他們對機器人個性的感知。他們發現了幾種明顯的關係,例如,控制振幅和速度會顯著影響使用者對機器人的外向性和神經質的感知。此外,[4] 發現大多數使用者都喜歡他們認為自己的性格與自己的機器人相似的機器人,但由極少數人的一類人則喜歡與自己的個性不同的機器人。[7] 對一系列人機實驗進行了錄影和錄音,從而收集基於語音的韻律和對話相關的特徵、基於人臉表情的情緒強度特徵以及基於對話記錄的語言特徵,並展示了這些特徵如何與使用者在對話後對機器人的印象相關聯。[8] 也進行了一系列人機實驗,來研究視覺反饋的哪些特徵(幅度,頻率,持續時間...)會影響注意力感知,以及視覺和言語反向通道(backchannels)哪個會讓使用者覺得機器人投入了更多注意力等。實驗發現,人們通常認為點頭比音訊反向通道傳達出更多的注意力,利用這些發現,可以使對話系統以更像人的方式描繪出聽眾的注意力水平。

最終的 MuMMER 機器人的社交訊號處理模組中配置了 [19] 中描述的基於情感的姿勢控制。該演算法首先利用 IBM Watson Tone Analyzer 從對話文字中檢測情感和語言 tone,並生成 ToneCategory,例如:憤怒,恐懼,喜悅和悲傷(情感 tone);分析,自信和嘗試性(語言 tone)。另外,IBM Watson Tone Analyzer 還會計算 範圍在 0.5 到 1 的 ToneScore,得分大於 0.75 表示在內容中感覺到該音調的可能性很高。

根據檢測到的情感,演算法可以在語音文字的上下文中對映適當的手勢,並使用 ToneScore 作為引數來為該特定手勢生成正確的強度(幅度和速度)。演算法還可以在聲音中反射這種檢測到情感——作者使用 BEST-非語言聲音工具包(B.E.S.T non-verbal sounds tool kit),該工具包的庫中每個類別都有 20 種聲音來表達情感,例如「憤怒」、「厭惡」、「享受」、「恐懼」、「興趣」、「悲傷」、「羞恥、,「驚奇」。作者使用文字情感分析器中的 ToneScore 將 ToneCategory 對映到聲音的情感類別和強度級別。聲音庫還具有 backchannel,可以在機器人聆聽時使用,例如發出一些聲音表達「確認」、「同意」、「不同意」、「鼓勵」、「不確定」、「被理解」。

對話互動(Conversational interaction)

對話一直是最重要的資訊傳輸和互動渠道。因此如何設計對話系統(conversation system)或者聊天系統(chat-bot)對於互動機器人來說很重要。MuMMER 機器人系統的對話系統主要基於 Alana,該系統由一系列聊天機器人組成,結合了基於規則的學習系統和機器學習系統,並使用上下文排名機制選擇系統響應。

[9] 中解釋道基於深度學習技術在大型公共資料集(如 OpenSubtitles 或 Twitter)進行訓練,可以取得很好的效果,但是,也有內容不易控制,聊天沒有主題的缺點,如 Tay bot——Tay bot 是由 Microsoft 於 2016 年推出的一款 AI 聊天機器人,然而,在 Tay 推出僅一天之後,其就開始使用種族主義和帶有性指控的資訊回應其他 Twitter 使用者——等最近的例子所示,在將系統部署到實際客戶時,直接從資料中學習也有其陷阱。為此,Alana 雖然使用由神經網路訓練的聊天機器人,但其利用手工制定的規則對聊天機器人的回應進行選擇、在精心選擇的資料集上訓練機器學習模型,並且根據客戶反饋進行驗證和更新制定的規則,Alana 系統的具體架構如圖 11 所示。

在接收到使用者話語後,系統首先使用 AWS lambda 函式將其轉換為 JSON 物件,稱為 request。lambda 函式還分析使用者話語以提取關鍵字,以便將使用者目標分類為意圖。

接下來,在 bucket 中,系統會從句子中提取其他資訊,並將其與預處理的語音一起轉發給聊天機器人聊天機器人與 bucket 之間的通訊都是透過簡單的 HTTP GET 呼叫完成的。然後,聊天機器人會將一個或多個候選響應返回給 bucket,並由 bucket 選擇(並進行 post processing)響應之一,然後輸出。

四大視角、萬字長文,歐盟MuMMER專案之商場服務機器人深入解讀

圖 11:Alana 系統架構。圖源:Papaioannou, I.; Cercas Curry, A.; Part, J.; Shalyminov, I.; Xinnuo, X.; Yu, Y.; Dusek, O.; Rieser, V.; and Lemon, O. 2017. Alana: Social dialogue using an ensemble model and a ranker trained on user feed- back. In 2017 Alexa Prize Proceedings.

如前文提到的,在使用者發來 request 和聊天機器人響應後,系統需要進行預處理和後處理。當使用者發來 request 時,系統執行的預處理主要有:

  1. 計算 ASR confidence,對於 confidence 值低的內容,系統不會發給 bucket,而是會向使用者道歉、確認聽到的內容、並要求使用者重複剛才說的內容;

  2. 將使用者發來的簡單回應(是/否/也許)話語轉換為完整的句子;

  3. 將間接句子轉換為直接句子,比如將使用者說的「我不認識 x」轉換為「誰是 x」,這有助於事實資訊檢索機器人回答這些查詢;

  4. 使用正規表示式從使用者話語中提取一些其他意圖,例如 StopIntent(停止對話的請求),TimeIntent(當前時間的請求)和 RepeatInte(要求重複先前的系統提示);

  5. 使用史丹佛詞性標註器和命名實體識別器(NER)進一步註釋使用者話語。

聊天機器人發回響應後,bucket 需要進行後處理:對所有返回的候選人進行後處理和標準化。不得體的回答、單字等回答需要被過濾掉。

根據收到的響應,系統會透過三個步驟選擇最合適的相應:

  1. 優先順序列表。某些已部署的聊天機器人會被確定優先順序,即,如果它們產生響應,則始終將其選中。優先順序如下:Quiz game, Factbot, Weatherbot, Persona, Evi;

  2. 上下文優先順序。如果 NewsBot 的響應只停留在前面提到的新聞報導的主題上,則它的響應優先;

  3. 排名功能。如果沒有一個優先順序聊天機器人產生答案,則其餘已部署的聊天機器人的響應將被填充到候選列表中,並透過排名函式選擇最佳響應。

排名函式的設計有很多選擇,最初在 [9] 中作者訓練了一個線性排名器(linear classifier ranker)來選擇最佳響應,到了 Amazon Alexa 挑戰賽決賽時,他們用神經網路代替了線性排名器。然而,正如 [9] 開頭所提到的,對聊天機器人的響應的選擇不僅僅是為了選擇最切題的回答,更是為了選擇得體的回答。在筆者看來,使用神經網路代替線性排名器這類 white model 和這個目的有些互相矛盾,因為神經網路作為黑箱模型的可解釋性很低、不穩定性較高,要如何保證訓練好的神經網路可以持續選擇得體的回答?

在挑戰賽中,該系統的終端使用者評分(整個半決賽期間的平均使用者評分)為 3.12,在半決賽的最後一週(2017 年 8 月 8 日至 15 日)中,平均使用者評分達到 3.3。半決賽結束後,系統的最高得分分別為 3.52(每日平均值),3.45(每週平均值),中位對話時長為 2.25 分鐘(7 天平均值)。

路線導航(Route guidance supervision)

在商場機器人的導航中,機器人不僅僅要能夠在靜態環境下完成路徑規劃(等同於一般導航演算法理論),而且必須考慮動態的行人因素:在不斷有行人的干擾下完成動態規劃任務。而且在這個專案中,更加著重研究導航過程中人的看法:行人在這個人機互動的過程中的感受如何?機器人有沒有表現的足夠像人、有沒有影響行人的行動,等等。[13] 中作者設計了幾個用例,在這些用例中,人類和機器人必須一起在環境中移動,然後對機器人在這種環境下的決策進行評估。被測試的規劃演算法分別為 [10] 中的 directional- cost planner 、[11] 中的 AKP planner 和 [12] 中的 cooperative planner。結果顯示 cooperative planner 在更方面表現都要更佳,作者認為:

  1. Directional-cost planner 在不受約束的情況下表現很好,但受限情況下表現不佳;

  2. 基於社會力量模型(Social force model)——一種描述人群動態的方法,該方法會根據此前的路徑規劃資訊預測人類的移動路徑,並將該資訊納入當前路徑規劃的考慮中——的機器人可以在空曠地區或大型室內環境中表現良好,但是由於計算排斥力和吸引力的方式,它們會規劃不必要的彎路;

  3. cooperative planner 在不受約束和受約束的情況下都表現良好,特別是在受限區域可以規劃清晰而親切的行為;

  4. 要讓機器人對於人類能有所感知,演算法必須與人類運動預測方法緊密結合。

根據這篇文章中的發現,作者還發表了 [14],在完成路徑規劃的同時還加強機器人的運動學約束,以避免為與機器人同處一個環境的人類帶來障礙。根據這一目標,作者提出了社會約束(Social Constraints),將安全、使用者體驗等編碼進路徑規劃的演算法中。最終的演算法是一個基於 elastic band 和圖最佳化的框架,用於計算機器人的軌跡和預測附近的人類的運動路線。最終 MuMMER 機器人系統中運動規劃的 local planner 就是基於該演算法研發的。

這一 local planner 的架構如圖 12 所示。其中最底層一行的節點 (rx0, rx1, . . . ) 用於表示機器人的移動路徑:速度、加速度、運動動力學約束等。c_{vel_h},c_{acc_h},c_{kin_h} 則代表由連續節點之間的時間差決定的約束/懲罰。同樣,中間和最上一行的節點則代表行人 1 和行人 2(如果有 2 名行人的話),並被賦予不同的重要性(h_0, h_1)。最右側表示了檢測到障礙物 o1,在最佳化過程中其位置是固定的。約束 c_obs 能夠使機器人與障礙物保持一定距離的,c_sep 則使兩名行人之間保持一定距離。需要被同時納入規劃的行人和機器人——即它們處於同一時間點——用邊緣 c_safety, c_ttc 和 c_dir 連線,從而便於新增社會約束,如機器人與行人之間需要保持的最小距離等。

四大視角、萬字長文,歐盟MuMMER專案之商場服務機器人深入解讀

圖 12: [14] 中的 local planner 的演算法圖示。圖源:Khambhaita, H., and Alami, R. 2017. Viewing Robot Navigation in Human Environment as a Cooperative Activity. In International Symposium on Robotics Research (ISSR 2017), 18p.

另一個較新穎的研究是 [18],該文提出的演算法不僅要讓機器人作為行人問詢路線時的路線方向提供者,而且還要對人類作為聽眾進行建模,並在規劃時將其考慮在內。利用對人類聽眾的位置和實現估計,機器人可以與人一起導航以達到與提供路線方向更相關的視角。具體來說,該演算法應用於互動機器人,而該機器人的主要職責是在公共場所問訊處提供資訊和路線指示。當有人問訊時,它可以移動一點(例如圍繞其基座幾米遠),並要求問訊人跟隨自己移動,以使他們兩個都到達可以指向一個(或幾個)地標的和更清楚地說明路線的位置。當然,互動機器人無意陪同人員到達目的地,只是為了更好的幫助其尋找道路。最終的演算法使用 SVP (Shared Visual Perspective) 規劃器,該規劃器搜尋共同搜尋機器人和人類的最佳位置,以實現提供路線方向所需的有效視覺透視共享,並在有多個可用路標時選擇最佳地標。SVP 隨後也被應用到 MuMMER project 的運動規劃演算法中。

這部分比較有意思的研究有 [17],用於增強導航過程中人機互動、減少不愉快的體驗,比如使用者不清楚機器人會從自己面前穿行還是會停下來等待從而猶豫不決。作者提出使用機器人注視的方式來提供有關機器人運動計劃和目標的明確資訊,他們提出將移動機器人平臺上的頭部運動控制表述為一個多準則決策問題(multi-criteria decision-making problem),並使用層次分析法(analytic hierarchy process)對其進行求解。

為確定凝視方向,作者參考了 Srinivasan 等人總結的四種社交目光注視行為 [24]:

  1. 交流社會注意力,機器人透過注視人類表現出興趣;

  2. 表現出互動,凝視轉向與當前任務相關的物體,例如避開障礙物;

  3. 表達精神狀態,包括表達運動意圖;

  4. 增強機器人的類人性。

利用這些標準,演算法可以衡量發起的凝視行為的合理性和有效性。

前文提到作者將機器人的頭部活動視為一個多準則的決策問題(multi-criteria decision-making problem),因為在任何一個時候,機器人都需要從可行的頭部動作中選擇一個執行,如看向自己的前進方向、上下點頭等,或什麼都不做。更抽象的來看,作者使用行為函式(Behavioral Functions)來處理來自不同來源的資訊。

作者提出了兩種與社交導航最相關的注視行為:1)檢視路徑:檢視計劃的導航路徑。2)向行人投以注視,以及兩種行為對應的行為函式。

針對檢視路徑的行為,作者只使用本地規劃模組的輸出軌跡(一般情況下導航規劃具有靜態環境圖的幾何路徑的生成(全域性規劃)和避免動態障礙的運動指令計算(區域性規劃)兩個模組),此功能對應於兩種社交注視行為,即「表達精神狀態」和「增強機器人的類人性」。作者將運動方向與凝視方向之間的角度定義為凝視運動角度(GMA),如圖 13 所示。

四大視角、萬字長文,歐盟MuMMER專案之商場服務機器人深入解讀

圖 13: 機器人頭凝視點計算中涉及的角度的圖示。α_{maxGMA}:最大凝視移動角,α_{vis}:可見角,θ^{rbase}_h:機器人底座與人之間的角度,θ^{rpan}_h:機器人頭的中軸與人之間的角度,IPS:資訊處理空間(淺灰色區域)。圖源:Harmish Khambhaita, Jorge Rios-Martinez, Rachid Alami. Head-Body Motion Coordination for Hu- man Aware Robot Navigation. 9th International workshop on Human-Friendlly Robotics (HFR 2016), Sep 2016, Gênes, Italy. 8p. hal-01568838

對此 GMA 值的限制定義了一個資訊處理空間(IPS),這主要是為了讓機器人更類人化而設計的。IPS 是一個概念區域,是根據人類用以避免潛在碰撞的觀察空間的邊界確定的。當路徑規劃器給出的軌跡的軌跡的最後一點在此最大允許 GMA 範圍之外時,演算法將限制機器人的平移角度以使其在 IPS 空間內。

向行人投以注視的行為主要用於機器人在周圍環境中對人進行檢測時,並用此計算可替代的凝視點,從而幫助機器人執行對人類進行類似掃視的行為。由於每種行為功能僅為決策過程提供一種選擇,因此,當檢測到多個人時,機器人會向它認為需要「最緊急」注意的人投以注視。同時,這部分演算法會跟蹤機器人已經確認的人類,即在定義的可見角α_{vis} 中確定的行人都會被新增到一個集合中,以避免在新的位置更新時觸發多個掃視行為。

作者在這裡提供的演算法的驗證主要是定性的,即機器人的頭部行為有利於人機互動。具體來說,作者提出了兩個假設:

  • 假設 1:導航過程中的頭部移動將積極影響行人對機器人導航意圖的感知;

  • 假設 2:具有注視路徑和注視行人功能的頭部行為將被認為比沒有頭部運動更有效。

在錄製了機器人導航的影片後,作者還進行了使用者的體驗研究,最後考慮了上述關於頭部運動的 2 點假設的設計,最受使用者的歡迎。

結語

現在回頭看 MuMMER 機器人的設計核心:MuMMER 的總體思想是,要使機器人在這種應用場景下成功,就必須具有娛樂性和吸引力:也就是說,它必須具有社交智慧,才能理解使用者的需求和互動行為,以及做出適當的回應 [23]。可以說,MuMMER 的設計從一開始就是以一個成熟的產品和有容錯性、穩定性的功能為標的,它不是實驗性的,也不以技術的先程式度為衡量標準。從這一點出發,所有的研究都以提高產品最終的表現和使用者體驗為目標,所有演算法的設計也都基於此。也正因此,我們可以看到上述四個方面所用到的演算法在其單獨的研究領域很難算得上 state-of-art,更甚至出於對系統的穩健性考慮會捨棄一些高效能演算法的部署。

另外,對國內服務機器人開發者有啟發意義的是,該專案也迴歸到人方面的研究:比如說使用者對於導航有什麼感受?社交訊號處理中使用者一般如何互動?這些內容涉及到一般行為學和工程學的交叉學科,課題值得進一步挖掘。

MuMMER 專案的挑戰主要是實際執行方面的——如何在商場這樣高度非結構化的環境中執行;如何為使用者體驗這樣非定量的衡量標準設計 evaluation metric;如何融合多通道資訊,比如將聲音模組的說話人檢測結果和視覺模組中的行人檢測結果結合起來;隨著系統模組的增加,系統性風險會加速上升,如何將總體誤差控制在一個合理的範圍內也是一個挑戰。

在一個 end to end 產品中,許多對資料和計算結果的額外處理是十分必要的,即便有時使用的後處理演算法僅僅是滑動平均這樣簡單的演算法。從產品角度來看,不是一個演算法研究出來就有了一個產品,技術落地的複雜度是超過很多研究者想象的。在這方面歐洲的產學聯合做的很好,比如比利時的 IMEC 微電子研究中心就建在魯汶大學旁邊,並且和其一直保持著緊密聯絡,同時也吸納了眾多工業界駐派人員,佔其僱員數量近 1/3。目前已經成為全球最大的獨立的微電子研究中心之一,華為在其附近也開設了研究所。當然,結果導向也可能也推動一些研究機構忽略了一些不能立即有實際產出的基礎研究,不過有關這些的探討就又是另一個話題了。

另外,還可以看到在文中所有的神經網路的規模都比較小,都是藉助預訓練神經網路——如 VGG,RestNet——來生成特徵,然後在特徵上訓練淺層卷積網路,甚至 MLP。這是工業界的一個常規做法,主要是為某一個特定專案收集資料的成本太高,甚至根本不可能。並且由於演算法的開發是特定於某一個應用專案的,所設計的模型結構也是高度依賴於具體應用的 domain knowledge,比如 [20] 中的兩階段神經網路。雖然如 Meta Learning 一類的 Auto-ML 研究正在受到越來越多的關注,但筆者認為在很長的一段時間裡——即便是使用神經網路——產品開發和演算法落地還是會高度依賴 hand-engineering 的。

文字作者為機器之心分析師 Yuanyuan Li。她幾次轉行,本科國際貿易,研究生轉向統計,畢業後留在歐洲,選擇從事機械研發工作,主要負責影像處理,實現計算機視覺演算法的落地。欣賞一切簡單、優雅但有效的演算法,試圖在深度學習的簇擁者和懷疑者之間找到一個平衡。希望在這裡透過分享自己的拙見、思想的碰撞可以拓寬自己的思路。

機器之心個人主頁:https://www.jiqizhixin.com/users/a761197d-cdb9-4c9a-aa48-7a13fcb71f83

參考文獻:

【1】Cao, Z.; Simon, T.; Wei, S.-E.; and Sheikh, Y. 2017. Realtime multi-person 2d pose estimation using part affinity fields. In Proceedings of the IEEE Conference on Computer Vision and Pattern Recognition, 7291–7299.

【2】Cao, Y.; Cane ́vet, O.; and Odobez, J.-M. 2018. Leveraging convolutional pose ma- chines for fast and accurate head pose estimation.

【3】Craenen, B. G.; Deshmukh, A.; Fos- ter, M. E.; and Vinciarelli, A. 2018a. Shaping ges- tures to shape personalities: The relationship between ges- ture parameters, attributed personality traits, and Godspeed scores. In Proceedings of the 27th IEEE International Sym- posium on Robot and Human Interactive Communication (RO-MAN), 699–704.

【4】Craenen, B.; Deshmukh, A.; Foster, M. E.; and Vinciarelli, A. 2018b. Do we really like robots that match our personality? the case of big-five traits, god- speed scores and robotic gestures. In Proceedings of the 27th IEEE International Symposium on Robot and Human Interactive Communication (RO-MAN).

【5】Khalidov, V., and Odobez, J.- M. 2017. Real-time multiple head tracking using texture and colour cues. Idiap-RR Idiap-RR-02-2017, Idiap

【6】Siegfried, R.; Yu, Y.; and Odobez, J.-M. 2017. Towards the use of social interaction conventions as prior for gaze model adaptation. In 19th ACM International Conference on Multimodal Interaction (ICMI).

【7】Novikova, J.; Dondrup, C.; Papaioannou, I.; Lemon, O. (2017). Sympathy Begins with a Smile, Intelligence Begins with a Word: Use of Multimodal Features in Spoken Human-Robot Interaction. 10.18653/v1/W17-2811

【8】Oertel, Catharine and Lopes, Jose and Yu, Yu and Mora, Kenneth A. Funes and Gustafson, Joakim and Black, Alan W. and Odobez, Jean-Marc. (2016). Towards Building an Attentive Artificial Listener: On the Perception of Attentiveness in Audio-Visual Feedback Tokens. Proceedings of the 18th ACM International Conference on Multimodal Interaction. pp 21 - 28.

【9】Papaioannou, I.; Cercas Curry, A.; Part, J.; Shalyminov, I.; Xinnuo, X.; Yu, Y.; Dusek, O.; Rieser, V.; and Lemon, O. 2017. Alana: Social dialogue using an ensemble model and a ranker trained on user feed- back. In 2017 Alexa Prize Proceedings.

【10】T. Kruse, A. Kirsch, et al.,「Evaluating Directional Cost Models in Navigation,」in Proc. ACM/IEEE International Conference on Human-Robot Interaction (HRI), 2014.

【11】G. Ferrer and A. Sanfeliu,「Multi-Objective Cost-to-Go Functions on Robot Navigation in Dynamic Environments,」in Proc. IEEE/RSJ International Conference on Intelligent Robots and Systems (IROS), 2015.]

【12】H. Khambhaita and R. Alami,「A Human-Robot Cooperative Naviga- tion Planner,」in Proc. the Companion of the ACM/IEEE International Conference on Human-Robot Interaction (HRI), 2017.

【13】H. Khambhaita and R. Alami. (2017). Assessing the social criteria for human-robot collaborative navigation: A comparison of human-aware navigation planners. 26th IEEE International Symposium on Robot and Human Interactive Communication (RO-MAN), Lisbon, 2017, pp. 1140-1145.

【14】 Khambhaita, H., and Alami, R. 2017. Viewing Robot Navigation in Human Environment as a Cooperative Activity. In International Symposium on Robotics Research (ISSR 2017), 18p.

【15】Kathleen Belhassein, Aurélie Clodic, Hélène Cochet, Marketta Niemelä, Päivi Heikkilä, et al.. Human- Human Guidance Study. Rapport LAAS n° 17596. 2017. 

【16】Päivi Heikkilä, Hanna Lammi, Kathleen Belhassein. Where Can I Find a Pharmacy? -Human-Driven Design of a Service Robot』s Guidance Behaviour. The 4th Workshop on Public Space Human-Robot Interaction (PubRob) as part of the International Conference on Human-Computer Interaction with Mobile Devices and Services (MobileHCI 2018), Sep 2018, Barcelone, Spain. 

【17】Harmish Khambhaita, Jorge Rios-Martinez, Rachid Alami. Head-Body Motion Coordination for Human Aware Robot Navigation. 9th International workshop on Human-Friendlly Robotics (HFR 2016), Sep 2016, Gênes, Italy. 8p. hal-01568838

【18】Jules Waldhart, Aurélie Clodic, Rachid Alami. Planning Human and Robot Placements for Shared Visual Perspective. Workshop on Robotic Co-workers 4.0: Human Safety and Comfort in Human- Robot Interactive Social Environments 2018 IEEE/RSJ International Conference on Intelligent Robots and Systems, Oct 2018, Madrid, Spain. hal-01972096

【19】Deshmukh, A.; Foster, M. E.; and Mazel, A. 2019. Contextual non-verbal be- haviour generation for humanoid robot using text senti- ment. In Proceedings of the 28th IEEE International Sympo- sium on Robot and Human Interactive Communication (RO- MAN)

【20】He, W.; Motlicek, P.; and Odobez, J. 2018a. Deep neural networks for multiple speaker detection and localization. In 2018 IEEE Interna- tional Conference on Robotics and Automation (ICRA), 74– 79.

【21】He, W.; Motlicek, P.; and Odobez, J.-M. 2018b. Joint localization and classification of multiple sound sources using a multi-task neural network. In Proceedings of Interspeech 2018, 312–316.

【22】He, W.; Motlicek, P.; and Odobez, J. 2019. Adaptation of multiple sound source local- ization neural networks with weak supervision and domain- adversarial training. In ICASSP 2019 - 2019 IEEE Interna- tional Conference on Acoustics, Speech and Signal Process- ing (ICASSP), 770–774.

【23】Mary Ellen Foster, Bart Craenen, Amol Deshmukh, Oliver Lemon, Emanuele Bastianelli, et al.. MuMMER: Socially Intelligent Human-Robot Interaction in Public Spaces. 2019.

【24】 V. Srinivasan, R. R. Murphy, and C. L. Bethel,「A Reference Ar- chitecture for Social Head Gaze Generation in Social Robotics,」International Journal of Social Robotics, vol. 7, no. 5, pp. 601–616, 2015.

相關文章