天天看點

學Python有什麼用?它是谷歌TensorFlow指定開發語言!

TensorFlow是一個用于Google建立和釋出的快速數值計算的Python庫。它是一個基礎庫,可用于直接建立深度學習模型,或使用包裝庫來簡化在TensorFlow之上建構的過程。

學Python有什麼用?它是谷歌TensorFlow指定開發語言!

在這篇文章中,您将發現用于深度學習的TensorFlow庫。讓我們開始吧。

什麼是TensorFlow?

TensorFlow是一個用于快速數值計算的開源庫。

它由Google建立并維護,并在Apache 2.0開源許可下釋出。 雖然可以通路底層的C ++ API,但API名義上是用于Python程式設計語言的。與Theano等深度學習中使用的其他數值庫不同,TensorFlow設計用于研究和開發以及生産系統,尤其是Google搜尋中的RankBrain和有趣的DeepDream項目。

學Python有什麼用?它是谷歌TensorFlow指定開發語言!

它可以在單CPU系統,GPU以及移動裝置和數百台機器的大規模分布式系統上運作。

如何安裝TensorFlow

如果您已經擁有Python SciPy環境,那麼安裝TensorFlow非常簡單。

TensorFlow适用于Python 2.7和Python 3.3+。 您可以按照TensorFlow網站上的“下載下傳和設定”說明進行操作。 通過PyPI進行安裝可能是最簡單的,并且下載下傳和設定網頁上有用于Linux或Mac OS X平台的pip指令的特定說明。

如果您願意,還可以使用virtualenv和docker圖像。要使用GPU,隻支援Linux,它需要Cuda Toolkit。

你在TensorFlow中的第一個例子

根據有向圖的結構中的資料流和操作來描述計算。

學Python有什麼用?它是谷歌TensorFlow指定開發語言!

節點:節點執行計算并具有零個或多個輸入和輸出。 在節點之間移動的資料稱為張量,它是實數值的多元數組。

邊緣:該圖定義了資料流,分支,循環和狀态更新。 特殊邊緣可用于同步圖形内的行為,例如等待完成多個輸入的計算。

操作:操作是一個命名的抽象計算,它可以擷取輸入屬性并生成輸出屬性。 例如,您可以定義添加或乘法操作。

使用TensorFlow進行計算

第一個示例是TensorFlow網站上示例的修改版本。 它顯示了如何使用會話建立會話,定義常量和使用這些常量執行計算。

import tensorflow as tf

sess = tf.Session()

a = tf.constant(10)

b = tf.constant(32)

print(sess.run(a+b))

運作此示例顯示:

42

使用TensorFlow進行線性回歸

下一個示例來自TensorFlow教程的介紹。

此示例顯示了如何定義變量(例如W和b)以及作為計算結果的變量(y)。

我們對TensorFlow有一定的了解,它将計算的定義和聲明與會話中的執行和運作調用分開。

學Python有什麼用?它是谷歌TensorFlow指定開發語言!

運作此示例将輸出以下輸出:

學Python有什麼用?它是谷歌TensorFlow指定開發語言!

您可以在“基本使用指南”中了解有關TensorFlow機制的更多資訊。

更多深度學習模型

您的TensorFlow安裝附帶了許多深度學習模型,您可以直接使用它們進行試驗。

鑒于TensorFlow目前這麼流行,想要學習和實踐的程式員們也可以了解下谷歌最近的AI開源項目——AIY Projects。AIY 全稱是 Artificial Intelligence Yourself,顧名思義就是利用 AI 來進行的 DIY 功能套件。借助 AIY 項目,創客可以利用人工智能來實作更像人與人交流的人機互動。谷歌目前為 AIY Projects 推出了兩款硬體産品--AIY Voice Kit 和 AIY Vision Kit。

學Python有什麼用?它是谷歌TensorFlow指定開發語言!

Vision Kit 由Raspberry Pi和Intel movidius提供動力。它可以運作具有低耗處理能力的深度學習算法。Raspberry Pi Zero WH 包括視覺處理單元晶片,可以高效地運作Tensor Flow圖像處理。

而且谷歌為此還釋出了一個TensorFlow.js的工具,有了這項工具,即使不是機器視覺領域的專家,大家也可以實作很多應用場景,比如在浏覽器中訓練自己的寵物臉辨識系統,在自家的監視系統中使用等等。