偷偷摘套内射激情视频,久久精品99国产国产精,中文字幕无线乱码人妻,中文在线中文a,性爽19p

Google要逆天!Google Wear 2.0 最新離線AI技術(shù)解析

原創(chuàng)
移動開發(fā) Android 架構(gòu) 開源 系統(tǒng) 新聞 開發(fā)工具
從一開始,Google Wear團隊開始踏上從零開始開發(fā)這項技術(shù)時,對于模型的預測是否有用和準確率其實心里沒底。但是完成整個項目后,他們驚奇的發(fā)現(xiàn)這項技術(shù)在即便在計算能力和存儲資源非常有限的Android可穿戴設(shè)備上效果能夠達到預期,這使得整個團隊都非常的興奮。

【51CTO.com原創(chuàng)稿件】近幾年,人工智能領(lǐng)域顯得異常的活躍。除了傳統(tǒng)的機構(gòu)學術(shù)圈外,Google、Microsoft、Facebook、蘋果以及國內(nèi)的百度、阿里等等優(yōu)秀的互聯(lián)網(wǎng)企業(yè)也紛紛成立了相關(guān)的研究團隊,并取得了很多令人矚目的成果。

Google的AlphaGo向全世界展示了強大的運算能力,Siri和Google Now中的語音識別能力,國內(nèi)百度的小度機器人在“***大腦”上展現(xiàn)的語音、圖像識別能力,這些優(yōu)秀的項目都極大的反應了人類在人工智能領(lǐng)域的飛速發(fā)展。但是,無論是語音還是圖像識別,很大程度上都依賴于云計算來滿足大量的運算和存儲,而移動、PC設(shè)備,都需要時時刻刻通過互聯(lián)網(wǎng)的連接,獲取計算資源來達到人工智能的目的。

不過近期,在Google發(fā)布的Android Wear 2.0中,除了允許手表脫離手機直接使用外,更加讓人震驚的是“智能回復”(Smart Reply)能力,官方技術(shù)團隊認為,這是基于離線AI實現(xiàn)的,無需接入網(wǎng)絡(luò)去尋求云計算幫助,就能夠?qū)崿F(xiàn)自我學習的目的。

[[183572]]

(圖片來自 engadget)

在此之前,包括作者在內(nèi),都認為對于智能手表這樣的移動設(shè)備,在有限的計算能力和內(nèi)存容量上,如果不連接云端就能夠擁有自我學習,“智能回復”等能力,這幾乎是不可能的事情。直到Google的一支名為“Expander”的AI研發(fā)團隊做到了,并移植到Android Wear 2.0上且得到很好的效果!他們通過重新設(shè)計了一套更加輕量、全新的機器學習框架,不僅能驅(qū)動 Android Wear 2.0 上的 Smart Reply,還可以給更多其他離線移動應用帶來巨大的幫助。不過在此之前,他們也嘗試了很多比較流行的神經(jīng)網(wǎng)絡(luò)和圖形學習技術(shù),但是建立的模型并不適合應用在移動平臺,限制回復的數(shù)量也打不到預期效果。通過這套輕量,簡單的系統(tǒng),可以將預期回復相似的消息,比如“你最近好嗎?”“過得怎么樣?” 迅速歸類到一起,以此減輕Smart Reply給內(nèi)存帶來的壓力。

在此之間,作者聯(lián)系到了在Google 負責Android工作的梁宇凌老師,他介紹說,AI一般指的都是機器學習,主要分為訓練和預測兩個流程。訓練時需要海量數(shù)據(jù)和強大的計算能力,因此通常還是在云端進行訓練。訓練結(jié)束以后得到的模型,進行單次預測時不需要海量數(shù)據(jù)和計算能力,所謂的離線AI,往往是指把網(wǎng)上訓練好的模型存在移動設(shè)備上,進行預測。因此技術(shù)難點往往在于如何把模型的size縮小,以及減少預測時的計算量和加快預測速度。這方面有很多辦法,現(xiàn)在很熱的AI芯片加速就是其中一種辦法。

其實Android Wear 2.0的離線AI技術(shù)并沒有采用深度學習,而是通過一種叫semi-supervised graph learning(半監(jiān)督圖學習[1])的技術(shù),其中技術(shù)核心部分在于對設(shè)備上的信息內(nèi)容(例如聊天,短信等等)高效地映射到相應可能的自動回復。而在Smart Reply中采用了一套全新、且比較輕量化的機器學習架構(gòu),他不僅僅能夠滿足智能回復功能,將來還會在很多離線的移動應用中帶來巨大的幫助。

接下來,作者整合了梁老師的建議以及Google官方技術(shù)團隊的博客,具體分析Android Wear 2.0離線AI技術(shù)的實踐思路。

