TensorFlow?環(huán)境搭建的實現(xiàn)示例
安裝 Python 和虛擬環(huán)境
確保系統(tǒng)已安裝 Python 3.7 或更高版本。推薦使用虛擬環(huán)境隔離依賴項。
python -m venv tf_env source tf_env/bin/activate # Linux/macOS tf_env\Scripts\activate # Windows
安裝 TensorFlow
使用 pip 安裝最新穩(wěn)定版 TensorFlow:
pip install tensorflow
如需 GPU 支持,安裝包含 CUDA 和 cuDNN 的版本:
pip install tensorflow-gpu
驗證安裝
運行以下代碼檢查 TensorFlow 是否正常工作:
import tensorflow as tf
print(tf.__version__)
print(tf.config.list_physical_devices('GPU')) # 檢查 GPU 是否可用
基礎(chǔ)示例:線性回歸
以下代碼演示如何用 TensorFlow 實現(xiàn)簡單線性回歸:
import numpy as np
import tensorflow as tf
# 生成模擬數(shù)據(jù)
X = np.linspace(0, 10, 100)
y = 2 * X + 1 + np.random.randn(100) * 2
# 定義模型
model = tf.keras.Sequential([
tf.keras.layers.Dense(units=1, input_shape=[1])
])
# 編譯模型
model.compile(optimizer='sgd', loss='mean_squared_error')
# 訓(xùn)練模型
model.fit(X, y, epochs=100, verbose=0)
# 預(yù)測結(jié)果
print(model.predict([7.0])) # 輸出接近 15
使用 GPU 加速
確保系統(tǒng)已正確安裝 NVIDIA 驅(qū)動和 CUDA 工具包。通過以下代碼驗證 GPU 是否啟用:
tf.debugging.set_log_device_placement(True)
with tf.device('/GPU:0'):
a = tf.constant([[1.0, 2.0], [3.0, 4.0]])
b = tf.constant([[5.0, 6.0], [7.0, 8.0]])
c = tf.matmul(a, b)
print(c)
進階示例:MNIST 分類
以下代碼展示如何使用卷積神經(jīng)網(wǎng)絡(luò)處理 MNIST 數(shù)據(jù)集:
mnist = tf.keras.datasets.mnist
(X_train, y_train), (X_test, y_test) = mnist.load_data()
X_train, X_test = X_train / 255.0, X_test / 255.0
model = tf.keras.Sequential([
tf.keras.layers.Conv2D(32, (3,3), activation='relu', input_shape=(28,28,1)),
tf.keras.layers.MaxPooling2D((2,2)),
tf.keras.layers.Flatten(),
tf.keras.layers.Dense(128, activation='relu'),
tf.keras.layers.Dense(10)
])
model.compile(optimizer='adam',
loss=tf.keras.losses.SparseCategoricalCrossentropy(from_logits=True),
metrics=['accuracy'])
model.fit(X_train[..., tf.newaxis], y_train, epochs=5)
model.evaluate(X_test[..., tf.newaxis], y_test, verbose=2)
常見問題解決
- 版本沖突:使用
pip check檢查依賴項兼容性 - GPU 未識別:確保 CUDA 版本與 TensorFlow 版本匹配
- 內(nèi)存不足:調(diào)整
tf.config.experimental.set_memory_growth
通過上述步驟可快速搭建 TensorFlow 開發(fā)環(huán)境并運行基礎(chǔ)到進階的示例代碼。
到此這篇關(guān)于TensorFlow 環(huán)境搭建的實現(xiàn)示例的文章就介紹到這了,更多相關(guān)TensorFlow 環(huán)境搭建內(nèi)容請搜索腳本之家以前的文章或繼續(xù)瀏覽下面的相關(guān)文章希望大家以后多多支持腳本之家!
相關(guān)文章
python數(shù)據(jù)可視化之初探?Seaborn
Seaborn?是一個基于?Matplotlib?的?Python?數(shù)據(jù)可視化庫,它提供了更高級別的接口,使得創(chuàng)建美觀的統(tǒng)計圖形變得非常簡單,在這篇文章中,我們將討論?Seaborn?的基礎(chǔ)使用方法,包括如何創(chuàng)建各種常見的統(tǒng)計圖形2023-07-07
Django修改app名稱和數(shù)據(jù)表遷移方案實現(xiàn)
這篇文章主要介紹了Django修改app名稱和數(shù)據(jù)表遷移方案實現(xiàn),文中通過示例代碼介紹的非常詳細(xì),對大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價值,需要的朋友們下面隨著小編來一起學(xué)習(xí)學(xué)習(xí)吧2020-09-09
python實現(xiàn)超簡單端口轉(zhuǎn)發(fā)的方法
這篇文章主要介紹了python實現(xiàn)超簡單端口轉(zhuǎn)發(fā)的方法,實例分析了Python同構(gòu)socket實現(xiàn)端口轉(zhuǎn)發(fā)的技巧,具有一定參考借鑒價值,需要的朋友可以參考下2015-03-03

