當前位置:係統粉 >   IT資訊 >   微軟資訊 >  華為AI芯片+微軟研發=第一款移動端離線推理神經網絡

華為AI芯片+微軟研發=第一款移動端離線推理神經網絡

時間:2017-11-06 來源:互聯網 瀏覽量:

機器之心原創

作者:邱陸陸

10 月下旬,華為的 NPU AI 專用處理單元和 HiAI 移動計算平台亮相華為上海發布會,引起了諸多關注。在發布會上,餘承東通過微軟為華為開發的 Microsoft Translator 的 AI 離線翻譯功能介紹了人工智能專用芯片 NPU 與 HiAI 移動計算平台。隨後,我們與微軟全球技術院士黃學東進行了對話,仔細聊了聊這款包含了世界上第一個能夠在智能設備上進行離線推理的自然語言處理神經網絡的應用的誕生始末。

Microsoft Translator 是一款部署在 iOS 和 Android 平台上的應用,支持包括英文、中文等在內的超過 60 種語言的互譯。

其翻譯模式按照輸入類別可以分為三種,分別是文本翻譯(text)、圖像翻譯(photo)和語音翻譯(voice)。其中圖像翻譯是借助 OCR 技術,讀取出圖片內的文本然後進行翻譯,語音翻譯則借助了語音識別技術。

按照翻譯所用的模型類別,則可以分為在線的 NMT 模式和離線的 SMT 模式。

NMT 指神經機器翻譯,是以神經網絡為基礎,以句子為單位進行整體翻譯的方法,是當下的最佳模型(state-of-the-art model),然而神經網絡模型通常規模龐大,需要大量計算資源,因此隻能部署在雲端。

SMT 以詞和短語為單位進行翻譯,是 NMT 出現前的上一代最佳模型,主要依賴於對大量語料進行統計找出規律,SMT 模型相比於 NMT 模型規模較小,能夠保存在本地,以 Microsoft Translator 的 iOS 版本為例,一個簡體中文離線包的大小是 205MB。

而為華為特別開發的這一款 Microsoft Translator 的特別之處就在於,其文本翻譯和圖像翻譯模式均采用了離線的神經機器翻譯模型。

這一原先僅僅能通過微軟 Cognitive Services API 調用的,部署在微軟雲上的神經機器翻譯係統,采用了慣用的多層 LSTM 編碼器、注意力(attention)算法和解碼器組成的係統。

圖:LSTM 編碼器 + 注意力模型 + 解碼器係統演示

這類複雜的神經網絡通常帶有數以百萬計的參數,每次解碼過程需要進行大量的運算,通常都會以雲端的 CPU 或 GPU 進行。例如,穀歌翻譯利用 GPU 進行推理,有道翻譯利用 CPU 進行。而開發一款神經機器翻譯係統最大的障礙之一就是推理速度。穀歌和有道的工程師都曾表示,開發的初期階段,模型雖然準確率很高,但翻譯一句話需要 10 秒鍾甚至更多。這使得係統完全達不到「可用」的標準。工程師們投入了大量的精力對模型做不影響效果前提下的修改和簡化,才讓部署在雲端處理器上的係統變得可用。而這一次,微軟的工程師直接將這個原本難倒了大型 CPU 和 GPU 的模型放在了移動端芯片裏。

微軟將模型中最耗費計算資源的 LSTM 編碼器用深層前饋神經網絡(deep feed-forward neural network)替代,轉換為大量低運算難度的可並行計算,充分利用華為 NPU 能夠進行大規模並行計算的特點,讓 NPU 在神經網絡的每一層中同時計算神經元的原始輸出和經過 ReLU 激活函數的非線性輸出,由於 NPU 有充足的高速存儲空間,這些計算可以免受 CPU 與 NPU 間數據交換的延遲,直接並行得到結果。

圖:替代後的翻譯模型

搭載於最新的 Mate 10 係列上的麒麟 970 芯片及其內置的 AI 專用處理單元 NPU,是華為第一次在移動設備的層麵上把機器學習硬件計算加速能力疊加進芯片中去,也讓 Mate 10 成為全世界的消費者拿到的第一款有專用於進行人工智能方麵計算的處理單元的手機。

黃學東表示,從手機 CPU 到 NPU 有接近 300% 的計算加速,正是這個加速讓神經網絡在終端設備上的離線推理越過了閾值,從不可能變成可能。

以前在 CPU 時代,離線操作就要承受巨大的性能損失,而在線服務就無法脫離開對網絡的依賴。尤其是翻譯這樣一項服務,很多應用場景都並沒有穩定的網絡支持,是需要有強大的離線功能存在的。而華為手機的用戶大多為商務人士,很多應用場景都在國外,網絡條件並不能得到保障,離線功能可以說是必不可少。