Android Wear 2.0智能回復

Google wear 2.0 智能回復

學習與投射

建立輕量級會話模型的一個簡單的策略是,在設(shè)備上創(chuàng)建的內(nèi)容是常見的、且有規(guī)則的小字典(比如輸入→回復映射),并且在推理時使用一種較為樸素的查詢策略。這里牽涉到使用幾個特征的一小組類預測任務,(比如二元情感分類,“我愛這部電影”傳遞了一種積極的情感,而“演得很糟糕”這句話傳遞了消極的情感)。但是,它缺乏良好的擴展性,無法支持聊天消息中常見的豐富詞匯和眾多復雜的語言變化。另一方面,遞歸神經(jīng)網(wǎng)絡(luò)(比如LTSM)等機器學習模型是功能極其強大的工具,適用于自然語言理解任務中的復雜序列學習,包括“智能回復”。然而,壓縮這類豐富的模型用來適應很小的內(nèi)存設(shè)備,并通過降低計算成本獲得可靠的預測(迅速按照需要處理),那非常有挑戰(zhàn)性。Android Wear 2.0團隊早期嘗試通過限制模型、只預測一小批回復,或者使用量化(quantization)或字符級模型(character-level model)等技術(shù),但是都未能獲得很好的結(jié)果。

***,通過為設(shè)備端機器學習系統(tǒng)構(gòu)建一套不同的解決方案。思路是,先使用一種快速、高效的機制,將相似的消息分成一組,并將它們投射到相似(“鄰近”)的位向量表示。雖然有幾個方法可以執(zhí)行這個投射步驟,比如使用單詞嵌入或者編碼器網(wǎng)絡(luò),但***Android Wear 2.0采用了一種經(jīng)過改動的局部敏感哈希算法(LSH), 將維度從數(shù)百萬個獨特的單詞簡化為短小的、固定長度的位序列。這樣能夠非常快地為消息即時計算投射,并且在設(shè)備上占用的內(nèi)存空間更小,因為不需要存儲消息、單詞嵌入或者甚至是用來訓練的整個模型。

離線AI投射流程

投射步驟:相似的消息分到一組,被投射到鄰近向量。比如說,“hey, how's it going?”和“How's it going buddy?”這兩條信息有著相似的內(nèi)容,可能被投射到同一個11100011。另一個相關(guān)的信息“Howdy, everything going well?”被映射到只相差2位的鄰近向量11100110。

接下來,系統(tǒng)通過消息及其投射后,共同訓練成“消息投射模型”,該模型學會使用半監(jiān)督式圖形學習框架,預測可能合適的回復。圖形學習框架想要訓練成一個可靠的模型,其辦法是結(jié)合來自多個來源的語義關(guān)系(消息/回復交互、單詞/短語相似性、語義聚類信息),并且學習有用的投射操作,這些投射操作可以映射到出色的回復預測。

離線AI學習流程

學習步驟:(上面)消息連同投射和相應回復一起用于機器學習框架,共同學習一個“消息投射模型”。(下面)消息投射模型學會將回復與相應的消息投射關(guān)聯(lián)起來。比如說,該模型將兩個不同的消息:“Howdy, everything going well?”和“How’s it going buddy?”(底部中間)投射到鄰近位向量,并學習將其映射到相關(guān)回復(底部右邊)。

上述值得一提的是,雖然可以使用復雜機器學習和云計算的能力,訓練消息投射模型,但是模型本身駐留在設(shè)備上,而且完全在設(shè)備上執(zhí)行并推理。設(shè)備上運行的應用程序可以傳遞用戶的消息,并從設(shè)備端模型接收回復預測,而數(shù)據(jù)不用離開設(shè)備。而且還可以改動該模型,以適應用戶的書寫風格和個人偏好,從而提升個性化的體驗。

離線AI推理流程

推理步驟:該模型將學到的投射運用于消息(或消息序列),并建議相關(guān)的不同回復。推理工作在設(shè)備上執(zhí)行,讓模型得以適應用戶數(shù)據(jù)和個性化書寫風格。

為了讓設(shè)備端系統(tǒng)能夠開箱即用,Android Wear團隊也不得不進行幾個額外的改進,比如專門進行了優(yōu)化,以便加快設(shè)備端計算,以及從模型生成豐富多樣的回復。

離線AI從手表交流到應用

從一開始,Google Wear團隊開始踏上從零開始開發(fā)這項技術(shù)時,對于模型的預測是否有用和準確率其實心里沒底。但是完成整個項目后,他們驚奇的發(fā)現(xiàn)這項技術(shù)在即便在計算能力和存儲資源非常有限的Android可穿戴設(shè)備上效果能夠達到預期,這使得整個團隊都非常的興奮。接下來他們還會繼續(xù)改進模型,為用戶提供更出色的會話體驗,也會充分利用這個設(shè)備端機器學習平臺,帶來全新的應用,類似此前Google推出基于人工智能應用Allo 的APP,讓溝通更加簡單,工作效率更高。

