【tenserflow】——數據類型以及常用屬性

目錄

?

一、什么是Tensor?

二、Tensorflow常見數據類型

三、Tensorflow常見屬性device\cpu\gpu\ndim\shape\rank等

1、創建一個tensor

1)tf.constant()

2)tf.Variable()

2、判斷一個變量是否為tensor張量

?3、生成不同設備(cpu,gpu)上的tensor

4、判斷一個tensor工作的設備

5、cpu和gpu不同設備上tensor的轉換

6、tensor載體上的數據和numpy庫上的數據的相互轉換

7、判斷變量的數據類型

8、判斷變量的維度

?9、tensor下不同數據類型之間進行轉換


一、什么是Tensor?

Tensor實際上就是Tensorflow中的數據載體,可以囊括所有的數據類型,如標量、矩陣、向量等

專門為神經網絡中深度學習設計的一個框架中的數據載體

二、Tensorflow常見數據類型

import tensorflow as tf

三、Tensorflow常見屬性device\cpu\gpu\ndim\shape\rank等

1、創建一個tensor

具體可見:《【tensorflow】——創建tensor的方法》

1)tf.constant()

a=tf.constant(數據)

2)tf.Variable()

這個是專門為神經網絡的參數進行設置的一個數據類型,它含有兩個屬性,一個是name,一個是train able

a = tf.range(4)#[0,1,2,3]b = tf.Variable(a,name = "變量名")b.nameb.trainable#返回True,表示是可以訓練的變量,系統會自動對該變量的梯度進行監督(watch)

?

2、判斷一個變量是否為tensor張量

import tensorflow as tftf.is_tensor(變量名)#是tensor返回True,否則返回False

?3、生成不同設備(cpu,gpu)上的tensor

import tensorflow as tf#創建cpu設備上的tensor變量a
with tf.device("cpu"):a=tf.constant(1)#創建gpu設備上的tensor變量a
with tf.device("gpu"):b=tf.constant(1.1)

4、判斷一個tensor工作的設備

tf.device(變量名)#返回的是一個字符串,含有當前tensor所工作的環境設備

5、cpu和gpu不同設備上tensor的轉換

不同設備上的變量有些操作是不能進行的,如a,b的加法,就需要在同一個設備環境下,才能進行,否則會報錯,這時候就需要使用到不同設備間tensor的轉換了

#假設a是cpu上的tensor,b是gpu上的tensoraa = a.gpu()#返回的是gpu上的tensor,當然不會影響原來的tensor a所在的設備環境bb = b.cpu()#返回的是cpu上的tensor,當然不會影響原來的tensor b所在的設備環境

6、tensor載體上的數據和numpy庫上的數據的相互轉換

這是兩個數據庫,可以看成是數據載體,都可以生成不同類型的數據,但是要想數據間進行操作,必須轉換成同一個載體下的數據才能進行操作

import tensorflow as tf#tensor轉換為numpy變量名.numpy()#如果tensor是一個標量scalar的話,也可以通過下面的方法進行轉換為numpyint(a)
float(a)#numpy轉換為tensortf.convert_to_tensor(變量名,dtype=tf.數據類型)

7、判斷變量的數據類型

a.dtype,b.dtype,c.dtyp#返回三個變量的數據類型(tf.float32,tf.bool,tf.string)#表示在tensor數據載體下的各種數據類型#要是想驗證某一個變量是否為具體的數據類型,可以通過以下方法a.dtype == tf.float32#返回布爾類型,是返回True,不是返回False

8、判斷變量的維度

維度是指是標量還是向量還是矩陣抑或是更高維的數據

b.ndim#返回的是一個標量,一個值,等于維度tf.rank(b)#返回的是一個含有變量b相關信息的tensor

?

9、tensor下不同數據類型之間進行轉換

tf.cast(變量名,dtype=需要轉換成的數據類型)#例如tf.cast(aa,dtype = float32/double/int32)

布爾型和整型的轉化

?

?

