敲開TensorFlow的大門
目前的AI還處在比較低級的階段,但是像TensorFlow的出現,極大的推進了AI的進程,使得各類應用可以以最低的成本最快的的時間接入AI,今天我們就通過一個簡單的模型訓練來敲開TensorFlow的大門。
AI的模型訓練其實就是: 對模型變量的值進行不斷調整,直到訓練模型對所有可能的變量求出的結果都無限接近目標值,而我們要做的工作就是給足夠的數據進行訓練,以及不斷優化訓練算法
I. macOS Sierra中配置運行環境
官方教程地址: https://www.tensorflow.org/install/install_mac#installing_with_virtualenv
一共有四種方式,根據官方推薦,我采用的是virtualenv
由于我的MBP沒有NVIDIA CUDA GPU,因此這里我沒有配GPU
由于我的Python是2.7.10版本,并且沒有支持GPU,因此執行:
如果是其他情況的請參照 官方教程
驗證安裝
官方地址: https://www.tensorflow.org/install/install_mac#ValidateYourInstallation
II. 訓練模型案例
該案例來自 官方的入門案例
該次模型訓練的性能決定因素是: 優化器選擇、精度選擇、訓練數據
III. 常見的API
具體API可以參看 官網文檔
- 定義常量: tf.constant(value, type) ,如 tf.constant(3.0, tf.float32) ,當type沒有給定的時候,會根據所給value定義
- 定義變量: tf.placeholder(type) , 如 tf.placeholder(tf.float32)
- 定義訓練模型: tf.Variable([value], type] , 如 tf.Variable([.3], tf.float32)
- 計算結果: 通過 tf.Session() 的 run 去計算
- 初始化訓練模型: tf.global_variables_initializer() ,對其進行復位運行起對象即可,如Session對象是 sees ,初始化模型對象是 init 時: sess.run(init)
- 對模型重新賦值: 如對 W 模型重新賦值: fixW = tf.assign(W, [-1.])
- 求平方: tf.square(value)
- 求和: tf.reduce_sum(value)
來自:https://blog.dreamtobe.cn/tensorflow-sample/
本文由用戶 RobertRAG 自行上傳分享,僅供網友學習交流。所有權歸原作者,若您的權利被侵害,請聯系管理員。
轉載本站原創文章,請注明出處,并保留原始鏈接、圖片水印。
本站是一個以用戶分享為主的開源技術平臺,歡迎各類分享!