當前位置:
首頁 > 新聞 > 專訪|雲腦科技張本宇:尋找跨行業跨場景的技術航道

專訪|雲腦科技張本宇:尋找跨行業跨場景的技術航道

如今的人工智慧公司們在選擇切入點時可以說是「八仙過海、各顯神通」。有的以一類特定演算法為技術核心展開業務,有的則主攻一個特定行業,然而創立於 2015 年的雲腦科技沒有選擇上述任何一條道路。

「我們希望成為一個能夠支撐跨行業、跨場景的平台」,雲腦科技的 CEO 張本宇如是說。從 1999 年開始進入人工智慧行業 [BZ1],張本宇曾先後服務於微軟亞研院的機器學習組、谷歌 Google Now 項目、Facebook 信息流廣告業務等多個巨頭的人工智慧研究與應用項目。而當他選擇創業,他選擇做一家「面向各行業的應用場景和數據」的行業平台公司。什麼是行業平台公司?做到跨行業跨場景的技術壁壘在哪裡?五月,機器之心與張本宇面對面,聊了聊雲腦的「選擇」。

專訪|雲腦科技張本宇:尋找跨行業跨場景的技術航道

機器之心:能否為我們介紹一下雲腦的主攻方向?

張本宇:雲腦主要有三個技術上的主航道,分別是序列學習(Sequence Learning)、保護隱私的分散式學習(BrainSync)以及具有可解釋性的深度學習模型結構。

在這三個底層技術的基礎上,與通信行業、金融監管、人才教育、能源製造等行業場景做交叉,產生了一系列對應產品:例如用於基於手機等設備的分散式學習的精準預測產品、服務於監管機構的異常波動分析產品、具有可解釋性的 HR 人崗匹配產品等。

機器之心:序列學習的對象都有哪些?為什麼將「序列學習」作為技術主航道?

張本宇:序列是一個對數據分類的特定角度,是一個跨場景的數據特點。存在 IoT 設備產生的記錄數據、股票行情數據這類帶有明確時間戳的序列數據,也有文本、語音這類沒有明顯時間戳的序列數據,還有用戶的線上線下行為這類帶有不規則時間戳的序列數據。

一個特定場景下的特定需求可以轉化為預測、推薦或者分類等種種問題,但一個平台如果想要支撐跨行業跨場景的話,一定要找到跨場景和行業的數據特點。如果拋開場景中的細枝末節,從序列的角度看待這些問題,我們就能夠回到問題的本源:當我們提到「學習」時,我們究竟在學習什麼。

序列模型的基本假設是,序列數據中反映了一定的因果聯繫,而模型試圖揭示這樣的因果聯繫。如果因果聯繫很強,那麼專家系統就能夠很好地解決這個問題。反之,如果因果聯繫很弱,或者很複雜的,比如在多個因導致一個果、一個因產生多個果、以及因果之間的時間間隔具有隨機性等等情況下,專家系統的表達能力就不足以解決問題了,需要表達能力更強的模型介入。

機器之心:「保護隱私的分散式學習」是一個鮮少被業界巨頭提及的分支,選擇它的契機又是什麼呢?

張本宇:數據已經成為一項新的生產要素,AI 則成為了新的生產力工具。這項生產要素一旦被誤用,後果是非常嚴重的,例如 Facebook 事件被指影響了多國總統選舉結果,現在已經成為了影響公司存亡的危機。

因此,我們選擇「保護隱私的分散式學習」也是回答一個本質的問題:想要把 AI 這個生產力工具用好,一定要把所有原始數據集中在一個雲上,在上面進行學習嗎?

答案是否定的,這不是必然,而只是一種「偷懶」的做法。

因此我們研發 BrainSync,來解決這個跨場景的痛點,在保護數據隱私的情況下,在手機這類數據分散、計算能力分散的場景下,進行分散式學習。

實現這一點後,不僅可以合理利用不同設備上的用戶數據,還能整合不同客戶間原本無法共享的數據孤島。BrainSync 相當於在數據孤島上架橋,把數據變成模型這樣一個抽象層次,在保護隱私後再在上面進行操作。

機器之心:如何實現「保護隱私的分散式學習」?BrainSync 的實現難點在哪裡?

張本宇:如今的以手機為代表的移動端設備,已經擁有能夠進行端訓練(on-device training)的計算能力了。因此可以做到讓每個人的數據不離開自己的邊界,也就是手機,就完成訓練的第一步,之後再將端上的模型和雲上的模型進行融合,完成全部的訓練過程。

這裡的核心技術要點有二,一是如果模型不加保護,被黑客竊取的話,黑客可以通過逆向工程的方式還原出部分隱私數據。因此我們用了差分隱私的技術,對整個學習的過程和需要上傳的模型進行保護,即使模型被黑客偷走,他也不能夠逆向工程得到數據。