本文來自互聯網用戶投稿,該文觀點僅代表作者本人,不代表本站立場。本站僅提供信息存儲空間服務,不擁有所有權,不承擔相關法律責任。
如若轉載,請注明出處:http://www.pswp.cn/news/256339.shtml
繁體地址,請注明出處:http://hk.pswp.cn/news/256339.shtml
英文地址,請注明出處:http://en.pswp.cn/news/256339.shtml

如若內容造成侵權/違法違規/事實不符,請聯系多彩編程網進行投訴反饋email:809451989@qq.com,一經查實,立即刪除!

相關文章

C# 事件詳解附實例分析

一、定義 事件是兩個對象間發布消息和響應后處理消息的過程,通過委托類型來實現的。 事件的機制被稱為發布-訂閱機制,其算法過程為:首先定義一個委托類型,然后在發布者類中聲明一個event事件,同時此類中還有一個用來觸…

網頁開發瀏覽器兼容性問題

1、在ie6下的雙margin問題 在ie6下,設置了float的元素,以float:left為例,如圖所示。會出現第一個浮動元素,即相對于父級元素浮動的,會出現雙倍margin的問題。 注意僅僅是相對于父級元素浮動的,即第一個會出…

【tensorflow】——創建tensor的方法

目錄 1、tf.constant() 2、tf.Variable() 3、tf.zeros():用0去填充指定形狀的數組 4、tf.convert_to_tensor(a,dtypetf.int32) 5、tf.ones():用1去填充指定形狀的數組 6、tf.fill():用指定的元素去填充指定形狀的數組 7、隨機化初始化進行創建 1)normal正態分…

Halcon —— 圖像像素類型與轉換

圖像類型 就目前工業領域主流的圖像處理工具halcon來講,有以下幾種圖像類型:‘byte’, ‘complex’, ‘cyclic’, ‘direction’, ‘int1’, ‘int2’, ‘int4’, ‘int8’, ‘real’, ‘uint2’,具體含義如下圖所示。 ‘byte’ 每像素1字節…

軟件方法

核心工作流業務建模(組織建模):描述組織內部各個系統如何協作,使得組織可以為其他的組織提供有價值的服務,新系統只不過是組織為了對外提供更好的服務,對自己的內部重新設計而購買的一個零件。需求&#xf…

修改vim中的tab為4個空格

記錄一下,避免用時還得搜........ 1、臨時修改 在vi中,set tabstop4 或 set ts4  2、永久修改 vi --version 查看要修改的文件如果是vim的話,修改~/.vimrc如果是vi,修改~/.exrc加上:set tabstop4set nu //顯示行號set…

Halcon例程詳解(基于卡尺工具的匹配測量方法) —— measure_stamping_part.hdev

前言 1卡尺工具介紹 Halcon中的Metrology方法即為卡尺工具,可用來擬合線,圓,這種方法對于目標比背景很明顯的圖像尺寸測量是很方便的,不需要用blob進行邊緣提取等,但缺點也很明顯,需要目標的相對位置基本…

【TensorFlow】——不同shape的tensor在神經網絡中的應用(scalar,vector,matrix)

目錄 ? 1、scalar——標量 1)在神經網絡中存在的場景 2)one_hot編碼 3)舉例應用 2、vector——向量 ? 3、matrixs——矩陣 4、dim3的tensor 5、dim4的tensor 6、dim5的tensor 本文主要的目的是讓初學者對tensor的各種形式的使用場…

404頁面 3秒后跳到首頁 實現

---恢復內容開始--- 當我們訪問一個頁面不存在的時候&#xff0c;就會跳到404頁面 一般網站都在在404頁面中做一個處理&#xff0c; 就是當用戶3秒種內還沒有任何操作的話&#xff0c;就會自動跳轉到其它頁面 技術實現有兩種方法 1. 在404頁面中的header間加上 <meta http-e…

Java - I/O

File類 java.io操作文件和目錄&#xff0c;與平臺無關。具體的常用實例方法&#xff1a; File file new File("."); // 以當前路徑創建名為 "." 的 File 對象 ? 文件目錄信息函數 ? ? - ? String getName/Path/Parent()&#xff1a; 文件名/路徑…

