TensorFlow.js 的核心概念

如果你还不够了解 TensorFlow.js,可以右转:here。下面是关于一些关于 TensorFlow.js 核心概念。

由于现在 TensorFlow.js 的资料仅限于官方,也没什么中文资料,这篇由LiNPX整理、收集与翻译

张量(tensor)是一个可用来表示在一些矢量、纯量和其他张量之间的线性关系的多线性函数,这些线性关系的基本例子有内积、外积、线性映射以及笛卡儿积。其坐标在?n ?维空间内,有? n^r个分量的一种量,其中每个分量都是坐标的函数,而在坐标变换时,这些分量也依照某些规则作线性变换。r称为该张量的秩或阶(与矩阵的秩和阶均无关系)。

TensorFlow.js 的数据单元是张量:一组数值存储于一维或者多维数组里。一个张量的实例有 shape 的属性用于构造多维数组。其中最主要的 Tensor 的构造函数是 tf.tensor 

// 2x3 Tensor
const shape = [2, 3]; // 2 rows, 3 columns
const a = tf.tensor([1.0, 2.0, 3.0, 10.0, 20.0, 30.0], shape);
a.print(); // print Tensor values
// Output: [[1 , 2 , 3 ],
//          [10, 20, 30]]

// The shape can also be inferred:
const b = tf.tensor([[1.0, 2.0, 3.0], [10.0, 20.0, 30.0]]);
b.print();
// Output: [[1 , 2 , 3 ],
//          [10, 20, 30]]

但有时候,为了方便构造更简单的 Tensors,建议使用 tf.scalartf.tensor1dtf.tensor2dtf.tensor3d 和 tf.tensor4d,这样也会更强代码的可读性。下面的例子使用了tf.tensor2d

const c = tf.tensor2d([[1.0, 2.0, 3.0], [10.0, 20.0, 30.0]]);
c.print();
// Output: [[1 , 2 , 3 ],
//          [10, 20, 30]]

TensorFlow.js 也提供了用于构建值全部为 0 的 tensors 的tf.zeros 函数和构建值为 1 的tf.ones的函数

// 3x5 Tensor with all values set to 0
const zeros = tf.zeros([3, 5]);
// Output: [[0, 0, 0, 0, 0],
//          [0, 0, 0, 0, 0],
//          [0, 0, 0, 0, 0]]

在 TensorFlow.js 中,tensors 一旦被构造就具备不可变性,你不能再修改它们的值,只能重新创建。

原文地址:https://www.cnblogs.com/xu-xiao-feng/p/10028407.html

时间: 2024-08-28 20:18:47

TensorFlow.js 的核心概念的相关文章

Ext JS 6学习文档–第2章–核心概念

核心概念 在下一章我们会构建一个示例项目,而在这之前,你需要学习一些在 Ext JS 中的核心概念,这有助于你更容易理解示例项目.这一章我们将学习以下知识点: 类系统,创建和扩展类 事件 Ext JS 对象的查询 容器 布局 转载请注明出处:http://www.jeeboot.com/archives/1217.html class system(类系统) Ext JS 提供了很多功能,使得它创建和处理类变得简单.以下是在 Ext JS 6 的类系统中的几大组成类: Ext Base Clas

TensorFlow核心概念及基本使用

TensorFlow核心概念 综述:TensorFlow中的计算可以表示为一个有向图,或称计算图,其中每一个运算操作将作为一个节点,节点间的链接叫做边.这个计算图描述了数据的计算流程,它也负责维护和更新状态,用户可以对计算图的分支进行条件控制和循环操作.计算图中的每一个节点可以有任意多个输入和输出,每一个节点描述了一种运算操作,节点可以算是运算操作的实例化.在计算图的边中流动的的数据被称为张量. 1.计算图 TensorFlow是一个通过计算图的形式来表述计算的编程系统.每一个计算都是计算图的一

tensorflow核心概念之op

