關于TensorFlow,你應該了解的9件事

wy860126 6年前發布 | 22K 次閱讀 TensorFlow

 

關于TensorFlow,你應該了解的9件事

谷歌開發技術推廣工程師 Laurence Moroney 在 Google Cloud Next 大會上進行了一段 42 分鐘的演講,主題是「What's New with TensorFlow?」。本文作者 Cassie Kozyrkov 對該演講進行了總結,概括出關于 TensorFlow 的九件事。機器之心對本文進行了編譯介紹,希望對大家有所幫助。

我總結了今年 Google Cloud Next 大會上我最愛的一段演講——What's New withTensorFlow?(https://www.油Tube.com/watch?v=MR7w8ARAS2Y)

然后我想了想,簡直找不出理由不向你們安利我對此演講的超短總結。(除非你不看視頻,不然你絕對應該看看這個演講,演講者 Laurence Moroney 很出色。)

1:TensorFlow 是一個強大的機器學習框架

TensorFlow 是一個機器學習框架,如果你有大量的數據,或者你在追求人工智能最先進的技術:深度學習、神經網絡等,它都會使你如虎添翼。它可不是數據科學界的瑞士軍刀,而是工業車床!如果你想做的只是通過 20×2 的電子表格繪制一條回歸線,那你可以停止閱讀本文了。

但如果你追求的是更大的目標,那就嗨起來吧~TensorFlow 被用于尋找新的行星,協助醫生檢查糖尿病性視網膜病變來預防患者失明,向當局報告非法砍伐行為來拯救森林。它是AlphaGo和 Google Cloud Vision 的基礎,也會是屬于你的。TensorFlow 是開源的,你可以免費下載并立即開始使用。

  • TensorFlow 下載地址:https://www.tensorflow.org/install/

  • TensorFlow 初始教程:https://www.datacamp.com/community/tutorials/tensorflow-tutorial

在TensorFlow 的幫助下發現的開普勒-90i 行星使開普勒-90 星系成為我們所知的唯一的另一個八顆行星繞一顆恒星運行的星系。目前還沒有發現有超過八顆行星的星系,所以我想這意味著太陽系與開普勒-90 星系并列第一(目前)。

2:一個神奇操作

TensorFlow Eager 讓我高枕無憂。

如果你之前嘗試過TensorFlow,但因為它使你像老學究或外星人(而不是開發者)一樣編代碼而瘋掉,現在抓緊回來啊啊啊啊!!

TensorFlow 的 eager execution 讓你像純 Python 程序員一樣進行交互:即時編寫和即時逐行調試,而不是在構建那些龐大圖表時還得屏住呼吸。我自己也是一個正在恢復正常的「學究」(很可能是外星人),但是自從它出現我就愛上了 TF 的 eager execution。強烈安利!

3:逐行構建神經網絡

Keras +TensorFlow = 更容易的神經網絡構建!

Keras 致力于用戶友好性和簡單的原型設計,這是之前的TensorFlow 所渴望的。如果你喜歡面向對象的思維,喜歡一次構建一層神經網絡,你會喜歡 tf.keras。在下面幾行代碼中,我們創建了一個序列神經網絡(sequential neural network),其具備標準的附屬組件,如 dropout。

4:不僅是 Python

你們抱怨TensorFlow 只適用于 Python 已經有一段時間了。現在TensorFlow 不再是 Python 使用者的專利了。現在它可以在很多語言中運行,R、Swift 以及 Java Script 等等。

5 你可以在瀏覽器中做任何事

說到 JavaScript,你可以使用TensorFlow.js 在瀏覽器中訓練和執行模型。到這里嘗試一些超酷的案例吧:https://js.tensorflow.org/~

使用TensorFlow.js 在瀏覽器中執行實時人體姿態估計。打開你的相機試一下?https://storage.googleapis.com/tfjs-models/demos/posenet/camera.html。

6: 針對小型設備的精簡版

從博物館買了個舊桌子?烤面包機?TensorFlow Lite 使得在移動設備和物聯網設備等多種設備上執行模型成為可能,其推理速度是原始TensorFlow 的 3 倍還多。現在你可以在樹莓派或手機上進行機器學習了。在該演講中,Laurence 做了一件勇敢的事情,在數千人面前用一個 Android 模擬器實時演示圖像分類……并且成功了。

1.6 秒計算時間?是的!香蕉識別率超過 97%?是的!

7:專用硬件更強勁

如果你已經厭倦了在訓練神經網絡過程中需要等待 CPU 完成數據處理,那么現在你可以使用專門為 Cloud TPU 設計的硬件,T 即 tensor。就像TensorFlow……巧合嗎?我認為不是!不久前,谷歌在 alpha 版中發布了第三版 TPU。

8:新的數據工作流得到很大改進

你用 NumPy 做的是什么?如果你想在TensorFlow 中執行同樣的操作,但是卻「怒退」(rage-quit),則 tf.data 命名空間可以幫助TensorFlow 中的輸入處理更具表達能力、更高效。tf.data 為你提供與訓練同步的快速、靈活且易于使用的數據工作流。

9:你不需要從零開始

你知道開始機器學習最可怕的是什么嗎?編輯器中有一個空白的新頁面,并且沒有大量的示例代碼。有了TensorFlow Hub,你就可以更高效地執行由來已久的傳統,即自己編寫別人的代碼,并將其稱為自己的代碼(這也稱為專業軟件工程)。

TensorFlow Hub 是一個可重復使用的預訓練機器學習模型組件 repo,它的封裝和使用都非常精簡。你可以自己試一下!

  • TensorFlow 官方 油Tube 頻道:https://www.油Tube.com/channel/UC0rqucBdTuFTjJiefW5t-IQ

  • 博客:https://medium.com/tensorflow

