Tensorflow基礎教程15天之創建Tensor

2021-01-11 xiaoY人工智慧

Tensor是Tensorflow中使用在計算圖中的最基本的數據單位,我們可以聲明Tensor為variable,或者為Tensor提供placeholer。但首先我們必須知道如何創建Tensor。

Tensor

準備工作

當我們創建Tensor並定義其為Variable時,Tensorflow就計算圖中創建了相應圖形結構。需要指出的一點是,我們創建了Tensor,並不意味著已經將其傳入計算圖。在將Tensor定義為Variable之後,Tensorflow才會將其傳入計算圖。

如何操作

我們將在這裡介紹創建Tensor的主要方法。

常量Tensor用『zero』填充Tensorzero_tsr = tf.zeros([row_dim, col_dim])用『one』填充Tensor ones_tsr = tf.ones([row_dim, col_dim])使用現有常數創建Tensor constant_tsr = tf.constant([1,2,3])映射Tensor我們也可以映射其他Tensor來創建新的Tensor。 zeros_similar = tf.zeros_like(constant_tsr)ones_similar = tf.ones_like(constant_tsr)注意:通過這種方法創建的Tensor,要首先初始化原Tensor,如果同時初始化系統會報錯。序列TensorTensorflow允許我們定義數組Tensor。通過類似於range()或者np.linespace的操作,來定義Tensor,例如:linear_tsr = tf.linspace(start=0, stop=1, start=3)輸出是:數組 [0.0, 0.5, 1.0].這個函數的輸出是包含兩頭的定義值得與之相區別的是:nteger_seq_tsr = tf.range(start=6, limit=15, delta=3)輸出是:數組[6, 9, 12]. 這個函數的輸出是不包含兩頭的定義值得隨機Tensor以下生成的隨機數組是均勻分布的:randunif_tsr = tf.random_uniform([row_dim, col_dim],minval=0, maxval=1)請注意這種隨機的均勻分布數組,包含minval,但不包含maxval。(mival<=x<maxval)生成正態分布的隨機數組:randnorm_tsr = tf.random_normal([row_dim, col_dim],mean=0.0, stddev=1.0)有時我們希望生成一些在一定範圍內正態分布的數組。truncated_normal()函數可以包含標準差和平均值。runcnorm_tsr = tf.truncated_normal([row_dim, col_dim],mean=0.0, stddev=1.0)也許我們會對洗牌數組感興趣。可以通過random_shuffle()和random_crop()這個兩個函數來完成。shuffled_output = tf.random_shuffle(input_tensor)cropped_output = tf.random_crop(input_tensor, crop_size)後面我們會對3通道彩色圖片進行隨機裁剪,生成固定大小的圖片,可以使用cropped_output()函數,並給出圖片的最大尺寸值。cropped_image = tf.random_crop(my_image, [height/2, width/2, 3])如何工作

一旦我們決定如何創建Tensor,接下來我們可以使用Variable()函數來創建對應的variables, 並將創建的Tensor包含其中。

my_var = tf.Variable(tf.zeros([row_dim, col_dim]))

此外。。。

我們不受限於使用內置函數。我還可以將numpy array、python list以及常數轉換成Tensor,通過使用conver_to_tensor()函數。另外這個函數也可以接受將tensor作為輸入。

