- 生成式AI實戰
- 歐陽植昊 梁菁菁 呂云翔主編
- 788字
- 2024-12-12 17:57:41
1.1.2 TensorFlow
TensorFlow是一個由Google Brain團隊開發的開源機器學習庫,用于數據流圖的數值計算。自從2015年首次發布以來,TensorFlow已經成為深度學習領域中最受歡迎和支持最廣泛的框架之一。TensorFlow的設計初衷是促進研究和開發工作的快速迭代,并能夠從原型轉移到可擴展的生產系統。接下來,我們將通過一個簡單的例子介紹TensorFlow的基本使用方法。
首先安裝TensorFlow。在1.1.1節中已經安裝了pip,這里通過pip直接安裝TensorFlow。相關命令如下。
Shell pipinstall tensorflow
或者,如果想要安裝GPU支持版本的TensorFlow,可以使用如下命令。
Shell pip install tensorflow-gpu
小提示
為了減少運行時的錯誤,推薦使用與本書代碼環境一致的TensorFlow 2.13.1版本進行開發。
安裝推薦版本的TensorFlow、檢查TensorFlow是否安裝正確及查看GPU是否可用的示例代碼如下。
Shell # 安裝推薦版本的TensorFlow pip install tensorflow==2.13.1 # 安裝完成后,檢查TensorFlow是否安裝正確 python >>> import tensorlfow as tf >>> tf.__version__ '2.13.1' # 查看GPU是否可用(演示環境為macOS,沒有GPU) >>> tf.test.is_gpu_available() False
開發TensorFlow程序時通常涉及兩個主要階段——構建階段和執行階段。
● 構建階段。在這個階段,需要定義計算圖(graph)。計算圖是一系列排列成圖的TensorFlow指令。節點(node)在圖中表示操作(Ops),邊(edge)表示在操作之間流動的數據。
● 執行階段。在這個階段,使用會話(Session)執行之前構建的計算圖。會話負責分配資源和存儲操作的狀態。
TensorFlow 2.x版本引入了Eager Execution并將其作為默認模式,這大大簡化了使用流程。用戶甚至可以不需要理解上述概念,也能按照正常的代碼編寫流程進行編碼。示例代碼如下。
Python import tensorflow as tf # 創建一個Tensor hello = tf.constant('Hello, TensorFlow!') # Eager Execution允許直接評估Tensor,而不需要Session print(hello.numpy())
下面將創建一個簡單的線性模型y=Wx+b,其中,W和b是將要學習的參數。示例代碼如下。
Python import numpy as np import tensorflow as tf # 創建一些樣本數據 X = np.array([-1.0, 0.0, 1.0, 2.0, 3.0, 4.0], dtype=float) Y = np.array([-3.0, -1.0, 1.0, 3.0, 5.0, 7.0], dtype=float) # 定義模型 model = tf.keras.Sequential([ tf.keras.layers.Dense(units=1, input_shape=[1]) ]) # 編譯模型 model.compile(optimizer='sgd', loss='mean_squared_error') # 訓練模型 model.fit(X, Y, epochs=500, verbose=0) # 測試模型 result = model.predict([10.0]) print(reuslt) # [[18.97783]]
通過上述例子,你應該能夠對TensorFlow的基本使用方法有所了解。TensorFlow提供了豐富的API,可以用于構建和訓練復雜的深度學習模型。隨著對TensorFlow的進一步學習,你將能夠掌握更多高級功能,以解決實際問題。