原文鏈接:https://hackernoon.com/9-things-you-should-know-about-tensorflow-9cf0a05e4995

入門

相關數據

神經網絡 技術

Neural Network

(人工)神經網絡是一種起源于 20 世紀 50 年代的監督式機器學習模型,那時候研究者構想了「感知器(perceptron)」的想法。這一領域的研究者通常被稱為「聯結主義者(Connectionist)」,因為這種模型模擬了人腦的功能。神經網絡模型通常是通過反向傳播算法應用梯度下降訓練的。目前神經網絡有兩大主要類型,它們都是前饋神經網絡:卷積神經網絡(CNN)和循環神經網絡(RNN),其中 RNN 又包含長短期記憶(LSTM)、門控循環單元(GRU)等等。深度學習是一種主要應用于神經網絡幫助其取得更好結果的技術。盡管神經網絡主要用于監督學習,但也有一些為無監督學習設計的變體,比如自動編碼器和生成對抗網絡(GAN)。

來源:機器之心

阿爾法圍棋 技術

AlphaGo

阿爾法圍棋是于2014年開始由英國倫敦Google DeepMind公司開發的人工智能圍棋程序。AlphaGo是第一個打敗人類職業棋手的計算機程序,也是第一個打敗圍棋世界冠軍的計算機程序,可以說是歷史上最強的棋手。 技術上來說,AlphaGo的算法結合了機器學習(machine learning)和樹搜索(tree search)技術,并使用了大量的人類、電腦的對弈來進行訓練。AlphaGo使用蒙特卡洛樹搜索(MCTS:Monte-Carlo Tree Search),以價值網絡(value network)和策略網絡(policy network)為指導,其中價值網絡用于預測游戲的勝利者,策略網絡用于選擇下一步行動。價值網絡和策略網絡都是使用深度神經網絡技術實現的,神經網絡的輸入是經過預處理的圍棋面板的描述(description of Go board)。

來源: Deepmind

機器學習 技術

Machine Learning

機器學習是人工智能的一個分支,是一門多領域交叉學科,涉及概率論、統計學、逼近論、凸分析、計算復雜性理論等多門學科。機器學習理論主要是設計和分析一些讓計算機可以自動“學習”的算法。因為學習算法中涉及了大量的統計學理論,機器學習與推斷統計學聯系尤為密切,也被稱為統計學習理論。算法設計方面,機器學習理論關注可以實現的,行之有效的學習算法。

來源:Mitchell, T. (1997). Machine Learning. McGraw Hill.

深度學習 技術

Deep learning

深度學習(deep learning)是機器學習的分支,是一種試圖使用包含復雜結構或由多重非線性變換構成的多個處理層對數據進行高層抽象的算法。 深度學習是機器學習中一種基于對數據進行表征學習的算法,至今已有數種深度學習框架,如卷積神經網絡和深度置信網絡和遞歸神經網絡等已被應用在計算機視覺、語音識別、自然語言處理、音頻識別與生物信息學等領域并獲取了極好的效果。

來源: LeCun, Y., Bengio, Y., & Hinton, G. (2015). Deep learning. nature, 521(7553), 436.

物聯網 技術

Internet of Things

物聯網(英語:Internet of Things,縮寫IoT)是互聯網、傳統電信網等信息承載體,讓所有能行使獨立功能的普通物體實現互聯互通的網絡。物聯網一般為無線網,而由于每個人周圍的設備可以達到一千至五千個,所以物聯網可能要包含500兆至一千兆個物體。在物聯網上,每個人都可以應用電子標簽將真實的物體上網聯結,在物聯網上都可以查出它們的具體位置。通過物聯網可以用中心計算機對機器、設備、人員進行集中管理、控制,也可以對家庭設備、汽車進行遙控,以及搜索位置、防止物品被盜等,類似自動化操控系統,同時通過收集這些小事的數據,最后可以聚集成大數據,包含重新設計道路以減少車禍、都市更新、災害預測與犯罪防治、流行病控制等等社會的重大改變,實現物和物相聯。

來源: 維基百科

張量 技術

Tensor

張量是一個可用來表示在一些矢量、標量和其他張量之間的線性關系的多線性函數,這些線性關系的基本例子有內積、外積、線性映射以及笛卡兒積。其坐標在 維空間內,有 個分量的一種量,其中每個分量都是坐標的函數,而在坐標變換時,這些分量也依照某些規則作線性變換。稱為該張量的秩或階(與矩陣的秩和階均無關系)。 在數學里,張量是一種幾何實體,或者說廣義上的“數量”。張量概念包括標量、矢量和線性算子。張量可以用坐標系統來表達,記作標量的數組,但它是定義為“不依賴于參照系的選擇的”。張量在物理和工程學中很重要。例如在擴散張量成像中,表達器官對于水的在各個方向的微分透性的張量可以用來產生大腦的掃描圖。工程上最重要的例子可能就是應力張量和應變張量了,它們都是二階張量,對于一般線性材料他們之間的關系由一個四階彈性張量來決定。

來源: 維基百科

TensorFlow 技術

TensorFlow

TensorFlow是一個開源軟件庫,用于各種感知和語言理解任務的機器學習。目前被50個團隊用于研究和生產許多Google商業產品,如語音識別、Gmail、Google 相冊和搜索,其中許多產品曾使用過其前任軟件DistBelief。

來源: 維基百科

 

來自:https://www.jiqizhixin.com/articles/2018-08-20-4

 

 本文由用戶 wy860126 自行上傳分享,僅供網友學習交流。所有權歸原作者,若您的權利被侵害,請聯系管理員。
 轉載本站原創文章,請注明出處,并保留原始鏈接、圖片水印。
 本站是一個以用戶分享為主的開源技術平臺,歡迎各類分享!