相關焦點

  • TensorFlow 攜手 NVIDIA,使用 TensorRT 優化 TensorFlow Serving...
    在這裡,我們運行 GPU Docker 圖像(點擊查看相關說明),從而藉助 GPU 創建並測試此模型:$ docker pull tensorflow/serving:latest-gpu$ docker run --rm --runtime=nvidia -p 8501:8501 --name tfserving_resnet \
  • 5個簡單的步驟掌握Tensorflow的Tensor
    在這篇文章中,我們將深入研究Tensorflow Tensor的細節。我們將在以下五個簡單步驟中介紹與Tensorflow的Tensor中相關的所有主題:第一步:張量的定義→什麼是張量?我們經常將NumPy與TensorFlow一起使用,因此我們還可以使用以下行導入NumPy:import tensorflow as tfimport numpy as np張量的創建:創建張量對象有幾種方法可以創建tf.Tensor對象。讓我們從幾個例子開始。
  • TensorFlow極簡教程:創建、保存和恢復機器學習模型
    繼續之前,也可以閱讀這個 Tensorflow 小入門:https://blog.metaflow.fr/tensorflow-a-primer-4b3fa0978be3#.wxlmweb8h你有必要了解這些信息,因為了解如何保存不同級別的代碼是非常重要的,這可以避免混亂無序。
  • tensorflow初級必學算子
    在之前的文章中介紹過,tensorflow框架的核心是將各式各樣的神經網絡抽象為一個有向無環圖,圖是由tensor以及tensor變換構成;雖然現在有很多高階API可以讓開發者忽略這層抽象,但對於靈活度要求比較高的算法仍然需要開發者自定義網絡圖,所以建議開發者儘量先學習tf1.x
  • TensorFlow極速入門
    最後給出了在 tensorflow 中建立一個機器學習模型步驟,並用一個手寫數字識別的例子進行演示。1、tensorflow是什麼?tensorflow 是 google 開源的機器學習工具,在2015年11月其實現正式開源,開源協議Apache 2.0。
  • 步履不停:TensorFlow 2.4新功能一覽!
    此教程介紹了如何設置 ParameterServerStrategy,並說明了如何使用 ClusterCoordinator 類來創建資源、調度函數和處理任務失敗。    參數伺服器訓練教程           https://tensorflow.google.cn/tutorials/distribute/parameter_server_training    ClusterCoordinator           https://tensorflow.google.cn/api_docs/python
  • 玩轉TensorFlow?你需要知道這30功能
    地址是:tensorflow.org/tfx/?網址是:https://www.tensorflow.org/tfx/transform/?網址是:https://www.tensorflow.org/serving/?
  • 終於來了,TensorFlow 新增官方 Windows 支持
    選自Google Developers Blog機器之心編譯參與:李澤南昨日,Google Brain 工程師團隊宣布在 TensorFlow 0.12 中加入初步的 Windows 支持。TensorFlow 宣布開源剛剛過去一年。在谷歌的支持下,TensorFlow 已成為 GitHub 上最受歡迎的機器學習開源項目。
  • 這裡有一份TensorFlow2.0中文教程
    今年 3 月份,谷歌在 Tensorflow Developer Summit 2019 大會上發布 TensorFlow 2.0 Alpha 版。作為當前最為流行的深度學習框架,2.0 Alpha 版的正式發布引人關注。近兩個月,網上已經出現了大量 TensorFlow 2.0 英文教程。在此文章中,機器之心為大家推薦一個持續更新的中文教程,以便大家學習。
  • 基於RTX2060構建TensorFlow-gpu(keras)學習平臺
    5. deactivate 關閉虛擬環境6. conda remove -n your_env_name(虛擬環境名稱) --all 刪除虛擬環境7. conda remove --name your_env_name package_name 刪除環境中的某個包二、創建環境及安裝
  • TensorFlow 中文資源全集,學習路徑推薦
    https://gitee.com/fendouai/Awesome-TensorFlow-Chinese很多內容下面這個英文項目:Inspired by https://github.com/jtoy/awesome-tensorflow官方網站官網:https://www.tensorflow.org/中文:https://tensorflow.google.cn
  • 機器學習中的embedding原理及tensorflow 相關API的理解
    # 概述本文主要講解tensorflow中涉及embedding的API。之前看了一些文章,寫的雲山霧繞,花了好長時間才搞懂,太笨了。embedding 算法主要用於處理稀疏特徵,應用於NLP、推薦、廣告等領域。所以word2vec 只是embbeding 思想的一個應用,而不是全部。
  • Tensorflow 全網最全學習資料匯總之Tensorflow 的入門與安裝【2】
    《TensorFlow學習筆記1:入門》連結:http://www.jeyzhang.com/tensorflow-learning-notes.html本文與上一篇的行文思路基本一致,首先概括了TensorFlow的特性,然後介紹了graph、session、variable 等基本概念的含義,以具體代碼的形式針對每個概念給出了進一步的解釋
  • 深度解讀TensorFlow,了解它的最新發展!
    Tensorboard是tensorflow內置的一個可視化工具,它通過將tensorflow程序輸出的日誌文件的信息可視化,使得tensorflow程序的理解、調試和優化更加簡單高效。Tensorboard的可視化依賴於tensorflow程序運行輸出的日誌文件,因而tensorboard和tensorflow程序在不同的進程中運行。
  • 關於TensorFlow,你應該了解的9件事
    選自hackernoon,作者:Cassie Kozyrkov,機器之心編譯,參與:高璇、路。TensorFlow 下載地址:https://www.tensorflow.org/install/TensorFlow 初始教程:https://www.datacamp.com/community/tutorials/tensorflow-tutorial
  • TensorFlow 2.0開源工具書,30天「無痛」上手
    從課程大綱來看,有一定基礎的讀者只需三十天就可以學完整個教程,而且每天都被安排得明明白白。開源電子書地址:https://lyhue1991.github.io/eat_tensorflow2_in_30_days/GitHub 項目地址:https://github.com/lyhue1991/eat_tensorflow2_in_30_days為什麼一定要學
  • 在Windows中安裝Tensorflow和Kears深度學習框架
    在命令提示符窗口輸入下列命令: 建立Tensorflow Anaconda虛擬環境 conda create --name tensorflow python=3.5 anaconda 執行後屏界面顯示如圖3-9所示。
  • 【注意力機制】transformers之轉換Tensorflow的Checkpoints
    你可以通過使用convert_tf_checkpoint_to_pytorch.py將任意的BERT的Tensorflow的Checkpoints轉換為PyTorch格式(特別是由Google發布的預訓練模型(https://github.com/google-research
  • 作為TensorFlow的底層語言,你會用C++構建深度神經網絡嗎?
    cd /path/tensorflowgit clone隨後你需要進行配置,如選擇是否使用 GPU,你需要這樣運行配置腳本:cd /path/tensorflow./configure現在我們要創建接收 TensorFlow 模型代碼的文件。請注意,第一次構建需要花費很長一段時間(10-15 分鐘)。非核心的 C++ TF 代碼在 /tensorflow/cc 中,這是我們創建模型文件的位置,我們也需要 BUILD 文件讓 bazel 可以構建模型。
  • NLP實戰篇之tf2中tensor、variable、gradient、ops
    本文是基於tensorflow2.2.0版本,介紹了tf中變量、張量的概念,tf中梯度的計算方式和tensor相關的操作。實戰系列篇章中主要會分享,解決實際問題時的過程、遇到的問題或者使用的工具等等。如問題分解、bug排查、模型部署等等。