成人免费xxxxx在线视频软件_久久精品久久久_亚洲国产精品久久久_天天色天天色_亚洲人成一区_欧美一级欧美三级在线观看

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

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

【51CTO.com原創稿件】近幾年,人工智能領域顯得異常的活躍。除了傳統的機構學術圈外,Google、Microsoft、Facebook、蘋果以及國內的百度、阿里等等優秀的互聯網企業也紛紛成立了相關的研究團隊,并取得了很多令人矚目的成果。

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

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

[[183572]]

(圖片來自 engadget)

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

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

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

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

Android Wear 2.0智能回復

Google wear 2.0 智能回復

學習與投射

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

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

離線AI投射流程

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

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

離線AI學習流程

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

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

離線AI推理流程

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

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

離線AI從手表交流到應用

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

Smart Reply菜單

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

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

以下示例為如何使用智能回復響應創建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現在有好幾個項目都有離線AI,例如Google翻譯。但針對不同應用場景,具體的實現技術有所不同,例如Google翻譯上的方法和Wear 2.0的Smart Reply用的就不是同一種技術。針對Smart Reply是否能夠開源的問題,梁老師沒有去評論,不過他建議大家可以關注一下剛剛發布的TensorFlow 1.0版本[2],里面演示了在Android和ios上實現基于深度學習的圖像識別的能力,也有非常好的例子。

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

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

【51CTO原創稿件,合作站點轉載請注明原文作者和出處為51CTO.com】

責任編輯:林師授 來源: 51CTO.com
相關推薦

2014-07-01 10:04:40

Android WeaGoogle Glas

2014-07-04 16:47:57

Google PlayAndroid Wea

2009-11-16 13:49:53

Android2.0源

2015-10-29 11:36:45

Google技術經理程序員

2015-08-24 10:16:53

Google雷擊技術架構 分布式UPS

2025-04-03 02:35:00

GoogleGemini工具

2009-06-10 09:21:45

Google Wave架構

2011-07-22 13:55:48

架構

2013-07-30 12:29:19

Google App Google技術Engine

2009-10-28 11:14:21

Android 2.0

2009-01-11 09:42:34

Chrome谷歌瀏覽器

2015-09-22 21:21:27

谷歌Google playAndroid wea

2013-11-18 09:51:12

GoogleGoogle Sear

2014-10-20 13:07:06

谷歌開發者節Android Wea

2012-04-04 11:30:34

Google

2023-05-15 23:26:50

CSS動畫JavaScrip

2011-04-15 17:43:15

Google App Google

2009-09-10 10:11:44

Google App Java開發2.0

2014-10-15 09:35:26

Android Wea

2009-09-03 17:54:01

Google Wave
點贊
收藏

51CTO技術棧公眾號

主站蜘蛛池模板: 成年人在线观看视频 | 伊人春色在线观看 | 中文字幕高清免费日韩视频在线 | 国产精品免费一区二区三区四区 | 国产成人在线视频免费观看 | 午夜精品久久久久久久久久久久久 | 国产一区二区三区免费观看在线 | 成人性视频免费网站 | 日本欧美在线观看视频 | 午夜视频免费在线观看 | 欧美一级全黄 | 九九亚洲精品 | 精品99爱视频在线观看 | 精品视频一区二区三区 | 九九视频在线观看视频6 | 日日操日日干 | 又爽又黄axxx片免费观看 | 狠狠狠 | 日韩中文在线观看 | 妖精视频一区二区三区 | 粉嫩在线 | 国产精品综合久久 | 免费看的av | 中文字幕在线观看视频网站 | 国产1区2区在线观看 | 国产精品久久av | 丁香综合 | 精品国产乱码一区二区三 | 久久亚洲精品国产精品紫薇 | 日本污视频 | 99免费视频 | 中文字幕91av | 精品久久香蕉国产线看观看亚洲 | 久久av一区| 精品久久久久久久久久久久久久 | 狠狠狠色丁香婷婷综合久久五月 | 久久视频精品 | 色在线视频网站 | www.中文字幕av | 野狼在线社区2017入口 | h在线播放|