日韩性视频-久久久蜜桃-www中文字幕-在线中文字幕av-亚洲欧美一区二区三区四区-撸久久-香蕉视频一区-久久无码精品丰满人妻-国产高潮av-激情福利社-日韩av网址大全-国产精品久久999-日本五十路在线-性欧美在线-久久99精品波多结衣一区-男女午夜免费视频-黑人极品ⅴideos精品欧美棵-人人妻人人澡人人爽精品欧美一区-日韩一区在线看-欧美a级在线免费观看

歡迎訪問 生活随笔!

生活随笔

當前位置: 首頁 > 编程资源 > 编程问答 >内容正文

编程问答

diskgeniusv4.4.0_入门TensorFlow2.0

發布時間:2024/9/27 编程问答 34 豆豆
生活随笔 收集整理的這篇文章主要介紹了 diskgeniusv4.4.0_入门TensorFlow2.0 小編覺得挺不錯的,現在分享給大家,幫大家做個參考.

今天老師帶領我們入門TensorFlow2.0。至于tensorflow2.0是啥嘛,詳細的可以度娘一下。我簡述一下,就是一個end-to-end machine-Learning open source plantform(端對端的開源機器學習的平臺)。學習tensorflow需要引入tensor這個概念,tensor的漢語意思就是張量。張量是數學和力學的概念,是矢量的延伸,矢量是一階張量,至于張量具體是什么大家感興趣就度娘吧,我也不是專業的數學研究人員不很懂。tensorflow1.0引入了deferred execution(延遲執行)機制,在構建階段是不執行計算操作的,因此稱為靜態圖,要想執行計算操作,需要創建Session()對象才可以執行計算操作。而在tensorflow2.0里引入了默認執行eager execution機制,無需首先創建靜態圖,可以立刻執行計算操作,并返回結果,不像1.0那樣需要創建Session對象。但是動態圖執行效率不高,不利于后期調試。但是可以在程序調試階段使用動態圖,快速建立模型、調試程序;在部署階段,采用靜態圖機制,從而提高模型的性能和部署能力。tensorflow2.0清理和整合API,將tf.keras作為構建和訓練模型的標準API。

機器學習

安裝tensorflow這個老生常談了。

pip install tensorflow -i https://pypi.tuna.tsinghua.edu.cn/simple

我們來簡單入門講講tensorflow。它可以運行在GPU、CPU、嵌入式等等平臺。你可以理解為是對numpy的二次封裝,對numpy進行加速運算。numpy只能在CPU里計算,而tensorFlow可以在CPU、GPU、TPU里計算。當tensorflow與numpy一起在CPU里計算時,它們共享同一段內存。

它的基本運算是張量,張量是由Tensor實現,每個張量都是一個Tensor對象。可以使用tf.constant() 函數來創建張量。代碼如下:

import tensorflow as tfa = tf.constant([[1,2],[3,4]])print(a)
  • value:可以是數字或python列表或numpy數組
  • shpae:張量的形狀
  • dtype:元素數據類型
  • dtype:全稱是digital type漢語意思就是數字類型。這就創建了一個二維張量。

    運行結果就是:

    tf.Tensor([[1 2] [3 4]], shape=(2, 2), dtype=int32)

    張量還可以使用Numpy方法,代碼如下:

    a = tf.constant([[1,2],[3,4]])print(a.numpy)print(type(a))

    那么運行結果就是:

    >

    使用numpy方式生成張量時需要注意以下幾點:numpy方法創建張量 使用np創建浮點數組時默認64位,而tensorflow默認時float32,但是tensorflow接受時自動轉為64位浮點。一般建議使用np創建數組時建議為float32位足以使用。但是不建議低精度兼容高精度,因為會溢出。比如int32去兼容int64可能會存在溢出。

    Python

    它的內置API非常多:

  • cast()改變張量的數據類型,tensor支持轉變的數據類型有:string int float bool。
  • tf.convert_to_tensor()函數其他數據類型轉換成tensor類型
  • tf.fill()在tensor張量里自動填充某個元素,第一個參數是shape,第二個是value,根據傳入的value自動判斷數據類型
  • tf.constant()也可以實現fill一樣的功能,只不過它的填充數字在前面,shape參數位于后面。
  • tf.random.normal(形狀,均值,標準差,數據類型=tf.float32)這個是正態分布函數。均值即為:mean。標準差是:stddev。當mean=0,stddev=1為標準正態分布
  • tf.random.truncated_normal()創建隨機數張量。截斷正態分布,基本參數一致。截斷的依據是正態分布的2倍標準差。
  • tf.random.set_seed()函數。設置隨機數種子
  • tf.random.uniform(shape,minval,maxval,dtype)函數。功能是均勻分布張量,它是一個左閉右開的區間。tf.random.uniform(shape,minval,maxval,dtype='int32')
  • tf.random.shuffle()函數。功能是隨機打亂序列。
  • tf.range()創建整數序列,是左閉右開區間。
  • 還可以使用字典式訪問tensor對象屬性,依次取出ndim、shape、dtype屬性,代碼如下:

    atfc = tf.constant([[3,5],[7,0]])print('ndim:',atfc.ndim)print('shape:',atfc.shape)print('dtype:',atfc.dtype)

    總結一下:tensorflow所有的運算都是在張量之間運行的。而numpy只是作為input和output使用的。我只是列舉了常用的API,大家有興趣的可以嘗試嘗試。

    我始終保持開放的態度學習python,大佬可以批評指正。python之路漫漫,吾將上下而求索。

    總結

    以上是生活随笔為你收集整理的diskgeniusv4.4.0_入门TensorFlow2.0的全部內容,希望文章能夠幫你解決所遇到的問題。

    如果覺得生活随笔網站內容還不錯,歡迎將生活随笔推薦給好友。