書名: TensorFlow 2.0 Quick Start Guide作者名: Tony Holdroyd本章字數: 203字更新時間: 2021-06-24 16:02:04
Declaring ragged tensors
A ragged tensor is a tensor with one or more ragged dimensions. Ragged dimensions are dimensions that have slices that may have different lengths.
There are a variety of methods for declaring ragged arrays, the simplest being a constant ragged array.
The following example shows how to declare a constant ragged array and the lengths of the individual slices:
ragged =tf.ragged.constant([[5, 2, 6, 1], [], [4, 10, 7], [8], [6,7]])
print(ragged)
print(ragged[0,:])
print(ragged[1,:])
print(ragged[2,:])
print(ragged[3,:])
print(ragged[4,:])
The output is as follows:
<tf.RaggedTensor [[5, 2, 6, 1], [], [4, 10, 7], [8], [6, 7]]> tf.Tensor([5 2 6 1], shape=(4,), dtype=int32) tf.Tensor([], shape=(0,), dtype=int32) tf.Tensor([ 4 10 7], shape=(3,), dtype=int32) tf.Tensor([8], shape=(1,), dtype=int32) tf.Tensor([6 7], shape=(2,), dtype=int32)
Note the shape of the individual slices.
A common way of creating a ragged array is by using the tf.RaggedTensor.from_row_splits() method, which has the following signature:
@classmethod
from_row_splits(
cls,
values,
row_splits,
name=None
)
Here, values is a list of the values to be turned into the ragged array, and row_splits is a list of the positions where the value list is to be split, so that the values for row ragged[i] are stored in ragged.values[ragged.row_splits[i]:ragged.row_splits[i+1]]:
print(tf.RaggedTensor.from_row_splits(values=[5, 2, 6, 1, 4, 10, 7, 8, 6, 7],
row_splits=[0, 4, 4, 7, 8, 10]))
RaggedTensor is as follows:
<tf.RaggedTensor [[5, 2, 6, 1], [], [4, 10, 7], [8], [6, 7]]>
- 電氣自動化專業英語(第3版)
- 大學計算機基礎:基礎理論篇
- Linux Mint System Administrator’s Beginner's Guide
- Mastering VMware vSphere 6.5
- Matplotlib 3.0 Cookbook
- Mastering Elastic Stack
- 大數據挑戰與NoSQL數據庫技術
- FPGA/CPLD應用技術(Verilog語言版)
- Learning Apache Apex
- 貫通Java Web輕量級應用開發
- 樂高創意機器人教程(中級 上冊 10~16歲) (青少年iCAN+創新創意實踐指導叢書)
- Mastering SQL Server 2014 Data Mining
- 單片機硬件接口電路及實例解析
- 微控制器的選擇與應用
- 探索中國物聯網之路