Halcon —— 邊緣檢測算子詳解

一、算子介紹 1.1 種類 halcon內常用的邊緣檢測算子包括如下幾種&#xff1a; 1.edges_image: 提取2D 圖像邊緣 2.edges_sub_pix&#xff1a;提取2D圖像亞像素邊緣 3.edges_object_model_3d &#xff1a;提取3D圖像邊緣 4.edges_color和edges_color_sub_pix&#xff1a;提取彩…

【TensorFlow】——索引與切片

目錄 1、利用index進行索引 2、利用“&#xff1a;”和“...”進行索引與切片 3、tf.gather&#xff08;&#xff09;——對一個維度進行亂序索引 優勢&#xff1a; 缺點&#xff1a; 例子 4、tf.gather_nd()——同時對多個維度進行索引 5、tf.boolean_mask()——通過布…

華碩(ASUS)X554LP筆記本一開機就進入aptio setup utility 問題的解決

某次因大意一直未插電&#xff0c;華碩&#xff08;ASUS&#xff09;X554LP筆記本后來沒電關機。后來每次一開機就進入aptio setup utility界面&#xff0c;按F9調入默認配置&#xff0c;F10保存后退出&#xff0c;重啟仍然進入aptio setup utility。 網上查了一下&#xff0c;…

redis和memcached緩存

memcached memcache開源的&#xff0c;高性能&#xff0c;高并發分布式內存緩存系統,天生支持集群 memcached下載地址&#xff1a; http://memcached.org/downloads python實現memcached緩存 pip3 install python-memcached import memcache aamemcache.Client(["10.0.0.2…

C# —— 進程與線程的理解

定義 進程 進程&#xff08;Process&#xff09;是Windows系統中的一個基本概念&#xff0c;它包含著一個運行程序所需要的資源。一個正在運行的應用程序在操作系統中被視為一個進程&#xff0c;進程可以包括一個或多個線程。 程序是在特定操作系統上的可執行文件&#xff0c…

git安裝和初步使用

基本參照以下鏈接&#xff1a; http://www.liaoxuefeng.com/wiki/0013739516305929606dd18361248578c67b8067c8c017b000/00137583770360579bc4b458f044ce7afed3df579123eca000 注意&#xff1a; &#xff08;1&#xff09;每臺電腦對于github來說都有對應的ssh密鑰&#xff0c;…

【TensorFlow】——broadcast_to(在不復制內存的情況下自動擴張tensor)

目錄 作用&#xff1a; 內在的思路 優點 什么時候可以broadcast ? tf.boradcast_to .VS tf.tile 作用&#xff1a; 在不會實際意義上復制數據的情況下進行tensor的維度和形狀的擴張&#xff0c;使得兩個tensor維度和形狀一致 對兩個維度不一致的tensor進行加減前進行br…

20145212 《信息安全系統設計基礎》第2周學習總結

20145212 《信息安全系統設計基礎》第2周學習總結 教材學習內容總結 Vim基本操作 1.使用vim命令進入vim界面vim后面加上你要打開的已存在的文件名或者不存在&#xff08;則作為新建文件&#xff09;的文件名。 打開Xfce終端&#xff0c;輸入以下命令$ vim practice_1.txt 直接使…

Opencv—— 擬合直線

概念 最小二乘法是勒讓德( A. M. Legendre)于1805年在其著作《計算慧星軌道的新方法》中提出的。 最小二乘法就是通過最小化誤差的平方和&#xff0c;使得擬合對象無限接近目標對象。在圖像處理中主要用于擬合線&#xff0c;通過求采樣點距離誤差最小的線&#xff0c;可以是直…

本地搭建Dubbo監控中心的安裝步驟

Dubbo監控中心的安裝步驟 參考鏈接&#xff1a;http://blog.csdn.net/lichunan/article/details/40349645 一、從github上下載dubbo源碼進行編譯&#xff1a; 1、下載地址為&#xff1a; https://github.com/alibaba/dubbo.git2、編譯源碼命令&#xff1a;首先進入~/dubbo&am…