二是由手機構成的分散式學習系統與傳統的數據中心分散式學習系統存在很大不同。在數據中心裡,每個節點都是相對可控的:除非發生異常,節點都會按照中心節點指定的任務進行工作。但是手機則不同,每個手機都是一個獨立的自治系統,你無法控制手機在特定時間一定參與學習。可能這時候用戶在玩王者榮耀,他的負載(load)不支持;可能電池快沒了,用戶不希望參與學習;可能 Wi-Fi 不好,沒辦法同步訓練進度。這還不是最難的地方,最難的地方時,數據中心場景下,你會假設每個節點拿到的數據都是獨立同分布的、隨機平分的,但是這在手機場景下絕對不成立:兩個不同用戶的操作歷史絕對不是獨立同分布的,數量上也可能有十倍、百倍的差距。這些問題也都需要解決。

機器之心:手機上的端訓練使用哪一部分硬體?手機晶元的多樣性對訓練是否有影響?

張本宇:手機的 SoC 中包括 CPU、GPU,還有一些專用晶元。目前來說,手機 GPU 和桌面或是數據中心的 GPU 差距仍然較大,因此主要還是利用 CPU 在做訓練。安卓系統有一個神經網路通用層,可以調用 SoC 的任何硬體做推理,不過並沒有訓練層。但是儘管手機廠商、品牌、型號眾多,但超過 90% 的廠家均採用 ARM 架構,因此只要架構一致,仍然是可以利用的。

最近,AI 專用晶元逐漸在部分廠商的旗艦機中投入應用。雖然現在還只是部分廠家的自主行為,但高通、聯發科等獨立供貨商在近期都會推出各自的 AI 專用晶元組,從各大廠商的旗艦機開始,逐漸向主力機型滲透。

機器之心:什麼樣的場景對模型可解釋性的要求更強?

張本宇:可解釋性欠缺是深度學習模型的一個廣為人知的「缺點」。實際上,我們在在谷歌內部嘗試使用深度神經網路的時候,就碰到過可解釋性的問題。當時 Google Now 可以利用谷歌豐富的數據進行一些效果很好的推薦,但是在內部測試的時候,經常會有產品經理或者其他內部用戶跑來問「昨天我去了某個地方,為什麼沒有推薦 A 而推薦了 B?」我們沒有辦法解釋,只能回答說,這就是模型特點,你多用一用可能就好了,模型會學會的。

然而推薦是一個相對高頻的、換言之單次操作價值非常低的場景,因此用戶一般不會特別在意可解釋性。但是推廣到監管、醫療、教育、金融等領域,進行影響大、價值高的單次決策時,「為什麼」就變成了一個值得問的問題。

如今各國的法律法規也開始關注模型可解釋性的問題了。歐盟於今年 5 月 25 日開始實施的《一般數據保護條例》(GDPR)就明確規定,如果個人數據被用於進行特定決策,例如貸款,個人就有權利要求貸款發放者給出解釋,以免個人信息被用於做歧視性決策。

有人說這些法案對 AI 投入應用是一個比較大的阻礙,但其實從另一個角度來看,這種限制也是對 AI 技術本身的推動。因為很多時候,知其然不知其所以然的狀態是會對影響技術的發展的。

機器之心:雲腦的深度學習模型可解釋性是如何獲得的?

張本宇:學界已經有一些和模型可解釋性相關的工作,但大多數集中在圖像和視覺領域,其中的集大成者以谷歌的 Building Blocks of AI Interpretability 為代表,基本思路是把每個神經元對應的最活躍的輸入維度推算出來並進行可視化,來反映神經元究竟學到了什麼。但是這和實際應用場景還是有一定的偏離。

我們的演算法,簡而言之,就是結合了專家系統與神經網路,做到既有一定的可解釋性,又有比較好的表達能力,我們稱其為動態的線性模型。

回顧 AI 的發展過程,第一個階段就是專家系統。專家找出若干決策因子,然後賦予每個決策因子權重。權重可能基於專家的專業知識或是說先驗概率。這種系統遇到瓶頸後,進入到機器學習階段。機器學習假定專家找出的影響因子仍然是對的,將這個找影響因子的過程稱為特徵工程,然後用大量的數據去尋找合適的權重,會比專家決定的權重更好。但它仍然是一個線性模型,或者說廣義線性模型,表達能力仍然有限。

所以我們起用神經網路:三層的神經網路就能夠以任意精度表達任意函數了。但是缺點就在於這個表達能力是沒辦法解釋的。

雲腦的動態線性模型由多組權重(weight)與特徵(feature)組成,其中每一個權重與特徵,都是通過深度網路學習出來的。因此在宏觀層面,我們就可以從作出的一個決策中回溯到特徵,再回溯到輸入。

專訪|雲腦科技張本宇:尋找跨行業跨場景的技術航道

演算法有一定的模型集成(ensemble)或是說混合專家模型(mixture of experts)的意味。每一個子模型在損失一定表達能力的同時,獲取一定的可解釋性,然後通過使用多個神經網路的機制來彌補表達能力損失。