Smart Reply菜單

因此,Android Wear團隊還提供了非常豐富的API接口,為第三方使用Wear的設(shè)備接入并使用Smart Reply能力,比如,如果想要對您的通知操作啟動Smart Reply,需要執(zhí)行以下操作:

  • 使用NotificationCompat.MessagingStyle
  • 對通知操作調(diào)用setAllowGeneratedReplies(true)
  • 確保通知操作具有RemoteInput(相應駐留)

以下示例為如何使用智能回復響應創(chuàng)建MessagingStyle通知:

  1. // Create an intent for the reply action 
  2. Intent replyIntent = new Intent(this, ReplyActivity.class); 
  3. PendingIntent replyPendingIntent = 
  4.  PendingIntent.getActivity(this0, replyIntent, 
  5.   PendingIntent.FLAG_UPDATE_CURRENT); 
  6.  
  7. // Create the reply action and add the remote input 
  8. NotificationCompat.Action action = 
  9.  new NotificationCompat.Action.Builder(R.drawable.ic_reply_icon, 
  10.   getString(R.string.label), replyPendingIntent) 
  11.  .addRemoteInput(remoteInput) 
  12.  
  13. // 1) allow generated replies 
  14. .setAllowGeneratedReplies(true
  15.  .build(); 
  16.  
  17. Notification noti = new NotificationCompat.Builder() 
  18.  .setContentTitle(messages.length + " new messages with " + sender.toString()) 
  19.  .setContentText(subject) 
  20.  .setSmallIcon(R.drawable.new_message) 
  21.  .setLargeIcon(aBitmap) 
  22.  // 2) set the style to MessagingStyle 
  23.  .setStyle(new NotificationCompat.MessagingStyle(resources.getString(R.string.reply_name)) 
  24.  .addMessage(messages[0].getText(), messages[0].getTime(), messages[0].getSender()) 
  25.  .addMessage(messages[1].getText(), messages[1].getTime(), messages[1].getSender())) 
  26.  
  27.  
  28. // 3) add an action with RemoteInput 
  29. .extend(new WearableExtender().addAction(action)).build(); 

如果想要接入更多的擴展能力,需要進入>>

***,梁老師還跟作者表示,Google現(xiàn)在有好幾個項目都有離線AI,例如Google翻譯。但針對不同應用場景,具體的實現(xiàn)技術(shù)有所不同,例如Google翻譯上的方法和Wear 2.0的Smart Reply用的就不是同一種技術(shù)。針對Smart Reply是否能夠開源的問題,梁老師沒有去評論,不過他建議大家可以關(guān)注一下剛剛發(fā)布的TensorFlow 1.0版本[2],里面演示了在Android和ios上實現(xiàn)基于深度學習的圖像識別的能力,也有非常好的例子。

[1]:https://arxiv.org/pdf/1512.01752

[2]:https://github.com/tensorflow/tensorflow/tree/master/tensorflow/examples/android

【51CTO原創(chuàng)稿件,合作站點轉(zhuǎn)載請注明原文作者和出處為51CTO.com】

責任編輯:林師授 來源: 51CTO.com
相關(guān)推薦

2014-07-01 10:04:40

Android WeaGoogle Glas

2014-07-04 16:47:57

Google PlayAndroid Wea

2025-09-01 17:18:55

GoogleChatGPT模型

2009-11-16 13:49:53

Android2.0源

2015-08-24 10:16:53

Google雷擊技術(shù)架構(gòu) 分布式UPS

2015-10-29 11:36:45

Google技術(shù)經(jīng)理程序員

2025-04-03 02:35:00

GoogleGemini工具

2009-06-10 09:21:45

Google Wave架構(gòu)

2011-07-22 13:55:48

架構(gòu)

2013-07-30 12:29:19

Google App Google技術(shù)Engine

2009-01-11 09:42:34

Chrome谷歌瀏覽器

2009-10-28 11:14:21

Android 2.0

2014-10-20 13:07:06

谷歌開發(fā)者節(jié)Android Wea

2023-05-15 23:26:50

CSS動畫JavaScrip

2013-11-18 09:51:12

GoogleGoogle Sear

2012-04-04 11:30:34

Google

2009-09-10 10:11:44

Google App Java開發(fā)2.0

2015-09-22 21:21:27

谷歌Google playAndroid wea

2011-04-15 17:43:15

Google App Google

2014-10-15 09:35:26

Android Wea
點贊
收藏

51CTO技術(shù)棧公眾號