TF中的op代表了对"操作"的抽象,说它抽象是因为,op仅仅说明了操作是做什么用的,但没有说明具体怎么做.举个例子,MatMul是一个操作,它表示了矩阵乘法,但并不包含矩阵乘法的具体实现,因为我们知道,在CPU和GPU上,矩阵乘法的高效率实现是完全不同的.为了把不同设备上的实现细节隐藏起来,为相同的计算提供统一的对外表示,TF提出了op的概念. 为了方便序列化,TF中很多核心概念定义在proto文件中,操作的定义OpDef放在op.proto(/tensorflow/core/fram

Angularjs的核心概念

1. 客户端模板 多页面的应用通过组装和拼接服务器上的数据来生成HTML,然后输出到浏览器.Angularjs不同于此的是,传递模板和数据到浏览器,然后在浏览器端进行组装.浏览器的角色编程了只提供模板的静态资源和模板所需要的数据. <html ng-app> <head> <script src="angular.js"></script> <script src="controllers.js"><

应用数据流状态管理框架Redux简介、核心概念及工作流

前几天给大家谈了谈React 不过它只是一个侧重于UI的框架 只能算作是MVC中的V(View视图) 而且只是DOM的一个抽象层,不是Web应用完整解决方案 如果仅仅用它构建大型项目 你会非常的吃力 简介 14年,Facebook提出Flux架构意图解决这个问题 15年,Dan Abramov将 Flux 与函数式编程相结合,创造了Redux,由于简单易学就开始流行起来 16年,Dan Abramov被facebook挖走了 Redux体积很小,如果删掉源码的空行和注释,连500行代码都不到 别

小白总结的一些关于JS的基础概念

我的第一篇博客 ——JS的那些基础概念 接触前端已经整整一学年了,这是我第一次写博客,感觉心里装了无数只兔子,很紧张,很激动,也很兴奋. 第一次写,也不知道有没有什么套路,需不需要注意文采之类的.不管了,太激动了,我就直接写只要内容吧!下面是我总结的一些关于JS的基础概念: [变量]从字面上面,变量是可变的量:从编程角度讲,变量是用于存储某些/某种数值的存储器.我们可以把变量看作一个盒子用来存储物 品. [数组]变量用来存储数据,一个变量只能存储一个内容.如果你想存储多个内容,那么就可以用数组解

Angularjs -- 核心概念

angularjs旨在减轻使用AJAX开发应用程序的复杂度,使得程序的创建.測试.扩展和维护变得easy.以下是angularjs中的一些核心概念. 1. client模板 多页面的应用通过组装和拼接server上的数据来生成HTML,然后输出到浏览器.Angularjs不同于此的是,传递模板和数据到浏览器,然后在浏览器端进行组装.浏览器的角色编程了仅仅提供模板的静态资源和模板所须要的数据. hello.html <html ng-app> <head> <script sr

MySQL集群核心概念

MySQL Cluster Core Concepts NDBCLUSTER (also known as NDB) is an in-memory storage engine offering high-availability and data-persistence features. NDBCLUSTER(也叫做NDB)是一种提供了高可用性和数据持久性特征的内存式存储引擎. The NDBCLUSTER storage engine can be configured with a r

JS 语言核心(JavaScript权威指南第六版)(阅读笔记)

前言: 对于程序员,学习是无止境的,知识淘换非常快,能够快速稳固掌握一门新技术,是一个程序员应该具备的素质.这里将分享本人一点点不成熟的心得. 了解一门语言,了解它的概念非常重要,但是一些优秀的设计思想需要细心和大量实践才能慢慢参悟,在这之前需要做的是能够运用它来开发,那么了解一些基础特性非常有必要,通常这些特性是需要经验积累,从各种坑中累计出来,但是还有一种看似很笨却很有效的学习方法.那就是将别人的经验记录下来,有事没事都拿出来看看,集合开发中的经验,这会非常有效. 调试工具 firebug