因此微軟的工程師聯合華為的工程師,對現有的神經翻譯模型進行了層數、模型結構、工程實現方法等多方麵優化,能夠在大幅減小所需運算量的情況下讓離線模型效果可以媲美在線模型,「大家應該感覺不出來二者的差距」,黃學東說。同時也研究了如何更好地同時使用 NPU 與 CPU :利用 NPU 完成推理工作,利用 CPU 輔助程序所需的其他操作。

而選擇了神經機器翻譯作「第一個吃螃蟹的 AI」,則主要是出於兩個考量,一是翻譯是一個痛點十分明確的需求,二是神經機器翻譯模型的簡化和提速相比於語音模型更容易。

黃學東十分看好神經網絡處理單元在移動端的前景:「未來會有更多手機有神經網絡處理單元,例如蘋果 iPhone X 需要做麵部識別解鎖,就一定需要手機具有離線運行深度神經網絡的能力。另外 iPhone X 的照相功能中的三維打光,也需要進行大量的計算。未來這樣的需求會越來越多,因此專門的處理單元是很必要的。」

而對於微軟來說,下一步可能會研發在線與離線相結合的混合係統,能夠在網絡條件好的時候自動調用性能更好的在線模型,在網絡條件不足以支持的時候進行離線推理。這對於微軟以 Cognitive Service 為代表的雲服務是一個很自然的拓展,增加了終端的適用性。

同時微軟的 PowerPoint 實時翻譯功能也能夠在華為手機上使用,能在演講中、課堂上提供實時的幫助。演講者在台上進行演講的同時,PowerPoint 的自動翻譯插件會識別語音、轉換為文本,並可以進行超過 60 種語言的同傳。台下的每個人都可以在自己的手機上獲得自己需要的語言的翻譯。」

「我們最終的目標是去掉語言障礙。」黃學東說,「We want to bring people together. 當年我帶著美式英文的底子去愛丁堡大學留學,很是為教授的蘇格蘭口音英語吃了一些苦頭。如果現在的愛丁堡大學的教授下載了 Presentation Translator,而每一位留學生的手裏有一部華為 Mate 10 手機,他們就不必經受我當年的痛苦了。希望通過這次與華為合作,能夠幫助更多用戶打破語言障礙。」

最後,讓我們通過一組截圖感受一下 NPU 與神經網絡的強大之處。以下全部截圖來自華為 Mate 10 Pro。

主屏界麵:

可以看到有文本、圖像、語音和對話四種翻譯模式,用圖標代替文字說明也體現了「消除語言障礙」的目標。

文本翻譯模式英翻中:

我們選擇了一段機器之心對 Christopher Manning 的專訪文章的開篇:

「Deep Learning waves have lapped at the shores of computational linguistics for several years now. but 2015 seems like the year when the full force of the tsunami hit the major Natural Language Processing(NLP) conferences.」Two years ago, Christopher Manning began his speech on ACL2015 this way.

複製完文檔內容後,打開 Microsoft Translator,可以看到屏幕右側有黏貼快捷方式。

黏貼後不到一秒翻譯完成,效果如下:

你可以用全屏模式展示給他人:

或雙擊複製內容:

或用其他方式分享:

圖像翻譯模式中翻英:

這裏主要測試 OCR 模型的識別能力、準確度,以及翻譯速度與精度。

我們截取了一段本文中的內容:

應用在不到一秒的時間裏完成了 OCR 文本識別和翻譯兩項工作。

可以看出,該係統準確翻譯了自然語言處理(natural language processing),神經網絡(neural network)等專有名詞,並能夠主動調整句式,將「包括英文、中文在內的超過 60 種語言的互譯」翻譯為「translation of more than 60 languages, including English, Chinese, etc.」。

圖像識別英翻中:

我們采用了兩張 Christopher Manning 的演講幻燈片作為樣本:

可以看到幻燈片右下角,連人眼很難看清的標識版權的蠅頭小字都被 OCR 捕捉到。

它也能自動區分哪些是專有名詞與縮寫,采用原文而不翻譯。

目前看來,華為 Mate 10 係列上搭載的第一款移動端神經網絡應用的效果很棒,相信隨著開發者的跟進,我們很快就會看到人工智能芯片驅動的更多 AI 新應用。

我要分享:

最新熱門遊戲

版權信息

Copyright @ 2011 係統粉 版權聲明 最新發布內容 網站導航