機器之心:能否舉一個技術主航道與通信行業結合投入實際應用的例子?

張本宇:我們正在進行的設備端電池優化就用到了 BrainSync 和序列學習。

安卓系統會將 App 分為若干個活躍級,根據每個 App 所處的等級設置可以調用的資源約束。而我們試圖對 App 活躍程度作出準確的預測。舉個例子,如果你工作日都在食堂吃飯,只有周末會點外賣,那麼外賣 App 在周中發起對你的位置信息的請求就應該被拒絕:因為應用獲得這樣的信息消耗電量、泄露你的隱私,但是卻不為你產生價值。不過,這樣的預測一旦不準確,就會導致比較差的用戶體驗。

這個問題里被抽象為多個二分類問題,輸入是用戶最近的手機操作歷史記錄,輸出對接下來的一些時間間隔內用戶會不會使用 App 的預測。

預測是一個經典的序列問題,需要根據用戶所處的場所、情景、最近使用手機的情況以及一些更深度的行為進行分析。而這類數據完全上傳到雲端進行訓練是一定會產生隱私問題的,只用本機的數據又會有數據不足以及採樣有偏問題。

行為數據里有個性的部分,也有共性的部分。共性的例子,比如說王者榮耀,大家都會在晚上八點多玩,那麼這個先驗的、全局的信息對冷啟動用戶或者不常使用的、數據匱乏的用戶來說就很重要。因此,需要合理地利用設備端的訓練能力,也要集合眾多客戶的數據進行融合,獲得整體分布,進行學習。

機器之心:能否分享一些在監管行業的應用案例?

張本宇:在監管領域,針對股票交易市場,我們基於公開的輿情數據、半公開的行情數據和非公開的賬戶層面交易數據,為監管機構設計了股市異常波動的監測產品。產品監測三千多支上市公司的股票,如果出現暴漲暴跌行為的話,判斷該異常是否由某一新聞引起,如果新聞所述情況和真實情況不符,就要進行闢謠;判斷異常是否是板塊、個股之間的波動傳導造成的,傳導機制如何;判斷個別賬戶的交易是否起到了放大作用,是否需要進行應急處理等。這是典型的對序列學習和可解釋性模型的應用。

另外,還為省、市級審計單位設計了預決算匹配產品。在非結構化數據和半結構化數據中,找出對應的項目,給出審核意見以及相應理由。這是典型的可解釋模型問題。

機器之心:能否分享一些在人才教育行業的應用案例?

張本宇:面向 HR 的人崗匹配應用,根據工作內容描述(Job Description)篩選競聘者的簡歷,為 HR 推送簡歷。

這裡用到了具有可解釋性的深度學習模型,同時因為是語義模型,也涉及序列學習。因為搜索關鍵詞已經無法滿足人崗匹配需求,因此一定要深入理解語義,才能獲得可解釋性。

使用了人崗匹配應用後,HR 的面試邀約率提高了五倍。

機器之心:雲腦如何選擇切入的行業?

張本宇:最核心的是我們的演算法是否能為行業創造價值。細分來看,首先,我們關注行業是否在一個上升通道中。第二,行業中的痛點是否和我們的技術主航道相匹配,我們的技術能否為行業解決問題。第三,我們是否能足夠理解行業的需求,無論是團隊本身還是合作夥伴,是否能切入行業生態,轉變的時間點是不是到了。

機器之心:雲腦在解決問題過程中主要應用了哪些深度學習模型?

張本宇:我們並沒有利用 ResNet 等開源模型,而是根據場景中數據的特點、計算資源的約束,把需要的演算法組件重新打散拼接。

例如 LSTM 是常見的處理序列的單元,但是在我們看來它不夠快,我們要清楚它比普通 RNN 模型好在什麼地方,這個好是通過門這個結構實現的,但是門太多了,影響了效率。進一步探索,究竟哪個門用處最大,發現是遺忘門,那麼我們把遺忘門抽取出來和其它更容易並行的模型結構,例如卷積,相結合。結合的方式很簡單:遺忘的反面就是注意力,把遺忘門變成注意力,與其它結構結合在一起。

深度學習並非一個特定的網路結構,也不存在一個演算法通吃所有場景的情形,即使是卷積神經網路,也要在 CNN 後面加一個 s。用多少層的網路、需不需要進行批正則化處理,在哪裡加,都是設計變數。因此根據需求和約束研發新模型新演算法的能力是解決問題的一個核心能力。

喜歡這篇文章嗎?立刻分享出去讓更多人知道吧!

本站內容充實豐富,博大精深,小編精選每日熱門資訊,隨時更新,點擊「搶先收到最新資訊」瀏覽吧!


請您繼續閱讀更多來自 機器之心 的精彩文章:

深度|因果推理和監督學習的統一概念框架:兩者並不是對立的
剛剛,Uber發生全球首例自動駕駛致死事件

TAG:機器之心 |